@objectstack/platform-objects 7.3.0 → 7.4.0

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.
Files changed (51) hide show
  1. package/dist/apps/index.d.mts +45 -19
  2. package/dist/apps/index.d.ts +45 -19
  3. package/dist/apps/index.js +1434 -3406
  4. package/dist/apps/index.js.map +1 -1
  5. package/dist/apps/index.mjs +1434 -3407
  6. package/dist/apps/index.mjs.map +1 -1
  7. package/dist/audit/index.d.mts +4595 -26176
  8. package/dist/audit/index.d.ts +4595 -26176
  9. package/dist/audit/index.js +63 -1063
  10. package/dist/audit/index.js.map +1 -1
  11. package/dist/audit/index.mjs +64 -1057
  12. package/dist/audit/index.mjs.map +1 -1
  13. package/dist/identity/index.d.mts +839 -1281
  14. package/dist/identity/index.d.ts +839 -1281
  15. package/dist/index.d.mts +3 -8
  16. package/dist/index.d.ts +3 -8
  17. package/dist/index.js +2344 -6782
  18. package/dist/index.js.map +1 -1
  19. package/dist/index.mjs +2343 -6767
  20. package/dist/index.mjs.map +1 -1
  21. package/dist/integration/index.d.mts +1 -2947
  22. package/dist/integration/index.d.ts +1 -2947
  23. package/dist/integration/index.js +0 -136
  24. package/dist/integration/index.js.map +1 -1
  25. package/dist/integration/index.mjs +0 -135
  26. package/dist/integration/index.mjs.map +1 -1
  27. package/dist/metadata/index.d.mts +3924 -261
  28. package/dist/metadata/index.d.ts +3924 -261
  29. package/dist/metadata/index.js +101 -0
  30. package/dist/metadata/index.js.map +1 -1
  31. package/dist/metadata/index.mjs +101 -1
  32. package/dist/metadata/index.mjs.map +1 -1
  33. package/dist/metadata-translations/index.js +597 -505
  34. package/dist/metadata-translations/index.js.map +1 -1
  35. package/dist/metadata-translations/index.mjs +597 -505
  36. package/dist/metadata-translations/index.mjs.map +1 -1
  37. package/dist/plugin.js +1790 -3614
  38. package/dist/plugin.js.map +1 -1
  39. package/dist/plugin.mjs +1790 -3614
  40. package/dist/plugin.mjs.map +1 -1
  41. package/dist/security/index.d.mts +1 -18850
  42. package/dist/security/index.d.ts +1 -18850
  43. package/dist/security/index.js +0 -1531
  44. package/dist/security/index.js.map +1 -1
  45. package/dist/security/index.mjs +0 -1523
  46. package/dist/security/index.mjs.map +1 -1
  47. package/dist/system/index.d.mts +144 -212
  48. package/dist/system/index.d.ts +144 -212
  49. package/package.json +2 -2
  50. package/dist/state-machine.zod-BNanU03M.d-Ek3_yo9P.d.mts +0 -41
  51. package/dist/state-machine.zod-BNanU03M.d-Ek3_yo9P.d.ts +0 -41
@@ -1,32 +1,58 @@
1
- import { App } from '@objectstack/spec/ui';
1
+ import { App, NavigationContribution } from '@objectstack/spec/ui';
2
2
  import * as _objectstack_spec_data from '@objectstack/spec/data';
3
3
  import { TranslationBundle, TranslationData } from '@objectstack/spec/system';
4
4
 
5
5
  /**
6
- * Platform Setup App — static definition.
6
+ * Platform Setup App — navigation **shell** (ADR-0029 D7).
7
7
  *
8
- * Lists every `sys_*` administrative object as a left-hand navigation
9
- * entry in ObjectUI's "Setup" area. Lives here (alongside the object
10
- * schemas it references) instead of being assembled at runtime by
11
- * `@objectstack/plugin-setup` that plugin existed only because the
12
- * referenced objects used to live in three different runtime plugins
13
- * (auth/security/audit). Now that all `sys_*` objects are centralized
14
- * in `@objectstack/platform-objects`, the Setup App is a fixed metadata
15
- * artifact too and can be exported as plain data.
8
+ * The Setup App is now a thin shell: it defines the app envelope plus the
9
+ * stable left-nav **group anchors** ("slots"), but enumerates **no** objects.
10
+ * Each capability plugin contributes its own menu entries into a slot via
11
+ * `navigationContributions` (the UI-layer analog of object `extend`), so the
12
+ * menu for an object ships with the package that owns the object.
16
13
  *
17
- * The runtime registration happens in `plugin-auth` (which is always
18
- * loaded alongside security + audit and already calls
19
- * `manifest.register({...})`).
14
+ * - Items owned by `@objectstack/platform-objects` are contributed by
15
+ * `SETUP_NAV_CONTRIBUTIONS` (see `setup-nav.contributions.ts`), registered
16
+ * alongside this app.
17
+ * - Items owned by a capability plugin are contributed by that plugin — e.g.
18
+ * `@objectstack/plugin-webhooks` fills `group_integrations` with its
19
+ * `sys_webhook` / `sys_webhook_delivery` entries (ADR-0029 K2.a).
20
+ *
21
+ * The runtime merges all contributions into this app's `navigation` tree by
22
+ * group id + priority on read, so the rendered Setup nav is identical to the
23
+ * former static artifact — just assembled from its owners. A disabled
24
+ * capability contributes nothing and its slot stays empty.
20
25
  *
21
26
  * Menu shape: flat `navigation[]` with `type: 'group'` category nodes,
22
- * matching the convention used by the HotCRM reference app at
23
- * https://github.com/objectstack-ai/hotcrm (see `src/apps/crm.app.ts`).
24
- * The legacy `areas[]` shape was abandoned because it rendered poorly
25
- * compared to the category style ObjectUI is built around.
27
+ * matching the convention used by the HotCRM reference app.
26
28
  */
27
29
 
28
30
  declare const SETUP_APP: App;
29
31
 
32
+ /**
33
+ * Setup App navigation contributions owned by `@objectstack/platform-objects`
34
+ * (ADR-0029 D7).
35
+ *
36
+ * The Setup App (`setup.app.ts`) is a shell of empty group anchors; these
37
+ * contributions fill the groups with the entries for objects that still live
38
+ * in `@objectstack/platform-objects`. They are registered alongside
39
+ * `SETUP_APP` (via `plugin-auth`'s `manifest.register`).
40
+ *
41
+ * Some entries/groups are intentionally contributed by the capability plugin
42
+ * that owns the underlying objects rather than living here (ADR-0029 K2):
43
+ * - `group_integrations` → `@objectstack/plugin-webhooks` (K2.a)
44
+ * - `group_approvals` → `@objectstack/plugin-approvals` (K2.b)
45
+ * - `group_access_control` Roles / Permission Sets → `@objectstack/plugin-security`
46
+ * - `group_access_control` Sharing Rules / Record Shares → `@objectstack/plugin-sharing`
47
+ * As each remaining domain moves to its capability plugin, its entries move out
48
+ * of this file into that plugin the same way.
49
+ *
50
+ * Priority 100 keeps platform-objects base entries ahead of later
51
+ * contributions in the same group (mirrors object owner priority).
52
+ */
53
+
54
+ declare const SETUP_NAV_CONTRIBUTIONS: NavigationContribution[];
55
+
30
56
  /**
31
57
  * Platform Studio App — static definition.
32
58
  *
@@ -176,7 +202,7 @@ declare const SystemOverviewDashboard: {
176
202
  role?: string | undefined;
177
203
  } | undefined;
178
204
  } | undefined;
179
- colorVariant?: "default" | "danger" | "success" | "warning" | "blue" | "teal" | "orange" | "purple" | undefined;
205
+ colorVariant?: "default" | "danger" | "warning" | "success" | "blue" | "teal" | "orange" | "purple" | undefined;
180
206
  requiresObject?: string | undefined;
181
207
  requiresService?: string | undefined;
182
208
  actionUrl?: string | undefined;
@@ -339,4 +365,4 @@ declare const jaJP: TranslationData;
339
365
  */
340
366
  declare const esES: TranslationData;
341
367
 
342
- export { ACCOUNT_APP, SETUP_APP, STUDIO_APP, SetupAppTranslations, SystemOverviewDashboard, en, esES, jaJP, zhCN };
368
+ export { ACCOUNT_APP, SETUP_APP, SETUP_NAV_CONTRIBUTIONS, STUDIO_APP, SetupAppTranslations, SystemOverviewDashboard, en, esES, jaJP, zhCN };
@@ -1,32 +1,58 @@
1
- import { App } from '@objectstack/spec/ui';
1
+ import { App, NavigationContribution } from '@objectstack/spec/ui';
2
2
  import * as _objectstack_spec_data from '@objectstack/spec/data';
3
3
  import { TranslationBundle, TranslationData } from '@objectstack/spec/system';
4
4
 
5
5
  /**
6
- * Platform Setup App — static definition.
6
+ * Platform Setup App — navigation **shell** (ADR-0029 D7).
7
7
  *
8
- * Lists every `sys_*` administrative object as a left-hand navigation
9
- * entry in ObjectUI's "Setup" area. Lives here (alongside the object
10
- * schemas it references) instead of being assembled at runtime by
11
- * `@objectstack/plugin-setup` that plugin existed only because the
12
- * referenced objects used to live in three different runtime plugins
13
- * (auth/security/audit). Now that all `sys_*` objects are centralized
14
- * in `@objectstack/platform-objects`, the Setup App is a fixed metadata
15
- * artifact too and can be exported as plain data.
8
+ * The Setup App is now a thin shell: it defines the app envelope plus the
9
+ * stable left-nav **group anchors** ("slots"), but enumerates **no** objects.
10
+ * Each capability plugin contributes its own menu entries into a slot via
11
+ * `navigationContributions` (the UI-layer analog of object `extend`), so the
12
+ * menu for an object ships with the package that owns the object.
16
13
  *
17
- * The runtime registration happens in `plugin-auth` (which is always
18
- * loaded alongside security + audit and already calls
19
- * `manifest.register({...})`).
14
+ * - Items owned by `@objectstack/platform-objects` are contributed by
15
+ * `SETUP_NAV_CONTRIBUTIONS` (see `setup-nav.contributions.ts`), registered
16
+ * alongside this app.
17
+ * - Items owned by a capability plugin are contributed by that plugin — e.g.
18
+ * `@objectstack/plugin-webhooks` fills `group_integrations` with its
19
+ * `sys_webhook` / `sys_webhook_delivery` entries (ADR-0029 K2.a).
20
+ *
21
+ * The runtime merges all contributions into this app's `navigation` tree by
22
+ * group id + priority on read, so the rendered Setup nav is identical to the
23
+ * former static artifact — just assembled from its owners. A disabled
24
+ * capability contributes nothing and its slot stays empty.
20
25
  *
21
26
  * Menu shape: flat `navigation[]` with `type: 'group'` category nodes,
22
- * matching the convention used by the HotCRM reference app at
23
- * https://github.com/objectstack-ai/hotcrm (see `src/apps/crm.app.ts`).
24
- * The legacy `areas[]` shape was abandoned because it rendered poorly
25
- * compared to the category style ObjectUI is built around.
27
+ * matching the convention used by the HotCRM reference app.
26
28
  */
27
29
 
28
30
  declare const SETUP_APP: App;
29
31
 
32
+ /**
33
+ * Setup App navigation contributions owned by `@objectstack/platform-objects`
34
+ * (ADR-0029 D7).
35
+ *
36
+ * The Setup App (`setup.app.ts`) is a shell of empty group anchors; these
37
+ * contributions fill the groups with the entries for objects that still live
38
+ * in `@objectstack/platform-objects`. They are registered alongside
39
+ * `SETUP_APP` (via `plugin-auth`'s `manifest.register`).
40
+ *
41
+ * Some entries/groups are intentionally contributed by the capability plugin
42
+ * that owns the underlying objects rather than living here (ADR-0029 K2):
43
+ * - `group_integrations` → `@objectstack/plugin-webhooks` (K2.a)
44
+ * - `group_approvals` → `@objectstack/plugin-approvals` (K2.b)
45
+ * - `group_access_control` Roles / Permission Sets → `@objectstack/plugin-security`
46
+ * - `group_access_control` Sharing Rules / Record Shares → `@objectstack/plugin-sharing`
47
+ * As each remaining domain moves to its capability plugin, its entries move out
48
+ * of this file into that plugin the same way.
49
+ *
50
+ * Priority 100 keeps platform-objects base entries ahead of later
51
+ * contributions in the same group (mirrors object owner priority).
52
+ */
53
+
54
+ declare const SETUP_NAV_CONTRIBUTIONS: NavigationContribution[];
55
+
30
56
  /**
31
57
  * Platform Studio App — static definition.
32
58
  *
@@ -176,7 +202,7 @@ declare const SystemOverviewDashboard: {
176
202
  role?: string | undefined;
177
203
  } | undefined;
178
204
  } | undefined;
179
- colorVariant?: "default" | "danger" | "success" | "warning" | "blue" | "teal" | "orange" | "purple" | undefined;
205
+ colorVariant?: "default" | "danger" | "warning" | "success" | "blue" | "teal" | "orange" | "purple" | undefined;
180
206
  requiresObject?: string | undefined;
181
207
  requiresService?: string | undefined;
182
208
  actionUrl?: string | undefined;
@@ -339,4 +365,4 @@ declare const jaJP: TranslationData;
339
365
  */
340
366
  declare const esES: TranslationData;
341
367
 
342
- export { ACCOUNT_APP, SETUP_APP, STUDIO_APP, SetupAppTranslations, SystemOverviewDashboard, en, esES, jaJP, zhCN };
368
+ export { ACCOUNT_APP, SETUP_APP, SETUP_NAV_CONTRIBUTIONS, STUDIO_APP, SetupAppTranslations, SystemOverviewDashboard, en, esES, jaJP, zhCN };