@acorex/platform 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (561) hide show
  1. package/README.md +7 -0
  2. package/auth/README.md +3 -0
  3. package/auth/index.d.ts +16 -0
  4. package/auth/lib/application/application.loader.d.ts +9 -0
  5. package/auth/lib/application/application.types.d.ts +10 -0
  6. package/auth/lib/auth-registry.service.d.ts +12 -0
  7. package/auth/lib/auth.guard.d.ts +2 -0
  8. package/auth/lib/auth.module.d.ts +20 -0
  9. package/auth/lib/auth.strategy.d.ts +28 -0
  10. package/auth/lib/errors.types.d.ts +6 -0
  11. package/auth/lib/feature/feature.loader.d.ts +7 -0
  12. package/auth/lib/feature/feature.types.d.ts +6 -0
  13. package/auth/lib/permission/permission.directive.d.ts +16 -0
  14. package/auth/lib/permission/permission.guard.d.ts +2 -0
  15. package/auth/lib/permission/permission.loader.d.ts +7 -0
  16. package/auth/lib/permission/permission.types.d.ts +1 -0
  17. package/auth/lib/session.service.d.ts +51 -0
  18. package/auth/lib/tenant/tenant.loader.d.ts +9 -0
  19. package/auth/lib/tenant/tenant.types.d.ts +8 -0
  20. package/auth/lib/user/user.types.d.ts +6 -0
  21. package/common/README.md +3 -0
  22. package/common/index.d.ts +11 -0
  23. package/common/lib/common.module.d.ts +21 -0
  24. package/common/lib/configs/app.config.d.ts +19 -0
  25. package/common/lib/data/data-provider.types.d.ts +11 -0
  26. package/common/lib/data/index.d.ts +1 -0
  27. package/common/lib/errors/error-handler-registry.service.d.ts +12 -0
  28. package/common/lib/errors/error-handler.types.d.ts +3 -0
  29. package/common/lib/errors/global-error-handler.d.ts +11 -0
  30. package/common/lib/errors/index.d.ts +3 -0
  31. package/common/lib/layout/component-slot/component-slot-loader.service.d.ts +11 -0
  32. package/common/lib/layout/component-slot/component-slot-registery.service.d.ts +9 -0
  33. package/common/lib/layout/component-slot/component-slot.directive.d.ts +12 -0
  34. package/common/lib/layout/component-slot/component-slot.module.d.ts +15 -0
  35. package/common/lib/layout/component-slot/component-slot.types.d.ts +14 -0
  36. package/common/lib/layout/component-slot/index.d.ts +5 -0
  37. package/common/lib/menu/index.d.ts +2 -0
  38. package/common/lib/menu/menu.loader.d.ts +17 -0
  39. package/common/lib/menu/menu.types.d.ts +13 -0
  40. package/common/lib/settings/index.d.ts +3 -0
  41. package/common/lib/settings/settings.loader.d.ts +8 -0
  42. package/common/lib/settings/settings.service.d.ts +9 -0
  43. package/common/lib/settings/settings.types.d.ts +5 -0
  44. package/common/lib/shared/logo.types.d.ts +19 -0
  45. package/common/lib/shared/state-persistence/index.d.ts +3 -0
  46. package/common/lib/shared/state-persistence/state-persistence.actions.d.ts +1 -0
  47. package/common/lib/shared/state-persistence/state-persistence.module.d.ts +8 -0
  48. package/common/lib/shared/state-persistence/state-persistence.reducers.d.ts +3 -0
  49. package/common/lib/store/common.actions.d.ts +14 -0
  50. package/common/lib/store/common.effects.d.ts +11 -0
  51. package/common/lib/store/index.d.ts +2 -0
  52. package/common/lib/utils/clipboard-service.d.ts +7 -0
  53. package/common/lib/utils/index.d.ts +3 -0
  54. package/common/lib/utils/router-util.service.d.ts +12 -0
  55. package/common/lib/utils/sticky.directive.d.ts +24 -0
  56. package/esm2022/acorex-platform.mjs +5 -0
  57. package/esm2022/auth/acorex-platform-auth.mjs +5 -0
  58. package/esm2022/auth/index.mjs +17 -0
  59. package/esm2022/auth/lib/application/application.loader.mjs +26 -0
  60. package/esm2022/auth/lib/application/application.types.mjs +2 -0
  61. package/esm2022/auth/lib/auth-registry.service.mjs +29 -0
  62. package/esm2022/auth/lib/auth.guard.mjs +18 -0
  63. package/esm2022/auth/lib/auth.module.mjs +84 -0
  64. package/esm2022/auth/lib/auth.strategy.mjs +2 -0
  65. package/esm2022/auth/lib/errors.types.mjs +13 -0
  66. package/esm2022/auth/lib/feature/feature.loader.mjs +14 -0
  67. package/esm2022/auth/lib/feature/feature.types.mjs +2 -0
  68. package/esm2022/auth/lib/permission/permission.directive.mjs +51 -0
  69. package/esm2022/auth/lib/permission/permission.guard.mjs +16 -0
  70. package/esm2022/auth/lib/permission/permission.loader.mjs +14 -0
  71. package/esm2022/auth/lib/permission/permission.types.mjs +2 -0
  72. package/esm2022/auth/lib/session.service.mjs +240 -0
  73. package/esm2022/auth/lib/tenant/tenant.loader.mjs +23 -0
  74. package/esm2022/auth/lib/tenant/tenant.types.mjs +2 -0
  75. package/esm2022/auth/lib/user/user.types.mjs +2 -0
  76. package/esm2022/common/acorex-platform-common.mjs +5 -0
  77. package/esm2022/common/index.mjs +12 -0
  78. package/esm2022/common/lib/common.module.mjs +123 -0
  79. package/esm2022/common/lib/configs/app.config.mjs +27 -0
  80. package/esm2022/common/lib/data/data-provider.types.mjs +3 -0
  81. package/esm2022/common/lib/data/index.mjs +2 -0
  82. package/esm2022/common/lib/errors/error-handler-registry.service.mjs +29 -0
  83. package/esm2022/common/lib/errors/error-handler.types.mjs +2 -0
  84. package/esm2022/common/lib/errors/global-error-handler.mjs +36 -0
  85. package/esm2022/common/lib/errors/index.mjs +4 -0
  86. package/esm2022/common/lib/layout/component-slot/component-slot-loader.service.mjs +56 -0
  87. package/esm2022/common/lib/layout/component-slot/component-slot-registery.service.mjs +28 -0
  88. package/esm2022/common/lib/layout/component-slot/component-slot.directive.mjs +24 -0
  89. package/esm2022/common/lib/layout/component-slot/component-slot.module.mjs +72 -0
  90. package/esm2022/common/lib/layout/component-slot/component-slot.types.mjs +2 -0
  91. package/esm2022/common/lib/layout/component-slot/index.mjs +6 -0
  92. package/esm2022/common/lib/menu/index.mjs +3 -0
  93. package/esm2022/common/lib/menu/menu.loader.mjs +39 -0
  94. package/esm2022/common/lib/menu/menu.types.mjs +2 -0
  95. package/esm2022/common/lib/settings/index.mjs +4 -0
  96. package/esm2022/common/lib/settings/settings.loader.mjs +17 -0
  97. package/esm2022/common/lib/settings/settings.service.mjs +20 -0
  98. package/esm2022/common/lib/settings/settings.types.mjs +2 -0
  99. package/esm2022/common/lib/shared/logo.types.mjs +21 -0
  100. package/esm2022/common/lib/shared/state-persistence/index.mjs +4 -0
  101. package/esm2022/common/lib/shared/state-persistence/state-persistence.actions.mjs +3 -0
  102. package/esm2022/common/lib/shared/state-persistence/state-persistence.module.mjs +36 -0
  103. package/esm2022/common/lib/shared/state-persistence/state-persistence.reducers.mjs +30 -0
  104. package/esm2022/common/lib/store/common.actions.mjs +5 -0
  105. package/esm2022/common/lib/store/common.effects.mjs +31 -0
  106. package/esm2022/common/lib/store/index.mjs +3 -0
  107. package/esm2022/common/lib/utils/clipboard-service.mjs +26 -0
  108. package/esm2022/common/lib/utils/index.mjs +4 -0
  109. package/esm2022/common/lib/utils/router-util.service.mjs +43 -0
  110. package/esm2022/common/lib/utils/sticky.directive.mjs +74 -0
  111. package/esm2022/index.mjs +2 -0
  112. package/esm2022/layouts/acorex-platform-layouts.mjs +5 -0
  113. package/esm2022/layouts/index.mjs +5 -0
  114. package/esm2022/layouts/lib/admin/admin-child-layout/admin-child-features-list.component.mjs +58 -0
  115. package/esm2022/layouts/lib/admin/admin-child-layout/admin-child-layout.component.mjs +50 -0
  116. package/esm2022/layouts/lib/admin/admin-child-layout/admin-child-layout.module.mjs +57 -0
  117. package/esm2022/layouts/lib/admin/admin-child-layout/index.mjs +4 -0
  118. package/esm2022/layouts/lib/admin/admin-root-layout/admin-root-layout.component.mjs +74 -0
  119. package/esm2022/layouts/lib/admin/admin-root-layout/admin-root-layout.module.mjs +92 -0
  120. package/esm2022/layouts/lib/admin/admin-root-layout/components/admin-footer/admin-footer.component.mjs +14 -0
  121. package/esm2022/layouts/lib/admin/admin-root-layout/components/admin-header/admin-header.component.mjs +29 -0
  122. package/esm2022/layouts/lib/admin/admin-root-layout/index.mjs +5 -0
  123. package/esm2022/layouts/lib/admin/admin.module.mjs +75 -0
  124. package/esm2022/layouts/lib/admin/admin.routes.mjs +37 -0
  125. package/esm2022/layouts/lib/admin/custom-reuse.strategy.mjs +20 -0
  126. package/esm2022/layouts/lib/admin/entity-layout/entity-create-view/entity-create-view.component.mjs +105 -0
  127. package/esm2022/layouts/lib/admin/entity-layout/entity-create-view/entity-create-view.config.mjs +137 -0
  128. package/esm2022/layouts/lib/admin/entity-layout/entity-details-view/detail-view.config.mjs +125 -0
  129. package/esm2022/layouts/lib/admin/entity-layout/entity-details-view/entity-details-view.component.mjs +180 -0
  130. package/esm2022/layouts/lib/admin/entity-layout/entity-details-view/index.mjs +3 -0
  131. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/entity-custom-view/entity-custom-view.component.mjs +200 -0
  132. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/index.mjs +6 -0
  133. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-columns/list-view-option-columns.component.mjs +56 -0
  134. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-conditions/list-view-option-conditions.component.mjs +108 -0
  135. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-conditions/list-view-option-filter-operator.component.mjs +76 -0
  136. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-sorting/list-view-option-sorting.component.mjs +57 -0
  137. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/entity-list-view.component.mjs +283 -0
  138. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/index.mjs +5 -0
  139. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/list-view.config.mjs +333 -0
  140. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/list-view.module.mjs +156 -0
  141. package/esm2022/layouts/lib/admin/entity-layout/entity-modify-view/entity-modify-view.component.mjs +86 -0
  142. package/esm2022/layouts/lib/admin/entity-layout/entity-modify-view/entity-modify-view.config.mjs +66 -0
  143. package/esm2022/layouts/lib/admin/entity-layout/entity-quick-view/entity-quick-view.component.mjs +82 -0
  144. package/esm2022/layouts/lib/admin/entity-layout/entity-quick-view/index.mjs +2 -0
  145. package/esm2022/layouts/lib/admin/entity-layout/index.mjs +4 -0
  146. package/esm2022/layouts/lib/admin/entity-layout/store/entity.actions.mjs +18 -0
  147. package/esm2022/layouts/lib/admin/entity-layout/store/entity.effects.mjs +76 -0
  148. package/esm2022/layouts/lib/admin/entity-layout/workflows/create-entity.workflow.mjs +91 -0
  149. package/esm2022/layouts/lib/admin/entity-layout/workflows/delete-entity.workflow.mjs +153 -0
  150. package/esm2022/layouts/lib/admin/entity-layout/workflows/modify-entity.workflow.mjs +98 -0
  151. package/esm2022/layouts/lib/admin/entity.resolver.mjs +21 -0
  152. package/esm2022/layouts/lib/admin/index.mjs +8 -0
  153. package/esm2022/layouts/lib/admin/store/admin-layout.actions.mjs +12 -0
  154. package/esm2022/layouts/lib/admin/store/admin-layout.effects.mjs +29 -0
  155. package/esm2022/layouts/lib/admin/store/admin-layout.reducers.mjs +60 -0
  156. package/esm2022/layouts/lib/admin/store/admin-layout.selectors.mjs +8 -0
  157. package/esm2022/layouts/lib/admin/store/admin-layout.state.mjs +16 -0
  158. package/esm2022/layouts/lib/admin/store/index.mjs +6 -0
  159. package/esm2022/layouts/lib/layout.module.mjs +63 -0
  160. package/esm2022/layouts/lib/layout.routes.mjs +15 -0
  161. package/esm2022/layouts/lib/shared/components/content-view/content-view.page.mjs +64 -0
  162. package/esm2022/layouts/lib/shared/components/content-view/content-view.type.mjs +2 -0
  163. package/esm2022/layouts/lib/shared/components/error-401/error-401.component.mjs +29 -0
  164. package/esm2022/layouts/lib/shared/components/error-404/error-404.component.mjs +22 -0
  165. package/esm2022/layouts/lib/shared/components/error-offline/error-offline.component.mjs +16 -0
  166. package/esm2022/layouts/lib/shared/components/index.mjs +9 -0
  167. package/esm2022/layouts/lib/shared/components/logo/logo.component.mjs +38 -0
  168. package/esm2022/layouts/lib/shared/components/slots/footer-text-slot.component.mjs +20 -0
  169. package/esm2022/layouts/lib/shared/components/slots/navbar-slot.component.mjs +36 -0
  170. package/esm2022/layouts/lib/shared/components/slots/theme-slot.component.mjs +48 -0
  171. package/esm2022/layouts/lib/shared/entity/entity-registery.service.mjs +70 -0
  172. package/esm2022/layouts/lib/shared/entity/entity.class.mjs +32 -0
  173. package/esm2022/layouts/lib/shared/entity/entity.loader.mjs +13 -0
  174. package/esm2022/layouts/lib/shared/entity/index.mjs +4 -0
  175. package/esm2022/layouts/lib/shared/index.mjs +5 -0
  176. package/esm2022/layouts/lib/shared/services/index.mjs +2 -0
  177. package/esm2022/layouts/lib/shared/services/layout.service.mjs +79 -0
  178. package/esm2022/layouts/lib/shared/workflows/common.workflow.mjs +110 -0
  179. package/esm2022/layouts/lib/shared/workflows/error-handler.mjs +24 -0
  180. package/esm2022/layouts/lib/shared/workflows/index.mjs +3 -0
  181. package/esm2022/layouts/lib/widgets/avatar/avatar-widget-edit.component.mjs +102 -0
  182. package/esm2022/layouts/lib/widgets/avatar/avatar-widget-view.component.mjs +33 -0
  183. package/esm2022/layouts/lib/widgets/checkbox/checkbox-widget-column.component.mjs +53 -0
  184. package/esm2022/layouts/lib/widgets/checkbox/checkbox-widget-edit.component.mjs +22 -0
  185. package/esm2022/layouts/lib/widgets/checkbox/checkbox-widget-view.component.mjs +47 -0
  186. package/esm2022/layouts/lib/widgets/common-widget-filter/boolean-widget-filter.component.mjs +147 -0
  187. package/esm2022/layouts/lib/widgets/common-widget-filter/number-widget-filter.component.mjs +135 -0
  188. package/esm2022/layouts/lib/widgets/common-widget-filter/string-widget-filter.component.mjs +125 -0
  189. package/esm2022/layouts/lib/widgets/common-widgets.module.mjs +479 -0
  190. package/esm2022/layouts/lib/widgets/dateTime/dateTime-widget-column.component.mjs +44 -0
  191. package/esm2022/layouts/lib/widgets/dateTime/dateTime-widget-edit.component.mjs +175 -0
  192. package/esm2022/layouts/lib/widgets/dateTime/dateTime-widget-filter.component.mjs +230 -0
  193. package/esm2022/layouts/lib/widgets/dateTime/dateTime-widget-view.component.mjs +71 -0
  194. package/esm2022/layouts/lib/widgets/email/email-widget-column.component.mjs +73 -0
  195. package/esm2022/layouts/lib/widgets/email/email-widget-edit.component.mjs +249 -0
  196. package/esm2022/layouts/lib/widgets/email/email-widget-view.component.mjs +108 -0
  197. package/esm2022/layouts/lib/widgets/file/file-widget-column.component.mjs +27 -0
  198. package/esm2022/layouts/lib/widgets/file/file-widget-edit.component.mjs +200 -0
  199. package/esm2022/layouts/lib/widgets/file/file-widget-filter.component.mjs +27 -0
  200. package/esm2022/layouts/lib/widgets/file/file-widget-view.component.mjs +153 -0
  201. package/esm2022/layouts/lib/widgets/gallery/gallery-widget-edit.component.mjs +189 -0
  202. package/esm2022/layouts/lib/widgets/gallery/gallery-widget-filter.component.mjs +27 -0
  203. package/esm2022/layouts/lib/widgets/gallery/gallery-widget-types.mjs +2 -0
  204. package/esm2022/layouts/lib/widgets/gallery/gallery-widget-view.component.mjs +173 -0
  205. package/esm2022/layouts/lib/widgets/index.mjs +2 -0
  206. package/esm2022/layouts/lib/widgets/lookup/lookup-widget-column.component.mjs +43 -0
  207. package/esm2022/layouts/lib/widgets/lookup/lookup-widget-edit.component.mjs +74 -0
  208. package/esm2022/layouts/lib/widgets/lookup/lookup-widget-filter.component.mjs +139 -0
  209. package/esm2022/layouts/lib/widgets/lookup/lookup-widget-view.component.mjs +54 -0
  210. package/esm2022/layouts/lib/widgets/map/map-widget-edit.component.mjs +91 -0
  211. package/esm2022/layouts/lib/widgets/map/map-widget-view.component.mjs +63 -0
  212. package/esm2022/layouts/lib/widgets/messenger/messenger-widget-column.component.mjs +71 -0
  213. package/esm2022/layouts/lib/widgets/messenger/messenger-widget-edit.component.mjs +136 -0
  214. package/esm2022/layouts/lib/widgets/messenger/messenger-widget-view.component.mjs +132 -0
  215. package/esm2022/layouts/lib/widgets/number/number-widget-edit.component.mjs +46 -0
  216. package/esm2022/layouts/lib/widgets/number/number-widget-view.component.mjs +30 -0
  217. package/esm2022/layouts/lib/widgets/password/change-password.component.mjs +175 -0
  218. package/esm2022/layouts/lib/widgets/password/password-widget-column.component.mjs +77 -0
  219. package/esm2022/layouts/lib/widgets/password/password-widget-edit.component.mjs +34 -0
  220. package/esm2022/layouts/lib/widgets/password/password-widget-view.component.mjs +109 -0
  221. package/esm2022/layouts/lib/widgets/phone/phone-widget-column.component.mjs +91 -0
  222. package/esm2022/layouts/lib/widgets/phone/phone-widget-edit.component.mjs +315 -0
  223. package/esm2022/layouts/lib/widgets/phone/phone-widget-view.component.mjs +123 -0
  224. package/esm2022/layouts/lib/widgets/rich-text/rich-text-widget-column.component.mjs +69 -0
  225. package/esm2022/layouts/lib/widgets/rich-text/rich-text-widget-edit.component.mjs +67 -0
  226. package/esm2022/layouts/lib/widgets/rich-text/rich-text-widget-view.component.mjs +34 -0
  227. package/esm2022/layouts/lib/widgets/selection-list/selection-list-widget-column.component.mjs +43 -0
  228. package/esm2022/layouts/lib/widgets/selection-list/selection-list-widget-edit.component.mjs +53 -0
  229. package/esm2022/layouts/lib/widgets/selection-list/selection-list-widget-filter.component.mjs +41 -0
  230. package/esm2022/layouts/lib/widgets/selection-list/selection-list-widget-view.component.mjs +45 -0
  231. package/esm2022/layouts/lib/widgets/signature-pad/signature-pad-widget-edit.component.mjs +128 -0
  232. package/esm2022/layouts/lib/widgets/signature-pad/signature-pad-widget-view.component.mjs +41 -0
  233. package/esm2022/layouts/lib/widgets/text/largetext-widget-edit.component.mjs +37 -0
  234. package/esm2022/layouts/lib/widgets/text/text-widget-column.component.mjs +47 -0
  235. package/esm2022/layouts/lib/widgets/text/text-widget-edit.component.mjs +162 -0
  236. package/esm2022/layouts/lib/widgets/text/text-widget-view.component.mjs +66 -0
  237. package/esm2022/layouts/lib/widgets/toggle/toggle-widget-column.component.mjs +57 -0
  238. package/esm2022/layouts/lib/widgets/toggle/toggle-widget-edit.component.mjs +25 -0
  239. package/esm2022/layouts/lib/widgets/toggle/toggle-widget-view.component.mjs +49 -0
  240. package/esm2022/mocks/acorex-platform-mocks.mjs +5 -0
  241. package/esm2022/mocks/index.mjs +7 -0
  242. package/esm2022/mocks/lib/mocks.module.mjs +15 -0
  243. package/esm2022/mocks/lib/services/mocker.service.mjs +124 -0
  244. package/esm2022/mocks/lib/storage/storage.mock.service.mjs +186 -0
  245. package/esm2022/native/acorex-platform-native.mjs +5 -0
  246. package/esm2022/native/index.mjs +3 -0
  247. package/esm2022/native/lib/native.module.mjs +16 -0
  248. package/esm2022/native/lib/native.service.mjs +133 -0
  249. package/esm2022/schema/acorex-platform-schema.mjs +5 -0
  250. package/esm2022/schema/index.mjs +14 -0
  251. package/esm2022/schema/lib/component-loader.mjs +2 -0
  252. package/esm2022/schema/lib/formats.mjs +2 -0
  253. package/esm2022/schema/lib/operators.mjs +50 -0
  254. package/esm2022/schema/lib/schema-registery.service.mjs +33 -0
  255. package/esm2022/schema/lib/schema.mjs +2 -0
  256. package/esm2022/schema/lib/schema.module.mjs +23 -0
  257. package/esm2022/schema/lib/widget/widget-base.mjs +110 -0
  258. package/esm2022/schema/lib/widget/widget-column-renderer.mjs +99 -0
  259. package/esm2022/schema/lib/widget/widget-filter-renderer.mjs +133 -0
  260. package/esm2022/schema/lib/widget/widget-renderer.mjs +144 -0
  261. package/esm2022/schema/lib/widget/widget-token.mjs +3 -0
  262. package/esm2022/workflow/acorex-platform-workflow.mjs +5 -0
  263. package/esm2022/workflow/index.mjs +7 -0
  264. package/esm2022/workflow/lib/errors.types.mjs +8 -0
  265. package/esm2022/workflow/lib/workflow-event-dispatcher.service.mjs +23 -0
  266. package/esm2022/workflow/lib/workflow-registery.service.mjs +39 -0
  267. package/esm2022/workflow/lib/workflow.module.mjs +96 -0
  268. package/esm2022/workflow/lib/workflow.service.mjs +141 -0
  269. package/esm2022/workflow/lib/workflow.types.mjs +52 -0
  270. package/fesm2022/acorex-platform-auth.mjs +502 -0
  271. package/fesm2022/acorex-platform-auth.mjs.map +1 -0
  272. package/fesm2022/acorex-platform-common.mjs +699 -0
  273. package/fesm2022/acorex-platform-common.mjs.map +1 -0
  274. package/fesm2022/acorex-platform-layouts-avatar-widget-edit.component-PZr1lXj-.mjs +104 -0
  275. package/fesm2022/acorex-platform-layouts-avatar-widget-edit.component-PZr1lXj-.mjs.map +1 -0
  276. package/fesm2022/acorex-platform-layouts-avatar-widget-view.component-pJJYkvdH.mjs +36 -0
  277. package/fesm2022/acorex-platform-layouts-avatar-widget-view.component-pJJYkvdH.mjs.map +1 -0
  278. package/fesm2022/acorex-platform-layouts-boolean-widget-filter.component-H056Q5Gz.mjs +150 -0
  279. package/fesm2022/acorex-platform-layouts-boolean-widget-filter.component-H056Q5Gz.mjs.map +1 -0
  280. package/fesm2022/acorex-platform-layouts-change-password.component-QMAm6dxN.mjs +178 -0
  281. package/fesm2022/acorex-platform-layouts-change-password.component-QMAm6dxN.mjs.map +1 -0
  282. package/fesm2022/acorex-platform-layouts-checkbox-widget-column.component-vRJI5S-w.mjs +56 -0
  283. package/fesm2022/acorex-platform-layouts-checkbox-widget-column.component-vRJI5S-w.mjs.map +1 -0
  284. package/fesm2022/acorex-platform-layouts-checkbox-widget-edit.component-P4cD_Nwg.mjs +25 -0
  285. package/fesm2022/acorex-platform-layouts-checkbox-widget-edit.component-P4cD_Nwg.mjs.map +1 -0
  286. package/fesm2022/acorex-platform-layouts-checkbox-widget-view.component-m6bF8XFR.mjs +50 -0
  287. package/fesm2022/acorex-platform-layouts-checkbox-widget-view.component-m6bF8XFR.mjs.map +1 -0
  288. package/fesm2022/acorex-platform-layouts-dateTime-widget-column.component-qeQRJePy.mjs +47 -0
  289. package/fesm2022/acorex-platform-layouts-dateTime-widget-column.component-qeQRJePy.mjs.map +1 -0
  290. package/fesm2022/acorex-platform-layouts-dateTime-widget-edit.component-zeJXGXY8.mjs +178 -0
  291. package/fesm2022/acorex-platform-layouts-dateTime-widget-edit.component-zeJXGXY8.mjs.map +1 -0
  292. package/fesm2022/acorex-platform-layouts-dateTime-widget-filter.component-DJ6esclU.mjs +233 -0
  293. package/fesm2022/acorex-platform-layouts-dateTime-widget-filter.component-DJ6esclU.mjs.map +1 -0
  294. package/fesm2022/acorex-platform-layouts-dateTime-widget-view.component-BrwycTWz.mjs +74 -0
  295. package/fesm2022/acorex-platform-layouts-dateTime-widget-view.component-BrwycTWz.mjs.map +1 -0
  296. package/fesm2022/acorex-platform-layouts-email-widget-column.component-ac8gqsFT.mjs +76 -0
  297. package/fesm2022/acorex-platform-layouts-email-widget-column.component-ac8gqsFT.mjs.map +1 -0
  298. package/fesm2022/acorex-platform-layouts-email-widget-edit.component-m2dI7y9X.mjs +252 -0
  299. package/fesm2022/acorex-platform-layouts-email-widget-edit.component-m2dI7y9X.mjs.map +1 -0
  300. package/fesm2022/acorex-platform-layouts-email-widget-view.component-XrV8va7z.mjs +111 -0
  301. package/fesm2022/acorex-platform-layouts-email-widget-view.component-XrV8va7z.mjs.map +1 -0
  302. package/fesm2022/acorex-platform-layouts-entity-create-view.component-8rtifIvM.mjs +108 -0
  303. package/fesm2022/acorex-platform-layouts-entity-create-view.component-8rtifIvM.mjs.map +1 -0
  304. package/fesm2022/acorex-platform-layouts-entity-modify-view.component-VeTkP3-n.mjs +89 -0
  305. package/fesm2022/acorex-platform-layouts-entity-modify-view.component-VeTkP3-n.mjs.map +1 -0
  306. package/fesm2022/acorex-platform-layouts-file-widget-column.component-v7kAdIQ9.mjs +30 -0
  307. package/fesm2022/acorex-platform-layouts-file-widget-column.component-v7kAdIQ9.mjs.map +1 -0
  308. package/fesm2022/acorex-platform-layouts-file-widget-edit.component-Wrq7ZL9R.mjs +203 -0
  309. package/fesm2022/acorex-platform-layouts-file-widget-edit.component-Wrq7ZL9R.mjs.map +1 -0
  310. package/fesm2022/acorex-platform-layouts-file-widget-filter.component-1-NJh38j.mjs +30 -0
  311. package/fesm2022/acorex-platform-layouts-file-widget-filter.component-1-NJh38j.mjs.map +1 -0
  312. package/fesm2022/acorex-platform-layouts-file-widget-view.component-mXBrKX0K.mjs +156 -0
  313. package/fesm2022/acorex-platform-layouts-file-widget-view.component-mXBrKX0K.mjs.map +1 -0
  314. package/fesm2022/acorex-platform-layouts-gallery-widget-edit.component-cWNvVwum.mjs +192 -0
  315. package/fesm2022/acorex-platform-layouts-gallery-widget-edit.component-cWNvVwum.mjs.map +1 -0
  316. package/fesm2022/acorex-platform-layouts-gallery-widget-filter.component-OCz0hj5i.mjs +30 -0
  317. package/fesm2022/acorex-platform-layouts-gallery-widget-filter.component-OCz0hj5i.mjs.map +1 -0
  318. package/fesm2022/acorex-platform-layouts-gallery-widget-view.component-xU52uaP0.mjs +176 -0
  319. package/fesm2022/acorex-platform-layouts-gallery-widget-view.component-xU52uaP0.mjs.map +1 -0
  320. package/fesm2022/acorex-platform-layouts-largetext-widget-edit.component-Um_eBRFi.mjs +40 -0
  321. package/fesm2022/acorex-platform-layouts-largetext-widget-edit.component-Um_eBRFi.mjs.map +1 -0
  322. package/fesm2022/acorex-platform-layouts-lookup-widget-column.component-Ts0MJe8O.mjs +46 -0
  323. package/fesm2022/acorex-platform-layouts-lookup-widget-column.component-Ts0MJe8O.mjs.map +1 -0
  324. package/fesm2022/acorex-platform-layouts-lookup-widget-edit.component-l5nSr9Cm.mjs +119 -0
  325. package/fesm2022/acorex-platform-layouts-lookup-widget-edit.component-l5nSr9Cm.mjs.map +1 -0
  326. package/fesm2022/acorex-platform-layouts-lookup-widget-filter.component-gp5skvmz.mjs +181 -0
  327. package/fesm2022/acorex-platform-layouts-lookup-widget-filter.component-gp5skvmz.mjs.map +1 -0
  328. package/fesm2022/acorex-platform-layouts-lookup-widget-view.component-ftFXFj6k.mjs +57 -0
  329. package/fesm2022/acorex-platform-layouts-lookup-widget-view.component-ftFXFj6k.mjs.map +1 -0
  330. package/fesm2022/acorex-platform-layouts-map-widget-edit.component-SOQvPhmX.mjs +94 -0
  331. package/fesm2022/acorex-platform-layouts-map-widget-edit.component-SOQvPhmX.mjs.map +1 -0
  332. package/fesm2022/acorex-platform-layouts-map-widget-view.component-1Lj9efbd.mjs +66 -0
  333. package/fesm2022/acorex-platform-layouts-map-widget-view.component-1Lj9efbd.mjs.map +1 -0
  334. package/fesm2022/acorex-platform-layouts-messenger-widget-column.component-W7ZY-W84.mjs +74 -0
  335. package/fesm2022/acorex-platform-layouts-messenger-widget-column.component-W7ZY-W84.mjs.map +1 -0
  336. package/fesm2022/acorex-platform-layouts-messenger-widget-edit.component-dAX8nirB.mjs +139 -0
  337. package/fesm2022/acorex-platform-layouts-messenger-widget-edit.component-dAX8nirB.mjs.map +1 -0
  338. package/fesm2022/acorex-platform-layouts-messenger-widget-view.component-9TJiFdq-.mjs +135 -0
  339. package/fesm2022/acorex-platform-layouts-messenger-widget-view.component-9TJiFdq-.mjs.map +1 -0
  340. package/fesm2022/acorex-platform-layouts-number-widget-edit.component-DDi-o_Zn.mjs +49 -0
  341. package/fesm2022/acorex-platform-layouts-number-widget-edit.component-DDi-o_Zn.mjs.map +1 -0
  342. package/fesm2022/acorex-platform-layouts-number-widget-filter.component-DPGSzdNm.mjs +138 -0
  343. package/fesm2022/acorex-platform-layouts-number-widget-filter.component-DPGSzdNm.mjs.map +1 -0
  344. package/fesm2022/acorex-platform-layouts-number-widget-view.component-hqkAR0LG.mjs +33 -0
  345. package/fesm2022/acorex-platform-layouts-number-widget-view.component-hqkAR0LG.mjs.map +1 -0
  346. package/fesm2022/acorex-platform-layouts-password-widget-column.component-ic1jykZL.mjs +80 -0
  347. package/fesm2022/acorex-platform-layouts-password-widget-column.component-ic1jykZL.mjs.map +1 -0
  348. package/fesm2022/acorex-platform-layouts-password-widget-edit.component-D8xI17yk.mjs +37 -0
  349. package/fesm2022/acorex-platform-layouts-password-widget-edit.component-D8xI17yk.mjs.map +1 -0
  350. package/fesm2022/acorex-platform-layouts-password-widget-view.component-E2vtPKRO.mjs +112 -0
  351. package/fesm2022/acorex-platform-layouts-password-widget-view.component-E2vtPKRO.mjs.map +1 -0
  352. package/fesm2022/acorex-platform-layouts-phone-widget-column.component-s04WZfzv.mjs +94 -0
  353. package/fesm2022/acorex-platform-layouts-phone-widget-column.component-s04WZfzv.mjs.map +1 -0
  354. package/fesm2022/acorex-platform-layouts-phone-widget-edit.component-MKzlZ0_B.mjs +318 -0
  355. package/fesm2022/acorex-platform-layouts-phone-widget-edit.component-MKzlZ0_B.mjs.map +1 -0
  356. package/fesm2022/acorex-platform-layouts-phone-widget-view.component-NEO22XO7.mjs +126 -0
  357. package/fesm2022/acorex-platform-layouts-phone-widget-view.component-NEO22XO7.mjs.map +1 -0
  358. package/fesm2022/acorex-platform-layouts-rich-text-widget-column.component-P0YzXTIB.mjs +72 -0
  359. package/fesm2022/acorex-platform-layouts-rich-text-widget-column.component-P0YzXTIB.mjs.map +1 -0
  360. package/fesm2022/acorex-platform-layouts-rich-text-widget-edit.component-ro2yg7PR.mjs +70 -0
  361. package/fesm2022/acorex-platform-layouts-rich-text-widget-edit.component-ro2yg7PR.mjs.map +1 -0
  362. package/fesm2022/acorex-platform-layouts-rich-text-widget-view.component--Rzxm2a6.mjs +37 -0
  363. package/fesm2022/acorex-platform-layouts-rich-text-widget-view.component--Rzxm2a6.mjs.map +1 -0
  364. package/fesm2022/acorex-platform-layouts-selection-list-widget-column.component-9FTkDGmq.mjs +46 -0
  365. package/fesm2022/acorex-platform-layouts-selection-list-widget-column.component-9FTkDGmq.mjs.map +1 -0
  366. package/fesm2022/acorex-platform-layouts-selection-list-widget-edit.component-FpOQ12Ie.mjs +56 -0
  367. package/fesm2022/acorex-platform-layouts-selection-list-widget-edit.component-FpOQ12Ie.mjs.map +1 -0
  368. package/fesm2022/acorex-platform-layouts-selection-list-widget-filter.component-hGk-ZZ78.mjs +44 -0
  369. package/fesm2022/acorex-platform-layouts-selection-list-widget-filter.component-hGk-ZZ78.mjs.map +1 -0
  370. package/fesm2022/acorex-platform-layouts-selection-list-widget-view.component-s9xq___Y.mjs +48 -0
  371. package/fesm2022/acorex-platform-layouts-selection-list-widget-view.component-s9xq___Y.mjs.map +1 -0
  372. package/fesm2022/acorex-platform-layouts-signature-pad-widget-edit.component-W28Uk9zO.mjs +131 -0
  373. package/fesm2022/acorex-platform-layouts-signature-pad-widget-edit.component-W28Uk9zO.mjs.map +1 -0
  374. package/fesm2022/acorex-platform-layouts-signature-pad-widget-view.component-R40Ml757.mjs +44 -0
  375. package/fesm2022/acorex-platform-layouts-signature-pad-widget-view.component-R40Ml757.mjs.map +1 -0
  376. package/fesm2022/acorex-platform-layouts-string-widget-filter.component-4oZ6BVis.mjs +128 -0
  377. package/fesm2022/acorex-platform-layouts-string-widget-filter.component-4oZ6BVis.mjs.map +1 -0
  378. package/fesm2022/acorex-platform-layouts-text-widget-column.component-qhh6MT79.mjs +50 -0
  379. package/fesm2022/acorex-platform-layouts-text-widget-column.component-qhh6MT79.mjs.map +1 -0
  380. package/fesm2022/acorex-platform-layouts-text-widget-edit.component-TC127Dq8.mjs +165 -0
  381. package/fesm2022/acorex-platform-layouts-text-widget-edit.component-TC127Dq8.mjs.map +1 -0
  382. package/fesm2022/acorex-platform-layouts-text-widget-view.component-65eOj0qR.mjs +69 -0
  383. package/fesm2022/acorex-platform-layouts-text-widget-view.component-65eOj0qR.mjs.map +1 -0
  384. package/fesm2022/acorex-platform-layouts-toggle-widget-column.component-uxOXR-bL.mjs +60 -0
  385. package/fesm2022/acorex-platform-layouts-toggle-widget-column.component-uxOXR-bL.mjs.map +1 -0
  386. package/fesm2022/acorex-platform-layouts-toggle-widget-edit.component-R44L1pgJ.mjs +28 -0
  387. package/fesm2022/acorex-platform-layouts-toggle-widget-edit.component-R44L1pgJ.mjs.map +1 -0
  388. package/fesm2022/acorex-platform-layouts-toggle-widget-view.component-DTOeAUiy.mjs +52 -0
  389. package/fesm2022/acorex-platform-layouts-toggle-widget-view.component-DTOeAUiy.mjs.map +1 -0
  390. package/fesm2022/acorex-platform-layouts.mjs +3732 -0
  391. package/fesm2022/acorex-platform-layouts.mjs.map +1 -0
  392. package/fesm2022/acorex-platform-mocks.mjs +332 -0
  393. package/fesm2022/acorex-platform-mocks.mjs.map +1 -0
  394. package/fesm2022/acorex-platform-native.mjs +154 -0
  395. package/fesm2022/acorex-platform-native.mjs.map +1 -0
  396. package/fesm2022/acorex-platform-schema.mjs +572 -0
  397. package/fesm2022/acorex-platform-schema.mjs.map +1 -0
  398. package/fesm2022/acorex-platform-workflow.mjs +350 -0
  399. package/fesm2022/acorex-platform-workflow.mjs.map +1 -0
  400. package/fesm2022/acorex-platform.mjs +6 -0
  401. package/fesm2022/acorex-platform.mjs.map +1 -0
  402. package/index.d.ts +2 -0
  403. package/layouts/README.md +3 -0
  404. package/layouts/index.d.ts +4 -0
  405. package/layouts/lib/admin/admin-child-layout/admin-child-features-list.component.d.ts +22 -0
  406. package/layouts/lib/admin/admin-child-layout/admin-child-layout.component.d.ts +21 -0
  407. package/layouts/lib/admin/admin-child-layout/admin-child-layout.module.d.ts +17 -0
  408. package/layouts/lib/admin/admin-child-layout/index.d.ts +3 -0
  409. package/layouts/lib/admin/admin-root-layout/admin-root-layout.component.d.ts +30 -0
  410. package/layouts/lib/admin/admin-root-layout/admin-root-layout.module.d.ts +25 -0
  411. package/layouts/lib/admin/admin-root-layout/components/admin-footer/admin-footer.component.d.ts +5 -0
  412. package/layouts/lib/admin/admin-root-layout/components/admin-header/admin-header.component.d.ts +10 -0
  413. package/layouts/lib/admin/admin-root-layout/index.d.ts +4 -0
  414. package/layouts/lib/admin/admin.module.d.ts +11 -0
  415. package/layouts/lib/admin/admin.routes.d.ts +2 -0
  416. package/layouts/lib/admin/custom-reuse.strategy.d.ts +8 -0
  417. package/layouts/lib/admin/entity-layout/entity-create-view/entity-create-view.component.d.ts +20 -0
  418. package/layouts/lib/admin/entity-layout/entity-create-view/entity-create-view.config.d.ts +54 -0
  419. package/layouts/lib/admin/entity-layout/entity-details-view/detail-view.config.d.ts +48 -0
  420. package/layouts/lib/admin/entity-layout/entity-details-view/entity-details-view.component.d.ts +41 -0
  421. package/layouts/lib/admin/entity-layout/entity-details-view/index.d.ts +2 -0
  422. package/layouts/lib/admin/entity-layout/entity-list-view/components/entity-custom-view/entity-custom-view.component.d.ts +47 -0
  423. package/layouts/lib/admin/entity-layout/entity-list-view/components/index.d.ts +5 -0
  424. package/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-columns/list-view-option-columns.component.d.ts +22 -0
  425. package/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-conditions/list-view-option-conditions.component.d.ts +35 -0
  426. package/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-conditions/list-view-option-filter-operator.component.d.ts +18 -0
  427. package/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-sorting/list-view-option-sorting.component.d.ts +22 -0
  428. package/layouts/lib/admin/entity-layout/entity-list-view/entity-list-view.component.d.ts +63 -0
  429. package/layouts/lib/admin/entity-layout/entity-list-view/index.d.ts +4 -0
  430. package/layouts/lib/admin/entity-layout/entity-list-view/list-view.config.d.ts +110 -0
  431. package/layouts/lib/admin/entity-layout/entity-list-view/list-view.module.d.ts +41 -0
  432. package/layouts/lib/admin/entity-layout/entity-modify-view/entity-modify-view.component.d.ts +25 -0
  433. package/layouts/lib/admin/entity-layout/entity-modify-view/entity-modify-view.config.d.ts +31 -0
  434. package/layouts/lib/admin/entity-layout/entity-quick-view/entity-quick-view.component.d.ts +22 -0
  435. package/layouts/lib/admin/entity-layout/entity-quick-view/index.d.ts +1 -0
  436. package/layouts/lib/admin/entity-layout/index.d.ts +3 -0
  437. package/layouts/lib/admin/entity-layout/store/entity.actions.d.ts +48 -0
  438. package/layouts/lib/admin/entity-layout/store/entity.effects.d.ts +22 -0
  439. package/layouts/lib/admin/entity-layout/workflows/create-entity.workflow.d.ts +28 -0
  440. package/layouts/lib/admin/entity-layout/workflows/delete-entity.workflow.d.ts +33 -0
  441. package/layouts/lib/admin/entity-layout/workflows/modify-entity.workflow.d.ts +31 -0
  442. package/layouts/lib/admin/entity.resolver.d.ts +4 -0
  443. package/layouts/lib/admin/index.d.ts +7 -0
  444. package/layouts/lib/admin/store/admin-layout.actions.d.ts +8 -0
  445. package/layouts/lib/admin/store/admin-layout.effects.d.ts +10 -0
  446. package/layouts/lib/admin/store/admin-layout.reducers.d.ts +24 -0
  447. package/layouts/lib/admin/store/admin-layout.selectors.d.ts +5 -0
  448. package/layouts/lib/admin/store/admin-layout.state.d.ts +14 -0
  449. package/layouts/lib/admin/store/index.d.ts +5 -0
  450. package/layouts/lib/layout.module.d.ts +9 -0
  451. package/layouts/lib/layout.routes.d.ts +2 -0
  452. package/layouts/lib/shared/components/content-view/content-view.page.d.ts +23 -0
  453. package/layouts/lib/shared/components/content-view/content-view.type.d.ts +16 -0
  454. package/layouts/lib/shared/components/error-401/error-401.component.d.ts +13 -0
  455. package/layouts/lib/shared/components/error-404/error-404.component.d.ts +8 -0
  456. package/layouts/lib/shared/components/error-offline/error-offline.component.d.ts +9 -0
  457. package/layouts/lib/shared/components/index.d.ts +8 -0
  458. package/layouts/lib/shared/components/logo/logo.component.d.ts +8 -0
  459. package/layouts/lib/shared/components/slots/footer-text-slot.component.d.ts +6 -0
  460. package/layouts/lib/shared/components/slots/navbar-slot.component.d.ts +10 -0
  461. package/layouts/lib/shared/components/slots/theme-slot.component.d.ts +8 -0
  462. package/layouts/lib/shared/entity/entity-registery.service.d.ts +34 -0
  463. package/layouts/lib/shared/entity/entity.class.d.ts +145 -0
  464. package/layouts/lib/shared/entity/entity.loader.d.ts +9 -0
  465. package/layouts/lib/shared/entity/index.d.ts +3 -0
  466. package/layouts/lib/shared/index.d.ts +4 -0
  467. package/layouts/lib/shared/services/index.d.ts +1 -0
  468. package/layouts/lib/shared/services/layout.service.d.ts +19 -0
  469. package/layouts/lib/shared/workflows/common.workflow.d.ts +52 -0
  470. package/layouts/lib/shared/workflows/error-handler.d.ts +8 -0
  471. package/layouts/lib/shared/workflows/index.d.ts +2 -0
  472. package/layouts/lib/widgets/avatar/avatar-widget-edit.component.d.ts +10 -0
  473. package/layouts/lib/widgets/avatar/avatar-widget-view.component.d.ts +8 -0
  474. package/layouts/lib/widgets/checkbox/checkbox-widget-column.component.d.ts +11 -0
  475. package/layouts/lib/widgets/checkbox/checkbox-widget-edit.component.d.ts +6 -0
  476. package/layouts/lib/widgets/checkbox/checkbox-widget-view.component.d.ts +11 -0
  477. package/layouts/lib/widgets/common-widget-filter/boolean-widget-filter.component.d.ts +17 -0
  478. package/layouts/lib/widgets/common-widget-filter/number-widget-filter.component.d.ts +11 -0
  479. package/layouts/lib/widgets/common-widget-filter/string-widget-filter.component.d.ts +11 -0
  480. package/layouts/lib/widgets/common-widgets.module.d.ts +32 -0
  481. package/layouts/lib/widgets/dateTime/dateTime-widget-column.component.d.ts +11 -0
  482. package/layouts/lib/widgets/dateTime/dateTime-widget-edit.component.d.ts +24 -0
  483. package/layouts/lib/widgets/dateTime/dateTime-widget-filter.component.d.ts +16 -0
  484. package/layouts/lib/widgets/dateTime/dateTime-widget-view.component.d.ts +11 -0
  485. package/layouts/lib/widgets/email/email-widget-column.component.d.ts +16 -0
  486. package/layouts/lib/widgets/email/email-widget-edit.component.d.ts +28 -0
  487. package/layouts/lib/widgets/email/email-widget-view.component.d.ts +16 -0
  488. package/layouts/lib/widgets/file/file-widget-column.component.d.ts +8 -0
  489. package/layouts/lib/widgets/file/file-widget-edit.component.d.ts +17 -0
  490. package/layouts/lib/widgets/file/file-widget-filter.component.d.ts +6 -0
  491. package/layouts/lib/widgets/file/file-widget-view.component.d.ts +17 -0
  492. package/layouts/lib/widgets/gallery/gallery-widget-edit.component.d.ts +15 -0
  493. package/layouts/lib/widgets/gallery/gallery-widget-filter.component.d.ts +6 -0
  494. package/layouts/lib/widgets/gallery/gallery-widget-types.d.ts +10 -0
  495. package/layouts/lib/widgets/gallery/gallery-widget-view.component.d.ts +16 -0
  496. package/layouts/lib/widgets/index.d.ts +1 -0
  497. package/layouts/lib/widgets/lookup/lookup-widget-column.component.d.ts +16 -0
  498. package/layouts/lib/widgets/lookup/lookup-widget-edit.component.d.ts +15 -0
  499. package/layouts/lib/widgets/lookup/lookup-widget-filter.component.d.ts +16 -0
  500. package/layouts/lib/widgets/lookup/lookup-widget-view.component.d.ts +17 -0
  501. package/layouts/lib/widgets/map/map-widget-edit.component.d.ts +15 -0
  502. package/layouts/lib/widgets/map/map-widget-view.component.d.ts +17 -0
  503. package/layouts/lib/widgets/messenger/messenger-widget-column.component.d.ts +15 -0
  504. package/layouts/lib/widgets/messenger/messenger-widget-edit.component.d.ts +14 -0
  505. package/layouts/lib/widgets/messenger/messenger-widget-view.component.d.ts +17 -0
  506. package/layouts/lib/widgets/number/number-widget-edit.component.d.ts +7 -0
  507. package/layouts/lib/widgets/number/number-widget-view.component.d.ts +8 -0
  508. package/layouts/lib/widgets/password/change-password.component.d.ts +16 -0
  509. package/layouts/lib/widgets/password/password-widget-column.component.d.ts +14 -0
  510. package/layouts/lib/widgets/password/password-widget-edit.component.d.ts +6 -0
  511. package/layouts/lib/widgets/password/password-widget-view.component.d.ts +18 -0
  512. package/layouts/lib/widgets/phone/phone-widget-column.component.d.ts +15 -0
  513. package/layouts/lib/widgets/phone/phone-widget-edit.component.d.ts +29 -0
  514. package/layouts/lib/widgets/phone/phone-widget-view.component.d.ts +18 -0
  515. package/layouts/lib/widgets/rich-text/rich-text-widget-column.component.d.ts +11 -0
  516. package/layouts/lib/widgets/rich-text/rich-text-widget-edit.component.d.ts +33 -0
  517. package/layouts/lib/widgets/rich-text/rich-text-widget-view.component.d.ts +10 -0
  518. package/layouts/lib/widgets/selection-list/selection-list-widget-column.component.d.ts +16 -0
  519. package/layouts/lib/widgets/selection-list/selection-list-widget-edit.component.d.ts +10 -0
  520. package/layouts/lib/widgets/selection-list/selection-list-widget-filter.component.d.ts +9 -0
  521. package/layouts/lib/widgets/selection-list/selection-list-widget-view.component.d.ts +15 -0
  522. package/layouts/lib/widgets/signature-pad/signature-pad-widget-edit.component.d.ts +19 -0
  523. package/layouts/lib/widgets/signature-pad/signature-pad-widget-view.component.d.ts +8 -0
  524. package/layouts/lib/widgets/text/largetext-widget-edit.component.d.ts +6 -0
  525. package/layouts/lib/widgets/text/text-widget-column.component.d.ts +11 -0
  526. package/layouts/lib/widgets/text/text-widget-edit.component.d.ts +23 -0
  527. package/layouts/lib/widgets/text/text-widget-view.component.d.ts +11 -0
  528. package/layouts/lib/widgets/toggle/toggle-widget-column.component.d.ts +11 -0
  529. package/layouts/lib/widgets/toggle/toggle-widget-edit.component.d.ts +6 -0
  530. package/layouts/lib/widgets/toggle/toggle-widget-view.component.d.ts +11 -0
  531. package/mocks/README.md +3 -0
  532. package/mocks/index.d.ts +3 -0
  533. package/mocks/lib/mocks.module.d.ts +7 -0
  534. package/mocks/lib/services/mocker.service.d.ts +29 -0
  535. package/mocks/lib/storage/storage.mock.service.d.ts +25 -0
  536. package/native/README.md +4 -0
  537. package/native/index.d.ts +2 -0
  538. package/native/lib/native.module.d.ts +6 -0
  539. package/native/lib/native.service.d.ts +26 -0
  540. package/package.json +67 -0
  541. package/schema/README.md +3 -0
  542. package/schema/index.d.ts +11 -0
  543. package/schema/lib/component-loader.d.ts +24 -0
  544. package/schema/lib/formats.d.ts +8 -0
  545. package/schema/lib/operators.d.ts +22 -0
  546. package/schema/lib/schema-registery.service.d.ts +20 -0
  547. package/schema/lib/schema.d.ts +21 -0
  548. package/schema/lib/schema.module.d.ts +12 -0
  549. package/schema/lib/widget/widget-base.d.ts +43 -0
  550. package/schema/lib/widget/widget-column-renderer.d.ts +27 -0
  551. package/schema/lib/widget/widget-filter-renderer.d.ts +30 -0
  552. package/schema/lib/widget/widget-renderer.d.ts +26 -0
  553. package/schema/lib/widget/widget-token.d.ts +15 -0
  554. package/workflow/README.md +4 -0
  555. package/workflow/index.d.ts +6 -0
  556. package/workflow/lib/errors.types.d.ts +4 -0
  557. package/workflow/lib/workflow-event-dispatcher.service.d.ts +10 -0
  558. package/workflow/lib/workflow-registery.service.d.ts +17 -0
  559. package/workflow/lib/workflow.module.d.ts +25 -0
  560. package/workflow/lib/workflow.service.d.ts +23 -0
  561. package/workflow/lib/workflow.types.d.ts +61 -0
@@ -0,0 +1,39 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class AXPWorkflowRegistryService {
4
+ constructor() {
5
+ this.functionsMap = new Map();
6
+ this.actionsMap = new Map();
7
+ this.workflowsMap = new Map();
8
+ }
9
+ registerWorkflow(name, workflow) {
10
+ this.workflowsMap.set(name, workflow);
11
+ }
12
+ getWorkflow(name) {
13
+ return this.workflowsMap.get(name);
14
+ }
15
+ registerAction(name, action) {
16
+ this.actionsMap.set(name, action);
17
+ }
18
+ getAction(name) {
19
+ return this.actionsMap.get(name);
20
+ }
21
+ registerFunction(name, func) {
22
+ this.functionsMap.set(name, func);
23
+ }
24
+ getFunction(name) {
25
+ return this.functionsMap.get(name);
26
+ }
27
+ getFunctionNames() {
28
+ return Array.from(this.functionsMap.keys());
29
+ }
30
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPWorkflowRegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
31
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPWorkflowRegistryService, providedIn: 'root' }); }
32
+ }
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPWorkflowRegistryService, decorators: [{
34
+ type: Injectable,
35
+ args: [{
36
+ providedIn: 'root'
37
+ }]
38
+ }] });
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3ctcmVnaXN0ZXJ5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3dvcmtmbG93L3NyYy9saWIvd29ya2Zsb3ctcmVnaXN0ZXJ5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBUSxNQUFNLGVBQWUsQ0FBQzs7QUFTakQsTUFBTSxPQUFPLDBCQUEwQjtJQUh2QztRQUlZLGlCQUFZLEdBQUcsSUFBSSxHQUFHLEVBQXFDLENBQUM7UUFDNUQsZUFBVSxHQUFHLElBQUksR0FBRyxFQUFtQyxDQUFDO1FBQ3hELGlCQUFZLEdBQUcsSUFBSSxHQUFHLEVBQXVCLENBQUM7S0E2QnpEO0lBM0JHLGdCQUFnQixDQUFDLElBQVksRUFBRSxRQUFxQjtRQUNoRCxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVELFdBQVcsQ0FBQyxJQUFZO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELGNBQWMsQ0FBQyxJQUFZLEVBQUUsTUFBK0I7UUFDeEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxTQUFTLENBQUMsSUFBWTtRQUNsQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxJQUFZLEVBQUUsSUFBK0I7UUFDMUQsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxXQUFXLENBQUMsSUFBWTtRQUNwQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxnQkFBZ0I7UUFDWixPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ2hELENBQUM7OEdBL0JRLDBCQUEwQjtrSEFBMUIsMEJBQTBCLGNBRnZCLE1BQU07OzJGQUVULDBCQUEwQjtrQkFIdEMsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWFBXb3JrZmxvdywgQVhQV29ya2Zsb3dBY3Rpb24sIEFYUFdvcmtmbG93RnVuY3Rpb24gfSBmcm9tICcuL3dvcmtmbG93LnR5cGVzJztcblxuXG5cblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBBWFBXb3JrZmxvd1JlZ2lzdHJ5U2VydmljZSB7XG4gICAgcHJpdmF0ZSBmdW5jdGlvbnNNYXAgPSBuZXcgTWFwPHN0cmluZywgVHlwZTxBWFBXb3JrZmxvd0Z1bmN0aW9uPj4oKTtcbiAgICBwcml2YXRlIGFjdGlvbnNNYXAgPSBuZXcgTWFwPHN0cmluZywgVHlwZTxBWFBXb3JrZmxvd0FjdGlvbj4+KCk7XG4gICAgcHJpdmF0ZSB3b3JrZmxvd3NNYXAgPSBuZXcgTWFwPHN0cmluZywgQVhQV29ya2Zsb3c+KCk7XG5cbiAgICByZWdpc3RlcldvcmtmbG93KG5hbWU6IHN0cmluZywgd29ya2Zsb3c6IEFYUFdvcmtmbG93KTogdm9pZCB7XG4gICAgICAgIHRoaXMud29ya2Zsb3dzTWFwLnNldChuYW1lLCB3b3JrZmxvdyk7XG4gICAgfVxuXG4gICAgZ2V0V29ya2Zsb3cobmFtZTogc3RyaW5nKTogQVhQV29ya2Zsb3cgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy53b3JrZmxvd3NNYXAuZ2V0KG5hbWUpO1xuICAgIH1cblxuICAgIHJlZ2lzdGVyQWN0aW9uKG5hbWU6IHN0cmluZywgYWN0aW9uOiBUeXBlPEFYUFdvcmtmbG93QWN0aW9uPik6IHZvaWQge1xuICAgICAgICB0aGlzLmFjdGlvbnNNYXAuc2V0KG5hbWUsIGFjdGlvbik7XG4gICAgfVxuXG4gICAgZ2V0QWN0aW9uKG5hbWU6IHN0cmluZyk6IFR5cGU8QVhQV29ya2Zsb3dBY3Rpb24+IHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYWN0aW9uc01hcC5nZXQobmFtZSk7XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJGdW5jdGlvbihuYW1lOiBzdHJpbmcsIGZ1bmM6IFR5cGU8QVhQV29ya2Zsb3dGdW5jdGlvbj4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5mdW5jdGlvbnNNYXAuc2V0KG5hbWUsIGZ1bmMpO1xuICAgIH1cblxuICAgIGdldEZ1bmN0aW9uKG5hbWU6IHN0cmluZyk6IFR5cGU8QVhQV29ya2Zsb3dGdW5jdGlvbj4gfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5mdW5jdGlvbnNNYXAuZ2V0KG5hbWUpO1xuICAgIH1cblxuICAgIGdldEZ1bmN0aW9uTmFtZXMoKTogc3RyaW5nW10ge1xuICAgICAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLmZ1bmN0aW9uc01hcC5rZXlzKCkpO1xuICAgIH1cbn0iXX0=
@@ -0,0 +1,96 @@
1
+ import { Inject, NgModule, Optional } from "@angular/core";
2
+ import { AXPWorkflowRegistryService } from "./workflow-registery.service";
3
+ import * as i0 from "@angular/core";
4
+ export class AXPWorkflowModule {
5
+ static forRoot(config) {
6
+ return {
7
+ ngModule: AXPWorkflowModule,
8
+ providers: [
9
+ {
10
+ provide: 'AXPWorkflowModuleFactory',
11
+ useFactory: (registry) => () => {
12
+ if (config?.functions) {
13
+ for (const [key, type] of Object.entries(config.functions)) {
14
+ registry.registerFunction(key, type);
15
+ }
16
+ }
17
+ //
18
+ if (config?.actions) {
19
+ for (const [key, type] of Object.entries(config.actions)) {
20
+ registry.registerAction(key, type);
21
+ }
22
+ }
23
+ //
24
+ if (config?.workflows) {
25
+ for (const [key, type] of Object.entries(config.workflows)) {
26
+ registry.registerWorkflow(key, type);
27
+ }
28
+ }
29
+ },
30
+ deps: [AXPWorkflowRegistryService],
31
+ multi: true
32
+ },
33
+ ...Object.values(config?.actions ?? {}),
34
+ ...Object.values(config?.functions ?? {}),
35
+ ]
36
+ };
37
+ }
38
+ static forChild(config) {
39
+ return {
40
+ ngModule: AXPWorkflowModule,
41
+ providers: [
42
+ {
43
+ provide: 'AXPWorkflowModuleFactory',
44
+ useFactory: (registry) => () => {
45
+ if (config?.functions) {
46
+ for (const [key, type] of Object.entries(config.functions)) {
47
+ registry.registerFunction(key, type);
48
+ }
49
+ }
50
+ //
51
+ if (config?.actions) {
52
+ for (const [key, type] of Object.entries(config.actions)) {
53
+ registry.registerAction(key, type);
54
+ }
55
+ }
56
+ //
57
+ if (config?.workflows) {
58
+ for (const [key, type] of Object.entries(config.workflows)) {
59
+ registry.registerWorkflow(key, type);
60
+ }
61
+ }
62
+ },
63
+ deps: [AXPWorkflowRegistryService],
64
+ multi: true
65
+ },
66
+ ...Object.values(config?.actions ?? {}),
67
+ ...Object.values(config?.functions ?? {})
68
+ ]
69
+ };
70
+ }
71
+ /**
72
+ * @ignore
73
+ */
74
+ constructor(instances) {
75
+ instances?.forEach(f => {
76
+ f();
77
+ });
78
+ }
79
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPWorkflowModule, deps: [{ token: 'AXPWorkflowModuleFactory', optional: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
80
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.1.2", ngImport: i0, type: AXPWorkflowModule }); }
81
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPWorkflowModule }); }
82
+ }
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPWorkflowModule, decorators: [{
84
+ type: NgModule,
85
+ args: [{
86
+ imports: [],
87
+ exports: [],
88
+ declarations: [],
89
+ }]
90
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
91
+ type: Optional
92
+ }, {
93
+ type: Inject,
94
+ args: ['AXPWorkflowModuleFactory']
95
+ }] }] });
96
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3cubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS93b3JrZmxvdy9zcmMvbGliL3dvcmtmbG93Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUF1QixRQUFRLEVBQUUsUUFBUSxFQUFRLE1BQU0sZUFBZSxDQUFDO0FBQ3RGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOztBQXFCMUUsTUFBTSxPQUFPLGlCQUFpQjtJQUUxQixNQUFNLENBQUMsT0FBTyxDQUFDLE1BQWlDO1FBQzVDLE9BQU87WUFDSCxRQUFRLEVBQUUsaUJBQWlCO1lBQzNCLFNBQVMsRUFBRTtnQkFDUDtvQkFDSSxPQUFPLEVBQUUsMEJBQTBCO29CQUNuQyxVQUFVLEVBQUUsQ0FBQyxRQUFvQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEVBQUU7d0JBQ3ZELElBQUksTUFBTSxFQUFFLFNBQVMsRUFBRSxDQUFDOzRCQUNwQixLQUFLLE1BQU0sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztnQ0FDekQsUUFBUSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQzs0QkFDekMsQ0FBQzt3QkFDTCxDQUFDO3dCQUNELEVBQUU7d0JBQ0YsSUFBSSxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUM7NEJBQ2xCLEtBQUssTUFBTSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO2dDQUN2RCxRQUFRLENBQUMsY0FBYyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQzs0QkFDdkMsQ0FBQzt3QkFDTCxDQUFDO3dCQUNELEVBQUU7d0JB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ImltcG9ydCB7IEluamVjdCwgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUsIE9wdGlvbmFsLCBUeXBlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEFYUFdvcmtmbG93UmVnaXN0cnlTZXJ2aWNlIH0gZnJvbSBcIi4vd29ya2Zsb3ctcmVnaXN0ZXJ5LnNlcnZpY2VcIjtcbmltcG9ydCB7IEFYUFdvcmtmbG93LCBBWFBXb3JrZmxvd0FjdGlvbiwgQVhQV29ya2Zsb3dGdW5jdGlvbiB9IGZyb20gXCIuL3dvcmtmbG93LnR5cGVzXCI7XG5cblxuZXhwb3J0IGludGVyZmFjZSBBWFBXb3JrZmxvd01vZHVsZUNvbmZpZ3Mge1xuICAgIGZ1bmN0aW9ucz86IHtcbiAgICAgICAgW25hbWU6IHN0cmluZ106IFR5cGU8QVhQV29ya2Zsb3dGdW5jdGlvbj5cbiAgICB9LFxuICAgIGFjdGlvbnM/OiB7XG4gICAgICAgIFtuYW1lOiBzdHJpbmddOiBUeXBlPEFYUFdvcmtmbG93QWN0aW9uPlxuICAgIH0sXG4gICAgd29ya2Zsb3dzPzoge1xuICAgICAgICBbbmFtZTogc3RyaW5nXTogQVhQV29ya2Zsb3dcbiAgICB9XG59XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW10sXG4gICAgZXhwb3J0czogW10sXG4gICAgZGVjbGFyYXRpb25zOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQV29ya2Zsb3dNb2R1bGUge1xuXG4gICAgc3RhdGljIGZvclJvb3QoY29uZmlnPzogQVhQV29ya2Zsb3dNb2R1bGVDb25maWdzKTogTW9kdWxlV2l0aFByb3ZpZGVyczxBWFBXb3JrZmxvd01vZHVsZT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbmdNb2R1bGU6IEFYUFdvcmtmbG93TW9kdWxlLFxuICAgICAgICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiAnQVhQV29ya2Zsb3dNb2R1bGVGYWN0b3J5JyxcbiAgICAgICAgICAgICAgICAgICAgdXNlRmFjdG9yeTogKHJlZ2lzdHJ5OiBBWFBXb3JrZmxvd1JlZ2lzdHJ5U2VydmljZSkgPT4gKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGNvbmZpZz8uZnVuY3Rpb25zKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChjb25zdCBba2V5LCB0eXBlXSBvZiBPYmplY3QuZW50cmllcyhjb25maWcuZnVuY3Rpb25zKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWdpc3RyeS5yZWdpc3RlckZ1bmN0aW9uKGtleSwgdHlwZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgLy9cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjb25maWc/LmFjdGlvbnMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHR5cGVdIG9mIE9iamVjdC5lbnRyaWVzKGNvbmZpZy5hY3Rpb25zKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWdpc3RyeS5yZWdpc3RlckFjdGlvbihrZXksIHR5cGUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIC8vXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoY29uZmlnPy53b3JrZmxvd3MpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHR5cGVdIG9mIE9iamVjdC5lbnRyaWVzKGNvbmZpZy53b3JrZmxvd3MpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZ2lzdHJ5LnJlZ2lzdGVyV29ya2Zsb3coa2V5LCB0eXBlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIGRlcHM6IFtBWFBXb3JrZmxvd1JlZ2lzdHJ5U2VydmljZV0sXG4gICAgICAgICAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAuLi5PYmplY3QudmFsdWVzKGNvbmZpZz8uYWN0aW9ucyA/PyB7fSksXG4gICAgICAgICAgICAgICAgLi4uT2JqZWN0LnZhbHVlcyhjb25maWc/LmZ1bmN0aW9ucyA/PyB7fSksXG4gICAgICAgICAgICBdXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgc3RhdGljIGZvckNoaWxkKGNvbmZpZz86IEFYUFdvcmtmbG93TW9kdWxlQ29uZmlncyk6IE1vZHVsZVdpdGhQcm92aWRlcnM8QVhQV29ya2Zsb3dNb2R1bGU+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG5nTW9kdWxlOiBBWFBXb3JrZmxvd01vZHVsZSxcbiAgICAgICAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogJ0FYUFdvcmtmbG93TW9kdWxlRmFjdG9yeScsXG4gICAgICAgICAgICAgICAgICAgIHVzZUZhY3Rvcnk6IChyZWdpc3RyeTogQVhQV29ya2Zsb3dSZWdpc3RyeVNlcnZpY2UpID0+ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjb25maWc/LmZ1bmN0aW9ucykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoY29uc3QgW2tleSwgdHlwZV0gb2YgT2JqZWN0LmVudHJpZXMoY29uZmlnLmZ1bmN0aW9ucykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVnaXN0cnkucmVnaXN0ZXJGdW5jdGlvbihrZXksIHR5cGUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIC8vXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoY29uZmlnPy5hY3Rpb25zKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChjb25zdCBba2V5LCB0eXBlXSBvZiBPYmplY3QuZW50cmllcyhjb25maWcuYWN0aW9ucykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVnaXN0cnkucmVnaXN0ZXJBY3Rpb24oa2V5LCB0eXBlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAvL1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGNvbmZpZz8ud29ya2Zsb3dzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChjb25zdCBba2V5LCB0eXBlXSBvZiBPYmplY3QuZW50cmllcyhjb25maWcud29ya2Zsb3dzKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWdpc3RyeS5yZWdpc3RlcldvcmtmbG93KGtleSwgdHlwZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICBkZXBzOiBbQVhQV29ya2Zsb3dSZWdpc3RyeVNlcnZpY2VdLFxuICAgICAgICAgICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgLi4uT2JqZWN0LnZhbHVlcyhjb25maWc/LmFjdGlvbnMgPz8ge30pLFxuICAgICAgICAgICAgICAgIC4uLk9iamVjdC52YWx1ZXMoY29uZmlnPy5mdW5jdGlvbnMgPz8ge30pXG4gICAgICAgICAgICBdXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGlnbm9yZVxuICAgICAqL1xuICAgIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIEBJbmplY3QoJ0FYUFdvcmtmbG93TW9kdWxlRmFjdG9yeScpIGluc3RhbmNlczogYW55W10pIHtcbiAgICAgICAgaW5zdGFuY2VzPy5mb3JFYWNoKGYgPT4ge1xuICAgICAgICAgICAgZigpO1xuICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=
@@ -0,0 +1,141 @@
1
+ import { Injectable, Injector, inject } from '@angular/core';
2
+ import { AXPWorkflowError } from './errors.types';
3
+ import { AXPWorkflowEventService } from './workflow-event-dispatcher.service';
4
+ import { AXPWorkflowRegistryService } from './workflow-registery.service';
5
+ import { AXPWorkflowContext, } from './workflow.types';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "./workflow-registery.service";
8
+ export class AXPWorkflowService {
9
+ get events$() {
10
+ return this.eventService.events$;
11
+ }
12
+ constructor(registryService, injector) {
13
+ this.registryService = registryService;
14
+ this.injector = injector;
15
+ this.eventService = inject(AXPWorkflowEventService);
16
+ }
17
+ async execute(workflow, initialContext = {}) {
18
+ // Instantiate or retrieve the workflow
19
+ const wk = typeof workflow === 'string' ? this.getWorkflowInstance(workflow) : workflow;
20
+ let currentStepId = wk.startStepId;
21
+ const context = new AXPWorkflowContext();
22
+ // Initialize context with initial variables
23
+ Object.entries(initialContext).forEach(e => context.setVariable(e[0], e[1]));
24
+ while (currentStepId) {
25
+ const currentStep = wk.steps[currentStepId];
26
+ if (!currentStep) {
27
+ throw new AXPWorkflowError(`Step '${currentStepId}' not found in the workflow steps.`);
28
+ }
29
+ // Instantiate or retrieve the action
30
+ const action = typeof currentStep.action === 'string' ? this.getActionInstance(currentStep.action) : currentStep.action;
31
+ if (currentStep.input) {
32
+ Object.assign(action, currentStep.input);
33
+ }
34
+ try {
35
+ await action.execute(context);
36
+ }
37
+ catch (error) {
38
+ throw new AXPWorkflowError('Workflow Error', error);
39
+ }
40
+ // Determine the next step based on the conditions
41
+ const nextStepInfo = await this.determineNextStep(currentStep, context);
42
+ if (nextStepInfo) {
43
+ currentStepId = nextStepInfo.nextStepId;
44
+ }
45
+ else {
46
+ break; // Exit the loop if no next step is determined
47
+ }
48
+ }
49
+ }
50
+ getActionInstance(actionName) {
51
+ const actionType = this.registryService.getAction(actionName);
52
+ if (!actionType) {
53
+ throw new AXPWorkflowError(`Action type '${actionName}' not found in the registry.`);
54
+ }
55
+ return this.injector.get(actionType);
56
+ }
57
+ getWorkflowInstance(workflowName) {
58
+ const workflowType = this.registryService.getWorkflow(workflowName);
59
+ if (!workflowType) {
60
+ throw new AXPWorkflowError(`Workflow type '${workflowName}' not found in the registry.`);
61
+ }
62
+ return workflowType;
63
+ }
64
+ async determineNextStep(currentStep, context) {
65
+ if (!currentStep.nextSteps) {
66
+ return null;
67
+ }
68
+ for (const nextStep of currentStep.nextSteps) {
69
+ if (await this.evaluateCondition(nextStep.conditions, context)) {
70
+ return nextStep;
71
+ }
72
+ }
73
+ return null;
74
+ }
75
+ async evaluateCondition(conditions, context) {
76
+ if (!conditions || conditions.length === 0) {
77
+ return true; // If no conditions, the step proceeds
78
+ }
79
+ // Map each condition to a promise using evaluateSingleCondition
80
+ const conditionPromises = conditions.map((condition) => this.evaluateSingleCondition(condition, context));
81
+ // Wait for all promises to resolve
82
+ const results = await Promise.all(conditionPromises);
83
+ // Check if every condition is true
84
+ return results.every((result) => result);
85
+ }
86
+ async evaluateSingleCondition(condition, context) {
87
+ switch (condition.type) {
88
+ case 'SINGLE':
89
+ return (!condition.expression ? true : await this.evaluateExpression(condition.expression, context));
90
+ case 'AND':
91
+ // Evaluate all conditions with 'AND' logic
92
+ const andConditions = condition.conditions ?? [];
93
+ const andResults = await Promise.all(andConditions.map((cond) => this.evaluateSingleCondition(cond, context)));
94
+ return andResults.every((result) => result);
95
+ case 'OR':
96
+ // Evaluate all conditions with 'OR' logic
97
+ const orConditions = condition.conditions ?? [];
98
+ const orResults = await Promise.all(orConditions.map((cond) => this.evaluateSingleCondition(cond, context)));
99
+ return orResults.some((result) => result);
100
+ default:
101
+ throw new AXPWorkflowError(`Unsupported condition type: ${condition.type}`);
102
+ }
103
+ }
104
+ async evaluateExpression(expression, context) {
105
+ try {
106
+ // Create a scope that includes context and registered functions
107
+ const scope = { context, ...this.createFunctionScope() };
108
+ // Evaluating the expression within the created scope
109
+ const sandbox = new Function('scope', `return (async function() { with (scope) { return ${expression}; } })();`);
110
+ const result = await sandbox(scope);
111
+ return result;
112
+ }
113
+ catch (error) {
114
+ console.error('Error evaluating expression:', error);
115
+ return false;
116
+ }
117
+ }
118
+ createFunctionScope() {
119
+ const scope = {};
120
+ this.registryService.getFunctionNames().forEach((name) => {
121
+ scope[name] = this.getFunctionInstance(name).execute;
122
+ });
123
+ return scope;
124
+ }
125
+ getFunctionInstance(functionName) {
126
+ const functionType = this.registryService.getFunction(functionName);
127
+ if (!functionType) {
128
+ throw new AXPWorkflowError(`Function type '${functionName}' not found in the registry.`);
129
+ }
130
+ return this.injector.get(functionType);
131
+ }
132
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPWorkflowService, deps: [{ token: i1.AXPWorkflowRegistryService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
133
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPWorkflowService, providedIn: 'root' }); }
134
+ }
135
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPWorkflowService, decorators: [{
136
+ type: Injectable,
137
+ args: [{
138
+ providedIn: 'root',
139
+ }]
140
+ }], ctorParameters: () => [{ type: i1.AXPWorkflowRegistryService }, { type: i0.Injector }] });
141
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3cuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vd29ya2Zsb3cvc3JjL2xpYi93b3JrZmxvdy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU3RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMxRSxPQUFPLEVBSUwsa0JBQWtCLEdBS25CLE1BQU0sa0JBQWtCLENBQUM7OztBQUsxQixNQUFNLE9BQU8sa0JBQWtCO0lBRzdCLElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUM7SUFDbkMsQ0FBQztJQUVELFlBQW9CLGVBQTJDLEVBQVUsUUFBa0I7UUFBdkUsb0JBQWUsR0FBZixlQUFlLENBQTRCO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQU5uRixpQkFBWSxHQUFHLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO0lBTXdDLENBQUM7SUFFaEcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUE4QixFQUFFLGlCQUFzQixFQUFFO1FBQ3BFLHVDQUF1QztRQUN2QyxNQUFNLEVBQUUsR0FBRyxPQUFPLFFBQVEsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDO1FBRXhGLElBQUksYUFBYSxHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUM7UUFDbkMsTUFBTSxPQUFPLEdBQUcsSUFBSSxrQkFBa0IsRUFBRSxDQUFDO1FBQ3pDLDRD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bUJBQW1CO1FBQ3pCLE1BQU0sS0FBSyxHQUFRLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsZUFBZSxDQUFDLGdCQUFnQixFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDdkQsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUM7UUFDdkQsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFTyxtQkFBbUIsQ0FBQyxZQUFvQjtRQUM5QyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDbEIsTUFBTSxJQUFJLGdCQUFnQixDQUFDLGtCQUFrQixZQUFZLDhCQUE4QixDQUFDLENBQUM7UUFDM0YsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDekMsQ0FBQzs4R0FqSlUsa0JBQWtCO2tIQUFsQixrQkFBa0IsY0FGakIsTUFBTTs7MkZBRVAsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFYUFdvcmtmbG93RXJyb3IgfSBmcm9tICcuL2Vycm9ycy50eXBlcyc7XG5pbXBvcnQgeyBBWFBXb3JrZmxvd0V2ZW50U2VydmljZSB9IGZyb20gJy4vd29ya2Zsb3ctZXZlbnQtZGlzcGF0Y2hlci5zZXJ2aWNlJztcbmltcG9ydCB7IEFYUFdvcmtmbG93UmVnaXN0cnlTZXJ2aWNlIH0gZnJvbSAnLi93b3JrZmxvdy1yZWdpc3Rlcnkuc2VydmljZSc7XG5pbXBvcnQge1xuICBBWFBXb3JrZmxvdyxcbiAgQVhQV29ya2Zsb3dBY3Rpb24sXG4gIEFYUFdvcmtmbG93Q29uZGl0aW9uLFxuICBBWFBXb3JrZmxvd0NvbnRleHQsXG4gIEFYUFdvcmtmbG93RXZlbnQsXG4gIEFYUFdvcmtmbG93RnVuY3Rpb24sXG4gIEFYUFdvcmtmbG93TmV4dFN0ZXAsXG4gIEFYUFdvcmtmbG93U3RlcCxcbn0gZnJvbSAnLi93b3JrZmxvdy50eXBlcyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBBWFBXb3JrZmxvd1NlcnZpY2Uge1xuICBwcml2YXRlIGV2ZW50U2VydmljZSA9IGluamVjdChBWFBXb3JrZmxvd0V2ZW50U2VydmljZSk7XG5cbiAgZ2V0IGV2ZW50cyQoKTogT2JzZXJ2YWJsZTxBWFBXb3JrZmxvd0V2ZW50PiB7XG4gICAgcmV0dXJuIHRoaXMuZXZlbnRTZXJ2aWNlLmV2ZW50cyQ7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlZ2lzdHJ5U2VydmljZTogQVhQV29ya2Zsb3dSZWdpc3RyeVNlcnZpY2UsIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yKSB7IH1cblxuICBhc3luYyBleGVjdXRlKHdvcmtmbG93OiBBWFBXb3JrZmxvdyB8IHN0cmluZywgaW5pdGlhbENvbnRleHQ6IGFueSA9IHt9KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgLy8gSW5zdGFudGlhdGUgb3IgcmV0cmlldmUgdGhlIHdvcmtmbG93XG4gICAgY29uc3Qgd2sgPSB0eXBlb2Ygd29ya2Zsb3cgPT09ICdzdHJpbmcnID8gdGhpcy5nZXRXb3JrZmxvd0luc3RhbmNlKHdvcmtmbG93KSA6IHdvcmtmbG93O1xuXG4gICAgbGV0IGN1cnJlbnRTdGVwSWQgPSB3ay5zdGFydFN0ZXBJZDtcbiAgICBjb25zdCBjb250ZXh0ID0gbmV3IEFYUFdvcmtmbG93Q29udGV4dCgpO1xuICAgIC8vIEluaXRpYWxpemUgY29udGV4dCB3aXRoIGluaXRpYWwgdmFyaWFibGVzXG4gICAgT2JqZWN0LmVudHJpZXMoaW5pdGlhbENvbnRleHQpLmZvckVhY2goZSA9PiBjb250ZXh0LnNldFZhcmlhYmxlKGVbMF0sIGVbMV0pKTtcblxuICAgIHdoaWxlIChjdXJyZW50U3RlcElkKSB7XG4gICAgICBjb25zdCBjdXJyZW50U3RlcCA9IHdrLnN0ZXBzW2N1cnJlbnRTdGVwSWRdO1xuICAgICAgaWYgKCFjdXJyZW50U3RlcCkge1xuICAgICAgICB0aHJvdyBuZXcgQVhQV29ya2Zsb3dFcnJvcihgU3RlcCAnJHtjdXJyZW50U3RlcElkfScgbm90IGZvdW5kIGluIHRoZSB3b3JrZmxvdyBzdGVwcy5gKTtcbiAgICAgIH1cblxuICAgICAgLy8gSW5zdGFudGlhdGUgb3IgcmV0cmlldmUgdGhlIGFjdGlvblxuICAgICAgY29uc3QgYWN0aW9uID1cbiAgICAgICAgdHlwZW9mIGN1cnJlbnRTdGVwLmFjdGlvbiA9PT0gJ3N0cmluZycgPyB0aGlzLmdldEFjdGlvbkluc3RhbmNlKGN1cnJlbnRTdGVwLmFjdGlvbikgOiBjdXJyZW50U3RlcC5hY3Rpb247XG4gICAgICBpZiAoY3VycmVudFN0ZXAuaW5wdXQpIHtcbiAgICAgICAgT2JqZWN0LmFzc2lnbihhY3Rpb24sIGN1cnJlbnRTdGVwLmlucHV0KTtcbiAgICAgIH1cblxuICAgICAgdHJ5IHtcbiAgICAgICAgYXdhaXQgYWN0aW9uLmV4ZWN1dGUoY29udGV4dCk7XG4gICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICB0aHJvdyBuZXcgQVhQV29ya2Zsb3dFcnJvcignV29ya2Zsb3cgRXJyb3InLCBlcnJvciBhcyBFcnJvcik7XG4gICAgICB9XG4gICAgICAvLyBEZXRlcm1pbmUgdGhlIG5leHQgc3RlcCBiYXNlZCBvbiB0aGUgY29uZGl0aW9uc1xuICAgICAgY29uc3QgbmV4dFN0ZXBJbmZvID0gYXdhaXQgdGhpcy5kZXRlcm1pbmVOZXh0U3RlcChjdXJyZW50U3RlcCwgY29udGV4dCk7XG4gICAgICBpZiAobmV4dFN0ZXBJbmZvKSB7XG4gICAgICAgIGN1cnJlbnRTdGVwSWQgPSBuZXh0U3RlcEluZm8ubmV4dFN0ZXBJZDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGJyZWFrOyAvLyBFeGl0IHRoZSBsb29wIGlmIG5vIG5leHQgc3RlcCBpcyBkZXRlcm1pbmVkXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRBY3Rpb25JbnN0YW5jZShhY3Rpb25OYW1lOiBzdHJpbmcpOiBBWFBXb3JrZmxvd0FjdGlvbiB7XG4gICAgY29uc3QgYWN0aW9uVHlwZSA9IHRoaXMucmVnaXN0cnlTZXJ2aWNlLmdldEFjdGlvbihhY3Rpb25OYW1lKTtcbiAgICBpZiAoIWFjdGlvblR5cGUpIHtcbiAgICAgIHRocm93IG5ldyBBWFBXb3JrZmxvd0Vycm9yKGBBY3Rpb24gdHlwZSAnJHthY3Rpb25OYW1lfScgbm90IGZvdW5kIGluIHRoZSByZWdpc3RyeS5gKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuaW5qZWN0b3IuZ2V0KGFjdGlvblR5cGUpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRXb3JrZmxvd0luc3RhbmNlKHdvcmtmbG93TmFtZTogc3RyaW5nKTogQVhQV29ya2Zsb3cge1xuICAgIGNvbnN0IHdvcmtmbG93VHlwZSA9IHRoaXMucmVnaXN0cnlTZXJ2aWNlLmdldFdvcmtmbG93KHdvcmtmbG93TmFtZSk7XG4gICAgaWYgKCF3b3JrZmxvd1R5cGUpIHtcbiAgICAgIHRocm93IG5ldyBBWFBXb3JrZmxvd0Vycm9yKGBXb3JrZmxvdyB0eXBlICcke3dvcmtmbG93TmFtZX0nIG5vdCBmb3VuZCBpbiB0aGUgcmVnaXN0cnkuYCk7XG4gICAgfVxuICAgIHJldHVybiB3b3JrZmxvd1R5cGU7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGRldGVybWluZU5leHRTdGVwKFxuICAgIGN1cnJlbnRTdGVwOiBBWFBXb3JrZmxvd1N0ZXAsXG4gICAgY29udGV4dDogQVhQV29ya2Zsb3dDb250ZXh0XG4gICk6IFByb21pc2U8QVhQV29ya2Zsb3dOZXh0U3RlcCB8IG51bGw+IHtcbiAgICBpZiAoIWN1cnJlbnRTdGVwLm5leHRTdGVwcykge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIGZvciAoY29uc3QgbmV4dFN0ZXAgb2YgY3VycmVudFN0ZXAubmV4dFN0ZXBzKSB7XG4gICAgICBpZiAoYXdhaXQgdGhpcy5ldmFsdWF0ZUNvbmRpdGlvbihuZXh0U3RlcC5jb25kaXRpb25zLCBjb250ZXh0KSkge1xuICAgICAgICByZXR1cm4gbmV4dFN0ZXA7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBldmFsdWF0ZUNvbmRpdGlvbihjb25kaXRpb25zOiBBWFBXb3JrZmxvd0NvbmRpdGlvbltdLCBjb250ZXh0OiBBWFBXb3JrZmxvd0NvbnRleHQpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBpZiAoIWNvbmRpdGlvbnMgfHwgY29uZGl0aW9ucy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiB0cnVlOyAvLyBJZiBubyBjb25kaXRpb25zLCB0aGUgc3RlcCBwcm9jZWVkc1xuICAgIH1cblxuICAgIC8vIE1hcCBlYWNoIGNvbmRpdGlvbiB0byBhIHByb21pc2UgdXNpbmcgZXZhbHVhdGVTaW5nbGVDb25kaXRpb25cbiAgICBjb25zdCBjb25kaXRpb25Qcm9taXNlcyA9IGNvbmRpdGlvbnMubWFwKChjb25kaXRpb24pID0+IHRoaXMuZXZhbHVhdGVTaW5nbGVDb25kaXRpb24oY29uZGl0aW9uLCBjb250ZXh0KSk7XG5cbiAgICAvLyBXYWl0IGZvciBhbGwgcHJvbWlzZXMgdG8gcmVzb2x2ZVxuICAgIGNvbnN0IHJlc3VsdHMgPSBhd2FpdCBQcm9taXNlLmFsbChjb25kaXRpb25Qcm9taXNlcyk7XG5cbiAgICAvLyBDaGVjayBpZiBldmVyeSBjb25kaXRpb24gaXMgdHJ1ZVxuICAgIHJldHVybiByZXN1bHRzLmV2ZXJ5KChyZXN1bHQpID0+IHJlc3VsdCk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGV2YWx1YXRlU2luZ2xlQ29uZGl0aW9uKFxuICAgIGNvbmRpdGlvbjogQVhQV29ya2Zsb3dDb25kaXRpb24sXG4gICAgY29udGV4dDogQVhQV29ya2Zsb3dDb250ZXh0XG4gICk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHN3aXRjaCAoY29uZGl0aW9uLnR5cGUpIHtcbiAgICAgIGNhc2UgJ1NJTkdMRSc6XG4gICAgICAgIHJldHVybiAoIWNvbmRpdGlvbi5leHByZXNzaW9uID8gdHJ1ZSA6IGF3YWl0IHRoaXMuZXZhbHVhdGVFeHByZXNzaW9uKGNvbmRpdGlvbi5leHByZXNzaW9uLCBjb250ZXh0KSkgYXMgYm9vbGVhbjtcbiAgICAgIGNhc2UgJ0FORCc6XG4gICAgICAgIC8vIEV2YWx1YXRlIGFsbCBjb25kaXRpb25zIHdpdGggJ0FORCcgbG9naWNcbiAgICAgICAgY29uc3QgYW5kQ29uZGl0aW9ucyA9IGNvbmRpdGlvbi5jb25kaXRpb25zID8/IFtdO1xuICAgICAgICBjb25zdCBhbmRSZXN1bHRzID0gYXdhaXQgUHJvbWlzZS5hbGwoYW5kQ29uZGl0aW9ucy5tYXAoKGNvbmQpID0+IHRoaXMuZXZhbHVhdGVTaW5nbGVDb25kaXRpb24oY29uZCwgY29udGV4dCkpKTtcbiAgICAgICAgcmV0dXJuIGFuZFJlc3VsdHMuZXZlcnkoKHJlc3VsdCkgPT4gcmVzdWx0KTtcblxuICAgICAgY2FzZSAnT1InOlxuICAgICAgICAvLyBFdmFsdWF0ZSBhbGwgY29uZGl0aW9ucyB3aXRoICdPUicgbG9naWNcbiAgICAgICAgY29uc3Qgb3JDb25kaXRpb25zID0gY29uZGl0aW9uLmNvbmRpdGlvbnMgPz8gW107XG4gICAgICAgIGNvbnN0IG9yUmVzdWx0cyA9IGF3YWl0IFByb21pc2UuYWxsKG9yQ29uZGl0aW9ucy5tYXAoKGNvbmQpID0+IHRoaXMuZXZhbHVhdGVTaW5nbGVDb25kaXRpb24oY29uZCwgY29udGV4dCkpKTtcbiAgICAgICAgcmV0dXJuIG9yUmVzdWx0cy5zb21lKChyZXN1bHQpID0+IHJlc3VsdCk7XG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRocm93IG5ldyBBWFBXb3JrZmxvd0Vycm9yKGBVbnN1cHBvcnRlZCBjb25kaXRpb24gdHlwZTogJHtjb25kaXRpb24udHlwZX1gKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGV2YWx1YXRlRXhwcmVzc2lvbihleHByZXNzaW9uOiBzdHJpbmcsIGNvbnRleHQ6IEFYUFdvcmtmbG93Q29udGV4dCk6IFByb21pc2U8Qm9vbGVhbj4ge1xuICAgIHRyeSB7XG4gICAgICAvLyBDcmVhdGUgYSBzY29wZSB0aGF0IGluY2x1ZGVzIGNvbnRleHQgYW5kIHJlZ2lzdGVyZWQgZnVuY3Rpb25zXG4gICAgICBjb25zdCBzY29wZSA9IHsgY29udGV4dCwgLi4udGhpcy5jcmVhdGVGdW5jdGlvblNjb3BlKCkgfTtcblxuICAgICAgLy8gRXZhbHVhdGluZyB0aGUgZXhwcmVzc2lvbiB3aXRoaW4gdGhlIGNyZWF0ZWQgc2NvcGVcbiAgICAgIGNvbnN0IHNhbmRib3ggPSBuZXcgRnVuY3Rpb24oJ3Njb3BlJywgYHJldHVybiAoYXN5bmMgZnVuY3Rpb24oKSB7IHdpdGggKHNjb3BlKSB7IHJldHVybiAke2V4cHJlc3Npb259OyB9IH0pKCk7YCk7XG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBzYW5kYm94KHNjb3BlKTtcbiAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGV2YWx1YXRpbmcgZXhwcmVzc2lvbjonLCBlcnJvcik7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVGdW5jdGlvblNjb3BlKCk6IGFueSB7XG4gICAgY29uc3Qgc2NvcGU6IGFueSA9IHt9O1xuICAgIHRoaXMucmVnaXN0cnlTZXJ2aWNlLmdldEZ1bmN0aW9uTmFtZXMoKS5mb3JFYWNoKChuYW1lKSA9PiB7XG4gICAgICBzY29wZVtuYW1lXSA9IHRoaXMuZ2V0RnVuY3Rpb25JbnN0YW5jZShuYW1lKS5leGVjdXRlO1xuICAgIH0pO1xuICAgIHJldHVybiBzY29wZTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RnVuY3Rpb25JbnN0YW5jZShmdW5jdGlvbk5hbWU6IHN0cmluZyk6IEFYUFdvcmtmbG93RnVuY3Rpb24ge1xuICAgIGNvbnN0IGZ1bmN0aW9uVHlwZSA9IHRoaXMucmVnaXN0cnlTZXJ2aWNlLmdldEZ1bmN0aW9uKGZ1bmN0aW9uTmFtZSk7XG4gICAgaWYgKCFmdW5jdGlvblR5cGUpIHtcbiAgICAgIHRocm93IG5ldyBBWFBXb3JrZmxvd0Vycm9yKGBGdW5jdGlvbiB0eXBlICcke2Z1bmN0aW9uTmFtZX0nIG5vdCBmb3VuZCBpbiB0aGUgcmVnaXN0cnkuYCk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmluamVjdG9yLmdldChmdW5jdGlvblR5cGUpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,52 @@
1
+ import { Injectable, inject } from '@angular/core';
2
+ import { filter } from 'rxjs';
3
+ import { AXPWorkflowEventService } from './workflow-event-dispatcher.service';
4
+ import * as i0 from "@angular/core";
5
+ export class AXPWorkflowContext {
6
+ constructor() {
7
+ this.variables = new Map();
8
+ this.stepOutputs = new Map();
9
+ // You can add more helper methods as needed
10
+ }
11
+ setVariable(key, value) {
12
+ this.variables.set(key, value);
13
+ }
14
+ getVariable(key) {
15
+ return this.variables.get(key);
16
+ }
17
+ setOutput(stepId, output) {
18
+ this.stepOutputs.set(stepId, output);
19
+ }
20
+ getOutput(stepId) {
21
+ return this.stepOutputs.get(stepId);
22
+ }
23
+ }
24
+ export class AXPWorkflowAction {
25
+ constructor() {
26
+ this.eventService = inject(AXPWorkflowEventService);
27
+ }
28
+ dispatch(event) {
29
+ this.eventService.dispatch(event);
30
+ }
31
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPWorkflowAction, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
32
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPWorkflowAction }); }
33
+ }
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPWorkflowAction, decorators: [{
35
+ type: Injectable
36
+ }] });
37
+ export class AXPWorkflowFunction {
38
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPWorkflowFunction, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
39
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPWorkflowFunction }); }
40
+ }
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AXPWorkflowFunction, decorators: [{
42
+ type: Injectable
43
+ }] });
44
+ export function createWorkFlowEvent(type) {
45
+ const eventCreator = (payload) => ({ type, payload });
46
+ eventCreator.type = type;
47
+ return eventCreator;
48
+ }
49
+ export function ofType(...allowedTypes) {
50
+ return filter((event) => allowedTypes.some((type) => event.type === type.type));
51
+ }
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3cudHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3dvcmtmbG93L3NyYy9saWIvd29ya2Zsb3cudHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5QixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7QUFROUUsTUFBTSxPQUFPLGtCQUFrQjtJQUEvQjtRQUNVLGNBQVMsR0FBcUIsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUN4QyxnQkFBVyxHQUFxQixJQUFJLEdBQUcsRUFBRSxDQUFDO1FBa0JsRCw0Q0FBNEM7SUFDOUMsQ0FBQztJQWpCQyxXQUFXLENBQUMsR0FBVyxFQUFFLEtBQVU7UUFDakMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxXQUFXLENBQUMsR0FBVztRQUNyQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxTQUFTLENBQUMsTUFBYyxFQUFFLE1BQVc7UUFDbkMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxTQUFTLENBQUMsTUFBYztRQUN0QixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3RDLENBQUM7Q0FHRjtBQXlCRCxNQUFNLE9BQWdCLGlCQUFpQjtJQUR2QztRQUVVLGlCQUFZLEdBQUcsTUFBTSxDQUFDLHVCQUF1QixDQUFDLENBQUM7S0FPeEQ7SUFMVyxRQUFRLENBQUMsS0FBdUI7UUFDeEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEMsQ0FBQzs4R0FMbUIsaUJBQWlCO2tIQUFqQixpQkFBaUI7OzJGQUFqQixpQkFBaUI7a0JBRHRDLFVBQVU7O0FBWVgsTUFBTSxPQUFnQixtQkFBbUI7OEdBQW5CLG1CQUFtQjtrSEFBbkIsbUJBQW1COzsyRkFBbkIsbUJBQW1CO2tCQUR4QyxVQUFVOztBQVlYLE1BQU0sVUFBVSxtQkFBbUIsQ0FBSSxJQUFZO0lBQ2pELE1BQU0sWUFBWSxHQUFHLENBQUMsT0FBVSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDekQsWUFBWSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDekIsT0FBTyxZQUFZLENBQUM7QUFDdEIsQ0FBQztBQUVELE1BQU0sVUFBVSxNQUFNLENBQTZCLEdBQUcsWUFBcUM7SUFDekYsT0FBTyxNQUFNLENBQUMsQ0FBQyxLQUFRLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7QUFDckYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZmlsdGVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBWFBXb3JrZmxvd0V2ZW50U2VydmljZSB9IGZyb20gJy4vd29ya2Zsb3ctZXZlbnQtZGlzcGF0Y2hlci5zZXJ2aWNlJztcblxuZXhwb3J0IGludGVyZmFjZSBBWFBXb3JrZmxvdyB7XG4gIHN0ZXBzOiB7IFtzdGVwTmFtZTogc3RyaW5nXTogQVhQV29ya2Zsb3dTdGVwIH07XG4gIHN0YXJ0U3RlcElkOiBzdHJpbmc7XG59XG5cblxuZXhwb3J0IGNsYXNzIEFYUFdvcmtmbG93Q29udGV4dCB7XG4gIHByaXZhdGUgdmFyaWFibGVzOiBNYXA8c3RyaW5nLCBhbnk+ID0gbmV3IE1hcCgpO1xuICBwcml2YXRlIHN0ZXBPdXRwdXRzOiBNYXA8c3RyaW5nLCBhbnk+ID0gbmV3IE1hcCgpO1xuXG4gIHNldFZhcmlhYmxlKGtleTogc3RyaW5nLCB2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgdGhpcy52YXJpYWJsZXMuc2V0KGtleSwgdmFsdWUpO1xuICB9XG5cbiAgZ2V0VmFyaWFibGUoa2V5OiBzdHJpbmcpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLnZhcmlhYmxlcy5nZXQoa2V5KTtcbiAgfVxuXG4gIHNldE91dHB1dChzdGVwSWQ6IHN0cmluZywgb3V0cHV0OiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnN0ZXBPdXRwdXRzLnNldChzdGVwSWQsIG91dHB1dCk7XG4gIH1cblxuICBnZXRPdXRwdXQoc3RlcElkOiBzdHJpbmcpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLnN0ZXBPdXRwdXRzLmdldChzdGVwSWQpO1xuICB9XG5cbiAgLy8gWW91IGNhbiBhZGQgbW9yZSBoZWxwZXIgbWV0aG9kcyBhcyBuZWVkZWRcbn1cblxuZXhwb3J0IHR5cGUgQVhQV29ya2Zsb3dBY3Rpb25JbnB1dCA9IGFueTtcblxuZXhwb3J0IHR5cGUgQVhQV29ya2Zsb3dDb25kaXRpb25UeXBlID0gJ0FORCcgfCAnT1InIHwgJ1NJTkdMRSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhQV29ya2Zsb3dDb25kaXRpb24ge1xuICB0eXBlOiBBWFBXb3JrZmxvd0NvbmRpdGlvblR5cGU7XG4gIGNvbmRpdGlvbnM/OiBBWFBXb3JrZmxvd0NvbmRpdGlvbltdOyAvLyBOZXN0ZWQgY29uZGl0aW9uc1xuICBleHByZXNzaW9uPzogc3RyaW5nOyAvLyBVc2VkIGlmIHR5cGUgaXMgJ1NJTkdMRSdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBWFBXb3JrZmxvd05leHRTdGVwIHtcbiAgY29uZGl0aW9uczogQVhQV29ya2Zsb3dDb25kaXRpb25bXTtcbiAgbmV4dFN0ZXBJZDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFYUFdvcmtmbG93U3RlcCB7XG4gIGlkOiBzdHJpbmc7XG4gIGFjdGlvbjogQVhQV29ya2Zsb3dBY3Rpb24gfCBzdHJpbmc7XG4gIGlucHV0PzogQVhQV29ya2Zsb3dBY3Rpb25JbnB1dDtcbiAgbmV4dFN0ZXBzPzogQVhQV29ya2Zsb3dOZXh0U3RlcFtdO1xuICBjb25kaXRpb25zPzogQVhQV29ya2Zsb3dDb25kaXRpb25bXTtcbn1cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBWFBXb3JrZmxvd0FjdGlvbiB7XG4gIHByaXZhdGUgZXZlbnRTZXJ2aWNlID0gaW5qZWN0KEFYUFdvcmtmbG93RXZlbnRTZXJ2aWNlKTtcblxuICBwcm90ZWN0ZWQgZGlzcGF0Y2goZXZlbnQ6IEFYUFdvcmtmbG93RXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmV2ZW50U2VydmljZS5kaXNwYXRjaChldmVudCk7XG4gIH1cblxuICBhYnN0cmFjdCBleGVjdXRlKGNvbnRleHQ6IEFYUFdvcmtmbG93Q29udGV4dCk6IFByb21pc2U8dm9pZD47XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBWFBXb3JrZmxvd0Z1bmN0aW9uIHtcbiAgYWJzdHJhY3QgZXhlY3V0ZSguLi5hcmdzOiBhbnlbXSk6IFByb21pc2U8YW55PiB8IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBWFBXb3JrZmxvd0V2ZW50IHtcbiAgdHlwZTogc3RyaW5nO1xuICBwYXlsb2FkPzogYW55O1xufVxuXG5cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVdvcmtGbG93RXZlbnQ8VD4odHlwZTogc3RyaW5nKSB7XG4gIGNvbnN0IGV2ZW50Q3JlYXRvciA9IChwYXlsb2FkOiBUKSA9PiAoeyB0eXBlLCBwYXlsb2FkIH0pO1xuICBldmVudENyZWF0b3IudHlwZSA9IHR5cGU7XG4gIHJldHVybiBldmVudENyZWF0b3I7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBvZlR5cGU8VCBleHRlbmRzIHsgdHlwZTogc3RyaW5nIH0+KC4uLmFsbG93ZWRUeXBlczogQXJyYXk8eyB0eXBlOiBzdHJpbmcgfT4pIHtcbiAgcmV0dXJuIGZpbHRlcigoZXZlbnQ6IFQpID0+IGFsbG93ZWRUeXBlcy5zb21lKCh0eXBlKSA9PiBldmVudC50eXBlID09PSB0eXBlLnR5cGUpKTtcbn1cbiJdfQ==