@simitgroup/simpleapp-generator 1.6.6-j-alpha → 1.6.6-k-alpha

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 (157) hide show
  1. package/ReleaseNote.md +3 -2
  2. package/dist/buildinschemas/docnoformat.js +6 -6
  3. package/dist/buildinschemas/docnoformat.js.map +1 -1
  4. package/dist/buildinschemas/documentevent.js +1 -1
  5. package/dist/buildinschemas/documentevent.js.map +1 -1
  6. package/dist/buildinschemas/organization.js +1 -1
  7. package/dist/buildinschemas/organization.js.map +1 -1
  8. package/dist/buildinschemas/tenant.js +1 -1
  9. package/dist/buildinschemas/tenant.js.map +1 -1
  10. package/dist/buildinschemas/user.js +2 -2
  11. package/dist/buildinschemas/user.js.map +1 -1
  12. package/dist/framework.d.ts.map +1 -1
  13. package/dist/framework.js +2 -0
  14. package/dist/framework.js.map +1 -1
  15. package/dist/generate.d.ts.map +1 -1
  16. package/dist/generate.js +21 -20
  17. package/dist/generate.js.map +1 -1
  18. package/dist/processors/jrxmlbuilder.js +3 -3
  19. package/dist/processors/jrxmlbuilder.js.map +1 -1
  20. package/dist/processors/jsonschemabuilder.d.ts.map +1 -1
  21. package/dist/processors/jsonschemabuilder.js +17 -10
  22. package/dist/processors/jsonschemabuilder.js.map +1 -1
  23. package/dist/type.d.ts +1 -1
  24. package/dist/type.d.ts.map +1 -1
  25. package/package.json +2 -3
  26. package/reset-install.sh +3 -0
  27. package/src/buildinschemas/docnoformat.ts +6 -6
  28. package/src/buildinschemas/documentevent.ts +1 -1
  29. package/src/buildinschemas/organization.ts +1 -1
  30. package/src/buildinschemas/tenant.ts +1 -1
  31. package/src/buildinschemas/user.ts +2 -2
  32. package/src/framework.ts +2 -1
  33. package/src/generate.ts +22 -20
  34. package/src/processors/jrxmlbuilder.ts +3 -3
  35. package/src/processors/jsonschemabuilder.ts +27 -14
  36. package/src/type.ts +1 -1
  37. package/templates/basic/nuxt/simpleapp.generate.client.ts.eta +3 -3
  38. package/templates/nest/.gitignore.eta +4 -5
  39. package/templates/nest/src/{app.module.ts.eta → app.module.ts._eta} +2 -2
  40. package/templates/nest/src/{main.ts.eta → main.ts._eta} +2 -2
  41. package/templates/nest/src/printapi/printapi.service.ts.eta +7 -8
  42. package/templates/nest/src/simpleapp/.gitignore.eta +1 -1
  43. package/templates/nest/src/simpleapp/generate/commons/audittrail.service.ts.eta +2 -2
  44. package/templates/nest/src/simpleapp/generate/commons/customkeycloa.guard.ts.eta +14 -12
  45. package/templates/nest/src/simpleapp/generate/commons/customkeycloak.guard.ts.eta +36 -42
  46. package/templates/nest/src/simpleapp/generate/commons/docnogenerator.service.ts.eta +6 -3
  47. package/templates/nest/src/simpleapp/generate/commons/encryption.static.ts.eta +56 -61
  48. package/templates/nest/src/simpleapp/generate/commons/middlewares/tenant.middleware.ts.eta +65 -88
  49. package/templates/nest/src/simpleapp/generate/commons/robotuser.service.ts.eta +10 -9
  50. package/templates/nest/src/simpleapp/generate/commons/roles/roles.guard.ts.eta +10 -3
  51. package/templates/nest/src/simpleapp/generate/commons/runwebhook.service.ts.eta +41 -39
  52. package/templates/nest/src/simpleapp/generate/commons/user.context.ts.eta +439 -293
  53. package/templates/nest/src/simpleapp/generate/processors/autoinc.processor.ts.eta +20 -5
  54. package/templates/nest/src/simpleapp/generate/processors/simpleapp.processor.ts.eta +437 -40
  55. package/templates/nest/src/simpleapp/profile/{profile.controller.ts.eta → profile.controller.ts._eta} +2 -2
  56. package/templates/nest/src/simpleapp/profile/{profile.service.ts.eta → profile.service.ts._eta} +2 -2
  57. package/templates/nest/src/simpleapp/simpleapp.module.ts.eta +15 -4
  58. package/templates/nuxt/components/button/ButtonMultiple.vue._eta +1 -1
  59. package/templates/nuxt/components/calendar/{CalendarByResource.vue.eta → CalendarByResource.vue._eta} +2 -2
  60. package/templates/nuxt/components/calendar/{CalendarInput.vue.eta → CalendarInput.vue._eta} +2 -2
  61. package/templates/nuxt/components/calendar/{CalendarSmall.vue.eta → CalendarSmall.vue._eta} +6 -0
  62. package/templates/nuxt/components/debug/{DebugDocumentData.vue.eta → DebugDocumentData.vue._eta} +2 -2
  63. package/templates/nuxt/components/form/{FormDocnoformat.vue.eta → FormDocnoformat.vue._eta} +2 -1
  64. package/templates/nuxt/components/form/user/{FormUserPermission.vue.eta → FormUserPermission.vue._eta} +6 -0
  65. package/templates/nuxt/components/header/{HeaderBreadcrumb.vue.eta → HeaderBreadcrumb.vue._eta} +2 -2
  66. package/templates/nuxt/components/header/button/{HeaderButtonProfile.vue.eta → HeaderButtonProfile.vue._eta} +2 -2
  67. package/templates/nuxt/components/header/button/task/{HeaderButtonTaskList.vue.eta → HeaderButtonTaskList.vue._eta} +2 -2
  68. package/templates/nuxt/components/image/ImageAvatar.vue.eta +29 -30
  69. package/templates/nuxt/components/image/ImageOrganization.vue.eta +15 -9
  70. package/templates/nuxt/components/image/ImageToBase64Uploader.vue.eta +28 -18
  71. package/templates/nuxt/components/list/{ListDocumentTable.vue.eta → ListDocumentTable.vue._eta} +2 -2
  72. package/templates/nuxt/components/list/{ListItem.vue.eta → ListItem.vue._eta} +2 -2
  73. package/templates/nuxt/components/list/{ListMessages.vue.eta → ListMessages.vue._eta} +6 -0
  74. package/templates/nuxt/components/list/{ListView.vue.eta → ListView.vue._eta} +2 -2
  75. package/templates/nuxt/components/overlay/{OverlayPanelWithToolBar.vue.eta → OverlayPanelWithToolBar.vue._eta} +2 -2
  76. package/templates/nuxt/components/overlay/{OverlaySideBarCrud.vue.eta → OverlaySideBarCrud.vue._eta} +2 -2
  77. package/templates/nuxt/components/overlay/{OverlayViewer.vue.eta → OverlayViewer.vue._eta} +2 -2
  78. package/templates/nuxt/components/page/{PageDocList.vue.eta → PageDocList.vue._eta} +2 -2
  79. package/templates/nuxt/components/renderer/{RendererDateTime.vue.eta → RendererDateTime.vue._eta} +2 -2
  80. package/templates/nuxt/components/renderer/{RendererDocHistories.vue.eta → RendererDocHistories.vue._eta} +6 -0
  81. package/templates/nuxt/components/renderer/{RendererForeignKey.vue.eta → RendererForeignKey.vue._eta} +2 -2
  82. package/templates/nuxt/components/renderer/{RendererLink.vue.eta → RendererLink.vue._eta} +2 -2
  83. package/templates/nuxt/components/renderer/{RendererTime.vue.eta → RendererTime.vue._eta} +2 -2
  84. package/templates/nuxt/components/renderer/{RendererViewer.vue.eta → RendererViewer.vue._eta} +2 -2
  85. package/templates/nuxt/components/select/{SelectTemplate.vue.eta → SelectTemplate.vue._eta} +2 -2
  86. package/templates/nuxt/components/session/{SessionBlock.vue.eta → SessionBlock.vue._eta} +2 -2
  87. package/templates/nuxt/components/simpleApp/SimpleAppAutocomplete.vue.eta +55 -55
  88. package/templates/nuxt/components/simpleApp/SimpleAppCalendarInput.vue.eta +13 -11
  89. package/templates/nuxt/components/simpleApp/SimpleAppChildrenList.vue.eta +6 -3
  90. package/templates/nuxt/components/simpleApp/SimpleAppDocumentNo.vue.eta +32 -27
  91. package/templates/nuxt/components/simpleApp/SimpleAppFieldContainer.vue.eta +19 -28
  92. package/templates/nuxt/components/simpleApp/SimpleAppInput.vue.eta +114 -105
  93. package/templates/nuxt/components/simpleApp/SimpleAppInputTable.vue.eta +3 -3
  94. package/templates/nuxt/components/simpleApp/SimpleAppJsonSchemaForm.vue.eta +1 -1
  95. package/templates/nuxt/components/simpleApp/SimpleAppUserPicker.vue.eta +10 -12
  96. package/templates/nuxt/components/table/{TableDocuments.vue.eta → TableDocuments.vue._eta} +2 -2
  97. package/templates/nuxt/components/user/{UserButtonPermissionInfo.vue.eta → UserButtonPermissionInfo.vue._eta} +2 -2
  98. package/templates/nuxt/components/user/{UserInvitation.vue.eta → UserInvitation.vue._eta} +2 -2
  99. package/templates/nuxt/components/user/{UserProfileListItem.vue.eta → UserProfileListItem.vue._eta} +2 -2
  100. package/templates/nuxt/components/user/{UserTenantPicker.vue.eta → UserTenantPicker.vue._eta} +2 -2
  101. package/templates/nuxt/composables/getOpenApi.generate.ts.eta +11 -3
  102. package/templates/nuxt/composables/getUserStore.generate.ts.eta +1 -1
  103. package/templates/nuxt/composables/graphquery.generate.ts.eta +1 -1
  104. package/templates/nuxt/composables/recently.generate.ts.eta +0 -1
  105. package/templates/nuxt/composables/stringHelper.generate.ts.eta +5 -2
  106. package/templates/nuxt/pages/[xorg]/docnoformat/[id].vue.eta +0 -1
  107. package/templates/nuxt/pages/[xorg]/{docnoformat.vue.eta → docnoformat.vue._eta} +1 -0
  108. package/templates/nuxt/pages/[xorg]/organization/[id].vue.eta +13 -9
  109. package/templates/nuxt/pages/[xorg]/organization/new.vue.eta +10 -12
  110. package/templates/nuxt/pages/[xorg]/{user.vue.eta → user.vue._eta} +2 -2
  111. package/templates/nuxt/pages/{profile.vue.eta → profile.vue._eta} +2 -2
  112. package/templates/nuxt/plugins/10.simpleapp-event.ts.eta +6 -0
  113. package/templates/nuxt/plugins/20.simpleapp-userstore.ts.eta +89 -12
  114. package/templates/nuxt/plugins/40.pusher.ts.eta +6 -9
  115. package/templates/nuxt/providers/my-provider.ts.eta +1 -1
  116. package/templates/nuxt/server/api/profile/[...].ts.eta +4 -3
  117. package/templates/nuxt/simpleapp/generate/clients/SimpleAppClient.ts.eta +8 -4
  118. package/templates/nuxt/types/schema.ts.eta +1 -1
  119. package/templates/nuxt/types/user.ts.eta +6 -1
  120. package/templates/project/jsonschemas/appintegration.json_eta +227 -0
  121. package/templates/project/sharelibs/validate.ts.eta +1 -1
  122. package/dist/buildinschemas/message.d.ts +0 -3
  123. package/dist/buildinschemas/message.d.ts.map +0 -1
  124. package/dist/buildinschemas/message.js +0 -34
  125. package/dist/buildinschemas/message.js.map +0 -1
  126. package/dist/buildinschemas/webhookhistory.d.ts +0 -3
  127. package/dist/buildinschemas/webhookhistory.d.ts.map +0 -1
  128. package/dist/buildinschemas/webhookhistory.js +0 -44
  129. package/dist/buildinschemas/webhookhistory.js.map +0 -1
  130. package/dist/createproject.js +0 -138
  131. package/dist/createproject.js.map +0 -1
  132. package/dist/generate-allow-changebackend.js +0 -305
  133. package/dist/generate-allow-changebackend.js.map +0 -1
  134. package/dist/index2.js +0 -118
  135. package/dist/index2.js.map +0 -1
  136. package/dist/installdependency.js +0 -20
  137. package/dist/installdependency.js.map +0 -1
  138. package/dist/installnest.js +0 -2
  139. package/dist/installnest.js.map +0 -1
  140. package/dist/installnuxt.js +0 -2
  141. package/dist/installnuxt.js.map +0 -1
  142. package/dist/processors/groupsbuilder.js +0 -2
  143. package/dist/processors/groupsbuilder.js.map +0 -1
  144. package/dist/schematype/baseschema.js +0 -25
  145. package/dist/schematype/baseschema.js.map +0 -1
  146. package/dist/schematype/default.js +0 -2
  147. package/dist/schematype/default.js.map +0 -1
  148. package/dist/schematype/index.js +0 -12
  149. package/dist/schematype/index.js.map +0 -1
  150. package/dist/schematype/primarymasterdata.js +0 -38
  151. package/dist/schematype/primarymasterdata.js.map +0 -1
  152. package/dist/schematype/simple.js +0 -24
  153. package/dist/schematype/simple.js.map +0 -1
  154. package/dist/schematype/simplemasterdata.js +0 -31
  155. package/dist/schematype/simplemasterdata.js.map +0 -1
  156. package/dist/schematype/transaction.js +0 -74
  157. package/dist/schematype/transaction.js.map +0 -1
@@ -1,31 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.simplemasterdata = void 0;
4
- const type_1 = require("../type");
5
- exports.simplemasterdata = {
6
- type: "object",
7
- "x-simpleapp-config": {
8
- isolationType: type_1.IsolationType.org,
9
- pageType: "crud",
10
- schemaType: type_1.SupportedSchemaType.simplemasterdata,
11
- documentType: '',
12
- documentName: '',
13
- },
14
- properties: {
15
- _id: { type: 'string' },
16
- tenantId: { type: 'integer', default: 1, description: "system field" },
17
- orgId: { type: 'integer', default: 1, description: "system field" },
18
- branchId: { type: 'integer', default: 1, description: "system field" },
19
- created: { type: 'string', description: "system field" },
20
- updated: { type: 'string', description: "system field" },
21
- createdby: { type: 'string', description: "system field" },
22
- updatedby: { type: 'string', description: "system field" },
23
- },
24
- definitions: {
25
- foreignkey: {
26
- type: "object",
27
- properties: { _id: { "type": "string" }, label: { "type": "string" }, code: { "type": "string" } }
28
- }
29
- },
30
- };
31
- //# sourceMappingURL=simplemasterdata.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"simplemasterdata.js","sourceRoot":"","sources":["../../src/schematype/simplemasterdata.ts"],"names":[],"mappings":";;;AAAA,kCAAoE;AACvD,QAAA,gBAAgB,GAAc;IACvC,IAAI,EAAC,QAAQ;IACb,oBAAoB,EAAC;QACnB,aAAa,EAAE,oBAAa,CAAC,GAAG;QAChC,QAAQ,EAAC,MAAM;QACf,UAAU,EAAE,0BAAmB,CAAC,gBAAgB;QAChD,YAAY,EAAC,EAAE;QACf,YAAY,EAAC,EAAE;KAChB;IACD,UAAU,EAAC;QACP,GAAG,EAAC,EAAC,IAAI,EAAC,QAAQ,EAAC;QACnB,QAAQ,EAAC,EAAC,IAAI,EAAC,SAAS,EAAC,OAAO,EAAC,CAAC,EAAC,WAAW,EAAC,cAAc,EAAC;QAC9D,KAAK,EAAC,EAAC,IAAI,EAAC,SAAS,EAAC,OAAO,EAAC,CAAC,EAAC,WAAW,EAAC,cAAc,EAAC;QAC3D,QAAQ,EAAC,EAAC,IAAI,EAAC,SAAS,EAAC,OAAO,EAAC,CAAC,EAAC,WAAW,EAAC,cAAc,EAAC;QAC9D,OAAO,EAAC,EAAC,IAAI,EAAC,QAAQ,EAAC,WAAW,EAAC,cAAc,EAAC;QAClD,OAAO,EAAC,EAAC,IAAI,EAAC,QAAQ,EAAC,WAAW,EAAC,cAAc,EAAC;QAClD,SAAS,EAAC,EAAC,IAAI,EAAC,QAAQ,EAAC,WAAW,EAAC,cAAc,EAAC;QACpD,SAAS,EAAC,EAAC,IAAI,EAAC,QAAQ,EAAC,WAAW,EAAC,cAAc,EAAC;KACtD;IACD,WAAW,EAAC;QACX,UAAU,EAAE;YACV,IAAI,EAAC,QAAQ;YACb,UAAU,EAAE,EAAC,GAAG,EAAE,EAAC,MAAM,EAAE,QAAQ,EAAC,EAAC,KAAK,EAAE,EAAC,MAAM,EAAE,QAAQ,EAAC,EAAC,IAAI,EAAE,EAAC,MAAM,EAAE,QAAQ,EAAC,EAAC;SACzF;KACF;CACF,CAAA"}
@@ -1,74 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.transaction = void 0;
4
- const type_1 = require("../type");
5
- exports.transaction = {
6
- type: "object",
7
- "x-simpleapp-config": {
8
- isolationType: type_1.IsolationType.org,
9
- requiredRoles: [],
10
- documentType: '',
11
- documentName: '',
12
- pageType: "crud",
13
- uniqueKey: "documentNo",
14
- documentTitle: "documentTitle",
15
- generateDocumentNumber: true,
16
- documentDate: "documentDate",
17
- allStatus: [
18
- { "status": "D", statusName: "Draft", "readOnly": true, "actions": ["confirm", "void"] },
19
- { "status": "CO", statusName: "Confirmed", "readOnly": true, "actions": ["revert", "void"] },
20
- { "status": "V", statusName: "Void", "readOnly": true, "actions": ["revert"] },
21
- ],
22
- additionalApis: [{
23
- action: "confirm",
24
- entrypoint: ":id/confirm",
25
- requiredrole: [],
26
- method: type_1.RESTMethods.post,
27
- execute: "setDocumentStatus",
28
- description: "confirm document and change status to CO"
29
- }, {
30
- action: "void",
31
- entrypoint: ":id/void",
32
- querypara: ["reason"],
33
- requiredrole: [],
34
- method: type_1.RESTMethods.post,
35
- execute: "setDocumentStatus",
36
- description: "confirm document and change status to V"
37
- }, {
38
- action: "revert",
39
- entrypoint: ":id/revert",
40
- requiredrole: [],
41
- method: type_1.RESTMethods.post,
42
- execute: "setDocumentStatus",
43
- description: "revert document and change status to D"
44
- }],
45
- // simple => pure model and service(no page,api),
46
- // default => force masterdata property,
47
- // transaction => force masterdata property
48
- schemaType: type_1.SupportedSchemaType.transaction,
49
- },
50
- properties: {
51
- _id: { type: 'string', description: "system field" },
52
- tenantId: { type: 'integer', default: 1, description: "system field" },
53
- orgId: { type: 'integer', default: 1, description: "system field" },
54
- branchId: { type: 'integer', default: 1, description: "system field" },
55
- created: { type: 'string', description: "system field" },
56
- updated: { type: 'string', description: "system field" },
57
- createdby: { type: 'string', description: "system field" },
58
- updatedby: { type: 'string', description: "system field" },
59
- docNoFormat: {
60
- type: "object",
61
- "x-foreignkey": "docnoformat",
62
- properties: { _id: { "type": "string" }, label: { "type": "string" } },
63
- description: "system field"
64
- },
65
- docStatus: { type: "string", description: "system field" }
66
- },
67
- definitions: {
68
- foreignkey: {
69
- type: "object",
70
- properties: { _id: { "type": "string" }, label: { "type": "string" }, code: { "type": "string" } }
71
- }
72
- },
73
- };
74
- //# sourceMappingURL=transaction.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../src/schematype/transaction.ts"],"names":[],"mappings":"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"}