@chill-sharp/ui-core 1.1.12 → 1.1.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +103 -103
- package/fesm2022/chill-sharp-ui-core.mjs +2446 -2446
- package/fesm2022/chill-sharp-ui-core.mjs.map +1 -1
- package/lib/lib/chill-form.component.d.ts +1 -1
- package/package.json +3 -3
- package/service-worker/chill-sharp-service-worker.js +166 -166
- package/styles/core-theme.scss +1235 -1235
- package/.agents/skills/chillsharp-current-user-preferences/SKILL.md +0 -70
- package/.agents/skills/chillsharp-ui-template/SKILL.md +0 -18
- package/doc/AIAssistedDevelopment/README.md +0 -185
- package/doc/AttachmentModel/README.md +0 -173
- package/doc/AuthenticationModel/README.md +0 -213
- package/doc/AuthenticationModel/how-to-integreate-auth-minimal-api.md +0 -293
- package/doc/ChillSharpClient.md +0 -464
- package/doc/ClientGeneration/README.md +0 -172
- package/doc/ComplianceGuide/README.md +0 -178
- package/doc/Configuration/README.md +0 -94
- package/doc/CurrentUserPreferences.md +0 -114
- package/doc/DateTimePolicy/README.md +0 -154
- package/doc/DateTimeSerialization.md +0 -423
- package/doc/Endpoints.md +0 -260
- package/doc/HowTo/01-simple-blog-sqlite.md +0 -153
- package/doc/HowTo/02-blog-schema-labels.md +0 -140
- package/doc/HowTo/03-authentication.md +0 -218
- package/doc/HowTo/04-blog-posts-one-to-many.md +0 -194
- package/doc/HowTo/05-docker-env-variables.md +0 -274
- package/doc/HowTo/06-chunk-transactions-autocomplete.md +0 -196
- package/doc/Mcp/ChatGPT.md +0 -291
- package/doc/Mcp/README.md +0 -799
- package/doc/MenuGuide/README.md +0 -49
- package/doc/ModelPreparation.md +0 -255
- package/doc/PermissionModel/README.md +0 -277
- package/doc/README.md +0 -228
- package/doc/ReferenceExistence.md +0 -130
- package/doc/RegisterContext.md +0 -217
- package/doc/UiCore/CRUD.md +0 -170
- package/doc/UiCore/README.md +0 -13
- package/doc/ValidationModel/README.md +0 -117
- package/doc/it/AIAssistedDevelopment/README.md +0 -185
- package/doc/it/AttachmentModel/README.md +0 -173
- package/doc/it/AuthenticationModel/README.md +0 -171
- package/doc/it/AuthenticationModel/how-to-integreate-auth-minimal-api.md +0 -292
- package/doc/it/ChillSharpClient.md +0 -464
- package/doc/it/ClientGeneration/README.md +0 -152
- package/doc/it/ComplianceGuide/README.md +0 -178
- package/doc/it/Configuration/README.md +0 -94
- package/doc/it/CurrentUserPreferences.md +0 -114
- package/doc/it/DateTimePolicy/README.md +0 -154
- package/doc/it/DateTimeSerialization.md +0 -423
- package/doc/it/Endpoints.md +0 -260
- package/doc/it/HowTo/01-simple-blog-sqlite.md +0 -152
- package/doc/it/HowTo/02-blog-schema-labels.md +0 -139
- package/doc/it/HowTo/03-authentication.md +0 -221
- package/doc/it/HowTo/04-blog-posts-one-to-many.md +0 -193
- package/doc/it/HowTo/05-docker-env-variables.md +0 -268
- package/doc/it/HowTo/06-chunk-transactions-autocomplete.md +0 -196
- package/doc/it/Mcp/ChatGPT.md +0 -291
- package/doc/it/Mcp/README.md +0 -799
- package/doc/it/MenuGuide/README.md +0 -49
- package/doc/it/ModelPreparation.md +0 -254
- package/doc/it/PermissionModel/README.md +0 -190
- package/doc/it/README.md +0 -172
- package/doc/it/ReferenceExistence.md +0 -130
- package/doc/it/RegisterContext.md +0 -218
- package/doc/it/UiCore/CRUD.md +0 -170
- package/doc/it/UiCore/README.md +0 -13
- package/doc/it/ValidationModel/README.md +0 -117
- package/template-customization/upgrade.ps1.template +0 -342
- package/template-customization/upgrade.sh.template +0 -271
package/README.md
CHANGED
|
@@ -1,103 +1,103 @@
|
|
|
1
|
-
# @chill-sharp/ui-core
|
|
2
|
-
|
|
3
|
-
Private Angular package that contains the shared ChillSharp UI implementation extracted from the standard `chill-sharp-ng-ui` application.
|
|
4
|
-
|
|
5
|
-
## Scope
|
|
6
|
-
|
|
7
|
-
This package contains:
|
|
8
|
-
|
|
9
|
-
- shared layouts
|
|
10
|
-
- shared pages
|
|
11
|
-
- shared services
|
|
12
|
-
- workspace/task infrastructure
|
|
13
|
-
- reusable ChillSharp form and table components
|
|
14
|
-
- shared models and runtime helpers
|
|
15
|
-
- base theme styles
|
|
16
|
-
|
|
17
|
-
This package intentionally does not contain a client-specific shell application.
|
|
18
|
-
|
|
19
|
-
Client shells and client-owned plugins should live outside this package.
|
|
20
|
-
|
|
21
|
-
## Install
|
|
22
|
-
|
|
23
|
-
```bash
|
|
24
|
-
npm install @chill-sharp/ui-core
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
## Build And Release
|
|
28
|
-
|
|
29
|
-
See [`HOW_TO_BUILD.md`](/c:/source/personal/chill-sharp/chill-sharp/extra/chill-sharp-ui-core/HOW_TO_BUILD.md) for the workflow to rebuild, version, and publish the library after a change.
|
|
30
|
-
|
|
31
|
-
## Plugin Documentation
|
|
32
|
-
|
|
33
|
-
`@chill-sharp/ui-core` currently supports client extension through template-owned routes, provider override placeholders, and runtime-loaded remote workspace tasks. It does not yet expose a single formal plugin registration API.
|
|
34
|
-
|
|
35
|
-
See [`../HOW_TO_CREATE_UI_CORE_PLUGIN_README.md`](../HOW_TO_CREATE_UI_CORE_PLUGIN_README.md) before documenting a client plugin or remote workspace task package.
|
|
36
|
-
|
|
37
|
-
## Theme import
|
|
38
|
-
|
|
39
|
-
Import the shared theme from your client shell:
|
|
40
|
-
|
|
41
|
-
```scss
|
|
42
|
-
@import '@chill-sharp/ui-core/styles/core-theme.scss';
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
## Package entry points
|
|
46
|
-
|
|
47
|
-
- `ChillSharpUiRootComponent`: router host component for the shell
|
|
48
|
-
- `CHILL_SHARP_UI_ROUTES`: default route tree for the standard ChillSharp UI
|
|
49
|
-
- `provideChillSharpUiCore()`: shared providers and initializers
|
|
50
|
-
|
|
51
|
-
## Status
|
|
52
|
-
|
|
53
|
-
This is the initial extraction of the current Angular implementation into a reusable `ui-core` package. Client shells should consume it and own only bootstrap, configuration, branding, theme overrides, and local plugins.
|
|
54
|
-
|
|
55
|
-
## Service worker cache
|
|
56
|
-
|
|
57
|
-
`@chill-sharp/ui-core` ships `service-worker/chill-sharp-service-worker.js`.
|
|
58
|
-
The template and GDF load it from their client-owned `public/sw.js`; future package
|
|
59
|
-
upgrades update the shared behavior without replacing client options.
|
|
60
|
-
|
|
61
|
-
For an existing client, integrate once:
|
|
62
|
-
|
|
63
|
-
1. Upgrade `@chill-sharp/ui-core` to a package containing the worker (1.1.6 or later).
|
|
64
|
-
2. Add this entry to the Angular build assets (and test assets if applicable):
|
|
65
|
-
`{"glob":"*.js","input":"node_modules/@chill-sharp/ui-core/service-worker","output":"/"}`.
|
|
66
|
-
3. Create/adapt `public/sw.js`:
|
|
67
|
-
|
|
68
|
-
```js
|
|
69
|
-
self.CHILL_SHARP_SW_OPTIONS = {
|
|
70
|
-
cachePrefix: 'my-app',
|
|
71
|
-
cacheVersion: 'v2',
|
|
72
|
-
cacheTimeoutMs: 10 * 60 * 1000,
|
|
73
|
-
appShell: ['/', '/index.html'],
|
|
74
|
-
legacyCacheNames: []
|
|
75
|
-
};
|
|
76
|
-
importScripts('./chill-sharp-service-worker.js');
|
|
77
|
-
```
|
|
78
|
-
|
|
79
|
-
4. Register `/sw.js` with `{ updateViaCache: 'none' }` on page load. Serve both
|
|
80
|
-
worker scripts with `Cache-Control: no-cache, must-revalidate`, not immutable.
|
|
81
|
-
HTTPS (or localhost) is required. Apps hosted below `/` must adjust shell URLs,
|
|
82
|
-
registration URL and scope for their base path.
|
|
83
|
-
|
|
84
|
-
Do not register a second worker alongside an existing custom worker for the same
|
|
85
|
-
scope; integrate the shared worker into the client wrapper. Cache names belonging
|
|
86
|
-
to `cachePrefix` with old versions are removed on activation. Use `legacyCacheNames`
|
|
87
|
-
for explicitly named old caches with a different prefix. Unrelated caches survive.
|
|
88
|
-
|
|
89
|
-
Schema, schema-list and entity-options GETs expire at ten minutes, including
|
|
90
|
-
cross-origin API requests. Expired entries fetch from the network without using
|
|
91
|
-
the browser HTTP cache; expired metadata is not returned as an offline fallback.
|
|
92
|
-
Bearer responses vary by Authorization. Other APIs and runtime configuration are
|
|
93
|
-
network-only. Static runtime assets use the same lifetime; the precached app shell
|
|
94
|
-
remains available as a navigation fallback when offline.
|
|
95
|
-
|
|
96
|
-
Every `get-schema?update=true` request reaches the server. It clears all cached
|
|
97
|
-
schemas, lists and entity options before and after the request, as do `set-schema`
|
|
98
|
-
and `set-entity-options`. Reads during a write wait for it to finish, and old
|
|
99
|
-
in-flight reads cannot refill the cache after invalidation. The first ordinary GET
|
|
100
|
-
after the update or a page reload fetches a fresh schema and starts a new lifetime.
|
|
101
|
-
|
|
102
|
-
Run `npm run test:service-worker` in `extra/chill-sharp-ui-core` for the regression
|
|
103
|
-
tests covering expiration, invalidation, authorization and request races.
|
|
1
|
+
# @chill-sharp/ui-core
|
|
2
|
+
|
|
3
|
+
Private Angular package that contains the shared ChillSharp UI implementation extracted from the standard `chill-sharp-ng-ui` application.
|
|
4
|
+
|
|
5
|
+
## Scope
|
|
6
|
+
|
|
7
|
+
This package contains:
|
|
8
|
+
|
|
9
|
+
- shared layouts
|
|
10
|
+
- shared pages
|
|
11
|
+
- shared services
|
|
12
|
+
- workspace/task infrastructure
|
|
13
|
+
- reusable ChillSharp form and table components
|
|
14
|
+
- shared models and runtime helpers
|
|
15
|
+
- base theme styles
|
|
16
|
+
|
|
17
|
+
This package intentionally does not contain a client-specific shell application.
|
|
18
|
+
|
|
19
|
+
Client shells and client-owned plugins should live outside this package.
|
|
20
|
+
|
|
21
|
+
## Install
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
npm install @chill-sharp/ui-core
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## Build And Release
|
|
28
|
+
|
|
29
|
+
See [`HOW_TO_BUILD.md`](/c:/source/personal/chill-sharp/chill-sharp/extra/chill-sharp-ui-core/HOW_TO_BUILD.md) for the workflow to rebuild, version, and publish the library after a change.
|
|
30
|
+
|
|
31
|
+
## Plugin Documentation
|
|
32
|
+
|
|
33
|
+
`@chill-sharp/ui-core` currently supports client extension through template-owned routes, provider override placeholders, and runtime-loaded remote workspace tasks. It does not yet expose a single formal plugin registration API.
|
|
34
|
+
|
|
35
|
+
See [`../HOW_TO_CREATE_UI_CORE_PLUGIN_README.md`](../HOW_TO_CREATE_UI_CORE_PLUGIN_README.md) before documenting a client plugin or remote workspace task package.
|
|
36
|
+
|
|
37
|
+
## Theme import
|
|
38
|
+
|
|
39
|
+
Import the shared theme from your client shell:
|
|
40
|
+
|
|
41
|
+
```scss
|
|
42
|
+
@import '@chill-sharp/ui-core/styles/core-theme.scss';
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
## Package entry points
|
|
46
|
+
|
|
47
|
+
- `ChillSharpUiRootComponent`: router host component for the shell
|
|
48
|
+
- `CHILL_SHARP_UI_ROUTES`: default route tree for the standard ChillSharp UI
|
|
49
|
+
- `provideChillSharpUiCore()`: shared providers and initializers
|
|
50
|
+
|
|
51
|
+
## Status
|
|
52
|
+
|
|
53
|
+
This is the initial extraction of the current Angular implementation into a reusable `ui-core` package. Client shells should consume it and own only bootstrap, configuration, branding, theme overrides, and local plugins.
|
|
54
|
+
|
|
55
|
+
## Service worker cache
|
|
56
|
+
|
|
57
|
+
`@chill-sharp/ui-core` ships `service-worker/chill-sharp-service-worker.js`.
|
|
58
|
+
The template and GDF load it from their client-owned `public/sw.js`; future package
|
|
59
|
+
upgrades update the shared behavior without replacing client options.
|
|
60
|
+
|
|
61
|
+
For an existing client, integrate once:
|
|
62
|
+
|
|
63
|
+
1. Upgrade `@chill-sharp/ui-core` to a package containing the worker (1.1.6 or later).
|
|
64
|
+
2. Add this entry to the Angular build assets (and test assets if applicable):
|
|
65
|
+
`{"glob":"*.js","input":"node_modules/@chill-sharp/ui-core/service-worker","output":"/"}`.
|
|
66
|
+
3. Create/adapt `public/sw.js`:
|
|
67
|
+
|
|
68
|
+
```js
|
|
69
|
+
self.CHILL_SHARP_SW_OPTIONS = {
|
|
70
|
+
cachePrefix: 'my-app',
|
|
71
|
+
cacheVersion: 'v2',
|
|
72
|
+
cacheTimeoutMs: 10 * 60 * 1000,
|
|
73
|
+
appShell: ['/', '/index.html'],
|
|
74
|
+
legacyCacheNames: []
|
|
75
|
+
};
|
|
76
|
+
importScripts('./chill-sharp-service-worker.js');
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
4. Register `/sw.js` with `{ updateViaCache: 'none' }` on page load. Serve both
|
|
80
|
+
worker scripts with `Cache-Control: no-cache, must-revalidate`, not immutable.
|
|
81
|
+
HTTPS (or localhost) is required. Apps hosted below `/` must adjust shell URLs,
|
|
82
|
+
registration URL and scope for their base path.
|
|
83
|
+
|
|
84
|
+
Do not register a second worker alongside an existing custom worker for the same
|
|
85
|
+
scope; integrate the shared worker into the client wrapper. Cache names belonging
|
|
86
|
+
to `cachePrefix` with old versions are removed on activation. Use `legacyCacheNames`
|
|
87
|
+
for explicitly named old caches with a different prefix. Unrelated caches survive.
|
|
88
|
+
|
|
89
|
+
Schema, schema-list and entity-options GETs expire at ten minutes, including
|
|
90
|
+
cross-origin API requests. Expired entries fetch from the network without using
|
|
91
|
+
the browser HTTP cache; expired metadata is not returned as an offline fallback.
|
|
92
|
+
Bearer responses vary by Authorization. Other APIs and runtime configuration are
|
|
93
|
+
network-only. Static runtime assets use the same lifetime; the precached app shell
|
|
94
|
+
remains available as a navigation fallback when offline.
|
|
95
|
+
|
|
96
|
+
Every `get-schema?update=true` request reaches the server. It clears all cached
|
|
97
|
+
schemas, lists and entity options before and after the request, as do `set-schema`
|
|
98
|
+
and `set-entity-options`. Reads during a write wait for it to finish, and old
|
|
99
|
+
in-flight reads cannot refill the cache after invalidation. The first ordinary GET
|
|
100
|
+
after the update or a page reload fetches a fresh schema and starts a new lifetime.
|
|
101
|
+
|
|
102
|
+
Run `npm run test:service-worker` in `extra/chill-sharp-ui-core` for the regression
|
|
103
|
+
tests covering expiration, invalidation, authorization and request races.
|