Commit Graph

372 Commits

Author SHA1 Message Date
sbwalker
100fc20928 ensure script resources are loaded before rendering ThemeBuilder 2024-02-16 15:15:02 -05:00
sbwalker
04da989108 get title and headcontent working again on interactive render mode 2024-02-16 15:08:04 -05:00
Ben
740b89258d Fix #3807: parsing the data attributes. 2024-02-16 19:26:01 +08:00
sbwalker
dcc8043cf6 load PageState in App component and pass to SiteRouter to optimize data loading 2024-02-15 21:17:23 -05:00
sbwalker
7d1b4d916e fix #3793 - render issues on .NET MAUI 2024-02-15 10:22:14 -05:00
sbwalker
3db744269e force control panel to interactive render mode 2024-02-14 11:05:49 -05:00
sbwalker
9aa7672b17 remove debugging info from UI 2024-02-12 09:05:47 -05:00
sbwalker
8d9a050ad6 Resolve issue where components are not being rendered interactively 2024-02-12 08:51:41 -05:00
sbwalker
856afcf3bf updates to make identical to POC - still not working 2024-02-10 11:46:07 -05:00
sbwalker
df4d4d36bc create component using RenderTreeBuilder 2024-02-09 15:46:44 -05:00
sbwalker
ea75ddfa85 rename RenderMode class and adding usings 2024-02-09 14:34:33 -05:00
sbwalker
f6fb3cc766 specify default interactive render mode 2024-02-09 10:59:51 -05:00
sbwalker
d03565ad95 improve debug message 2024-02-09 09:10:03 -05:00
sbwalker
a686bec025 add text to display render mode 2024-02-09 08:56:25 -05:00
sbwalker
e6df8dcd2e preserve backward compatibility but flag methods as obsolete 2024-02-09 08:47:20 -05:00
sbwalker
b5f7106780 render mode optimization 2024-02-08 15:58:31 -05:00
sbwalker
a40b49f2ed implement RenderModeBoundary 2024-02-08 15:47:25 -05:00
sbwalker
07bd5c633e add @attribute [StreamRendering] attribute to Routes.razor and remove #3739 2024-02-08 09:25:31 -05:00
sbwalker
a7a5fdb7f5 temporary hack to allow Static rendering to (sort of) work - this will need to be removed later 2024-02-06 11:28:37 -05:00
sbwalker
e7a48f3909 use Runtimes constant 2024-02-02 14:38:37 -05:00
sbwalker
310772d7fe changes for static rendering 2024-02-02 13:08:05 -05:00
sbwalker
21b9b090f9 move root UI components to UI namespace 2024-02-02 10:38:16 -05:00
Cody
8500f5b437
Fix refresh() conditional check for page 2024-02-01 14:36:14 -08:00
sbwalker
7c04792777 remove unnecessary constants 2024-02-01 10:45:52 -05:00
sbwalker
7640dab380 fix Runtimes property behavior 2024-02-01 10:08:41 -05:00
sbwalker
abd235f332 add RenderMode to IModuleControl 2024-02-01 09:59:28 -05:00
sbwalker
1e332ed075 split RenderMode and Runtime configuration 2024-02-01 09:08:39 -05:00
sbwalker
97762712e6 fix site Hybrid behavior 2024-01-31 16:39:46 -05:00
sbwalker
c66982c9bc fix .NET MAUI integration 2024-01-31 15:43:17 -05:00
sbwalker
8e499d164a render mode integration 2024-01-31 15:22:21 -05:00
sbwalker
7fcfffba6f add IDisposable declaration to accompany existing Dispose() method 2024-01-30 13:13:49 -05:00
sbwalker
b8fe95b945 fix #3669 add CORS policy and use Jwt with XHR to allow file uploads to work in .NET MAUI 2024-01-23 10:34:18 -05:00
sbwalker
c271d4bfe4 improve ShouldRender logic 2024-01-06 08:52:05 -05:00
sbwalker
88a07ecf63 more rendering optimizations 2024-01-06 08:42:07 -05:00
sbwalker
352e20f01b remove commented code 2024-01-05 12:14:43 -05:00
Shaun Walker
f7d10a6cf1
Merge pull request #3602 from leigh-pointer/ENH#3538-PgModDateActive
Start Date and Expiry Date for Module instances and Pages #3538
2024-01-05 12:09:19 -05:00
sbwalker
02c22c1894 improved rendering optimization 2024-01-05 11:49:57 -05:00
Leigh Pointer
8b41a03080 Modified Logic from || to &&
UserSecurity.IsAuthorized && Utilities.IsPageModuleVisible fixed
2024-01-05 10:15:51 +01:00
sbwalker
f75179b2f6 component rendering optimizations 2024-01-04 13:47:51 -05:00
Leigh Pointer
22e4e4efc1 Updates
Loops tighter
Updated Logout base
SiteController corrected.
2024-01-03 12:12:27 +01:00
Leigh Pointer
5ce5193430 Modifications 2024-01-02 16:09:54 +01:00
Leigh Pointer
233f40f3e9 Start Date and Expiry Date for Module instances and Pages #3538
This is complete excluding Reporting and Notifications which can be added at a later date.  I just really wanted to get the schema and the functionality into place.
2023-12-31 12:21:38 +01:00
sbwalker
6621983a9c HTML encode notifications sent by non-admins to prevent HTML injection 2023-12-13 10:07:21 -05:00
sbwalker
3c7633564f security improvement - ensure returnurl is a relativre path 2023-12-12 15:54:52 -05:00
sbwalker
e4e1fa6a4c allow AddModuleMessage to support displaying the message at the bottom of the module instance 2023-12-04 09:55:53 -05:00
sbwalker
3c33614115 user identity improvements 2023-11-29 10:42:23 -05:00
sbwalker
b4b9976567 retain querystring parameters on url mapping redirect 2023-09-08 12:05:20 -04:00
sbwalker
edd77b0222 fix #3236 - script injection issue 2023-09-08 11:25:27 -04:00
sbwalker
26921c899e fix #3235 - </script> not being removed from Head Content 2023-09-08 11:09:07 -04:00
sbwalker
db2c42f0f4 filter deleted pages and modules on the server 2023-08-28 17:15:31 -04:00
sbwalker
394b8f1ce6 migrate LocalizerFactory logic from SiteRouter to ModuleTitle component 2023-08-17 08:23:17 -04:00
sbwalker
9e6ea3f486 rollback #3125 and localize module component Title using LocalizerFactory 2023-08-17 07:56:39 -04:00
sbwalker
316e0f5a68 fix #3134 improve parsing of headcontent to handle space delimiters 2023-08-11 15:53:32 -04:00
sbwalker
3814009ad9 fix refresh logic in router 2023-08-08 13:07:29 -04:00
sbwalker
337a566617 improve sync service to always rely on server dates 2023-08-08 07:51:07 -04:00
sbwalker
258f2dbe8f improve reload in router to prevent looping 2023-08-07 15:39:44 -04:00
sbwalker
51ebe520f4 improve code documentation 2023-08-07 10:39:24 -04:00
sbwalker
b5649e2a6f fix #3108 - raise reload event after user logs out 2023-08-07 09:34:20 -04:00
sbwalker
808354e969 fix issue where meta name="description" tags were being excluded from output 2023-08-03 16:02:34 -04:00
sbwalker
7a42646bed Fix #3068 - support microsites in .NET MAUI 2023-08-02 13:55:01 -04:00
Amir Jahangard
fa98908dea
Merge branch 'oqtane:dev' into dev 2023-07-12 12:43:40 +03:30
PALIZ-DEVOPS\ajr
23e8567e86 Using DynamicComponent Instead of RenderFragment in ContainerBuilder 2023-07-12 12:43:00 +03:30
sbwalker
3891dea009 fix #2978 - allow host users and admins to have personalized pages 2023-07-10 16:13:56 -04:00
sbwalker
452c3fd355 fix #2942 - reverse ordering of page name and site name for page title 2023-06-28 12:50:58 -04:00
sbwalker
ce6647a84a remove A/B testing logic for stylesheets - discard root component approach in favor of legacy JS Interop approach to eliminate FOUC issues 2023-06-25 08:39:12 -04:00
sbwalker
5660f40512 allow CSS testing using old and new method 2023-06-22 14:05:08 -04:00
sbwalker
86fbdced1b cleanup and ensure site level scripts work properly 2023-06-21 15:49:00 -04:00
sbwalker
8067b2e634 fix #2912 - move JavaScript handling from ThemeBuilder to component OnAfterRenderAsync 2023-06-21 08:31:51 -04:00
sbwalker
c8a679ecce integrate old logic for managing stylesheets using JS Interop 2023-06-20 08:52:02 -04:00
sbwalker
3849f59126 fix #2900 - theme deletion and fallback 2023-06-19 12:29:43 -04:00
sbwalker
dd2c2dbe61 fix regression issue from #2852 2023-06-13 14:00:09 -04:00
sbwalker
726f9375e1 handle type for favicon and improve helptext 2023-06-12 12:30:56 -04:00
sbwalker
818fd2fb43 fix JavaScript injection issue on first render for Resources defined in IModule and ITheme 2023-06-05 22:00:02 -04:00
sbwalker
50cf67546b fix personalization redirect 2023-06-05 09:30:17 -04:00
sbwalker
cc9377b37d improvements for personalized pages 2023-06-05 08:22:29 -04:00
sbwalker
b57450398c optimize pane rendering, preserve querystring parameters in edit mode, relocate anchor tags to ensure they are always injected, add ability to determine if navigation is internal 2023-06-01 08:44:07 -04:00
sbwalker
0f093b1238 utilize new Resources capability in default module/theme 2023-05-25 17:14:00 -04:00
sbwalker
95ba87945b optimize client assembly download service, add support for site level scripts 2023-05-25 12:32:21 -04:00
sbwalker
452d0af8c9 add null check 2023-05-23 11:16:07 -04:00
sbwalker
03374483e4 format head content, remove scripts, and filter duplicate elements 2023-05-23 09:12:03 -04:00
sbwalker
7b0799a6f6 utilize ResourceLocation consistently 2023-05-23 08:08:16 -04:00
sbwalker
20c7bf3c48 add support for body content 2023-05-22 15:02:36 -04:00
sbwalker
ded326c822 changes to support page level scripts, ability to detect prerendering 2023-05-22 13:56:48 -04:00
sbwalker
e41d9008b3 ability to specify Resources in IModule and ITheme interfaces,, fixed module settings for personalized pages 2023-05-19 18:08:15 -04:00
sbwalker
0b8086bd36 optimize JavaScript handling 2023-05-18 14:36:06 -04:00
sbwalker
076d150f72 add support for type attribute in JSInterop IncludeScript 2023-05-18 09:36:09 -04:00
sbwalker
f1ec70ff14 move PWA elements back to _Host 2023-05-18 08:37:21 -04:00
sbwalker
7336417634 handle id attribute automatically for headcontent inline scripts 2023-05-18 08:26:51 -04:00
sbwalker
5da4dadc31 allow HeadContent to support script tags 2023-05-17 17:13:08 -04:00
sbwalker
8d2f644177 added HeadContent property to Site and replaced Meta property on Page with HeadContent property. 2023-05-16 16:23:07 -04:00
sbwalker
89ada83012 migrate CSS references and remove JS Interop methods 2023-05-16 09:09:18 -04:00
sbwalker
5e652364c9 migrate PWA script injection 2023-05-16 08:00:48 -04:00
sbwalker
3b214a0105 relocate favicon rendering 2023-05-16 07:41:50 -04:00
sbwalker
dbe7324c7f ability to add arbitrary content to head and body during client and server rendering 2023-05-15 16:43:22 -04:00
sbwalker
e444c6bcf0 fix #2777 - module rendering order within pane - moved default module ordering logic to server API for consistency and better performance 2023-05-03 12:25:52 -04:00
Shaun Walker
e0c2b2982f improvements to #2736 to support scenarios where module is not explicitly assigned to a page 2023-04-11 13:01:34 -04:00
Shaun Walker
7fe4577158 Routes with Module ID and no Action can be displayed on any page regardless of whether a PageModule record exists (ie. Admin Dashboard) 2023-04-11 10:21:37 -04:00
Shaun Walker
8985dcb4c0 fix #2736 - UI not loading correct module instance in scenarios where a module exists on multiple pages 2023-04-10 08:37:35 -04:00
Shaun Walker
fc114dc5db include documentation to explain logic 2023-03-08 12:11:11 -05:00
Shaun Walker
7107d844e1 fix #2640 - system should remain in edit mode when editing a page 2023-03-08 11:50:30 -05:00
Shaun Walker
2b41909d47 #2618 - add backward compatibility for permissions optimizations 2023-03-02 15:34:42 -05:00
Shaun Walker
7db6b82a1a add defensive logic to querystring parser to handle duplicate parameters 2023-02-15 15:21:50 -05:00
Shaun Walker
0883a8dbff optimize Split() statements for consistency 2023-02-08 16:51:45 -05:00
Shaun Walker
56e4dcc11e fix #2578 - error notification sent via email includes direct link to specific log item, however redirect was causing an infinite loop. This resolves the problem and also preserves url querystring parameters during login/logout. 2023-02-06 16:44:25 -05:00
Shaun Walker
e136972cd7 add support for API permissions at the UI layer - including ability to delegate user, role, profile management 2023-01-09 11:38:25 -05:00
Shaun Walker
3de98873d6 fix #2502 - invalid logic checking querystring parameter 2022-11-23 11:26:23 -05:00
Shaun Walker
075a09f0df fix JS Interop methods for includeScript and includeMeta 2022-11-10 14:19:31 -05:00
Shaun Walker
c5b632cb24 Enhance SyncManager to raise events which can be handled on the server within hosted services. Raise create, update, delete events for all major entities. Include support for refresh and reload events to synchronize client state. Move client state cache invalidation to a hosted service to separate concerns and demonstrate events. 2022-10-04 19:20:02 -04:00
Shaun Walker
b7a3713946 Fix #2439 - ensure resource urls are constructed consistently on client and server 2022-09-28 09:43:02 -04:00
Shaun Walker
06812d5df8 improve BaseUrl handling for MAUI, replace ContentUrl with FileUrl and improve file server 2022-09-21 13:38:21 -04:00
Shaun Walker
654352827e refactor IndexedDB interop functions 2022-09-13 07:42:27 -04:00
Shaun Walker
23ae4b01cb remove unnecessary using statements 2022-09-12 14:54:31 -04:00
Shaun Walker
b8e2c729c1 cache assemblies in IndexedDB on WebAssembly 2022-09-12 14:46:46 -04:00
Shaun Walker
dd170bb41a more changes to support Default pane 2022-09-05 15:49:38 -04:00
Shaun Walker
282a0b0c44 Fix #2382 - Admin pane improvements 2022-09-02 18:10:13 -04:00
Shaun Walker
99d4d75d8e Improvements to richtexteditor to allow file management in raw html editor. Also allow disabling of raw html editor which can be utilized via new setting in Html/Text module. 2022-08-19 15:32:30 -04:00
Shaun Walker
c7edc28bd9 improve support for module content editors 2022-08-16 17:25:46 -04:00
Shaun Walker
4084b352de added ability to specify a site home page, updated default template content to include .NET MAUI 2022-08-15 17:01:20 -04:00
Shaun Walker
8bca345b45 optimize site router 2022-08-14 11:22:39 -04:00
Shaun Walker
3cf7153f44 resolve issue with deleted pages and modules caused by refactoring 2022-08-12 18:02:45 -04:00
Shaun Walker
3c6ebd7742 performance improvements to reduce http and database interactions 2022-08-12 16:47:51 -04:00
Shaun Walker
4cae3f02ed add ability to dynamically set module title and visible from components 2022-08-12 13:05:48 -04:00
Shaun Walker
fc6a794714 add support for preserving state when loading admin components 2022-08-12 10:43:00 -04:00
Shaun Walker
f96129fa37 Blazor Hybrid / .NET MAUI support 2022-08-11 17:09:32 -04:00
Shaun Walker
f97a6a2bee Added version to Language Management, improved framework performance by loading languages into PageState, include all supported cultures and allow Administrator to add any language to a site regardless of translation availability, fix translation upgrade issue 2022-07-16 09:59:47 -04:00
Shaun Walker
d3c40a7e8b fix #2172 - File Upload issue caused by JS Interop not passing AntiForgery token in POST methid 2022-05-04 17:14:45 -04:00
Shaun Walker
a3ff9373a2 enhance UserRole service with filtering and moved workload to server for better performance, improve error message details during installation 2022-04-29 21:39:11 -04:00
Shaun Walker
e4c648ee92 completed antiforgery implementation, improved external login claim mapping, principal construction, and user experience 2022-04-22 17:54:20 -04:00
Shaun Walker
6dc1d42d90 fix #2125 - cannot login using WebAssembly, remove granular 404 logging as it is already managed by url mapping, make IModule ReleaseVersions optional when using EF Core migrations 2022-04-13 19:27:12 -04:00
Shaun Walker
042083c0e7 fix logic issue in url mapping, improve 404 handling, add property change component notifications 2022-04-04 17:16:12 -04:00
Shaun Walker
6b100cf70b fix installation CSS issue 2022-04-02 09:29:12 -04:00
Shaun Walker
0fcf1c2732 filter deleted pages and modules in the router, provide support for cascading aspect of style sheets, replace ResourceDeclaration concept with ResourceLevel 2022-03-31 21:05:58 -04:00
Shaun Walker
f964e0e502 added router support for url fragments, added language attribute to HTML document tag to improve validation, fixed Theme Settings so they can only be invoked via the Control Panel, added support for webp image files 2022-01-22 19:34:30 -05:00
Shaun Walker
9e04230d99 added interop method for setting scroll position, persisted RemoteIPAddress in PageState so it is available on Blazor Server, added support for forwarded headers from load balancers and proxy servers, replaced DateTime.Now references DateTimeUtcNow for consistency, fixed issue where upgrade logic was being executed for prior version 2022-01-13 07:18:37 -05:00
Shaun Walker
5aecc4be03 remove invalid app tag, fix page title not being set on first render 2022-01-11 15:07:54 -05:00
痞子再
4ade58da01
Fixed first render css bug
Fixed the bug that CSS could not be render when the module was loaded for the first
2022-01-10 16:06:48 +08:00
Shaun Walker
6af5682548 increment copyright date to 2022, allow scheduled jobs to support weekly interval, improve dynamic image generation, add defensive logic to router 2022-01-05 14:28:42 -05:00
Shaun Walker
eeff4af167 make Url Mappings relative rather than absolute 2022-01-03 10:56:13 -05:00
Shaun Walker
6a2ff369ea Add support for IsPublic to all Setting types, enable Url Mapping for internal links 2021-12-18 10:35:22 -05:00
Shaun Walker
9c32937c83 added support for url mapping and viitors 2021-12-09 08:48:56 -05:00
Shaun Walker
43d166fb7d Route parsing abstraction and optimization, site router performance improvements, migrate site-based concepts (favicon, PWA support) to server for performance and prerendering benefits, move ThemeBuilder interop logic to OnAfterRenderAsync, upgrade SqlClient to release version, update installer to Bootstrap 5.1.3 2021-12-01 08:22:59 -05:00
Shaun Walker
19be77ed49 refactored ErrorBoundary implementation to support logging 2021-11-22 16:11:44 -05:00
Pavel Vesely
b40ee19735 ErrorBoundary 2021-11-17 11:22:24 +01:00
Shaun Walker
a16040a595 remove unnecessary cascading parameter to improve efficiency 2021-11-05 09:03:12 -04:00
Shaun Walker
d3f3359f66 fix #1745 - error on WebAssembly when logging out 2021-11-04 08:06:28 -04:00
Shaun Walker
7bfc0998fd fix #1713 - link to home path displays login page 2021-10-26 08:30:50 -04:00
Shaun Walker
306b78b526 Added ability for Runtime and RenderMode to be set per Site - enabling the framework to support multiple hosting models concurrently in the same installation. Fixed WebAssembly Prerendering issue (this also resolved the issue where the component taghelper was not passing parameters correctly to the app when running on WebAssembly). Fix #1702 - remove web,config from upgrade package. 2021-10-05 14:32:05 -04:00
Shaun Walker
ac67d88e74 fix logic which sometimes results in System.InvalidOperationException: The value of IsFixed cannot be changed dynamically 2021-10-01 15:58:17 -04:00
Shaun Walker
aeb599867c Allow root page paths (rather than specifying a magic "home" string). More UX improvements to FileManager and Pager. 2021-10-01 11:28:48 -04:00
Shaun Walker
005843ef2d Use ComponentTagHelper parameters on Blazor Server for passing state to allow pre-rendering to function properly ( ComponentTagHelper parameters do not work on Blazor WebAssembly - likely a .NET 5 bug ) 2021-09-23 17:16:51 -04:00