@objectstack/platform-objects 0.1.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 (46) hide show
  1. package/LICENSE +202 -0
  2. package/dist/apps/index.d.mts +427 -0
  3. package/dist/apps/index.d.ts +427 -0
  4. package/dist/apps/index.js +520 -0
  5. package/dist/apps/index.js.map +1 -0
  6. package/dist/apps/index.mjs +510 -0
  7. package/dist/apps/index.mjs.map +1 -0
  8. package/dist/audit/index.d.mts +9507 -0
  9. package/dist/audit/index.d.ts +9507 -0
  10. package/dist/audit/index.js +492 -0
  11. package/dist/audit/index.js.map +1 -0
  12. package/dist/audit/index.mjs +487 -0
  13. package/dist/audit/index.mjs.map +1 -0
  14. package/dist/identity/index.d.mts +32482 -0
  15. package/dist/identity/index.d.ts +32482 -0
  16. package/dist/identity/index.js +1404 -0
  17. package/dist/identity/index.js.map +1 -0
  18. package/dist/identity/index.mjs +1385 -0
  19. package/dist/identity/index.mjs.map +1 -0
  20. package/dist/index.d.mts +10 -0
  21. package/dist/index.d.ts +10 -0
  22. package/dist/index.js +4209 -0
  23. package/dist/index.js.map +1 -0
  24. package/dist/index.mjs +4160 -0
  25. package/dist/index.mjs.map +1 -0
  26. package/dist/metadata/index.d.mts +25601 -0
  27. package/dist/metadata/index.d.ts +25601 -0
  28. package/dist/metadata/index.js +911 -0
  29. package/dist/metadata/index.js.map +1 -0
  30. package/dist/metadata/index.mjs +902 -0
  31. package/dist/metadata/index.mjs.map +1 -0
  32. package/dist/security/index.d.mts +3554 -0
  33. package/dist/security/index.d.ts +3554 -0
  34. package/dist/security/index.js +178 -0
  35. package/dist/security/index.js.map +1 -0
  36. package/dist/security/index.mjs +175 -0
  37. package/dist/security/index.mjs.map +1 -0
  38. package/dist/state-machine.zod-BFg-VE0M.d-Ek3_yo9P.d.mts +41 -0
  39. package/dist/state-machine.zod-BFg-VE0M.d-Ek3_yo9P.d.ts +41 -0
  40. package/dist/tenant/index.d.mts +16454 -0
  41. package/dist/tenant/index.d.ts +16454 -0
  42. package/dist/tenant/index.js +741 -0
  43. package/dist/tenant/index.js.map +1 -0
  44. package/dist/tenant/index.mjs +733 -0
  45. package/dist/tenant/index.mjs.map +1 -0
  46. package/package.json +84 -0
@@ -0,0 +1,427 @@
1
+ import { App, ListView } from '@objectstack/spec/ui';
2
+ import * as _objectstack_spec_data from '@objectstack/spec/data';
3
+
4
+ /**
5
+ * Platform Setup App — static definition.
6
+ *
7
+ * Lists every `sys_*` administrative object as a left-hand navigation
8
+ * entry in ObjectUI's "Setup" area. Lives here (alongside the object
9
+ * schemas it references) instead of being assembled at runtime by
10
+ * `@objectstack/plugin-setup` — that plugin existed only because the
11
+ * referenced objects used to live in three different runtime plugins
12
+ * (auth/security/audit). Now that all `sys_*` objects are centralized
13
+ * in `@objectstack/platform-objects`, the Setup App is a fixed metadata
14
+ * artifact too and can be exported as plain data.
15
+ *
16
+ * The runtime registration happens in `plugin-auth` (which is always
17
+ * loaded alongside security + audit and already calls
18
+ * `manifest.register({...})`).
19
+ *
20
+ * Menu shape: flat `navigation[]` with `type: 'group'` category nodes,
21
+ * matching the convention used by the CRM example app
22
+ * (`examples/app-crm/src/apps/crm.app.ts`). The legacy `areas[]` shape
23
+ * was abandoned because it rendered poorly compared to the category
24
+ * style ObjectUI is built around.
25
+ */
26
+
27
+ declare const SETUP_APP: App;
28
+
29
+ /**
30
+ * Default list view for sys_user administration.
31
+ * Displays all users with key identity fields.
32
+ */
33
+ declare const UsersView: ListView;
34
+
35
+ /**
36
+ * Default list view for sys_organization administration.
37
+ * Displays all organizations with key metadata.
38
+ */
39
+ declare const OrganizationsView: ListView;
40
+
41
+ /**
42
+ * Default list view for sys_role administration.
43
+ * Displays all platform roles with permission summary.
44
+ */
45
+ declare const RolesView: ListView;
46
+
47
+ /**
48
+ * Default list view for sys_session administration.
49
+ * Displays all active user sessions with metadata.
50
+ */
51
+ declare const SessionsView: ListView;
52
+
53
+ /**
54
+ * Default list view for sys_audit_log administration.
55
+ * Displays platform audit trail with action and target information.
56
+ */
57
+ declare const AuditLogsView: ListView;
58
+
59
+ /**
60
+ * Default list view for sys_package_installation administration.
61
+ * Displays package installations with version and status information.
62
+ */
63
+ declare const PackageInstallationsView: ListView;
64
+
65
+ /**
66
+ * System Overview Dashboard
67
+ *
68
+ * Provides at-a-glance monitoring of platform health and key metrics:
69
+ * - Active user sessions
70
+ * - Audit activity (recent events)
71
+ * - Package installation status
72
+ * - Platform configuration
73
+ */
74
+ declare const SystemOverviewDashboard: {
75
+ name: string;
76
+ label: string;
77
+ widgets: {
78
+ id: string;
79
+ type: "table" | "bar" | "horizontal-bar" | "column" | "grouped-bar" | "stacked-bar" | "bi-polar-bar" | "line" | "area" | "stacked-area" | "step-line" | "spline" | "pie" | "donut" | "funnel" | "pyramid" | "scatter" | "bubble" | "treemap" | "sunburst" | "sankey" | "word-cloud" | "gauge" | "solid-gauge" | "metric" | "kpi" | "bullet" | "choropleth" | "bubble-map" | "gl-map" | "heatmap" | "radar" | "waterfall" | "box-plot" | "violin" | "candlestick" | "stock" | "pivot";
80
+ aggregate: "min" | "max" | "count" | "sum" | "avg";
81
+ layout: {
82
+ x: number;
83
+ y: number;
84
+ w: number;
85
+ h: number;
86
+ };
87
+ title?: string | undefined;
88
+ description?: string | undefined;
89
+ chartConfig?: {
90
+ type: "table" | "bar" | "horizontal-bar" | "column" | "grouped-bar" | "stacked-bar" | "bi-polar-bar" | "line" | "area" | "stacked-area" | "step-line" | "spline" | "pie" | "donut" | "funnel" | "pyramid" | "scatter" | "bubble" | "treemap" | "sunburst" | "sankey" | "word-cloud" | "gauge" | "solid-gauge" | "metric" | "kpi" | "bullet" | "choropleth" | "bubble-map" | "gl-map" | "heatmap" | "radar" | "waterfall" | "box-plot" | "violin" | "candlestick" | "stock" | "pivot";
91
+ showLegend: boolean;
92
+ showDataLabels: boolean;
93
+ title?: string | undefined;
94
+ subtitle?: string | undefined;
95
+ description?: string | undefined;
96
+ xAxis?: {
97
+ field: string;
98
+ showGridLines: boolean;
99
+ logarithmic: boolean;
100
+ title?: string | undefined;
101
+ format?: string | undefined;
102
+ min?: number | undefined;
103
+ max?: number | undefined;
104
+ stepSize?: number | undefined;
105
+ position?: "top" | "bottom" | "left" | "right" | undefined;
106
+ } | undefined;
107
+ yAxis?: {
108
+ field: string;
109
+ showGridLines: boolean;
110
+ logarithmic: boolean;
111
+ title?: string | undefined;
112
+ format?: string | undefined;
113
+ min?: number | undefined;
114
+ max?: number | undefined;
115
+ stepSize?: number | undefined;
116
+ position?: "top" | "bottom" | "left" | "right" | undefined;
117
+ }[] | undefined;
118
+ series?: {
119
+ name: string;
120
+ yAxis: "left" | "right";
121
+ label?: string | undefined;
122
+ type?: "table" | "bar" | "horizontal-bar" | "column" | "grouped-bar" | "stacked-bar" | "bi-polar-bar" | "line" | "area" | "stacked-area" | "step-line" | "spline" | "pie" | "donut" | "funnel" | "pyramid" | "scatter" | "bubble" | "treemap" | "sunburst" | "sankey" | "word-cloud" | "gauge" | "solid-gauge" | "metric" | "kpi" | "bullet" | "choropleth" | "bubble-map" | "gl-map" | "heatmap" | "radar" | "waterfall" | "box-plot" | "violin" | "candlestick" | "stock" | "pivot" | undefined;
123
+ color?: string | undefined;
124
+ stack?: string | undefined;
125
+ }[] | undefined;
126
+ colors?: string[] | undefined;
127
+ height?: number | undefined;
128
+ annotations?: {
129
+ type: "line" | "region";
130
+ axis: "x" | "y";
131
+ value: string | number;
132
+ style: "solid" | "dashed" | "dotted";
133
+ endValue?: string | number | undefined;
134
+ color?: string | undefined;
135
+ label?: string | undefined;
136
+ }[] | undefined;
137
+ interaction?: {
138
+ tooltips: boolean;
139
+ zoom: boolean;
140
+ brush: boolean;
141
+ clickAction?: string | undefined;
142
+ } | undefined;
143
+ aria?: {
144
+ ariaLabel?: string | undefined;
145
+ ariaDescribedBy?: string | undefined;
146
+ role?: string | undefined;
147
+ } | undefined;
148
+ } | undefined;
149
+ colorVariant?: "default" | "danger" | "success" | "warning" | "blue" | "teal" | "orange" | "purple" | undefined;
150
+ actionUrl?: string | undefined;
151
+ actionType?: "url" | "flow" | "api" | "script" | "modal" | undefined;
152
+ actionIcon?: string | undefined;
153
+ object?: string | undefined;
154
+ filter?: _objectstack_spec_data.FilterCondition | undefined;
155
+ categoryField?: string | undefined;
156
+ valueField?: string | undefined;
157
+ measures?: {
158
+ valueField: string;
159
+ aggregate: "min" | "max" | "count" | "sum" | "avg";
160
+ label?: string | undefined;
161
+ format?: string | undefined;
162
+ }[] | undefined;
163
+ options?: unknown;
164
+ responsive?: {
165
+ breakpoint?: "md" | "xs" | "sm" | "lg" | "xl" | "2xl" | undefined;
166
+ hiddenOn?: ("md" | "xs" | "sm" | "lg" | "xl" | "2xl")[] | undefined;
167
+ columns?: {
168
+ xs?: number | undefined;
169
+ sm?: number | undefined;
170
+ md?: number | undefined;
171
+ lg?: number | undefined;
172
+ xl?: number | undefined;
173
+ '2xl'?: number | undefined;
174
+ } | undefined;
175
+ order?: {
176
+ xs?: number | undefined;
177
+ sm?: number | undefined;
178
+ md?: number | undefined;
179
+ lg?: number | undefined;
180
+ xl?: number | undefined;
181
+ '2xl'?: number | undefined;
182
+ } | undefined;
183
+ } | undefined;
184
+ aria?: {
185
+ ariaLabel?: string | undefined;
186
+ ariaDescribedBy?: string | undefined;
187
+ role?: string | undefined;
188
+ } | undefined;
189
+ }[];
190
+ description?: string | undefined;
191
+ header?: {
192
+ showTitle: boolean;
193
+ showDescription: boolean;
194
+ actions?: {
195
+ label: string;
196
+ actionUrl: string;
197
+ actionType?: "url" | "flow" | "api" | "script" | "modal" | undefined;
198
+ icon?: string | undefined;
199
+ }[] | undefined;
200
+ } | undefined;
201
+ columns?: number | undefined;
202
+ gap?: number | undefined;
203
+ refreshInterval?: number | undefined;
204
+ dateRange?: {
205
+ defaultRange: "custom" | "today" | "yesterday" | "this_week" | "last_week" | "this_month" | "last_month" | "this_quarter" | "last_quarter" | "this_year" | "last_year" | "last_7_days" | "last_30_days" | "last_90_days";
206
+ allowCustomRange: boolean;
207
+ field?: string | undefined;
208
+ } | undefined;
209
+ globalFilters?: {
210
+ field: string;
211
+ scope: "dashboard" | "widget";
212
+ label?: string | undefined;
213
+ type?: "number" | "date" | "text" | "select" | "lookup" | undefined;
214
+ options?: {
215
+ value: string | number | boolean;
216
+ label: string;
217
+ }[] | undefined;
218
+ optionsFrom?: {
219
+ object: string;
220
+ valueField: string;
221
+ labelField: string;
222
+ filter?: _objectstack_spec_data.FilterCondition | undefined;
223
+ } | undefined;
224
+ defaultValue?: string | number | boolean | undefined;
225
+ targetWidgets?: string[] | undefined;
226
+ }[] | undefined;
227
+ aria?: {
228
+ ariaLabel?: string | undefined;
229
+ ariaDescribedBy?: string | undefined;
230
+ role?: string | undefined;
231
+ } | undefined;
232
+ performance?: {
233
+ lazyLoad?: boolean | undefined;
234
+ virtualScroll?: {
235
+ enabled: boolean;
236
+ itemHeight?: number | undefined;
237
+ overscan?: number | undefined;
238
+ } | undefined;
239
+ cacheStrategy?: "none" | "cache-first" | "network-first" | "stale-while-revalidate" | undefined;
240
+ prefetch?: boolean | undefined;
241
+ pageSize?: number | undefined;
242
+ debounceMs?: number | undefined;
243
+ } | undefined;
244
+ };
245
+
246
+ /**
247
+ * Security Overview Dashboard
248
+ *
249
+ * Provides security and compliance monitoring:
250
+ * - User authentication events
251
+ * - Permission changes
252
+ * - System configuration audits
253
+ * - Active user sessions
254
+ */
255
+ declare const SecurityOverviewDashboard: {
256
+ name: string;
257
+ label: string;
258
+ widgets: {
259
+ id: string;
260
+ type: "table" | "bar" | "horizontal-bar" | "column" | "grouped-bar" | "stacked-bar" | "bi-polar-bar" | "line" | "area" | "stacked-area" | "step-line" | "spline" | "pie" | "donut" | "funnel" | "pyramid" | "scatter" | "bubble" | "treemap" | "sunburst" | "sankey" | "word-cloud" | "gauge" | "solid-gauge" | "metric" | "kpi" | "bullet" | "choropleth" | "bubble-map" | "gl-map" | "heatmap" | "radar" | "waterfall" | "box-plot" | "violin" | "candlestick" | "stock" | "pivot";
261
+ aggregate: "min" | "max" | "count" | "sum" | "avg";
262
+ layout: {
263
+ x: number;
264
+ y: number;
265
+ w: number;
266
+ h: number;
267
+ };
268
+ title?: string | undefined;
269
+ description?: string | undefined;
270
+ chartConfig?: {
271
+ type: "table" | "bar" | "horizontal-bar" | "column" | "grouped-bar" | "stacked-bar" | "bi-polar-bar" | "line" | "area" | "stacked-area" | "step-line" | "spline" | "pie" | "donut" | "funnel" | "pyramid" | "scatter" | "bubble" | "treemap" | "sunburst" | "sankey" | "word-cloud" | "gauge" | "solid-gauge" | "metric" | "kpi" | "bullet" | "choropleth" | "bubble-map" | "gl-map" | "heatmap" | "radar" | "waterfall" | "box-plot" | "violin" | "candlestick" | "stock" | "pivot";
272
+ showLegend: boolean;
273
+ showDataLabels: boolean;
274
+ title?: string | undefined;
275
+ subtitle?: string | undefined;
276
+ description?: string | undefined;
277
+ xAxis?: {
278
+ field: string;
279
+ showGridLines: boolean;
280
+ logarithmic: boolean;
281
+ title?: string | undefined;
282
+ format?: string | undefined;
283
+ min?: number | undefined;
284
+ max?: number | undefined;
285
+ stepSize?: number | undefined;
286
+ position?: "top" | "bottom" | "left" | "right" | undefined;
287
+ } | undefined;
288
+ yAxis?: {
289
+ field: string;
290
+ showGridLines: boolean;
291
+ logarithmic: boolean;
292
+ title?: string | undefined;
293
+ format?: string | undefined;
294
+ min?: number | undefined;
295
+ max?: number | undefined;
296
+ stepSize?: number | undefined;
297
+ position?: "top" | "bottom" | "left" | "right" | undefined;
298
+ }[] | undefined;
299
+ series?: {
300
+ name: string;
301
+ yAxis: "left" | "right";
302
+ label?: string | undefined;
303
+ type?: "table" | "bar" | "horizontal-bar" | "column" | "grouped-bar" | "stacked-bar" | "bi-polar-bar" | "line" | "area" | "stacked-area" | "step-line" | "spline" | "pie" | "donut" | "funnel" | "pyramid" | "scatter" | "bubble" | "treemap" | "sunburst" | "sankey" | "word-cloud" | "gauge" | "solid-gauge" | "metric" | "kpi" | "bullet" | "choropleth" | "bubble-map" | "gl-map" | "heatmap" | "radar" | "waterfall" | "box-plot" | "violin" | "candlestick" | "stock" | "pivot" | undefined;
304
+ color?: string | undefined;
305
+ stack?: string | undefined;
306
+ }[] | undefined;
307
+ colors?: string[] | undefined;
308
+ height?: number | undefined;
309
+ annotations?: {
310
+ type: "line" | "region";
311
+ axis: "x" | "y";
312
+ value: string | number;
313
+ style: "solid" | "dashed" | "dotted";
314
+ endValue?: string | number | undefined;
315
+ color?: string | undefined;
316
+ label?: string | undefined;
317
+ }[] | undefined;
318
+ interaction?: {
319
+ tooltips: boolean;
320
+ zoom: boolean;
321
+ brush: boolean;
322
+ clickAction?: string | undefined;
323
+ } | undefined;
324
+ aria?: {
325
+ ariaLabel?: string | undefined;
326
+ ariaDescribedBy?: string | undefined;
327
+ role?: string | undefined;
328
+ } | undefined;
329
+ } | undefined;
330
+ colorVariant?: "default" | "danger" | "success" | "warning" | "blue" | "teal" | "orange" | "purple" | undefined;
331
+ actionUrl?: string | undefined;
332
+ actionType?: "url" | "flow" | "api" | "script" | "modal" | undefined;
333
+ actionIcon?: string | undefined;
334
+ object?: string | undefined;
335
+ filter?: _objectstack_spec_data.FilterCondition | undefined;
336
+ categoryField?: string | undefined;
337
+ valueField?: string | undefined;
338
+ measures?: {
339
+ valueField: string;
340
+ aggregate: "min" | "max" | "count" | "sum" | "avg";
341
+ label?: string | undefined;
342
+ format?: string | undefined;
343
+ }[] | undefined;
344
+ options?: unknown;
345
+ responsive?: {
346
+ breakpoint?: "md" | "xs" | "sm" | "lg" | "xl" | "2xl" | undefined;
347
+ hiddenOn?: ("md" | "xs" | "sm" | "lg" | "xl" | "2xl")[] | undefined;
348
+ columns?: {
349
+ xs?: number | undefined;
350
+ sm?: number | undefined;
351
+ md?: number | undefined;
352
+ lg?: number | undefined;
353
+ xl?: number | undefined;
354
+ '2xl'?: number | undefined;
355
+ } | undefined;
356
+ order?: {
357
+ xs?: number | undefined;
358
+ sm?: number | undefined;
359
+ md?: number | undefined;
360
+ lg?: number | undefined;
361
+ xl?: number | undefined;
362
+ '2xl'?: number | undefined;
363
+ } | undefined;
364
+ } | undefined;
365
+ aria?: {
366
+ ariaLabel?: string | undefined;
367
+ ariaDescribedBy?: string | undefined;
368
+ role?: string | undefined;
369
+ } | undefined;
370
+ }[];
371
+ description?: string | undefined;
372
+ header?: {
373
+ showTitle: boolean;
374
+ showDescription: boolean;
375
+ actions?: {
376
+ label: string;
377
+ actionUrl: string;
378
+ actionType?: "url" | "flow" | "api" | "script" | "modal" | undefined;
379
+ icon?: string | undefined;
380
+ }[] | undefined;
381
+ } | undefined;
382
+ columns?: number | undefined;
383
+ gap?: number | undefined;
384
+ refreshInterval?: number | undefined;
385
+ dateRange?: {
386
+ defaultRange: "custom" | "today" | "yesterday" | "this_week" | "last_week" | "this_month" | "last_month" | "this_quarter" | "last_quarter" | "this_year" | "last_year" | "last_7_days" | "last_30_days" | "last_90_days";
387
+ allowCustomRange: boolean;
388
+ field?: string | undefined;
389
+ } | undefined;
390
+ globalFilters?: {
391
+ field: string;
392
+ scope: "dashboard" | "widget";
393
+ label?: string | undefined;
394
+ type?: "number" | "date" | "text" | "select" | "lookup" | undefined;
395
+ options?: {
396
+ value: string | number | boolean;
397
+ label: string;
398
+ }[] | undefined;
399
+ optionsFrom?: {
400
+ object: string;
401
+ valueField: string;
402
+ labelField: string;
403
+ filter?: _objectstack_spec_data.FilterCondition | undefined;
404
+ } | undefined;
405
+ defaultValue?: string | number | boolean | undefined;
406
+ targetWidgets?: string[] | undefined;
407
+ }[] | undefined;
408
+ aria?: {
409
+ ariaLabel?: string | undefined;
410
+ ariaDescribedBy?: string | undefined;
411
+ role?: string | undefined;
412
+ } | undefined;
413
+ performance?: {
414
+ lazyLoad?: boolean | undefined;
415
+ virtualScroll?: {
416
+ enabled: boolean;
417
+ itemHeight?: number | undefined;
418
+ overscan?: number | undefined;
419
+ } | undefined;
420
+ cacheStrategy?: "none" | "cache-first" | "network-first" | "stale-while-revalidate" | undefined;
421
+ prefetch?: boolean | undefined;
422
+ pageSize?: number | undefined;
423
+ debounceMs?: number | undefined;
424
+ } | undefined;
425
+ };
426
+
427
+ export { AuditLogsView, OrganizationsView, PackageInstallationsView, RolesView, SETUP_APP, SecurityOverviewDashboard, SessionsView, SystemOverviewDashboard, UsersView };