@carlonicora/nextjs-jsonapi 1.110.0 → 1.111.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 (123) hide show
  1. package/dist/scripts/generate-web-module/__tests__/container.spec.d.ts +2 -0
  2. package/dist/scripts/generate-web-module/__tests__/container.spec.d.ts.map +1 -0
  3. package/dist/scripts/generate-web-module/__tests__/container.spec.js +54 -0
  4. package/dist/scripts/generate-web-module/__tests__/container.spec.js.map +1 -0
  5. package/dist/scripts/generate-web-module/__tests__/data-service.spec.d.ts +2 -0
  6. package/dist/scripts/generate-web-module/__tests__/data-service.spec.d.ts.map +1 -0
  7. package/dist/scripts/generate-web-module/__tests__/data-service.spec.js +19 -0
  8. package/dist/scripts/generate-web-module/__tests__/data-service.spec.js.map +1 -0
  9. package/dist/scripts/generate-web-module/__tests__/editor.spec.d.ts +2 -0
  10. package/dist/scripts/generate-web-module/__tests__/editor.spec.d.ts.map +1 -0
  11. package/dist/scripts/generate-web-module/__tests__/editor.spec.js +35 -0
  12. package/dist/scripts/generate-web-module/__tests__/editor.spec.js.map +1 -0
  13. package/dist/scripts/generate-web-module/__tests__/fixtures.d.ts +4 -0
  14. package/dist/scripts/generate-web-module/__tests__/fixtures.d.ts.map +1 -0
  15. package/dist/scripts/generate-web-module/__tests__/fixtures.js +45 -0
  16. package/dist/scripts/generate-web-module/__tests__/fixtures.js.map +1 -0
  17. package/dist/scripts/generate-web-module/__tests__/model-interface.spec.d.ts +2 -0
  18. package/dist/scripts/generate-web-module/__tests__/model-interface.spec.d.ts.map +1 -0
  19. package/dist/scripts/generate-web-module/__tests__/model-interface.spec.js +74 -0
  20. package/dist/scripts/generate-web-module/__tests__/model-interface.spec.js.map +1 -0
  21. package/dist/scripts/generate-web-module/__tests__/plumbing.spec.d.ts +2 -0
  22. package/dist/scripts/generate-web-module/__tests__/plumbing.spec.d.ts.map +1 -0
  23. package/dist/scripts/generate-web-module/__tests__/plumbing.spec.js +21 -0
  24. package/dist/scripts/generate-web-module/__tests__/plumbing.spec.js.map +1 -0
  25. package/dist/scripts/generate-web-module/__tests__/selector.spec.d.ts +2 -0
  26. package/dist/scripts/generate-web-module/__tests__/selector.spec.d.ts.map +1 -0
  27. package/dist/scripts/generate-web-module/__tests__/selector.spec.js +25 -0
  28. package/dist/scripts/generate-web-module/__tests__/selector.spec.js.map +1 -0
  29. package/dist/scripts/generate-web-module/__tests__/table-module-list.spec.d.ts +2 -0
  30. package/dist/scripts/generate-web-module/__tests__/table-module-list.spec.d.ts.map +1 -0
  31. package/dist/scripts/generate-web-module/__tests__/table-module-list.spec.js +55 -0
  32. package/dist/scripts/generate-web-module/__tests__/table-module-list.spec.js.map +1 -0
  33. package/dist/scripts/generate-web-module/generator.d.ts.map +1 -1
  34. package/dist/scripts/generate-web-module/generator.js +14 -11
  35. package/dist/scripts/generate-web-module/generator.js.map +1 -1
  36. package/dist/scripts/generate-web-module/templates/components/container.template.d.ts +5 -1
  37. package/dist/scripts/generate-web-module/templates/components/container.template.d.ts.map +1 -1
  38. package/dist/scripts/generate-web-module/templates/components/container.template.js +43 -63
  39. package/dist/scripts/generate-web-module/templates/components/container.template.js.map +1 -1
  40. package/dist/scripts/generate-web-module/templates/components/content.template.d.ts +7 -4
  41. package/dist/scripts/generate-web-module/templates/components/content.template.d.ts.map +1 -1
  42. package/dist/scripts/generate-web-module/templates/components/content.template.js +103 -14
  43. package/dist/scripts/generate-web-module/templates/components/content.template.js.map +1 -1
  44. package/dist/scripts/generate-web-module/templates/components/editor.template.d.ts +1 -1
  45. package/dist/scripts/generate-web-module/templates/components/editor.template.js +139 -150
  46. package/dist/scripts/generate-web-module/templates/components/editor.template.js.map +1 -1
  47. package/dist/scripts/generate-web-module/templates/components/index.d.ts +0 -1
  48. package/dist/scripts/generate-web-module/templates/components/index.d.ts.map +1 -1
  49. package/dist/scripts/generate-web-module/templates/components/index.js +1 -3
  50. package/dist/scripts/generate-web-module/templates/components/index.js.map +1 -1
  51. package/dist/scripts/generate-web-module/templates/components/list-container.template.js +2 -2
  52. package/dist/scripts/generate-web-module/templates/components/list.template.d.ts.map +1 -1
  53. package/dist/scripts/generate-web-module/templates/components/list.template.js +6 -1
  54. package/dist/scripts/generate-web-module/templates/components/list.template.js.map +1 -1
  55. package/dist/scripts/generate-web-module/templates/components/selector.template.d.ts.map +1 -1
  56. package/dist/scripts/generate-web-module/templates/components/selector.template.js +48 -52
  57. package/dist/scripts/generate-web-module/templates/components/selector.template.js.map +1 -1
  58. package/dist/scripts/generate-web-module/templates/data/interface.template.d.ts.map +1 -1
  59. package/dist/scripts/generate-web-module/templates/data/interface.template.js +38 -11
  60. package/dist/scripts/generate-web-module/templates/data/interface.template.js.map +1 -1
  61. package/dist/scripts/generate-web-module/templates/data/model.template.d.ts.map +1 -1
  62. package/dist/scripts/generate-web-module/templates/data/model.template.js +83 -26
  63. package/dist/scripts/generate-web-module/templates/data/model.template.js.map +1 -1
  64. package/dist/scripts/generate-web-module/templates/data/service.template.d.ts.map +1 -1
  65. package/dist/scripts/generate-web-module/templates/data/service.template.js +21 -1
  66. package/dist/scripts/generate-web-module/templates/data/service.template.js.map +1 -1
  67. package/dist/scripts/generate-web-module/templates/index.d.ts +1 -1
  68. package/dist/scripts/generate-web-module/templates/index.d.ts.map +1 -1
  69. package/dist/scripts/generate-web-module/templates/index.js +1 -2
  70. package/dist/scripts/generate-web-module/templates/index.js.map +1 -1
  71. package/dist/scripts/generate-web-module/templates/module.template.d.ts.map +1 -1
  72. package/dist/scripts/generate-web-module/templates/module.template.js +11 -3
  73. package/dist/scripts/generate-web-module/templates/module.template.js.map +1 -1
  74. package/dist/scripts/generate-web-module/templates/table-hook.template.js +31 -1
  75. package/dist/scripts/generate-web-module/templates/table-hook.template.js.map +1 -1
  76. package/dist/scripts/generate-web-module/transformers/import-resolver.d.ts +0 -1
  77. package/dist/scripts/generate-web-module/transformers/import-resolver.d.ts.map +1 -1
  78. package/dist/scripts/generate-web-module/transformers/import-resolver.js +0 -1
  79. package/dist/scripts/generate-web-module/transformers/import-resolver.js.map +1 -1
  80. package/dist/scripts/generate-web-module/transformers/relationship-key.d.ts +5 -0
  81. package/dist/scripts/generate-web-module/transformers/relationship-key.d.ts.map +1 -0
  82. package/dist/scripts/generate-web-module/transformers/relationship-key.js +21 -0
  83. package/dist/scripts/generate-web-module/transformers/relationship-key.js.map +1 -0
  84. package/dist/scripts/generate-web-module/transformers/relationship-resolver.d.ts.map +1 -1
  85. package/dist/scripts/generate-web-module/transformers/relationship-resolver.js +2 -0
  86. package/dist/scripts/generate-web-module/transformers/relationship-resolver.js.map +1 -1
  87. package/dist/scripts/generate-web-module/types/json-schema.interface.d.ts +21 -0
  88. package/dist/scripts/generate-web-module/types/json-schema.interface.d.ts.map +1 -1
  89. package/dist/scripts/generate-web-module/types/template-data.interface.d.ts +17 -0
  90. package/dist/scripts/generate-web-module/types/template-data.interface.d.ts.map +1 -1
  91. package/package.json +1 -1
  92. package/scripts/generate-web-module/__tests__/container.spec.ts +58 -0
  93. package/scripts/generate-web-module/__tests__/data-service.spec.ts +18 -0
  94. package/scripts/generate-web-module/__tests__/editor.spec.ts +36 -0
  95. package/scripts/generate-web-module/__tests__/fixtures.ts +43 -0
  96. package/scripts/generate-web-module/__tests__/model-interface.spec.ts +77 -0
  97. package/scripts/generate-web-module/__tests__/plumbing.spec.ts +21 -0
  98. package/scripts/generate-web-module/__tests__/selector.spec.ts +24 -0
  99. package/scripts/generate-web-module/__tests__/table-module-list.spec.ts +59 -0
  100. package/scripts/generate-web-module/generator.ts +14 -13
  101. package/scripts/generate-web-module/templates/components/container.template.ts +51 -66
  102. package/scripts/generate-web-module/templates/components/content.template.ts +107 -15
  103. package/scripts/generate-web-module/templates/components/editor.template.ts +140 -152
  104. package/scripts/generate-web-module/templates/components/index.ts +0 -1
  105. package/scripts/generate-web-module/templates/components/list-container.template.ts +2 -2
  106. package/scripts/generate-web-module/templates/components/list.template.ts +6 -1
  107. package/scripts/generate-web-module/templates/components/selector.template.ts +48 -52
  108. package/scripts/generate-web-module/templates/data/interface.template.ts +44 -12
  109. package/scripts/generate-web-module/templates/data/model.template.ts +88 -28
  110. package/scripts/generate-web-module/templates/data/service.template.ts +23 -1
  111. package/scripts/generate-web-module/templates/index.ts +0 -1
  112. package/scripts/generate-web-module/templates/module.template.ts +13 -3
  113. package/scripts/generate-web-module/templates/table-hook.template.ts +31 -2
  114. package/scripts/generate-web-module/transformers/import-resolver.ts +0 -2
  115. package/scripts/generate-web-module/transformers/relationship-key.ts +18 -0
  116. package/scripts/generate-web-module/transformers/relationship-resolver.ts +2 -0
  117. package/scripts/generate-web-module/types/json-schema.interface.ts +9 -0
  118. package/scripts/generate-web-module/types/template-data.interface.ts +7 -0
  119. package/dist/scripts/generate-web-module/templates/components/details.template.d.ts +0 -14
  120. package/dist/scripts/generate-web-module/templates/components/details.template.d.ts.map +0 -1
  121. package/dist/scripts/generate-web-module/templates/components/details.template.js +0 -112
  122. package/dist/scripts/generate-web-module/templates/components/details.template.js.map +0 -1
  123. package/scripts/generate-web-module/templates/components/details.template.ts +0 -116
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=container.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"container.spec.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-web-module/__tests__/container.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const vitest_1 = require("vitest");
4
+ const fixtures_1 = require("./fixtures");
5
+ const container_template_1 = require("../templates/components/container.template");
6
+ const list_container_template_1 = require("../templates/components/list-container.template");
7
+ const content_template_1 = require("../templates/components/content.template");
8
+ (0, vitest_1.describe)("container template", () => {
9
+ (0, vitest_1.it)("uses RoundPageContainer with tabs and id, not details prop, and renders Content", () => {
10
+ const out = (0, container_template_1.generateContainerTemplate)((0, fixtures_1.makeFrontendData)());
11
+ (0, vitest_1.expect)(out).toContain("tabs: Tab[]");
12
+ (0, vitest_1.expect)(out).toContain("id={widget.id}");
13
+ (0, vitest_1.expect)(out).not.toContain("details={");
14
+ (0, vitest_1.expect)(out).not.toContain("WidgetDetails");
15
+ (0, vitest_1.expect)(out).toContain("<WidgetContent widget={widget} />");
16
+ });
17
+ (0, vitest_1.it)("emits an Activity tab by default and no Tasks tab", () => {
18
+ const out = (0, container_template_1.generateContainerTemplate)((0, fixtures_1.makeFrontendData)());
19
+ (0, vitest_1.expect)(out).toContain("<ActivityFeed module={Modules.Widget} entityId={widget.id} />");
20
+ (0, vitest_1.expect)(out).not.toContain("TaskProvider");
21
+ });
22
+ (0, vitest_1.it)("omits the Activity tab when containerTabs.activity is false", () => {
23
+ const out = (0, container_template_1.generateContainerTemplate)((0, fixtures_1.makeFrontendData)({ containerTabs: { activity: false, relations: [] } }));
24
+ (0, vitest_1.expect)(out).not.toContain("ActivityFeed");
25
+ });
26
+ (0, vitest_1.it)("emits a relation tab when containerTabs.relations has an entry", () => {
27
+ const out = (0, container_template_1.generateContainerTemplate)((0, fixtures_1.makeFrontendData)({
28
+ containerTabs: { activity: true, relations: [{ module: "Quote", listProp: "widget", directory: "sales" }] },
29
+ }));
30
+ (0, vitest_1.expect)(out).toContain('import QuoteList from "@/features/sales/quote/components/lists/QuoteList"');
31
+ (0, vitest_1.expect)(out).toContain("key: Modules.Quote");
32
+ (0, vitest_1.expect)(out).toContain("<QuoteList widget={widget} />");
33
+ });
34
+ (0, vitest_1.it)("gates default export on hasPermissionToModule", () => {
35
+ const out = (0, container_template_1.generateContainerTemplate)((0, fixtures_1.makeFrontendData)());
36
+ (0, vitest_1.expect)(out).toContain("hasPermissionToModule({ module: Modules.Widget, action: Action.Delete, data: widget })");
37
+ });
38
+ });
39
+ (0, vitest_1.describe)("list-container template", () => {
40
+ (0, vitest_1.it)("always renders fullWidth", () => {
41
+ const out = (0, list_container_template_1.generateListContainerTemplate)((0, fixtures_1.makeFrontendData)());
42
+ (0, vitest_1.expect)(out).toContain("<RoundPageContainer module={Modules.Widget} fullWidth>");
43
+ (0, vitest_1.expect)(out).toContain("<WidgetList fullWidth />");
44
+ });
45
+ });
46
+ (0, vitest_1.describe)("content template", () => {
47
+ (0, vitest_1.it)("is always generated (returns a string) and renders AttributeElement", () => {
48
+ const out = (0, content_template_1.generateContentTemplate)((0, fixtures_1.makeFrontendData)());
49
+ (0, vitest_1.expect)(typeof out).toBe("string");
50
+ (0, vitest_1.expect)(out).toContain("export function WidgetContent");
51
+ (0, vitest_1.expect)(out).toContain("AttributeElement");
52
+ });
53
+ });
54
+ //# sourceMappingURL=container.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"container.spec.js","sourceRoot":"","sources":["../../../../scripts/generate-web-module/__tests__/container.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data-service.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-service.spec.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-web-module/__tests__/data-service.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const vitest_1 = require("vitest");
4
+ const fixtures_1 = require("./fixtures");
5
+ const service_template_1 = require("../templates/data/service.template");
6
+ (0, vitest_1.describe)("frontend data service template", () => {
7
+ (0, vitest_1.it)("applies inclusions inside findOne", () => {
8
+ const out = (0, service_template_1.generateServiceTemplate)((0, fixtures_1.makeFrontendData)());
9
+ const findOne = out.split("static async findOne")[1].split("static async")[0];
10
+ (0, vitest_1.expect)(findOne).toContain("limitToFields");
11
+ (0, vitest_1.expect)(findOne).toContain("limitToType");
12
+ });
13
+ (0, vitest_1.it)("emits a patch method", () => {
14
+ const out = (0, service_template_1.generateServiceTemplate)((0, fixtures_1.makeFrontendData)());
15
+ (0, vitest_1.expect)(out).toContain("static async patch(params: { id: string } & Partial<Omit<WidgetInput, \"id\">>)");
16
+ (0, vitest_1.expect)(out).toContain("method: HttpMethod.PATCH");
17
+ });
18
+ });
19
+ //# sourceMappingURL=data-service.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-service.spec.js","sourceRoot":"","sources":["../../../../scripts/generate-web-module/__tests__/data-service.spec.ts"],"names":[],"mappings":";;AAAA,mCAA8C;AAC9C,yCAA8C;AAC9C,yEAA6E;AAE7E,IAAA,iBAAQ,EAAC,gCAAgC,EAAE,GAAG,EAAE;IAC9C,IAAA,WAAE,EAAC,mCAAmC,EAAE,GAAG,EAAE;QAC3C,MAAM,GAAG,GAAG,IAAA,0CAAuB,EAAC,IAAA,2BAAgB,GAAE,CAAC,CAAC;QACxD,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9E,IAAA,eAAM,EAAC,OAAO,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QAC3C,IAAA,eAAM,EAAC,OAAO,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,IAAA,WAAE,EAAC,sBAAsB,EAAE,GAAG,EAAE;QAC9B,MAAM,GAAG,GAAG,IAAA,0CAAuB,EAAC,IAAA,2BAAgB,GAAE,CAAC,CAAC;QACxD,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,iFAAiF,CAAC,CAAC;QACzG,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,0BAA0B,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=editor.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"editor.spec.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-web-module/__tests__/editor.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const vitest_1 = require("vitest");
4
+ const fixtures_1 = require("./fixtures");
5
+ const editor_template_1 = require("../templates/components/editor.template");
6
+ (0, vitest_1.describe)("editor template — EditorSheet", () => {
7
+ (0, vitest_1.it)("uses EditorSheet and not the legacy Dialog stack", () => {
8
+ const out = (0, editor_template_1.generateEditorTemplate)((0, fixtures_1.makeFrontendData)());
9
+ (0, vitest_1.expect)(out).toContain("EditorSheet");
10
+ (0, vitest_1.expect)(out).not.toContain("CommonEditorButtons");
11
+ (0, vitest_1.expect)(out).not.toContain("CommonEditorDiscardDialog");
12
+ (0, vitest_1.expect)(out).not.toContain("useEditorDialog");
13
+ (0, vitest_1.expect)(out).not.toMatch(/DialogContent/);
14
+ });
15
+ (0, vitest_1.it)("gates the default export on hasPermissionToModule", () => {
16
+ const out = (0, editor_template_1.generateEditorTemplate)((0, fixtures_1.makeFrontendData)());
17
+ (0, vitest_1.expect)(out).toContain("useCurrentUserContext");
18
+ (0, vitest_1.expect)(out).toContain("hasPermissionToModule({ module: Modules.Widget, action, data: props.widget })");
19
+ });
20
+ (0, vitest_1.it)("wraps formSchema in useMemo and defaults in useCallback", () => {
21
+ const out = (0, editor_template_1.generateEditorTemplate)((0, fixtures_1.makeFrontendData)());
22
+ (0, vitest_1.expect)(out).toContain("const formSchema = useMemo(");
23
+ (0, vitest_1.expect)(out).toContain("const getDefaultValues = useCallback(");
24
+ });
25
+ (0, vitest_1.it)("passes EditorSheet lifecycle props and onSubmit returns the saved entity", () => {
26
+ const out = (0, editor_template_1.generateEditorTemplate)((0, fixtures_1.makeFrontendData)());
27
+ (0, vitest_1.expect)(out).toContain("onRevalidate={revalidatePaths}");
28
+ (0, vitest_1.expect)(out).toContain("onReset={getDefaultValues}");
29
+ (0, vitest_1.expect)(out).toContain("module={Modules.Widget}");
30
+ // onSubmit returns the service result (no manual setOpen/errorToast)
31
+ (0, vitest_1.expect)(out).not.toContain("setOpen(false)");
32
+ (0, vitest_1.expect)(out).not.toContain("errorToast(");
33
+ });
34
+ });
35
+ //# sourceMappingURL=editor.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"editor.spec.js","sourceRoot":"","sources":["../../../../scripts/generate-web-module/__tests__/editor.spec.ts"],"names":[],"mappings":";;AAAA,mCAA8C;AAC9C,yCAA8C;AAC9C,6EAAiF;AAEjF,IAAA,iBAAQ,EAAC,+BAA+B,EAAE,GAAG,EAAE;IAC7C,IAAA,WAAE,EAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,GAAG,GAAG,IAAA,wCAAsB,EAAC,IAAA,2BAAgB,GAAE,CAAC,CAAC;QACvD,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QACrC,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QACjD,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,2BAA2B,CAAC,CAAC;QACvD,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;QAC7C,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,IAAA,WAAE,EAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,MAAM,GAAG,GAAG,IAAA,wCAAsB,EAAC,IAAA,2BAAgB,GAAE,CAAC,CAAC;QACvD,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC;QAC/C,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,+EAA+E,CAAC,CAAC;IACzG,CAAC,CAAC,CAAC;IAEH,IAAA,WAAE,EAAC,yDAAyD,EAAE,GAAG,EAAE;QACjE,MAAM,GAAG,GAAG,IAAA,wCAAsB,EAAC,IAAA,2BAAgB,GAAE,CAAC,CAAC;QACvD,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,6BAA6B,CAAC,CAAC;QACrD,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,uCAAuC,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,IAAA,WAAE,EAAC,0EAA0E,EAAE,GAAG,EAAE;QAClF,MAAM,GAAG,GAAG,IAAA,wCAAsB,EAAC,IAAA,2BAAgB,GAAE,CAAC,CAAC;QACvD,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,gCAAgC,CAAC,CAAC;QACxD,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,4BAA4B,CAAC,CAAC;QACpD,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,yBAAyB,CAAC,CAAC;QACjD,qEAAqE;QACrE,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QAC5C,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { FrontendRelationship, FrontendTemplateData } from "../types/template-data.interface";
2
+ export declare function makeRelationship(o?: Partial<FrontendRelationship>): FrontendRelationship;
3
+ export declare function makeFrontendData(o?: Partial<FrontendTemplateData>): FrontendTemplateData;
4
+ //# sourceMappingURL=fixtures.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-web-module/__tests__/fixtures.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAE9F,wBAAgB,gBAAgB,CAAC,CAAC,GAAE,OAAO,CAAC,oBAAoB,CAAM,GAAG,oBAAoB,CAa5F;AAED,wBAAgB,gBAAgB,CAAC,CAAC,GAAE,OAAO,CAAC,oBAAoB,CAAM,GAAG,oBAAoB,CAyB5F"}
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.makeRelationship = makeRelationship;
4
+ exports.makeFrontendData = makeFrontendData;
5
+ function makeRelationship(o = {}) {
6
+ return {
7
+ name: "Account", variant: undefined, alias: undefined, directory: "crm",
8
+ single: true, nullable: false, isFoundation: false,
9
+ formFieldId: "account", formFieldIdPlural: "accounts", payloadFieldId: "accountId",
10
+ selectorComponent: "AccountSelector", zodSchema: "entityObjectSchema",
11
+ importPath: "@/features/crm/account/components/forms/AccountSelector",
12
+ interfaceImportPath: "@/features/crm/account/data/AccountInterface",
13
+ serviceImportPath: "@/features/crm/account/data/AccountService",
14
+ interfaceName: "AccountInterface", modelKebab: "account",
15
+ fields: undefined, targetHasName: true, dtoKey: "", showInTable: false,
16
+ ...o,
17
+ };
18
+ }
19
+ function makeFrontendData(o = {}) {
20
+ return {
21
+ names: {
22
+ pascalCase: "Widget", camelCase: "widget", kebabCase: "widget",
23
+ pluralPascal: "Widgets", pluralCamel: "widgets", pluralKebab: "widgets",
24
+ titleCase: "Widget", pluralTitleCase: "Widgets",
25
+ },
26
+ moduleId: "00000000-0000-4000-a000-000000000001",
27
+ endpoint: "widgets", targetDir: "features/demo", importTargetDir: "demo",
28
+ extendsContent: false,
29
+ fields: [
30
+ { name: "name", type: "string", tsType: "string", zodSchema: "z.string()", formComponent: "FormInput", nullable: false, isContentField: false },
31
+ { name: "due_date", type: "date", tsType: "Date", zodSchema: "z.date().optional()", formComponent: "DatePicker", nullable: true, isContentField: false },
32
+ ],
33
+ relationships: [],
34
+ i18nKeys: { moduleName: "widget", fields: {}, relationships: {}, type: { singular: "Widget", plural: "Widgets", icuPlural: "" } },
35
+ imports: { models: [], selectors: [], library: [] },
36
+ tableFieldNames: [],
37
+ relationshipServiceMethods: [],
38
+ featureId: undefined,
39
+ displayProp: "name",
40
+ containerTabs: { activity: true, relations: [] },
41
+ relatedInclusions: [],
42
+ ...o,
43
+ };
44
+ }
45
+ //# sourceMappingURL=fixtures.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fixtures.js","sourceRoot":"","sources":["../../../../scripts/generate-web-module/__tests__/fixtures.ts"],"names":[],"mappings":";;AAEA,4CAaC;AAED,4CAyBC;AAxCD,SAAgB,gBAAgB,CAAC,IAAmC,EAAE;IACpE,OAAO;QACL,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK;QACvE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK;QAClD,WAAW,EAAE,SAAS,EAAE,iBAAiB,EAAE,UAAU,EAAE,cAAc,EAAE,WAAW;QAClF,iBAAiB,EAAE,iBAAiB,EAAE,SAAS,EAAE,oBAAoB;QACrE,UAAU,EAAE,yDAAyD;QACrE,mBAAmB,EAAE,8CAA8C;QACnE,iBAAiB,EAAE,4CAA4C;QAC/D,aAAa,EAAE,kBAAkB,EAAE,UAAU,EAAE,SAAS;QACxD,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,KAAK;QACtE,GAAG,CAAC;KACL,CAAC;AACJ,CAAC;AAED,SAAgB,gBAAgB,CAAC,IAAmC,EAAE;IACpE,OAAO;QACL,KAAK,EAAE;YACL,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ;YAC9D,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS;YACvE,SAAS,EAAE,QAAQ,EAAE,eAAe,EAAE,SAAS;SAChD;QACD,QAAQ,EAAE,sCAAsC;QAChD,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM;QACxE,cAAc,EAAE,KAAK;QACrB,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE;YAC/I,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,qBAAqB,EAAE,aAAa,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE;SACzJ;QACD,aAAa,EAAE,EAAE;QACjB,QAAQ,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE;QACjI,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QACnD,eAAe,EAAE,EAAE;QACnB,0BAA0B,EAAE,EAAE;QAC9B,SAAS,EAAE,SAAS;QACpB,WAAW,EAAE,MAAM;QACnB,aAAa,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE;QAChD,iBAAiB,EAAE,EAAE;QACrB,GAAG,CAAC;KACL,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=model-interface.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model-interface.spec.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-web-module/__tests__/model-interface.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const vitest_1 = require("vitest");
4
+ const fixtures_1 = require("./fixtures");
5
+ const model_template_1 = require("../templates/data/model.template");
6
+ const interface_template_1 = require("../templates/data/interface.template");
7
+ (0, vitest_1.describe)("model template — dates", () => {
8
+ (0, vitest_1.it)("imports formatLocalDate and uses it for date fields in createJsonApi", () => {
9
+ const out = (0, model_template_1.generateModelTemplate)((0, fixtures_1.makeFrontendData)());
10
+ (0, vitest_1.expect)(out).toContain("formatLocalDate");
11
+ (0, vitest_1.expect)(out).toContain("response.data.attributes.due_date = formatLocalDate(data.due_date)");
12
+ });
13
+ });
14
+ (0, vitest_1.describe)("model template — relationship wire keys", () => {
15
+ (0, vitest_1.it)("uses dtoKey verbatim for rehydrate and createJsonApi", () => {
16
+ const out = (0, model_template_1.generateModelTemplate)((0, fixtures_1.makeFrontendData)({
17
+ relationships: [(0, fixtures_1.makeRelationship)({ name: "PipelineStage", single: true, dtoKey: "pipelinestage", interfaceName: "PipelineStageInterface", modelKebab: "pipeline-stage", selectorComponent: "PipelineStageSelector", interfaceImportPath: "@/features/crm/pipeline-stage/data/PipelineStageInterface" })],
18
+ }));
19
+ (0, vitest_1.expect)(out).toContain('"pipelinestage"');
20
+ (0, vitest_1.expect)(out).toContain("response.data.relationships.pipelinestage");
21
+ });
22
+ (0, vitest_1.it)("emits per-item meta array for many-with-edge-fields", () => {
23
+ const out = (0, model_template_1.generateModelTemplate)((0, fixtures_1.makeFrontendData)({
24
+ relationships: [(0, fixtures_1.makeRelationship)({
25
+ name: "Item", single: false, dtoKey: "estimateitems", alias: "EstimateItem",
26
+ interfaceName: "ItemInterface", modelKebab: "item", selectorComponent: "ItemMultiSelector",
27
+ interfaceImportPath: "@/features/plm/item/data/ItemInterface",
28
+ fields: [{ name: "quantity", type: "number", tsType: "number", zodSchema: "z.number()", formComponent: "FormInputNumber", nullable: false, isContentField: false }],
29
+ })],
30
+ }));
31
+ (0, vitest_1.expect)(out).toContain("data.estimateItemMeta?.find");
32
+ (0, vitest_1.expect)(out).toContain("response.data.relationships.estimateitems");
33
+ });
34
+ (0, vitest_1.it)("model references and imports the named RelationshipMeta interface", () => {
35
+ const out = (0, model_template_1.generateModelTemplate)((0, fixtures_1.makeFrontendData)({
36
+ relationships: [(0, fixtures_1.makeRelationship)({
37
+ name: "Item", single: false, dtoKey: "estimateitems", alias: "EstimateItem",
38
+ interfaceName: "ItemInterface", modelKebab: "item", selectorComponent: "ItemMultiSelector",
39
+ interfaceImportPath: "@/features/plm/item/data/ItemInterface",
40
+ fields: [{ name: "quantity", type: "number", tsType: "number", zodSchema: "z.number()", formComponent: "FormInputNumber", nullable: false, isContentField: false }],
41
+ })],
42
+ }));
43
+ (0, vitest_1.expect)(out).toContain("EstimateItemRelationshipMeta");
44
+ (0, vitest_1.expect)(out).toContain("ItemInterface & EstimateItemRelationshipMeta");
45
+ // imported from the module's own interface file (Widget)
46
+ (0, vitest_1.expect)(out).toMatch(/import \{[^}]*EstimateItemRelationshipMeta[^}]*\} from "@\/features\/demo\/widget\/data\/WidgetInterface"/);
47
+ });
48
+ });
49
+ (0, vitest_1.describe)("interface template", () => {
50
+ (0, vitest_1.it)("emits a named RelationshipMeta interface and a meta array in Input", () => {
51
+ const out = (0, interface_template_1.generateInterfaceTemplate)((0, fixtures_1.makeFrontendData)({
52
+ relationships: [(0, fixtures_1.makeRelationship)({
53
+ name: "Item", single: false, dtoKey: "estimateitems", alias: "EstimateItem",
54
+ interfaceName: "ItemInterface", modelKebab: "item",
55
+ interfaceImportPath: "@/features/plm/item/data/ItemInterface",
56
+ fields: [{ name: "quantity", type: "number", tsType: "number", zodSchema: "z.number()", formComponent: "FormInputNumber", nullable: false, isContentField: false }],
57
+ })],
58
+ }));
59
+ (0, vitest_1.expect)(out).toContain("export interface EstimateItemRelationshipMeta");
60
+ (0, vitest_1.expect)(out).toContain("estimateItemMeta?:");
61
+ });
62
+ (0, vitest_1.it)("keeps readOnly fields in the interface but out of Input", () => {
63
+ const out = (0, interface_template_1.generateInterfaceTemplate)((0, fixtures_1.makeFrontendData)({
64
+ fields: [
65
+ { name: "name", type: "string", tsType: "string", zodSchema: "z.string()", formComponent: "FormInput", nullable: false, isContentField: false },
66
+ { name: "effective_value", type: "number", tsType: "number", zodSchema: "z.number()", formComponent: "FormInputNumber", nullable: true, isContentField: false, readOnly: true },
67
+ ],
68
+ }));
69
+ (0, vitest_1.expect)(out).toContain("get effective_value()");
70
+ const inputBlock = out.split("Input = {")[1].split("};")[0];
71
+ (0, vitest_1.expect)(inputBlock).not.toContain("effective_value");
72
+ });
73
+ });
74
+ //# sourceMappingURL=model-interface.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model-interface.spec.js","sourceRoot":"","sources":["../../../../scripts/generate-web-module/__tests__/model-interface.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=plumbing.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plumbing.spec.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-web-module/__tests__/plumbing.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const vitest_1 = require("vitest");
4
+ const fixtures_1 = require("./fixtures");
5
+ const relationship_key_1 = require("../transformers/relationship-key");
6
+ (0, vitest_1.describe)("frontend plumbing", () => {
7
+ (0, vitest_1.it)("defaults displayProp to name and activity tab on", () => {
8
+ const d = (0, fixtures_1.makeFrontendData)();
9
+ (0, vitest_1.expect)(d.displayProp).toBe("name");
10
+ (0, vitest_1.expect)(d.containerTabs.activity).toBe(true);
11
+ });
12
+ (0, vitest_1.it)("resolves wire key from explicit dtoKey verbatim", () => {
13
+ (0, vitest_1.expect)((0, relationship_key_1.resolveRelationshipKey)((0, fixtures_1.makeRelationship)({ dtoKey: "estimateitems" }))).toBe("estimateitems");
14
+ });
15
+ (0, vitest_1.it)("derives wire key identically to the backend when dtoKey absent", () => {
16
+ (0, vitest_1.expect)((0, relationship_key_1.resolveRelationshipKey)((0, fixtures_1.makeRelationship)({ name: "Account", single: true }))).toBe("account");
17
+ (0, vitest_1.expect)((0, relationship_key_1.resolveRelationshipKey)((0, fixtures_1.makeRelationship)({ name: "Person", single: false }))).toBe("persons");
18
+ (0, vitest_1.expect)((0, relationship_key_1.resolveRelationshipKey)((0, fixtures_1.makeRelationship)({ alias: "EstimateItem", single: false }))).toBe("estimate-items");
19
+ });
20
+ });
21
+ //# sourceMappingURL=plumbing.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plumbing.spec.js","sourceRoot":"","sources":["../../../../scripts/generate-web-module/__tests__/plumbing.spec.ts"],"names":[],"mappings":";;AAAA,mCAA8C;AAC9C,yCAAgE;AAChE,uEAA0E;AAE1E,IAAA,iBAAQ,EAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,IAAA,WAAE,EAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,CAAC,GAAG,IAAA,2BAAgB,GAAE,CAAC;QAC7B,IAAA,eAAM,EAAC,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnC,IAAA,eAAM,EAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,IAAA,WAAE,EAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,IAAA,eAAM,EAAC,IAAA,yCAAsB,EAAC,IAAA,2BAAgB,EAAC,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACtG,CAAC,CAAC,CAAC;IAEH,IAAA,WAAE,EAAC,gEAAgE,EAAE,GAAG,EAAE;QACxE,IAAA,eAAM,EAAC,IAAA,yCAAsB,EAAC,IAAA,2BAAgB,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACpG,IAAA,eAAM,EAAC,IAAA,yCAAsB,EAAC,IAAA,2BAAgB,EAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACpG,IAAA,eAAM,EAAC,IAAA,yCAAsB,EAAC,IAAA,2BAAgB,EAAC,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACpH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=selector.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selector.spec.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-web-module/__tests__/selector.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const vitest_1 = require("vitest");
4
+ const fixtures_1 = require("./fixtures");
5
+ const selector_template_1 = require("../templates/components/selector.template");
6
+ (0, vitest_1.describe)("selector template — combobox style", () => {
7
+ (0, vitest_1.it)("uses Button combobox trigger + Command primitives + Loader2", () => {
8
+ const out = (0, selector_template_1.generateSelectorTemplate)((0, fixtures_1.makeFrontendData)());
9
+ (0, vitest_1.expect)(out).toContain('role="combobox"');
10
+ (0, vitest_1.expect)(out).toContain("ChevronsUpDown");
11
+ (0, vitest_1.expect)(out).toContain("CommandInput");
12
+ (0, vitest_1.expect)(out).toContain("CommandEmpty");
13
+ (0, vitest_1.expect)(out).toContain("CommandGroup");
14
+ (0, vitest_1.expect)(out).toContain("Loader2");
15
+ (0, vitest_1.expect)(out).toContain("w-(--radix-popover-trigger-width) p-0");
16
+ });
17
+ (0, vitest_1.it)("drops the legacy bespoke styling", () => {
18
+ const out = (0, selector_template_1.generateSelectorTemplate)((0, fixtures_1.makeFrontendData)());
19
+ (0, vitest_1.expect)(out).not.toContain("CircleX");
20
+ (0, vitest_1.expect)(out).not.toContain("RefreshCwIcon");
21
+ (0, vitest_1.expect)(out).not.toContain("SearchIcon");
22
+ (0, vitest_1.expect)(out).not.toContain("bg-input/20");
23
+ });
24
+ });
25
+ //# sourceMappingURL=selector.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selector.spec.js","sourceRoot":"","sources":["../../../../scripts/generate-web-module/__tests__/selector.spec.ts"],"names":[],"mappings":";;AAAA,mCAA8C;AAC9C,yCAA8C;AAC9C,iFAAqF;AAErF,IAAA,iBAAQ,EAAC,oCAAoC,EAAE,GAAG,EAAE;IAClD,IAAA,WAAE,EAAC,6DAA6D,EAAE,GAAG,EAAE;QACrE,MAAM,GAAG,GAAG,IAAA,4CAAwB,EAAC,IAAA,2BAAgB,GAAE,CAAC,CAAC;QACzD,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;QACzC,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QACxC,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QACtC,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QACtC,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QACtC,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACjC,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,uCAAuC,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,IAAA,WAAE,EAAC,kCAAkC,EAAE,GAAG,EAAE;QAC1C,MAAM,GAAG,GAAG,IAAA,4CAAwB,EAAC,IAAA,2BAAgB,GAAE,CAAC,CAAC;QACzD,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACrC,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QAC3C,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QACxC,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=table-module-list.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"table-module-list.spec.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-web-module/__tests__/table-module-list.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const vitest_1 = require("vitest");
4
+ const fixtures_1 = require("./fixtures");
5
+ const table_hook_template_1 = require("../templates/table-hook.template");
6
+ const module_template_1 = require("../templates/module.template");
7
+ const list_template_1 = require("../templates/components/list.template");
8
+ (0, vitest_1.describe)("table-hook template", () => {
9
+ (0, vitest_1.it)("emits cellDate for date fields", () => {
10
+ const out = (0, table_hook_template_1.generateTableHookTemplate)((0, fixtures_1.makeFrontendData)());
11
+ (0, vitest_1.expect)(out).toContain("[WidgetFields.due_date]");
12
+ (0, vitest_1.expect)(out).toContain("cellDate({");
13
+ });
14
+ (0, vitest_1.it)("emits a relationship column when showInTable", () => {
15
+ const out = (0, table_hook_template_1.generateTableHookTemplate)((0, fixtures_1.makeFrontendData)({
16
+ relationships: [(0, fixtures_1.makeRelationship)({ name: "Account", single: true, showInTable: true })],
17
+ }));
18
+ (0, vitest_1.expect)(out).toContain("widget.account?.name");
19
+ });
20
+ (0, vitest_1.it)("uses variant for single-relationship column key when no alias", () => {
21
+ const out = (0, table_hook_template_1.generateTableHookTemplate)((0, fixtures_1.makeFrontendData)({
22
+ relationships: [(0, fixtures_1.makeRelationship)({ name: "User", variant: "Author", single: true, showInTable: true })],
23
+ }));
24
+ (0, vitest_1.expect)(out).toContain("WidgetFields.author");
25
+ (0, vitest_1.expect)(out).not.toContain("WidgetFields.user]");
26
+ });
27
+ (0, vitest_1.it)("emits a many relationship column joined by name", () => {
28
+ const out = (0, table_hook_template_1.generateTableHookTemplate)((0, fixtures_1.makeFrontendData)({
29
+ relationships: [(0, fixtures_1.makeRelationship)({ name: "Tag", single: false, showInTable: true })],
30
+ }));
31
+ (0, vitest_1.expect)(out).toContain("WidgetFields.tags");
32
+ (0, vitest_1.expect)(out).toContain('.map((r) => r.name).join(", ")');
33
+ });
34
+ });
35
+ (0, vitest_1.describe)("module template", () => {
36
+ (0, vitest_1.it)("emits feature when featureId set", () => {
37
+ const out = (0, module_template_1.generateModuleTemplate)((0, fixtures_1.makeFrontendData)({ featureId: "Crm" }));
38
+ (0, vitest_1.expect)(out).toContain('import { FeatureIds } from "@/enums/feature.ids"');
39
+ (0, vitest_1.expect)(out).toContain("feature: FeatureIds.Crm");
40
+ });
41
+ (0, vitest_1.it)("emits cross-module inclusions", () => {
42
+ const out = (0, module_template_1.generateModuleTemplate)((0, fixtures_1.makeFrontendData)({
43
+ relatedInclusions: [{ endpoint: "accounts", fields: ["name", "image"] }],
44
+ }));
45
+ (0, vitest_1.expect)(out).toContain('createJsonApiInclusion("accounts", [`name`, `image`])');
46
+ });
47
+ });
48
+ (0, vitest_1.describe)("list template", () => {
49
+ (0, vitest_1.it)("forwards fullWidth to ContentListTable", () => {
50
+ const out = (0, list_template_1.generateListTemplate)((0, fixtures_1.makeFrontendData)());
51
+ (0, vitest_1.expect)(out).toContain("fullWidth");
52
+ (0, vitest_1.expect)(out).toContain("fullWidth={fullWidth}");
53
+ });
54
+ });
55
+ //# sourceMappingURL=table-module-list.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"table-module-list.spec.js","sourceRoot":"","sources":["../../../../scripts/generate-web-module/__tests__/table-module-list.spec.ts"],"names":[],"mappings":";;AAAA,mCAA8C;AAC9C,yCAAgE;AAChE,0EAA6E;AAC7E,kEAAsE;AACtE,yEAA6E;AAE7E,IAAA,iBAAQ,EAAC,qBAAqB,EAAE,GAAG,EAAE;IACnC,IAAA,WAAE,EAAC,gCAAgC,EAAE,GAAG,EAAE;QACxC,MAAM,GAAG,GAAG,IAAA,+CAAyB,EAAC,IAAA,2BAAgB,GAAE,CAAC,CAAC;QAC1D,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,yBAAyB,CAAC,CAAC;QACjD,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,IAAA,WAAE,EAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,MAAM,GAAG,GAAG,IAAA,+CAAyB,EAAC,IAAA,2BAAgB,EAAC;YACrD,aAAa,EAAE,CAAC,IAAA,2BAAgB,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;SACxF,CAAC,CAAC,CAAC;QACJ,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,IAAA,WAAE,EAAC,+DAA+D,EAAE,GAAG,EAAE;QACvE,MAAM,GAAG,GAAG,IAAA,+CAAyB,EAAC,IAAA,2BAAgB,EAAC;YACrD,aAAa,EAAE,CAAC,IAAA,2BAAgB,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;SACxG,CAAC,CAAC,CAAC;QACJ,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QAC7C,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,IAAA,WAAE,EAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,GAAG,GAAG,IAAA,+CAAyB,EAAC,IAAA,2BAAgB,EAAC;YACrD,aAAa,EAAE,CAAC,IAAA,2BAAgB,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;SACrF,CAAC,CAAC,CAAC;QACJ,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;QAC3C,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,gCAAgC,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAA,iBAAQ,EAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,IAAA,WAAE,EAAC,kCAAkC,EAAE,GAAG,EAAE;QAC1C,MAAM,GAAG,GAAG,IAAA,wCAAsB,EAAC,IAAA,2BAAgB,EAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAC3E,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,kDAAkD,CAAC,CAAC;QAC1E,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,yBAAyB,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,IAAA,WAAE,EAAC,+BAA+B,EAAE,GAAG,EAAE;QACvC,MAAM,GAAG,GAAG,IAAA,wCAAsB,EAAC,IAAA,2BAAgB,EAAC;YAClD,iBAAiB,EAAE,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;SACzE,CAAC,CAAC,CAAC;QACJ,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,uDAAuD,CAAC,CAAC;IACjF,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAA,iBAAQ,EAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,IAAA,WAAE,EAAC,wCAAwC,EAAE,GAAG,EAAE;QAChD,MAAM,GAAG,GAAG,IAAA,oCAAoB,EAAC,IAAA,2BAAgB,GAAE,CAAC,CAAC;QACrD,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QACnC,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../../scripts/generate-web-module/generator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA+BH,OAAO,EAAuC,wBAAwB,EAAwB,MAAM,SAAS,CAAC;AAI9G;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,wBAAwB,GAAG,OAAO,CAAC,OAAO,CAAC,CAoG3F;AAwSD,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../../scripts/generate-web-module/generator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA8BH,OAAO,EAAuC,wBAAwB,EAAwB,MAAM,SAAS,CAAC;AAI9G;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,wBAAwB,GAAG,OAAO,CAAC,OAAO,CAAC,CAoG3F;AA0SD,eAAe,iBAAiB,CAAC"}
@@ -176,6 +176,10 @@ function buildTemplateData(schema, targetHasNameMap) {
176
176
  const extendsContent = (0, parent_detector_1.detectExtendsContent)(schema.fields, schema.extendsContent);
177
177
  // Map fields
178
178
  const allFields = (0, field_mapper_1.mapFields)(schema.fields, names.camelCase);
179
+ allFields.forEach((f) => {
180
+ const src = schema.fields.find((sf) => sf.name === f.name);
181
+ f.readOnly = src?.readOnly === true;
182
+ });
179
183
  // Get inherited fields to filter out for forms (Content fields are handled specially)
180
184
  const inheritedFields = extendsContent ? ["name", "tldr", "abstract", "content"] : [];
181
185
  const fields = (0, field_mapper_1.filterInheritedFields)(allFields, inheritedFields);
@@ -218,6 +222,13 @@ function buildTemplateData(schema, targetHasNameMap) {
218
222
  imports,
219
223
  tableFieldNames,
220
224
  relationshipServiceMethods,
225
+ featureId: schema.featureId,
226
+ displayProp: schema.displayProp ?? (allFields.some((f) => f.name === "name") ? "name" : "id"),
227
+ containerTabs: {
228
+ activity: schema.containerTabs?.activity !== false,
229
+ relations: schema.containerTabs?.relations ?? [],
230
+ },
231
+ relatedInclusions: schema.inclusions?.related ?? [],
221
232
  };
222
233
  }
223
234
  /**
@@ -304,20 +315,12 @@ function generateAllFiles(data, schema) {
304
315
  content: (0, templates_1.generateListTemplate)(data),
305
316
  type: "component",
306
317
  });
318
+ // Content component — always emitted (Details tab body)
307
319
  files.push({
308
- path: paths.details,
309
- content: (0, templates_1.generateDetailsTemplate)(data),
320
+ path: paths.content,
321
+ content: (0, templates_1.generateContentTemplate)(data),
310
322
  type: "component",
311
323
  });
312
- // Content component only for Content-extending modules
313
- const contentTemplate = (0, templates_1.generateContentTemplate)(data);
314
- if (contentTemplate) {
315
- files.push({
316
- path: paths.content,
317
- content: contentTemplate,
318
- type: "component",
319
- });
320
- }
321
324
  files.push({
322
325
  path: paths.container,
323
326
  content: (0, templates_1.generateContainerTemplate)(data),
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../scripts/generate-web-module/generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../scripts/generate-web-module/generator.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,11 @@
1
1
  /**
2
2
  * Container Template
3
3
  *
4
- * Generates {Module}Container.tsx component for displaying item detail page.
4
+ * Generates {Module}Container.tsx component for the item detail page.
5
+ *
6
+ * Emits a RoundPageContainer driven by a `tabs` array: a default "Details" tab
7
+ * rendering {Module}Content, one tab per configured relation list, and an
8
+ * optional "Activity" tab. The default export gates on delete permission.
5
9
  */
6
10
  import { FrontendTemplateData } from "../../types/template-data.interface";
7
11
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"container.template.d.ts","sourceRoot":"","sources":["../../../../../scripts/generate-web-module/templates/components/container.template.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAE3E;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,CAU5E"}
1
+ {"version":3,"file":"container.template.d.ts","sourceRoot":"","sources":["../../../../../scripts/generate-web-module/templates/components/container.template.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAE3E;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,CA+D5E"}