@tstdl/base 0.85.14 → 0.86.0-beta2

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 (722) hide show
  1. package/api/client/client.js +109 -125
  2. package/api/client/index.js +1 -18
  3. package/api/default-error-handlers.js +18 -44
  4. package/api/index.js +14 -20
  5. package/api/response.js +99 -123
  6. package/api/server/api-controller.js +42 -70
  7. package/api/server/api-request-token.provider.js +12 -40
  8. package/api/server/error-handler.js +25 -46
  9. package/api/server/gateway.js +207 -213
  10. package/api/server/index.js +5 -22
  11. package/api/server/middlewares/allowed-methods.middleware.js +17 -40
  12. package/api/server/middlewares/catch-error.middleware.js +12 -33
  13. package/api/server/middlewares/cors.middleware.js +49 -69
  14. package/api/server/middlewares/index.js +4 -21
  15. package/api/server/middlewares/response-time.middleware.js +8 -31
  16. package/api/server/module.js +18 -42
  17. package/api/server/tokens.js +2 -25
  18. package/api/types.js +14 -40
  19. package/api/utils.js +13 -36
  20. package/application/application.js +155 -175
  21. package/application/index.js +1 -18
  22. package/async-iterator-symbol.js +5 -28
  23. package/authentication/authentication.api.js +89 -113
  24. package/authentication/client/api.client.js +28 -57
  25. package/authentication/client/authentication.service.js +223 -250
  26. package/authentication/client/http-client.middleware.js +21 -44
  27. package/authentication/client/index.js +5 -22
  28. package/authentication/client/module.js +15 -38
  29. package/authentication/client/tokens.js +5 -29
  30. package/authentication/errors/index.js +1 -18
  31. package/authentication/errors/secret-requirements.error.js +6 -29
  32. package/authentication/index.js +2 -19
  33. package/authentication/models/authentication-credentials.model.js +37 -66
  34. package/authentication/models/authentication-session.model.js +51 -80
  35. package/authentication/models/index.js +6 -23
  36. package/authentication/models/init-secret-reset-data.model.js +16 -44
  37. package/authentication/models/secret-check-result.model.js +9 -36
  38. package/authentication/models/token-payload-base.model.js +31 -59
  39. package/authentication/models/token.model.js +1 -16
  40. package/authentication/server/authentication-api-request-token.provider.js +24 -52
  41. package/authentication/server/authentication-credentials.repository.js +1 -24
  42. package/authentication/server/authentication-secret-requirements.validator.js +23 -51
  43. package/authentication/server/authentication-secret-reset.handler.js +1 -24
  44. package/authentication/server/authentication-session.repository.js +1 -24
  45. package/authentication/server/authentication-subject.resolver.js +5 -24
  46. package/authentication/server/authentication-token-payload.provider.js +5 -29
  47. package/authentication/server/authentication.api-controller.js +88 -114
  48. package/authentication/server/authentication.service.js +265 -301
  49. package/authentication/server/helper.js +66 -87
  50. package/authentication/server/index.js +11 -28
  51. package/authentication/server/module.js +25 -47
  52. package/authentication/server/mongo/index.js +2 -19
  53. package/authentication/server/mongo/mongo-authentication-credentials.repository.js +52 -84
  54. package/authentication/server/mongo/mongo-authentication-session.repository.js +49 -81
  55. package/browser/browser-context-controller.js +71 -99
  56. package/browser/browser-controller.js +73 -100
  57. package/browser/browser.service.js +83 -114
  58. package/browser/document-controller.js +48 -81
  59. package/browser/element-controller.js +139 -160
  60. package/browser/frame-controller.js +27 -50
  61. package/browser/index.js +10 -27
  62. package/browser/locator-controller.js +36 -59
  63. package/browser/module.js +23 -47
  64. package/browser/page-controller.js +89 -108
  65. package/browser/pdf-options.js +73 -103
  66. package/browser/types.js +1 -16
  67. package/browser/utils.js +77 -107
  68. package/collections/awaitable/awaitable-list.js +99 -122
  69. package/collections/awaitable/awaitable-map.js +93 -116
  70. package/collections/awaitable/awaitable-set.js +63 -86
  71. package/collections/awaitable/index.js +3 -20
  72. package/collections/collection.js +1 -16
  73. package/collections/index.js +6 -23
  74. package/collections/keyed-set.js +53 -77
  75. package/collections/list.js +1 -16
  76. package/collections/observable/index.js +8 -25
  77. package/collections/observable/observable-array.js +95 -118
  78. package/collections/observable/observable-collection-base.js +60 -83
  79. package/collections/observable/observable-collection.js +1 -16
  80. package/collections/observable/observable-list-base.js +55 -78
  81. package/collections/observable/observable-list.js +1 -16
  82. package/collections/observable/observable-map.js +56 -79
  83. package/collections/observable/observable-set.js +75 -98
  84. package/collections/observable/observable-sorted-array-list.js +165 -188
  85. package/collections/sorted-array-list.js +156 -179
  86. package/collections/sorted-list.js +1 -16
  87. package/collections/sorted-map.js +70 -93
  88. package/container/container.js +422 -437
  89. package/container/decorators.js +112 -96
  90. package/container/index.js +10 -27
  91. package/container/interfaces.js +2 -26
  92. package/container/provider.js +28 -59
  93. package/container/resolve-chain.js +74 -99
  94. package/container/resolve.error.js +10 -35
  95. package/container/token.js +17 -38
  96. package/container/type-info.js +1 -16
  97. package/container/types.js +1 -16
  98. package/container/utils.js +18 -42
  99. package/cookie/cookie.js +49 -71
  100. package/cookie/index.js +1 -18
  101. package/core.js +46 -75
  102. package/data-structures/array-dictionary.js +89 -110
  103. package/data-structures/array-list.js +105 -128
  104. package/data-structures/cache.js +41 -64
  105. package/data-structures/circular-buffer.js +195 -216
  106. package/data-structures/collection.js +86 -109
  107. package/data-structures/dictionary.js +51 -75
  108. package/data-structures/index-out-of-bounds.error.js +8 -31
  109. package/data-structures/index.js +15 -32
  110. package/data-structures/iterable-weak-map.js +129 -149
  111. package/data-structures/linked-list.js +367 -385
  112. package/data-structures/list.js +78 -101
  113. package/data-structures/map-dictionary.js +55 -78
  114. package/data-structures/multi-key-map.js +138 -161
  115. package/data-structures/set.js +54 -77
  116. package/data-structures/sorted-array-list.js +142 -169
  117. package/data-structures/weak-ref-map.js +123 -143
  118. package/database/entity-repository.js +2 -26
  119. package/database/entity.js +1 -16
  120. package/database/id.js +8 -29
  121. package/database/index.js +6 -23
  122. package/database/module.js +9 -33
  123. package/database/mongo/classes.js +13 -42
  124. package/database/mongo/index.js +10 -27
  125. package/database/mongo/model/document.js +62 -93
  126. package/database/mongo/model/index.js +1 -18
  127. package/database/mongo/module.js +51 -71
  128. package/database/mongo/mongo-base.repository.js +259 -283
  129. package/database/mongo/mongo-bulk.js +87 -110
  130. package/database/mongo/mongo-entity-repository.js +270 -296
  131. package/database/mongo/operations.js +48 -76
  132. package/database/mongo/query-converter.js +73 -96
  133. package/database/mongo/simple-entity-repository.js +5 -28
  134. package/database/mongo/types.js +2 -25
  135. package/database/query.js +7 -36
  136. package/database/utils.js +2 -25
  137. package/disposable/async-disposer.js +93 -105
  138. package/disposable/disposable.js +7 -33
  139. package/disposable/index.js +3 -20
  140. package/disposable/using.js +15 -37
  141. package/distributed-loop/controller.js +1 -16
  142. package/distributed-loop/distributed-loop.js +78 -105
  143. package/distributed-loop/index.js +3 -20
  144. package/distributed-loop/provider.js +20 -48
  145. package/enumerable/async-enumerable.js +238 -261
  146. package/enumerable/enumerable-methods.js +1 -16
  147. package/enumerable/enumerable.js +177 -200
  148. package/enumerable/index.js +2 -19
  149. package/environment.js +25 -57
  150. package/error/api.error.js +10 -33
  151. package/error/assertion.error.js +6 -29
  152. package/error/bad-request.error.js +6 -29
  153. package/error/custom.error.js +25 -47
  154. package/error/details.error.js +8 -31
  155. package/error/forbidden.error.js +6 -29
  156. package/error/index.js +16 -33
  157. package/error/invalid-token.error.js +6 -29
  158. package/error/max-bytes-exceeded.error.js +9 -32
  159. package/error/method-not-allowed.error.js +6 -29
  160. package/error/multi.error.js +8 -31
  161. package/error/not-found.error.js +6 -29
  162. package/error/not-implemented.error.js +6 -29
  163. package/error/not-supported.error.js +11 -34
  164. package/error/timeout.error.js +6 -29
  165. package/error/unauthorized.error.js +6 -29
  166. package/error/unsupported-media-type.error.js +6 -29
  167. package/examples/api/authentication.js +40 -40
  168. package/examples/api/basic-overview.js +81 -86
  169. package/examples/api/custom-authentication.js +61 -66
  170. package/examples/api/streaming.js +89 -94
  171. package/examples/browser/basic.js +20 -21
  172. package/examples/http/client.js +12 -13
  173. package/examples/mail/basic.js +35 -36
  174. package/examples/mail/templates/hello-name.js +10 -33
  175. package/examples/pdf/basic.js +44 -45
  176. package/examples/pdf/templates/hello-name.js +35 -58
  177. package/examples/reflection/basic.js +52 -84
  178. package/examples/template/basic.js +30 -31
  179. package/examples/template/templates/hello-jsx.js +8 -32
  180. package/examples/template/templates/hello-name.js +18 -41
  181. package/global-this.js +17 -36
  182. package/http/client/adapters/undici-http-client.adapter.js +90 -110
  183. package/http/client/http-client-options.js +14 -37
  184. package/http/client/http-client-request.js +149 -171
  185. package/http/client/http-client-response.js +33 -56
  186. package/http/client/http-client.adapter.js +1 -24
  187. package/http/client/http-client.js +301 -322
  188. package/http/client/index.js +6 -23
  189. package/http/client/module.js +15 -38
  190. package/http/cookie-parser.js +19 -42
  191. package/http/http-body.js +52 -75
  192. package/http/http-form.js +14 -37
  193. package/http/http-headers.js +86 -109
  194. package/http/http-query.js +14 -37
  195. package/http/http-url-parameters.js +8 -31
  196. package/http/http-value-map.js +110 -133
  197. package/http/http.error.js +60 -82
  198. package/http/index.js +11 -28
  199. package/http/server/http-server-request.js +24 -47
  200. package/http/server/http-server-response.js +22 -45
  201. package/http/server/http-server.js +2 -25
  202. package/http/server/index.js +3 -20
  203. package/http/server/node/index.js +2 -19
  204. package/http/server/node/module.js +8 -28
  205. package/http/server/node/node-http-server.js +208 -234
  206. package/http/types.js +21 -47
  207. package/http/utils.js +92 -108
  208. package/image-service/image-service.js +59 -91
  209. package/image-service/imgproxy/imgproxy-image-service.js +86 -124
  210. package/image-service/imgproxy/index.js +1 -18
  211. package/image-service/index.js +1 -18
  212. package/import.js +2 -25
  213. package/index.js +1 -18
  214. package/interfaces.js +1 -16
  215. package/json-path/index.js +1 -18
  216. package/json-path/json-path.js +138 -138
  217. package/key-value-store/index.js +2 -19
  218. package/key-value-store/key-value-store.provider.js +1 -24
  219. package/key-value-store/key-value.store.js +6 -29
  220. package/key-value-store/mongo/index.js +6 -23
  221. package/key-value-store/mongo/module.js +17 -35
  222. package/key-value-store/mongo/mongo-key-value-store.provider.js +20 -48
  223. package/key-value-store/mongo/mongo-key-value.model.js +1 -16
  224. package/key-value-store/mongo/mongo-key-value.repository.js +22 -52
  225. package/key-value-store/mongo/mongo-key-value.store.js +59 -89
  226. package/key-value-store/mongo/tokens.js +2 -25
  227. package/lock/index.js +2 -19
  228. package/lock/lock.js +5 -28
  229. package/lock/mongo/index.js +5 -22
  230. package/lock/mongo/lock.js +111 -135
  231. package/lock/mongo/model.js +1 -16
  232. package/lock/mongo/module.js +18 -37
  233. package/lock/mongo/mongo-lock-repository.js +56 -85
  234. package/lock/mongo/provider.js +38 -68
  235. package/lock/provider.js +1 -24
  236. package/lock/web/index.js +3 -20
  237. package/lock/web/module.js +11 -31
  238. package/lock/web/web-lock.js +80 -105
  239. package/lock/web/web-lock.provider.js +27 -57
  240. package/logger/console/index.js +1 -18
  241. package/logger/console/logger.js +53 -80
  242. package/logger/index.js +2 -19
  243. package/logger/level.js +8 -31
  244. package/logger/logger.js +37 -60
  245. package/logger/noop/index.js +1 -18
  246. package/logger/noop/logger.js +20 -42
  247. package/mail/clients/nodemailer.mail-client.js +62 -90
  248. package/mail/index.js +5 -22
  249. package/mail/mail-log.repository.js +2 -25
  250. package/mail/mail.client.js +34 -62
  251. package/mail/mail.service.js +73 -106
  252. package/mail/models/index.js +6 -23
  253. package/mail/models/mail-address.model.js +1 -16
  254. package/mail/models/mail-content.model.js +1 -16
  255. package/mail/models/mail-data.model.js +1 -16
  256. package/mail/models/mail-log.model.js +1 -16
  257. package/mail/models/mail-send-result.model.js +1 -16
  258. package/mail/models/mail-template.model.js +5 -28
  259. package/mail/module.js +21 -41
  260. package/mail/repositories/mongo-mail-log.repository.js +24 -56
  261. package/mail/tokens.js +2 -25
  262. package/memory/finalization.js +36 -60
  263. package/memory/index.js +2 -19
  264. package/memory/observable-finalization-registry.js +9 -32
  265. package/message-bus/broadcast-channel/broadcast-channel-message-bus-provider.js +23 -53
  266. package/message-bus/broadcast-channel/broadcast-channel-message-bus.js +46 -74
  267. package/message-bus/broadcast-channel/index.js +3 -20
  268. package/message-bus/broadcast-channel/module.js +11 -31
  269. package/message-bus/index.js +3 -20
  270. package/message-bus/local/index.js +3 -20
  271. package/message-bus/local/local-message-bus-provider.js +35 -65
  272. package/message-bus/local/local-message-bus.js +38 -66
  273. package/message-bus/local/module.js +11 -31
  274. package/message-bus/local/types.js +1 -16
  275. package/message-bus/message-bus-base.js +41 -63
  276. package/message-bus/message-bus-provider.js +1 -24
  277. package/message-bus/message-bus.js +5 -28
  278. package/migration/index.js +3 -20
  279. package/migration/migration-state-repository.js +2 -25
  280. package/migration/migration-state.js +1 -16
  281. package/migration/migrator.js +80 -108
  282. package/migration/mongo/index.js +2 -19
  283. package/migration/mongo/migration-state-repository.js +23 -53
  284. package/migration/mongo/module.js +15 -34
  285. package/module/index.js +4 -21
  286. package/module/module-base.js +37 -60
  287. package/module/module-metric-reporter.js +58 -77
  288. package/module/module.js +10 -34
  289. package/module/modules/function.module.js +11 -34
  290. package/module/modules/index.js +2 -19
  291. package/module/modules/web-server.module.js +67 -103
  292. package/module/utils.js +19 -43
  293. package/notification/api.js +21 -50
  294. package/notification/models/index.js +2 -19
  295. package/notification/models/notification-channel-job.model.js +1 -16
  296. package/notification/models/notification.model.js +74 -103
  297. package/notification/module.js +8 -28
  298. package/notification/notification-channel.service.js +1 -24
  299. package/notification/notification.repository.js +1 -24
  300. package/notification/notification.service.js +30 -58
  301. package/object-storage/index.js +3 -20
  302. package/object-storage/object-storage-provider.js +1 -24
  303. package/object-storage/object-storage.js +6 -29
  304. package/object-storage/object.js +7 -30
  305. package/object-storage/s3/index.js +3 -20
  306. package/object-storage/s3/s3.object-storage-provider.js +82 -108
  307. package/object-storage/s3/s3.object-storage.js +130 -157
  308. package/object-storage/s3/s3.object.js +39 -62
  309. package/openid-connect/cached-oidc-configuration.service.js +35 -65
  310. package/openid-connect/index.js +11 -28
  311. package/openid-connect/mongo-oidc-state.repository.js +38 -64
  312. package/openid-connect/oidc-configuration.service.js +38 -66
  313. package/openid-connect/oidc-state.model.js +1 -16
  314. package/openid-connect/oidc-state.repository.js +2 -25
  315. package/openid-connect/oidc.service-model.js +1 -16
  316. package/openid-connect/oidc.service.js +157 -187
  317. package/package.json +13 -13
  318. package/password/have-i-been-pwned.js +21 -39
  319. package/password/index.js +4 -21
  320. package/password/password-check-result.model.js +34 -63
  321. package/password/password-check.js +46 -76
  322. package/password/password-check.localization.js +86 -111
  323. package/pdf/index.js +1 -18
  324. package/pdf/pdf.service.js +171 -206
  325. package/pool/index.js +1 -18
  326. package/pool/pool.js +116 -133
  327. package/process-shutdown.js +54 -77
  328. package/promise/cancelable-promise.js +23 -41
  329. package/promise/deferred-promise.js +68 -92
  330. package/promise/index.js +3 -20
  331. package/promise/lazy-promise.js +24 -47
  332. package/queue/enqueue-batch.js +18 -41
  333. package/queue/index.js +3 -20
  334. package/queue/mongo/index.js +4 -21
  335. package/queue/mongo/job.js +1 -16
  336. package/queue/mongo/mongo-job.repository.js +44 -70
  337. package/queue/mongo/queue.js +242 -265
  338. package/queue/mongo/queue.provider.js +44 -70
  339. package/queue/provider.js +1 -24
  340. package/queue/queue.js +15 -41
  341. package/random/index.js +2 -19
  342. package/random/number-generator/index.js +3 -20
  343. package/random/number-generator/mulberry32.js +34 -51
  344. package/random/number-generator/random-number-generator-function.js +1 -24
  345. package/random/number-generator/random-number-generator.js +8 -31
  346. package/random/number-generator/seeded-random-number-generator.js +5 -28
  347. package/random/number-generator/sfc32.js +41 -64
  348. package/random/number-generator/utils.js +2 -25
  349. package/random/series.js +41 -43
  350. package/reflection/decorator-data.js +63 -80
  351. package/reflection/decorators.js +39 -69
  352. package/reflection/index.js +5 -22
  353. package/reflection/reflection-data-map.js +32 -55
  354. package/reflection/registry.js +112 -132
  355. package/reflection/types.js +1 -16
  356. package/reflection/utils.js +96 -124
  357. package/require.js +3 -26
  358. package/rpc/endpoints/message-port.rpc-endpoint.js +29 -48
  359. package/rpc/index.js +4 -21
  360. package/rpc/model.js +7 -30
  361. package/rpc/rpc-endpoint.js +17 -40
  362. package/rpc/rpc-error.js +17 -40
  363. package/rpc/rpc.js +223 -235
  364. package/rxjs/cast.js +4 -28
  365. package/rxjs/index.js +12 -29
  366. package/rxjs/intersection-observer.js +25 -48
  367. package/rxjs/media-query.js +8 -27
  368. package/rxjs/mutation-observer.js +28 -50
  369. package/rxjs/noop.js +4 -28
  370. package/rxjs/performance-observer.js +37 -60
  371. package/rxjs/resize-observer.js +28 -50
  372. package/rxjs/retry-backoff.js +23 -47
  373. package/rxjs/slow-array.js +22 -36
  374. package/rxjs/teardown.js +21 -44
  375. package/rxjs/timing.js +26 -57
  376. package/rxjs/touch.js +11 -30
  377. package/schema/array-constraints/index.js +2 -19
  378. package/schema/array-constraints/maximum-length.js +19 -42
  379. package/schema/array-constraints/minimum-length.js +19 -42
  380. package/schema/coercers/boolean.coercer.js +25 -49
  381. package/schema/coercers/date.coercer.js +14 -38
  382. package/schema/coercers/index.js +6 -23
  383. package/schema/coercers/number.coercer.js +12 -36
  384. package/schema/coercers/regexp.coercer.js +18 -41
  385. package/schema/coercers/string.coercer.js +12 -36
  386. package/schema/coercers/uint8-array.coercer.js +20 -44
  387. package/schema/constraints/enumeration.js +27 -49
  388. package/schema/constraints/generic.js +21 -41
  389. package/schema/constraints/index.js +12 -29
  390. package/schema/constraints/integer.js +20 -44
  391. package/schema/constraints/length.js +14 -36
  392. package/schema/constraints/literal.js +22 -44
  393. package/schema/constraints/maximum-date.js +23 -46
  394. package/schema/constraints/maximum-length.js +22 -45
  395. package/schema/constraints/maximum.js +21 -44
  396. package/schema/constraints/minimum-date.js +23 -46
  397. package/schema/constraints/minimum-length.js +22 -45
  398. package/schema/constraints/minimum.js +21 -44
  399. package/schema/constraints/pattern.js +23 -46
  400. package/schema/decorators/class.js +4 -26
  401. package/schema/decorators/coerce.js +4 -26
  402. package/schema/decorators/constraint.js +6 -28
  403. package/schema/decorators/index.js +6 -23
  404. package/schema/decorators/property.js +16 -38
  405. package/schema/decorators/types.js +1 -16
  406. package/schema/decorators/utils.js +45 -73
  407. package/schema/index.js +10 -27
  408. package/schema/schema.error.js +59 -72
  409. package/schema/schema.js +256 -274
  410. package/schema/schemas/any.js +7 -30
  411. package/schema/schemas/array.js +21 -44
  412. package/schema/schemas/assign.js +23 -46
  413. package/schema/schemas/boolean.js +7 -30
  414. package/schema/schemas/constraint.js +6 -29
  415. package/schema/schemas/date.js +20 -43
  416. package/schema/schemas/defaulted.js +8 -31
  417. package/schema/schemas/enumeration.js +15 -38
  418. package/schema/schemas/index.js +26 -43
  419. package/schema/schemas/instance.js +4 -26
  420. package/schema/schemas/literal.js +15 -38
  421. package/schema/schemas/nullable.js +7 -30
  422. package/schema/schemas/number.js +25 -48
  423. package/schema/schemas/object.js +10 -34
  424. package/schema/schemas/omit.js +14 -37
  425. package/schema/schemas/one-or-many.js +13 -35
  426. package/schema/schemas/optional.js +6 -30
  427. package/schema/schemas/partial.js +16 -39
  428. package/schema/schemas/pick.js +14 -37
  429. package/schema/schemas/readable-stream.js +7 -30
  430. package/schema/schemas/record.js +9 -31
  431. package/schema/schemas/regexp.js +7 -30
  432. package/schema/schemas/string.js +36 -59
  433. package/schema/schemas/transform.js +6 -29
  434. package/schema/schemas/uint8-array.js +27 -50
  435. package/schema/schemas/union.js +11 -34
  436. package/schema/schemas/unknown.js +7 -30
  437. package/schema/transformers/generic.js +16 -39
  438. package/schema/transformers/index.js +4 -21
  439. package/schema/transformers/lowercase.js +10 -33
  440. package/schema/transformers/trim.js +10 -33
  441. package/schema/transformers/uppercase.js +10 -33
  442. package/schema/types/index.js +5 -22
  443. package/schema/types/schema-array-constraint.js +1 -24
  444. package/schema/types/schema-value-coercer.js +1 -24
  445. package/schema/types/schema-value-constraint.js +1 -24
  446. package/schema/types/schema-value-transformer.js +1 -24
  447. package/schema/types/types.js +161 -191
  448. package/schema/utils/index.js +2 -19
  449. package/schema/utils/schema.js +120 -142
  450. package/schema/utils/value-type.js +51 -74
  451. package/search-index/elastic/config.js +19 -49
  452. package/search-index/elastic/index.js +6 -23
  453. package/search-index/elastic/keyword-rewriter.js +17 -40
  454. package/search-index/elastic/model/elastic-query.js +1 -16
  455. package/search-index/elastic/model/index-mapping.js +4 -26
  456. package/search-index/elastic/model/index.js +3 -20
  457. package/search-index/elastic/model/sort.js +1 -16
  458. package/search-index/elastic/module.js +38 -64
  459. package/search-index/elastic/query-builder/boolean-query-builder.js +46 -69
  460. package/search-index/elastic/query-builder/index.js +1 -18
  461. package/search-index/elastic/query-converter.js +174 -192
  462. package/search-index/elastic/search-index.js +132 -153
  463. package/search-index/elastic/sort-converter.js +12 -34
  464. package/search-index/elastic/types.js +1 -16
  465. package/search-index/error.js +12 -35
  466. package/search-index/index.js +3 -20
  467. package/search-index/memory/index.js +1 -18
  468. package/search-index/memory/memory-search-index.js +130 -152
  469. package/search-index/search-index.js +30 -53
  470. package/search-index/search-result.js +1 -16
  471. package/serializer/handlers/binary.js +19 -47
  472. package/serializer/handlers/date.js +4 -28
  473. package/serializer/handlers/error.js +7 -31
  474. package/serializer/handlers/index.js +7 -24
  475. package/serializer/handlers/map.js +16 -40
  476. package/serializer/handlers/regex.js +7 -31
  477. package/serializer/handlers/register.js +36 -59
  478. package/serializer/handlers/set.js +13 -37
  479. package/serializer/index.js +3 -30
  480. package/serializer/serializable.js +43 -68
  481. package/serializer/serializer.js +244 -264
  482. package/serializer/types.js +6 -34
  483. package/signals/api.js +17 -45
  484. package/signals/computed-with-dependencies.js +8 -31
  485. package/signals/effect-with-dependencies.js +8 -31
  486. package/signals/implementation/api.js +33 -33
  487. package/signals/implementation/computed.js +125 -104
  488. package/signals/implementation/configure.js +18 -41
  489. package/signals/implementation/effect.js +48 -66
  490. package/signals/implementation/errors.js +5 -29
  491. package/signals/implementation/graph.js +164 -136
  492. package/signals/implementation/index.js +10 -27
  493. package/signals/implementation/signal.js +91 -101
  494. package/signals/implementation/to-observable.js +21 -38
  495. package/signals/implementation/to-signal.js +44 -60
  496. package/signals/implementation/untracked.js +15 -31
  497. package/signals/implementation/watch.js +58 -73
  498. package/signals/index.js +7 -24
  499. package/signals/pipe.js +7 -31
  500. package/signals/switch-map.js +4 -27
  501. package/signals/types.js +1 -16
  502. package/signals/untracked-operator.js +11 -33
  503. package/sse/index.js +2 -19
  504. package/sse/model.js +1 -16
  505. package/sse/server-sent-events-source.js +54 -76
  506. package/sse/server-sent-events.js +48 -72
  507. package/supports.js +5 -32
  508. package/templates/index.js +9 -26
  509. package/templates/module.js +37 -58
  510. package/templates/providers/file.template-provider.js +39 -81
  511. package/templates/providers/memory.template-provider.js +27 -55
  512. package/templates/renderers/handlebars.template-renderer.js +84 -122
  513. package/templates/renderers/jsx.template-renderer.js +28 -56
  514. package/templates/renderers/mjml.template-renderer.js +42 -82
  515. package/templates/renderers/string.template-renderer.js +24 -52
  516. package/templates/resolvers/file.template-resolver.js +45 -89
  517. package/templates/resolvers/jsx.template-resolver.js +29 -59
  518. package/templates/resolvers/string.template-resolver.js +29 -59
  519. package/templates/template-renderer.provider.js +36 -66
  520. package/templates/template-resolver.provider.js +36 -66
  521. package/templates/template.model.js +39 -69
  522. package/templates/template.provider.js +1 -24
  523. package/templates/template.renderer.js +11 -34
  524. package/templates/template.resolver.js +1 -24
  525. package/templates/template.service.js +49 -82
  526. package/templates/tokens.js +3 -27
  527. package/templates/types/jsx.intrinsic-elements.js +1 -16
  528. package/text/dynamic-text.model.js +41 -70
  529. package/text/index.js +3 -20
  530. package/text/localizable-text.model.js +1 -16
  531. package/text/localization.service.js +196 -229
  532. package/theme/adapters/css-adapter.js +23 -46
  533. package/theme/adapters/tailwind-adapter.js +29 -52
  534. package/theme/index.js +1 -18
  535. package/theme/theme-service.js +107 -146
  536. package/threading/index.js +2 -19
  537. package/threading/thread-pool.js +48 -70
  538. package/threading/thread-worker.js +3 -26
  539. package/tokens.js +2 -25
  540. package/types/geo-json.js +1 -16
  541. package/types.js +2 -16
  542. package/utils/alphabet.js +12 -35
  543. package/utils/any-iterable-iterator.js +4 -27
  544. package/utils/array/array-backtracker.js +42 -65
  545. package/utils/array/array.js +76 -79
  546. package/utils/array/index.js +2 -19
  547. package/utils/async-iterable-helpers/all.js +25 -46
  548. package/utils/async-iterable-helpers/any.js +25 -46
  549. package/utils/async-iterable-helpers/assert.js +22 -43
  550. package/utils/async-iterable-helpers/batch.js +26 -46
  551. package/utils/async-iterable-helpers/buffer.js +47 -64
  552. package/utils/async-iterable-helpers/concat.js +5 -27
  553. package/utils/async-iterable-helpers/default-if-empty.js +9 -32
  554. package/utils/async-iterable-helpers/deferred.js +3 -26
  555. package/utils/async-iterable-helpers/difference.js +24 -48
  556. package/utils/async-iterable-helpers/distinct.js +23 -44
  557. package/utils/async-iterable-helpers/drain.js +4 -26
  558. package/utils/async-iterable-helpers/filter.js +23 -44
  559. package/utils/async-iterable-helpers/first-or-default.js +8 -30
  560. package/utils/async-iterable-helpers/first.js +8 -30
  561. package/utils/async-iterable-helpers/for-each.js +18 -38
  562. package/utils/async-iterable-helpers/group-single.js +3 -26
  563. package/utils/async-iterable-helpers/group-to-map.js +20 -41
  564. package/utils/async-iterable-helpers/group-to-single-map.js +23 -44
  565. package/utils/async-iterable-helpers/group.js +3 -26
  566. package/utils/async-iterable-helpers/includes.js +7 -28
  567. package/utils/async-iterable-helpers/index.js +48 -65
  568. package/utils/async-iterable-helpers/interrupt.js +19 -43
  569. package/utils/async-iterable-helpers/is-async-iterable.js +5 -29
  570. package/utils/async-iterable-helpers/last-or-default.js +13 -36
  571. package/utils/async-iterable-helpers/last.js +13 -36
  572. package/utils/async-iterable-helpers/map-many.js +19 -40
  573. package/utils/async-iterable-helpers/map.js +19 -40
  574. package/utils/async-iterable-helpers/materialize.js +21 -42
  575. package/utils/async-iterable-helpers/metadata.js +38 -58
  576. package/utils/async-iterable-helpers/multiplex.js +23 -44
  577. package/utils/async-iterable-helpers/observable-iterable.js +31 -53
  578. package/utils/async-iterable-helpers/pairwise.js +26 -44
  579. package/utils/async-iterable-helpers/parallel/feed.js +24 -45
  580. package/utils/async-iterable-helpers/parallel/filter.js +8 -31
  581. package/utils/async-iterable-helpers/parallel/for-each.js +21 -44
  582. package/utils/async-iterable-helpers/parallel/group.js +9 -32
  583. package/utils/async-iterable-helpers/parallel/index.js +7 -24
  584. package/utils/async-iterable-helpers/parallel/map.js +6 -29
  585. package/utils/async-iterable-helpers/parallel/tap.js +6 -29
  586. package/utils/async-iterable-helpers/parallel/types.js +1 -16
  587. package/utils/async-iterable-helpers/reduce.js +31 -46
  588. package/utils/async-iterable-helpers/retry.js +43 -58
  589. package/utils/async-iterable-helpers/single-or-default.js +17 -40
  590. package/utils/async-iterable-helpers/single.js +19 -42
  591. package/utils/async-iterable-helpers/skip.js +3 -26
  592. package/utils/async-iterable-helpers/sort.js +6 -29
  593. package/utils/async-iterable-helpers/take-until.js +32 -49
  594. package/utils/async-iterable-helpers/take-while.js +29 -46
  595. package/utils/async-iterable-helpers/take.js +10 -33
  596. package/utils/async-iterable-helpers/tap.js +19 -40
  597. package/utils/async-iterable-helpers/throttle.js +9 -30
  598. package/utils/async-iterable-helpers/to-array.js +10 -33
  599. package/utils/async-iterable-helpers/to-async-iterable-iterator.js +40 -59
  600. package/utils/async-iterable-helpers/to-async-iterator.js +32 -54
  601. package/utils/async-iterable-helpers/to-set.js +10 -33
  602. package/utils/async-iterable-helpers/to-sync-iterable.js +6 -27
  603. package/utils/async-iterable-helpers/types.js +1 -16
  604. package/utils/async-iterable-helpers/while.js +25 -46
  605. package/utils/async-iterator-iterable-iterator.js +41 -62
  606. package/utils/backoff.js +109 -109
  607. package/utils/base64.js +153 -140
  608. package/utils/benchmark.js +114 -107
  609. package/utils/binary-search.js +70 -87
  610. package/utils/binary.js +50 -61
  611. package/utils/cancellation-token.js +120 -140
  612. package/utils/clone.js +43 -64
  613. package/utils/comparison.js +76 -98
  614. package/utils/compression.js +107 -118
  615. package/utils/config-parser.js +21 -48
  616. package/utils/crc32.js +20 -42
  617. package/utils/cryptography.js +163 -121
  618. package/utils/date-time.js +102 -138
  619. package/utils/encoding.js +62 -60
  620. package/utils/enum.js +27 -53
  621. package/utils/equals.js +103 -119
  622. package/utils/event-loop.js +19 -39
  623. package/utils/factory-map.js +53 -75
  624. package/utils/feedable-async-iterable.js +47 -70
  625. package/utils/file-reader.js +15 -41
  626. package/utils/format-error.js +36 -57
  627. package/utils/format.js +32 -53
  628. package/utils/function/index.js +2 -19
  629. package/utils/function/memoize.js +38 -53
  630. package/utils/function/throttle.js +26 -48
  631. package/utils/helpers.js +93 -102
  632. package/utils/image.js +62 -88
  633. package/utils/index.js +48 -65
  634. package/utils/iterable-helpers/all.js +8 -31
  635. package/utils/iterable-helpers/any.js +8 -31
  636. package/utils/iterable-helpers/assert.js +7 -30
  637. package/utils/iterable-helpers/batch.js +11 -34
  638. package/utils/iterable-helpers/concat.js +4 -27
  639. package/utils/iterable-helpers/default-if-empty.js +9 -32
  640. package/utils/iterable-helpers/deferred.js +2 -25
  641. package/utils/iterable-helpers/difference.js +21 -45
  642. package/utils/iterable-helpers/distinct.js +9 -32
  643. package/utils/iterable-helpers/drain.js +4 -26
  644. package/utils/iterable-helpers/filter.js +7 -30
  645. package/utils/iterable-helpers/first-or-default.js +8 -30
  646. package/utils/iterable-helpers/first.js +8 -30
  647. package/utils/iterable-helpers/for-each.js +5 -28
  648. package/utils/iterable-helpers/group-single.js +3 -26
  649. package/utils/iterable-helpers/group-to-map.js +9 -32
  650. package/utils/iterable-helpers/group-to-single-map.js +10 -33
  651. package/utils/iterable-helpers/group.js +3 -26
  652. package/utils/iterable-helpers/includes.js +3 -26
  653. package/utils/iterable-helpers/index.js +39 -56
  654. package/utils/iterable-helpers/is-iterable.js +5 -29
  655. package/utils/iterable-helpers/last-or-default.js +13 -36
  656. package/utils/iterable-helpers/last.js +13 -36
  657. package/utils/iterable-helpers/map-many.js +6 -29
  658. package/utils/iterable-helpers/map.js +6 -29
  659. package/utils/iterable-helpers/materialize.js +2 -25
  660. package/utils/iterable-helpers/metadata.js +16 -38
  661. package/utils/iterable-helpers/pairwise.js +11 -33
  662. package/utils/iterable-helpers/range.js +4 -27
  663. package/utils/iterable-helpers/reduce.js +11 -33
  664. package/utils/iterable-helpers/single-or-default.js +14 -37
  665. package/utils/iterable-helpers/single.js +17 -40
  666. package/utils/iterable-helpers/skip.js +6 -29
  667. package/utils/iterable-helpers/sort.js +4 -27
  668. package/utils/iterable-helpers/take-until.js +8 -31
  669. package/utils/iterable-helpers/take-while.js +10 -33
  670. package/utils/iterable-helpers/take.js +10 -33
  671. package/utils/iterable-helpers/tap.js +6 -29
  672. package/utils/iterable-helpers/types.js +1 -16
  673. package/utils/iterable-helpers/while.js +8 -31
  674. package/utils/jwt.js +77 -100
  675. package/utils/map.js +35 -62
  676. package/utils/math.js +102 -64
  677. package/utils/merge.js +26 -45
  678. package/utils/middleware.js +36 -60
  679. package/utils/moving-metric.js +155 -188
  680. package/utils/noop.js +4 -27
  681. package/utils/object/decycle.js +57 -78
  682. package/utils/object/dereference.js +46 -44
  683. package/utils/object/forward-ref.js +57 -73
  684. package/utils/object/index.js +7 -24
  685. package/utils/object/lazy-property.js +81 -96
  686. package/utils/object/merge.js +48 -70
  687. package/utils/object/object.js +106 -136
  688. package/utils/object/property-name.js +69 -72
  689. package/utils/ordered-feedable-async-iterable.js +42 -65
  690. package/utils/patch-worker.js +69 -90
  691. package/utils/patterns.js +7 -29
  692. package/utils/periodic-reporter.js +60 -82
  693. package/utils/periodic-sampler.js +67 -91
  694. package/utils/provider-function-iterable.js +26 -48
  695. package/utils/proxy.js +17 -42
  696. package/utils/random.js +40 -50
  697. package/utils/reflection.js +13 -41
  698. package/utils/repl.js +14 -33
  699. package/utils/set.js +36 -62
  700. package/utils/singleton.js +18 -41
  701. package/utils/sort.js +53 -77
  702. package/utils/stream/finalize-stream.js +43 -62
  703. package/utils/stream/index.js +6 -23
  704. package/utils/stream/readable-stream-adapter.js +35 -57
  705. package/utils/stream/readable-stream-from-promise.js +7 -28
  706. package/utils/stream/size-limited-stream.js +12 -35
  707. package/utils/stream/stream-helper-types.js +1 -16
  708. package/utils/stream/stream-reader.js +30 -52
  709. package/utils/string/hypenate.js +2 -25
  710. package/utils/string/index.js +3 -20
  711. package/utils/string/title-case.js +6 -26
  712. package/utils/string/trim.js +9 -32
  713. package/utils/throw.js +7 -30
  714. package/utils/timer.js +70 -91
  715. package/utils/timing.js +52 -80
  716. package/utils/type-guards.js +253 -1076
  717. package/utils/type-of.js +25 -43
  718. package/utils/units.js +53 -124
  719. package/utils/url-builder.js +47 -68
  720. package/utils/value-or-provider.js +6 -29
  721. package/utils/z-base32.js +42 -63
  722. package/web-types.js +1 -16
@@ -1,61 +1,33 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
9
6
  };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
17
9
  };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var memory_template_provider_exports = {};
20
- __export(memory_template_provider_exports, {
21
- MemoryTemplateProvider: () => MemoryTemplateProvider
22
- });
23
- module.exports = __toCommonJS(memory_template_provider_exports);
24
- var import_container = require("../../container/index.js");
25
- var import_type_guards = require("../../utils/type-guards.js");
26
- var import_template_provider = require("../template.provider.js");
27
- var __decorate = function(decorators, target, key, desc) {
28
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
29
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
30
- r = Reflect.decorate(decorators, target, key, desc);
31
- else
32
- for (var i = decorators.length - 1; i >= 0; i--)
33
- if (d = decorators[i])
34
- r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
35
- return c > 3 && r && Object.defineProperty(target, key, r), r;
36
- };
37
- var __metadata = function(k, v) {
38
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
39
- return Reflect.metadata(k, v);
40
- };
41
- let MemoryTemplateProvider = class MemoryTemplateProvider2 extends import_template_provider.TemplateProvider {
42
- map;
43
- constructor() {
44
- super();
45
- this.map = /* @__PURE__ */ new Map();
46
- }
47
- add(key, template) {
48
- this.map.set(key, template);
49
- }
50
- get(key) {
51
- const template = this.map.get(key);
52
- if ((0, import_type_guards.isUndefined)(template)) {
53
- throw new Error(`Template ${key} not available.`);
10
+ import { singleton } from '../../container/index.js';
11
+ import { isUndefined } from '../../utils/type-guards.js';
12
+ import { TemplateProvider } from '../template.provider.js';
13
+ export let MemoryTemplateProvider = class MemoryTemplateProvider extends TemplateProvider {
14
+ map;
15
+ constructor() {
16
+ super();
17
+ this.map = new Map();
18
+ }
19
+ add(key, template) {
20
+ this.map.set(key, template);
21
+ }
22
+ get(key) {
23
+ const template = this.map.get(key);
24
+ if (isUndefined(template)) {
25
+ throw new Error(`Template ${key} not available.`);
26
+ }
27
+ return template;
54
28
  }
55
- return template;
56
- }
57
29
  };
58
30
  MemoryTemplateProvider = __decorate([
59
- (0, import_container.singleton)(),
60
- __metadata("design:paramtypes", [])
31
+ singleton(),
32
+ __metadata("design:paramtypes", [])
61
33
  ], MemoryTemplateProvider);
@@ -1,138 +1,100 @@
1
- "use strict";
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
11
6
  };
12
- var __copyProps = (to, from, except, desc) => {
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (let key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(to, key) && key !== except)
16
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
- }
18
- return to;
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
19
9
  };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var handlebars_template_renderer_exports = {};
30
- __export(handlebars_template_renderer_exports, {
31
- HandlebarsTemplateRenderer: () => HandlebarsTemplateRenderer
32
- });
33
- module.exports = __toCommonJS(handlebars_template_renderer_exports);
34
- var import_container = require("../../container/index.js");
35
- var import_memoize = require("../../utils/function/memoize.js");
36
- var import_object = require("../../utils/object/object.js");
37
- var import_type_guards = require("../../utils/type-guards.js");
38
- var import_template_resolver_provider = require("../template-resolver.provider.js");
39
- var import_template_renderer = require("../template.renderer.js");
40
- var __decorate = function(decorators, target, key, desc) {
41
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
42
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
43
- r = Reflect.decorate(decorators, target, key, desc);
44
- else
45
- for (var i = decorators.length - 1; i >= 0; i--)
46
- if (d = decorators[i])
47
- r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
48
- return c > 3 && r && Object.defineProperty(target, key, r), r;
49
- };
50
- var __metadata = function(k, v) {
51
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
52
- return Reflect.metadata(k, v);
53
- };
54
- const wrapHandlebarsTemplateHelper = (0, import_memoize.memoizeSingle)(_wrapHandlebarsTemplateHelper, { weak: true });
55
- let HandlebarsTemplateRenderer = class HandlebarsTemplateRenderer2 extends import_template_renderer.TemplateRenderer {
56
- templateResolverProvider;
57
- compileHandlebarsTemplate;
58
- constructor(templateResolverProvider) {
59
- super();
60
- this.templateResolverProvider = templateResolverProvider;
61
- this.compileHandlebarsTemplate = (0, import_memoize.memoizeSingle)(this._compileHandlebarsTemplate, { weak: true });
62
- }
63
- canHandleType(type) {
64
- return type == "handlebars";
65
- }
66
- async _render(renderObject, context) {
67
- const renderer = await this.compileHandlebarsTemplate(renderObject);
68
- return renderer(context);
69
- }
70
- async _compileHandlebarsTemplate(renderObject) {
71
- const { template, options = {} } = renderObject;
72
- const allHelpers = getAllPartialHelpersDeep(renderObject);
73
- const compile = await importHandlebarsCompile();
74
- const renderer = compile(template, {
75
- strict: options.strict ?? true,
76
- preventIndent: options.preventIndent,
77
- knownHelpers: (0, import_type_guards.isDefined)(allHelpers) ? (0, import_object.mapObjectValues)(allHelpers, () => true) : void 0,
78
- knownHelpersOnly: true
79
- });
80
- const wrappedHelpers = (0, import_type_guards.isDefined)(allHelpers) ? (0, import_object.mapObjectValues)(allHelpers, wrapHandlebarsTemplateHelper) : void 0;
81
- const normalizedPartials = (0, import_type_guards.isDefined)(options.partials) ? await (0, import_object.mapObjectValuesAsync)(options.partials, async (partial) => this.normalizePartial(partial)) : void 0;
82
- return (context, runtimeOptions) => renderer(context, { helpers: wrappedHelpers, partials: normalizedPartials, ...runtimeOptions });
83
- }
84
- async normalizePartial(partial) {
85
- if ((0, import_type_guards.isString)(partial) || (0, import_type_guards.isFunction)(partial)) {
86
- return partial;
10
+ import { singleton } from '../../container/index.js';
11
+ import { memoizeSingle } from '../../utils/function/memoize.js';
12
+ import { hasOwnProperty, mapObjectValues, mapObjectValuesAsync, objectEntries, objectValues } from '../../utils/object/object.js';
13
+ import { assertDefined, isDefined, isFunction, isString } from '../../utils/type-guards.js';
14
+ import { TemplateResolverProvider } from '../template-resolver.provider.js';
15
+ import { TemplateRenderer } from '../template.renderer.js';
16
+ const wrapHandlebarsTemplateHelper = memoizeSingle(_wrapHandlebarsTemplateHelper, { weak: true });
17
+ export let HandlebarsTemplateRenderer = class HandlebarsTemplateRenderer extends TemplateRenderer {
18
+ templateResolverProvider;
19
+ compileHandlebarsTemplate;
20
+ constructor(templateResolverProvider) {
21
+ super();
22
+ this.templateResolverProvider = templateResolverProvider;
23
+ this.compileHandlebarsTemplate = memoizeSingle(this._compileHandlebarsTemplate, { weak: true }); // eslint-disable-line @typescript-eslint/unbound-method
24
+ }
25
+ canHandleType(type) {
26
+ return type == 'handlebars';
27
+ }
28
+ async _render(renderObject, context) {
29
+ const renderer = await this.compileHandlebarsTemplate(renderObject);
30
+ return renderer(context);
31
+ }
32
+ async _compileHandlebarsTemplate(renderObject) {
33
+ const { template, options = {} } = renderObject;
34
+ const allHelpers = getAllPartialHelpersDeep(renderObject);
35
+ const compile = await importHandlebarsCompile();
36
+ const renderer = compile(template, {
37
+ strict: options.strict ?? true,
38
+ preventIndent: options.preventIndent,
39
+ knownHelpers: isDefined(allHelpers) ? mapObjectValues(allHelpers, () => true) : undefined,
40
+ knownHelpersOnly: true
41
+ });
42
+ const wrappedHelpers = isDefined(allHelpers) ? mapObjectValues(allHelpers, wrapHandlebarsTemplateHelper) : undefined;
43
+ const normalizedPartials = isDefined(options.partials) ? await mapObjectValuesAsync(options.partials, async (partial) => this.normalizePartial(partial)) : undefined;
44
+ return (context, runtimeOptions) => renderer(context, { helpers: wrappedHelpers, partials: normalizedPartials, ...runtimeOptions });
45
+ }
46
+ async normalizePartial(partial) {
47
+ if (isString(partial) || isFunction(partial)) {
48
+ return partial;
49
+ }
50
+ const resolver = this.templateResolverProvider.get(partial.resolver);
51
+ return resolver.resolve(partial);
87
52
  }
88
- const resolver = this.templateResolverProvider.get(partial.resolver);
89
- return resolver.resolve(partial);
90
- }
91
53
  };
92
54
  HandlebarsTemplateRenderer = __decorate([
93
- (0, import_container.singleton)(),
94
- __metadata("design:paramtypes", [import_template_resolver_provider.TemplateResolverProvider])
55
+ singleton(),
56
+ __metadata("design:paramtypes", [TemplateResolverProvider])
95
57
  ], HandlebarsTemplateRenderer);
96
58
  function _wrapHandlebarsTemplateHelper(helper) {
97
- const wrapperName = `wrapped${helper.name.slice(0, 1).toUpperCase()}${helper.name.slice(1)}`;
98
- const wrapper = {
99
- [wrapperName](context, ...argsAndOptions) {
100
- const args = argsAndOptions.slice(0, -1);
101
- const options = argsAndOptions[argsAndOptions.length - 1];
102
- return helper(context, args, options);
103
- }
104
- }[wrapperName];
105
- return wrapper;
59
+ const wrapperName = `wrapped${helper.name.slice(0, 1).toUpperCase()}${helper.name.slice(1)}`;
60
+ const wrapper = {
61
+ [wrapperName](context, ...argsAndOptions) {
62
+ const args = argsAndOptions.slice(0, -1);
63
+ const options = argsAndOptions[argsAndOptions.length - 1];
64
+ return helper(context, args, options);
65
+ }
66
+ }[wrapperName];
67
+ return wrapper;
106
68
  }
107
69
  function getAllPartialHelpersDeep(field) {
108
- const allHelpers = getPartialHelpersDeep(field);
109
- const helpers = {};
110
- if (allHelpers.length == 0) {
111
- return void 0;
112
- }
113
- for (const [key, helper] of allHelpers) {
114
- if ((0, import_object.hasOwnProperty)(helpers, key) && helpers[key] != helper) {
115
- throw new Error(`Template and partials reference different versions of helper "${key}".`);
70
+ const allHelpers = getPartialHelpersDeep(field);
71
+ const helpers = {};
72
+ if (allHelpers.length == 0) {
73
+ return undefined;
74
+ }
75
+ for (const [key, helper] of allHelpers) {
76
+ if (hasOwnProperty(helpers, key) && helpers[key] != helper) {
77
+ throw new Error(`Template and partials reference different versions of helper "${key}".`);
78
+ }
79
+ helpers[key] = helper;
116
80
  }
117
- helpers[key] = helper;
118
- }
119
- return helpers;
81
+ return helpers;
120
82
  }
121
83
  function getPartialHelpersDeep(partial) {
122
- if ((0, import_type_guards.isString)(partial) || (0, import_type_guards.isFunction)(partial)) {
123
- return [];
124
- }
125
- const entries = (0, import_object.objectEntries)(partial.options?.helpers ?? {});
126
- const childEntries = (0, import_object.objectValues)(partial.options?.partials ?? {}).flatMap(getPartialHelpersDeep);
127
- return [...entries, ...childEntries];
84
+ if (isString(partial) || isFunction(partial)) {
85
+ return [];
86
+ }
87
+ const entries = objectEntries(partial.options?.helpers ?? {});
88
+ const childEntries = objectValues(partial.options?.partials ?? {}).flatMap(getPartialHelpersDeep);
89
+ return [...entries, ...childEntries];
128
90
  }
129
91
  let handlebarsCompile;
130
92
  async function importHandlebarsCompile() {
131
- if ((0, import_type_guards.isDefined)(handlebarsCompile)) {
132
- return handlebarsCompile;
133
- }
134
- const handlebars = await import("handlebars");
135
- const compile = handlebars.compile ?? handlebars.default?.compile;
136
- (0, import_type_guards.assertDefined)(compile, "Could not import handlebars.");
137
- return handlebarsCompile = compile;
93
+ if (isDefined(handlebarsCompile)) {
94
+ return handlebarsCompile;
95
+ }
96
+ const handlebars = await import('handlebars');
97
+ const compile = handlebars.compile ?? handlebars.default?.compile;
98
+ assertDefined(compile, 'Could not import handlebars.');
99
+ return (handlebarsCompile = compile); // eslint-disable-line require-atomic-updates
138
100
  }
@@ -1,63 +1,35 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
9
6
  };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
17
9
  };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var jsx_template_renderer_exports = {};
20
- __export(jsx_template_renderer_exports, {
21
- JsxTemplateRenderer: () => JsxTemplateRenderer
22
- });
23
- module.exports = __toCommonJS(jsx_template_renderer_exports);
24
- var import_jsx_runtime = require("preact/jsx-runtime");
25
- var import_container = require("../../container/index.js");
26
- var import_type_guards = require("../../utils/type-guards.js");
27
- var import_preact = require("preact");
28
- var import_preact_render_to_string = require("preact-render-to-string");
29
- var import_template_renderer = require("../template.renderer.js");
30
- var __decorate = function(decorators, target, key, desc) {
31
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
32
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
33
- r = Reflect.decorate(decorators, target, key, desc);
34
- else
35
- for (var i = decorators.length - 1; i >= 0; i--)
36
- if (d = decorators[i])
37
- r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
38
- return c > 3 && r && Object.defineProperty(target, key, r), r;
39
- };
40
- var __metadata = function(k, v) {
41
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
42
- return Reflect.metadata(k, v);
43
- };
44
- let JsxTemplateRenderer = class JsxTemplateRenderer2 extends import_template_renderer.TemplateRenderer {
45
- constructor() {
46
- super();
47
- }
48
- canHandleType(type) {
49
- return type == "jsx";
50
- }
51
- _render({ template: TemplateComponent }, context) {
52
- const node = isComponentClass(TemplateComponent) ? (0, import_jsx_runtime.jsx)(TemplateComponent, { ...context }) : TemplateComponent(context, context);
53
- (0, import_type_guards.assertNotNull)(node, "Template returned null");
54
- return (0, import_preact_render_to_string.render)(node);
55
- }
10
+ import { jsx as _jsx } from "preact/jsx-runtime";
11
+ import { singleton } from '../../container/index.js';
12
+ import { assertNotNull } from '../../utils/type-guards.js';
13
+ import { Component } from 'preact';
14
+ import { render } from 'preact-render-to-string';
15
+ import { TemplateRenderer } from '../template.renderer.js';
16
+ export let JsxTemplateRenderer = class JsxTemplateRenderer extends TemplateRenderer {
17
+ constructor() {
18
+ super();
19
+ }
20
+ canHandleType(type) {
21
+ return (type == 'jsx');
22
+ }
23
+ _render({ template: TemplateComponent }, context) {
24
+ const node = isComponentClass(TemplateComponent) ? _jsx(TemplateComponent, { ...context }) : TemplateComponent(context, context);
25
+ assertNotNull(node, 'Template returned null');
26
+ return render(node);
27
+ }
56
28
  };
57
29
  JsxTemplateRenderer = __decorate([
58
- (0, import_container.singleton)(),
59
- __metadata("design:paramtypes", [])
30
+ singleton(),
31
+ __metadata("design:paramtypes", [])
60
32
  ], JsxTemplateRenderer);
61
33
  function isComponentClass(template) {
62
- return Reflect.getPrototypeOf(template) == import_preact.Component;
34
+ return Reflect.getPrototypeOf(template) == Component;
63
35
  }
@@ -1,91 +1,51 @@
1
- "use strict";
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
11
6
  };
12
- var __copyProps = (to, from, except, desc) => {
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (let key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(to, key) && key !== except)
16
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
- }
18
- return to;
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
19
9
  };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var mjml_template_renderer_exports = {};
30
- __export(mjml_template_renderer_exports, {
31
- MjmlTemplateRenderer: () => MjmlTemplateRenderer
32
- });
33
- module.exports = __toCommonJS(mjml_template_renderer_exports);
34
- var import_container = require("../../container/index.js");
35
- var import_mjml = __toESM(require("mjml"), 1);
36
- var import_template_renderer_provider = require("../template-renderer.provider.js");
37
- var import_template_renderer = require("../template.renderer.js");
38
- var __decorate = function(decorators, target, key, desc) {
39
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
40
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
41
- r = Reflect.decorate(decorators, target, key, desc);
42
- else
43
- for (var i = decorators.length - 1; i >= 0; i--)
44
- if (d = decorators[i])
45
- r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
46
- return c > 3 && r && Object.defineProperty(target, key, r), r;
10
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
+ return function (target, key) { decorator(target, key, paramIndex); }
47
12
  };
48
- var __metadata = function(k, v) {
49
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
50
- return Reflect.metadata(k, v);
51
- };
52
- var __param = function(paramIndex, decorator) {
53
- return function(target, key) {
54
- decorator(target, key, paramIndex);
55
- };
56
- };
57
- let MjmlTemplateRenderer = class MjmlTemplateRenderer2 extends import_template_renderer.TemplateRenderer {
58
- rendererProvider;
59
- constructor(rendererProvider) {
60
- super();
61
- this.rendererProvider = rendererProvider;
62
- }
63
- canHandleType(type) {
64
- if (type == "mjml") {
65
- return true;
13
+ import { forwardRef, singleton } from '../../container/index.js';
14
+ import mjml2html from 'mjml';
15
+ import { TemplateRendererProvider } from '../template-renderer.provider.js';
16
+ import { TemplateRenderer } from '../template.renderer.js';
17
+ export let MjmlTemplateRenderer = class MjmlTemplateRenderer extends TemplateRenderer {
18
+ rendererProvider;
19
+ constructor(rendererProvider) {
20
+ super();
21
+ this.rendererProvider = rendererProvider;
66
22
  }
67
- if (!type.startsWith("mjml-")) {
68
- return false;
23
+ canHandleType(type) {
24
+ if (type == 'mjml') {
25
+ return true;
26
+ }
27
+ if (!type.startsWith('mjml-')) {
28
+ return false;
29
+ }
30
+ const parent = type.slice(5);
31
+ return this.rendererProvider.has(parent);
69
32
  }
70
- const parent = type.slice(5);
71
- return this.rendererProvider.has(parent);
72
- }
73
- async _render({ renderer, template, options }, context) {
74
- if (renderer.length > 4) {
75
- const parent = renderer.slice(5);
76
- const parentRenderer = this.rendererProvider.get(parent);
77
- const result = await parentRenderer.render({ template, renderer: parent, options: options?.preprocessorOptions }, context);
78
- const preprocessedTemplate = {
79
- renderer: "mjml",
80
- template: result
81
- };
82
- return this._render(preprocessedTemplate, context);
33
+ async _render({ renderer, template, options }, context) {
34
+ if (renderer.length > 4) {
35
+ const parent = renderer.slice(5);
36
+ const parentRenderer = this.rendererProvider.get(parent);
37
+ const result = await parentRenderer.render({ template, renderer: parent, options: options?.preprocessorOptions }, context);
38
+ const preprocessedTemplate = {
39
+ renderer: 'mjml',
40
+ template: result
41
+ };
42
+ return this._render(preprocessedTemplate, context);
43
+ }
44
+ return mjml2html(template).html;
83
45
  }
84
- return (0, import_mjml.default)(template).html;
85
- }
86
46
  };
87
47
  MjmlTemplateRenderer = __decorate([
88
- (0, import_container.singleton)(),
89
- __param(0, (0, import_container.forwardRef)(() => import_template_renderer_provider.TemplateRendererProvider)),
90
- __metadata("design:paramtypes", [import_template_renderer_provider.TemplateRendererProvider])
48
+ singleton(),
49
+ __param(0, forwardRef(() => TemplateRendererProvider)),
50
+ __metadata("design:paramtypes", [TemplateRendererProvider])
91
51
  ], MjmlTemplateRenderer);
@@ -1,58 +1,30 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
9
6
  };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
17
9
  };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var string_template_renderer_exports = {};
20
- __export(string_template_renderer_exports, {
21
- StringTemplateRenderer: () => StringTemplateRenderer
22
- });
23
- module.exports = __toCommonJS(string_template_renderer_exports);
24
- var import_container = require("../../container/index.js");
25
- var import_type_guards = require("../../utils/type-guards.js");
26
- var import_template_renderer = require("../template.renderer.js");
27
- var __decorate = function(decorators, target, key, desc) {
28
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
29
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
30
- r = Reflect.decorate(decorators, target, key, desc);
31
- else
32
- for (var i = decorators.length - 1; i >= 0; i--)
33
- if (d = decorators[i])
34
- r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
35
- return c > 3 && r && Object.defineProperty(target, key, r), r;
36
- };
37
- var __metadata = function(k, v) {
38
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
39
- return Reflect.metadata(k, v);
40
- };
41
- let StringTemplateRenderer = class StringTemplateRenderer2 extends import_template_renderer.TemplateRenderer {
42
- constructor() {
43
- super();
44
- }
45
- canHandleType(type) {
46
- return type == "string";
47
- }
48
- async _render({ template }, context) {
49
- if ((0, import_type_guards.isString)(template)) {
50
- return template;
10
+ import { singleton } from '../../container/index.js';
11
+ import { isString } from '../../utils/type-guards.js';
12
+ import { TemplateRenderer } from '../template.renderer.js';
13
+ export let StringTemplateRenderer = class StringTemplateRenderer extends TemplateRenderer {
14
+ constructor() {
15
+ super();
16
+ }
17
+ canHandleType(type) {
18
+ return (type == 'string');
19
+ }
20
+ async _render({ template }, context) {
21
+ if (isString(template)) {
22
+ return template;
23
+ }
24
+ return template(context);
51
25
  }
52
- return template(context);
53
- }
54
26
  };
55
27
  StringTemplateRenderer = __decorate([
56
- (0, import_container.singleton)(),
57
- __metadata("design:paramtypes", [])
28
+ singleton(),
29
+ __metadata("design:paramtypes", [])
58
30
  ], StringTemplateRenderer);