nesoi 3.3.11 → 3.3.12

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 (428) hide show
  1. package/LICENSE +21 -0
  2. package/build/README.md +41 -0
  3. package/{lib → build/lib}/bundler/browser/browser.bundler.js +4 -7
  4. package/{lib → build/lib}/bundler/browser/stages/8_replace_nesoi_for_browser_stage.js +1 -0
  5. package/{lib → build/lib}/bundler/distributed/distributed.bundler.js +6 -4
  6. package/{lib → build/lib}/bundler/distributed/stages/1_mkdir_stage.js +2 -0
  7. package/{lib → build/lib}/bundler/distributed/stages/2_build_typescript_stage.js +3 -1
  8. package/{lib → build/lib}/bundler/distributed/stages/3_copy_types_stage.js +2 -0
  9. package/{lib → build/lib}/bundler/distributed/stages/4_dump_modules_stage.js +2 -0
  10. package/{lib → build/lib}/bundler/monolyth/monolyth.bundler.js +7 -5
  11. package/{lib → build/lib}/bundler/monolyth/stages/1_mkdir_stage.js +2 -0
  12. package/{lib → build/lib}/bundler/monolyth/stages/2_build_typescript_stage.js +3 -1
  13. package/{lib → build/lib}/bundler/monolyth/stages/3_copy_types_stage.js +2 -0
  14. package/{lib → build/lib}/bundler/monolyth/stages/4_dump_modules_stage.js +2 -0
  15. package/{lib → build/lib}/bundler/monolyth/stages/5_copy_static_stage.js +2 -0
  16. package/{lib → build/lib}/bundler/monolyth/stages/6_dump_cli_stage.js +2 -0
  17. package/{lib → build/lib}/bundler/monolyth/stages/7_dump_package_json_stage.js +2 -0
  18. package/{lib → build/lib}/compiler/compiler.js +7 -2
  19. package/{lib → build/lib}/compiler/elements/bucket.element.js +3 -5
  20. package/{lib → build/lib}/compiler/elements/constants.element.js +2 -2
  21. package/{lib → build/lib}/compiler/elements/controller.element.js +1 -1
  22. package/{lib → build/lib}/compiler/elements/element.js +15 -2
  23. package/{lib → build/lib}/compiler/elements/externals.element.js +12 -4
  24. package/{lib → build/lib}/compiler/elements/message.element.js +7 -0
  25. package/{lib → build/lib}/compiler/module.js +6 -1
  26. package/{lib → build/lib}/compiler/stages/1_scan_stage.js +1 -0
  27. package/{lib → build/lib}/compiler/stages/2_treeshake_stage.js +1 -0
  28. package/{lib → build/lib}/compiler/stages/3_extract_ts_stage.js +1 -0
  29. package/{lib → build/lib}/compiler/stages/4_build_schemas_stage.js +3 -3
  30. package/{lib → build/lib}/compiler/stages/5_inject_ts_stage.js +1 -0
  31. package/{lib → build/lib}/compiler/stages/6_build_elements_stage.js +1 -0
  32. package/{lib → build/lib}/compiler/stages/7_dump_stage.js +5 -3
  33. package/{lib → build/lib}/compiler/stages/8_diagnose_stage.js +1 -0
  34. package/{lib → build/lib}/compiler/typescript/bridge/inject.js +1 -1
  35. package/{lib → build/lib}/compiler/typescript/bridge/organize.js +25 -32
  36. package/{lib → build/lib}/compiler/typescript/parser.js +10 -0
  37. package/{lib → build/lib}/compiler/typescript/source.js +6 -4
  38. package/{lib → build/lib}/compiler/typescript/typescript_compiler.js +8 -3
  39. package/{lib → build/lib}/elements/blocks/block.builder.js +16 -14
  40. package/{lib → build/lib}/elements/blocks/block.js +3 -0
  41. package/{lib → build/lib}/elements/blocks/block.schema.js +10 -1
  42. package/{lib → build/lib}/elements/blocks/job/internal/machine_job.builder.js +10 -3
  43. package/{lib → build/lib}/elements/blocks/job/internal/machine_job.schema.js +2 -0
  44. package/{lib → build/lib}/elements/blocks/job/internal/resource_job.builder.js +16 -4
  45. package/{lib → build/lib}/elements/blocks/job/internal/resource_job.schema.js +7 -0
  46. package/{lib → build/lib}/elements/blocks/job/job.builder.js +5 -3
  47. package/{lib → build/lib}/elements/blocks/job/job.js +2 -0
  48. package/{lib → build/lib}/elements/blocks/job/job.schema.js +11 -1
  49. package/{lib → build/lib}/elements/blocks/machine/machine.builder.js +6 -3
  50. package/{lib → build/lib}/elements/blocks/machine/machine.js +7 -0
  51. package/{lib → build/lib}/elements/blocks/machine/machine.schema.js +38 -3
  52. package/{lib → build/lib}/elements/blocks/machine/machine_state.builder.js +6 -4
  53. package/{lib → build/lib}/elements/blocks/machine/machine_transition.builder.js +8 -1
  54. package/{lib → build/lib}/elements/blocks/queue/adapters/bucket.queue_adapter.js +1 -0
  55. package/{lib → build/lib}/elements/blocks/queue/queue.builder.js +1 -1
  56. package/{lib → build/lib}/elements/blocks/queue/queue.js +2 -0
  57. package/{lib → build/lib}/elements/blocks/queue/queue.schema.js +7 -2
  58. package/{lib → build/lib}/elements/blocks/resource/resource.builder.js +4 -3
  59. package/{lib → build/lib}/elements/blocks/resource/resource.js +2 -0
  60. package/{lib → build/lib}/elements/blocks/resource/resource.schema.js +13 -1
  61. package/{lib → build/lib}/elements/blocks/topic/topic.builder.js +1 -1
  62. package/{lib → build/lib}/elements/blocks/topic/topic.js +3 -1
  63. package/{lib → build/lib}/elements/blocks/topic/topic.schema.js +8 -2
  64. package/{lib → build/lib}/elements/edge/controller/adapters/cli.controller_adapter.js +2 -5
  65. package/{lib → build/lib}/elements/edge/controller/adapters/controller_adapter.js +3 -0
  66. package/{lib → build/lib}/elements/edge/controller/controller.builder.js +32 -17
  67. package/{lib → build/lib}/elements/edge/controller/controller.js +10 -0
  68. package/{lib → build/lib}/elements/edge/controller/controller.schema.js +38 -5
  69. package/{lib → build/lib}/elements/edge/externals/externals.builder.js +9 -8
  70. package/{lib → build/lib}/elements/edge/externals/externals.schema.js +9 -1
  71. package/{lib → build/lib}/elements/entities/bucket/adapters/browserdb.bucket_adapter.js +7 -6
  72. package/{lib → build/lib}/elements/entities/bucket/adapters/browserdb.service.d.ts +1 -1
  73. package/{lib → build/lib}/elements/entities/bucket/adapters/browserdb.service.js +9 -10
  74. package/{lib → build/lib}/elements/entities/bucket/adapters/bucket_adapter.js +3 -0
  75. package/{lib → build/lib}/elements/entities/bucket/adapters/json.bucket_adapter.js +4 -2
  76. package/{lib → build/lib}/elements/entities/bucket/adapters/memory.bucket_adapter.js +3 -0
  77. package/{lib → build/lib}/elements/entities/bucket/adapters/memory.nql.js +1 -0
  78. package/{lib → build/lib}/elements/entities/bucket/bucket.builder.js +9 -3
  79. package/{lib → build/lib}/elements/entities/bucket/bucket.js +15 -8
  80. package/{lib → build/lib}/elements/entities/bucket/bucket.schema.js +14 -1
  81. package/{lib → build/lib}/elements/entities/bucket/cache/bucket_cache.js +10 -0
  82. package/{lib → build/lib}/elements/entities/bucket/graph/bucket_graph.builder.js +1 -3
  83. package/{lib → build/lib}/elements/entities/bucket/graph/bucket_graph.js +3 -0
  84. package/{lib → build/lib}/elements/entities/bucket/graph/bucket_graph.schema.js +13 -2
  85. package/{lib → build/lib}/elements/entities/bucket/graph/bucket_graph_link.builder.js +11 -2
  86. package/{lib → build/lib}/elements/entities/bucket/model/bucket_model.builder.js +2 -1
  87. package/{lib → build/lib}/elements/entities/bucket/model/bucket_model.convert.js +2 -1
  88. package/{lib → build/lib}/elements/entities/bucket/model/bucket_model.js +3 -0
  89. package/{lib → build/lib}/elements/entities/bucket/model/bucket_model.schema.js +15 -2
  90. package/{lib → build/lib}/elements/entities/bucket/model/bucket_model_field.builder.js +17 -4
  91. package/{lib → build/lib}/elements/entities/bucket/query/nql_compiler.js +28 -21
  92. package/{lib → build/lib}/elements/entities/bucket/query/nql_engine.js +2 -1
  93. package/{lib → build/lib}/elements/entities/bucket/view/bucket_view.builder.js +2 -1
  94. package/{lib → build/lib}/elements/entities/bucket/view/bucket_view.js +4 -3
  95. package/{lib → build/lib}/elements/entities/bucket/view/bucket_view.schema.js +13 -2
  96. package/{lib → build/lib}/elements/entities/bucket/view/bucket_view_field.builder.js +8 -1
  97. package/{lib → build/lib}/elements/entities/constants/constants.builder.js +12 -5
  98. package/{lib → build/lib}/elements/entities/constants/constants.js +1 -0
  99. package/{lib → build/lib}/elements/entities/constants/constants.schema.js +19 -3
  100. package/{lib → build/lib}/elements/entities/drive/drive_adapter.js +1 -0
  101. package/{lib → build/lib}/elements/entities/drive/local.drive_adapter.d.ts +1 -1
  102. package/{lib → build/lib}/elements/entities/drive/local.drive_adapter.js +1 -0
  103. package/{lib → build/lib}/elements/entities/message/message.builder.js +5 -2
  104. package/{lib → build/lib}/elements/entities/message/message.js +2 -0
  105. package/{lib → build/lib}/elements/entities/message/message.schema.js +7 -1
  106. package/{lib → build/lib}/elements/entities/message/message_parser.js +1 -0
  107. package/{lib → build/lib}/elements/entities/message/template/message_template.builder.js +2 -3
  108. package/{lib → build/lib}/elements/entities/message/template/message_template.schema.js +16 -2
  109. package/{lib → build/lib}/elements/entities/message/template/message_template_field.builder.js +14 -4
  110. package/{lib → build/lib}/engine/app/app.config.js +3 -2
  111. package/{lib → build/lib}/engine/app/app.js +21 -14
  112. package/{lib → build/lib}/engine/app/inc/inc.client.d.ts +1 -1
  113. package/{lib → build/lib}/engine/app/inc/inc.client.js +2 -0
  114. package/{lib → build/lib}/engine/app/inc/inc.server.d.ts +1 -1
  115. package/{lib → build/lib}/engine/app/inc/inc.server.js +3 -1
  116. package/{lib → build/lib}/engine/app/inline.app.js +4 -1
  117. package/{lib → build/lib}/engine/app/native/browser.app.js +2 -1
  118. package/{lib → build/lib}/engine/app/native/distributed.app.config.js +1 -0
  119. package/{lib → build/lib}/engine/app/native/distributed.app.js +2 -2
  120. package/{lib → build/lib}/engine/app/native/distributed_node.app.js +6 -1
  121. package/{lib → build/lib}/engine/app/native/monolyth.app.js +2 -0
  122. package/{lib → build/lib}/engine/app/service.js +8 -0
  123. package/{lib → build/lib}/engine/auth/zero.authn_provider.js +1 -4
  124. package/{lib → build/lib}/engine/cli/cli.js +6 -2
  125. package/{lib → build/lib}/engine/cli/cli_adapter.js +9 -1
  126. package/{lib → build/lib}/engine/cli/cli_input.js +6 -4
  127. package/{lib → build/lib}/engine/cli/script.js +8 -6
  128. package/{lib → build/lib}/engine/daemon.js +14 -0
  129. package/{lib → build/lib}/engine/data/date.js +3 -0
  130. package/{lib → build/lib}/engine/data/datetime.js +34 -26
  131. package/{lib → build/lib}/engine/data/decimal.js +6 -1
  132. package/{lib → build/lib}/engine/data/duration.js +28 -26
  133. package/{lib → build/lib}/engine/data/error.js +3 -0
  134. package/{lib → build/lib}/engine/data/file.js +21 -6
  135. package/{lib → build/lib}/engine/data/tree.js +3 -1
  136. package/{lib → build/lib}/engine/dependency.js +17 -0
  137. package/{lib → build/lib}/engine/module.js +35 -12
  138. package/{lib → build/lib}/engine/space.js +3 -2
  139. package/{lib → build/lib}/engine/transaction/nodes/bucket.trx_node.d.ts +1 -1
  140. package/{lib → build/lib}/engine/transaction/nodes/bucket.trx_node.js +10 -1
  141. package/{lib → build/lib}/engine/transaction/nodes/bucket_query.trx_node.js +9 -2
  142. package/{lib → build/lib}/engine/transaction/nodes/external.trx_node.js +3 -0
  143. package/{lib → build/lib}/engine/transaction/nodes/job.trx_node.js +5 -0
  144. package/{lib → build/lib}/engine/transaction/nodes/machine.trx_node.js +4 -0
  145. package/{lib → build/lib}/engine/transaction/nodes/queue.trx_node.js +4 -0
  146. package/{lib → build/lib}/engine/transaction/nodes/resource.trx_node.js +4 -0
  147. package/{lib → build/lib}/engine/transaction/nodes/topic.trx_node.js +4 -0
  148. package/{lib → build/lib}/engine/transaction/trx.js +18 -3
  149. package/{lib → build/lib}/engine/transaction/trx_engine.js +12 -1
  150. package/{lib → build/lib}/engine/transaction/trx_node.js +23 -11
  151. package/{lib → build/lib}/engine/tree.js +6 -5
  152. package/{lib → build/lib}/engine/util/crypto.js +17 -17
  153. package/{lib → build/lib}/engine/util/log.js +9 -9
  154. package/{lib → build/lib}/engine/util/path.js +1 -1
  155. package/{lib → build/lib}/engine/util/random.d.ts +1 -1
  156. package/build/lib/engine/util/regex.d.ts +3 -0
  157. package/build/lib/engine/util/regex.js +82 -0
  158. package/build/package.json +21 -0
  159. package/{tools → build/tools}/joaquin/mock.js +10 -0
  160. package/build/tsconfig.build.tsbuildinfo +1 -0
  161. package/index.d.ts +6 -0
  162. package/package.json +61 -23
  163. package/scripts/bundle.ts +65 -0
  164. package/scripts/bundle_browser.ts +106 -0
  165. package/scripts/util/file.ts +13 -0
  166. package/tsconfig.build.tsbuildinfo +0 -1
  167. package/{lib → build/lib}/bundler/browser/browser.bundler.d.ts +0 -0
  168. package/{lib → build/lib}/bundler/browser/stages/8_replace_nesoi_for_browser_stage.d.ts +0 -0
  169. package/{lib → build/lib}/bundler/distributed/distributed.bundler.d.ts +0 -0
  170. package/{lib → build/lib}/bundler/distributed/stages/1_mkdir_stage.d.ts +0 -0
  171. package/{lib → build/lib}/bundler/distributed/stages/2_build_typescript_stage.d.ts +0 -0
  172. package/{lib → build/lib}/bundler/distributed/stages/3_copy_types_stage.d.ts +0 -0
  173. package/{lib → build/lib}/bundler/distributed/stages/4_dump_modules_stage.d.ts +0 -0
  174. package/{lib → build/lib}/bundler/distributed/stages/5_copy_static_stage.d.ts +0 -0
  175. package/{lib → build/lib}/bundler/distributed/stages/5_copy_static_stage.js +0 -0
  176. package/{lib → build/lib}/bundler/distributed/stages/6_dump_cli_stage.d.ts +0 -0
  177. package/{lib → build/lib}/bundler/distributed/stages/6_dump_cli_stage.js +0 -0
  178. package/{lib → build/lib}/bundler/distributed/stages/7_dump_package_json_stage.d.ts +0 -0
  179. package/{lib → build/lib}/bundler/distributed/stages/7_dump_package_json_stage.js +0 -0
  180. package/{lib → build/lib}/bundler/monolyth/monolyth.bundler.d.ts +0 -0
  181. package/{lib → build/lib}/bundler/monolyth/stages/1_mkdir_stage.d.ts +0 -0
  182. package/{lib → build/lib}/bundler/monolyth/stages/2_build_typescript_stage.d.ts +0 -0
  183. package/{lib → build/lib}/bundler/monolyth/stages/3_copy_types_stage.d.ts +0 -0
  184. package/{lib → build/lib}/bundler/monolyth/stages/4_dump_modules_stage.d.ts +0 -0
  185. package/{lib → build/lib}/bundler/monolyth/stages/5_copy_static_stage.d.ts +0 -0
  186. package/{lib → build/lib}/bundler/monolyth/stages/6_dump_cli_stage.d.ts +0 -0
  187. package/{lib → build/lib}/bundler/monolyth/stages/7_dump_package_json_stage.d.ts +0 -0
  188. package/{lib → build/lib}/compiler/compiler.d.ts +0 -0
  189. package/{lib → build/lib}/compiler/elements/bucket.element.d.ts +0 -0
  190. package/{lib → build/lib}/compiler/elements/cached.element.d.ts +0 -0
  191. package/{lib → build/lib}/compiler/elements/cached.element.js +0 -0
  192. package/{lib → build/lib}/compiler/elements/constants.element.d.ts +0 -0
  193. package/{lib → build/lib}/compiler/elements/controller.element.d.ts +0 -0
  194. package/{lib → build/lib}/compiler/elements/element.d.ts +0 -0
  195. package/{lib → build/lib}/compiler/elements/externals.element.d.ts +0 -0
  196. package/{lib → build/lib}/compiler/elements/job.element.d.ts +0 -0
  197. package/{lib → build/lib}/compiler/elements/job.element.js +0 -0
  198. package/{lib → build/lib}/compiler/elements/machine.element.d.ts +0 -0
  199. package/{lib → build/lib}/compiler/elements/machine.element.js +0 -0
  200. package/{lib → build/lib}/compiler/elements/message.element.d.ts +0 -0
  201. package/{lib → build/lib}/compiler/elements/queue.element.d.ts +0 -0
  202. package/{lib → build/lib}/compiler/elements/queue.element.js +1 -1
  203. package/{lib → build/lib}/compiler/elements/resource.element.d.ts +0 -0
  204. package/{lib → build/lib}/compiler/elements/resource.element.js +0 -0
  205. package/{lib → build/lib}/compiler/elements/topic.element.d.ts +0 -0
  206. package/{lib → build/lib}/compiler/elements/topic.element.js +1 -1
  207. /package/{lib → build/lib}/compiler/error.d.ts +0 -0
  208. /package/{lib → build/lib}/compiler/error.js +0 -0
  209. /package/{lib → build/lib}/compiler/helpers/dump_helpers.d.ts +0 -0
  210. /package/{lib → build/lib}/compiler/helpers/dump_helpers.js +0 -0
  211. /package/{lib → build/lib}/compiler/index.d.ts +0 -0
  212. /package/{lib → build/lib}/compiler/index.js +0 -0
  213. /package/{lib → build/lib}/compiler/module.d.ts +0 -0
  214. /package/{lib → build/lib}/compiler/progressive.d.ts +0 -0
  215. /package/{lib → build/lib}/compiler/progressive.js +0 -0
  216. /package/{lib → build/lib}/compiler/stages/1_scan_stage.d.ts +0 -0
  217. /package/{lib → build/lib}/compiler/stages/2_treeshake_stage.d.ts +0 -0
  218. /package/{lib → build/lib}/compiler/stages/3_extract_ts_stage.d.ts +0 -0
  219. /package/{lib → build/lib}/compiler/stages/4_build_schemas_stage.d.ts +0 -0
  220. /package/{lib → build/lib}/compiler/stages/5_inject_ts_stage.d.ts +0 -0
  221. /package/{lib → build/lib}/compiler/stages/6_build_elements_stage.d.ts +0 -0
  222. /package/{lib → build/lib}/compiler/stages/7_dump_stage.d.ts +0 -0
  223. /package/{lib → build/lib}/compiler/stages/8_diagnose_stage.d.ts +0 -0
  224. /package/{lib → build/lib}/compiler/typescript/bridge/extract.d.ts +0 -0
  225. /package/{lib → build/lib}/compiler/typescript/bridge/extract.js +0 -0
  226. /package/{lib → build/lib}/compiler/typescript/bridge/inject.d.ts +0 -0
  227. /package/{lib → build/lib}/compiler/typescript/bridge/organize.d.ts +0 -0
  228. /package/{lib → build/lib}/compiler/typescript/error.d.ts +0 -0
  229. /package/{lib → build/lib}/compiler/typescript/error.js +0 -0
  230. /package/{lib → build/lib}/compiler/typescript/parser.d.ts +0 -0
  231. /package/{lib → build/lib}/compiler/typescript/source.d.ts +0 -0
  232. /package/{lib → build/lib}/compiler/typescript/transformers/app_inject.transformer.d.ts +0 -0
  233. /package/{lib → build/lib}/compiler/typescript/transformers/app_inject.transformer.js +0 -0
  234. /package/{lib → build/lib}/compiler/typescript/transformers/replace_import.transformer.d.ts +0 -0
  235. /package/{lib → build/lib}/compiler/typescript/transformers/replace_import.transformer.js +0 -0
  236. /package/{lib → build/lib}/compiler/typescript/typescript_compiler.d.ts +0 -0
  237. /package/{lib → build/lib}/elements/blocks/block.builder.d.ts +0 -0
  238. /package/{lib → build/lib}/elements/blocks/block.d.ts +0 -0
  239. /package/{lib → build/lib}/elements/blocks/block.schema.d.ts +0 -0
  240. /package/{lib → build/lib}/elements/blocks/job/internal/machine_job.builder.d.ts +0 -0
  241. /package/{lib → build/lib}/elements/blocks/job/internal/machine_job.schema.d.ts +0 -0
  242. /package/{lib → build/lib}/elements/blocks/job/internal/resource_job.builder.d.ts +0 -0
  243. /package/{lib → build/lib}/elements/blocks/job/internal/resource_job.d.ts +0 -0
  244. /package/{lib → build/lib}/elements/blocks/job/internal/resource_job.js +0 -0
  245. /package/{lib → build/lib}/elements/blocks/job/internal/resource_job.schema.d.ts +0 -0
  246. /package/{lib → build/lib}/elements/blocks/job/job.builder.d.ts +0 -0
  247. /package/{lib → build/lib}/elements/blocks/job/job.d.ts +0 -0
  248. /package/{lib → build/lib}/elements/blocks/job/job.schema.d.ts +0 -0
  249. /package/{lib → build/lib}/elements/blocks/job/job.types.d.ts +0 -0
  250. /package/{lib → build/lib}/elements/blocks/job/job.types.js +0 -0
  251. /package/{lib → build/lib}/elements/blocks/machine/machine.builder.d.ts +0 -0
  252. /package/{lib → build/lib}/elements/blocks/machine/machine.d.ts +0 -0
  253. /package/{lib → build/lib}/elements/blocks/machine/machine.schema.d.ts +0 -0
  254. /package/{lib → build/lib}/elements/blocks/machine/machine_state.builder.d.ts +0 -0
  255. /package/{lib → build/lib}/elements/blocks/machine/machine_transition.builder.d.ts +0 -0
  256. /package/{lib → build/lib}/elements/blocks/queue/adapters/bucket.queue_adapter.d.ts +0 -0
  257. /package/{lib → build/lib}/elements/blocks/queue/adapters/queue_adapter.d.ts +0 -0
  258. /package/{lib → build/lib}/elements/blocks/queue/adapters/queue_adapter.js +0 -0
  259. /package/{lib → build/lib}/elements/blocks/queue/queue.builder.d.ts +0 -0
  260. /package/{lib → build/lib}/elements/blocks/queue/queue.d.ts +0 -0
  261. /package/{lib → build/lib}/elements/blocks/queue/queue.schema.d.ts +0 -0
  262. /package/{lib → build/lib}/elements/blocks/resource/resource.builder.d.ts +0 -0
  263. /package/{lib → build/lib}/elements/blocks/resource/resource.d.ts +0 -0
  264. /package/{lib → build/lib}/elements/blocks/resource/resource.schema.d.ts +0 -0
  265. /package/{lib → build/lib}/elements/blocks/resource/resource.types.d.ts +0 -0
  266. /package/{lib → build/lib}/elements/blocks/resource/resource.types.js +0 -0
  267. /package/{lib → build/lib}/elements/blocks/topic/topic.builder.d.ts +0 -0
  268. /package/{lib → build/lib}/elements/blocks/topic/topic.d.ts +0 -0
  269. /package/{lib → build/lib}/elements/blocks/topic/topic.schema.d.ts +0 -0
  270. /package/{lib → build/lib}/elements/edge/controller/adapters/cli.controller_adapter.d.ts +0 -0
  271. /package/{lib → build/lib}/elements/edge/controller/adapters/controller_adapter.d.ts +0 -0
  272. /package/{lib → build/lib}/elements/edge/controller/controller.builder.d.ts +0 -0
  273. /package/{lib → build/lib}/elements/edge/controller/controller.config.d.ts +0 -0
  274. /package/{lib → build/lib}/elements/edge/controller/controller.config.js +0 -0
  275. /package/{lib → build/lib}/elements/edge/controller/controller.d.ts +0 -0
  276. /package/{lib → build/lib}/elements/edge/controller/controller.schema.d.ts +0 -0
  277. /package/{lib → build/lib}/elements/edge/externals/externals.builder.d.ts +0 -0
  278. /package/{lib → build/lib}/elements/edge/externals/externals.schema.d.ts +0 -0
  279. /package/{lib → build/lib}/elements/entities/bucket/adapters/browserdb.bucket_adapter.d.ts +0 -0
  280. /package/{lib → build/lib}/elements/entities/bucket/adapters/bucket_adapter.d.ts +0 -0
  281. /package/{lib → build/lib}/elements/entities/bucket/adapters/json.bucket_adapter.d.ts +0 -0
  282. /package/{lib → build/lib}/elements/entities/bucket/adapters/memory.bucket_adapter.d.ts +0 -0
  283. /package/{lib → build/lib}/elements/entities/bucket/adapters/memory.nql.d.ts +0 -0
  284. /package/{lib → build/lib}/elements/entities/bucket/bucket.builder.d.ts +0 -0
  285. /package/{lib → build/lib}/elements/entities/bucket/bucket.config.d.ts +0 -0
  286. /package/{lib → build/lib}/elements/entities/bucket/bucket.config.js +0 -0
  287. /package/{lib → build/lib}/elements/entities/bucket/bucket.d.ts +0 -0
  288. /package/{lib → build/lib}/elements/entities/bucket/bucket.infer.d.ts +0 -0
  289. /package/{lib → build/lib}/elements/entities/bucket/bucket.infer.js +0 -0
  290. /package/{lib → build/lib}/elements/entities/bucket/bucket.schema.d.ts +0 -0
  291. /package/{lib → build/lib}/elements/entities/bucket/bucket.types.d.ts +0 -0
  292. /package/{lib → build/lib}/elements/entities/bucket/bucket.types.js +0 -0
  293. /package/{lib → build/lib}/elements/entities/bucket/cache/bucket_cache.d.ts +0 -0
  294. /package/{lib → build/lib}/elements/entities/bucket/graph/bucket_graph.builder.d.ts +0 -0
  295. /package/{lib → build/lib}/elements/entities/bucket/graph/bucket_graph.d.ts +0 -0
  296. /package/{lib → build/lib}/elements/entities/bucket/graph/bucket_graph.infer.d.ts +0 -0
  297. /package/{lib → build/lib}/elements/entities/bucket/graph/bucket_graph.infer.js +0 -0
  298. /package/{lib → build/lib}/elements/entities/bucket/graph/bucket_graph.schema.d.ts +0 -0
  299. /package/{lib → build/lib}/elements/entities/bucket/graph/bucket_graph_link.builder.d.ts +0 -0
  300. /package/{lib → build/lib}/elements/entities/bucket/model/bucket_model.builder.d.ts +0 -0
  301. /package/{lib → build/lib}/elements/entities/bucket/model/bucket_model.convert.d.ts +0 -0
  302. /package/{lib → build/lib}/elements/entities/bucket/model/bucket_model.d.ts +0 -0
  303. /package/{lib → build/lib}/elements/entities/bucket/model/bucket_model.infer.d.ts +0 -0
  304. /package/{lib → build/lib}/elements/entities/bucket/model/bucket_model.infer.js +0 -0
  305. /package/{lib → build/lib}/elements/entities/bucket/model/bucket_model.schema.d.ts +0 -0
  306. /package/{lib → build/lib}/elements/entities/bucket/model/bucket_model_field.builder.d.ts +0 -0
  307. /package/{lib → build/lib}/elements/entities/bucket/query/nql.schema.d.ts +0 -0
  308. /package/{lib → build/lib}/elements/entities/bucket/query/nql.schema.js +0 -0
  309. /package/{lib → build/lib}/elements/entities/bucket/query/nql_compiler.d.ts +0 -0
  310. /package/{lib → build/lib}/elements/entities/bucket/query/nql_engine.d.ts +0 -0
  311. /package/{lib → build/lib}/elements/entities/bucket/view/bucket_view.builder.d.ts +0 -0
  312. /package/{lib → build/lib}/elements/entities/bucket/view/bucket_view.d.ts +0 -0
  313. /package/{lib → build/lib}/elements/entities/bucket/view/bucket_view.schema.d.ts +0 -0
  314. /package/{lib → build/lib}/elements/entities/bucket/view/bucket_view_field.builder.d.ts +0 -0
  315. /package/{lib → build/lib}/elements/entities/constants/constants.builder.d.ts +0 -0
  316. /package/{lib → build/lib}/elements/entities/constants/constants.d.ts +0 -0
  317. /package/{lib → build/lib}/elements/entities/constants/constants.schema.d.ts +0 -0
  318. /package/{lib → build/lib}/elements/entities/drive/drive_adapter.d.ts +0 -0
  319. /package/{lib → build/lib}/elements/entities/message/message.builder.d.ts +0 -0
  320. /package/{lib → build/lib}/elements/entities/message/message.d.ts +0 -0
  321. /package/{lib → build/lib}/elements/entities/message/message.infer.d.ts +0 -0
  322. /package/{lib → build/lib}/elements/entities/message/message.infer.js +0 -0
  323. /package/{lib → build/lib}/elements/entities/message/message.schema.d.ts +0 -0
  324. /package/{lib → build/lib}/elements/entities/message/message_parser.d.ts +0 -0
  325. /package/{lib → build/lib}/elements/entities/message/template/message_template.builder.d.ts +0 -0
  326. /package/{lib → build/lib}/elements/entities/message/template/message_template.schema.d.ts +0 -0
  327. /package/{lib → build/lib}/elements/entities/message/template/message_template_field.builder.d.ts +0 -0
  328. /package/{lib → build/lib}/elements/entities/message/template/message_template_parser.d.ts +0 -0
  329. /package/{lib → build/lib}/elements/entities/message/template/message_template_parser.js +0 -0
  330. /package/{lib → build/lib}/elements/index.d.ts +0 -0
  331. /package/{lib → build/lib}/elements/index.js +0 -0
  332. /package/{lib → build/lib}/engine/app/app.config.d.ts +0 -0
  333. /package/{lib → build/lib}/engine/app/app.d.ts +0 -0
  334. /package/{lib → build/lib}/engine/app/inc/sandbox.d.ts +0 -0
  335. /package/{lib → build/lib}/engine/app/inc/sandbox.js +0 -0
  336. /package/{lib → build/lib}/engine/app/inline.app.d.ts +0 -0
  337. /package/{lib → build/lib}/engine/app/native/browser.app.d.ts +0 -0
  338. /package/{lib → build/lib}/engine/app/native/distributed.app.config.d.ts +0 -0
  339. /package/{lib → build/lib}/engine/app/native/distributed.app.d.ts +0 -0
  340. /package/{lib → build/lib}/engine/app/native/distributed_node.app.d.ts +0 -0
  341. /package/{lib → build/lib}/engine/app/native/monolyth.app.config.d.ts +0 -0
  342. /package/{lib → build/lib}/engine/app/native/monolyth.app.config.js +0 -0
  343. /package/{lib → build/lib}/engine/app/native/monolyth.app.d.ts +0 -0
  344. /package/{lib → build/lib}/engine/app/service.d.ts +0 -0
  345. /package/{lib → build/lib}/engine/auth/authn.d.ts +0 -0
  346. /package/{lib → build/lib}/engine/auth/authn.js +0 -0
  347. /package/{lib → build/lib}/engine/auth/zero.authn_provider.d.ts +0 -0
  348. /package/{lib → build/lib}/engine/builder.d.ts +0 -0
  349. /package/{lib → build/lib}/engine/builder.js +0 -0
  350. /package/{lib → build/lib}/engine/cli/cli.d.ts +0 -0
  351. /package/{lib → build/lib}/engine/cli/cli_adapter.d.ts +0 -0
  352. /package/{lib → build/lib}/engine/cli/cli_input.d.ts +0 -0
  353. /package/{lib → build/lib}/engine/cli/script.d.ts +0 -0
  354. /package/{lib → build/lib}/engine/cli/ui.d.ts +0 -0
  355. /package/{lib → build/lib}/engine/cli/ui.js +0 -0
  356. /package/{lib → build/lib}/engine/daemon.d.ts +0 -0
  357. /package/{lib → build/lib}/engine/data/date.d.ts +0 -0
  358. /package/{lib → build/lib}/engine/data/datetime.d.ts +0 -0
  359. /package/{lib → build/lib}/engine/data/decimal.d.ts +0 -0
  360. /package/{lib → build/lib}/engine/data/duration.d.ts +0 -0
  361. /package/{lib → build/lib}/engine/data/error.d.ts +0 -0
  362. /package/{lib → build/lib}/engine/data/file.d.ts +0 -0
  363. /package/{lib → build/lib}/engine/data/json.d.ts +0 -0
  364. /package/{lib → build/lib}/engine/data/json.js +0 -0
  365. /package/{lib → build/lib}/engine/data/obj.d.ts +0 -0
  366. /package/{lib → build/lib}/engine/data/obj.js +0 -0
  367. /package/{lib → build/lib}/engine/data/trash.d.ts +0 -0
  368. /package/{lib → build/lib}/engine/data/trash.js +0 -0
  369. /package/{lib → build/lib}/engine/data/tree.d.ts +0 -0
  370. /package/{lib → build/lib}/engine/dependency.d.ts +0 -0
  371. /package/{lib → build/lib}/engine/module.d.ts +0 -0
  372. /package/{lib → build/lib}/engine/space.d.ts +0 -0
  373. /package/{lib → build/lib}/engine/transaction/nodes/bucket_query.trx_node.d.ts +0 -0
  374. /package/{lib → build/lib}/engine/transaction/nodes/external.trx_node.d.ts +0 -0
  375. /package/{lib → build/lib}/engine/transaction/nodes/job.trx_node.d.ts +0 -0
  376. /package/{lib → build/lib}/engine/transaction/nodes/machine.trx_node.d.ts +0 -0
  377. /package/{lib → build/lib}/engine/transaction/nodes/queue.trx_node.d.ts +0 -0
  378. /package/{lib → build/lib}/engine/transaction/nodes/resource.trx_node.d.ts +0 -0
  379. /package/{lib → build/lib}/engine/transaction/nodes/topic.trx_node.d.ts +0 -0
  380. /package/{lib → build/lib}/engine/transaction/trx.d.ts +0 -0
  381. /package/{lib → build/lib}/engine/transaction/trx_engine.config.d.ts +0 -0
  382. /package/{lib → build/lib}/engine/transaction/trx_engine.config.js +0 -0
  383. /package/{lib → build/lib}/engine/transaction/trx_engine.d.ts +0 -0
  384. /package/{lib → build/lib}/engine/transaction/trx_node.d.ts +0 -0
  385. /package/{lib → build/lib}/engine/tree.d.ts +0 -0
  386. /package/{lib → build/lib}/engine/treeshake.d.ts +0 -0
  387. /package/{lib → build/lib}/engine/treeshake.js +0 -0
  388. /package/{lib → build/lib}/engine/util/console.d.ts +0 -0
  389. /package/{lib → build/lib}/engine/util/console.js +0 -0
  390. /package/{lib → build/lib}/engine/util/crypto.d.ts +0 -0
  391. /package/{lib → build/lib}/engine/util/deep.d.ts +0 -0
  392. /package/{lib → build/lib}/engine/util/deep.js +0 -0
  393. /package/{lib → build/lib}/engine/util/dotenv.d.ts +0 -0
  394. /package/{lib → build/lib}/engine/util/dotenv.js +0 -0
  395. /package/{lib → build/lib}/engine/util/hash.d.ts +0 -0
  396. /package/{lib → build/lib}/engine/util/hash.js +0 -0
  397. /package/{lib → build/lib}/engine/util/i18n.d.ts +0 -0
  398. /package/{lib → build/lib}/engine/util/i18n.js +0 -0
  399. /package/{lib → build/lib}/engine/util/log.d.ts +0 -0
  400. /package/{lib → build/lib}/engine/util/mime.d.ts +0 -0
  401. /package/{lib → build/lib}/engine/util/mime.js +0 -0
  402. /package/{lib → build/lib}/engine/util/name_helpers.d.ts +0 -0
  403. /package/{lib → build/lib}/engine/util/name_helpers.js +0 -0
  404. /package/{lib → build/lib}/engine/util/parse.d.ts +0 -0
  405. /package/{lib → build/lib}/engine/util/parse.js +0 -0
  406. /package/{lib → build/lib}/engine/util/path.d.ts +0 -0
  407. /package/{lib → build/lib}/engine/util/promise.d.ts +0 -0
  408. /package/{lib → build/lib}/engine/util/promise.js +0 -0
  409. /package/{lib → build/lib}/engine/util/random.js +0 -0
  410. /package/{lib → build/lib}/engine/util/rules.d.ts +0 -0
  411. /package/{lib → build/lib}/engine/util/rules.js +0 -0
  412. /package/{lib → build/lib}/engine/util/shell.d.ts +0 -0
  413. /package/{lib → build/lib}/engine/util/shell.js +0 -0
  414. /package/{lib → build/lib}/engine/util/string.d.ts +0 -0
  415. /package/{lib → build/lib}/engine/util/string.js +0 -0
  416. /package/{lib → build/lib}/engine/util/type.d.ts +0 -0
  417. /package/{lib → build/lib}/engine/util/type.js +0 -0
  418. /package/{lib → build/lib}/schema.d.ts +0 -0
  419. /package/{lib → build/lib}/schema.js +0 -0
  420. /package/{tools → build/tools}/compile.d.ts +0 -0
  421. /package/{tools → build/tools}/compile.js +0 -0
  422. /package/{tools → build/tools}/joaquin/bucket.d.ts +0 -0
  423. /package/{tools → build/tools}/joaquin/bucket.js +0 -0
  424. /package/{tools → build/tools}/joaquin/job.d.ts +0 -0
  425. /package/{tools → build/tools}/joaquin/job.js +0 -0
  426. /package/{tools → build/tools}/joaquin/message.d.ts +0 -0
  427. /package/{tools → build/tools}/joaquin/message.js +0 -0
  428. /package/{tools → build/tools}/joaquin/mock.d.ts +0 -0
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 nesoi-org
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,41 @@
1
+ # Nesoi
2
+ Zero-dependency Typescript framework for data-driven applications.
3
+
4
+ ![Logo](/docs/header.png)
5
+
6
+ > :warning: This is a work-in-progress. Use it with caution.
7
+
8
+ ## Introduction
9
+
10
+ **nesoi** is a framework which makes it easy to implement data operations (crud, query, hidrate), jobs (synchronous or asynchronous), statecharts, queues, topics and controllers.
11
+
12
+ It does so through a _"builder-schema-element"_ paradigm, where you use _builders_ to declare _schemas_. Such _schemas_ are used by the _engine_ to build _elements_, which are runtime objects that perform actions inside _transactions_.
13
+
14
+
15
+ > `Builder` _-builds->_ `Schema` _-configures->_ `Element`
16
+
17
+ This paradigm allows declaring _modules_, which groups schemas into developer-chosen scopes. Such _modules_ are then used to declare _apps_, which are bundled ECMAScript (JS) applications.
18
+
19
+ ```
20
+ modules/
21
+ module1/
22
+ ...elements...
23
+ module2/
24
+ ...elements...
25
+ apps/
26
+ app1
27
+ app2
28
+ ```
29
+
30
+ When declaring an _app_, you plug _adapters_ into the _elements_, which allows them to interact with external aspects of your application, such as databases and topics. This means the schemas are agnostic and plural, allowing adapters to be changed without friction.
31
+
32
+ > A particular great feature of using _adapters_ for data sources - _buckets_ - is that queries can be performed accross different types of storage with a consistent syntax: NQL.
33
+
34
+ It offers a powerful engine for developing cloud or in-browser applications, and a robust plugin system for extending it's functionalities.
35
+
36
+ It also allows building and testing modules in isolation, then bundling them into different architectures.
37
+
38
+ ## Getting Started
39
+
40
+ - [Hands-On Guide](/docs/HANDS-ON.md): A quick practical read with a lot of examples.
41
+ - [Project Template](https://github.com/nesoi-org/nesoi-meta/tree/main/template): A minimal template for building a project with _nesoi_.
@@ -10,13 +10,10 @@ const console_1 = __importDefault(require("../../engine/util/console"));
10
10
  const log_1 = require("../../engine/util/log");
11
11
  const _8_replace_nesoi_for_browser_stage_1 = require("./stages/8_replace_nesoi_for_browser_stage");
12
12
  class BrowserBundler extends monolyth_bundler_1.MonolythBundler {
13
- constructor() {
14
- super(...arguments);
15
- this.tsconfig = {
16
- module: typescript_1.default.ModuleKind.ESNext,
17
- moduleResolution: typescript_1.default.ModuleResolutionKind.Bundler,
18
- };
19
- }
13
+ tsconfig = {
14
+ module: typescript_1.default.ModuleKind.ESNext,
15
+ moduleResolution: typescript_1.default.ModuleResolutionKind.Bundler,
16
+ };
20
17
  async run() {
21
18
  await super.run();
22
19
  console_1.default.header('Browser Bundler');
@@ -45,6 +45,7 @@ const path_1 = require("../../../engine/util/path");
45
45
  * @subcategory Stages
46
46
  */
47
47
  class ReplaceNesoiForBrowserStage {
48
+ bundler;
48
49
  constructor(bundler) {
49
50
  this.bundler = bundler;
50
51
  }
@@ -53,6 +53,10 @@ const app_1 = require("../../engine/app/app");
53
53
  const distributed_app_1 = require("../../engine/app/native/distributed.app");
54
54
  const path_1 = require("../../engine/util/path");
55
55
  class DistributedBundler {
56
+ compiler;
57
+ appPath;
58
+ config;
59
+ dirs;
56
60
  constructor(compiler, appPath, config = {}) {
57
61
  this.compiler = compiler;
58
62
  this.appPath = appPath;
@@ -82,20 +86,18 @@ class DistributedBundler {
82
86
  }
83
87
  }
84
88
  mergeServicePaths(app) {
85
- var _a;
86
89
  const services = app_1.App.getServices(app);
87
90
  for (const name in services) {
88
91
  const service = services[name];
89
92
  if (!service.libPaths)
90
93
  continue;
91
- (_a = this.config).libPaths ?? (_a.libPaths = []);
94
+ this.config.libPaths ??= [];
92
95
  this.config.libPaths.push(...service.libPaths);
93
96
  }
94
97
  }
95
98
  expandLibPaths() {
96
- var _a;
97
99
  const expandedPaths = [];
98
- (_a = this.config).libPaths ?? (_a.libPaths = []);
100
+ this.config.libPaths ??= [];
99
101
  for (const path of this.config.libPaths) {
100
102
  const expanded = path_1.Path.expandWildcard(path);
101
103
  expandedPaths.push(...expanded);
@@ -46,6 +46,8 @@ const log_1 = require("../../../engine/util/log");
46
46
  * @subcategory Stages
47
47
  */
48
48
  class MkdirStage {
49
+ bundler;
50
+ app;
49
51
  constructor(bundler, app) {
50
52
  this.bundler = bundler;
51
53
  this.app = app;
@@ -48,6 +48,8 @@ const app_1 = require("../../../engine/app/app");
48
48
  * @subcategory Stages
49
49
  */
50
50
  class BuildTypescriptStage {
51
+ bundler;
52
+ app;
51
53
  constructor(bundler, app) {
52
54
  this.bundler = bundler;
53
55
  this.app = app;
@@ -149,7 +151,7 @@ class BuildTypescriptStage {
149
151
  ...binFiles,
150
152
  ...moduleFiles
151
153
  ], {
152
- target: ts.ScriptTarget.ES2020,
154
+ target: ts.ScriptTarget.ES2022,
153
155
  module: ts.ModuleKind.CommonJS,
154
156
  moduleResolution: ts.ModuleResolutionKind.Node10,
155
157
  noEmitOnError: true,
@@ -48,6 +48,8 @@ const app_1 = require("../../../engine/app/app");
48
48
  * @subcategory Stages
49
49
  */
50
50
  class CopyTypesStage {
51
+ bundler;
52
+ app;
51
53
  constructor(bundler, app) {
52
54
  this.bundler = bundler;
53
55
  this.app = app;
@@ -46,6 +46,8 @@ const app_1 = require("../../../engine/app/app");
46
46
  * @subcategory Stages
47
47
  */
48
48
  class DumpModulesStage {
49
+ bundler;
50
+ app;
49
51
  constructor(bundler, app) {
50
52
  this.bundler = bundler;
51
53
  this.app = app;
@@ -53,11 +53,15 @@ const app_1 = require("../../engine/app/app");
53
53
  const monolyth_app_1 = require("../../engine/app/native/monolyth.app");
54
54
  const path_1 = require("../../engine/util/path");
55
55
  class MonolythBundler {
56
+ compiler;
57
+ appPath;
58
+ config;
59
+ tsconfig = {};
60
+ dirs;
56
61
  constructor(compiler, appPath, config = {}) {
57
62
  this.compiler = compiler;
58
63
  this.appPath = appPath;
59
64
  this.config = config;
60
- this.tsconfig = {};
61
65
  this.dirs = {};
62
66
  }
63
67
  async run() {
@@ -83,20 +87,18 @@ class MonolythBundler {
83
87
  }
84
88
  }
85
89
  mergeServicePaths(app) {
86
- var _a;
87
90
  const services = app_1.App.getServices(app);
88
91
  for (const name in services) {
89
92
  const service = services[name];
90
93
  if (!service.libPaths)
91
94
  continue;
92
- (_a = this.config).libPaths ?? (_a.libPaths = []);
95
+ this.config.libPaths ??= [];
93
96
  this.config.libPaths.push(...service.libPaths);
94
97
  }
95
98
  }
96
99
  expandLibPaths() {
97
- var _a;
98
100
  const expandedPaths = [];
99
- (_a = this.config).libPaths ?? (_a.libPaths = []);
101
+ this.config.libPaths ??= [];
100
102
  for (const path of this.config.libPaths) {
101
103
  const expanded = path_1.Path.expandWildcard(path);
102
104
  expandedPaths.push(...expanded);
@@ -46,6 +46,8 @@ const log_1 = require("../../../engine/util/log");
46
46
  * @subcategory Stages
47
47
  */
48
48
  class MkdirStage {
49
+ bundler;
50
+ app;
49
51
  constructor(bundler, app) {
50
52
  this.bundler = bundler;
51
53
  this.app = app;
@@ -48,6 +48,8 @@ const app_1 = require("../../../engine/app/app");
48
48
  * @subcategory Stages
49
49
  */
50
50
  class BuildTypescriptStage {
51
+ bundler;
52
+ app;
51
53
  constructor(bundler, app) {
52
54
  this.bundler = bundler;
53
55
  this.app = app;
@@ -146,7 +148,7 @@ class BuildTypescriptStage {
146
148
  ...binFiles,
147
149
  ...moduleFiles
148
150
  ], {
149
- target: ts.ScriptTarget.ES2020,
151
+ target: ts.ScriptTarget.ES2022,
150
152
  module: ts.ModuleKind.CommonJS,
151
153
  moduleResolution: ts.ModuleResolutionKind.Node10,
152
154
  noEmitOnError: true,
@@ -48,6 +48,8 @@ const app_1 = require("../../../engine/app/app");
48
48
  * @subcategory Stages
49
49
  */
50
50
  class CopyTypesStage {
51
+ bundler;
52
+ app;
51
53
  constructor(bundler, app) {
52
54
  this.bundler = bundler;
53
55
  this.app = app;
@@ -50,6 +50,8 @@ const typescript_1 = __importDefault(require("typescript"));
50
50
  * @subcategory Stages
51
51
  */
52
52
  class DumpModulesStage {
53
+ bundler;
54
+ app;
53
55
  constructor(bundler, app) {
54
56
  this.bundler = bundler;
55
57
  this.app = app;
@@ -47,6 +47,8 @@ const space_1 = require("../../../engine/space");
47
47
  * @subcategory Stages
48
48
  */
49
49
  class CopyStaticStage {
50
+ bundler;
51
+ app;
50
52
  constructor(bundler, app) {
51
53
  this.bundler = bundler;
52
54
  this.app = app;
@@ -45,6 +45,8 @@ const log_1 = require("../../../engine/util/log");
45
45
  * @subcategory Stages
46
46
  */
47
47
  class DumpCLIStage {
48
+ bundler;
49
+ app;
48
50
  constructor(bundler, app) {
49
51
  this.bundler = bundler;
50
52
  this.app = app;
@@ -48,6 +48,8 @@ const app_1 = require("../../../engine/app/app");
48
48
  * @subcategory Stages
49
49
  */
50
50
  class DumpPackageJsonStage {
51
+ bundler;
52
+ app;
51
53
  constructor(bundler, app) {
52
54
  this.bundler = bundler;
53
55
  this.app = app;
@@ -19,13 +19,18 @@ const console_1 = __importDefault(require("../engine/util/console"));
19
19
  const log_1 = require("../engine/util/log");
20
20
  const fs_1 = __importDefault(require("fs"));
21
21
  class Compiler {
22
+ space;
23
+ config;
24
+ modules = {};
25
+ tree;
26
+ tsCompiler;
27
+ logFn;
22
28
  constructor(space, config) {
23
29
  this.space = space;
24
30
  this.config = config;
25
- this.modules = {};
26
- this.tree = new tree_1.ModuleTree({}, this.config);
27
31
  console_1.default.header('Compiler');
28
32
  log_1.Log.info('compiler', 'ts', 'Loading TypeScript...');
33
+ this.tree = new tree_1.ModuleTree({}, this.config);
29
34
  this.tsCompiler = new typescript_compiler_1.TypeScriptCompiler(space, config?.nesoiPath);
30
35
  }
31
36
  async run() {
@@ -5,6 +5,7 @@ const bucket_model_schema_1 = require("../../elements/entities/bucket/model/buck
5
5
  const element_1 = require("./element");
6
6
  const dump_helpers_1 = require("../helpers/dump_helpers");
7
7
  const name_helpers_1 = require("../../engine/util/name_helpers");
8
+ const regex_1 = require("../../engine/util/regex");
8
9
  class BucketElement extends element_1.Element {
9
10
  // Prepare
10
11
  prepare() {
@@ -97,11 +98,8 @@ class BucketElement extends element_1.Element {
97
98
  type = 'string';
98
99
  }
99
100
  else if (field.type === 'literal') {
100
- const regex = field.meta.literal.template;
101
- const rtype = regex
102
- .replace(/[.][*+]/g, '${string}')
103
- .replace(/\\d[*+]?/g, '${number}')
104
- .replace(/\\(.)/g, '$1');
101
+ const regex = field.meta.literal.template.toString();
102
+ const rtype = regex_1.NesoiRegex.toTemplateString(regex);
105
103
  type = `\`${rtype}\``;
106
104
  }
107
105
  else if (field.type === 'obj') {
@@ -54,10 +54,10 @@ class ConstantsElement extends element_1.Element {
54
54
  let node = enumTree;
55
55
  split.forEach((part, i) => {
56
56
  key += key.length ? `.${part}` : part;
57
- node[part] ?? (node[part] = {
57
+ node[part] ??= {
58
58
  _enum: `${this.typeName}['enums']['${key}']`,
59
59
  _subs: []
60
- });
60
+ };
61
61
  if (i < split.length - 1) {
62
62
  if (!node[part]._subs.includes(split[i + 1])) {
63
63
  node[part]._subs.push(split[i + 1]);
@@ -13,9 +13,9 @@ class ControllerElement extends element_1.Element {
13
13
  const type = dump_helpers_1.DumpHelpers.dumpValueToType(this.schema);
14
14
  const input = this.schema.input.map(tag => name_helpers_1.NameHelpers.tagType(tag, this.module)).join(' | ');
15
15
  return {
16
+ ...type,
16
17
  '#authn': element_1.Element.makeAuthnType(this.schema.auth),
17
18
  '#input': input,
18
- ...type
19
19
  };
20
20
  }
21
21
  }
@@ -6,6 +6,21 @@ const name_helpers_1 = require("../../engine/util/name_helpers");
6
6
  const dump_helpers_1 = require("../helpers/dump_helpers");
7
7
  /* @nesoi:browser ignore-end */
8
8
  class Element {
9
+ compiler;
10
+ module;
11
+ $t;
12
+ files;
13
+ schema;
14
+ dependencies;
15
+ inlineRoot;
16
+ bridge;
17
+ static Any = Symbol('undefined as any');
18
+ static Never = Symbol('undefined as never');
19
+ type;
20
+ tag;
21
+ lowName;
22
+ highName;
23
+ typeName;
9
24
  constructor(compiler, module, $t, files, schema, dependencies, inlineRoot, bridge) {
10
25
  this.compiler = compiler;
11
26
  this.module = module;
@@ -108,5 +123,3 @@ class Element {
108
123
  }
109
124
  }
110
125
  exports.Element = Element;
111
- Element.Any = Symbol('undefined as any');
112
- Element.Never = Symbol('undefined as never');
@@ -4,6 +4,18 @@ exports.ExternalsElement = void 0;
4
4
  const element_1 = require("./element");
5
5
  const dump_helpers_1 = require("../helpers/dump_helpers");
6
6
  class ExternalsElement extends element_1.Element {
7
+ compiler;
8
+ module;
9
+ $t;
10
+ files;
11
+ schema;
12
+ dependencies;
13
+ inlineRoot;
14
+ bridge;
15
+ elements = {
16
+ bucket: {},
17
+ job: {}
18
+ };
7
19
  constructor(compiler, module, $t, files, schema, dependencies, inlineRoot, bridge) {
8
20
  super(compiler, module, $t, files, schema, dependencies, inlineRoot, bridge);
9
21
  this.compiler = compiler;
@@ -14,10 +26,6 @@ class ExternalsElement extends element_1.Element {
14
26
  this.dependencies = dependencies;
15
27
  this.inlineRoot = inlineRoot;
16
28
  this.bridge = bridge;
17
- this.elements = {
18
- bucket: {},
19
- job: {}
20
- };
21
29
  }
22
30
  buildType() {
23
31
  return {};
@@ -4,6 +4,7 @@ exports.MessageElement = void 0;
4
4
  const element_1 = require("./element");
5
5
  const dump_helpers_1 = require("../helpers/dump_helpers");
6
6
  const name_helpers_1 = require("../../engine/util/name_helpers");
7
+ const regex_1 = require("../../engine/util/regex");
7
8
  class MessageElement extends element_1.Element {
8
9
  prepare() {
9
10
  this.schema['#raw'] = element_1.Element.Any;
@@ -152,6 +153,12 @@ class MessageElement extends element_1.Element {
152
153
  input[key] = '(' + Object.values(child.input).map(t => dump_helpers_1.DumpHelpers.dumpType(t)).join(' | ') + ')';
153
154
  output[key] = '(' + Object.values(child.output).map(t => dump_helpers_1.DumpHelpers.dumpType(t)).join(' | ') + ')';
154
155
  }
156
+ else if (field.type === 'literal') {
157
+ const regex = field.meta.literal.template;
158
+ const rtype = regex_1.NesoiRegex.toTemplateString(regex);
159
+ input[key] = `\`${rtype}\``;
160
+ output[key] = `\`${rtype}\``;
161
+ }
155
162
  else if (field.type === 'msg') {
156
163
  input[key] = 'any';
157
164
  output[key] = 'any';
@@ -51,9 +51,14 @@ const queue_element_1 = require("./elements/queue.element");
51
51
  const cached_element_1 = require("./elements/cached.element");
52
52
  const topic_element_1 = require("./elements/topic.element");
53
53
  class CompilerModule {
54
+ compiler;
55
+ lowName;
56
+ highName;
57
+ typeName;
58
+ module;
59
+ elements = [];
54
60
  constructor(compiler, name, path, subdir = []) {
55
61
  this.compiler = compiler;
56
- this.elements = [];
57
62
  this.lowName = name;
58
63
  this.highName = name_helpers_1.NameHelpers.nameLowToHigh(this.lowName);
59
64
  this.typeName = this.highName + 'Module';
@@ -12,6 +12,7 @@ const log_1 = require("../../engine/util/log");
12
12
  * @subcategory Stages
13
13
  */
14
14
  class ScanStage {
15
+ compiler;
15
16
  constructor(compiler) {
16
17
  this.compiler = compiler;
17
18
  }
@@ -14,6 +14,7 @@ const progressive_1 = require("../progressive");
14
14
  * @subcategory Stages
15
15
  */
16
16
  class TreeshakeStage {
17
+ compiler;
17
18
  constructor(compiler) {
18
19
  this.compiler = compiler;
19
20
  }
@@ -12,6 +12,7 @@ const organize_1 = require("../typescript/bridge/organize");
12
12
  * @subcategory Stages
13
13
  */
14
14
  class ExtractTSStage {
15
+ compiler;
15
16
  constructor(compiler) {
16
17
  this.compiler = compiler;
17
18
  }
@@ -11,6 +11,7 @@ const builder_1 = require("../../engine/builder");
11
11
  * @subcategory Stages
12
12
  */
13
13
  class BuildSchemasStage {
14
+ compiler;
14
15
  constructor(compiler) {
15
16
  this.compiler = compiler;
16
17
  }
@@ -18,7 +19,6 @@ class BuildSchemasStage {
18
19
  log_1.Log.info('compiler', 'stage.build_schemas', 'Building schemas...');
19
20
  const t0 = new Date().getTime();
20
21
  await this.compiler.tree.traverse('Building schemas ', async (node) => {
21
- var _a;
22
22
  const module = this.compiler.modules[node.tag.module].module;
23
23
  if (node.progressive) {
24
24
  await module.inject({
@@ -28,8 +28,8 @@ class BuildSchemasStage {
28
28
  }
29
29
  // Accummulate imports from depencies
30
30
  // (Given that dependencies are built in order)
31
- node.bridge ?? (node.bridge = { imports: [] });
32
- (_a = node.bridge).imports ?? (_a.imports = []);
31
+ node.bridge ??= { imports: [] };
32
+ node.bridge.imports ??= [];
33
33
  for (const dep of node.dependencies) {
34
34
  // If a dependency is inline and the node is it's root,
35
35
  // they already share imports.
@@ -11,6 +11,7 @@ const inject_1 = require("../typescript/bridge/inject");
11
11
  * @subcategory Stages
12
12
  */
13
13
  class InjectTSStage {
14
+ compiler;
14
15
  constructor(compiler) {
15
16
  this.compiler = compiler;
16
17
  }
@@ -11,6 +11,7 @@ const log_1 = require("../../engine/util/log");
11
11
  * @subcategory Stages
12
12
  */
13
13
  class BuildElementsStage {
14
+ compiler;
14
15
  constructor(compiler) {
15
16
  this.compiler = compiler;
16
17
  }
@@ -55,6 +55,9 @@ const progressive_1 = require("../progressive");
55
55
  * @subcategory Stages
56
56
  */
57
57
  class DumpStage {
58
+ compiler;
59
+ cache;
60
+ hash;
58
61
  constructor(compiler) {
59
62
  this.compiler = compiler;
60
63
  }
@@ -156,7 +159,6 @@ class DumpStage {
156
159
  });
157
160
  }
158
161
  dumpModuleType(module, spaceType, dumpDir) {
159
- var _a, _b;
160
162
  const nesoiPath = this.compiler.config?.nesoiPath ?? 'nesoi';
161
163
  const moduleFile = [];
162
164
  moduleFile.push(`import { $Module, $Constants, $Bucket, $Message, $Job, $Resource, $Machine, $Controller, $Queue, $Topic } from '${nesoiPath}/lib/elements';`);
@@ -186,11 +188,11 @@ class DumpStage {
186
188
  // Dump external imports
187
189
  moduleFile.push(...Array.from(moduleDependencies)
188
190
  .map(module => `import ${name_helpers_1.NameHelpers.nameLowToHigh(module)}Module from './${module}.module'`));
189
- (_a = this.cache.modules)[_b = module.lowName] ?? (_a[_b] = {
191
+ this.cache.modules[module.lowName] ??= {
190
192
  dependencies: {
191
193
  modules: []
192
194
  }
193
- });
195
+ };
194
196
  this.cache.modules[module.lowName].dependencies.modules = Array.from(moduleDependencies);
195
197
  // Build module type (with all elements)
196
198
  const type = this.makeModuleType(module);
@@ -16,6 +16,7 @@ const log_1 = require("../../engine/util/log");
16
16
  * @subcategory Stages
17
17
  */
18
18
  class DiagnoseStage {
19
+ compiler;
19
20
  constructor(compiler) {
20
21
  this.compiler = compiler;
21
22
  }
@@ -158,7 +158,7 @@ class TSBridgeInject {
158
158
  };
159
159
  }
160
160
  if (extract.outputRaw) {
161
- schema.output ?? (schema.output = {});
161
+ schema.output ??= {};
162
162
  schema.output.raw = extract.outputRaw;
163
163
  schema['#output'] = undefined; // Will be recalculated by element based on output
164
164
  }