@baseplate-dev/project-builder-lib 0.2.4 → 0.2.6

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 (109) hide show
  1. package/dist/migrations/index.d.ts.map +1 -1
  2. package/dist/migrations/index.js +2 -0
  3. package/dist/migrations/index.js.map +1 -1
  4. package/dist/migrations/migration-016-web-admin-config.d.ts +34 -0
  5. package/dist/migrations/migration-016-web-admin-config.d.ts.map +1 -0
  6. package/dist/migrations/migration-016-web-admin-config.js +43 -0
  7. package/dist/migrations/migration-016-web-admin-config.js.map +1 -0
  8. package/dist/plugins/migrations/run-migrations.d.ts.map +1 -1
  9. package/dist/plugins/migrations/run-migrations.js +8 -3
  10. package/dist/plugins/migrations/run-migrations.js.map +1 -1
  11. package/dist/plugins/plugins.test-utils.d.ts +27 -0
  12. package/dist/plugins/plugins.test-utils.d.ts.map +1 -0
  13. package/dist/plugins/plugins.test-utils.js +59 -0
  14. package/dist/plugins/plugins.test-utils.js.map +1 -0
  15. package/dist/plugins/spec/config-spec.d.ts +8 -6
  16. package/dist/plugins/spec/config-spec.d.ts.map +1 -1
  17. package/dist/plugins/spec/config-spec.js.map +1 -1
  18. package/dist/schema/apps/index.d.ts +1 -1
  19. package/dist/schema/apps/index.d.ts.map +1 -1
  20. package/dist/schema/apps/index.js +2 -1
  21. package/dist/schema/apps/index.js.map +1 -1
  22. package/dist/schema/apps/{admin/app.d.ts → web/admin/admin.d.ts} +231 -30
  23. package/dist/schema/apps/{admin/app.d.ts.map → web/admin/admin.d.ts.map} +1 -1
  24. package/dist/schema/apps/web/admin/admin.js +22 -0
  25. package/dist/schema/apps/web/admin/admin.js.map +1 -0
  26. package/dist/schema/apps/web/admin/index.d.ts +3 -0
  27. package/dist/schema/apps/web/admin/index.d.ts.map +1 -0
  28. package/dist/schema/apps/web/admin/index.js +3 -0
  29. package/dist/schema/apps/web/admin/index.js.map +1 -0
  30. package/dist/schema/apps/{admin → web/admin}/sections/base.d.ts +1 -1
  31. package/dist/schema/apps/web/admin/sections/base.d.ts.map +1 -0
  32. package/dist/schema/apps/web/admin/sections/base.js.map +1 -0
  33. package/dist/schema/apps/{admin → web/admin}/sections/crud-form/admin-crud-input.d.ts +1 -1
  34. package/dist/schema/apps/web/admin/sections/crud-form/admin-crud-input.d.ts.map +1 -0
  35. package/dist/schema/apps/web/admin/sections/crud-form/admin-crud-input.js.map +1 -0
  36. package/dist/schema/apps/web/admin/sections/crud-form/admin-input-spec.d.ts.map +1 -0
  37. package/dist/schema/apps/web/admin/sections/crud-form/admin-input-spec.js.map +1 -0
  38. package/dist/schema/apps/web/admin/sections/crud-form/built-in-input.d.ts.map +1 -0
  39. package/dist/schema/apps/web/admin/sections/crud-form/built-in-input.js.map +1 -0
  40. package/dist/schema/apps/web/admin/sections/crud-form/index.d.ts.map +1 -0
  41. package/dist/schema/apps/web/admin/sections/crud-form/index.js.map +1 -0
  42. package/dist/schema/apps/web/admin/sections/crud-form/types.d.ts.map +1 -0
  43. package/dist/schema/apps/web/admin/sections/crud-form/types.js.map +1 -0
  44. package/dist/schema/apps/web/admin/sections/crud.d.ts.map +1 -0
  45. package/dist/schema/apps/web/admin/sections/crud.js.map +1 -0
  46. package/dist/schema/apps/web/admin/sections/index.d.ts.map +1 -0
  47. package/dist/schema/apps/web/admin/sections/index.js.map +1 -0
  48. package/dist/schema/apps/web/admin/sections/types.d.ts.map +1 -0
  49. package/dist/schema/apps/{admin → web/admin}/sections/types.js +1 -1
  50. package/dist/schema/apps/web/admin/sections/types.js.map +1 -0
  51. package/dist/schema/apps/web/index.d.ts +1 -49
  52. package/dist/schema/apps/web/index.d.ts.map +1 -1
  53. package/dist/schema/apps/web/index.js +1 -21
  54. package/dist/schema/apps/web/index.js.map +1 -1
  55. package/dist/schema/apps/web/web-app.d.ts +1544 -0
  56. package/dist/schema/apps/web/web-app.d.ts.map +1 -0
  57. package/dist/schema/apps/web/web-app.js +22 -0
  58. package/dist/schema/apps/web/web-app.js.map +1 -0
  59. package/dist/schema/features/theme.d.ts +11 -11
  60. package/dist/schema/models/index.d.ts +6 -6
  61. package/dist/schema/project-definition.d.ts +2644 -1788
  62. package/dist/schema/project-definition.d.ts.map +1 -1
  63. package/dist/schema/project-definition.js +0 -2
  64. package/dist/schema/project-definition.js.map +1 -1
  65. package/dist/schema/settings.d.ts +14 -14
  66. package/dist/tools/model-merger/model-merger.d.ts +7 -7
  67. package/dist/tools/model-merger/model-merger.d.ts.map +1 -1
  68. package/dist/tools/model-merger/model-merger.js +37 -13
  69. package/dist/tools/model-merger/model-merger.js.map +1 -1
  70. package/package.json +5 -5
  71. package/dist/schema/apps/admin/app.js +0 -27
  72. package/dist/schema/apps/admin/app.js.map +0 -1
  73. package/dist/schema/apps/admin/index.d.ts +0 -3
  74. package/dist/schema/apps/admin/index.d.ts.map +0 -1
  75. package/dist/schema/apps/admin/index.js +0 -3
  76. package/dist/schema/apps/admin/index.js.map +0 -1
  77. package/dist/schema/apps/admin/sections/base.d.ts.map +0 -1
  78. package/dist/schema/apps/admin/sections/base.js.map +0 -1
  79. package/dist/schema/apps/admin/sections/crud-form/admin-crud-input.d.ts.map +0 -1
  80. package/dist/schema/apps/admin/sections/crud-form/admin-crud-input.js.map +0 -1
  81. package/dist/schema/apps/admin/sections/crud-form/admin-input-spec.d.ts.map +0 -1
  82. package/dist/schema/apps/admin/sections/crud-form/admin-input-spec.js.map +0 -1
  83. package/dist/schema/apps/admin/sections/crud-form/built-in-input.d.ts.map +0 -1
  84. package/dist/schema/apps/admin/sections/crud-form/built-in-input.js.map +0 -1
  85. package/dist/schema/apps/admin/sections/crud-form/index.d.ts.map +0 -1
  86. package/dist/schema/apps/admin/sections/crud-form/index.js.map +0 -1
  87. package/dist/schema/apps/admin/sections/crud-form/types.d.ts.map +0 -1
  88. package/dist/schema/apps/admin/sections/crud-form/types.js.map +0 -1
  89. package/dist/schema/apps/admin/sections/crud.d.ts.map +0 -1
  90. package/dist/schema/apps/admin/sections/crud.js.map +0 -1
  91. package/dist/schema/apps/admin/sections/index.d.ts.map +0 -1
  92. package/dist/schema/apps/admin/sections/index.js.map +0 -1
  93. package/dist/schema/apps/admin/sections/types.d.ts.map +0 -1
  94. package/dist/schema/apps/admin/sections/types.js.map +0 -1
  95. /package/dist/schema/apps/{admin → web/admin}/sections/base.js +0 -0
  96. /package/dist/schema/apps/{admin → web/admin}/sections/crud-form/admin-crud-input.js +0 -0
  97. /package/dist/schema/apps/{admin → web/admin}/sections/crud-form/admin-input-spec.d.ts +0 -0
  98. /package/dist/schema/apps/{admin → web/admin}/sections/crud-form/admin-input-spec.js +0 -0
  99. /package/dist/schema/apps/{admin → web/admin}/sections/crud-form/built-in-input.d.ts +0 -0
  100. /package/dist/schema/apps/{admin → web/admin}/sections/crud-form/built-in-input.js +0 -0
  101. /package/dist/schema/apps/{admin → web/admin}/sections/crud-form/index.d.ts +0 -0
  102. /package/dist/schema/apps/{admin → web/admin}/sections/crud-form/index.js +0 -0
  103. /package/dist/schema/apps/{admin → web/admin}/sections/crud-form/types.d.ts +0 -0
  104. /package/dist/schema/apps/{admin → web/admin}/sections/crud-form/types.js +0 -0
  105. /package/dist/schema/apps/{admin → web/admin}/sections/crud.d.ts +0 -0
  106. /package/dist/schema/apps/{admin → web/admin}/sections/crud.js +0 -0
  107. /package/dist/schema/apps/{admin → web/admin}/sections/index.d.ts +0 -0
  108. /package/dist/schema/apps/{admin → web/admin}/sections/index.js +0 -0
  109. /package/dist/schema/apps/{admin → web/admin}/sections/types.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/migrations/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAclD,eAAO,MAAM,iBAAiB,EAAE,eAAe,EAY9C,CAAC;AAEF,wBAAgB,8BAA8B,CAC5C,iBAAiB,EAAE,OAAO,GACzB,iBAAiB,IAAI,iBAAiB,CAMxC;AAED,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,SAAgB,aAAa,EAAE,MAAM,CAAC;IACtC,SAAgB,KAAK,EAAE,OAAO,CAAC;gBAEnB,aAAa,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO;CAQlD;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,iBAAiB,GAAG;IAC9D,kBAAkB,EAAE,iBAAiB,CAAC;IACtC,iBAAiB,EAAE,eAAe,EAAE,CAAC;CACtC,CAoBA;AAED,wBAAgB,yBAAyB,IAAI,MAAM,CAElD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/migrations/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAelD,eAAO,MAAM,iBAAiB,EAAE,eAAe,EAa9C,CAAC;AAEF,wBAAgB,8BAA8B,CAC5C,iBAAiB,EAAE,OAAO,GACzB,iBAAiB,IAAI,iBAAiB,CAMxC;AAED,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,SAAgB,aAAa,EAAE,MAAM,CAAC;IACtC,SAAgB,KAAK,EAAE,OAAO,CAAC;gBAEnB,aAAa,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO;CAQlD;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,iBAAiB,GAAG;IAC9D,kBAAkB,EAAE,iBAAiB,CAAC;IACtC,iBAAiB,EAAE,eAAe,EAAE,CAAC;CACtC,CAoBA;AAED,wBAAgB,yBAAyB,IAAI,MAAM,CAElD"}
@@ -9,6 +9,7 @@ import { migration012MigrateAuthConfig } from './migration-012-migrate-auth-conf
9
9
  import { migration013MoveGeneralSettings } from './migration-013-move-general-settings.js';
10
10
  import { migration014MigratePluginIds } from './migration-014-migrate-plugin-ids.js';
11
11
  import { migration015NullParentRefs } from './migration-015-null-parent-refs.js';
12
+ import { migration016WebAdminConfig } from './migration-016-web-admin-config.js';
12
13
  export const SCHEMA_MIGRATIONS = [
13
14
  migration005PrimaryUniqueRefs,
14
15
  migration006IndividualServiceControllers,
@@ -21,6 +22,7 @@ export const SCHEMA_MIGRATIONS = [
21
22
  migration013MoveGeneralSettings,
22
23
  migration014MigratePluginIds,
23
24
  migration015NullParentRefs,
25
+ migration016WebAdminConfig,
24
26
  ];
25
27
  export function isMigrateableProjectDefinition(projectDefinition) {
26
28
  return (typeof projectDefinition === 'object' &&
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/migrations/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,6BAA6B,EAAE,MAAM,wCAAwC,CAAC;AACvF,OAAO,EAAE,wCAAwC,EAAE,MAAM,mDAAmD,CAAC;AAC7G,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,+BAA+B,EAAE,MAAM,0CAA0C,CAAC;AAC3F,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,6BAA6B,EAAE,MAAM,wCAAwC,CAAC;AACvF,OAAO,EAAE,+BAA+B,EAAE,MAAM,0CAA0C,CAAC;AAC3F,OAAO,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AACrF,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AAEjF,MAAM,CAAC,MAAM,iBAAiB,GAAsB;IAClD,6BAA6B;IAC7B,wCAAwC;IACxC,wBAAwB;IACxB,+BAA+B;IAC/B,sBAAsB;IACtB,sBAAsB;IACtB,oBAAoB;IACpB,6BAA6B;IAC7B,+BAA+B;IAC/B,4BAA4B;IAC5B,0BAA0B;CAC3B,CAAC;AAEF,MAAM,UAAU,8BAA8B,CAC5C,iBAA0B;IAE1B,OAAO,CACL,OAAO,iBAAiB,KAAK,QAAQ;QACrC,CAAC,CAAC,iBAAiB;QACnB,eAAe,IAAI,iBAAiB,CACrC,CAAC;AACJ,CAAC;AAED,MAAM,OAAO,oBAAqB,SAAQ,KAAK;IAI7C,YAAY,aAAqB,EAAE,KAAc;QAC/C,KAAK,CACH,oBAAoB,aAAa,YAAY,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACtG,CAAC;QANY;;;;;WAAsB;QACtB;;;;;WAAe;QAM7B,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;QACnC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;CACF;AAED,MAAM,UAAU,mBAAmB,CAAC,MAAyB;IAI3D,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC;IAEjC,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,MAAM,CAClD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,aAAa,CACjC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC;IAExC,IAAI,kBAAkB,GAAG,MAAM,CAAC;IAChC,KAAK,MAAM,SAAS,IAAI,mBAAmB,EAAE,CAAC;QAC5C,IAAI,CAAC;YACH,kBAAkB,GAAG;gBACnB,GAAI,SAAS,CAAC,OAAO,CAAC,kBAAkB,CAAuB;gBAC/D,aAAa,EAAE,SAAS,CAAC,OAAO;aACjC,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,oBAAoB,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAED,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,yBAAyB;IACvC,OAAO,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,CAAC,CAAC;AAChD,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/migrations/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,6BAA6B,EAAE,MAAM,wCAAwC,CAAC;AACvF,OAAO,EAAE,wCAAwC,EAAE,MAAM,mDAAmD,CAAC;AAC7G,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,+BAA+B,EAAE,MAAM,0CAA0C,CAAC;AAC3F,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,6BAA6B,EAAE,MAAM,wCAAwC,CAAC;AACvF,OAAO,EAAE,+BAA+B,EAAE,MAAM,0CAA0C,CAAC;AAC3F,OAAO,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AACrF,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AAEjF,MAAM,CAAC,MAAM,iBAAiB,GAAsB;IAClD,6BAA6B;IAC7B,wCAAwC;IACxC,wBAAwB;IACxB,+BAA+B;IAC/B,sBAAsB;IACtB,sBAAsB;IACtB,oBAAoB;IACpB,6BAA6B;IAC7B,+BAA+B;IAC/B,4BAA4B;IAC5B,0BAA0B;IAC1B,0BAA0B;CAC3B,CAAC;AAEF,MAAM,UAAU,8BAA8B,CAC5C,iBAA0B;IAE1B,OAAO,CACL,OAAO,iBAAiB,KAAK,QAAQ;QACrC,CAAC,CAAC,iBAAiB;QACnB,eAAe,IAAI,iBAAiB,CACrC,CAAC;AACJ,CAAC;AAED,MAAM,OAAO,oBAAqB,SAAQ,KAAK;IAI7C,YAAY,aAAqB,EAAE,KAAc;QAC/C,KAAK,CACH,oBAAoB,aAAa,YAAY,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACtG,CAAC;QANY;;;;;WAAsB;QACtB;;;;;WAAe;QAM7B,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;QACnC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;CACF;AAED,MAAM,UAAU,mBAAmB,CAAC,MAAyB;IAI3D,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC;IAEjC,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,MAAM,CAClD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,aAAa,CACjC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC;IAExC,IAAI,kBAAkB,GAAG,MAAM,CAAC;IAChC,KAAK,MAAM,SAAS,IAAI,mBAAmB,EAAE,CAAC;QAC5C,IAAI,CAAC;YACH,kBAAkB,GAAG;gBACnB,GAAI,SAAS,CAAC,OAAO,CAAC,kBAAkB,CAAuB;gBAC/D,aAAa,EAAE,SAAS,CAAC,OAAO;aACjC,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,oBAAoB,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAED,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,yBAAyB;IACvC,OAAO,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,CAAC,CAAC;AAChD,CAAC"}
@@ -0,0 +1,34 @@
1
+ interface OldConfig {
2
+ apps?: {
3
+ id: string;
4
+ type: string;
5
+ name: string;
6
+ [key: string]: unknown;
7
+ }[];
8
+ [key: string]: unknown;
9
+ }
10
+ interface NewConfig {
11
+ apps?: {
12
+ id: string;
13
+ type: string;
14
+ name: string;
15
+ adminApp?: {
16
+ enabled: boolean;
17
+ pathPrefix: string;
18
+ allowedRoles?: {
19
+ id: string;
20
+ }[];
21
+ sections?: {
22
+ id: string;
23
+ name: string;
24
+ type: string;
25
+ [key: string]: unknown;
26
+ }[];
27
+ };
28
+ [key: string]: unknown;
29
+ }[];
30
+ [key: string]: unknown;
31
+ }
32
+ export declare const migration016WebAdminConfig: import("./types.js").SchemaMigration<OldConfig, NewConfig>;
33
+ export {};
34
+ //# sourceMappingURL=migration-016-web-admin-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migration-016-web-admin-config.d.ts","sourceRoot":"","sources":["../../src/migrations/migration-016-web-admin-config.ts"],"names":[],"mappings":"AAEA,UAAU,SAAS;IACjB,IAAI,CAAC,EAAE;QACL,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACxB,EAAE,CAAC;IACJ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,UAAU,SAAS;IACjB,IAAI,CAAC,EAAE;QACL,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE;YACT,OAAO,EAAE,OAAO,CAAC;YACjB,UAAU,EAAE,MAAM,CAAC;YACnB,YAAY,CAAC,EAAE;gBAAE,EAAE,EAAE,MAAM,CAAA;aAAE,EAAE,CAAC;YAChC,QAAQ,CAAC,EAAE;gBACT,EAAE,EAAE,MAAM,CAAC;gBACX,IAAI,EAAE,MAAM,CAAC;gBACb,IAAI,EAAE,MAAM,CAAC;gBACb,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;aACxB,EAAE,CAAC;SACL,CAAC;QACF,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACxB,EAAE,CAAC;IACJ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,eAAO,MAAM,0BAA0B,4DAgDrC,CAAC"}
@@ -0,0 +1,43 @@
1
+ import { createSchemaMigration } from './types.js';
2
+ export const migration016WebAdminConfig = createSchemaMigration({
3
+ version: 16,
4
+ name: 'webAdminApp',
5
+ description: 'Convert admin apps to web apps with adminApp and add adminApp to existing web apps',
6
+ migrate: (config) => {
7
+ if (!config.apps) {
8
+ return config;
9
+ }
10
+ const apps = config.apps.map((app) => {
11
+ // Convert admin apps to web apps with adminConfig enabled
12
+ if (app.type === 'admin') {
13
+ const { sections, allowedRoles, ...restApp } = app;
14
+ return {
15
+ ...restApp,
16
+ type: 'web',
17
+ adminApp: {
18
+ enabled: true,
19
+ pathPrefix: '/admin',
20
+ sections: sections ?? [],
21
+ allowedRoles: allowedRoles ?? undefined,
22
+ },
23
+ };
24
+ }
25
+ // Add adminApp to web apps that don't already have it
26
+ if (app.type === 'web' && !('adminApp' in app)) {
27
+ return {
28
+ ...app,
29
+ adminApp: {
30
+ enabled: false,
31
+ pathPrefix: '/admin',
32
+ },
33
+ };
34
+ }
35
+ return app;
36
+ });
37
+ return {
38
+ ...config,
39
+ apps,
40
+ };
41
+ },
42
+ });
43
+ //# sourceMappingURL=migration-016-web-admin-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migration-016-web-admin-config.js","sourceRoot":"","sources":["../../src/migrations/migration-016-web-admin-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAiCnD,MAAM,CAAC,MAAM,0BAA0B,GAAG,qBAAqB,CAG7D;IACA,OAAO,EAAE,EAAE;IACX,IAAI,EAAE,aAAa;IACnB,WAAW,EACT,oFAAoF;IACtF,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE;QAClB,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACjB,OAAO,MAAmB,CAAC;QAC7B,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YACnC,0DAA0D;YAC1D,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBACzB,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,OAAO,EAAE,GAAG,GAAG,CAAC;gBACnD,OAAO;oBACL,GAAG,OAAO;oBACV,IAAI,EAAE,KAAK;oBACX,QAAQ,EAAE;wBACR,OAAO,EAAE,IAAI;wBACb,UAAU,EAAE,QAAQ;wBACpB,QAAQ,EAAE,QAAQ,IAAI,EAAE;wBACxB,YAAY,EAAE,YAAY,IAAI,SAAS;qBACxC;iBACF,CAAC;YACJ,CAAC;YAED,sDAAsD;YACtD,IAAI,GAAG,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,UAAU,IAAI,GAAG,CAAC,EAAE,CAAC;gBAC/C,OAAO;oBACL,GAAG,GAAG;oBACN,QAAQ,EAAE;wBACR,OAAO,EAAE,KAAK;wBACd,UAAU,EAAE,QAAQ;qBACrB;iBACF,CAAC;YACJ,CAAC;YAED,OAAO,GAAG,CAAC;QACb,CAAC,CAAC,CAAC;QAEH,OAAO;YACL,GAAG,MAAM;YACT,IAAI;SACQ,CAAC;IACjB,CAAC;CACF,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"run-migrations.d.ts","sourceRoot":"","sources":["../../../src/plugins/migrations/run-migrations.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAI3E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAIpE,wBAAgB,mBAAmB,CACjC,iBAAiB,EAAE,iBAAiB,EACpC,yBAAyB,EAAE,yBAAyB,GACnD,iBAAiB,CA+BnB"}
1
+ {"version":3,"file":"run-migrations.d.ts","sourceRoot":"","sources":["../../../src/plugins/migrations/run-migrations.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAI3E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAIpE,wBAAgB,mBAAmB,CACjC,iBAAiB,EAAE,iBAAiB,EACpC,yBAAyB,EAAE,yBAAyB,GACnD,iBAAiB,CAsCnB"}
@@ -1,9 +1,8 @@
1
- import { produce, setAutoFreeze } from 'immer';
1
+ import { produce } from 'immer';
2
2
  import { pluginEntityType } from '#src/schema/plugins/entity-types.js';
3
3
  import { pluginConfigSpec } from '../spec/config-spec.js';
4
4
  export function runPluginMigrations(projectDefinition, pluginImplementationStore) {
5
5
  const pluginConfigService = pluginImplementationStore.getPluginSpec(pluginConfigSpec);
6
- setAutoFreeze(false);
7
6
  return produce(projectDefinition, (draft) => {
8
7
  for (const pluginDefinition of draft.plugins ?? []) {
9
8
  const pluginMigrations = pluginConfigService.getMigrations(pluginEntityType.keyFromId(pluginDefinition.id));
@@ -16,7 +15,13 @@ export function runPluginMigrations(projectDefinition, pluginImplementationStore
16
15
  for (const migration of pluginMigrations) {
17
16
  if (migration.version > currentSchemaVersion) {
18
17
  try {
19
- pluginDefinition.config = migration.migrate(pluginDefinition.config, draft);
18
+ const migrationResult = migration.migrate(pluginDefinition.config, draft);
19
+ if (migrationResult.updatedConfig !== undefined) {
20
+ pluginDefinition.config = migrationResult.updatedConfig;
21
+ }
22
+ if (migrationResult.updateProjectDefinition) {
23
+ migrationResult.updateProjectDefinition(draft);
24
+ }
20
25
  }
21
26
  catch (error) {
22
27
  throw new Error(`Error migrating plugin ${pluginDefinition.id} to version ${migration.version}: ${String(error)}`);
@@ -1 +1 @@
1
- {"version":3,"file":"run-migrations.js","sourceRoot":"","sources":["../../../src/plugins/migrations/run-migrations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAI/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAIvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D,MAAM,UAAU,mBAAmB,CACjC,iBAAoC,EACpC,yBAAoD;IAEpD,MAAM,mBAAmB,GACvB,yBAAyB,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAC5D,aAAa,CAAC,KAAK,CAAC,CAAC;IACrB,OAAO,OAAO,CAAC,iBAAiB,EAAE,CAAC,KAAK,EAAE,EAAE;QAC1C,KAAK,MAAM,gBAAgB,IAAI,KAAK,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;YACnD,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,aAAa,CACxD,gBAAgB,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAChD,CAAC;YACF,MAAM,oBAAoB,GAAG,gBAAgB,CAAC,mBAAmB,IAAI,CAAC,CAAC,CAAC;YACxE,IAAI,CAAC,gBAAgB;gBAAE,SAAS;YAChC,MAAM,mBAAmB,GAAG,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACpD,IAAI,CAAC,mBAAmB;gBAAE,SAAS;YAEnC,KAAK,MAAM,SAAS,IAAI,gBAAgB,EAAE,CAAC;gBACzC,IAAI,SAAS,CAAC,OAAO,GAAG,oBAAoB,EAAE,CAAC;oBAC7C,IAAI,CAAC;wBACH,gBAAgB,CAAC,MAAM,GAAG,SAAS,CAAC,OAAO,CACzC,gBAAgB,CAAC,MAAM,EACvB,KAAK,CACN,CAAC;oBACJ,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,MAAM,IAAI,KAAK,CACb,0BAA0B,gBAAgB,CAAC,EAAE,eAAe,SAAS,CAAC,OAAO,KAAK,MAAM,CAAC,KAAK,CAAC,EAAE,CAClG,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;YACD,gBAAgB,CAAC,mBAAmB,GAAG,mBAAmB,CAAC,OAAO,CAAC;QACrE,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"run-migrations.js","sourceRoot":"","sources":["../../../src/plugins/migrations/run-migrations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAIhC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAIvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D,MAAM,UAAU,mBAAmB,CACjC,iBAAoC,EACpC,yBAAoD;IAEpD,MAAM,mBAAmB,GACvB,yBAAyB,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAC5D,OAAO,OAAO,CAAC,iBAAiB,EAAE,CAAC,KAAK,EAAE,EAAE;QAC1C,KAAK,MAAM,gBAAgB,IAAI,KAAK,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;YACnD,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,aAAa,CACxD,gBAAgB,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAChD,CAAC;YACF,MAAM,oBAAoB,GAAG,gBAAgB,CAAC,mBAAmB,IAAI,CAAC,CAAC,CAAC;YACxE,IAAI,CAAC,gBAAgB;gBAAE,SAAS;YAChC,MAAM,mBAAmB,GAAG,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACpD,IAAI,CAAC,mBAAmB;gBAAE,SAAS;YAEnC,KAAK,MAAM,SAAS,IAAI,gBAAgB,EAAE,CAAC;gBACzC,IAAI,SAAS,CAAC,OAAO,GAAG,oBAAoB,EAAE,CAAC;oBAC7C,IAAI,CAAC;wBACH,MAAM,eAAe,GAAG,SAAS,CAAC,OAAO,CACvC,gBAAgB,CAAC,MAAM,EACvB,KAAK,CACN,CAAC;wBAEF,IAAI,eAAe,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;4BAChD,gBAAgB,CAAC,MAAM,GAAG,eAAe,CAAC,aAAa,CAAC;wBAC1D,CAAC;wBAED,IAAI,eAAe,CAAC,uBAAuB,EAAE,CAAC;4BAC5C,eAAe,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;wBACjD,CAAC;oBACH,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,MAAM,IAAI,KAAK,CACb,0BAA0B,gBAAgB,CAAC,EAAE,eAAe,SAAS,CAAC,OAAO,KAAK,MAAM,CAAC,KAAK,CAAC,EAAE,CAClG,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;YACD,gBAAgB,CAAC,mBAAmB,GAAG,mBAAmB,CAAC,OAAO,CAAC;QACrE,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,27 @@
1
+ import type { PluginMetadataWithPaths } from './metadata/types.js';
2
+ import type { PluginConfigMigration } from './spec/config-spec.js';
3
+ import { PluginImplementationStore } from './schema/store.js';
4
+ /**
5
+ * Creates a test plugin metadata object with sensible defaults.
6
+ *
7
+ * @param overrides - Partial plugin metadata to override defaults
8
+ * @returns A complete PluginMetadataWithPaths object for testing
9
+ */
10
+ export declare function createTestPluginMetadata(overrides?: Partial<PluginMetadataWithPaths>): PluginMetadataWithPaths;
11
+ /**
12
+ * Creates a test plugin implementation store with optional migration configurations.
13
+ *
14
+ * @param migrations - Record of plugin keys to their migration arrays
15
+ * @returns A PluginImplementationStore configured for testing
16
+ */
17
+ export declare function createTestPluginImplementationStore(migrations?: Record<string, PluginConfigMigration[]>): PluginImplementationStore;
18
+ /**
19
+ * Creates a simple test migration for use in tests.
20
+ *
21
+ * @param version - The migration version
22
+ * @param name - The migration name
23
+ * @param configTransform - Optional function to transform the config
24
+ * @returns A PluginConfigMigration object
25
+ */
26
+ export declare function createTestMigration(version: number, name: string, configTransform?: (config: unknown) => unknown): PluginConfigMigration;
27
+ //# sourceMappingURL=plugins.test-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugins.test-utils.d.ts","sourceRoot":"","sources":["../../src/plugins/plugins.test-utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAEnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAM9D;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,SAAS,GAAE,OAAO,CAAC,uBAAuB,CAAM,GAC/C,uBAAuB,CAgBzB;AAED;;;;;GAKG;AACH,wBAAgB,mCAAmC,CACjD,UAAU,GAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,EAAE,CAAM,GACvD,yBAAyB,CAa3B;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EACZ,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,GAC7C,qBAAqB,CAQvB"}
@@ -0,0 +1,59 @@
1
+ import { PluginImplementationStore } from './schema/store.js';
2
+ import { createPluginConfigImplementation, pluginConfigSpec, } from './spec/config-spec.js';
3
+ /**
4
+ * Creates a test plugin metadata object with sensible defaults.
5
+ *
6
+ * @param overrides - Partial plugin metadata to override defaults
7
+ * @returns A complete PluginMetadataWithPaths object for testing
8
+ */
9
+ export function createTestPluginMetadata(overrides = {}) {
10
+ const defaultId = overrides.name ?? 'test-plugin';
11
+ return {
12
+ id: defaultId,
13
+ name: defaultId,
14
+ packageName: `@test/${defaultId}`,
15
+ version: '1.0.0',
16
+ displayName: `Test ${defaultId}`,
17
+ description: `A test plugin for ${defaultId}`,
18
+ pluginDirectory: `/test/plugins/${defaultId}`,
19
+ webBuildDirectory: `/test/plugins/${defaultId}/dist`,
20
+ nodeModulePaths: ['/test/node_modules'],
21
+ webModulePaths: [],
22
+ ...overrides,
23
+ };
24
+ }
25
+ /**
26
+ * Creates a test plugin implementation store with optional migration configurations.
27
+ *
28
+ * @param migrations - Record of plugin keys to their migration arrays
29
+ * @returns A PluginImplementationStore configured for testing
30
+ */
31
+ export function createTestPluginImplementationStore(migrations = {}) {
32
+ const pluginImplementationStore = new PluginImplementationStore({});
33
+ const configImplementation = createPluginConfigImplementation();
34
+ // Register migrations for each plugin
35
+ for (const [pluginKey, pluginMigrations] of Object.entries(migrations)) {
36
+ configImplementation.registerMigrations(pluginKey, pluginMigrations);
37
+ }
38
+ pluginImplementationStore.implementations[pluginConfigSpec.name] =
39
+ configImplementation;
40
+ return pluginImplementationStore;
41
+ }
42
+ /**
43
+ * Creates a simple test migration for use in tests.
44
+ *
45
+ * @param version - The migration version
46
+ * @param name - The migration name
47
+ * @param configTransform - Optional function to transform the config
48
+ * @returns A PluginConfigMigration object
49
+ */
50
+ export function createTestMigration(version, name, configTransform) {
51
+ return {
52
+ name,
53
+ version,
54
+ migrate: (config) => ({
55
+ updatedConfig: configTransform ? configTransform(config) : config,
56
+ }),
57
+ };
58
+ }
59
+ //# sourceMappingURL=plugins.test-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugins.test-utils.js","sourceRoot":"","sources":["../../src/plugins/plugins.test-utils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EACL,gCAAgC,EAChC,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAE/B;;;;;GAKG;AACH,MAAM,UAAU,wBAAwB,CACtC,YAA8C,EAAE;IAEhD,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,IAAI,aAAa,CAAC;IAElD,OAAO;QACL,EAAE,EAAE,SAAS;QACb,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,SAAS,SAAS,EAAE;QACjC,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE,QAAQ,SAAS,EAAE;QAChC,WAAW,EAAE,qBAAqB,SAAS,EAAE;QAC7C,eAAe,EAAE,iBAAiB,SAAS,EAAE;QAC7C,iBAAiB,EAAE,iBAAiB,SAAS,OAAO;QACpD,eAAe,EAAE,CAAC,oBAAoB,CAAC;QACvC,cAAc,EAAE,EAAE;QAClB,GAAG,SAAS;KACb,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,mCAAmC,CACjD,aAAsD,EAAE;IAExD,MAAM,yBAAyB,GAAG,IAAI,yBAAyB,CAAC,EAAE,CAAC,CAAC;IACpE,MAAM,oBAAoB,GAAG,gCAAgC,EAAE,CAAC;IAEhE,sCAAsC;IACtC,KAAK,MAAM,CAAC,SAAS,EAAE,gBAAgB,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACvE,oBAAoB,CAAC,kBAAkB,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;IACvE,CAAC;IAED,yBAAyB,CAAC,eAAe,CAAC,gBAAgB,CAAC,IAAI,CAAC;QAC9D,oBAAoB,CAAC;IAEvB,OAAO,yBAAyB,CAAC;AACnC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,mBAAmB,CACjC,OAAe,EACf,IAAY,EACZ,eAA8C;IAE9C,OAAO;QACL,IAAI;QACJ,OAAO;QACP,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YACpB,aAAa,EAAE,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM;SAClE,CAAC;KACH,CAAC;AACJ,CAAC"}
@@ -1,18 +1,20 @@
1
1
  import type { DefinitionSchemaCreator } from '#src/schema/index.js';
2
2
  import type { PluginSpecImplementation } from './types.js';
3
+ export interface PluginMigrationResult {
4
+ updatedConfig?: unknown;
5
+ updateProjectDefinition?: (draft: unknown) => void;
6
+ }
3
7
  export interface PluginConfigMigration {
4
8
  version: number;
5
9
  name: string;
6
10
  /**
7
- * The function to migrate the plugin config.
8
- *
9
- * TODO: We should figure out a better way of mutating the project definition
11
+ * The function to migrate the plugin config and optionally update the project definition.
10
12
  *
11
13
  * @param config - The plugin config to migrate
12
- * @param projectDefinition - The project definition (it is mutable but be careful)
13
- * @returns The migrated plugin config
14
+ * @param projectDefinition - The project definition (read-only)
15
+ * @returns Migration result with optional config and project definition updates
14
16
  */
15
- migrate: (config: unknown, projectDefinition: unknown) => unknown;
17
+ migrate: (config: unknown, projectDefinition: unknown) => PluginMigrationResult;
16
18
  }
17
19
  /**
18
20
  * Spec for registering plugin config schema
@@ -1 +1 @@
1
- {"version":3,"file":"config-spec.d.ts","sourceRoot":"","sources":["../../../src/plugins/spec/config-spec.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAEpE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAI3D,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb;;;;;;;;OAQG;IACH,OAAO,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,iBAAiB,EAAE,OAAO,KAAK,OAAO,CAAC;CACnE;AAED;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,wBAAwB;IAChE,qBAAqB,EAAE,CACrB,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,uBAAuB,KACnC,IAAI,CAAC;IACV,kBAAkB,EAAE,CAClB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,qBAAqB,EAAE,KAChC,IAAI,CAAC;IACV,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,uBAAuB,GAAG,SAAS,CAAC;IACzE,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,qBAAqB,EAAE,GAAG,SAAS,CAAC;IACrE,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CAC/D;AAoBD,wBAAgB,gCAAgC,IAAI,gBAAgB,CA+BnE;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,gBAAgB,kEAE3B,CAAC"}
1
+ {"version":3,"file":"config-spec.d.ts","sourceRoot":"","sources":["../../../src/plugins/spec/config-spec.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAEpE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAI3D,MAAM,WAAW,qBAAqB;IACpC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,uBAAuB,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACpD;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb;;;;;;OAMG;IACH,OAAO,EAAE,CACP,MAAM,EAAE,OAAO,EACf,iBAAiB,EAAE,OAAO,KACvB,qBAAqB,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,wBAAwB;IAChE,qBAAqB,EAAE,CACrB,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,uBAAuB,KACnC,IAAI,CAAC;IACV,kBAAkB,EAAE,CAClB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,qBAAqB,EAAE,KAChC,IAAI,CAAC;IACV,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,uBAAuB,GAAG,SAAS,CAAC;IACzE,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,qBAAqB,EAAE,GAAG,SAAS,CAAC;IACrE,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CAC/D;AAoBD,wBAAgB,gCAAgC,IAAI,gBAAgB,CA+BnE;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,gBAAgB,kEAE3B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"config-spec.js","sourceRoot":"","sources":["../../../src/plugins/spec/config-spec.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAkC9C,SAAS,yBAAyB,CAChC,UAAmC;IAEnC,qEAAqE;IACrE,MAAM,gBAAgB,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC,IAAI,CAC3C,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAChC,CAAC;IACF,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,EAAE,CAAC;QACjD,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QACrD,IAAI,gBAAgB,CAAC,CAAC,CAAC,CAAC,OAAO,KAAK,gBAAgB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;YACpE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IACD,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,gCAAgC;IAC9C,MAAM,OAAO,GAAG,IAAI,GAAG,EAAmC,CAAC;IAC3D,MAAM,aAAa,GAAG,IAAI,GAAG,EAAmC,CAAC;IAEjE,OAAO;QACL,qBAAqB,CAAC,SAAS,EAAE,aAAa;YAC5C,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CAAC,qBAAqB,SAAS,wBAAwB,CAAC,CAAC;YAC1E,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;QACxC,CAAC;QACD,kBAAkB,CAAC,SAAS,EAAE,UAAU;YACtC,IAAI,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;gBACjC,MAAM,IAAI,KAAK,CACb,yBAAyB,SAAS,yBAAyB,CAC5D,CAAC;YACJ,CAAC;YACD,MAAM,gBAAgB,GAAG,yBAAyB,CAAC,UAAU,CAAC,CAAC;YAC/D,aAAa,CAAC,GAAG,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;QACjD,CAAC;QACD,gBAAgB,CAAC,SAAS;YACxB,OAAO,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAChC,CAAC;QACD,aAAa,CAAC,SAAS;YACrB,OAAO,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACtC,CAAC;QACD,uBAAuB,CAAC,SAAS;YAC/B,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAChD,OAAO,UAAU,EAAE,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC;QACtD,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,oBAAoB,EAAE;IACrE,kBAAkB,EAAE,gCAAgC;CACrD,CAAC,CAAC"}
1
+ {"version":3,"file":"config-spec.js","sourceRoot":"","sources":["../../../src/plugins/spec/config-spec.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAwC9C,SAAS,yBAAyB,CAChC,UAAmC;IAEnC,qEAAqE;IACrE,MAAM,gBAAgB,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC,IAAI,CAC3C,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAChC,CAAC;IACF,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,EAAE,CAAC;QACjD,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QACrD,IAAI,gBAAgB,CAAC,CAAC,CAAC,CAAC,OAAO,KAAK,gBAAgB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;YACpE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IACD,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,gCAAgC;IAC9C,MAAM,OAAO,GAAG,IAAI,GAAG,EAAmC,CAAC;IAC3D,MAAM,aAAa,GAAG,IAAI,GAAG,EAAmC,CAAC;IAEjE,OAAO;QACL,qBAAqB,CAAC,SAAS,EAAE,aAAa;YAC5C,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CAAC,qBAAqB,SAAS,wBAAwB,CAAC,CAAC;YAC1E,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;QACxC,CAAC;QACD,kBAAkB,CAAC,SAAS,EAAE,UAAU;YACtC,IAAI,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;gBACjC,MAAM,IAAI,KAAK,CACb,yBAAyB,SAAS,yBAAyB,CAC5D,CAAC;YACJ,CAAC;YACD,MAAM,gBAAgB,GAAG,yBAAyB,CAAC,UAAU,CAAC,CAAC;YAC/D,aAAa,CAAC,GAAG,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;QACjD,CAAC;QACD,gBAAgB,CAAC,SAAS;YACxB,OAAO,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAChC,CAAC;QACD,aAAa,CAAC,SAAS;YACrB,OAAO,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACtC,CAAC;QACD,uBAAuB,CAAC,SAAS;YAC/B,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAChD,OAAO,UAAU,EAAE,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC;QACtD,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,oBAAoB,EAAE;IACrE,kBAAkB,EAAE,gCAAgC;CACrD,CAAC,CAAC"}
@@ -1,6 +1,6 @@
1
- export * from './admin/index.js';
2
1
  export * from './backend/index.js';
3
2
  export * from './base.js';
4
3
  export * from './types.js';
4
+ export * from './web/admin/index.js';
5
5
  export * from './web/index.js';
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/schema/apps/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/schema/apps/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAE3B,cAAc,sBAAsB,CAAC;AAErC,cAAc,gBAAgB,CAAC"}
@@ -1,6 +1,7 @@
1
- export * from './admin/index.js';
2
1
  export * from './backend/index.js';
3
2
  export * from './base.js';
4
3
  export * from './types.js';
4
+ // Re-export admin types from web admin for backward compatibility
5
+ export * from './web/admin/index.js';
5
6
  export * from './web/index.js';
6
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/schema/apps/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/schema/apps/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,kEAAkE;AAClE,cAAc,sBAAsB,CAAC;AAErC,cAAc,gBAAgB,CAAC"}
@@ -1,7 +1,6 @@
1
1
  import { z } from 'zod';
2
- import type { def } from '#src/schema/creator/index.js';
3
- import type { AdminCrudSectionConfig } from './sections/index.js';
4
- export declare const createAdminSectionSchema: (context: import("#src/schema/creator/index.js").DefinitionSchemaParserContext) => z.ZodEffects<z.ZodEffects<z.ZodIntersection<z.ZodObject<{
2
+ import type { def } from '#src/schema/index.js';
3
+ export declare const createWebAdminSectionSchema: (context: import("#src/schema/index.js").DefinitionSchemaParserContext) => z.ZodEffects<z.ZodEffects<z.ZodIntersection<z.ZodObject<{
5
4
  id: z.ZodDefault<z.ZodString>;
6
5
  name: z.ZodString;
7
6
  featureRef: z.ZodEffects<z.ZodString, string, string>;
@@ -831,12 +830,13 @@ export declare const createAdminSectionSchema: (context: import("#src/schema/cre
831
830
  includeIdField?: boolean | undefined;
832
831
  })[] | undefined;
833
832
  }>;
834
- export type AdminSectionConfig = AdminCrudSectionConfig;
835
- export type AdminSectionConfigInput = def.InferInput<typeof createAdminSectionSchema>;
836
- export declare const createAdminAppSchema: (context: import("#src/schema/creator/index.js").DefinitionSchemaParserContext) => z.ZodObject<{
837
- type: z.ZodLiteral<"admin">;
838
- allowedRoles: z.ZodOptional<z.ZodArray<z.ZodEffects<z.ZodString, string, string>, "many">>;
839
- sections: z.ZodOptional<z.ZodArray<z.ZodEffects<z.ZodEffects<z.ZodIntersection<z.ZodObject<{
833
+ export type WebAdminSectionConfig = def.InferOutput<typeof createWebAdminSectionSchema>;
834
+ export type WebAdminSectionConfigInput = def.InferInput<typeof createWebAdminSectionSchema>;
835
+ export declare const createAdminAppSchema: (context: import("#src/schema/index.js").DefinitionSchemaParserContext) => z.ZodEffects<z.ZodOptional<z.ZodObject<{
836
+ enabled: z.ZodBoolean;
837
+ pathPrefix: z.ZodDefault<z.ZodString>;
838
+ allowedRoles: z.ZodEffects<z.ZodOptional<z.ZodArray<z.ZodEffects<z.ZodString, string, string>, "many">>, string[] | undefined, string[] | undefined>;
839
+ sections: z.ZodEffects<z.ZodOptional<z.ZodArray<z.ZodEffects<z.ZodEffects<z.ZodIntersection<z.ZodObject<{
840
840
  id: z.ZodDefault<z.ZodString>;
841
841
  name: z.ZodString;
842
842
  featureRef: z.ZodEffects<z.ZodString, string, string>;
@@ -1665,15 +1665,148 @@ export declare const createAdminAppSchema: (context: import("#src/schema/creator
1665
1665
  };
1666
1666
  includeIdField?: boolean | undefined;
1667
1667
  })[] | undefined;
1668
- }>, "many">>;
1669
- id: z.ZodDefault<z.ZodString>;
1670
- name: z.ZodString;
1671
- packageLocation: z.ZodOptional<z.ZodString>;
1668
+ }>, "many">>, ({
1669
+ type: string;
1670
+ name: string;
1671
+ id: string;
1672
+ featureRef: string;
1673
+ icon?: string | undefined;
1674
+ } & {
1675
+ type: "crud";
1676
+ modelRef: string;
1677
+ form: {
1678
+ fields: {
1679
+ type: string;
1680
+ label: string;
1681
+ }[];
1682
+ };
1683
+ table: {
1684
+ columns: {
1685
+ label: string;
1686
+ display: {
1687
+ type: "foreign";
1688
+ localRelationRef: string;
1689
+ labelExpression: string;
1690
+ valueExpression: string;
1691
+ } | {
1692
+ type: "text";
1693
+ modelFieldRef: string;
1694
+ };
1695
+ }[];
1696
+ };
1697
+ disableCreate?: boolean | undefined;
1698
+ embeddedForms?: ({
1699
+ type: "object";
1700
+ name: string;
1701
+ id: string;
1702
+ modelRef: string;
1703
+ form: {
1704
+ fields: {
1705
+ type: string;
1706
+ label: string;
1707
+ }[];
1708
+ };
1709
+ includeIdField?: boolean | undefined;
1710
+ } | {
1711
+ type: "list";
1712
+ name: string;
1713
+ id: string;
1714
+ modelRef: string;
1715
+ form: {
1716
+ fields: {
1717
+ type: string;
1718
+ label: string;
1719
+ }[];
1720
+ };
1721
+ table: {
1722
+ columns: {
1723
+ label: string;
1724
+ display: {
1725
+ type: "foreign";
1726
+ localRelationRef: string;
1727
+ labelExpression: string;
1728
+ valueExpression: string;
1729
+ } | {
1730
+ type: "text";
1731
+ modelFieldRef: string;
1732
+ };
1733
+ }[];
1734
+ };
1735
+ includeIdField?: boolean | undefined;
1736
+ })[] | undefined;
1737
+ })[] | undefined, ({
1738
+ type: string;
1739
+ name: string;
1740
+ featureRef: string;
1741
+ icon?: string | undefined;
1742
+ id?: string | undefined;
1743
+ } & {
1744
+ type: "crud";
1745
+ modelRef: string;
1746
+ form: {
1747
+ fields: z.objectInputType<{
1748
+ type: z.ZodString;
1749
+ label: z.ZodString;
1750
+ }, z.ZodTypeAny, "passthrough">[];
1751
+ };
1752
+ table: {
1753
+ columns: {
1754
+ label: string;
1755
+ display: {
1756
+ type: "foreign";
1757
+ localRelationRef: string;
1758
+ labelExpression: string;
1759
+ valueExpression: string;
1760
+ } | {
1761
+ type: "text";
1762
+ modelFieldRef: string;
1763
+ };
1764
+ }[];
1765
+ };
1766
+ disableCreate?: boolean | undefined;
1767
+ embeddedForms?: ({
1768
+ type: "object";
1769
+ name: string;
1770
+ id: string;
1771
+ modelRef: string;
1772
+ form: {
1773
+ fields: z.objectInputType<{
1774
+ type: z.ZodString;
1775
+ label: z.ZodString;
1776
+ }, z.ZodTypeAny, "passthrough">[];
1777
+ };
1778
+ includeIdField?: boolean | undefined;
1779
+ } | {
1780
+ type: "list";
1781
+ name: string;
1782
+ id: string;
1783
+ modelRef: string;
1784
+ form: {
1785
+ fields: z.objectInputType<{
1786
+ type: z.ZodString;
1787
+ label: z.ZodString;
1788
+ }, z.ZodTypeAny, "passthrough">[];
1789
+ };
1790
+ table: {
1791
+ columns: {
1792
+ label: string;
1793
+ display: {
1794
+ type: "foreign";
1795
+ localRelationRef: string;
1796
+ labelExpression: string;
1797
+ valueExpression: string;
1798
+ } | {
1799
+ type: "text";
1800
+ modelFieldRef: string;
1801
+ };
1802
+ }[];
1803
+ };
1804
+ includeIdField?: boolean | undefined;
1805
+ })[] | undefined;
1806
+ })[] | undefined>;
1672
1807
  }, "strip", z.ZodTypeAny, {
1673
- type: "admin";
1674
- name: string;
1675
- id: string;
1676
- packageLocation?: string | undefined;
1808
+ enabled: boolean;
1809
+ pathPrefix: string;
1677
1810
  allowedRoles?: string[] | undefined;
1678
1811
  sections?: ({
1679
1812
  type: string;
@@ -1746,10 +1879,8 @@ export declare const createAdminAppSchema: (context: import("#src/schema/creator
1746
1879
  })[] | undefined;
1747
1880
  })[] | undefined;
1748
1881
  }, {
1749
- type: "admin";
1750
- name: string;
1751
- id?: string | undefined;
1752
- packageLocation?: string | undefined;
1882
+ enabled: boolean;
1883
+ pathPrefix?: string | undefined;
1753
1884
  allowedRoles?: string[] | undefined;
1754
1885
  sections?: ({
1755
1886
  type: string;
@@ -1821,13 +1952,9 @@ export declare const createAdminAppSchema: (context: import("#src/schema/creator
1821
1952
  includeIdField?: boolean | undefined;
1822
1953
  })[] | undefined;
1823
1954
  })[] | undefined;
1824
- }>;
1825
- export type AdminAppConfig = def.InferOutput<typeof createAdminAppSchema>;
1826
- export declare const adminAppEntryType: import("../types.js").AppEntryType<{
1827
- type: "admin";
1828
- name: string;
1829
- id: string;
1830
- packageLocation?: string | undefined;
1955
+ }>>, {
1956
+ enabled: boolean;
1957
+ pathPrefix: string;
1831
1958
  allowedRoles?: string[] | undefined;
1832
1959
  sections?: ({
1833
1960
  type: string;
@@ -1899,5 +2026,79 @@ export declare const adminAppEntryType: import("../types.js").AppEntryType<{
1899
2026
  includeIdField?: boolean | undefined;
1900
2027
  })[] | undefined;
1901
2028
  })[] | undefined;
1902
- }>;
1903
- //# sourceMappingURL=app.d.ts.map
2029
+ } | undefined, {
2030
+ enabled: boolean;
2031
+ pathPrefix?: string | undefined;
2032
+ allowedRoles?: string[] | undefined;
2033
+ sections?: ({
2034
+ type: string;
2035
+ name: string;
2036
+ featureRef: string;
2037
+ icon?: string | undefined;
2038
+ id?: string | undefined;
2039
+ } & {
2040
+ type: "crud";
2041
+ modelRef: string;
2042
+ form: {
2043
+ fields: z.objectInputType<{
2044
+ type: z.ZodString;
2045
+ label: z.ZodString;
2046
+ }, z.ZodTypeAny, "passthrough">[];
2047
+ };
2048
+ table: {
2049
+ columns: {
2050
+ label: string;
2051
+ display: {
2052
+ type: "foreign";
2053
+ localRelationRef: string;
2054
+ labelExpression: string;
2055
+ valueExpression: string;
2056
+ } | {
2057
+ type: "text";
2058
+ modelFieldRef: string;
2059
+ };
2060
+ }[];
2061
+ };
2062
+ disableCreate?: boolean | undefined;
2063
+ embeddedForms?: ({
2064
+ type: "object";
2065
+ name: string;
2066
+ id: string;
2067
+ modelRef: string;
2068
+ form: {
2069
+ fields: z.objectInputType<{
2070
+ type: z.ZodString;
2071
+ label: z.ZodString;
2072
+ }, z.ZodTypeAny, "passthrough">[];
2073
+ };
2074
+ includeIdField?: boolean | undefined;
2075
+ } | {
2076
+ type: "list";
2077
+ name: string;
2078
+ id: string;
2079
+ modelRef: string;
2080
+ form: {
2081
+ fields: z.objectInputType<{
2082
+ type: z.ZodString;
2083
+ label: z.ZodString;
2084
+ }, z.ZodTypeAny, "passthrough">[];
2085
+ };
2086
+ table: {
2087
+ columns: {
2088
+ label: string;
2089
+ display: {
2090
+ type: "foreign";
2091
+ localRelationRef: string;
2092
+ labelExpression: string;
2093
+ valueExpression: string;
2094
+ } | {
2095
+ type: "text";
2096
+ modelFieldRef: string;
2097
+ };
2098
+ }[];
2099
+ };
2100
+ includeIdField?: boolean | undefined;
2101
+ })[] | undefined;
2102
+ })[] | undefined;
2103
+ } | undefined>;
2104
+ //# sourceMappingURL=admin.d.ts.map