@kosdev-code/kos-nx-plugin 0.1.0-dev.5053

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 (416) hide show
  1. package/README.md +11 -0
  2. package/generators.json +80 -0
  3. package/migrations.json +86 -0
  4. package/package.json +25 -0
  5. package/src/generators/kos-add-future-to-model/README.md +106 -0
  6. package/src/generators/kos-add-future-to-model/generator.d.ts +5 -0
  7. package/src/generators/kos-add-future-to-model/generator.d.ts.map +1 -0
  8. package/src/generators/kos-add-future-to-model/generator.js +63 -0
  9. package/src/generators/kos-add-future-to-model/generator.js.map +1 -0
  10. package/src/generators/kos-add-future-to-model/lib/model-transformer.d.ts +22 -0
  11. package/src/generators/kos-add-future-to-model/lib/model-transformer.d.ts.map +1 -0
  12. package/src/generators/kos-add-future-to-model/lib/model-transformer.js +313 -0
  13. package/src/generators/kos-add-future-to-model/lib/model-transformer.js.map +1 -0
  14. package/src/generators/kos-add-future-to-model/lib/normalize-options.d.ts +4 -0
  15. package/src/generators/kos-add-future-to-model/lib/normalize-options.d.ts.map +1 -0
  16. package/src/generators/kos-add-future-to-model/lib/normalize-options.js +54 -0
  17. package/src/generators/kos-add-future-to-model/lib/normalize-options.js.map +1 -0
  18. package/src/generators/kos-add-future-to-model/lib/registration-transformer.d.ts +11 -0
  19. package/src/generators/kos-add-future-to-model/lib/registration-transformer.d.ts.map +1 -0
  20. package/src/generators/kos-add-future-to-model/lib/registration-transformer.js +73 -0
  21. package/src/generators/kos-add-future-to-model/lib/registration-transformer.js.map +1 -0
  22. package/src/generators/kos-add-future-to-model/lib/service-transformer.d.ts +13 -0
  23. package/src/generators/kos-add-future-to-model/lib/service-transformer.d.ts.map +1 -0
  24. package/src/generators/kos-add-future-to-model/lib/service-transformer.js +178 -0
  25. package/src/generators/kos-add-future-to-model/lib/service-transformer.js.map +1 -0
  26. package/src/generators/kos-add-future-to-model/schema.d.ts +24 -0
  27. package/src/generators/kos-add-future-to-model/schema.json +59 -0
  28. package/src/generators/kos-companion-model/files/types/index.d.ts.template +11 -0
  29. package/src/generators/kos-companion-model/generator.d.ts +5 -0
  30. package/src/generators/kos-companion-model/generator.d.ts.map +1 -0
  31. package/src/generators/kos-companion-model/generator.js +45 -0
  32. package/src/generators/kos-companion-model/generator.js.map +1 -0
  33. package/src/generators/kos-companion-model/schema.d.ts +7 -0
  34. package/src/generators/kos-companion-model/schema.json +36 -0
  35. package/src/generators/kos-component/README.md +474 -0
  36. package/src/generators/kos-component/control-pour/__nameDashCase__.stories.tsx__template__ +30 -0
  37. package/src/generators/kos-component/control-pour/__nameDashCase__.tsx__template__ +35 -0
  38. package/src/generators/kos-component/control-pour/index.ts__template__ +1 -0
  39. package/src/generators/kos-component/cui/__nameDashCase__.stories.tsx__template__ +30 -0
  40. package/src/generators/kos-component/cui/__nameDashCase__.tsx__template__ +35 -0
  41. package/src/generators/kos-component/cui/index.ts__template__ +1 -0
  42. package/src/generators/kos-component/custom/__nameDashCase__.stories.tsx__template__ +31 -0
  43. package/src/generators/kos-component/custom/__nameDashCase__.tsx__template__ +53 -0
  44. package/src/generators/kos-component/custom/index.ts__template__ +1 -0
  45. package/src/generators/kos-component/files/__nameDashCase__.css__template__ +2 -0
  46. package/src/generators/kos-component/files/__nameDashCase__.tsx__template__ +26 -0
  47. package/src/generators/kos-component/files/index.ts__template__ +1 -0
  48. package/src/generators/kos-component/generator.d.ts +8 -0
  49. package/src/generators/kos-component/generator.d.ts.map +1 -0
  50. package/src/generators/kos-component/generator.js +100 -0
  51. package/src/generators/kos-component/generator.js.map +1 -0
  52. package/src/generators/kos-component/index.d.ts +5 -0
  53. package/src/generators/kos-component/index.d.ts.map +1 -0
  54. package/src/generators/kos-component/index.js +12 -0
  55. package/src/generators/kos-component/index.js.map +1 -0
  56. package/src/generators/kos-component/nav/__nameDashCase__.stories.tsx__template__ +30 -0
  57. package/src/generators/kos-component/nav/__nameDashCase__.tsx__template__ +27 -0
  58. package/src/generators/kos-component/nav/index.ts__template__ +1 -0
  59. package/src/generators/kos-component/plugin-handlers/base.d.ts +47 -0
  60. package/src/generators/kos-component/plugin-handlers/base.d.ts.map +1 -0
  61. package/src/generators/kos-component/plugin-handlers/base.js +42 -0
  62. package/src/generators/kos-component/plugin-handlers/base.js.map +1 -0
  63. package/src/generators/kos-component/plugin-handlers/control-pour-handler.d.ts +9 -0
  64. package/src/generators/kos-component/plugin-handlers/control-pour-handler.d.ts.map +1 -0
  65. package/src/generators/kos-component/plugin-handlers/control-pour-handler.js +31 -0
  66. package/src/generators/kos-component/plugin-handlers/control-pour-handler.js.map +1 -0
  67. package/src/generators/kos-component/plugin-handlers/cui-handler.d.ts +9 -0
  68. package/src/generators/kos-component/plugin-handlers/cui-handler.d.ts.map +1 -0
  69. package/src/generators/kos-component/plugin-handlers/cui-handler.js +31 -0
  70. package/src/generators/kos-component/plugin-handlers/cui-handler.js.map +1 -0
  71. package/src/generators/kos-component/plugin-handlers/custom-handler.d.ts +11 -0
  72. package/src/generators/kos-component/plugin-handlers/custom-handler.d.ts.map +1 -0
  73. package/src/generators/kos-component/plugin-handlers/custom-handler.js +45 -0
  74. package/src/generators/kos-component/plugin-handlers/custom-handler.js.map +1 -0
  75. package/src/generators/kos-component/plugin-handlers/default-handler.d.ts +14 -0
  76. package/src/generators/kos-component/plugin-handlers/default-handler.d.ts.map +1 -0
  77. package/src/generators/kos-component/plugin-handlers/default-handler.js +37 -0
  78. package/src/generators/kos-component/plugin-handlers/default-handler.js.map +1 -0
  79. package/src/generators/kos-component/plugin-handlers/factory.d.ts +10 -0
  80. package/src/generators/kos-component/plugin-handlers/factory.d.ts.map +1 -0
  81. package/src/generators/kos-component/plugin-handlers/factory.js +44 -0
  82. package/src/generators/kos-component/plugin-handlers/factory.js.map +1 -0
  83. package/src/generators/kos-component/plugin-handlers/nav-handler.d.ts +9 -0
  84. package/src/generators/kos-component/plugin-handlers/nav-handler.d.ts.map +1 -0
  85. package/src/generators/kos-component/plugin-handlers/nav-handler.js +32 -0
  86. package/src/generators/kos-component/plugin-handlers/nav-handler.js.map +1 -0
  87. package/src/generators/kos-component/plugin-handlers/setting-handler.d.ts +9 -0
  88. package/src/generators/kos-component/plugin-handlers/setting-handler.d.ts.map +1 -0
  89. package/src/generators/kos-component/plugin-handlers/setting-handler.js +32 -0
  90. package/src/generators/kos-component/plugin-handlers/setting-handler.js.map +1 -0
  91. package/src/generators/kos-component/plugin-handlers/setup-handler.d.ts +9 -0
  92. package/src/generators/kos-component/plugin-handlers/setup-handler.d.ts.map +1 -0
  93. package/src/generators/kos-component/plugin-handlers/setup-handler.js +32 -0
  94. package/src/generators/kos-component/plugin-handlers/setup-handler.js.map +1 -0
  95. package/src/generators/kos-component/plugin-handlers/trouble-action-handler.d.ts +9 -0
  96. package/src/generators/kos-component/plugin-handlers/trouble-action-handler.d.ts.map +1 -0
  97. package/src/generators/kos-component/plugin-handlers/trouble-action-handler.js +32 -0
  98. package/src/generators/kos-component/plugin-handlers/trouble-action-handler.js.map +1 -0
  99. package/src/generators/kos-component/plugin-handlers/utility-handler.d.ts +9 -0
  100. package/src/generators/kos-component/plugin-handlers/utility-handler.d.ts.map +1 -0
  101. package/src/generators/kos-component/plugin-handlers/utility-handler.js +32 -0
  102. package/src/generators/kos-component/plugin-handlers/utility-handler.js.map +1 -0
  103. package/src/generators/kos-component/schema.d.ts +21 -0
  104. package/src/generators/kos-component/schema.json +100 -0
  105. package/src/generators/kos-component/setting/__nameDashCase__.stories.tsx__template__ +30 -0
  106. package/src/generators/kos-component/setting/__nameDashCase__.tsx__template__ +27 -0
  107. package/src/generators/kos-component/setting/index.ts__template__ +1 -0
  108. package/src/generators/kos-component/setup/__nameDashCase__.stories.tsx__template__ +30 -0
  109. package/src/generators/kos-component/setup/__nameDashCase__.tsx__template__ +33 -0
  110. package/src/generators/kos-component/setup/index.ts__template__ +1 -0
  111. package/src/generators/kos-component/trouble-action/__nameDashCase__.stories.tsx__template__ +30 -0
  112. package/src/generators/kos-component/trouble-action/__nameDashCase__.tsx__template__ +58 -0
  113. package/src/generators/kos-component/trouble-action/index.ts__template__ +1 -0
  114. package/src/generators/kos-component/types.d.ts +55 -0
  115. package/src/generators/kos-component/types.d.ts.map +1 -0
  116. package/src/generators/kos-component/types.js +48 -0
  117. package/src/generators/kos-component/types.js.map +1 -0
  118. package/src/generators/kos-component/utility/__nameDashCase__.stories.tsx__template__ +30 -0
  119. package/src/generators/kos-component/utility/__nameDashCase__.tsx__template__ +47 -0
  120. package/src/generators/kos-component/utility/index.ts__template__ +1 -0
  121. package/src/generators/kos-component/utils/file-generator.d.ts +7 -0
  122. package/src/generators/kos-component/utils/file-generator.d.ts.map +1 -0
  123. package/src/generators/kos-component/utils/file-generator.js +26 -0
  124. package/src/generators/kos-component/utils/file-generator.js.map +1 -0
  125. package/src/generators/kos-component/utils/kos-config-builder.d.ts +27 -0
  126. package/src/generators/kos-component/utils/kos-config-builder.d.ts.map +1 -0
  127. package/src/generators/kos-component/utils/kos-config-builder.js +82 -0
  128. package/src/generators/kos-component/utils/kos-config-builder.js.map +1 -0
  129. package/src/generators/kos-component/utils/localization.d.ts +7 -0
  130. package/src/generators/kos-component/utils/localization.d.ts.map +1 -0
  131. package/src/generators/kos-component/utils/localization.js +29 -0
  132. package/src/generators/kos-component/utils/localization.js.map +1 -0
  133. package/src/generators/kos-component/utils/validation.d.ts +18 -0
  134. package/src/generators/kos-component/utils/validation.d.ts.map +1 -0
  135. package/src/generators/kos-component/utils/validation.js +65 -0
  136. package/src/generators/kos-component/utils/validation.js.map +1 -0
  137. package/src/generators/kos-container-model/files/model/__nameDashCase__-model.ts.template +68 -0
  138. package/src/generators/kos-container-model/files/model/index.ts.template +13 -0
  139. package/src/generators/kos-container-model/files/model/types/index.d.ts.template +24 -0
  140. package/src/generators/kos-container-model/files/services/__modelNameDashCase__-services.ts.template +22 -0
  141. package/src/generators/kos-container-model/files/services/index.ts.template +1 -0
  142. package/src/generators/kos-container-model/generator.d.ts +5 -0
  143. package/src/generators/kos-container-model/generator.d.ts.map +1 -0
  144. package/src/generators/kos-container-model/generator.js +74 -0
  145. package/src/generators/kos-container-model/generator.js.map +1 -0
  146. package/src/generators/kos-container-model/lib/normalize-options.d.ts +4 -0
  147. package/src/generators/kos-container-model/lib/normalize-options.d.ts.map +1 -0
  148. package/src/generators/kos-container-model/lib/normalize-options.js +32 -0
  149. package/src/generators/kos-container-model/lib/normalize-options.js.map +1 -0
  150. package/src/generators/kos-container-model/lib/normalize-value.d.ts +7 -0
  151. package/src/generators/kos-container-model/lib/normalize-value.d.ts.map +1 -0
  152. package/src/generators/kos-container-model/lib/normalize-value.js +28 -0
  153. package/src/generators/kos-container-model/lib/normalize-value.js.map +1 -0
  154. package/src/generators/kos-container-model/lib/utils/name-utils.d.ts +6 -0
  155. package/src/generators/kos-container-model/lib/utils/name-utils.d.ts.map +1 -0
  156. package/src/generators/kos-container-model/lib/utils/name-utils.js +53 -0
  157. package/src/generators/kos-container-model/lib/utils/name-utils.js.map +1 -0
  158. package/src/generators/kos-container-model/lib/utils/ts-visitor.d.ts +8 -0
  159. package/src/generators/kos-container-model/lib/utils/ts-visitor.d.ts.map +1 -0
  160. package/src/generators/kos-container-model/lib/utils/ts-visitor.js +122 -0
  161. package/src/generators/kos-container-model/lib/utils/ts-visitor.js.map +1 -0
  162. package/src/generators/kos-container-model/schema.d.ts +35 -0
  163. package/src/generators/kos-container-model/schema.json +50 -0
  164. package/src/generators/kos-content-project/files/assets/.gitkeep +2 -0
  165. package/src/generators/kos-content-project/files/vite.config.ts.template +48 -0
  166. package/src/generators/kos-content-project/generator.d.ts +5 -0
  167. package/src/generators/kos-content-project/generator.d.ts.map +1 -0
  168. package/src/generators/kos-content-project/generator.js +55 -0
  169. package/src/generators/kos-content-project/generator.js.map +1 -0
  170. package/src/generators/kos-content-project/schema.d.ts +3 -0
  171. package/src/generators/kos-content-project/schema.json +18 -0
  172. package/src/generators/kos-context/files/__nameDashCase__-provider.tsx.template +40 -0
  173. package/src/generators/kos-context/files/index.ts.template +1 -0
  174. package/src/generators/kos-context/generator.d.ts +5 -0
  175. package/src/generators/kos-context/generator.d.ts.map +1 -0
  176. package/src/generators/kos-context/generator.js +56 -0
  177. package/src/generators/kos-context/generator.js.map +1 -0
  178. package/src/generators/kos-context/schema.d.ts +14 -0
  179. package/src/generators/kos-context/schema.json +36 -0
  180. package/src/generators/kos-hook/files/index.ts.template +2 -0
  181. package/src/generators/kos-hook/files/use-__nameDashCase__.ts.template +13 -0
  182. package/src/generators/kos-hook/files/with-__nameDashCase__.tsx.template +28 -0
  183. package/src/generators/kos-hook/generator.d.ts +5 -0
  184. package/src/generators/kos-hook/generator.d.ts.map +1 -0
  185. package/src/generators/kos-hook/generator.js +56 -0
  186. package/src/generators/kos-hook/generator.js.map +1 -0
  187. package/src/generators/kos-hook/schema.d.ts +21 -0
  188. package/src/generators/kos-hook/schema.json +36 -0
  189. package/src/generators/kos-i18n-project/files/.kos.json.template +8 -0
  190. package/src/generators/kos-i18n-project/files/src/assets/locales/en/__nameDashCase__.json.template +3 -0
  191. package/src/generators/kos-i18n-project/generator.d.ts +5 -0
  192. package/src/generators/kos-i18n-project/generator.d.ts.map +1 -0
  193. package/src/generators/kos-i18n-project/generator.js +82 -0
  194. package/src/generators/kos-i18n-project/generator.js.map +1 -0
  195. package/src/generators/kos-i18n-project/schema.d.ts +3 -0
  196. package/src/generators/kos-i18n-project/schema.json +18 -0
  197. package/src/generators/kos-init/generator.d.ts +5 -0
  198. package/src/generators/kos-init/generator.d.ts.map +1 -0
  199. package/src/generators/kos-init/generator.js +43 -0
  200. package/src/generators/kos-init/generator.js.map +1 -0
  201. package/src/generators/kos-init/schema.d.ts +5 -0
  202. package/src/generators/kos-init/schema.json +29 -0
  203. package/src/generators/kos-model/files/model/__nameDashCase__-model.ts.template +135 -0
  204. package/src/generators/kos-model/files/model/index.ts__template__ +9 -0
  205. package/src/generators/kos-model/files/model/types/index.d.ts.template +7 -0
  206. package/src/generators/kos-model/files/services/__nameDashCase__-services.ts.template +58 -0
  207. package/src/generators/kos-model/files/services/index.ts.template +1 -0
  208. package/src/generators/kos-model/generator.d.ts +5 -0
  209. package/src/generators/kos-model/generator.d.ts.map +1 -0
  210. package/src/generators/kos-model/generator.js +117 -0
  211. package/src/generators/kos-model/generator.js.map +1 -0
  212. package/src/generators/kos-model/lib/normalize-options.d.ts +4 -0
  213. package/src/generators/kos-model/lib/normalize-options.d.ts.map +1 -0
  214. package/src/generators/kos-model/lib/normalize-options.js +35 -0
  215. package/src/generators/kos-model/lib/normalize-options.js.map +1 -0
  216. package/src/generators/kos-model/lib/normalize-value.d.ts +7 -0
  217. package/src/generators/kos-model/lib/normalize-value.d.ts.map +1 -0
  218. package/src/generators/kos-model/lib/normalize-value.js +28 -0
  219. package/src/generators/kos-model/lib/normalize-value.js.map +1 -0
  220. package/src/generators/kos-model/lib/utils/name-utils.d.ts +6 -0
  221. package/src/generators/kos-model/lib/utils/name-utils.d.ts.map +1 -0
  222. package/src/generators/kos-model/lib/utils/name-utils.js +42 -0
  223. package/src/generators/kos-model/lib/utils/name-utils.js.map +1 -0
  224. package/src/generators/kos-model/lib/utils/ts-visitor.d.ts +8 -0
  225. package/src/generators/kos-model/lib/utils/ts-visitor.d.ts.map +1 -0
  226. package/src/generators/kos-model/lib/utils/ts-visitor.js +126 -0
  227. package/src/generators/kos-model/lib/utils/ts-visitor.js.map +1 -0
  228. package/src/generators/kos-model/schema.d.ts +44 -0
  229. package/src/generators/kos-model/schema.json +137 -0
  230. package/src/generators/kos-plugin-project/files/.env.template +7 -0
  231. package/src/generators/kos-plugin-project/files/.kos.json.template +41 -0
  232. package/src/generators/kos-plugin-project/files/.storybook/main.ts.template +45 -0
  233. package/src/generators/kos-plugin-project/files/.storybook/preview.tsx.template +80 -0
  234. package/src/generators/kos-plugin-project/files/.storybook/registration.ts.template +40 -0
  235. package/src/generators/kos-plugin-project/files/index.html.template +15 -0
  236. package/src/generators/kos-plugin-project/files/module-federation.config.ts.template +1 -0
  237. package/src/generators/kos-plugin-project/files/src/app/app.css.template +2 -0
  238. package/src/generators/kos-plugin-project/files/src/app/app.tsx.template +54 -0
  239. package/src/generators/kos-plugin-project/files/src/app/components/main-view/index.ts.template +1 -0
  240. package/src/generators/kos-plugin-project/files/src/app/components/main-view/main-view.tsx.template +14 -0
  241. package/src/generators/kos-plugin-project/files/src/app/tools/experience-resolver.ts.template +10 -0
  242. package/src/generators/kos-plugin-project/files/src/app/tools/index.ts.template +2 -0
  243. package/src/generators/kos-plugin-project/files/src/app/tools/kOSJSON.ts.template +1 -0
  244. package/src/generators/kos-plugin-project/files/src/assets/kos-logo.svg.template +4 -0
  245. package/src/generators/kos-plugin-project/files/src/assets/locales/en/__nameDashCase__.json.template +3 -0
  246. package/src/generators/kos-plugin-project/files/src/registration.ts.template +13 -0
  247. package/src/generators/kos-plugin-project/files/webpack.config.prod.ts.template +24 -0
  248. package/src/generators/kos-plugin-project/files/webpack.config.ts.template +7 -0
  249. package/src/generators/kos-plugin-project/generator.d.ts +5 -0
  250. package/src/generators/kos-plugin-project/generator.d.ts.map +1 -0
  251. package/src/generators/kos-plugin-project/generator.js +108 -0
  252. package/src/generators/kos-plugin-project/generator.js.map +1 -0
  253. package/src/generators/kos-plugin-project/schema.d.ts +5 -0
  254. package/src/generators/kos-plugin-project/schema.json +33 -0
  255. package/src/generators/kos-splash-project/files/project/.kos.json.template +8 -0
  256. package/src/generators/kos-splash-project/files/project/project.json.template +17 -0
  257. package/src/generators/kos-splash-project/files/project/src/start.html.template +13 -0
  258. package/src/generators/kos-splash-project/files/tools/splashtool.mjs.template +247 -0
  259. package/src/generators/kos-splash-project/generator.d.ts +5 -0
  260. package/src/generators/kos-splash-project/generator.d.ts.map +1 -0
  261. package/src/generators/kos-splash-project/generator.js +17 -0
  262. package/src/generators/kos-splash-project/generator.js.map +1 -0
  263. package/src/generators/kos-splash-project/schema.d.ts +3 -0
  264. package/src/generators/kos-splash-project/schema.json +18 -0
  265. package/src/generators/kos-theme-project/files/.kos.json.template +8 -0
  266. package/src/generators/kos-theme-project/files/theme/component.css.template +2 -0
  267. package/src/generators/kos-theme-project/files/theme/generic.css.template +2 -0
  268. package/src/generators/kos-theme-project/files/theme/semantic.css.template +2 -0
  269. package/src/generators/kos-theme-project/files/theme/theme-overlay.css.template +7 -0
  270. package/src/generators/kos-theme-project/files/vite.config.ts.template +48 -0
  271. package/src/generators/kos-theme-project/generator.d.ts +5 -0
  272. package/src/generators/kos-theme-project/generator.d.ts.map +1 -0
  273. package/src/generators/kos-theme-project/generator.js +54 -0
  274. package/src/generators/kos-theme-project/generator.js.map +1 -0
  275. package/src/generators/kos-theme-project/schema.d.ts +3 -0
  276. package/src/generators/kos-theme-project/schema.json +18 -0
  277. package/src/generators/kos-ui-project/files/.env.template +7 -0
  278. package/src/generators/kos-ui-project/files/.kos.json.template +8 -0
  279. package/src/generators/kos-ui-project/files/bootstrap.tsx.template +13 -0
  280. package/src/generators/kos-ui-project/files/main.ts.template +18 -0
  281. package/src/generators/kos-ui-project/files/src/app/app.css.template +129 -0
  282. package/src/generators/kos-ui-project/files/src/app/app.tsx.template +45 -0
  283. package/src/generators/kos-ui-project/files/src/app/components/main-view/index.ts.template +1 -0
  284. package/src/generators/kos-ui-project/files/src/app/components/main-view/main-view.tsx.template +79 -0
  285. package/src/generators/kos-ui-project/files/src/app/registration.ts.template +17 -0
  286. package/src/generators/kos-ui-project/files/src/assets/graphics.png.template +0 -0
  287. package/src/generators/kos-ui-project/files/src/assets/kos-logo.svg.template +4 -0
  288. package/src/generators/kos-ui-project/files/src/assets/locales/en/__nameDashCase__.json.template +4 -0
  289. package/src/generators/kos-ui-project/files/src/bootstrap.tsx.template +13 -0
  290. package/src/generators/kos-ui-project/files/src/index.html.template +14 -0
  291. package/src/generators/kos-ui-project/files/webpack.config.ts.template +45 -0
  292. package/src/generators/kos-ui-project/generator.d.ts +5 -0
  293. package/src/generators/kos-ui-project/generator.d.ts.map +1 -0
  294. package/src/generators/kos-ui-project/generator.js +135 -0
  295. package/src/generators/kos-ui-project/generator.js.map +1 -0
  296. package/src/generators/kos-ui-project/internal/vite.config.ts.template +49 -0
  297. package/src/generators/kos-ui-project/schema.d.ts +7 -0
  298. package/src/generators/kos-ui-project/schema.json +34 -0
  299. package/src/generators/preset/api/utils/service.ts.template +20 -0
  300. package/src/generators/preset/files/.env.template +7 -0
  301. package/src/generators/preset/files/.kos.json.template +8 -0
  302. package/src/generators/preset/files/src/app/app.css.template +128 -0
  303. package/src/generators/preset/files/src/app/app.tsx.template +38 -0
  304. package/src/generators/preset/files/src/app/components/main-view/index.ts.template +1 -0
  305. package/src/generators/preset/files/src/app/components/main-view/main-view.tsx.template +79 -0
  306. package/src/generators/preset/files/src/app/registration.ts.template +20 -0
  307. package/src/generators/preset/files/src/assets/graphics.png +0 -0
  308. package/src/generators/preset/files/src/assets/kos-logo.svg.template +30 -0
  309. package/src/generators/preset/files/src/assets/locales/en/__nameDashCase__.json.template +4 -0
  310. package/src/generators/preset/files/src/bootstrap.tsx.template +13 -0
  311. package/src/generators/preset/files/src/index.html.template +15 -0
  312. package/src/generators/preset/files/src/main.ts.template +6 -0
  313. package/src/generators/preset/files/webpack.config.ts.template +45 -0
  314. package/src/generators/preset/generator.d.ts +5 -0
  315. package/src/generators/preset/generator.d.ts.map +1 -0
  316. package/src/generators/preset/generator.js +275 -0
  317. package/src/generators/preset/generator.js.map +1 -0
  318. package/src/generators/preset/local/.env.local.template +5 -0
  319. package/src/generators/preset/local/README.md.template +88 -0
  320. package/src/generators/preset/model/.kos.json.template +15 -0
  321. package/src/generators/preset/model-components/.kos.json.template +8 -0
  322. package/src/generators/preset/root/.kos.json.template +10 -0
  323. package/src/generators/preset/schema.d.ts +8 -0
  324. package/src/generators/preset/schema.json +14 -0
  325. package/src/generators/preset/tools/tools/scripts/archiver.js.template +79 -0
  326. package/src/generators/preset/tools/tools/scripts/descriptor.mjs.template +114 -0
  327. package/src/generators/preset/tools/tools/scripts/generate-api-types.mjs.template +25 -0
  328. package/src/generators/preset/tools/tools/scripts/kabtool.mjs.template +87 -0
  329. package/src/generators/preset/tools/tools/scripts/update.mjs.template +88 -0
  330. package/src/generators/preset/tools/tools/tsconfig.tools.json.template +12 -0
  331. package/src/index.d.ts +1 -0
  332. package/src/index.d.ts.map +1 -0
  333. package/src/index.js +2 -0
  334. package/src/index.js.map +1 -0
  335. package/src/migrations/add-overrides/add-overrides.d.ts +3 -0
  336. package/src/migrations/add-overrides/add-overrides.d.ts.map +1 -0
  337. package/src/migrations/add-overrides/add-overrides.js +85 -0
  338. package/src/migrations/add-overrides/add-overrides.js.map +1 -0
  339. package/src/migrations/add-overrides/files/.env.local__template__ +5 -0
  340. package/src/migrations/add-overrides/files/tools/scripts/archiver.js__template__ +79 -0
  341. package/src/migrations/add-overrides/files/tools/scripts/kabtool.mjs__template__ +85 -0
  342. package/src/migrations/add-overrides/projectFiles/.kos.json__template__ +5 -0
  343. package/src/migrations/add-update-tool/files/tools/scripts/update.mjs.template +67 -0
  344. package/src/migrations/add-update-tool/migrate.d.ts +3 -0
  345. package/src/migrations/add-update-tool/migrate.d.ts.map +1 -0
  346. package/src/migrations/add-update-tool/migrate.js +24 -0
  347. package/src/migrations/add-update-tool/migrate.js.map +1 -0
  348. package/src/migrations/cms-sdk/cms-sdk.d.ts +3 -0
  349. package/src/migrations/cms-sdk/cms-sdk.d.ts.map +1 -0
  350. package/src/migrations/cms-sdk/cms-sdk.js +22 -0
  351. package/src/migrations/cms-sdk/cms-sdk.js.map +1 -0
  352. package/src/migrations/consolidate-sdk/api/utils/service.ts.template +15 -0
  353. package/src/migrations/consolidate-sdk/consolidate-sdk.d.ts +3 -0
  354. package/src/migrations/consolidate-sdk/consolidate-sdk.d.ts.map +1 -0
  355. package/src/migrations/consolidate-sdk/consolidate-sdk.js +100 -0
  356. package/src/migrations/consolidate-sdk/consolidate-sdk.js.map +1 -0
  357. package/src/migrations/consolidate-sdk/files/tools/scripts/generate-api-types.mjs.template +25 -0
  358. package/src/migrations/default-projects/default-projects.d.ts +3 -0
  359. package/src/migrations/default-projects/default-projects.d.ts.map +1 -0
  360. package/src/migrations/default-projects/default-projects.js +45 -0
  361. package/src/migrations/default-projects/default-projects.js.map +1 -0
  362. package/src/migrations/default-projects/files/index.ts__template__ +2 -0
  363. package/src/migrations/freestyle-sdk/freestyle-sdk.d.ts +3 -0
  364. package/src/migrations/freestyle-sdk/freestyle-sdk.d.ts.map +1 -0
  365. package/src/migrations/freestyle-sdk/freestyle-sdk.js +18 -0
  366. package/src/migrations/freestyle-sdk/freestyle-sdk.js.map +1 -0
  367. package/src/migrations/kabtool-env/migrate.d.ts +3 -0
  368. package/src/migrations/kabtool-env/migrate.d.ts.map +1 -0
  369. package/src/migrations/kabtool-env/migrate.js +11 -0
  370. package/src/migrations/kabtool-env/migrate.js.map +1 -0
  371. package/src/migrations/migrate-extensions/migrate-extensions.d.ts +3 -0
  372. package/src/migrations/migrate-extensions/migrate-extensions.d.ts.map +1 -0
  373. package/src/migrations/migrate-extensions/migrate-extensions.js +77 -0
  374. package/src/migrations/migrate-extensions/migrate-extensions.js.map +1 -0
  375. package/src/migrations/translation-format/translation-format.d.ts +3 -0
  376. package/src/migrations/translation-format/translation-format.d.ts.map +1 -0
  377. package/src/migrations/translation-format/translation-format.js +56 -0
  378. package/src/migrations/translation-format/translation-format.js.map +1 -0
  379. package/src/migrations/translations/add-descriptor.d.ts +3 -0
  380. package/src/migrations/translations/add-descriptor.d.ts.map +1 -0
  381. package/src/migrations/translations/add-descriptor.js +48 -0
  382. package/src/migrations/translations/add-descriptor.js.map +1 -0
  383. package/src/migrations/translations/files/tools/scripts/descriptor.mjs.template +114 -0
  384. package/src/migrations/update-kabtool/files/tools/scripts/kabtool.mjs.template +87 -0
  385. package/src/migrations/update-kabtool/update-kabtool.d.ts +3 -0
  386. package/src/migrations/update-kabtool/update-kabtool.d.ts.map +1 -0
  387. package/src/migrations/update-kabtool/update-kabtool.js +11 -0
  388. package/src/migrations/update-kabtool/update-kabtool.js.map +1 -0
  389. package/src/migrations/update-sdk/update-sdk.d.ts +3 -0
  390. package/src/migrations/update-sdk/update-sdk.d.ts.map +1 -0
  391. package/src/migrations/update-sdk/update-sdk.js +17 -0
  392. package/src/migrations/update-sdk/update-sdk.js.map +1 -0
  393. package/src/migrations/update-sdk-2.0/update.d.ts +3 -0
  394. package/src/migrations/update-sdk-2.0/update.d.ts.map +1 -0
  395. package/src/migrations/update-sdk-2.0/update.js +37 -0
  396. package/src/migrations/update-sdk-2.0/update.js.map +1 -0
  397. package/src/utils/java-home.d.ts +2 -0
  398. package/src/utils/java-home.d.ts.map +1 -0
  399. package/src/utils/java-home.js +44 -0
  400. package/src/utils/java-home.js.map +1 -0
  401. package/src/utils/logger.d.ts +9 -0
  402. package/src/utils/logger.d.ts.map +1 -0
  403. package/src/utils/logger.js +46 -0
  404. package/src/utils/logger.js.map +1 -0
  405. package/src/utils/name-utils.d.ts +6 -0
  406. package/src/utils/name-utils.d.ts.map +1 -0
  407. package/src/utils/name-utils.js +60 -0
  408. package/src/utils/name-utils.js.map +1 -0
  409. package/src/utils/normalize-value.d.ts +7 -0
  410. package/src/utils/normalize-value.d.ts.map +1 -0
  411. package/src/utils/normalize-value.js +33 -0
  412. package/src/utils/normalize-value.js.map +1 -0
  413. package/src/utils/project-utils.d.ts +36 -0
  414. package/src/utils/project-utils.d.ts.map +1 -0
  415. package/src/utils/project-utils.js +102 -0
  416. package/src/utils/project-utils.js.map +1 -0
package/README.md ADDED
@@ -0,0 +1,11 @@
1
+ # plugins-kos-nx-plugin
2
+
3
+ This library was generated with [Nx](https://nx.dev).
4
+
5
+ ## Building
6
+
7
+ Run `nx build plugins-kos-nx-plugin` to build the library.
8
+
9
+ ## Running unit tests
10
+
11
+ Run `nx test plugins-kos-nx-plugin` to execute the unit tests via [Jest](https://jestjs.io).
@@ -0,0 +1,80 @@
1
+ {
2
+ "generators": {
3
+ "kos-model": {
4
+ "factory": "./src/generators/kos-model/generator",
5
+ "schema": "./src/generators/kos-model/schema.json",
6
+ "description": "Generate a KOS Model"
7
+ },
8
+ "kos-container-model": {
9
+ "factory": "./src/generators/kos-container-model/generator",
10
+ "schema": "./src/generators/kos-container-model/schema.json",
11
+ "description": "Generate a KOS Container Model for an existing model"
12
+ },
13
+ "kos-hook": {
14
+ "factory": "./src/generators/kos-hook/generator",
15
+ "schema": "./src/generators/kos-hook/schema.json",
16
+ "description": "Create a react hook for a KOS model"
17
+ },
18
+ "kos-component": {
19
+ "factory": "./src/generators/kos-component/generator",
20
+ "schema": "./src/generators/kos-component/schema.json",
21
+ "description": "Create a new React component that can be connected to a KOS model"
22
+ },
23
+ "kos-context": {
24
+ "factory": "./src/generators/kos-context/generator",
25
+ "schema": "./src/generators/kos-context/schema.json",
26
+ "description": "Create a React context that can be used to provide a KOS model to a component"
27
+ },
28
+ "kos-ui-project": {
29
+ "factory": "./src/generators/kos-ui-project/generator",
30
+ "schema": "./src/generators/kos-ui-project/schema.json",
31
+ "description": "Create a new UI Project for KOS"
32
+ },
33
+ "kos-plugin-project": {
34
+ "factory": "./src/generators/kos-plugin-project/generator",
35
+ "schema": "./src/generators/kos-plugin-project/schema.json",
36
+ "description": "Create a new plugin project for KOS"
37
+ },
38
+ "kos-theme-project": {
39
+ "factory": "./src/generators/kos-theme-project/generator",
40
+ "schema": "./src/generators/kos-theme-project/schema.json",
41
+ "description": "Create a new theme project for kos"
42
+ },
43
+ "kos-content-project": {
44
+ "factory": "./src/generators/kos-content-project/generator",
45
+ "schema": "./src/generators/kos-content-project/schema.json",
46
+ "description": "Create a new content project for KAB (Kos Asset Bundle) generation"
47
+ },
48
+ "kos-i18n-project": {
49
+ "factory": "./src/generators/kos-i18n-project/generator",
50
+ "schema": "./src/generators/kos-i18n-project/schema.json",
51
+ "description": "Create a new i18n project for kos"
52
+ },
53
+ "kos-init": {
54
+ "factory": "./src/generators/kos-init/generator",
55
+ "schema": "./src/generators/kos-init/schema.json",
56
+ "description": "kos-init generator"
57
+ },
58
+ "preset": {
59
+ "factory": "./src/generators/preset/generator",
60
+ "schema": "./src/generators/preset/schema.json",
61
+ "description": "preset generator",
62
+ "x-use-standalone-layout": true
63
+ },
64
+ "kos-companion-model": {
65
+ "factory": "./src/generators/kos-companion-model/generator",
66
+ "schema": "./src/generators/kos-companion-model/schema.json",
67
+ "description": "kos-companion-model generator"
68
+ },
69
+ "kos-splash-project": {
70
+ "factory": "./src/generators/kos-splash-project/generator",
71
+ "schema": "./src/generators/kos-splash-project/schema.json",
72
+ "description": "Generates a new project to create a KOS splash screen"
73
+ },
74
+ "kos-add-future-to-model": {
75
+ "factory": "./src/generators/kos-add-future-to-model/generator",
76
+ "schema": "./src/generators/kos-add-future-to-model/schema.json",
77
+ "description": "Add Future support to an existing KOS model"
78
+ }
79
+ }
80
+ }
@@ -0,0 +1,86 @@
1
+ {
2
+ "generators": {
3
+ "add-overrides": {
4
+ "version": "0.0.9",
5
+ "description": "add-overrides",
6
+ "cli": "nx",
7
+ "implementation": "./src/migrations/add-overrides/add-overrides"
8
+ },
9
+ "default-projects": {
10
+ "version": "0.1.164",
11
+ "description": "Add default KOS component projects",
12
+ "cli": "nx",
13
+ "implementation": "./src/migrations/default-projects/default-projects"
14
+ },
15
+ "update-sdk": {
16
+ "version": "0.1.165",
17
+ "description": "update-sdk",
18
+ "cli": "nx",
19
+ "implementation": "./src/migrations/update-sdk/update-sdk"
20
+ },
21
+ "translations": {
22
+ "version": "0.1.857",
23
+ "description": "adds kos translation support to existing projects",
24
+ "cli": "nx",
25
+ "implementation": "./src/migrations/translations/add-descriptor"
26
+ },
27
+ "extensions": {
28
+ "version": "0.1.1267",
29
+ "description": "migrates extensions to new format",
30
+ "cli": "nx",
31
+ "implementation": "./src/migrations/migrate-extensions/migrate-extensions"
32
+ },
33
+ "translation-format": {
34
+ "version": "0.1.1485",
35
+ "description": "migrates translations to new format",
36
+ "cli": "nx",
37
+ "implementation": "./src/migrations/translation-format/translation-format"
38
+ },
39
+ "freestyle-sdk": {
40
+ "version": "0.1.1580",
41
+ "description": "migrates scripts to allow updates of freestyle sdk",
42
+ "cli": "nx",
43
+ "implementation": "./src/migrations/freestyle-sdk/freestyle-sdk"
44
+ },
45
+ "cms-sdk": {
46
+ "version": "0.1.1667",
47
+ "description": "migrates scripts to allow updates of cms sdk",
48
+ "cli": "nx",
49
+ "implementation": "./src/migrations/cms-sdk/cms-sdk"
50
+ },
51
+ "update-kabtool": {
52
+ "version": "0.1.1759",
53
+ "description": "updates kabtool to support built automation",
54
+ "cli": "nx",
55
+ "implementation": "./src/migrations/update-kabtool/update-kabtool"
56
+ },
57
+ "add-update-tool": {
58
+ "version": "0.1.2297",
59
+ "description": "adds update tool to support automated dependency updates",
60
+ "cli": "nx",
61
+ "implementation": "./src/migrations/add-update-tool/migrate"
62
+ },
63
+ "kabtool-env": {
64
+ "version": "0.1.2297",
65
+ "description": "updates the kabtool to use the .env.local file",
66
+ "cli": "nx",
67
+ "implementation": "./src/migrations/kabtool-env/migrate"
68
+ },
69
+ "consolidate-sdk": {
70
+ "version": "1.6.0",
71
+ "description": "Migration for v1.6.0",
72
+ "implementation": "./src/migrations/consolidate-sdk/consolidate-sdk"
73
+ },
74
+ "update-sdk-2": {
75
+ "version": "2.0.0",
76
+ "description": "Migration for v2.0.0",
77
+ "implementation": "./src/migrations/update-sdk-2.0/update"
78
+ }
79
+ },
80
+ "packageJsonUpdates": {
81
+ "1.5.0": {
82
+ "version": "1.5.0",
83
+ "packages": {}
84
+ }
85
+ }
86
+ }
package/package.json ADDED
@@ -0,0 +1,25 @@
1
+ {
2
+ "name": "@kosdev-code/kos-nx-plugin",
3
+ "version": "0.1.0-dev.5053",
4
+ "type": "commonjs",
5
+ "generators": "./generators.json",
6
+ "publishConfig": {
7
+ "registry": "https://npm.pkg.github.com/"
8
+ },
9
+ "scripts": {
10
+ "postinstall": ""
11
+ },
12
+ "nx-migrations": {
13
+ "migrations": "./migrations.json"
14
+ },
15
+ "dependencies": {
16
+ "@nx/devkit": "^17.2.8",
17
+ "@nx/react": "^17.2.8"
18
+ },
19
+ "main": "./src/index.js",
20
+ "kos": {
21
+ "build": {
22
+ "gitHash": "c98a36c0d6454b4648b4e9d014b0e57fcd1d39a1"
23
+ }
24
+ }
25
+ }
@@ -0,0 +1,106 @@
1
+ # Add Future Support to Existing KOS Model
2
+
3
+ This generator adds Future support to an existing KOS model, transforming it to support progress tracking for long-running operations.
4
+
5
+ ## Usage
6
+
7
+ ### Via CLI
8
+ ```bash
9
+ # Interactive mode - automatically discovers and lists all available models
10
+ kos-cli add-future
11
+
12
+ # With parameters
13
+ kos-cli add-future --modelName=MyModel --futureType=minimal --project=my-project
14
+
15
+ # Direct Nx
16
+ nx generate @kosdev-code/kos-nx-plugin:kos-add-future-to-model --modelName=MyModel --modelProject=my-project --futureType=complete
17
+ ```
18
+
19
+ ### Parameters
20
+
21
+ - `modelName` (required): Name of the existing model to add Future support to
22
+ - `modelProject` (required): Project where the model is located
23
+ - `futureType`: Type of Future support (`minimal` or `complete`, defaults to `minimal`)
24
+ - `updateServices`: Whether to update/create services file (defaults to `true`)
25
+ - `dryRun`: Show what would be changed without making actual modifications
26
+
27
+ ## What It Does
28
+
29
+ ### Model File Changes
30
+ - Adds Future-related imports
31
+ - Adds Future properties (`futureHandler`, `future` for complete mode)
32
+ - Adds mixin setup call in constructor
33
+ - Adds `@kosFuture()` placeholder method
34
+ - Updates public type with `ExternalFutureInterface` intersection
35
+ - Adds `onFutureUpdate` method (for complete mode)
36
+ - Updates class implements clause (for complete mode)
37
+
38
+ ### Services File Changes
39
+ - Adds `FutureResponse` import
40
+ - Creates placeholder Future operation service method
41
+ - Adds progress and result type definitions
42
+ - Creates file if it doesn't exist
43
+
44
+ ### Registration File Changes
45
+ - Adds `as any` type cast for intersection type
46
+ - Updates documentation with Future capabilities
47
+ - Adds Future usage examples
48
+
49
+ ## Example Transformation
50
+
51
+ **Before:**
52
+ ```typescript
53
+ export type MyModel = PublicModelInterface<MyModelImpl>;
54
+
55
+ @kosModel(MODEL_TYPE)
56
+ export class MyModelImpl implements IKosDataModel, IKosIdentifiable {
57
+ constructor(modelId: string, options: MyOptions, context: KosCreationContext) {
58
+ this.id = modelId;
59
+ this.logger = context.logger;
60
+ }
61
+ }
62
+ ```
63
+
64
+ **After (minimal):**
65
+ ```typescript
66
+ import { kosFuture, setupMinimalFutureSupport } from "@kosdev-code/kos-ui-sdk";
67
+ import type { ExternalFutureInterface, FutureAwareContainer } from "@kosdev-code/kos-ui-sdk";
68
+ import type { MyOperationProgress } from "./services";
69
+
70
+ export type MyModel = PublicModelInterface<MyModelImpl> & ExternalFutureInterface<MyOperationProgress>;
71
+
72
+ @kosModel(MODEL_TYPE)
73
+ export class MyModelImpl implements IKosDataModel, IKosIdentifiable {
74
+ // Future support properties - guaranteed by framework
75
+ public futureHandler!: FutureAwareContainer<MyOperationProgress>;
76
+
77
+ constructor(modelId: string, options: MyOptions, context: KosCreationContext) {
78
+ this.id = modelId;
79
+ this.logger = context.logger;
80
+
81
+ // Initialize Future support
82
+ setupMinimalFutureSupport(this);
83
+ }
84
+
85
+ @kosFuture()
86
+ async performLongRunningOperation(): Promise<void> {
87
+ // TODO: Implement your long-running operation here
88
+ this.logger.debug(`Starting long-running operation for ${this.id}`);
89
+ await new Promise(resolve => setTimeout(resolve, 1000));
90
+ this.logger.debug(`Completed long-running operation for ${this.id}`);
91
+ }
92
+ }
93
+ ```
94
+
95
+ ## Next Steps After Generation
96
+
97
+ 1. **Implement the @kosFuture method**: Replace the placeholder with your actual long-running operation
98
+ 2. **Update service method**: Implement the generated service method to return a proper `FutureResponse`
99
+ 3. **Define progress types**: Customize the `OperationProgress` and `OperationResult` types for your specific use case
100
+ 4. **Customize onFutureUpdate** (complete mode): Add custom logic for handling Future state changes
101
+
102
+ ## Error Handling
103
+
104
+ - Validates that the model file exists before transformation
105
+ - Provides clear error messages for missing files or invalid configurations
106
+ - Supports dry-run mode to preview changes before applying them
@@ -0,0 +1,5 @@
1
+ import { Tree } from "@nx/devkit";
2
+ import { KosAddFutureToModelSchema } from "./schema";
3
+ export declare function kosAddFutureToModelGenerator(tree: Tree, options: KosAddFutureToModelSchema): Promise<void>;
4
+ export default kosAddFutureToModelGenerator;
5
+ //# sourceMappingURL=generator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../../../../../../packages/plugins/kos-nx-plugin/src/generators/kos-add-future-to-model/generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAe,MAAM,YAAY,CAAC;AAO/C,OAAO,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AAErD,wBAAsB,4BAA4B,CAChD,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,yBAAyB,iBAiFnC;AAED,eAAe,4BAA4B,CAAC"}
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.kosAddFutureToModelGenerator = void 0;
4
+ const devkit_1 = require("@nx/devkit");
5
+ const logger_1 = require("../../utils/logger");
6
+ const model_transformer_1 = require("./lib/model-transformer");
7
+ const normalize_options_1 = require("./lib/normalize-options");
8
+ const registration_transformer_1 = require("./lib/registration-transformer");
9
+ const service_transformer_1 = require("./lib/service-transformer");
10
+ async function kosAddFutureToModelGenerator(tree, options) {
11
+ const normalized = (0, normalize_options_1.normalizeOptions)(tree, options);
12
+ logger_1.logger.info(`Adding ${normalized.futureType} Future support to model: ${normalized.modelName}`);
13
+ // Validate that model file exists
14
+ if (!tree.exists(normalized.modelFilePath)) {
15
+ throw new Error(`Model file not found: ${normalized.modelFilePath}`);
16
+ }
17
+ if (options.dryRun) {
18
+ logger_1.logger.info("DRY RUN - No files will be modified");
19
+ logger_1.logger.info(`Would modify model file: ${normalized.modelFilePath}`);
20
+ if (normalized.servicesFilePath) {
21
+ logger_1.logger.info(`Would modify/create services file: ${normalized.servicesFilePath}`);
22
+ }
23
+ if (normalized.registrationFilePath) {
24
+ logger_1.logger.info(`Would modify registration file: ${normalized.registrationFilePath}`);
25
+ }
26
+ return;
27
+ }
28
+ try {
29
+ // Transform model file
30
+ logger_1.logger.info(`Transforming model file: ${normalized.modelFilePath}`);
31
+ const modelTransformer = new model_transformer_1.ModelFileTransformer(tree, normalized);
32
+ modelTransformer.transform();
33
+ // Transform or create services file
34
+ if (normalized.updateServices) {
35
+ logger_1.logger.info(`Transforming services file: ${normalized.servicesFilePath || "creating new"}`);
36
+ const serviceTransformer = new service_transformer_1.ServiceFileTransformer(tree, normalized);
37
+ serviceTransformer.transform();
38
+ }
39
+ // Transform registration file
40
+ if (normalized.registrationFilePath) {
41
+ logger_1.logger.info(`Transforming registration file: ${normalized.registrationFilePath}`);
42
+ const registrationTransformer = new registration_transformer_1.RegistrationFileTransformer(tree, normalized);
43
+ registrationTransformer.transform();
44
+ }
45
+ logger_1.logger.info(`✅ Successfully added ${normalized.futureType} Future support to ${normalized.modelName}`);
46
+ logger_1.logger.info("");
47
+ logger_1.logger.info("Next steps:");
48
+ logger_1.logger.info("1. Review the generated @kosFuture method and implement your actual operation");
49
+ logger_1.logger.info("2. Update the service method to return a proper FutureResponse");
50
+ logger_1.logger.info("3. Define your specific progress and result types");
51
+ if (normalized.futureType === "complete") {
52
+ logger_1.logger.info("4. Customize the onFutureUpdate method for your specific needs");
53
+ }
54
+ }
55
+ catch (error) {
56
+ logger_1.logger.error(`Failed to add Future support: ${error}`);
57
+ throw error;
58
+ }
59
+ await (0, devkit_1.formatFiles)(tree);
60
+ }
61
+ exports.kosAddFutureToModelGenerator = kosAddFutureToModelGenerator;
62
+ exports.default = kosAddFutureToModelGenerator;
63
+ //# sourceMappingURL=generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/plugins/kos-nx-plugin/src/generators/kos-add-future-to-model/generator.ts"],"names":[],"mappings":";;;AAAA,uCAA+C;AAC/C,+CAA4C;AAE5C,+DAA+D;AAC/D,+DAA2D;AAC3D,6EAA6E;AAC7E,mEAAmE;AAG5D,KAAK,UAAU,4BAA4B,CAChD,IAAU,EACV,OAAkC;IAElC,MAAM,UAAU,GAAG,IAAA,oCAAgB,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAEnD,eAAM,CAAC,IAAI,CACT,UAAU,UAAU,CAAC,UAAU,6BAA6B,UAAU,CAAC,SAAS,EAAE,CACnF,CAAC;IAEF,kCAAkC;IAClC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CAAC,yBAAyB,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC;IACvE,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,eAAM,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;QACnD,eAAM,CAAC,IAAI,CAAC,4BAA4B,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC;QACpE,IAAI,UAAU,CAAC,gBAAgB,EAAE,CAAC;YAChC,eAAM,CAAC,IAAI,CACT,sCAAsC,UAAU,CAAC,gBAAgB,EAAE,CACpE,CAAC;QACJ,CAAC;QACD,IAAI,UAAU,CAAC,oBAAoB,EAAE,CAAC;YACpC,eAAM,CAAC,IAAI,CACT,mCAAmC,UAAU,CAAC,oBAAoB,EAAE,CACrE,CAAC;QACJ,CAAC;QACD,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,uBAAuB;QACvB,eAAM,CAAC,IAAI,CAAC,4BAA4B,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC;QACpE,MAAM,gBAAgB,GAAG,IAAI,wCAAoB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QACpE,gBAAgB,CAAC,SAAS,EAAE,CAAC;QAE7B,oCAAoC;QACpC,IAAI,UAAU,CAAC,cAAc,EAAE,CAAC;YAC9B,eAAM,CAAC,IAAI,CACT,+BACE,UAAU,CAAC,gBAAgB,IAAI,cACjC,EAAE,CACH,CAAC;YACF,MAAM,kBAAkB,GAAG,IAAI,4CAAsB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YACxE,kBAAkB,CAAC,SAAS,EAAE,CAAC;QACjC,CAAC;QAED,8BAA8B;QAC9B,IAAI,UAAU,CAAC,oBAAoB,EAAE,CAAC;YACpC,eAAM,CAAC,IAAI,CACT,mCAAmC,UAAU,CAAC,oBAAoB,EAAE,CACrE,CAAC;YACF,MAAM,uBAAuB,GAAG,IAAI,sDAA2B,CAC7D,IAAI,EACJ,UAAU,CACX,CAAC;YACF,uBAAuB,CAAC,SAAS,EAAE,CAAC;QACtC,CAAC;QAED,eAAM,CAAC,IAAI,CACT,wBAAwB,UAAU,CAAC,UAAU,sBAAsB,UAAU,CAAC,SAAS,EAAE,CAC1F,CAAC;QACF,eAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAChB,eAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC3B,eAAM,CAAC,IAAI,CACT,+EAA+E,CAChF,CAAC;QACF,eAAM,CAAC,IAAI,CACT,gEAAgE,CACjE,CAAC;QACF,eAAM,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;QACjE,IAAI,UAAU,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;YACzC,eAAM,CAAC,IAAI,CACT,gEAAgE,CACjE,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,eAAM,CAAC,KAAK,CAAC,iCAAiC,KAAK,EAAE,CAAC,CAAC;QACvD,MAAM,KAAK,CAAC;IACd,CAAC;IAED,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAnFD,oEAmFC;AAED,kBAAe,4BAA4B,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { Tree } from "@nx/devkit";
2
+ import { NormalizedKosAddFutureToModelSchema } from "../schema";
3
+ /**
4
+ * Transformer that updates existing models to use the new @kosFutureAware decorator pattern
5
+ * with TypeScript interface merging for type safety.
6
+ */
7
+ export declare class ModelFileTransformer {
8
+ private tree;
9
+ private options;
10
+ constructor(tree: Tree, options: NormalizedKosAddFutureToModelSchema);
11
+ transform(): void;
12
+ private addESLintDisable;
13
+ private addImports;
14
+ private addServiceImport;
15
+ private addInterfaceMerging;
16
+ private addDecorator;
17
+ private updatePublicType;
18
+ private removeLegacySetup;
19
+ private addFutureMethod;
20
+ private addOnFutureUpdateMethod;
21
+ }
22
+ //# sourceMappingURL=model-transformer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model-transformer.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/plugins/kos-nx-plugin/src/generators/kos-add-future-to-model/lib/model-transformer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClC,OAAO,EAAE,mCAAmC,EAAE,MAAM,WAAW,CAAC;AAEhE;;;GAGG;AACH,qBAAa,oBAAoB;IAE7B,OAAO,CAAC,IAAI;IACZ,OAAO,CAAC,OAAO;gBADP,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,mCAAmC;IAGtD,SAAS,IAAI,IAAI;IAyBjB,OAAO,CAAC,gBAAgB;IAYxB,OAAO,CAAC,UAAU;IA6GlB,OAAO,CAAC,gBAAgB;IA+CxB,OAAO,CAAC,mBAAmB;IAqC3B,OAAO,CAAC,YAAY;IA2BpB,OAAO,CAAC,gBAAgB;IAwBxB,OAAO,CAAC,iBAAiB;IA4BzB,OAAO,CAAC,eAAe;IA+DvB,OAAO,CAAC,uBAAuB;CA8ChC"}