@acorex/platform 18.0.9 → 18.0.10

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 (828) hide show
  1. package/auth/lib/application/application.types.d.ts +3 -3
  2. package/auth/lib/auth.strategy.d.ts +5 -0
  3. package/auth/lib/errors.types.d.ts +4 -4
  4. package/auth/lib/session.service.d.ts +4 -3
  5. package/common/lib/app/application.types.d.ts +6 -12
  6. package/common/lib/schema/entity/entity.class.d.ts +2 -1
  7. package/common/lib/schema/schema.types.d.ts +2 -1
  8. package/common/lib/schema/widget/widget-base.d.ts +1 -1
  9. package/common/lib/schema/widget/widget-token.d.ts +1 -1
  10. package/common/lib/schema/widgets/dateTime/dateTime-widget-column.component.d.ts +1 -1
  11. package/common/lib/schema/widgets/dateTime/dateTime-widget-view.component.d.ts +2 -2
  12. package/common/lib/schema/widgets/text/text-widget-column.component.d.ts +1 -1
  13. package/common/lib/schema/widgets/text/text-widget-view.component.d.ts +1 -1
  14. package/core/README.md +4 -0
  15. package/core/index.d.ts +1 -0
  16. package/core/lib/types.d.ts +12 -0
  17. package/esm2022/auth/lib/application/application.types.mjs +1 -1
  18. package/esm2022/auth/lib/auth-registry.service.mjs +3 -3
  19. package/esm2022/auth/lib/auth.module.mjs +4 -4
  20. package/esm2022/auth/lib/auth.strategy.mjs +1 -1
  21. package/esm2022/auth/lib/feature/feature.directive.mjs +3 -3
  22. package/esm2022/auth/lib/permission/permission.directive.mjs +3 -3
  23. package/esm2022/auth/lib/session.service.mjs +58 -16
  24. package/esm2022/common/lib/app/application.types.mjs +1 -1
  25. package/esm2022/common/lib/common.module.mjs +4 -4
  26. package/esm2022/common/lib/errors/error-handler-registry.service.mjs +3 -3
  27. package/esm2022/common/lib/errors/global-error-handler.mjs +5 -5
  28. package/esm2022/common/lib/layout/component-slot/component-slot-loader.service.mjs +3 -3
  29. package/esm2022/common/lib/layout/component-slot/component-slot-registery.service.mjs +3 -3
  30. package/esm2022/common/lib/layout/component-slot/component-slot.directive.mjs +3 -3
  31. package/esm2022/common/lib/layout/component-slot/component-slot.module.mjs +4 -4
  32. package/esm2022/common/lib/layout/grid-layout/grid-layout.directive.mjs +3 -3
  33. package/esm2022/common/lib/layout/layout.service.mjs +3 -3
  34. package/esm2022/common/lib/layout/logo/logo.component.mjs +3 -3
  35. package/esm2022/common/lib/layout/sticky.directive.mjs +3 -3
  36. package/esm2022/common/lib/layout/theme/components/slots/footer-text-slot.component.mjs +3 -3
  37. package/esm2022/common/lib/layout/theme/components/slots/navbar-slot.component.mjs +3 -3
  38. package/esm2022/common/lib/layout/theme/components/slots/theme-slot.component.mjs +5 -5
  39. package/esm2022/common/lib/layout/theme/store/admin-layout.effects.mjs +3 -3
  40. package/esm2022/common/lib/schema/entity/entity-registery.service.mjs +3 -3
  41. package/esm2022/common/lib/schema/entity/entity.class.mjs +1 -1
  42. package/esm2022/common/lib/schema/schema-registery.service.mjs +3 -3
  43. package/esm2022/common/lib/schema/schema.module.mjs +4 -4
  44. package/esm2022/common/lib/schema/schema.types.mjs +1 -1
  45. package/esm2022/common/lib/schema/widget/widget-base.mjs +10 -10
  46. package/esm2022/common/lib/schema/widget/widget-column-renderer.mjs +3 -3
  47. package/esm2022/common/lib/schema/widget/widget-filter-renderer.mjs +3 -3
  48. package/esm2022/common/lib/schema/widget/widget-renderer.mjs +3 -3
  49. package/esm2022/common/lib/schema/widget/widget-token.mjs +1 -1
  50. package/esm2022/common/lib/schema/widgets/avatar/avatar-widget-edit.component.mjs +3 -3
  51. package/esm2022/common/lib/schema/widgets/avatar/avatar-widget-view.component.mjs +3 -3
  52. package/esm2022/common/lib/schema/widgets/checkbox/checkbox-widget-column.component.mjs +3 -3
  53. package/esm2022/common/lib/schema/widgets/checkbox/checkbox-widget-edit.component.mjs +3 -3
  54. package/esm2022/common/lib/schema/widgets/checkbox/checkbox-widget-view.component.mjs +3 -3
  55. package/esm2022/common/lib/schema/widgets/common-widget-filter/boolean-widget-filter.component.mjs +5 -5
  56. package/esm2022/common/lib/schema/widgets/common-widget-filter/number-widget-filter.component.mjs +4 -4
  57. package/esm2022/common/lib/schema/widgets/common-widget-filter/string-widget-filter.component.mjs +5 -5
  58. package/esm2022/common/lib/schema/widgets/common-widgets.module.mjs +4 -4
  59. package/esm2022/common/lib/schema/widgets/dateTime/dateTime-widget-column.component.mjs +3 -3
  60. package/esm2022/common/lib/schema/widgets/dateTime/dateTime-widget-edit.component.mjs +5 -5
  61. package/esm2022/common/lib/schema/widgets/dateTime/dateTime-widget-filter.component.mjs +3 -3
  62. package/esm2022/common/lib/schema/widgets/dateTime/dateTime-widget-view.component.mjs +4 -4
  63. package/esm2022/common/lib/schema/widgets/email/email-widget-column.component.mjs +3 -3
  64. package/esm2022/common/lib/schema/widgets/email/email-widget-edit.component.mjs +5 -5
  65. package/esm2022/common/lib/schema/widgets/email/email-widget-view.component.mjs +3 -3
  66. package/esm2022/common/lib/schema/widgets/file/file-widget-column.component.mjs +3 -3
  67. package/esm2022/common/lib/schema/widgets/file/file-widget-edit.component.mjs +5 -5
  68. package/esm2022/common/lib/schema/widgets/file/file-widget-filter.component.mjs +3 -3
  69. package/esm2022/common/lib/schema/widgets/file/file-widget-view.component.mjs +5 -5
  70. package/esm2022/common/lib/schema/widgets/gallery/gallery-widget-edit.component.mjs +4 -4
  71. package/esm2022/common/lib/schema/widgets/gallery/gallery-widget-filter.component.mjs +3 -3
  72. package/esm2022/common/lib/schema/widgets/gallery/gallery-widget-view.component.mjs +3 -3
  73. package/esm2022/common/lib/schema/widgets/lookup/lookup-widget-column.component.mjs +3 -3
  74. package/esm2022/common/lib/schema/widgets/lookup/lookup-widget-edit.component.mjs +3 -3
  75. package/esm2022/common/lib/schema/widgets/lookup/lookup-widget-filter.component.mjs +5 -5
  76. package/esm2022/common/lib/schema/widgets/lookup/lookup-widget-view.component.mjs +3 -3
  77. package/esm2022/common/lib/schema/widgets/map/map-widget-edit.component.mjs +3 -3
  78. package/esm2022/common/lib/schema/widgets/map/map-widget-view.component.mjs +3 -3
  79. package/esm2022/common/lib/schema/widgets/messenger/messenger-widget-column.component.mjs +3 -3
  80. package/esm2022/common/lib/schema/widgets/messenger/messenger-widget-edit.component.mjs +5 -5
  81. package/esm2022/common/lib/schema/widgets/messenger/messenger-widget-view.component.mjs +3 -3
  82. package/esm2022/common/lib/schema/widgets/number/number-widget-edit.component.mjs +3 -3
  83. package/esm2022/common/lib/schema/widgets/number/number-widget-view.component.mjs +3 -3
  84. package/esm2022/common/lib/schema/widgets/password/change-password.component.mjs +5 -5
  85. package/esm2022/common/lib/schema/widgets/password/password-widget-column.component.mjs +3 -3
  86. package/esm2022/common/lib/schema/widgets/password/password-widget-edit.component.mjs +3 -3
  87. package/esm2022/common/lib/schema/widgets/password/password-widget-view.component.mjs +4 -4
  88. package/esm2022/common/lib/schema/widgets/phone/phone-widget-column.component.mjs +3 -3
  89. package/esm2022/common/lib/schema/widgets/phone/phone-widget-edit.component.mjs +5 -5
  90. package/esm2022/common/lib/schema/widgets/phone/phone-widget-view.component.mjs +3 -3
  91. package/esm2022/common/lib/schema/widgets/rich-text/rich-text-widget-column.component.mjs +3 -3
  92. package/esm2022/common/lib/schema/widgets/rich-text/rich-text-widget-edit.component.mjs +3 -3
  93. package/esm2022/common/lib/schema/widgets/rich-text/rich-text-widget-view.component.mjs +3 -3
  94. package/esm2022/common/lib/schema/widgets/selection-list/selection-list-widget-column.component.mjs +3 -3
  95. package/esm2022/common/lib/schema/widgets/selection-list/selection-list-widget-edit.component.mjs +3 -3
  96. package/esm2022/common/lib/schema/widgets/selection-list/selection-list-widget-filter.component.mjs +3 -3
  97. package/esm2022/common/lib/schema/widgets/selection-list/selection-list-widget-view.component.mjs +3 -3
  98. package/esm2022/common/lib/schema/widgets/signature-pad/signature-pad-widget-edit.component.mjs +5 -5
  99. package/esm2022/common/lib/schema/widgets/signature-pad/signature-pad-widget-view.component.mjs +3 -3
  100. package/esm2022/common/lib/schema/widgets/text/largetext-widget-edit.component.mjs +3 -3
  101. package/esm2022/common/lib/schema/widgets/text/text-widget-column.component.mjs +3 -3
  102. package/esm2022/common/lib/schema/widgets/text/text-widget-edit.component.mjs +4 -4
  103. package/esm2022/common/lib/schema/widgets/text/text-widget-view.component.mjs +3 -3
  104. package/esm2022/common/lib/schema/widgets/toggle/toggle-widget-column.component.mjs +3 -3
  105. package/esm2022/common/lib/schema/widgets/toggle/toggle-widget-edit.component.mjs +3 -3
  106. package/esm2022/common/lib/schema/widgets/toggle/toggle-widget-view.component.mjs +3 -3
  107. package/esm2022/common/lib/settings/settings.service.mjs +3 -3
  108. package/esm2022/common/lib/store/common.effects.mjs +3 -3
  109. package/esm2022/common/lib/utils/clipboard-service.mjs +3 -3
  110. package/esm2022/common/lib/utils/pdf.service.mjs +3 -3
  111. package/esm2022/common/lib/utils/router-util.service.mjs +3 -3
  112. package/esm2022/common/lib/workflows/common.workflow.mjs +9 -9
  113. package/esm2022/common/lib/workflows/error-handler.mjs +3 -3
  114. package/esm2022/core/acorex-platform-core.mjs +5 -0
  115. package/esm2022/core/index.mjs +2 -0
  116. package/esm2022/core/lib/types.mjs +2 -0
  117. package/esm2022/layout/builder/lib/builder/builder.module.mjs +4 -4
  118. package/esm2022/layout/builder/lib/builder/builder.service.mjs +18 -4
  119. package/esm2022/layout/builder/lib/builder/layout.types.mjs +29 -1
  120. package/esm2022/layout/builder/lib/builder/widget-column-renderer.mjs +12 -5
  121. package/esm2022/layout/builder/lib/builder/widget-container.component.mjs +3 -3
  122. package/esm2022/layout/builder/lib/builder/widget-registery.service.mjs +3 -3
  123. package/esm2022/layout/builder/lib/builder/widget-renderer.component.mjs +28 -10
  124. package/esm2022/layout/builder/lib/builder/widget.types.mjs +77 -19
  125. package/esm2022/layout/designer/acorex-platform-layout-designer.mjs +5 -0
  126. package/esm2022/layout/designer/index.mjs +3 -0
  127. package/esm2022/layout/designer/lib/components/widget-property-viewer.component.mjs +86 -0
  128. package/esm2022/layout/designer/lib/designer.module.mjs +36 -0
  129. package/esm2022/layout/entity/lib/entity-master-create.viewmodel.mjs +3 -3
  130. package/esm2022/layout/entity/lib/entity-master-list.viewmodel.mjs +4 -5
  131. package/esm2022/layout/entity/lib/entity-master-single.viewmodel.mjs +5 -7
  132. package/esm2022/layout/entity/lib/entity-master-update.viewmodel.mjs +3 -3
  133. package/esm2022/layout/entity/lib/entity-registery.service.mjs +3 -3
  134. package/esm2022/layout/entity/lib/entity.module.mjs +4 -4
  135. package/esm2022/layout/entity/lib/entity.viewmodel.mjs +2 -3
  136. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-column.component.mjs +3 -3
  137. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-designer.component.mjs +3 -3
  138. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.mjs +6 -6
  139. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-filter.component.mjs +3 -3
  140. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-print.component.mjs +3 -3
  141. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.component.mjs +5 -5
  142. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-view.component.mjs +57 -8
  143. package/esm2022/layout/entity/lib/workflows/create-entity.workflow.mjs +4 -5
  144. package/esm2022/layout/entity/lib/workflows/delete-entity.workflow.mjs +3 -3
  145. package/esm2022/layout/entity/lib/workflows/modify-section.workflow.mjs +6 -6
  146. package/esm2022/layout/entity/lib/workflows/show-details.workflow.mjs +3 -3
  147. package/esm2022/layout/entity/lib/workflows/show-list.workflow.mjs +3 -3
  148. package/esm2022/layouts/lib/admin/admin.module.mjs +4 -4
  149. package/esm2022/layouts/lib/admin/entity-layout/entity-create-view/entity-create-view.component.mjs +4 -4
  150. package/esm2022/layouts/lib/admin/entity-layout/entity-create-view/entity-create-view.config.mjs +3 -3
  151. package/esm2022/layouts/lib/admin/entity-layout/entity-details-view/detail-view.config.mjs +3 -3
  152. package/esm2022/layouts/lib/admin/entity-layout/entity-details-view/entity-details-view.component.mjs +4 -4
  153. package/esm2022/layouts/lib/admin/entity-layout/entity-import-view/entity-import-view.component.mjs +4 -4
  154. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/entity-custom-view/entity-custom-view.component.mjs +4 -4
  155. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-columns/list-view-option-columns.component.mjs +3 -3
  156. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-conditions/list-view-option-conditions.component.mjs +3 -3
  157. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-conditions/list-view-option-filter-operator.component.mjs +3 -3
  158. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-sorting/list-view-option-sorting.component.mjs +3 -3
  159. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/entity-list-view.component.mjs +3 -3
  160. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/list-view.config.mjs +3 -3
  161. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/list-view.module.mjs +4 -4
  162. package/esm2022/layouts/lib/admin/entity-layout/entity-modify-view/entity-modify-view.component.mjs +4 -4
  163. package/esm2022/layouts/lib/admin/entity-layout/entity-modify-view/entity-modify-view.config.mjs +3 -3
  164. package/esm2022/layouts/lib/admin/entity-layout/entity-quick-view/entity-quick-view.component.mjs +3 -3
  165. package/esm2022/layouts/lib/admin/entity-layout/workflows/create-entity.workflow.mjs +3 -3
  166. package/esm2022/layouts/lib/admin/entity-layout/workflows/delete-entity.workflow.mjs +6 -6
  167. package/esm2022/layouts/lib/admin/entity-layout/workflows/import-entity.workflow.mjs +3 -3
  168. package/esm2022/layouts/lib/admin/entity-layout/workflows/modify-entity.workflow.mjs +3 -3
  169. package/esm2022/layouts/lib/admin/entity-layout/workflows/modify-section.workflow.mjs +3 -3
  170. package/esm2022/layouts/lib/admin/entity-layout/workflows/show-details.workflow.mjs +3 -3
  171. package/esm2022/layouts/lib/admin/entity-layout/workflows/show-list.workflow.mjs +3 -3
  172. package/esm2022/layouts/lib/admin/entity-layout/workflows/show-quick-view.workflow.mjs +3 -3
  173. package/esm2022/layouts/lib/layout.module.mjs +4 -4
  174. package/esm2022/mocks/lib/mocks.module.mjs +4 -4
  175. package/esm2022/mocks/lib/services/mocker.service.mjs +3 -3
  176. package/esm2022/mocks/lib/storage/storage.mock.service.mjs +4 -4
  177. package/esm2022/native/lib/native.module.mjs +4 -4
  178. package/esm2022/native/lib/native.service.mjs +3 -3
  179. package/esm2022/themes/default/lib/default.module.mjs +4 -4
  180. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.mjs +3 -3
  181. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-create-view/entity-master-create-view.component.mjs +5 -5
  182. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.mjs +5 -5
  183. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-columns/list-view-option-columns.component.mjs +4 -4
  184. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-sorting/list-view-option-sorting.component.mjs +4 -4
  185. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-modify-view/entity-master-modify-view.component.mjs +5 -5
  186. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.mjs +5 -5
  187. package/esm2022/themes/default/lib/layouts/root-layout/components/footer/footer.component.mjs +3 -3
  188. package/esm2022/themes/default/lib/layouts/root-layout/components/header/header.component.mjs +3 -3
  189. package/esm2022/themes/default/lib/layouts/root-layout/root-layout.component.mjs +3 -3
  190. package/esm2022/themes/default/lib/layouts/root-layout/root-layout.module.mjs +4 -4
  191. package/esm2022/themes/default/lib/pages/errors/error-401/error-401.component.mjs +4 -4
  192. package/esm2022/themes/default/lib/pages/errors/error-404/error-404.component.mjs +3 -3
  193. package/esm2022/themes/default/lib/pages/errors/error-offline/error-offline.component.mjs +3 -3
  194. package/esm2022/widgets/index.mjs +3 -1
  195. package/esm2022/widgets/lib/properties/editors.props.mjs +65 -0
  196. package/esm2022/widgets/lib/properties/groups.mjs +21 -0
  197. package/esm2022/widgets/lib/properties/index.mjs +4 -0
  198. package/esm2022/widgets/lib/properties/table-column.props.mjs +16 -0
  199. package/esm2022/widgets/lib/widgets/actions/button-widget/button-widget-view.component.mjs +33 -0
  200. package/esm2022/widgets/lib/widgets/actions/button-widget/button-widget.config.mjs +9 -0
  201. package/esm2022/widgets/lib/widgets/actions/button-widget/index.mjs +3 -0
  202. package/esm2022/widgets/lib/{editors → widgets/editors}/checkbox/checkbox-widget-column.component.mjs +4 -4
  203. package/esm2022/widgets/lib/widgets/editors/checkbox/checkbox-widget-edit.component.mjs +45 -0
  204. package/esm2022/widgets/lib/widgets/editors/checkbox/checkbox-widget-view.component.mjs +54 -0
  205. package/esm2022/widgets/lib/widgets/editors/checkbox/checkbox-widget.config.mjs +15 -0
  206. package/esm2022/widgets/lib/widgets/editors/checkbox/index.mjs +3 -0
  207. package/esm2022/widgets/lib/widgets/editors/contact-widget/contact-widget-column.component.mjs +19 -0
  208. package/esm2022/widgets/lib/{editors/password-box-widget/password-box-widget-column.component.mjs → widgets/editors/contact-widget/contact-widget-designer.component.mjs} +5 -5
  209. package/esm2022/widgets/lib/widgets/editors/contact-widget/contact-widget-edit.component.mjs +267 -0
  210. package/esm2022/widgets/lib/widgets/editors/contact-widget/contact-widget-filter.component.mjs +20 -0
  211. package/esm2022/widgets/lib/{editors/select-box-widget/select-box-widget-filter.component.mjs → widgets/editors/contact-widget/contact-widget-print.component.mjs} +5 -5
  212. package/esm2022/widgets/lib/widgets/editors/contact-widget/contact-widget-view.component.mjs +20 -0
  213. package/esm2022/widgets/lib/widgets/editors/contact-widget/contact-widget.config.mjs +24 -0
  214. package/esm2022/widgets/lib/widgets/editors/contact-widget/index.mjs +8 -0
  215. package/esm2022/widgets/lib/widgets/editors/contact-widget/popup-component.mjs +78 -0
  216. package/esm2022/widgets/lib/widgets/editors/date-time-box-widget/date-time-box-widget-column.component.mjs +44 -0
  217. package/esm2022/widgets/lib/widgets/editors/date-time-box-widget/date-time-box-widget-designer.component.mjs +19 -0
  218. package/esm2022/widgets/lib/widgets/editors/date-time-box-widget/date-time-box-widget-edit.component.mjs +122 -0
  219. package/esm2022/widgets/lib/widgets/editors/date-time-box-widget/date-time-box-widget-filter.component.mjs +20 -0
  220. package/esm2022/widgets/lib/widgets/editors/date-time-box-widget/date-time-box-widget-print.component.mjs +19 -0
  221. package/esm2022/widgets/lib/widgets/editors/date-time-box-widget/date-time-box-widget-view.component.mjs +45 -0
  222. package/esm2022/widgets/lib/widgets/editors/date-time-box-widget/date-time-box-widget.config.mjs +24 -0
  223. package/esm2022/widgets/lib/widgets/editors/date-time-box-widget/index.mjs +8 -0
  224. package/esm2022/widgets/lib/widgets/editors/email-box-widget/email-box-widget-column.component.mjs +66 -0
  225. package/esm2022/widgets/lib/widgets/editors/email-box-widget/email-box-widget-designer.component.mjs +19 -0
  226. package/esm2022/widgets/lib/widgets/editors/email-box-widget/email-box-widget-edit.component.mjs +228 -0
  227. package/esm2022/widgets/lib/widgets/editors/email-box-widget/email-box-widget-filter.component.mjs +20 -0
  228. package/esm2022/widgets/lib/widgets/editors/email-box-widget/email-box-widget-print.component.mjs +19 -0
  229. package/esm2022/widgets/lib/widgets/editors/email-box-widget/email-box-widget-view.component.mjs +111 -0
  230. package/esm2022/widgets/lib/widgets/editors/email-box-widget/email-box-widget.config.mjs +24 -0
  231. package/esm2022/widgets/lib/widgets/editors/email-box-widget/index.mjs +8 -0
  232. package/esm2022/widgets/lib/widgets/editors/file-box-widget/file-box-widget-column.component.mjs +19 -0
  233. package/esm2022/widgets/lib/{editors/signature-pad-widget/signature-pad-widget-column.component.mjs → widgets/editors/file-box-widget/file-box-widget-designer.component.mjs} +5 -5
  234. package/esm2022/widgets/lib/widgets/editors/file-box-widget/file-box-widget-edit.component.mjs +118 -0
  235. package/esm2022/widgets/lib/widgets/editors/file-box-widget/file-box-widget-filter.component.mjs +20 -0
  236. package/esm2022/widgets/lib/widgets/editors/file-box-widget/file-box-widget-print.component.mjs +19 -0
  237. package/esm2022/widgets/lib/widgets/editors/file-box-widget/file-box-widget-view.component.mjs +213 -0
  238. package/esm2022/widgets/lib/widgets/editors/file-box-widget/file-box-widget.config.mjs +24 -0
  239. package/esm2022/widgets/lib/widgets/editors/file-box-widget/file-box-widget.service.mjs +3 -0
  240. package/esm2022/widgets/lib/widgets/editors/file-box-widget/index.mjs +9 -0
  241. package/esm2022/widgets/lib/widgets/editors/gallery-widget/gallery-widget-column.component.mjs +19 -0
  242. package/esm2022/widgets/lib/widgets/editors/gallery-widget/gallery-widget-designer.component.mjs +19 -0
  243. package/esm2022/widgets/lib/widgets/editors/gallery-widget/gallery-widget-edit.component.mjs +172 -0
  244. package/esm2022/widgets/lib/widgets/editors/gallery-widget/gallery-widget-filter.component.mjs +20 -0
  245. package/esm2022/widgets/lib/widgets/editors/gallery-widget/gallery-widget-print.component.mjs +19 -0
  246. package/esm2022/widgets/lib/widgets/editors/gallery-widget/gallery-widget-types.mjs +2 -0
  247. package/esm2022/widgets/lib/widgets/editors/gallery-widget/gallery-widget-view.component.mjs +159 -0
  248. package/esm2022/widgets/lib/widgets/editors/gallery-widget/gallery-widget.config.mjs +24 -0
  249. package/esm2022/widgets/lib/widgets/editors/gallery-widget/index.mjs +8 -0
  250. package/esm2022/widgets/lib/widgets/editors/large-text-widget/index.mjs +8 -0
  251. package/esm2022/widgets/lib/widgets/editors/large-text-widget/large-text-widget-column.component.mjs +23 -0
  252. package/esm2022/widgets/lib/widgets/editors/large-text-widget/large-text-widget-designer.component.mjs +19 -0
  253. package/esm2022/widgets/lib/widgets/editors/large-text-widget/large-text-widget-edit.component.mjs +55 -0
  254. package/esm2022/widgets/lib/widgets/editors/large-text-widget/large-text-widget-filter.component.mjs +20 -0
  255. package/esm2022/widgets/lib/widgets/editors/large-text-widget/large-text-widget-print.component.mjs +19 -0
  256. package/esm2022/widgets/lib/widgets/editors/large-text-widget/large-text-widget-view.component.mjs +31 -0
  257. package/esm2022/widgets/lib/widgets/editors/large-text-widget/large-text-widget.config.mjs +33 -0
  258. package/esm2022/widgets/lib/widgets/editors/link-widget/index.mjs +8 -0
  259. package/esm2022/widgets/lib/widgets/editors/link-widget/link-widget-column.component.mjs +19 -0
  260. package/esm2022/widgets/lib/widgets/editors/link-widget/link-widget-designer.component.mjs +19 -0
  261. package/esm2022/widgets/lib/widgets/editors/link-widget/link-widget-edit.component.mjs +390 -0
  262. package/esm2022/widgets/lib/widgets/editors/link-widget/link-widget-filter.component.mjs +20 -0
  263. package/esm2022/widgets/lib/{editors/map-box-widget/map-box-widget-column.component.mjs → widgets/editors/link-widget/link-widget-print.component.mjs} +5 -5
  264. package/esm2022/widgets/lib/widgets/editors/link-widget/link-widget-view.component.mjs +120 -0
  265. package/esm2022/widgets/lib/widgets/editors/link-widget/link-widget.config.mjs +24 -0
  266. package/esm2022/widgets/lib/widgets/editors/map-box-widget/index.mjs +8 -0
  267. package/esm2022/widgets/lib/widgets/editors/map-box-widget/map-box-widget-column.component.mjs +19 -0
  268. package/esm2022/widgets/lib/widgets/editors/map-box-widget/map-box-widget-designer.component.mjs +19 -0
  269. package/esm2022/widgets/lib/{editors → widgets/editors}/map-box-widget/map-box-widget-edit.component.mjs +4 -4
  270. package/esm2022/widgets/lib/widgets/editors/map-box-widget/map-box-widget-filter.component.mjs +20 -0
  271. package/esm2022/widgets/lib/widgets/editors/map-box-widget/map-box-widget-print.component.mjs +19 -0
  272. package/esm2022/widgets/lib/{editors → widgets/editors}/map-box-widget/map-box-widget-view.component.mjs +4 -4
  273. package/esm2022/widgets/lib/widgets/editors/map-box-widget/map-box-widget.config.mjs +24 -0
  274. package/esm2022/widgets/lib/widgets/editors/number-box-widget/index.mjs +8 -0
  275. package/esm2022/widgets/lib/widgets/editors/number-box-widget/number-box-widget-column.component.mjs +38 -0
  276. package/esm2022/widgets/lib/widgets/editors/number-box-widget/number-box-widget-designer.component.mjs +19 -0
  277. package/esm2022/widgets/lib/widgets/editors/number-box-widget/number-box-widget-edit.component.mjs +138 -0
  278. package/esm2022/widgets/lib/widgets/editors/number-box-widget/number-box-widget-filter.component.mjs +20 -0
  279. package/esm2022/widgets/lib/widgets/editors/number-box-widget/number-box-widget-print.component.mjs +19 -0
  280. package/esm2022/widgets/lib/widgets/editors/number-box-widget/number-box-widget-view.component.mjs +53 -0
  281. package/esm2022/widgets/lib/widgets/editors/number-box-widget/number-box-widget.config.mjs +31 -0
  282. package/esm2022/widgets/lib/widgets/editors/password-box-widget/index.mjs +8 -0
  283. package/esm2022/widgets/lib/widgets/editors/password-box-widget/password-box-widget-column.component.mjs +19 -0
  284. package/esm2022/widgets/lib/widgets/editors/password-box-widget/password-box-widget-designer.component.mjs +19 -0
  285. package/esm2022/widgets/lib/{editors → widgets/editors}/password-box-widget/password-box-widget-edit.component.mjs +4 -4
  286. package/esm2022/widgets/lib/widgets/editors/password-box-widget/password-box-widget-filter.component.mjs +20 -0
  287. package/esm2022/widgets/lib/widgets/editors/password-box-widget/password-box-widget-print.component.mjs +19 -0
  288. package/esm2022/widgets/lib/widgets/editors/password-box-widget/password-box-widget-view.component.mjs +73 -0
  289. package/esm2022/widgets/lib/widgets/editors/password-box-widget/password-box-widget.config.mjs +24 -0
  290. package/esm2022/widgets/lib/widgets/editors/phone-box-widget/index.mjs +8 -0
  291. package/esm2022/widgets/lib/widgets/editors/phone-box-widget/phone-box-widget-column.component.mjs +66 -0
  292. package/esm2022/widgets/lib/widgets/editors/phone-box-widget/phone-box-widget-designer.component.mjs +19 -0
  293. package/esm2022/widgets/lib/widgets/editors/phone-box-widget/phone-box-widget-edit.component.mjs +220 -0
  294. package/esm2022/widgets/lib/widgets/editors/phone-box-widget/phone-box-widget-filter.component.mjs +20 -0
  295. package/esm2022/widgets/lib/widgets/editors/phone-box-widget/phone-box-widget-print.component.mjs +19 -0
  296. package/esm2022/widgets/lib/widgets/editors/phone-box-widget/phone-box-widget-view.component.mjs +113 -0
  297. package/esm2022/widgets/lib/widgets/editors/phone-box-widget/phone-box-widget.config.mjs +37 -0
  298. package/esm2022/widgets/lib/widgets/editors/rich-text-widget/index.mjs +8 -0
  299. package/esm2022/widgets/lib/widgets/editors/rich-text-widget/rich-text-widget-column.component.mjs +23 -0
  300. package/esm2022/widgets/lib/widgets/editors/rich-text-widget/rich-text-widget-designer.component.mjs +19 -0
  301. package/esm2022/widgets/lib/{editors → widgets/editors}/rich-text-widget/rich-text-widget-edit.component.mjs +4 -4
  302. package/esm2022/widgets/lib/widgets/editors/rich-text-widget/rich-text-widget-filter.component.mjs +20 -0
  303. package/esm2022/widgets/lib/widgets/editors/rich-text-widget/rich-text-widget-print.component.mjs +19 -0
  304. package/esm2022/widgets/lib/widgets/editors/rich-text-widget/rich-text-widget-view.component.mjs +39 -0
  305. package/esm2022/widgets/lib/widgets/editors/rich-text-widget/rich-text-widget.config.mjs +24 -0
  306. package/esm2022/widgets/lib/widgets/editors/select-box-widget/index.mjs +8 -0
  307. package/esm2022/widgets/lib/widgets/editors/select-box-widget/select-box-widget-column.component.mjs +19 -0
  308. package/esm2022/widgets/lib/widgets/editors/select-box-widget/select-box-widget-designer.component.mjs +19 -0
  309. package/esm2022/widgets/lib/{editors → widgets/editors}/select-box-widget/select-box-widget-edit.component.mjs +4 -4
  310. package/esm2022/widgets/lib/widgets/editors/select-box-widget/select-box-widget-filter.component.mjs +19 -0
  311. package/esm2022/widgets/lib/widgets/editors/select-box-widget/select-box-widget-print.component.mjs +19 -0
  312. package/esm2022/widgets/lib/widgets/editors/select-box-widget/select-box-widget-view.component.mjs +60 -0
  313. package/esm2022/widgets/lib/widgets/editors/select-box-widget/select-box-widget.config.mjs +24 -0
  314. package/esm2022/widgets/lib/widgets/editors/selection-list-widget/index.mjs +8 -0
  315. package/esm2022/widgets/lib/widgets/editors/selection-list-widget/selection-list-widget-column.component.mjs +41 -0
  316. package/esm2022/widgets/lib/widgets/editors/selection-list-widget/selection-list-widget-designer.component.mjs +19 -0
  317. package/esm2022/widgets/lib/{editors → widgets/editors}/selection-list-widget/selection-list-widget-edit.component.mjs +4 -4
  318. package/esm2022/widgets/lib/widgets/editors/selection-list-widget/selection-list-widget-filter.component.mjs +20 -0
  319. package/esm2022/widgets/lib/widgets/editors/selection-list-widget/selection-list-widget-print.component.mjs +19 -0
  320. package/esm2022/widgets/lib/widgets/editors/selection-list-widget/selection-list-widget-view.component.mjs +41 -0
  321. package/esm2022/widgets/lib/widgets/editors/selection-list-widget/selection-list-widget.config.mjs +24 -0
  322. package/esm2022/widgets/lib/widgets/editors/signature-pad-widget/index.mjs +8 -0
  323. package/esm2022/widgets/lib/widgets/editors/signature-pad-widget/signature-pad-widget-column.component.mjs +19 -0
  324. package/esm2022/widgets/lib/widgets/editors/signature-pad-widget/signature-pad-widget-designer.component.mjs +19 -0
  325. package/esm2022/widgets/lib/widgets/editors/signature-pad-widget/signature-pad-widget-edit.component.mjs +140 -0
  326. package/esm2022/widgets/lib/widgets/editors/signature-pad-widget/signature-pad-widget-filter.component.mjs +20 -0
  327. package/esm2022/widgets/lib/widgets/editors/signature-pad-widget/signature-pad-widget-print.component.mjs +19 -0
  328. package/esm2022/widgets/lib/widgets/editors/signature-pad-widget/signature-pad-widget-view.component.mjs +42 -0
  329. package/esm2022/widgets/lib/widgets/editors/signature-pad-widget/signature-pad-widget.config.mjs +24 -0
  330. package/esm2022/widgets/lib/widgets/editors/text-box-widget/index.mjs +8 -0
  331. package/esm2022/widgets/lib/widgets/editors/text-box-widget/text-box-widget-column.component.mjs +20 -0
  332. package/esm2022/widgets/lib/widgets/editors/text-box-widget/text-box-widget-designer.component.mjs +19 -0
  333. package/esm2022/widgets/lib/widgets/editors/text-box-widget/text-box-widget-edit.component.mjs +121 -0
  334. package/esm2022/widgets/lib/widgets/editors/text-box-widget/text-box-widget-filter.component.mjs +20 -0
  335. package/esm2022/widgets/lib/widgets/editors/text-box-widget/text-box-widget-print.component.mjs +19 -0
  336. package/esm2022/widgets/lib/widgets/editors/text-box-widget/text-box-widget-view.component.mjs +40 -0
  337. package/esm2022/widgets/lib/widgets/editors/text-box-widget/text-box-widget.config.mjs +37 -0
  338. package/esm2022/widgets/lib/widgets/editors/toggle-widget/index.mjs +8 -0
  339. package/esm2022/widgets/lib/{editors → widgets/editors}/toggle-widget/toggle-widget-column.component.mjs +4 -4
  340. package/esm2022/widgets/lib/widgets/editors/toggle-widget/toggle-widget-designer.component.mjs +19 -0
  341. package/esm2022/widgets/lib/{editors → widgets/editors}/toggle-widget/toggle-widget-edit.component.mjs +4 -5
  342. package/esm2022/widgets/lib/widgets/editors/toggle-widget/toggle-widget-filter.component.mjs +20 -0
  343. package/esm2022/widgets/lib/widgets/editors/toggle-widget/toggle-widget-print.component.mjs +19 -0
  344. package/esm2022/widgets/lib/{editors → widgets/editors}/toggle-widget/toggle-widget-view.component.mjs +4 -4
  345. package/esm2022/widgets/lib/widgets/editors/toggle-widget/toggle-widget.config.mjs +24 -0
  346. package/esm2022/widgets/lib/widgets/index.mjs +24 -0
  347. package/esm2022/widgets/lib/widgets/layout/block-widget/block-widget.component.mjs +34 -0
  348. package/esm2022/widgets/lib/widgets/layout/block-widget/block-widget.config.mjs +9 -0
  349. package/esm2022/widgets/lib/widgets/layout/block-widget/index.mjs +3 -0
  350. package/esm2022/widgets/lib/widgets/layout/repeater-widget/index.mjs +8 -0
  351. package/esm2022/widgets/lib/widgets/layout/repeater-widget/repeater-widget-column.component.mjs +19 -0
  352. package/esm2022/widgets/lib/widgets/layout/repeater-widget/repeater-widget-designer.component.mjs +19 -0
  353. package/esm2022/widgets/lib/{editors/large-text-widget/large-text-widget-filter.component.mjs → widgets/layout/repeater-widget/repeater-widget-edit.component.mjs} +5 -5
  354. package/esm2022/widgets/lib/widgets/layout/repeater-widget/repeater-widget-filter.component.mjs +20 -0
  355. package/esm2022/widgets/lib/widgets/layout/repeater-widget/repeater-widget-print.component.mjs +19 -0
  356. package/esm2022/widgets/lib/widgets/layout/repeater-widget/repeater-widget-view.component.mjs +52 -0
  357. package/esm2022/widgets/lib/widgets/layout/repeater-widget/repeater-widget.config.mjs +24 -0
  358. package/esm2022/widgets/lib/widgets.module.mjs +10 -24
  359. package/esm2022/workflow/lib/actions/start-workflow.action.mjs +3 -3
  360. package/esm2022/workflow/lib/workflow-event-dispatcher.service.mjs +3 -3
  361. package/esm2022/workflow/lib/workflow-registery.service.mjs +3 -3
  362. package/esm2022/workflow/lib/workflow.module.mjs +4 -4
  363. package/esm2022/workflow/lib/workflow.service.mjs +3 -3
  364. package/esm2022/workflow/lib/workflow.types.mjs +6 -6
  365. package/fesm2022/acorex-platform-auth.mjs +70 -28
  366. package/fesm2022/acorex-platform-auth.mjs.map +1 -1
  367. package/fesm2022/{acorex-platform-common-avatar-widget-edit.component-BtnVjoMi.mjs → acorex-platform-common-avatar-widget-edit.component-CfqY7kKi.mjs} +4 -4
  368. package/fesm2022/{acorex-platform-common-avatar-widget-edit.component-BtnVjoMi.mjs.map → acorex-platform-common-avatar-widget-edit.component-CfqY7kKi.mjs.map} +1 -1
  369. package/fesm2022/{acorex-platform-common-avatar-widget-view.component-0-hGLYLK.mjs → acorex-platform-common-avatar-widget-view.component-DXC7INdQ.mjs} +4 -4
  370. package/fesm2022/{acorex-platform-common-avatar-widget-view.component-0-hGLYLK.mjs.map → acorex-platform-common-avatar-widget-view.component-DXC7INdQ.mjs.map} +1 -1
  371. package/fesm2022/{acorex-platform-common-boolean-widget-filter.component-CMkjO_x1.mjs → acorex-platform-common-boolean-widget-filter.component-DLGnsXy4.mjs} +5 -5
  372. package/fesm2022/{acorex-platform-common-boolean-widget-filter.component-CMkjO_x1.mjs.map → acorex-platform-common-boolean-widget-filter.component-DLGnsXy4.mjs.map} +1 -1
  373. package/fesm2022/{acorex-platform-common-change-password.component-CULJjn0l.mjs → acorex-platform-common-change-password.component-BBPFxmB6.mjs} +5 -5
  374. package/fesm2022/{acorex-platform-common-change-password.component-CULJjn0l.mjs.map → acorex-platform-common-change-password.component-BBPFxmB6.mjs.map} +1 -1
  375. package/fesm2022/{acorex-platform-common-checkbox-widget-column.component-C91gG8nm.mjs → acorex-platform-common-checkbox-widget-column.component-Ch2bdAjo.mjs} +4 -4
  376. package/fesm2022/{acorex-platform-common-checkbox-widget-column.component-C91gG8nm.mjs.map → acorex-platform-common-checkbox-widget-column.component-Ch2bdAjo.mjs.map} +1 -1
  377. package/fesm2022/{acorex-platform-common-checkbox-widget-edit.component-_jtT03Vn.mjs → acorex-platform-common-checkbox-widget-edit.component-DOGMfGby.mjs} +4 -4
  378. package/fesm2022/{acorex-platform-common-checkbox-widget-edit.component-_jtT03Vn.mjs.map → acorex-platform-common-checkbox-widget-edit.component-DOGMfGby.mjs.map} +1 -1
  379. package/fesm2022/{acorex-platform-common-checkbox-widget-view.component-BDAtJB1B.mjs → acorex-platform-common-checkbox-widget-view.component-BhGOtblX.mjs} +4 -4
  380. package/fesm2022/{acorex-platform-common-checkbox-widget-view.component-BDAtJB1B.mjs.map → acorex-platform-common-checkbox-widget-view.component-BhGOtblX.mjs.map} +1 -1
  381. package/fesm2022/{acorex-platform-common-dateTime-widget-column.component-5ljYmtHI.mjs → acorex-platform-common-dateTime-widget-column.component-BkUDt0Kj.mjs} +4 -4
  382. package/fesm2022/{acorex-platform-common-dateTime-widget-column.component-5ljYmtHI.mjs.map → acorex-platform-common-dateTime-widget-column.component-BkUDt0Kj.mjs.map} +1 -1
  383. package/fesm2022/{acorex-platform-common-dateTime-widget-edit.component-DdqtbOY1.mjs → acorex-platform-common-dateTime-widget-edit.component-DEqsapFH.mjs} +5 -5
  384. package/fesm2022/{acorex-platform-common-dateTime-widget-edit.component-DdqtbOY1.mjs.map → acorex-platform-common-dateTime-widget-edit.component-DEqsapFH.mjs.map} +1 -1
  385. package/fesm2022/{acorex-platform-common-dateTime-widget-filter.component-BjtIJkeC.mjs → acorex-platform-common-dateTime-widget-filter.component-CqddjYjP.mjs} +4 -4
  386. package/fesm2022/{acorex-platform-common-dateTime-widget-filter.component-BjtIJkeC.mjs.map → acorex-platform-common-dateTime-widget-filter.component-CqddjYjP.mjs.map} +1 -1
  387. package/fesm2022/{acorex-platform-common-dateTime-widget-view.component-Dxmnor_-.mjs → acorex-platform-common-dateTime-widget-view.component-BKUPKE9M.mjs} +4 -4
  388. package/fesm2022/acorex-platform-common-dateTime-widget-view.component-BKUPKE9M.mjs.map +1 -0
  389. package/fesm2022/{acorex-platform-common-email-widget-column.component-DlPoexcx.mjs → acorex-platform-common-email-widget-column.component-BOer2nZi.mjs} +4 -4
  390. package/fesm2022/{acorex-platform-common-email-widget-column.component-DlPoexcx.mjs.map → acorex-platform-common-email-widget-column.component-BOer2nZi.mjs.map} +1 -1
  391. package/fesm2022/{acorex-platform-common-email-widget-edit.component-CLl0gmdM.mjs → acorex-platform-common-email-widget-edit.component-BoKsGiEI.mjs} +5 -5
  392. package/fesm2022/{acorex-platform-common-email-widget-edit.component-CLl0gmdM.mjs.map → acorex-platform-common-email-widget-edit.component-BoKsGiEI.mjs.map} +1 -1
  393. package/fesm2022/{acorex-platform-common-email-widget-view.component-C4M7KGUS.mjs → acorex-platform-common-email-widget-view.component-BZtK5dMd.mjs} +4 -4
  394. package/fesm2022/{acorex-platform-common-email-widget-view.component-C4M7KGUS.mjs.map → acorex-platform-common-email-widget-view.component-BZtK5dMd.mjs.map} +1 -1
  395. package/fesm2022/{acorex-platform-common-file-widget-column.component-CwFzLLHt.mjs → acorex-platform-common-file-widget-column.component-DpcUmwAT.mjs} +4 -4
  396. package/fesm2022/{acorex-platform-common-file-widget-column.component-CwFzLLHt.mjs.map → acorex-platform-common-file-widget-column.component-DpcUmwAT.mjs.map} +1 -1
  397. package/fesm2022/{acorex-platform-common-file-widget-edit.component-ZXhaXwWN.mjs → acorex-platform-common-file-widget-edit.component-CNLXguLn.mjs} +5 -5
  398. package/fesm2022/{acorex-platform-common-file-widget-edit.component-ZXhaXwWN.mjs.map → acorex-platform-common-file-widget-edit.component-CNLXguLn.mjs.map} +1 -1
  399. package/fesm2022/{acorex-platform-common-file-widget-filter.component-DqYmxdx_.mjs → acorex-platform-common-file-widget-filter.component-Dwt-LYWG.mjs} +4 -4
  400. package/fesm2022/{acorex-platform-common-file-widget-filter.component-DqYmxdx_.mjs.map → acorex-platform-common-file-widget-filter.component-Dwt-LYWG.mjs.map} +1 -1
  401. package/fesm2022/{acorex-platform-common-file-widget-view.component-B0C9oJLT.mjs → acorex-platform-common-file-widget-view.component-CjDhjHQR.mjs} +5 -5
  402. package/fesm2022/{acorex-platform-common-file-widget-view.component-B0C9oJLT.mjs.map → acorex-platform-common-file-widget-view.component-CjDhjHQR.mjs.map} +1 -1
  403. package/fesm2022/{acorex-platform-common-gallery-widget-edit.component-DB0-6pik.mjs → acorex-platform-common-gallery-widget-edit.component-CzKFKaPH.mjs} +5 -5
  404. package/fesm2022/{acorex-platform-common-gallery-widget-edit.component-DB0-6pik.mjs.map → acorex-platform-common-gallery-widget-edit.component-CzKFKaPH.mjs.map} +1 -1
  405. package/fesm2022/{acorex-platform-common-gallery-widget-filter.component-Btrq4HP9.mjs → acorex-platform-common-gallery-widget-filter.component-B-KxKtY4.mjs} +4 -4
  406. package/fesm2022/{acorex-platform-common-gallery-widget-filter.component-Btrq4HP9.mjs.map → acorex-platform-common-gallery-widget-filter.component-B-KxKtY4.mjs.map} +1 -1
  407. package/fesm2022/{acorex-platform-common-gallery-widget-view.component-Bp5cEEiY.mjs → acorex-platform-common-gallery-widget-view.component-ca-JB8qW.mjs} +4 -4
  408. package/fesm2022/{acorex-platform-common-gallery-widget-view.component-Bp5cEEiY.mjs.map → acorex-platform-common-gallery-widget-view.component-ca-JB8qW.mjs.map} +1 -1
  409. package/fesm2022/{acorex-platform-common-largetext-widget-edit.component-DJhPlQ0G.mjs → acorex-platform-common-largetext-widget-edit.component-CrqPJ58V.mjs} +4 -4
  410. package/fesm2022/{acorex-platform-common-largetext-widget-edit.component-DJhPlQ0G.mjs.map → acorex-platform-common-largetext-widget-edit.component-CrqPJ58V.mjs.map} +1 -1
  411. package/fesm2022/{acorex-platform-common-lookup-widget-column.component-CtvP7V_w.mjs → acorex-platform-common-lookup-widget-column.component-BEZNLQZi.mjs} +4 -4
  412. package/fesm2022/{acorex-platform-common-lookup-widget-column.component-CtvP7V_w.mjs.map → acorex-platform-common-lookup-widget-column.component-BEZNLQZi.mjs.map} +1 -1
  413. package/fesm2022/{acorex-platform-common-lookup-widget-edit.component-JjtWsg2g.mjs → acorex-platform-common-lookup-widget-edit.component-D50jPeKP.mjs} +4 -4
  414. package/fesm2022/{acorex-platform-common-lookup-widget-edit.component-JjtWsg2g.mjs.map → acorex-platform-common-lookup-widget-edit.component-D50jPeKP.mjs.map} +1 -1
  415. package/fesm2022/{acorex-platform-common-lookup-widget-filter.component-B4C5JB_p.mjs → acorex-platform-common-lookup-widget-filter.component-CZHDDnR3.mjs} +5 -5
  416. package/fesm2022/{acorex-platform-common-lookup-widget-filter.component-B4C5JB_p.mjs.map → acorex-platform-common-lookup-widget-filter.component-CZHDDnR3.mjs.map} +1 -1
  417. package/fesm2022/{acorex-platform-common-lookup-widget-view.component-BHqYDEuU.mjs → acorex-platform-common-lookup-widget-view.component-CQCvJxgi.mjs} +4 -4
  418. package/fesm2022/{acorex-platform-common-lookup-widget-view.component-BHqYDEuU.mjs.map → acorex-platform-common-lookup-widget-view.component-CQCvJxgi.mjs.map} +1 -1
  419. package/fesm2022/{acorex-platform-common-map-widget-edit.component-BjrRrklq.mjs → acorex-platform-common-map-widget-edit.component-OanYRQ3B.mjs} +4 -4
  420. package/fesm2022/{acorex-platform-common-map-widget-edit.component-BjrRrklq.mjs.map → acorex-platform-common-map-widget-edit.component-OanYRQ3B.mjs.map} +1 -1
  421. package/fesm2022/{acorex-platform-common-map-widget-view.component-C5gL9-oB.mjs → acorex-platform-common-map-widget-view.component-BWdndMYJ.mjs} +4 -4
  422. package/fesm2022/{acorex-platform-common-map-widget-view.component-C5gL9-oB.mjs.map → acorex-platform-common-map-widget-view.component-BWdndMYJ.mjs.map} +1 -1
  423. package/fesm2022/{acorex-platform-common-messenger-widget-column.component-BQSYcyso.mjs → acorex-platform-common-messenger-widget-column.component-BHP6R3OI.mjs} +4 -4
  424. package/fesm2022/{acorex-platform-common-messenger-widget-column.component-BQSYcyso.mjs.map → acorex-platform-common-messenger-widget-column.component-BHP6R3OI.mjs.map} +1 -1
  425. package/fesm2022/{acorex-platform-common-messenger-widget-edit.component-BjqtP0ls.mjs → acorex-platform-common-messenger-widget-edit.component-B7ycb6tX.mjs} +5 -5
  426. package/fesm2022/{acorex-platform-common-messenger-widget-edit.component-BjqtP0ls.mjs.map → acorex-platform-common-messenger-widget-edit.component-B7ycb6tX.mjs.map} +1 -1
  427. package/fesm2022/{acorex-platform-common-messenger-widget-view.component-B4Yt68Vn.mjs → acorex-platform-common-messenger-widget-view.component-Dz5X-FS5.mjs} +4 -4
  428. package/fesm2022/{acorex-platform-common-messenger-widget-view.component-B4Yt68Vn.mjs.map → acorex-platform-common-messenger-widget-view.component-Dz5X-FS5.mjs.map} +1 -1
  429. package/fesm2022/{acorex-platform-common-number-widget-edit.component-D9dC514F.mjs → acorex-platform-common-number-widget-edit.component-bTHacO49.mjs} +4 -4
  430. package/fesm2022/{acorex-platform-common-number-widget-edit.component-D9dC514F.mjs.map → acorex-platform-common-number-widget-edit.component-bTHacO49.mjs.map} +1 -1
  431. package/fesm2022/{acorex-platform-common-number-widget-filter.component-BkKeBL6p.mjs → acorex-platform-common-number-widget-filter.component-CFqNphMw.mjs} +5 -5
  432. package/fesm2022/{acorex-platform-common-number-widget-filter.component-BkKeBL6p.mjs.map → acorex-platform-common-number-widget-filter.component-CFqNphMw.mjs.map} +1 -1
  433. package/fesm2022/{acorex-platform-common-number-widget-view.component-DD0tkoc4.mjs → acorex-platform-common-number-widget-view.component-CP5aboLU.mjs} +4 -4
  434. package/fesm2022/{acorex-platform-common-number-widget-view.component-DD0tkoc4.mjs.map → acorex-platform-common-number-widget-view.component-CP5aboLU.mjs.map} +1 -1
  435. package/fesm2022/{acorex-platform-common-password-widget-column.component-C0-x1_Np.mjs → acorex-platform-common-password-widget-column.component-CGxTbd_S.mjs} +4 -4
  436. package/fesm2022/{acorex-platform-common-password-widget-column.component-C0-x1_Np.mjs.map → acorex-platform-common-password-widget-column.component-CGxTbd_S.mjs.map} +1 -1
  437. package/fesm2022/{acorex-platform-common-password-widget-edit.component-BbYqIGEP.mjs → acorex-platform-common-password-widget-edit.component-CHQ_Kp4t.mjs} +4 -4
  438. package/fesm2022/{acorex-platform-common-password-widget-edit.component-BbYqIGEP.mjs.map → acorex-platform-common-password-widget-edit.component-CHQ_Kp4t.mjs.map} +1 -1
  439. package/fesm2022/{acorex-platform-common-password-widget-view.component-B6vGWi9I.mjs → acorex-platform-common-password-widget-view.component-BQ9jlt6g.mjs} +6 -6
  440. package/fesm2022/{acorex-platform-common-password-widget-view.component-B6vGWi9I.mjs.map → acorex-platform-common-password-widget-view.component-BQ9jlt6g.mjs.map} +1 -1
  441. package/fesm2022/{acorex-platform-common-phone-widget-column.component-uAeAPCog.mjs → acorex-platform-common-phone-widget-column.component-RJp6wHul.mjs} +4 -4
  442. package/fesm2022/{acorex-platform-common-phone-widget-column.component-uAeAPCog.mjs.map → acorex-platform-common-phone-widget-column.component-RJp6wHul.mjs.map} +1 -1
  443. package/fesm2022/{acorex-platform-common-phone-widget-edit.component-Dj_tdhZw.mjs → acorex-platform-common-phone-widget-edit.component-BB5wTbjd.mjs} +5 -5
  444. package/fesm2022/{acorex-platform-common-phone-widget-edit.component-Dj_tdhZw.mjs.map → acorex-platform-common-phone-widget-edit.component-BB5wTbjd.mjs.map} +1 -1
  445. package/fesm2022/{acorex-platform-common-phone-widget-view.component-D_A5NXzA.mjs → acorex-platform-common-phone-widget-view.component-SIzFWfjV.mjs} +4 -4
  446. package/fesm2022/{acorex-platform-common-phone-widget-view.component-D_A5NXzA.mjs.map → acorex-platform-common-phone-widget-view.component-SIzFWfjV.mjs.map} +1 -1
  447. package/fesm2022/{acorex-platform-common-rich-text-widget-column.component-DDJn1WqG.mjs → acorex-platform-common-rich-text-widget-column.component-Ced0WqvI.mjs} +4 -4
  448. package/fesm2022/{acorex-platform-common-rich-text-widget-column.component-DDJn1WqG.mjs.map → acorex-platform-common-rich-text-widget-column.component-Ced0WqvI.mjs.map} +1 -1
  449. package/fesm2022/{acorex-platform-common-rich-text-widget-edit.component-f30-VPMJ.mjs → acorex-platform-common-rich-text-widget-edit.component-CnH3MjYz.mjs} +4 -4
  450. package/fesm2022/{acorex-platform-common-rich-text-widget-edit.component-f30-VPMJ.mjs.map → acorex-platform-common-rich-text-widget-edit.component-CnH3MjYz.mjs.map} +1 -1
  451. package/fesm2022/{acorex-platform-common-rich-text-widget-view.component-Y214kMe4.mjs → acorex-platform-common-rich-text-widget-view.component-BIRyPRtw.mjs} +4 -4
  452. package/fesm2022/{acorex-platform-common-rich-text-widget-view.component-Y214kMe4.mjs.map → acorex-platform-common-rich-text-widget-view.component-BIRyPRtw.mjs.map} +1 -1
  453. package/fesm2022/{acorex-platform-common-selection-list-widget-column.component-4uQzk7WQ.mjs → acorex-platform-common-selection-list-widget-column.component-DxeK2RPc.mjs} +4 -4
  454. package/fesm2022/{acorex-platform-common-selection-list-widget-column.component-4uQzk7WQ.mjs.map → acorex-platform-common-selection-list-widget-column.component-DxeK2RPc.mjs.map} +1 -1
  455. package/fesm2022/{acorex-platform-common-selection-list-widget-edit.component-BY7A969M.mjs → acorex-platform-common-selection-list-widget-edit.component-CBLEeILz.mjs} +4 -4
  456. package/fesm2022/{acorex-platform-common-selection-list-widget-edit.component-BY7A969M.mjs.map → acorex-platform-common-selection-list-widget-edit.component-CBLEeILz.mjs.map} +1 -1
  457. package/fesm2022/{acorex-platform-common-selection-list-widget-filter.component-hbxBcirf.mjs → acorex-platform-common-selection-list-widget-filter.component-B01t7mso.mjs} +4 -4
  458. package/fesm2022/{acorex-platform-common-selection-list-widget-filter.component-hbxBcirf.mjs.map → acorex-platform-common-selection-list-widget-filter.component-B01t7mso.mjs.map} +1 -1
  459. package/fesm2022/{acorex-platform-common-selection-list-widget-view.component-HzxEiWgp.mjs → acorex-platform-common-selection-list-widget-view.component-QJMp11dd.mjs} +4 -4
  460. package/fesm2022/{acorex-platform-common-selection-list-widget-view.component-HzxEiWgp.mjs.map → acorex-platform-common-selection-list-widget-view.component-QJMp11dd.mjs.map} +1 -1
  461. package/fesm2022/{acorex-platform-common-signature-pad-widget-edit.component-C6VI3F_S.mjs → acorex-platform-common-signature-pad-widget-edit.component-BQiY7RIp.mjs} +5 -5
  462. package/fesm2022/{acorex-platform-common-signature-pad-widget-edit.component-C6VI3F_S.mjs.map → acorex-platform-common-signature-pad-widget-edit.component-BQiY7RIp.mjs.map} +1 -1
  463. package/fesm2022/{acorex-platform-common-signature-pad-widget-view.component-CEiBtv9t.mjs → acorex-platform-common-signature-pad-widget-view.component-CEhRqgEn.mjs} +4 -4
  464. package/fesm2022/{acorex-platform-common-signature-pad-widget-view.component-CEiBtv9t.mjs.map → acorex-platform-common-signature-pad-widget-view.component-CEhRqgEn.mjs.map} +1 -1
  465. package/fesm2022/{acorex-platform-common-string-widget-filter.component-BZiyRHfg.mjs → acorex-platform-common-string-widget-filter.component--L4PeRCB.mjs} +5 -5
  466. package/fesm2022/{acorex-platform-common-string-widget-filter.component-BZiyRHfg.mjs.map → acorex-platform-common-string-widget-filter.component--L4PeRCB.mjs.map} +1 -1
  467. package/fesm2022/{acorex-platform-common-text-widget-column.component-qXusAevm.mjs → acorex-platform-common-text-widget-column.component-D-mLfzKJ.mjs} +4 -4
  468. package/fesm2022/{acorex-platform-common-text-widget-column.component-qXusAevm.mjs.map → acorex-platform-common-text-widget-column.component-D-mLfzKJ.mjs.map} +1 -1
  469. package/fesm2022/{acorex-platform-common-text-widget-edit.component-DSwPteMX.mjs → acorex-platform-common-text-widget-edit.component-CN7OyTfJ.mjs} +5 -5
  470. package/fesm2022/{acorex-platform-common-text-widget-edit.component-DSwPteMX.mjs.map → acorex-platform-common-text-widget-edit.component-CN7OyTfJ.mjs.map} +1 -1
  471. package/fesm2022/{acorex-platform-common-text-widget-view.component-CKg9nvbY.mjs → acorex-platform-common-text-widget-view.component-B-R4-5Ra.mjs} +4 -4
  472. package/fesm2022/{acorex-platform-common-text-widget-view.component-CKg9nvbY.mjs.map → acorex-platform-common-text-widget-view.component-B-R4-5Ra.mjs.map} +1 -1
  473. package/fesm2022/{acorex-platform-common-toggle-widget-column.component-_IrciAj-.mjs → acorex-platform-common-toggle-widget-column.component-B5NFRPgX.mjs} +4 -4
  474. package/fesm2022/{acorex-platform-common-toggle-widget-column.component-_IrciAj-.mjs.map → acorex-platform-common-toggle-widget-column.component-B5NFRPgX.mjs.map} +1 -1
  475. package/fesm2022/{acorex-platform-common-toggle-widget-edit.component-CDG62BJN.mjs → acorex-platform-common-toggle-widget-edit.component-CLWHwf8V.mjs} +4 -4
  476. package/fesm2022/{acorex-platform-common-toggle-widget-edit.component-CDG62BJN.mjs.map → acorex-platform-common-toggle-widget-edit.component-CLWHwf8V.mjs.map} +1 -1
  477. package/fesm2022/{acorex-platform-common-toggle-widget-view.component-B5JwQ8X-.mjs → acorex-platform-common-toggle-widget-view.component-Di2S7vub.mjs} +4 -4
  478. package/fesm2022/{acorex-platform-common-toggle-widget-view.component-B5JwQ8X-.mjs.map → acorex-platform-common-toggle-widget-view.component-Di2S7vub.mjs.map} +1 -1
  479. package/fesm2022/acorex-platform-common.mjs +168 -168
  480. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  481. package/fesm2022/acorex-platform-core.mjs +4 -0
  482. package/fesm2022/acorex-platform-core.mjs.map +1 -0
  483. package/fesm2022/acorex-platform-layout-builder.mjs +169 -43
  484. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  485. package/fesm2022/acorex-platform-layout-designer.mjs +125 -0
  486. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -0
  487. package/fesm2022/acorex-platform-layout-entity.mjs +116 -76
  488. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  489. package/fesm2022/{acorex-platform-layouts-entity-create-view.component-DgPPnU8S.mjs → acorex-platform-layouts-entity-create-view.component-B2XtNJo1.mjs} +4 -4
  490. package/fesm2022/{acorex-platform-layouts-entity-create-view.component-DgPPnU8S.mjs.map → acorex-platform-layouts-entity-create-view.component-B2XtNJo1.mjs.map} +1 -1
  491. package/fesm2022/{acorex-platform-layouts-entity-import-view.component-V50y5Jjs.mjs → acorex-platform-layouts-entity-import-view.component-CZpEcVi9.mjs} +4 -4
  492. package/fesm2022/{acorex-platform-layouts-entity-import-view.component-V50y5Jjs.mjs.map → acorex-platform-layouts-entity-import-view.component-CZpEcVi9.mjs.map} +1 -1
  493. package/fesm2022/{acorex-platform-layouts-entity-modify-view.component-Bwz4yVpK.mjs → acorex-platform-layouts-entity-modify-view.component-CjofXJku.mjs} +4 -4
  494. package/fesm2022/{acorex-platform-layouts-entity-modify-view.component-Bwz4yVpK.mjs.map → acorex-platform-layouts-entity-modify-view.component-CjofXJku.mjs.map} +1 -1
  495. package/fesm2022/acorex-platform-layouts.mjs +80 -80
  496. package/fesm2022/acorex-platform-layouts.mjs.map +1 -1
  497. package/fesm2022/acorex-platform-mocks.mjs +10 -10
  498. package/fesm2022/acorex-platform-mocks.mjs.map +1 -1
  499. package/fesm2022/acorex-platform-native.mjs +7 -7
  500. package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-qOxuoK6c.mjs → acorex-platform-themes-default-entity-master-create-view.component-D1vzPrng.mjs} +5 -5
  501. package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-qOxuoK6c.mjs.map → acorex-platform-themes-default-entity-master-create-view.component-D1vzPrng.mjs.map} +1 -1
  502. package/fesm2022/{acorex-platform-themes-default-entity-master-modify-view.component-BJcpG94Q.mjs → acorex-platform-themes-default-entity-master-modify-view.component-DCE6c3Is.mjs} +5 -5
  503. package/fesm2022/{acorex-platform-themes-default-entity-master-modify-view.component-BJcpG94Q.mjs.map → acorex-platform-themes-default-entity-master-modify-view.component-DCE6c3Is.mjs.map} +1 -1
  504. package/fesm2022/{acorex-platform-themes-default-error-401.component-BeQ4_BgW.mjs → acorex-platform-themes-default-error-401.component-D5QQ2HAv.mjs} +4 -4
  505. package/fesm2022/{acorex-platform-themes-default-error-401.component-BeQ4_BgW.mjs.map → acorex-platform-themes-default-error-401.component-D5QQ2HAv.mjs.map} +1 -1
  506. package/fesm2022/{acorex-platform-themes-default-error-404.component-BYDiT6Ns.mjs → acorex-platform-themes-default-error-404.component-DSY_D3Iq.mjs} +4 -4
  507. package/fesm2022/{acorex-platform-themes-default-error-404.component-BYDiT6Ns.mjs.map → acorex-platform-themes-default-error-404.component-DSY_D3Iq.mjs.map} +1 -1
  508. package/fesm2022/{acorex-platform-themes-default-error-offline.component-DUtW3w_g.mjs → acorex-platform-themes-default-error-offline.component-B6wSkMdd.mjs} +4 -4
  509. package/fesm2022/{acorex-platform-themes-default-error-offline.component-DUtW3w_g.mjs.map → acorex-platform-themes-default-error-offline.component-B6wSkMdd.mjs.map} +1 -1
  510. package/fesm2022/acorex-platform-themes-default.mjs +41 -41
  511. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  512. package/fesm2022/{acorex-platform-widgets-checkbox-widget-column.component-CFCwedxX.mjs → acorex-platform-widgets-checkbox-widget-column.component-CJUV6lFi.mjs} +4 -4
  513. package/fesm2022/acorex-platform-widgets-checkbox-widget-column.component-CJUV6lFi.mjs.map +1 -0
  514. package/fesm2022/{acorex-platform-widgets-checkbox-widget-view.component-CCTIjDb0.mjs → acorex-platform-widgets-checkbox-widget-view.component-T-tXqoMd.mjs} +4 -4
  515. package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-T-tXqoMd.mjs.map +1 -0
  516. package/fesm2022/acorex-platform-widgets.mjs +1141 -793
  517. package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
  518. package/fesm2022/acorex-platform-workflow.mjs +22 -22
  519. package/layout/builder/lib/builder/builder.service.d.ts +10 -0
  520. package/layout/builder/lib/builder/layout.types.d.ts +1 -30
  521. package/layout/builder/lib/builder/widget-renderer.component.d.ts +4 -2
  522. package/layout/builder/lib/builder/widget.types.d.ts +58 -23
  523. package/layout/designer/README.md +4 -0
  524. package/layout/designer/index.d.ts +2 -0
  525. package/layout/designer/lib/components/widget-property-viewer.component.d.ts +41 -0
  526. package/layout/designer/lib/designer.module.d.ts +12 -0
  527. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.d.ts +2 -1
  528. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-view.component.d.ts +12 -0
  529. package/package.json +19 -8
  530. package/themes/default/lib/layouts/root-layout/root-layout.component.d.ts +3 -3
  531. package/widgets/index.d.ts +2 -0
  532. package/widgets/lib/properties/editors.props.d.ts +6 -0
  533. package/widgets/lib/properties/groups.d.ts +5 -0
  534. package/widgets/lib/properties/index.d.ts +3 -0
  535. package/widgets/lib/properties/table-column.props.d.ts +2 -0
  536. package/widgets/lib/widgets/actions/button-widget/button-widget-view.component.d.ts +11 -0
  537. package/widgets/lib/widgets/actions/button-widget/button-widget.config.d.ts +2 -0
  538. package/widgets/lib/widgets/actions/button-widget/index.d.ts +2 -0
  539. package/widgets/lib/{editors → widgets/editors}/contact-widget/contact-widget-edit.component.d.ts +1 -1
  540. package/widgets/lib/{editors → widgets/editors}/date-time-box-widget/date-time-box-widget-column.component.d.ts +1 -1
  541. package/widgets/lib/{editors → widgets/editors}/date-time-box-widget/date-time-box-widget-edit.component.d.ts +1 -1
  542. package/widgets/lib/{editors → widgets/editors}/email-box-widget/email-box-widget-edit.component.d.ts +1 -1
  543. package/widgets/lib/{editors → widgets/editors}/file-box-widget/file-box-widget-edit.component.d.ts +8 -3
  544. package/widgets/lib/{editors → widgets/editors}/file-box-widget/file-box-widget-view.component.d.ts +16 -4
  545. package/widgets/lib/widgets/editors/file-box-widget/file-box-widget.service.d.ts +12 -0
  546. package/widgets/lib/{editors → widgets/editors}/file-box-widget/index.d.ts +4 -3
  547. package/widgets/lib/{editors → widgets/editors}/large-text-widget/large-text-widget-edit.component.d.ts +4 -2
  548. package/widgets/lib/{editors → widgets/editors}/link-widget/link-widget-edit.component.d.ts +1 -1
  549. package/widgets/lib/{editors → widgets/editors}/number-box-widget/number-box-widget-edit.component.d.ts +1 -1
  550. package/widgets/lib/{editors → widgets/editors}/password-box-widget/password-box-widget-view.component.d.ts +1 -1
  551. package/widgets/lib/{editors → widgets/editors}/phone-box-widget/phone-box-widget-edit.component.d.ts +1 -1
  552. package/widgets/lib/{editors → widgets/editors}/signature-pad-widget/signature-pad-widget-view.component.d.ts +1 -1
  553. package/widgets/lib/{editors → widgets/editors}/text-box-widget/text-box-widget-edit.component.d.ts +1 -1
  554. package/widgets/lib/widgets/index.d.ts +21 -0
  555. package/widgets/lib/widgets/layout/repeater-widget/index.d.ts +7 -0
  556. package/widgets/lib/widgets/layout/repeater-widget/repeater-widget-column.component.d.ts +6 -0
  557. package/widgets/lib/widgets/layout/repeater-widget/repeater-widget-designer.component.d.ts +6 -0
  558. package/widgets/lib/widgets/layout/repeater-widget/repeater-widget-edit.component.d.ts +6 -0
  559. package/widgets/lib/widgets/layout/repeater-widget/repeater-widget-filter.component.d.ts +6 -0
  560. package/widgets/lib/widgets/layout/repeater-widget/repeater-widget-print.component.d.ts +6 -0
  561. package/widgets/lib/widgets/layout/repeater-widget/repeater-widget-view.component.d.ts +11 -0
  562. package/widgets/lib/widgets/layout/repeater-widget/repeater-widget.config.d.ts +2 -0
  563. package/esm2022/widgets/lib/editors/checkbox/checkbox-widget-edit.component.mjs +0 -45
  564. package/esm2022/widgets/lib/editors/checkbox/checkbox-widget-view.component.mjs +0 -54
  565. package/esm2022/widgets/lib/editors/checkbox/checkbox-widget.config.mjs +0 -15
  566. package/esm2022/widgets/lib/editors/checkbox/index.mjs +0 -3
  567. package/esm2022/widgets/lib/editors/contact-widget/contact-widget-column.component.mjs +0 -19
  568. package/esm2022/widgets/lib/editors/contact-widget/contact-widget-designer.component.mjs +0 -19
  569. package/esm2022/widgets/lib/editors/contact-widget/contact-widget-edit.component.mjs +0 -267
  570. package/esm2022/widgets/lib/editors/contact-widget/contact-widget-filter.component.mjs +0 -20
  571. package/esm2022/widgets/lib/editors/contact-widget/contact-widget-print.component.mjs +0 -19
  572. package/esm2022/widgets/lib/editors/contact-widget/contact-widget-view.component.mjs +0 -20
  573. package/esm2022/widgets/lib/editors/contact-widget/contact-widget.config.mjs +0 -24
  574. package/esm2022/widgets/lib/editors/contact-widget/index.mjs +0 -8
  575. package/esm2022/widgets/lib/editors/contact-widget/popup-component.mjs +0 -78
  576. package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget-column.component.mjs +0 -44
  577. package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget-designer.component.mjs +0 -19
  578. package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget-edit.component.mjs +0 -122
  579. package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget-filter.component.mjs +0 -20
  580. package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget-print.component.mjs +0 -19
  581. package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget-view.component.mjs +0 -45
  582. package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget.config.mjs +0 -24
  583. package/esm2022/widgets/lib/editors/date-time-box-widget/index.mjs +0 -8
  584. package/esm2022/widgets/lib/editors/email-box-widget/email-box-widget-column.component.mjs +0 -66
  585. package/esm2022/widgets/lib/editors/email-box-widget/email-box-widget-designer.component.mjs +0 -19
  586. package/esm2022/widgets/lib/editors/email-box-widget/email-box-widget-edit.component.mjs +0 -228
  587. package/esm2022/widgets/lib/editors/email-box-widget/email-box-widget-filter.component.mjs +0 -20
  588. package/esm2022/widgets/lib/editors/email-box-widget/email-box-widget-print.component.mjs +0 -19
  589. package/esm2022/widgets/lib/editors/email-box-widget/email-box-widget-view.component.mjs +0 -111
  590. package/esm2022/widgets/lib/editors/email-box-widget/email-box-widget.config.mjs +0 -24
  591. package/esm2022/widgets/lib/editors/email-box-widget/index.mjs +0 -8
  592. package/esm2022/widgets/lib/editors/file-box-widget/file-box-widget-column.component.mjs +0 -19
  593. package/esm2022/widgets/lib/editors/file-box-widget/file-box-widget-designer.component.mjs +0 -19
  594. package/esm2022/widgets/lib/editors/file-box-widget/file-box-widget-edit.component.mjs +0 -189
  595. package/esm2022/widgets/lib/editors/file-box-widget/file-box-widget-filter.component.mjs +0 -20
  596. package/esm2022/widgets/lib/editors/file-box-widget/file-box-widget-print.component.mjs +0 -19
  597. package/esm2022/widgets/lib/editors/file-box-widget/file-box-widget-view.component.mjs +0 -147
  598. package/esm2022/widgets/lib/editors/file-box-widget/file-box-widget.config.mjs +0 -24
  599. package/esm2022/widgets/lib/editors/file-box-widget/index.mjs +0 -8
  600. package/esm2022/widgets/lib/editors/gallery-widget/gallery-widget-column.component.mjs +0 -19
  601. package/esm2022/widgets/lib/editors/gallery-widget/gallery-widget-designer.component.mjs +0 -19
  602. package/esm2022/widgets/lib/editors/gallery-widget/gallery-widget-edit.component.mjs +0 -172
  603. package/esm2022/widgets/lib/editors/gallery-widget/gallery-widget-filter.component.mjs +0 -20
  604. package/esm2022/widgets/lib/editors/gallery-widget/gallery-widget-print.component.mjs +0 -19
  605. package/esm2022/widgets/lib/editors/gallery-widget/gallery-widget-types.mjs +0 -2
  606. package/esm2022/widgets/lib/editors/gallery-widget/gallery-widget-view.component.mjs +0 -159
  607. package/esm2022/widgets/lib/editors/gallery-widget/gallery-widget.config.mjs +0 -24
  608. package/esm2022/widgets/lib/editors/gallery-widget/index.mjs +0 -8
  609. package/esm2022/widgets/lib/editors/large-text-widget/index.mjs +0 -8
  610. package/esm2022/widgets/lib/editors/large-text-widget/large-text-widget-column.component.mjs +0 -23
  611. package/esm2022/widgets/lib/editors/large-text-widget/large-text-widget-designer.component.mjs +0 -19
  612. package/esm2022/widgets/lib/editors/large-text-widget/large-text-widget-edit.component.mjs +0 -47
  613. package/esm2022/widgets/lib/editors/large-text-widget/large-text-widget-print.component.mjs +0 -19
  614. package/esm2022/widgets/lib/editors/large-text-widget/large-text-widget-view.component.mjs +0 -31
  615. package/esm2022/widgets/lib/editors/large-text-widget/large-text-widget.config.mjs +0 -24
  616. package/esm2022/widgets/lib/editors/link-widget/index.mjs +0 -8
  617. package/esm2022/widgets/lib/editors/link-widget/link-widget-column.component.mjs +0 -19
  618. package/esm2022/widgets/lib/editors/link-widget/link-widget-designer.component.mjs +0 -19
  619. package/esm2022/widgets/lib/editors/link-widget/link-widget-edit.component.mjs +0 -391
  620. package/esm2022/widgets/lib/editors/link-widget/link-widget-filter.component.mjs +0 -20
  621. package/esm2022/widgets/lib/editors/link-widget/link-widget-print.component.mjs +0 -19
  622. package/esm2022/widgets/lib/editors/link-widget/link-widget-view.component.mjs +0 -120
  623. package/esm2022/widgets/lib/editors/link-widget/link-widget.config.mjs +0 -24
  624. package/esm2022/widgets/lib/editors/map-box-widget/index.mjs +0 -8
  625. package/esm2022/widgets/lib/editors/map-box-widget/map-box-widget-designer.component.mjs +0 -19
  626. package/esm2022/widgets/lib/editors/map-box-widget/map-box-widget-filter.component.mjs +0 -20
  627. package/esm2022/widgets/lib/editors/map-box-widget/map-box-widget-print.component.mjs +0 -19
  628. package/esm2022/widgets/lib/editors/map-box-widget/map-box-widget.config.mjs +0 -24
  629. package/esm2022/widgets/lib/editors/number-box-widget/index.mjs +0 -8
  630. package/esm2022/widgets/lib/editors/number-box-widget/number-box-widget-column.component.mjs +0 -38
  631. package/esm2022/widgets/lib/editors/number-box-widget/number-box-widget-designer.component.mjs +0 -19
  632. package/esm2022/widgets/lib/editors/number-box-widget/number-box-widget-edit.component.mjs +0 -138
  633. package/esm2022/widgets/lib/editors/number-box-widget/number-box-widget-filter.component.mjs +0 -20
  634. package/esm2022/widgets/lib/editors/number-box-widget/number-box-widget-print.component.mjs +0 -19
  635. package/esm2022/widgets/lib/editors/number-box-widget/number-box-widget-view.component.mjs +0 -53
  636. package/esm2022/widgets/lib/editors/number-box-widget/number-box-widget.config.mjs +0 -27
  637. package/esm2022/widgets/lib/editors/password-box-widget/index.mjs +0 -8
  638. package/esm2022/widgets/lib/editors/password-box-widget/password-box-widget-designer.component.mjs +0 -19
  639. package/esm2022/widgets/lib/editors/password-box-widget/password-box-widget-filter.component.mjs +0 -20
  640. package/esm2022/widgets/lib/editors/password-box-widget/password-box-widget-print.component.mjs +0 -19
  641. package/esm2022/widgets/lib/editors/password-box-widget/password-box-widget-view.component.mjs +0 -73
  642. package/esm2022/widgets/lib/editors/password-box-widget/password-box-widget.config.mjs +0 -24
  643. package/esm2022/widgets/lib/editors/phone-box-widget/index.mjs +0 -8
  644. package/esm2022/widgets/lib/editors/phone-box-widget/phone-box-widget-column.component.mjs +0 -66
  645. package/esm2022/widgets/lib/editors/phone-box-widget/phone-box-widget-designer.component.mjs +0 -19
  646. package/esm2022/widgets/lib/editors/phone-box-widget/phone-box-widget-edit.component.mjs +0 -220
  647. package/esm2022/widgets/lib/editors/phone-box-widget/phone-box-widget-filter.component.mjs +0 -20
  648. package/esm2022/widgets/lib/editors/phone-box-widget/phone-box-widget-print.component.mjs +0 -19
  649. package/esm2022/widgets/lib/editors/phone-box-widget/phone-box-widget-view.component.mjs +0 -113
  650. package/esm2022/widgets/lib/editors/phone-box-widget/phone-box-widget.config.mjs +0 -24
  651. package/esm2022/widgets/lib/editors/rich-text-widget/index.mjs +0 -8
  652. package/esm2022/widgets/lib/editors/rich-text-widget/rich-text-widget-column.component.mjs +0 -23
  653. package/esm2022/widgets/lib/editors/rich-text-widget/rich-text-widget-designer.component.mjs +0 -19
  654. package/esm2022/widgets/lib/editors/rich-text-widget/rich-text-widget-filter.component.mjs +0 -20
  655. package/esm2022/widgets/lib/editors/rich-text-widget/rich-text-widget-print.component.mjs +0 -19
  656. package/esm2022/widgets/lib/editors/rich-text-widget/rich-text-widget-view.component.mjs +0 -39
  657. package/esm2022/widgets/lib/editors/rich-text-widget/rich-text-widget.config.mjs +0 -24
  658. package/esm2022/widgets/lib/editors/select-box-widget/index.mjs +0 -8
  659. package/esm2022/widgets/lib/editors/select-box-widget/select-box-widget-column.component.mjs +0 -19
  660. package/esm2022/widgets/lib/editors/select-box-widget/select-box-widget-designer.component.mjs +0 -19
  661. package/esm2022/widgets/lib/editors/select-box-widget/select-box-widget-print.component.mjs +0 -19
  662. package/esm2022/widgets/lib/editors/select-box-widget/select-box-widget-view.component.mjs +0 -60
  663. package/esm2022/widgets/lib/editors/select-box-widget/select-box-widget.config.mjs +0 -24
  664. package/esm2022/widgets/lib/editors/selection-list-widget/index.mjs +0 -8
  665. package/esm2022/widgets/lib/editors/selection-list-widget/selection-list-widget-column.component.mjs +0 -41
  666. package/esm2022/widgets/lib/editors/selection-list-widget/selection-list-widget-designer.component.mjs +0 -19
  667. package/esm2022/widgets/lib/editors/selection-list-widget/selection-list-widget-filter.component.mjs +0 -20
  668. package/esm2022/widgets/lib/editors/selection-list-widget/selection-list-widget-print.component.mjs +0 -19
  669. package/esm2022/widgets/lib/editors/selection-list-widget/selection-list-widget-view.component.mjs +0 -41
  670. package/esm2022/widgets/lib/editors/selection-list-widget/selection-list-widget.config.mjs +0 -24
  671. package/esm2022/widgets/lib/editors/signature-pad-widget/index.mjs +0 -8
  672. package/esm2022/widgets/lib/editors/signature-pad-widget/signature-pad-widget-designer.component.mjs +0 -19
  673. package/esm2022/widgets/lib/editors/signature-pad-widget/signature-pad-widget-edit.component.mjs +0 -140
  674. package/esm2022/widgets/lib/editors/signature-pad-widget/signature-pad-widget-filter.component.mjs +0 -20
  675. package/esm2022/widgets/lib/editors/signature-pad-widget/signature-pad-widget-print.component.mjs +0 -19
  676. package/esm2022/widgets/lib/editors/signature-pad-widget/signature-pad-widget-view.component.mjs +0 -42
  677. package/esm2022/widgets/lib/editors/signature-pad-widget/signature-pad-widget.config.mjs +0 -24
  678. package/esm2022/widgets/lib/editors/text-box-widget/index.mjs +0 -8
  679. package/esm2022/widgets/lib/editors/text-box-widget/text-box-widget-column.component.mjs +0 -20
  680. package/esm2022/widgets/lib/editors/text-box-widget/text-box-widget-designer.component.mjs +0 -19
  681. package/esm2022/widgets/lib/editors/text-box-widget/text-box-widget-edit.component.mjs +0 -121
  682. package/esm2022/widgets/lib/editors/text-box-widget/text-box-widget-filter.component.mjs +0 -20
  683. package/esm2022/widgets/lib/editors/text-box-widget/text-box-widget-print.component.mjs +0 -19
  684. package/esm2022/widgets/lib/editors/text-box-widget/text-box-widget-view.component.mjs +0 -40
  685. package/esm2022/widgets/lib/editors/text-box-widget/text-box-widget.config.mjs +0 -25
  686. package/esm2022/widgets/lib/editors/toggle-widget/index.mjs +0 -8
  687. package/esm2022/widgets/lib/editors/toggle-widget/toggle-widget-designer.component.mjs +0 -19
  688. package/esm2022/widgets/lib/editors/toggle-widget/toggle-widget-filter.component.mjs +0 -20
  689. package/esm2022/widgets/lib/editors/toggle-widget/toggle-widget-print.component.mjs +0 -19
  690. package/esm2022/widgets/lib/editors/toggle-widget/toggle-widget.config.mjs +0 -24
  691. package/esm2022/widgets/lib/layout/block-widget/block-widget.component.mjs +0 -39
  692. package/esm2022/widgets/lib/layout/block-widget/block-widget.config.mjs +0 -9
  693. package/esm2022/widgets/lib/layout/block-widget/index.mjs +0 -3
  694. package/fesm2022/acorex-platform-common-dateTime-widget-view.component-Dxmnor_-.mjs.map +0 -1
  695. package/fesm2022/acorex-platform-widgets-checkbox-widget-column.component-CFCwedxX.mjs.map +0 -1
  696. package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-CCTIjDb0.mjs.map +0 -1
  697. /package/widgets/lib/{editors → widgets/editors}/checkbox/checkbox-widget-column.component.d.ts +0 -0
  698. /package/widgets/lib/{editors → widgets/editors}/checkbox/checkbox-widget-edit.component.d.ts +0 -0
  699. /package/widgets/lib/{editors → widgets/editors}/checkbox/checkbox-widget-view.component.d.ts +0 -0
  700. /package/widgets/lib/{editors → widgets/editors}/checkbox/checkbox-widget.config.d.ts +0 -0
  701. /package/widgets/lib/{editors → widgets/editors}/checkbox/index.d.ts +0 -0
  702. /package/widgets/lib/{editors → widgets/editors}/contact-widget/contact-widget-column.component.d.ts +0 -0
  703. /package/widgets/lib/{editors → widgets/editors}/contact-widget/contact-widget-designer.component.d.ts +0 -0
  704. /package/widgets/lib/{editors → widgets/editors}/contact-widget/contact-widget-filter.component.d.ts +0 -0
  705. /package/widgets/lib/{editors → widgets/editors}/contact-widget/contact-widget-print.component.d.ts +0 -0
  706. /package/widgets/lib/{editors → widgets/editors}/contact-widget/contact-widget-view.component.d.ts +0 -0
  707. /package/widgets/lib/{editors → widgets/editors}/contact-widget/contact-widget.config.d.ts +0 -0
  708. /package/widgets/lib/{editors → widgets/editors}/contact-widget/index.d.ts +0 -0
  709. /package/widgets/lib/{editors → widgets/editors}/contact-widget/popup-component.d.ts +0 -0
  710. /package/widgets/lib/{editors → widgets/editors}/date-time-box-widget/date-time-box-widget-designer.component.d.ts +0 -0
  711. /package/widgets/lib/{editors → widgets/editors}/date-time-box-widget/date-time-box-widget-filter.component.d.ts +0 -0
  712. /package/widgets/lib/{editors → widgets/editors}/date-time-box-widget/date-time-box-widget-print.component.d.ts +0 -0
  713. /package/widgets/lib/{editors → widgets/editors}/date-time-box-widget/date-time-box-widget-view.component.d.ts +0 -0
  714. /package/widgets/lib/{editors → widgets/editors}/date-time-box-widget/date-time-box-widget.config.d.ts +0 -0
  715. /package/widgets/lib/{editors → widgets/editors}/date-time-box-widget/index.d.ts +0 -0
  716. /package/widgets/lib/{editors → widgets/editors}/email-box-widget/email-box-widget-column.component.d.ts +0 -0
  717. /package/widgets/lib/{editors → widgets/editors}/email-box-widget/email-box-widget-designer.component.d.ts +0 -0
  718. /package/widgets/lib/{editors → widgets/editors}/email-box-widget/email-box-widget-filter.component.d.ts +0 -0
  719. /package/widgets/lib/{editors → widgets/editors}/email-box-widget/email-box-widget-print.component.d.ts +0 -0
  720. /package/widgets/lib/{editors → widgets/editors}/email-box-widget/email-box-widget-view.component.d.ts +0 -0
  721. /package/widgets/lib/{editors → widgets/editors}/email-box-widget/email-box-widget.config.d.ts +0 -0
  722. /package/widgets/lib/{editors → widgets/editors}/email-box-widget/index.d.ts +0 -0
  723. /package/widgets/lib/{editors → widgets/editors}/file-box-widget/file-box-widget-column.component.d.ts +0 -0
  724. /package/widgets/lib/{editors → widgets/editors}/file-box-widget/file-box-widget-designer.component.d.ts +0 -0
  725. /package/widgets/lib/{editors → widgets/editors}/file-box-widget/file-box-widget-filter.component.d.ts +0 -0
  726. /package/widgets/lib/{editors → widgets/editors}/file-box-widget/file-box-widget-print.component.d.ts +0 -0
  727. /package/widgets/lib/{editors → widgets/editors}/file-box-widget/file-box-widget.config.d.ts +0 -0
  728. /package/widgets/lib/{editors → widgets/editors}/gallery-widget/gallery-widget-column.component.d.ts +0 -0
  729. /package/widgets/lib/{editors → widgets/editors}/gallery-widget/gallery-widget-designer.component.d.ts +0 -0
  730. /package/widgets/lib/{editors → widgets/editors}/gallery-widget/gallery-widget-edit.component.d.ts +0 -0
  731. /package/widgets/lib/{editors → widgets/editors}/gallery-widget/gallery-widget-filter.component.d.ts +0 -0
  732. /package/widgets/lib/{editors → widgets/editors}/gallery-widget/gallery-widget-print.component.d.ts +0 -0
  733. /package/widgets/lib/{editors → widgets/editors}/gallery-widget/gallery-widget-types.d.ts +0 -0
  734. /package/widgets/lib/{editors → widgets/editors}/gallery-widget/gallery-widget-view.component.d.ts +0 -0
  735. /package/widgets/lib/{editors → widgets/editors}/gallery-widget/gallery-widget.config.d.ts +0 -0
  736. /package/widgets/lib/{editors → widgets/editors}/gallery-widget/index.d.ts +0 -0
  737. /package/widgets/lib/{editors → widgets/editors}/large-text-widget/index.d.ts +0 -0
  738. /package/widgets/lib/{editors → widgets/editors}/large-text-widget/large-text-widget-column.component.d.ts +0 -0
  739. /package/widgets/lib/{editors → widgets/editors}/large-text-widget/large-text-widget-designer.component.d.ts +0 -0
  740. /package/widgets/lib/{editors → widgets/editors}/large-text-widget/large-text-widget-filter.component.d.ts +0 -0
  741. /package/widgets/lib/{editors → widgets/editors}/large-text-widget/large-text-widget-print.component.d.ts +0 -0
  742. /package/widgets/lib/{editors → widgets/editors}/large-text-widget/large-text-widget-view.component.d.ts +0 -0
  743. /package/widgets/lib/{editors → widgets/editors}/large-text-widget/large-text-widget.config.d.ts +0 -0
  744. /package/widgets/lib/{editors → widgets/editors}/link-widget/index.d.ts +0 -0
  745. /package/widgets/lib/{editors → widgets/editors}/link-widget/link-widget-column.component.d.ts +0 -0
  746. /package/widgets/lib/{editors → widgets/editors}/link-widget/link-widget-designer.component.d.ts +0 -0
  747. /package/widgets/lib/{editors → widgets/editors}/link-widget/link-widget-filter.component.d.ts +0 -0
  748. /package/widgets/lib/{editors → widgets/editors}/link-widget/link-widget-print.component.d.ts +0 -0
  749. /package/widgets/lib/{editors → widgets/editors}/link-widget/link-widget-view.component.d.ts +0 -0
  750. /package/widgets/lib/{editors → widgets/editors}/link-widget/link-widget.config.d.ts +0 -0
  751. /package/widgets/lib/{editors → widgets/editors}/map-box-widget/index.d.ts +0 -0
  752. /package/widgets/lib/{editors → widgets/editors}/map-box-widget/map-box-widget-column.component.d.ts +0 -0
  753. /package/widgets/lib/{editors → widgets/editors}/map-box-widget/map-box-widget-designer.component.d.ts +0 -0
  754. /package/widgets/lib/{editors → widgets/editors}/map-box-widget/map-box-widget-edit.component.d.ts +0 -0
  755. /package/widgets/lib/{editors → widgets/editors}/map-box-widget/map-box-widget-filter.component.d.ts +0 -0
  756. /package/widgets/lib/{editors → widgets/editors}/map-box-widget/map-box-widget-print.component.d.ts +0 -0
  757. /package/widgets/lib/{editors → widgets/editors}/map-box-widget/map-box-widget-view.component.d.ts +0 -0
  758. /package/widgets/lib/{editors → widgets/editors}/map-box-widget/map-box-widget.config.d.ts +0 -0
  759. /package/widgets/lib/{editors → widgets/editors}/number-box-widget/index.d.ts +0 -0
  760. /package/widgets/lib/{editors → widgets/editors}/number-box-widget/number-box-widget-column.component.d.ts +0 -0
  761. /package/widgets/lib/{editors → widgets/editors}/number-box-widget/number-box-widget-designer.component.d.ts +0 -0
  762. /package/widgets/lib/{editors → widgets/editors}/number-box-widget/number-box-widget-filter.component.d.ts +0 -0
  763. /package/widgets/lib/{editors → widgets/editors}/number-box-widget/number-box-widget-print.component.d.ts +0 -0
  764. /package/widgets/lib/{editors → widgets/editors}/number-box-widget/number-box-widget-view.component.d.ts +0 -0
  765. /package/widgets/lib/{editors → widgets/editors}/number-box-widget/number-box-widget.config.d.ts +0 -0
  766. /package/widgets/lib/{editors → widgets/editors}/password-box-widget/index.d.ts +0 -0
  767. /package/widgets/lib/{editors → widgets/editors}/password-box-widget/password-box-widget-column.component.d.ts +0 -0
  768. /package/widgets/lib/{editors → widgets/editors}/password-box-widget/password-box-widget-designer.component.d.ts +0 -0
  769. /package/widgets/lib/{editors → widgets/editors}/password-box-widget/password-box-widget-edit.component.d.ts +0 -0
  770. /package/widgets/lib/{editors → widgets/editors}/password-box-widget/password-box-widget-filter.component.d.ts +0 -0
  771. /package/widgets/lib/{editors → widgets/editors}/password-box-widget/password-box-widget-print.component.d.ts +0 -0
  772. /package/widgets/lib/{editors → widgets/editors}/password-box-widget/password-box-widget.config.d.ts +0 -0
  773. /package/widgets/lib/{editors → widgets/editors}/phone-box-widget/index.d.ts +0 -0
  774. /package/widgets/lib/{editors → widgets/editors}/phone-box-widget/phone-box-widget-column.component.d.ts +0 -0
  775. /package/widgets/lib/{editors → widgets/editors}/phone-box-widget/phone-box-widget-designer.component.d.ts +0 -0
  776. /package/widgets/lib/{editors → widgets/editors}/phone-box-widget/phone-box-widget-filter.component.d.ts +0 -0
  777. /package/widgets/lib/{editors → widgets/editors}/phone-box-widget/phone-box-widget-print.component.d.ts +0 -0
  778. /package/widgets/lib/{editors → widgets/editors}/phone-box-widget/phone-box-widget-view.component.d.ts +0 -0
  779. /package/widgets/lib/{editors → widgets/editors}/phone-box-widget/phone-box-widget.config.d.ts +0 -0
  780. /package/widgets/lib/{editors → widgets/editors}/rich-text-widget/index.d.ts +0 -0
  781. /package/widgets/lib/{editors → widgets/editors}/rich-text-widget/rich-text-widget-column.component.d.ts +0 -0
  782. /package/widgets/lib/{editors → widgets/editors}/rich-text-widget/rich-text-widget-designer.component.d.ts +0 -0
  783. /package/widgets/lib/{editors → widgets/editors}/rich-text-widget/rich-text-widget-edit.component.d.ts +0 -0
  784. /package/widgets/lib/{editors → widgets/editors}/rich-text-widget/rich-text-widget-filter.component.d.ts +0 -0
  785. /package/widgets/lib/{editors → widgets/editors}/rich-text-widget/rich-text-widget-print.component.d.ts +0 -0
  786. /package/widgets/lib/{editors → widgets/editors}/rich-text-widget/rich-text-widget-view.component.d.ts +0 -0
  787. /package/widgets/lib/{editors → widgets/editors}/rich-text-widget/rich-text-widget.config.d.ts +0 -0
  788. /package/widgets/lib/{editors → widgets/editors}/select-box-widget/index.d.ts +0 -0
  789. /package/widgets/lib/{editors → widgets/editors}/select-box-widget/select-box-widget-column.component.d.ts +0 -0
  790. /package/widgets/lib/{editors → widgets/editors}/select-box-widget/select-box-widget-designer.component.d.ts +0 -0
  791. /package/widgets/lib/{editors → widgets/editors}/select-box-widget/select-box-widget-edit.component.d.ts +0 -0
  792. /package/widgets/lib/{editors → widgets/editors}/select-box-widget/select-box-widget-filter.component.d.ts +0 -0
  793. /package/widgets/lib/{editors → widgets/editors}/select-box-widget/select-box-widget-print.component.d.ts +0 -0
  794. /package/widgets/lib/{editors → widgets/editors}/select-box-widget/select-box-widget-view.component.d.ts +0 -0
  795. /package/widgets/lib/{editors → widgets/editors}/select-box-widget/select-box-widget.config.d.ts +0 -0
  796. /package/widgets/lib/{editors → widgets/editors}/selection-list-widget/index.d.ts +0 -0
  797. /package/widgets/lib/{editors → widgets/editors}/selection-list-widget/selection-list-widget-column.component.d.ts +0 -0
  798. /package/widgets/lib/{editors → widgets/editors}/selection-list-widget/selection-list-widget-designer.component.d.ts +0 -0
  799. /package/widgets/lib/{editors → widgets/editors}/selection-list-widget/selection-list-widget-edit.component.d.ts +0 -0
  800. /package/widgets/lib/{editors → widgets/editors}/selection-list-widget/selection-list-widget-filter.component.d.ts +0 -0
  801. /package/widgets/lib/{editors → widgets/editors}/selection-list-widget/selection-list-widget-print.component.d.ts +0 -0
  802. /package/widgets/lib/{editors → widgets/editors}/selection-list-widget/selection-list-widget-view.component.d.ts +0 -0
  803. /package/widgets/lib/{editors → widgets/editors}/selection-list-widget/selection-list-widget.config.d.ts +0 -0
  804. /package/widgets/lib/{editors → widgets/editors}/signature-pad-widget/index.d.ts +0 -0
  805. /package/widgets/lib/{editors → widgets/editors}/signature-pad-widget/signature-pad-widget-column.component.d.ts +0 -0
  806. /package/widgets/lib/{editors → widgets/editors}/signature-pad-widget/signature-pad-widget-designer.component.d.ts +0 -0
  807. /package/widgets/lib/{editors → widgets/editors}/signature-pad-widget/signature-pad-widget-edit.component.d.ts +0 -0
  808. /package/widgets/lib/{editors → widgets/editors}/signature-pad-widget/signature-pad-widget-filter.component.d.ts +0 -0
  809. /package/widgets/lib/{editors → widgets/editors}/signature-pad-widget/signature-pad-widget-print.component.d.ts +0 -0
  810. /package/widgets/lib/{editors → widgets/editors}/signature-pad-widget/signature-pad-widget.config.d.ts +0 -0
  811. /package/widgets/lib/{editors → widgets/editors}/text-box-widget/index.d.ts +0 -0
  812. /package/widgets/lib/{editors → widgets/editors}/text-box-widget/text-box-widget-column.component.d.ts +0 -0
  813. /package/widgets/lib/{editors → widgets/editors}/text-box-widget/text-box-widget-designer.component.d.ts +0 -0
  814. /package/widgets/lib/{editors → widgets/editors}/text-box-widget/text-box-widget-filter.component.d.ts +0 -0
  815. /package/widgets/lib/{editors → widgets/editors}/text-box-widget/text-box-widget-print.component.d.ts +0 -0
  816. /package/widgets/lib/{editors → widgets/editors}/text-box-widget/text-box-widget-view.component.d.ts +0 -0
  817. /package/widgets/lib/{editors → widgets/editors}/text-box-widget/text-box-widget.config.d.ts +0 -0
  818. /package/widgets/lib/{editors → widgets/editors}/toggle-widget/index.d.ts +0 -0
  819. /package/widgets/lib/{editors → widgets/editors}/toggle-widget/toggle-widget-column.component.d.ts +0 -0
  820. /package/widgets/lib/{editors → widgets/editors}/toggle-widget/toggle-widget-designer.component.d.ts +0 -0
  821. /package/widgets/lib/{editors → widgets/editors}/toggle-widget/toggle-widget-edit.component.d.ts +0 -0
  822. /package/widgets/lib/{editors → widgets/editors}/toggle-widget/toggle-widget-filter.component.d.ts +0 -0
  823. /package/widgets/lib/{editors → widgets/editors}/toggle-widget/toggle-widget-print.component.d.ts +0 -0
  824. /package/widgets/lib/{editors → widgets/editors}/toggle-widget/toggle-widget-view.component.d.ts +0 -0
  825. /package/widgets/lib/{editors → widgets/editors}/toggle-widget/toggle-widget.config.d.ts +0 -0
  826. /package/widgets/lib/{layout → widgets/layout}/block-widget/block-widget.component.d.ts +0 -0
  827. /package/widgets/lib/{layout → widgets/layout}/block-widget/block-widget.config.d.ts +0 -0
  828. /package/widgets/lib/{layout → widgets/layout}/block-widget/index.d.ts +0 -0
@@ -2,6 +2,11 @@ import { Injectable, signal } from '@angular/core';
2
2
  import { clone, get, isEqual, set } from 'lodash-es';
3
3
  import { Subject, debounceTime } from 'rxjs';
4
4
  import * as i0 from "@angular/core";
5
+ export class AXPLayoutElement {
6
+ api() {
7
+ return {};
8
+ }
9
+ }
5
10
  export class AXPLayoutBuilderService {
6
11
  constructor() {
7
12
  this.context$ = signal({});
@@ -10,7 +15,9 @@ export class AXPLayoutBuilderService {
10
15
  this.onChanged = new Subject();
11
16
  this.debouncers = {};
12
17
  this.debouncerSubscriptions = {};
18
+ this.widgets = new Map();
13
19
  }
20
+ ;
14
21
  get context() {
15
22
  return this.context$();
16
23
  }
@@ -67,6 +74,13 @@ export class AXPLayoutBuilderService {
67
74
  getValue(path) {
68
75
  return get(this.context, path);
69
76
  }
77
+ registerWidget(id, widget) {
78
+ this.widgets.set(id, widget);
79
+ //console.log(this.widgets.entries());
80
+ }
81
+ getWidget(id) {
82
+ return this.widgets.get(id);
83
+ }
70
84
  unsubscribeDebouncers() {
71
85
  Object.keys(this.debouncerSubscriptions).forEach((path) => {
72
86
  this.debouncerSubscriptions[path].unsubscribe();
@@ -77,10 +91,10 @@ export class AXPLayoutBuilderService {
77
91
  ngOnDestroy() {
78
92
  this.unsubscribeDebouncers();
79
93
  }
80
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPLayoutBuilderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
81
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPLayoutBuilderService }); }
94
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPLayoutBuilderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
95
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPLayoutBuilderService }); }
82
96
  }
83
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPLayoutBuilderService, decorators: [{
97
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPLayoutBuilderService, decorators: [{
84
98
  type: Injectable
85
99
  }] });
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlci9zcmMvbGliL2J1aWxkZXIvYnVpbGRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDckQsT0FBTyxFQUFFLE9BQU8sRUFBZ0IsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUkzRCxNQUFNLE9BQU8sdUJBQXVCO0lBRHBDO1FBRW1CLGFBQVEsR0FBRyxNQUFNLENBQU0sRUFBRSxDQUFDLENBQUM7UUFDM0IsZUFBVSxHQUFHLE1BQU0sQ0FBTSxFQUFFLENBQUMsQ0FBQztRQUM3QixlQUFVLEdBQUcsTUFBTSxDQUE4QixFQUFFLENBQUMsQ0FBQztRQUV0RCxjQUFTLEdBQW1DLElBQUksT0FBTyxFQUF5QixDQUFDO1FBQ3pGLGVBQVUsR0FBNkQsRUFBRSxDQUFDO1FBQzFFLDJCQUFzQixHQUFvQyxFQUFFLENBQUM7S0F1RnRFO0lBckZDLElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQsSUFBSSxTQUFTO1FBQ1gsT0FBTyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUFVO1FBQ2hCLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFLRCxZQUFZLENBQUMsR0FBRyxJQUFX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SSxFQUFFLEVBQUU7WUFDeEQsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2hELE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMseUJBQXlCO1lBQ25FLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLHNDQUFzQztRQUN0RSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7SUFDL0IsQ0FBQzs4R0E3RlUsdUJBQXVCO2tIQUF2Qix1QkFBdUI7OzJGQUF2Qix1QkFBdUI7a0JBRG5DLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNsb25lLCBnZXQsIGlzRXF1YWwsIHNldCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBTdWJqZWN0LCBTdWJzY3JpcHRpb24sIGRlYm91bmNlVGltZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQVhQTGF5b3V0Q29udGV4dEV2ZW50IH0gZnJvbSAnLi93aWRnZXQudHlwZXMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQVhQTGF5b3V0QnVpbGRlclNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IGNvbnRleHQkID0gc2lnbmFsPGFueT4oe30pO1xuICBwcml2YXRlIHJlYWRvbmx5IHZhcmlhYmxlcyQgPSBzaWduYWw8YW55Pih7fSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgZnVuY3Rpb25zJCA9IHNpZ25hbDx7IFtrZXk6IHN0cmluZ106IEZ1bmN0aW9uIH0+KHt9KTtcblxuICBwdWJsaWMgcmVhZG9ubHkgb25DaGFuZ2VkOiBTdWJqZWN0PEFYUExheW91dENvbnRleHRFdmVudD4gPSBuZXcgU3ViamVjdDxBWFBMYXlvdXRDb250ZXh0RXZlbnQ+KCk7XG4gIHByaXZhdGUgZGVib3VuY2VyczogeyBba2V5OiBzdHJpbmddOiBTdWJqZWN0PHsgcGF0aDogc3RyaW5nOyB2YWx1ZTogYW55IH0+IH0gPSB7fTtcbiAgcHJpdmF0ZSBkZWJvdW5jZXJTdWJzY3JpcHRpb25zOiB7IFtrZXk6IHN0cmluZ106IFN1YnNjcmlwdGlvbiB9ID0ge307XG5cbiAgZ2V0IGNvbnRleHQoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29udGV4dCQoKTtcbiAgfVxuXG4gIGdldCB2YXJpYWJsZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMudmFyaWFibGVzJCgpO1xuICB9XG5cbiAgZ2V0IGZ1bmN0aW9ucygpOiB7IFtrZXk6IHN0cmluZ106IEZ1bmN0aW9uIH0ge1xuICAgIHJldHVybiB0aGlzLmZ1bmN0aW9ucyQoKTtcbiAgfVxuXG4gIGluaXRpYWwodmFsdWU6IGFueSkge1xuICAgIHRoaXMuY29udGV4dCQuc2V0KHZhbHVlKTtcbiAgfVxuXG5cbiAgc2V0VmFyaWFibGVzKGtleXNWYWx1ZXM6IGFueSk6IHZvaWQ7XG4gIHNldFZhcmlhYmxlcyhrZXk6IHN0cmluZywgdmFsdWU6IGFueSk6IHZvaWQ7XG4gIHNldFZhcmlhYmxlcyguLi5hcmdzOiBhbnlbXSk6IHZvaWQge1xuICAgIGlmIChhcmdzLmxlbmd0aCA9PSAwKVxuICAgICAgcmV0dXJuO1xuICAgIGVsc2UgaWYgKGFyZ3MubGVuZ3RoID09IDEpXG4gICAgICB0aGlzLnZhcmlhYmxlcyQuc2V0KGFyZ3NbMF0pO1xuICAgIGVsc2UgaWYgKGFyZ3MubGVuZ3RoID09IDIpIHtcbiAgICAgIHRoaXMudmFyaWFibGVzJC51cGRhdGUodiA9PiBzZXQodiwgYXJnc1swXSwgYXJnc1sxXSkpO1xuICAgIH1cblxuICB9XG5cblxuICBzZXRGdW5jdGlvbnMoa2V5c1ZhbHVlczogYW55KTogdm9pZDtcbiAgc2V0RnVuY3Rpb25zKGtleTogc3RyaW5nLCB2YWx1ZTogYW55KTogdm9pZDtcbiAgc2V0RnVuY3Rpb25zKC4uLmFyZ3M6IGFueVtdKTogdm9pZCB7XG4gICAgaWYgKGFyZ3MubGVuZ3RoID09IDApXG4gICAgICByZXR1cm47XG4gICAgZWxzZSBpZiAoYXJncy5sZW5ndGggPT0gMSlcbiAgICAgIHRoaXMuZnVuY3Rpb25zJC5zZXQoYXJnc1swXSk7XG4gICAgZWxzZSBpZiAoYXJncy5sZW5ndGggPT0gMikge1xuICAgICAgdGhpcy5mdW5jdGlvbnMkLnVwZGF0ZSh2ID0+IHNldCh2LCBhcmdzWzBdLCBhcmdzWzFdKSk7XG4gICAgfVxuICB9XG5cblxuICBzZXRWYWx1ZShwYXRoOiBzdHJpbmcsIHZhbHVlOiBhbnksIGRlYm91bmNlTXM6IG51bWJlciA9IDUwKSB7XG4gICAgY29uc3Qgb2xkVmFsdWUgPSBnZXQodGhpcy5jb250ZXh0JCgpLCBwYXRoKTtcbiAgICBpZiAoaXNFcXVhbChvbGRWYWx1ZSwgdmFsdWUpKVxuICAgICAgcmV0dXJuO1xuICAgIGlmICghdGhpcy5kZWJvdW5jZXJzW3BhdGhdKSB7XG4gICAgICAvLyBDcmVhdGUgYSBuZXcgU3ViamVjdCBmb3IgZGVib3VuY2luZyBpZiBpdCBkb2Vzbid0IGV4aXN0XG4gICAgICB0aGlzLmRlYm91bmNlcnNbcGF0aF0gPSBuZXcgU3ViamVjdDx7IHBhdGg6IHN0cmluZzsgdmFsdWU6IGFueSB9PigpO1xuXG4gICAgICAvLyBTdWJzY3JpYmUgdG8gdGhlIHN1YmplY3Qgd2l0aCBkZWJvdW5jZVRpbWVcbiAgICAgIHRoaXMuZGVib3VuY2VyU3Vic2NyaXB0aW9uc1twYXRoXSA9IHRoaXMuZGVib3VuY2Vyc1twYXRoXS5waXBlKGRlYm91bmNlVGltZShkZWJvdW5jZU1zKSkuc3Vic2NyaWJlKCh7IHZhbHVlIH0pID0+IHtcbiAgICAgICAgLy8gT25seSBlbWl0IG9uQ2hhbmdlZCBldmVudCBhZnRlciBkZWJvdW5jZSB0aW1lXG4gICAgICAgIHRoaXMub25DaGFuZ2VkLm5leHQoe1xuICAgICAgICAgIG9sZFZhbHVlOiBvbGRWYWx1ZSxcbiAgICAgICAgICBuZXdWYWx1ZTogdmFsdWUsXG4gICAgICAgICAgZGF0YTogdGhpcy5jb250ZXh0LFxuICAgICAgICAgIHBhdGgsXG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy8gVXBkYXRlIGNvbnRleHQgaW1tZWRpYXRlbHlcbiAgICB0aGlzLmNvbnRleHQkLnVwZGF0ZSgoY3R4KSA9PiBzZXQoY2xvbmUoY3R4KSwgcGF0aCwgdmFsdWUpKTtcbiAgICAvLyBFbWl0IHZhbHVlIHRocm91Z2ggdGhlIGRlYm91bmNlciBzdWJqZWN0XG4gICAgdGhpcy5kZWJvdW5jZXJzW3BhdGhdLm5leHQoeyBwYXRoLCB2YWx1ZSB9KTtcbiAgfVxuXG4gIGdldFZhbHVlKHBhdGg6IHN0cmluZykge1xuICAgIHJldHVybiBnZXQodGhpcy5jb250ZXh0LCBwYXRoKTtcbiAgfVxuXG4gIHByaXZhdGUgdW5zdWJzY3JpYmVEZWJvdW5jZXJzKCkge1xuICAgIE9iamVjdC5rZXlzKHRoaXMuZGVib3VuY2VyU3Vic2NyaXB0aW9ucykuZm9yRWFjaCgocGF0aCkgPT4ge1xuICAgICAgdGhpcy5kZWJvdW5jZXJTdWJzY3JpcHRpb25zW3BhdGhdLnVuc3Vic2NyaWJlKCk7XG4gICAgICBkZWxldGUgdGhpcy5kZWJvdW5jZXJTdWJzY3JpcHRpb25zW3BhdGhdOyAvLyBDbGVhbiB1cCB0aGUgcmVmZXJlbmNlXG4gICAgICBkZWxldGUgdGhpcy5kZWJvdW5jZXJzW3BhdGhdOyAvLyBBbHNvIGNsZWFuIHVwIHRoZSBkZWJvdW5jZXIgc3ViamVjdFxuICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy51bnN1YnNjcmliZURlYm91bmNlcnMoKTtcbiAgfVxufVxuIl19
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlci9zcmMvbGliL2J1aWxkZXIvYnVpbGRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDckQsT0FBTyxFQUFFLE9BQU8sRUFBZ0IsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQU0zRCxNQUFNLE9BQWdCLGdCQUFnQjtJQUdwQyxHQUFHO1FBQ0QsT0FBTyxFQUFFLENBQUE7SUFDWCxDQUFDO0NBQ0Y7QUFHRCxNQUFNLE9BQU8sdUJBQXVCO0lBRHBDO1FBRW1CLGFBQVEsR0FBRyxNQUFNLENBQU0sRUFBRSxDQUFDLENBQUM7UUFDM0IsZUFBVSxHQUFHLE1BQU0sQ0FBTSxFQUFFLENBQUMsQ0FBQztRQUM3QixlQUFVLEdBQUcsTUFBTSxDQUE4QixFQUFFLENBQUMsQ0FBQztRQUV0RCxjQUFTLEdBQW1DLElBQUksT0FBTyxFQUF5QixDQUFDO1FBQ3pGLGVBQVUsR0FBNkQsRUFBRSxDQUFDO1FBQzFFLDJCQUFzQixHQUFvQyxFQUFFLENBQUM7UUFFN0QsWUFBTyxHQUFHLElBQUksR0FBRyxFQUE0QixDQUFDO0tBK0Z2RDtJQS9GdUQsQ0FBQztJQUV2RCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBSSxTQUFTO1FBQ1gsT0FBTyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELElBQUksU0FBUztRQUNYLE9BQU8sSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFD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QUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELGNBQWMsQ0FBQyxFQUFVLEVBQUUsTUFBd0I7UUFDakQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzdCLHNDQUFzQztJQUN4QyxDQUFDO0lBRUQsU0FBUyxDQUFDLEVBQVU7UUFDbEIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRU8scUJBQXFCO1FBQzNCLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDeEQsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2hELE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMseUJBQXlCO1lBQ25FLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLHNDQUFzQztRQUN0RSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7SUFDL0IsQ0FBQzs4R0F2R1UsdUJBQXVCO2tIQUF2Qix1QkFBdUI7OzJGQUF2Qix1QkFBdUI7a0JBRG5DLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNsb25lLCBnZXQsIGlzRXF1YWwsIHNldCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBTdWJqZWN0LCBTdWJzY3JpcHRpb24sIGRlYm91bmNlVGltZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQVhQTGF5b3V0Q29udGV4dEV2ZW50IH0gZnJvbSAnLi93aWRnZXQudHlwZXMnO1xuXG5cbmV4cG9ydCB0eXBlIEFYUExheW91dEVsZW1lbnRBUEkgPSB7IFtuYW1lOiBzdHJpbmddOiBTdWJqZWN0PGFueT4gfCBGdW5jdGlvbiB9XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBWFBMYXlvdXRFbGVtZW50IHtcbiAgYWJzdHJhY3QgZ2V0IGlkKCk6IHN0cmluZyB8IG51bGw7XG5cbiAgYXBpKCk6IEFYUExheW91dEVsZW1lbnRBUEkge1xuICAgIHJldHVybiB7fVxuICB9XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBWFBMYXlvdXRCdWlsZGVyU2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgY29udGV4dCQgPSBzaWduYWw8YW55Pih7fSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgdmFyaWFibGVzJCA9IHNpZ25hbDxhbnk+KHt9KTtcbiAgcHJpdmF0ZSByZWFkb25seSBmdW5jdGlvbnMkID0gc2lnbmFsPHsgW2tleTogc3RyaW5nXTogRnVuY3Rpb24gfT4oe30pO1xuXG4gIHB1YmxpYyByZWFkb25seSBvbkNoYW5nZWQ6IFN1YmplY3Q8QVhQTGF5b3V0Q29udGV4dEV2ZW50PiA9IG5ldyBTdWJqZWN0PEFYUExheW91dENvbnRleHRFdmVudD4oKTtcbiAgcHJpdmF0ZSBkZWJvdW5jZXJzOiB7IFtrZXk6IHN0cmluZ106IFN1YmplY3Q8eyBwYXRoOiBzdHJpbmc7IHZhbHVlOiBhbnkgfT4gfSA9IHt9O1xuICBwcml2YXRlIGRlYm91bmNlclN1YnNjcmlwdGlvbnM6IHsgW2tleTogc3RyaW5nXTogU3Vic2NyaXB0aW9uIH0gPSB7fTtcblxuICBwcml2YXRlIHdpZGdldHMgPSBuZXcgTWFwPHN0cmluZywgQVhQTGF5b3V0RWxlbWVudD4oKTs7XG5cbiAgZ2V0IGNvbnRleHQoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29udGV4dCQoKTtcbiAgfVxuXG4gIGdldCB2YXJpYWJsZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMudmFyaWFibGVzJCgpO1xuICB9XG5cbiAgZ2V0IGZ1bmN0aW9ucygpOiB7IFtrZXk6IHN0cmluZ106IEZ1bmN0aW9uIH0ge1xuICAgIHJldHVybiB0aGlzLmZ1bmN0aW9ucyQoKTtcbiAgfVxuXG4gIGluaXRpYWwodmFsdWU6IGFueSkge1xuICAgIHRoaXMuY29udGV4dCQuc2V0KHZhbHVlKTtcbiAgfVxuXG5cbiAgc2V0VmFyaWFibGVzKGtleXNWYWx1ZXM6IGFueSk6IHZvaWQ7XG4gIHNldFZhcmlhYmxlcyhrZXk6IHN0cmluZywgdmFsdWU6IGFueSk6IHZvaWQ7XG4gIHNldFZhcmlhYmxlcyguLi5hcmdzOiBhbnlbXSk6IHZvaWQge1xuICAgIGlmIChhcmdzLmxlbmd0aCA9PSAwKVxuICAgICAgcmV0dXJuO1xuICAgIGVsc2UgaWYgKGFyZ3MubGVuZ3RoID09IDEpXG4gICAgICB0aGlzLnZhcmlhYmxlcyQuc2V0KGFyZ3NbMF0pO1xuICAgIGVsc2UgaWYgKGFyZ3MubGVuZ3RoID09IDIpIHtcbiAgICAgIHRoaXMudmFyaWFibGVzJC51cGRhdGUodiA9PiBzZXQodiwgYXJnc1swXSwgYXJnc1sxXSkpO1xuICAgIH1cbiAgfVxuXG5cbiAgc2V0RnVuY3Rpb25zKGtleXNWYWx1ZXM6IGFueSk6IHZvaWQ7XG4gIHNldEZ1bmN0aW9ucyhrZXk6IHN0cmluZywgdmFsdWU6IGFueSk6IHZvaWQ7XG4gIHNldEZ1bmN0aW9ucyguLi5hcmdzOiBhbnlbXSk6IHZvaWQge1xuICAgIGlmIChhcmdzLmxlbmd0aCA9PSAwKVxuICAgICAgcmV0dXJuO1xuICAgIGVsc2UgaWYgKGFyZ3MubGVuZ3RoID09IDEpXG4gICAgICB0aGlzLmZ1bmN0aW9ucyQuc2V0KGFyZ3NbMF0pO1xuICAgIGVsc2UgaWYgKGFyZ3MubGVuZ3RoID09IDIpIHtcbiAgICAgIHRoaXMuZnVuY3Rpb25zJC51cGRhdGUodiA9PiBzZXQodiwgYXJnc1swXSwgYXJnc1sxXSkpO1xuICAgIH1cbiAgfVxuXG5cbiAgc2V0VmFsdWUocGF0aDogc3RyaW5nLCB2YWx1ZTogYW55LCBkZWJvdW5jZU1zOiBudW1iZXIgPSA1MCkge1xuICAgIGNvbnN0IG9sZFZhbHVlID0gZ2V0KHRoaXMuY29udGV4dCQoKSwgcGF0aCk7XG4gICAgaWYgKGlzRXF1YWwob2xkVmFsdWUsIHZhbHVlKSlcbiAgICAgIHJldHVybjtcbiAgICBpZiAoIXRoaXMuZGVib3VuY2Vyc1twYXRoXSkge1xuICAgICAgLy8gQ3JlYXRlIGEgbmV3IFN1YmplY3QgZm9yIGRlYm91bmNpbmcgaWYgaXQgZG9lc24ndCBleGlzdFxuICAgICAgdGhpcy5kZWJvdW5jZXJzW3BhdGhdID0gbmV3IFN1YmplY3Q8eyBwYXRoOiBzdHJpbmc7IHZhbHVlOiBhbnkgfT4oKTtcblxuICAgICAgLy8gU3Vic2NyaWJlIHRvIHRoZSBzdWJqZWN0IHdpdGggZGVib3VuY2VUaW1lXG4gICAgICB0aGlzLmRlYm91bmNlclN1YnNjcmlwdGlvbnNbcGF0aF0gPSB0aGlzLmRlYm91bmNlcnNbcGF0aF0ucGlwZShkZWJvdW5jZVRpbWUoZGVib3VuY2VNcykpLnN1YnNjcmliZSgoeyB2YWx1ZSB9KSA9PiB7XG4gICAgICAgIC8vIE9ubHkgZW1pdCBvbkNoYW5nZWQgZXZlbnQgYWZ0ZXIgZGVib3VuY2UgdGltZVxuICAgICAgICB0aGlzLm9uQ2hhbmdlZC5uZXh0KHtcbiAgICAgICAgICBvbGRWYWx1ZTogb2xkVmFsdWUsXG4gICAgICAgICAgbmV3VmFsdWU6IHZhbHVlLFxuICAgICAgICAgIGRhdGE6IHRoaXMuY29udGV4dCxcbiAgICAgICAgICBwYXRoLFxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIC8vIFVwZGF0ZSBjb250ZXh0IGltbWVkaWF0ZWx5XG4gICAgdGhpcy5jb250ZXh0JC51cGRhdGUoKGN0eCkgPT4gc2V0KGNsb25lKGN0eCksIHBhdGgsIHZhbHVlKSk7XG4gICAgLy8gRW1pdCB2YWx1ZSB0aHJvdWdoIHRoZSBkZWJvdW5jZXIgc3ViamVjdFxuICAgIHRoaXMuZGVib3VuY2Vyc1twYXRoXS5uZXh0KHsgcGF0aCwgdmFsdWUgfSk7XG4gIH1cblxuICBnZXRWYWx1ZShwYXRoOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gZ2V0KHRoaXMuY29udGV4dCwgcGF0aCk7XG4gIH1cblxuICByZWdpc3RlcldpZGdldChpZDogc3RyaW5nLCB3aWRnZXQ6IEFYUExheW91dEVsZW1lbnQpIHtcbiAgICB0aGlzLndpZGdldHMuc2V0KGlkLCB3aWRnZXQpO1xuICAgIC8vY29uc29sZS5sb2codGhpcy53aWRnZXRzLmVudHJpZXMoKSk7XG4gIH1cblxuICBnZXRXaWRnZXQoaWQ6IHN0cmluZyk6IEFYUExheW91dEVsZW1lbnQgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLndpZGdldHMuZ2V0KGlkKTtcbiAgfVxuXG4gIHByaXZhdGUgdW5zdWJzY3JpYmVEZWJvdW5jZXJzKCkge1xuICAgIE9iamVjdC5rZXlzKHRoaXMuZGVib3VuY2VyU3Vic2NyaXB0aW9ucykuZm9yRWFjaCgocGF0aCkgPT4ge1xuICAgICAgdGhpcy5kZWJvdW5jZXJTdWJzY3JpcHRpb25zW3BhdGhdLnVuc3Vic2NyaWJlKCk7XG4gICAgICBkZWxldGUgdGhpcy5kZWJvdW5jZXJTdWJzY3JpcHRpb25zW3BhdGhdOyAvLyBDbGVhbiB1cCB0aGUgcmVmZXJlbmNlXG4gICAgICBkZWxldGUgdGhpcy5kZWJvdW5jZXJzW3BhdGhdOyAvLyBBbHNvIGNsZWFuIHVwIHRoZSBkZWJvdW5jZXIgc3ViamVjdFxuICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy51bnN1YnNjcmliZURlYm91bmNlcnMoKTtcbiAgfVxufVxuIl19
@@ -1,2 +1,30 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlci9zcmMvbGliL2J1aWxkZXIvbGF5b3V0LnR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBXaWRnZXROb2RlIH0gZnJvbSBcIi4vd2lkZ2V0LnR5cGVzXCI7XG5pbXBvcnQgeyBBWFBHcmlkTGF5b3V0T3B0aW9ucyB9IGZyb20gXCJAYWNvcmV4L3BsYXRmb3JtL2NvbW1vblwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFYUExheW91dFBhZ2Uge1xuICAgIGlkOiBzdHJpbmcsXG4gICAgdGl0bGU6IHN0cmluZyxcbiAgICBmb3JtczogQVhQTGF5b3V0Rm9ybVtdXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhQTGF5b3V0Rm9ybSB7XG4gICAgaWQ6IHN0cmluZyxcbiAgICB0aXRsZTogc3RyaW5nLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFYUExheW91dEZvcm1Sb290R3JvdXAge1xuICAgIGlkOiBzdHJpbmcsXG4gICAgdGl0bGU6IHN0cmluZyxcbiAgICBsYXlvdXQ/OiBBWFBHcmlkTGF5b3V0T3B0aW9uc1xufVxuZXhwb3J0IGludGVyZmFjZSBBWFBMYXlvdXRGb3JtR3JvdXAge1xuICAgIGlkOiBzdHJpbmcsXG4gICAgdGl0bGU6IHN0cmluZyxcbiAgICBncm91cHM6IEFYUExheW91dEZvcm1Hcm91cFxuICAgIGZpZWxkczogQVhQTGF5b3V0Rm9ybUZpZWxkW11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBBWFBMYXlvdXRGb3JtRmllbGQge1xuICAgIG5hbWU6IHN0cmluZztcbiAgICB0aXRsZTogc3RyaW5nO1xuICAgIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICAgIG9yZGVyPzogbnVtYmVyLFxuICAgIGVkaXRhYmxlOiBib29sZWFuLFxuICAgIHdpZGdldDogQVhQV2lkZ2V0Tm9kZSxcbn0iXX0=
2
+ // export interface AXPLayoutPage {
3
+ // id: string,
4
+ // title: string,
5
+ // forms: AXPLayoutForm[]
6
+ // }
7
+ // export interface AXPLayoutForm {
8
+ // id: string,
9
+ // title: string,
10
+ // }
11
+ // export interface AXPLayoutFormRootGroup {
12
+ // id: string,
13
+ // title: string,
14
+ // layout?: AXPGridLayoutOptions
15
+ // }
16
+ // export interface AXPLayoutFormGroup {
17
+ // id: string,
18
+ // title: string,
19
+ // groups: AXPLayoutFormGroup
20
+ // fields: AXPLayoutFormField[]
21
+ // }
22
+ // export interface AXPLayoutFormField {
23
+ // name: string;
24
+ // title: string;
25
+ // description?: string;
26
+ // order?: number,
27
+ // editable: boolean,
28
+ // widget: AXPWidgetNode,
29
+ // }
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlci9zcmMvbGliL2J1aWxkZXIvbGF5b3V0LnR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFHQSxtQ0FBbUM7QUFDbkMsa0JBQWtCO0FBQ2xCLHFCQUFxQjtBQUNyQiw2QkFBNkI7QUFDN0IsSUFBSTtBQUVKLG1DQUFtQztBQUNuQyxrQkFBa0I7QUFDbEIscUJBQXFCO0FBQ3JCLElBQUk7QUFFSiw0Q0FBNEM7QUFDNUMsa0JBQWtCO0FBQ2xCLHFCQUFxQjtBQUNyQixvQ0FBb0M7QUFDcEMsSUFBSTtBQUNKLHdDQUF3QztBQUN4QyxrQkFBa0I7QUFDbEIscUJBQXFCO0FBQ3JCLGlDQUFpQztBQUNqQyxtQ0FBbUM7QUFDbkMsSUFBSTtBQUVKLHdDQUF3QztBQUN4QyxvQkFBb0I7QUFDcEIscUJBQXFCO0FBQ3JCLDRCQUE0QjtBQUM1QixzQkFBc0I7QUFDdEIseUJBQXlCO0FBQ3pCLDZCQUE2QjtBQUM3QixJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQV2lkZ2V0Tm9kZSB9IGZyb20gXCIuL3dpZGdldC50eXBlc1wiO1xuaW1wb3J0IHsgQVhQR3JpZExheW91dE9wdGlvbnMgfSBmcm9tIFwiQGFjb3JleC9wbGF0Zm9ybS9jb21tb25cIjtcblxuLy8gZXhwb3J0IGludGVyZmFjZSBBWFBMYXlvdXRQYWdlIHtcbi8vICAgICBpZDogc3RyaW5nLFxuLy8gICAgIHRpdGxlOiBzdHJpbmcsXG4vLyAgICAgZm9ybXM6IEFYUExheW91dEZvcm1bXVxuLy8gfVxuXG4vLyBleHBvcnQgaW50ZXJmYWNlIEFYUExheW91dEZvcm0ge1xuLy8gICAgIGlkOiBzdHJpbmcsXG4vLyAgICAgdGl0bGU6IHN0cmluZyxcbi8vIH1cblxuLy8gZXhwb3J0IGludGVyZmFjZSBBWFBMYXlvdXRGb3JtUm9vdEdyb3VwIHtcbi8vICAgICBpZDogc3RyaW5nLFxuLy8gICAgIHRpdGxlOiBzdHJpbmcsXG4vLyAgICAgbGF5b3V0PzogQVhQR3JpZExheW91dE9wdGlvbnNcbi8vIH1cbi8vIGV4cG9ydCBpbnRlcmZhY2UgQVhQTGF5b3V0Rm9ybUdyb3VwIHtcbi8vICAgICBpZDogc3RyaW5nLFxuLy8gICAgIHRpdGxlOiBzdHJpbmcsXG4vLyAgICAgZ3JvdXBzOiBBWFBMYXlvdXRGb3JtR3JvdXBcbi8vICAgICBmaWVsZHM6IEFYUExheW91dEZvcm1GaWVsZFtdXG4vLyB9XG5cbi8vIGV4cG9ydCBpbnRlcmZhY2UgQVhQTGF5b3V0Rm9ybUZpZWxkIHtcbi8vICAgICBuYW1lOiBzdHJpbmc7XG4vLyAgICAgdGl0bGU6IHN0cmluZztcbi8vICAgICBkZXNjcmlwdGlvbj86IHN0cmluZztcbi8vICAgICBvcmRlcj86IG51bWJlcixcbi8vICAgICBlZGl0YWJsZTogYm9vbGVhbixcbi8vICAgICB3aWRnZXQ6IEFYUFdpZGdldE5vZGUsXG4vLyB9Il19
@@ -39,7 +39,14 @@ export class AXPWidgetColumnRendererComponent extends AXDataTableColumnComponent
39
39
  const widget = this.widgetRegistery.resolve(this.node.type);
40
40
  const mode = 'column';
41
41
  this.component = await widget?.components[mode]?.component();
42
- this.mergedOptions.set(merge(widget?.defaultOptions, widget?.components[mode]?.defaultOptions, this.node.options) || {});
42
+ //
43
+ const props = widget?.components[mode].properties?.filter(c => c.schema.defaultValue)
44
+ .map(c => ({ [c.name]: c.schema.defaultValue }))
45
+ .reduce((acc, curr) => {
46
+ return { ...acc, ...curr };
47
+ }, {});
48
+ //
49
+ this.mergedOptions.set(merge(widget?.defaultOptions, props, this.node.options) || {});
43
50
  const tokenValue = {
44
51
  path: this.node.path,
45
52
  options: this.mergedOptions()
@@ -60,8 +67,8 @@ export class AXPWidgetColumnRendererComponent extends AXDataTableColumnComponent
60
67
  getInputs(data) {
61
68
  return { rawValue: get(data, this.node.path) };
62
69
  }
63
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPWidgetColumnRendererComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
64
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.2", type: AXPWidgetColumnRendererComponent, selector: "axp-widget-column-renderer", inputs: { caption: "caption", node: "node", footerTemplate: "footerTemplate", cellTemplate: "cellTemplate", headerTemplate: "headerTemplate" }, providers: [AXPLayoutBuilderService, { provide: AXDataTableColumnComponent, useExisting: AXPWidgetColumnRendererComponent }], viewQueries: [{ propertyName: "_contentFooterTemplate", first: true, predicate: ["footer"], descendants: true }, { propertyName: "_contentCellTemplate", first: true, predicate: ["cell"], descendants: true }, { propertyName: "_contentHeaderTemplate", first: true, predicate: ["header"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
70
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPWidgetColumnRendererComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
71
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXPWidgetColumnRendererComponent, selector: "axp-widget-column-renderer", inputs: { caption: "caption", node: "node", footerTemplate: "footerTemplate", cellTemplate: "cellTemplate", headerTemplate: "headerTemplate" }, providers: [AXPLayoutBuilderService, { provide: AXDataTableColumnComponent, useExisting: AXPWidgetColumnRendererComponent }], viewQueries: [{ propertyName: "_contentFooterTemplate", first: true, predicate: ["footer"], descendants: true }, { propertyName: "_contentCellTemplate", first: true, predicate: ["cell"], descendants: true }, { propertyName: "_contentHeaderTemplate", first: true, predicate: ["header"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
65
72
  <ng-template #header>{{ caption }}</ng-template>
66
73
  <ng-template #cell let-row>
67
74
  @if(component && widgetInjector && row?.data) {
@@ -71,7 +78,7 @@ export class AXPWidgetColumnRendererComponent extends AXDataTableColumnComponent
71
78
  <ng-template #footer></ng-template>
72
79
  `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
73
80
  }
74
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPWidgetColumnRendererComponent, decorators: [{
81
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPWidgetColumnRendererComponent, decorators: [{
75
82
  type: Component,
76
83
  args: [{
77
84
  selector: 'axp-widget-column-renderer',
@@ -107,4 +114,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImpor
107
114
  type: ViewChild,
108
115
  args: ['header']
109
116
  }] } });
110
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LWNvbHVtbi1yZW5kZXJlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXIvc3JjL2xpYi9idWlsZGVyL3dpZGdldC1jb2x1bW4tcmVuZGVyZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDM0UsT0FBTyxFQUFFLHVCQUF1QixFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvSSxPQUFPLEVBQXVCLHVCQUF1QixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDNUQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEUsT0FBTyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsTUFBTSxXQUFXLENBQUM7OztBQWlCdkMsTUFBTSxPQUFPLGdDQUFpQyxTQUFRLDBCQUEwQjtJQWZoRjs7UUFpQlksb0JBQWUsR0FBRyxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQztRQVdyRCxrQkFBYSxHQUFHLE1BQU0sQ0FBTSxFQUFFLENBQUMsQ0FBQztRQXlDaEMsYUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM1QixRQUFHLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7S0FrQ3pDO0lBcEZDLElBQ1csSUFBSTtRQUNiLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBQ0QsSUFBVyxJQUFJLENBQUMsQ0FBc0I7UUFDcEMsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7SUFDakIs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QUFTO3VCQUFDLFFBQVE7Z0JBUVosWUFBWTtzQkFEbEIsS0FBSztnQkFJRSxvQkFBb0I7c0JBRDNCLFNBQVM7dUJBQUMsTUFBTTtnQkFRVixjQUFjO3NCQURwQixLQUFLO2dCQUlFLHNCQUFzQjtzQkFEN0IsU0FBUzt1QkFBQyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhEYXRhVGFibGVDb2x1bW5Db21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGF0YS10YWJsZSc7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSW5qZWN0b3IsIElucHV0LCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkLCBpbmplY3QsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhQV2lkZ2V0Q29sdW1uTm9kZSwgQVhQX1dJREdFVF9DT0xVTU5fVE9LRU4gfSBmcm9tICcuL3dpZGdldC50eXBlcyc7XG5pbXBvcnQgeyBBWFBMYXlvdXRCdWlsZGVyU2VydmljZSB9IGZyb20gJy4vYnVpbGRlci5zZXJ2aWNlJztcbmltcG9ydCB7IEFYUFdpZGdldFJlZ2lzdHJ5U2VydmljZSB9IGZyb20gJy4vd2lkZ2V0LXJlZ2lzdGVyeS5zZXJ2aWNlJztcbmltcG9ydCB7IGdldCwgbWVyZ2UgfSBmcm9tICdsb2Rhc2gtZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheHAtd2lkZ2V0LWNvbHVtbi1yZW5kZXJlcicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG5nLXRlbXBsYXRlICNoZWFkZXI+e3sgY2FwdGlvbiB9fTwvbmctdGVtcGxhdGU+XG4gICAgPG5nLXRlbXBsYXRlICNjZWxsIGxldC1yb3c+XG4gICAgICBAaWYoY29tcG9uZW50ICYmIHdpZGdldEluamVjdG9yICYmIHJvdz8uZGF0YSkge1xuICAgICAgPG5nLWNvbnRhaW5lciAqbmdDb21wb25lbnRPdXRsZXQ9XCJjb21wb25lbnQ7IGluamVjdG9yOiB3aWRnZXRJbmplY3RvcjsgaW5wdXRzOiBnZXRJbnB1dHMocm93LmRhdGEpXCI+PC9uZy1jb250YWluZXI+XG4gICAgICB9XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgI2Zvb3Rlcj48L25nLXRlbXBsYXRlPlxuICBgLFxuICBwcm92aWRlcnM6IFtBWFBMYXlvdXRCdWlsZGVyU2VydmljZSwgeyBwcm92aWRlOiBBWERhdGFUYWJsZUNvbHVtbkNvbXBvbmVudCwgdXNlRXhpc3Rpbmc6IEFYUFdpZGdldENvbHVtblJlbmRlcmVyQ29tcG9uZW50IH1dLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW5wdXRzOiBbJ2NhcHRpb24nXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQV2lkZ2V0Q29sdW1uUmVuZGVyZXJDb21wb25lbnQgZXh0ZW5kcyBBWERhdGFUYWJsZUNvbHVtbkNvbXBvbmVudCB7XG5cbiAgcHJvdGVjdGVkIHdpZGdldFJlZ2lzdGVyeSA9IGluamVjdChBWFBXaWRnZXRSZWdpc3RyeVNlcnZpY2UpO1xuXG4gIHByaXZhdGUgX25vZGU6IEFYUFdpZGdldENvbHVtbk5vZGU7XG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pXG4gIHB1YmxpYyBnZXQgbm9kZSgpOiBBWFBXaWRnZXRDb2x1bW5Ob2RlIHtcbiAgICByZXR1cm4gdGhpcy5fbm9kZTtcbiAgfVxuICBwdWJsaWMgc2V0IG5vZGUodjogQVhQV2lkZ2V0Q29sdW1uTm9kZSkge1xuICAgIHRoaXMuX25vZGUgPSB2O1xuICB9XG5cbiAgcHJpdmF0ZSBtZXJnZWRPcHRpb25zID0gc2lnbmFsPGFueT4oe30pO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmb290ZXJUZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgQFZpZXdDaGlsZCgnZm9vdGVyJylcbiAgcHJpdmF0ZSBfY29udGVudEZvb3RlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICBnZXQgcmVuZGVyRm9vdGVyVGVtcGxhdGUoKTogVGVtcGxhdGVSZWY8dW5rbm93bj4ge1xuICAgIHJldHVybiB0aGlzLmZvb3RlclRlbXBsYXRlID8/IHRoaXMuX2NvbnRlbnRGb290ZXJUZW1wbGF0ZTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBjZWxsVGVtcGxhdGU6IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG4gIEBWaWV3Q2hpbGQoJ2NlbGwnKVxuICBwcml2YXRlIF9jb250ZW50Q2VsbFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICBnZXQgcmVuZGVyQ2VsbFRlbXBsYXRlKCk6IFRlbXBsYXRlUmVmPHVua25vd24+IHtcbiAgICByZXR1cm4gdGhpcy5jZWxsVGVtcGxhdGUgPz8gdGhpcy5fY29udGVudENlbGxUZW1wbGF0ZTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBoZWFkZXJUZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgQFZpZXdDaGlsZCgnaGVhZGVyJylcbiAgcHJpdmF0ZSBfY29udGVudEhlYWRlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICBnZXQgcmVuZGVySGVhZGVyVGVtcGxhdGUoKTogVGVtcGxhdGVSZWY8dW5rbm93bj4ge1xuICAgIHJldHVybiB0aGlzLmhlYWRlclRlbXBsYXRlID8/IHRoaXMuX2NvbnRlbnRIZWFkZXJUZW1wbGF0ZTtcbiAgfVxuXG4gIGdldCBsb2FkaW5nRW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIGdldCBuYW1lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGBjb2wtJHt0aGlzLm5vZGUucGF0aH1gO1xuICB9XG5cblxuICBwcml2YXRlIGluamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcbiAgcHJpdmF0ZSBjZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICBwcm90ZWN0ZWQgd2lkZ2V0SW5qZWN0b3IhOiBJbmplY3RvcjtcbiAgcHJvdGVjdGVkIGNvbXBvbmVudCE6IGFueTtcblxuICBhc3luYyBuZ09uSW5pdCgpIHtcbiAgICBjb25zdCB3aWRnZXQgPSB0aGlzLndpZGdldFJlZ2lzdGVyeS5yZXNvbHZlKHRoaXMubm9kZS50eXBlKTtcbiAgICBjb25zdCBtb2RlID0gJ2NvbHVtbidcbiAgICB0aGlzLmNvbXBvbmVudCA9IGF3YWl0IHdpZGdldD8uY29tcG9uZW50c1ttb2RlXT8uY29tcG9uZW50KCk7XG4gICAgdGhpcy5tZXJnZWRPcHRpb25zLnNldChcbiAgICAgIG1lcmdlKHdpZGdldD8uZGVmYXVsdE9wdGlvbnMsIHdpZGdldD8uY29tcG9uZW50c1ttb2RlXT8uZGVmYXVsdE9wdGlvbnMsIHRoaXMubm9kZS5vcHRpb25zKSB8fCB7fVxuICAgICk7XG5cbiAgICBjb25zdCB0b2tlblZhbHVlID0ge1xuICAgICAgcGF0aDogdGhpcy5ub2RlLnBhdGgsXG4gICAgICBvcHRpb25zOiB0aGlzLm1lcmdlZE9wdGlvbnMoKVxuICAgIH07XG4gICAgdGhpcy53aWRnZXRJbmplY3RvciA9IEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICBwYXJlbnQ6IHRoaXMuaW5qZWN0b3IsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IEFYUF9XSURHRVRfQ09MVU1OX1RPS0VOLFxuICAgICAgICAgIHVzZVZhbHVlOiB0b2tlblZhbHVlLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9KTtcblxuICAgIHRoaXMud2lkdGggPSB0aGlzLm1lcmdlZE9wdGlvbnMoKS53aWR0aCA/PyAnMjAwcHgnO1xuICAgIHRoaXMuYWxsb3dSZXNpemluZyA9IHRoaXMubWVyZ2VkT3B0aW9ucygpLmFsbG93UmVzaXppbmcgfHwgdHJ1ZTtcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBnZXRJbnB1dHMoZGF0YTogYW55KTogYW55IHtcbiAgICByZXR1cm4geyByYXdWYWx1ZTogZ2V0KGRhdGEsIHRoaXMubm9kZS5wYXRoISkgfTtcbiAgfVxufVxuIl19
117
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LWNvbHVtbi1yZW5kZXJlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXIvc3JjL2xpYi9idWlsZGVyL3dpZGdldC1jb2x1bW4tcmVuZGVyZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDM0UsT0FBTyxFQUFFLHVCQUF1QixFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvSSxPQUFPLEVBQXVCLHVCQUF1QixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDNUQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEUsT0FBTyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsTUFBTSxXQUFXLENBQUM7OztBQWlCdkMsTUFBTSxPQUFPLGdDQUFpQyxTQUFRLDBCQUEwQjtJQWZoRjs7UUFpQlksb0JBQWUsR0FBRyxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQztRQVdyRCxrQkFBYSxHQUFHLE1BQU0sQ0FBTSxFQUFFLENBQUMsQ0FBQztRQXlDaEMsYUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM1QixRQUFHLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7S0F5Q3pDO0lBM0ZDLElBQ1csSUFBSTtRQUNiLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBQ0QsSUFBVyxJQUFJLENBQUMsQ0FBc0I7UUFDcEMsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7SUFDakIs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QVRsSDs7Ozs7Ozs7R0FRVDs7MkZBS1UsZ0NBQWdDO2tCQWY1QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw0QkFBNEI7b0JBQ3RDLFFBQVEsRUFBRTs7Ozs7Ozs7R0FRVDtvQkFDRCxTQUFTLEVBQUUsQ0FBQyx1QkFBdUIsRUFBRSxFQUFFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxXQUFXLGtDQUFrQyxFQUFFLENBQUM7b0JBQzVILGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxNQUFNLEVBQUUsQ0FBQyxTQUFTLENBQUM7aUJBQ3BCOzhCQU9ZLElBQUk7c0JBRGQsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBV2xCLGNBQWM7c0JBRHBCLEtBQUs7Z0JBSUUsc0JBQXNCO3NCQUQ3QixTQUFTO3VCQUFDLFFBQVE7Z0JBUVosWUFBWTtzQkFEbEIsS0FBSztnQkFJRSxvQkFBb0I7c0JBRDNCLFNBQVM7dUJBQUMsTUFBTTtnQkFRVixjQUFjO3NCQURwQixLQUFLO2dCQUlFLHNCQUFzQjtzQkFEN0IsU0FBUzt1QkFBQyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhEYXRhVGFibGVDb2x1bW5Db21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGF0YS10YWJsZSc7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSW5qZWN0b3IsIElucHV0LCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkLCBpbmplY3QsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhQV2lkZ2V0Q29sdW1uTm9kZSwgQVhQX1dJREdFVF9DT0xVTU5fVE9LRU4gfSBmcm9tICcuL3dpZGdldC50eXBlcyc7XG5pbXBvcnQgeyBBWFBMYXlvdXRCdWlsZGVyU2VydmljZSB9IGZyb20gJy4vYnVpbGRlci5zZXJ2aWNlJztcbmltcG9ydCB7IEFYUFdpZGdldFJlZ2lzdHJ5U2VydmljZSB9IGZyb20gJy4vd2lkZ2V0LXJlZ2lzdGVyeS5zZXJ2aWNlJztcbmltcG9ydCB7IGdldCwgbWVyZ2UgfSBmcm9tICdsb2Rhc2gtZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheHAtd2lkZ2V0LWNvbHVtbi1yZW5kZXJlcicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG5nLXRlbXBsYXRlICNoZWFkZXI+e3sgY2FwdGlvbiB9fTwvbmctdGVtcGxhdGU+XG4gICAgPG5nLXRlbXBsYXRlICNjZWxsIGxldC1yb3c+XG4gICAgICBAaWYoY29tcG9uZW50ICYmIHdpZGdldEluamVjdG9yICYmIHJvdz8uZGF0YSkge1xuICAgICAgPG5nLWNvbnRhaW5lciAqbmdDb21wb25lbnRPdXRsZXQ9XCJjb21wb25lbnQ7IGluamVjdG9yOiB3aWRnZXRJbmplY3RvcjsgaW5wdXRzOiBnZXRJbnB1dHMocm93LmRhdGEpXCI+PC9uZy1jb250YWluZXI+XG4gICAgICB9XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgI2Zvb3Rlcj48L25nLXRlbXBsYXRlPlxuICBgLFxuICBwcm92aWRlcnM6IFtBWFBMYXlvdXRCdWlsZGVyU2VydmljZSwgeyBwcm92aWRlOiBBWERhdGFUYWJsZUNvbHVtbkNvbXBvbmVudCwgdXNlRXhpc3Rpbmc6IEFYUFdpZGdldENvbHVtblJlbmRlcmVyQ29tcG9uZW50IH1dLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW5wdXRzOiBbJ2NhcHRpb24nXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQV2lkZ2V0Q29sdW1uUmVuZGVyZXJDb21wb25lbnQgZXh0ZW5kcyBBWERhdGFUYWJsZUNvbHVtbkNvbXBvbmVudCB7XG5cbiAgcHJvdGVjdGVkIHdpZGdldFJlZ2lzdGVyeSA9IGluamVjdChBWFBXaWRnZXRSZWdpc3RyeVNlcnZpY2UpO1xuXG4gIHByaXZhdGUgX25vZGU6IEFYUFdpZGdldENvbHVtbk5vZGU7XG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pXG4gIHB1YmxpYyBnZXQgbm9kZSgpOiBBWFBXaWRnZXRDb2x1bW5Ob2RlIHtcbiAgICByZXR1cm4gdGhpcy5fbm9kZTtcbiAgfVxuICBwdWJsaWMgc2V0IG5vZGUodjogQVhQV2lkZ2V0Q29sdW1uTm9kZSkge1xuICAgIHRoaXMuX25vZGUgPSB2O1xuICB9XG5cbiAgcHJpdmF0ZSBtZXJnZWRPcHRpb25zID0gc2lnbmFsPGFueT4oe30pO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmb290ZXJUZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgQFZpZXdDaGlsZCgnZm9vdGVyJylcbiAgcHJpdmF0ZSBfY29udGVudEZvb3RlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICBnZXQgcmVuZGVyRm9vdGVyVGVtcGxhdGUoKTogVGVtcGxhdGVSZWY8dW5rbm93bj4ge1xuICAgIHJldHVybiB0aGlzLmZvb3RlclRlbXBsYXRlID8/IHRoaXMuX2NvbnRlbnRGb290ZXJUZW1wbGF0ZTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBjZWxsVGVtcGxhdGU6IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG4gIEBWaWV3Q2hpbGQoJ2NlbGwnKVxuICBwcml2YXRlIF9jb250ZW50Q2VsbFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICBnZXQgcmVuZGVyQ2VsbFRlbXBsYXRlKCk6IFRlbXBsYXRlUmVmPHVua25vd24+IHtcbiAgICByZXR1cm4gdGhpcy5jZWxsVGVtcGxhdGUgPz8gdGhpcy5fY29udGVudENlbGxUZW1wbGF0ZTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBoZWFkZXJUZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgQFZpZXdDaGlsZCgnaGVhZGVyJylcbiAgcHJpdmF0ZSBfY29udGVudEhlYWRlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICBnZXQgcmVuZGVySGVhZGVyVGVtcGxhdGUoKTogVGVtcGxhdGVSZWY8dW5rbm93bj4ge1xuICAgIHJldHVybiB0aGlzLmhlYWRlclRlbXBsYXRlID8/IHRoaXMuX2NvbnRlbnRIZWFkZXJUZW1wbGF0ZTtcbiAgfVxuXG4gIGdldCBsb2FkaW5nRW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIGdldCBuYW1lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGBjb2wtJHt0aGlzLm5vZGUucGF0aH1gO1xuICB9XG5cblxuICBwcml2YXRlIGluamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcbiAgcHJpdmF0ZSBjZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICBwcm90ZWN0ZWQgd2lkZ2V0SW5qZWN0b3IhOiBJbmplY3RvcjtcbiAgcHJvdGVjdGVkIGNvbXBvbmVudCE6IGFueTtcblxuICBhc3luYyBuZ09uSW5pdCgpIHtcbiAgICBjb25zdCB3aWRnZXQgPSB0aGlzLndpZGdldFJlZ2lzdGVyeS5yZXNvbHZlKHRoaXMubm9kZS50eXBlKTtcbiAgICBjb25zdCBtb2RlID0gJ2NvbHVtbidcbiAgICB0aGlzLmNvbXBvbmVudCA9IGF3YWl0IHdpZGdldD8uY29tcG9uZW50c1ttb2RlXT8uY29tcG9uZW50KCk7XG4gICAgLy9cbiAgICBjb25zdCBwcm9wcyA9IHdpZGdldD8uY29tcG9uZW50c1ttb2RlXS5wcm9wZXJ0aWVzPy5maWx0ZXIoYyA9PiBjLnNjaGVtYS5kZWZhdWx0VmFsdWUpXG4gICAgICAubWFwKGMgPT4gKHsgW2MubmFtZV06IGMuc2NoZW1hLmRlZmF1bHRWYWx1ZSB9KSlcbiAgICAgIC5yZWR1Y2UoKGFjYywgY3VycikgPT4ge1xuICAgICAgICByZXR1cm4geyAuLi5hY2MsIC4uLmN1cnIgfTtcbiAgICAgIH0sIHt9KTtcbiAgICAvL1xuICAgIHRoaXMubWVyZ2VkT3B0aW9ucy5zZXQoXG4gICAgICBtZXJnZSh3aWRnZXQ/LmRlZmF1bHRPcHRpb25zLCBwcm9wcywgdGhpcy5ub2RlLm9wdGlvbnMpIHx8IHt9XG4gICAgKTtcblxuICAgIGNvbnN0IHRva2VuVmFsdWUgPSB7XG4gICAgICBwYXRoOiB0aGlzLm5vZGUucGF0aCxcbiAgICAgIG9wdGlvbnM6IHRoaXMubWVyZ2VkT3B0aW9ucygpXG4gICAgfTtcbiAgICB0aGlzLndpZGdldEluamVjdG9yID0gSW5qZWN0b3IuY3JlYXRlKHtcbiAgICAgIHBhcmVudDogdGhpcy5pbmplY3RvcixcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogQVhQX1dJREdFVF9DT0xVTU5fVE9LRU4sXG4gICAgICAgICAgdXNlVmFsdWU6IHRva2VuVmFsdWUsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0pO1xuXG4gICAgdGhpcy53aWR0aCA9IHRoaXMubWVyZ2VkT3B0aW9ucygpLndpZHRoID8/ICcyMDBweCc7XG4gICAgdGhpcy5hbGxvd1Jlc2l6aW5nID0gdGhpcy5tZXJnZWRPcHRpb25zKCkuYWxsb3dSZXNpemluZyB8fCB0cnVlO1xuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIGdldElucHV0cyhkYXRhOiBhbnkpOiBhbnkge1xuICAgIHJldHVybiB7IHJhd1ZhbHVlOiBnZXQoZGF0YSwgdGhpcy5ub2RlLnBhdGghKSB9O1xuICB9XG59XG4iXX0=
@@ -31,10 +31,10 @@ export class AXPWidgetContainerComponent {
31
31
  this.contextChange.emit(cloneDeep(ctx.data));
32
32
  });
33
33
  }
34
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPWidgetContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
35
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.2", type: AXPWidgetContainerComponent, selector: "axp-widgets-container", inputs: { context: "context", variables: "variables", functions: "functions" }, outputs: { contextChange: "contextChange" }, host: { styleAttribute: "display: contents;" }, providers: [AXPLayoutBuilderService, AXUnsubscriber], ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
34
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPWidgetContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
35
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: AXPWidgetContainerComponent, selector: "axp-widgets-container", inputs: { context: "context", variables: "variables", functions: "functions" }, outputs: { contextChange: "contextChange" }, host: { styleAttribute: "display: contents;" }, providers: [AXPLayoutBuilderService, AXUnsubscriber], ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
36
36
  }
37
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPWidgetContainerComponent, decorators: [{
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPWidgetContainerComponent, decorators: [{
38
38
  type: Component,
39
39
  args: [{
40
40
  selector: 'axp-widgets-container',
@@ -21,10 +21,10 @@ export class AXPWidgetRegistryService {
21
21
  }
22
22
  return widget;
23
23
  }
24
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPWidgetRegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
25
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPWidgetRegistryService, providedIn: 'root' }); }
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPWidgetRegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
25
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPWidgetRegistryService, providedIn: 'root' }); }
26
26
  }
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPWidgetRegistryService, decorators: [{
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPWidgetRegistryService, decorators: [{
28
28
  type: Injectable,
29
29
  args: [{
30
30
  providedIn: 'root',
@@ -29,7 +29,7 @@ export class AXPWidgetRendererComponent {
29
29
  this.expressionEvaluators = new Map();
30
30
  this.scope = null;
31
31
  this.builderService.onChanged.pipe(this.unsubscriber.takeUntilDestroy).subscribe(async (e) => {
32
- if (await this.updateOptionsBasedOnContext() > 0) {
32
+ if ((await this.updateOptionsBasedOnContext()) > 0) {
33
33
  this.applyOptions();
34
34
  }
35
35
  if (this.checkFormulaForUpdate(this.node.formula, e.path)) {
@@ -40,16 +40,24 @@ export class AXPWidgetRendererComponent {
40
40
  async loadComponent() {
41
41
  this.isLoading.set(true);
42
42
  const widget = this.widgetRegistery.resolve(this.node.type);
43
- this.mergedOptions.set(merge(cloneDeep(widget?.defaultOptions), cloneDeep(widget?.components[this.node.mode]?.defaultOptions), this.node.options) || {});
43
+ //
44
+ const props = widget?.components[this.node.mode].properties?.filter(c => c.schema.defaultValue)
45
+ .map(c => ({ [c.name]: c.schema.defaultValue }))
46
+ .reduce((acc, curr) => {
47
+ return { ...acc, ...curr };
48
+ }, {});
49
+ //
50
+ this.mergedOptions.set(merge(cloneDeep(widget?.defaultOptions), props, this.node.options) || {});
44
51
  this.preprocessAndInitialOptions(cloneDeep(this.node.options));
45
52
  await this.updateOptionsBasedOnContext();
46
53
  const tokenValue = {
47
- id: this.node.id,
54
+ name: this.node.name,
48
55
  path: this.node.path,
49
56
  mode: this.node.mode,
50
57
  type: this.node.type,
51
58
  children: this.node.children,
52
- options: this.mergedOptions()
59
+ options: this.mergedOptions(),
60
+ config: widget
53
61
  };
54
62
  const token = Injector.create({
55
63
  parent: this.injector,
@@ -67,6 +75,8 @@ export class AXPWidgetRendererComponent {
67
75
  async handleAttached(portalOutletRef) {
68
76
  portalOutletRef = portalOutletRef;
69
77
  this.instance = portalOutletRef.instance;
78
+ this.instance.parent = this.parentNode;
79
+ this.instance.index = this.index;
70
80
  await this.updateValueBasedOnFormula();
71
81
  await this.assignTriggers();
72
82
  }
@@ -114,7 +124,7 @@ export class AXPWidgetRendererComponent {
114
124
  }
115
125
  // Apply updates to mergedOptions
116
126
  if (updates.length > 0) {
117
- this.mergedOptions.update(o => {
127
+ this.mergedOptions.update((o) => {
118
128
  const updatedOptions = { ...o };
119
129
  updates.forEach(({ path, newValue }) => {
120
130
  // Set the new value in the updatedOptions object by path
@@ -182,6 +192,7 @@ export class AXPWidgetRendererComponent {
182
192
  getEventScope() {
183
193
  const scope = {};
184
194
  set(scope, 'context', (path) => this.builderService.onChanged.pipe(filter((c) => c.path == path)));
195
+ set(scope, 'from', (event) => get(this.instance.api(), event));
185
196
  return scope;
186
197
  }
187
198
  getWidgetScope() {
@@ -189,6 +200,9 @@ export class AXPWidgetRendererComponent {
189
200
  set(scope, 'call', (name, ...args) => {
190
201
  this.instance.call(name, ...args);
191
202
  });
203
+ set(scope, 'find', (id) => {
204
+ return this.builderService.getWidget(id)?.api();
205
+ });
192
206
  return scope;
193
207
  }
194
208
  getFunctionScope() {
@@ -196,7 +210,7 @@ export class AXPWidgetRendererComponent {
196
210
  set(scope, 'sum', (values) => {
197
211
  return sum(values);
198
212
  });
199
- Object.entries(this.builderService.functions).forEach(i => {
213
+ Object.entries(this.builderService.functions).forEach((i) => {
200
214
  set(scope, i[0], (...args) => {
201
215
  return i[1](...args);
202
216
  });
@@ -249,8 +263,8 @@ export class AXPWidgetRendererComponent {
249
263
  console.error('Error evaluating expression:', error);
250
264
  }
251
265
  }
252
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPWidgetRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
253
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.2", type: AXPWidgetRendererComponent, selector: "axp-widget-renderer", inputs: { node: "node" }, providers: [
266
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPWidgetRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
267
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXPWidgetRendererComponent, selector: "axp-widget-renderer", inputs: { node: "node", parentNode: "parentNode", index: "index" }, providers: [
254
268
  {
255
269
  provide: AXUnsubscriber,
256
270
  },
@@ -265,7 +279,7 @@ export class AXPWidgetRendererComponent {
265
279
  </ng-template>
266
280
  `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "component", type: i3.AXSkeletonComponent, selector: "ax-skeleton", inputs: ["animated"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
267
281
  }
268
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPWidgetRendererComponent, decorators: [{
282
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPWidgetRendererComponent, decorators: [{
269
283
  type: Component,
270
284
  args: [{
271
285
  selector: 'axp-widget-renderer',
@@ -289,5 +303,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImpor
289
303
  }], ctorParameters: () => [], propDecorators: { node: [{
290
304
  type: Input,
291
305
  args: [{ required: true }]
306
+ }], parentNode: [{
307
+ type: Input
308
+ }], index: [{
309
+ type: Input
292
310
  }] } });
293
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LXJlbmRlcmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXIvc3JjL2xpYi9idWlsZGVyL3dpZGdldC1yZW5kZXJlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBOEIsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbEYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBZ0IsUUFBUSxFQUFFLEtBQUssRUFBa0IsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsSSxPQUFPLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBVyxLQUFLLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNyRSxPQUFPLEVBQWMsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzVELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3RFLE9BQU8sRUFBZ0MsZ0JBQWdCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUFxQmhGLE1BQU0sT0FBTywwQkFBMEI7SUFHckMsSUFDVyxJQUFJO1FBQ2IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDRCxJQUFXLElBQUksQ0FBQyxDQUFnQjtRQUM5QixJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztRQUNmLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBa0JEO1FBZlUsa0JBQWEsR0FBd0IsTUFBTSxDQUFNLEVBQUUsQ0FBQyxDQUFDO1FBRXZELGFBQVEsR0FBRyxNQUFNLENB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QUMscUJBQXFCLENBQUMsQ0FBQztZQUN4RSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7Z0JBQ3JCLE1BQU0sS0FBSyxDQUFDLGlDQUFpQyxrQkFBa0IsR0FBRyxDQUFDLENBQUM7WUFDdEUsQ0FBQztZQUNELE1BQU0sVUFBVSxHQUFHLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUV0QyxzREFBc0Q7WUFDdEQsTUFBTSxLQUFLLEdBQVEsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3pDLE1BQU0sT0FBTyxHQUFHLElBQUksUUFBUSxDQUFDLE9BQU8sRUFBRSxtQkFBbUIsVUFBVSxJQUFJLENBQUMsQ0FBQztZQUN6RSxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakIsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLDhCQUE4QixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3ZELENBQUM7SUFDSCxDQUFDOzhHQTVRVSwwQkFBMEI7a0dBQTFCLDBCQUEwQix3RUFOMUI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsY0FBYzthQUN4QjtTQUNGLDBCQWZTOzs7Ozs7Ozs7R0FTVDs7MkZBUVUsMEJBQTBCO2tCQW5CdEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixRQUFRLEVBQUU7Ozs7Ozs7OztHQVNUO29CQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGNBQWM7eUJBQ3hCO3FCQUNGO2lCQUNGO3dEQUtZLElBQUk7c0JBRGQsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFVuc3Vic2NyaWJlciB9IGZyb20gJ0BhY29yZXgvY29yZS91dGlscyc7XG5pbXBvcnQgeyBDZGtQb3J0YWxPdXRsZXRBdHRhY2hlZFJlZiwgQ29tcG9uZW50UG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBDb21wb25lbnRSZWYsIEluamVjdG9yLCBJbnB1dCwgV3JpdGFibGVTaWduYWwsIGluamVjdCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBjbG9uZURlZXAsIGdldCwgaXNFbXB0eSwgbWVyZ2UsIHNldCwgc3VtIH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7IE9ic2VydmFibGUsIGZpbHRlciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQVhQTGF5b3V0QnVpbGRlclNlcnZpY2UgfSBmcm9tICcuL2J1aWxkZXIuc2VydmljZSc7XG5pbXBvcnQgeyBBWFBXaWRnZXRSZWdpc3RyeVNlcnZpY2UgfSBmcm9tICcuL3dpZGdldC1yZWdpc3Rlcnkuc2VydmljZSc7XG5pbXBvcnQgeyBBWFBXaWRnZXRCYXNlLCBBWFBXaWRnZXROb2RlLCBBWFBfV0lER0VUX1RPS0VOIH0gZnJvbSAnLi93aWRnZXQudHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheHAtd2lkZ2V0LXJlbmRlcmVyJyxcbiAgdGVtcGxhdGU6IGBcbiAgICBAaWYobWVyZ2VkT3B0aW9ucygpLmlzVmlzaWJsZSE9ZmFsc2UpIHsgQGlmKGlzTG9hZGluZygpKXtcbiAgICA8YXgtc2tlbGV0b24gW2FuaW1hdGVkXT1cInRydWVcIiBjbGFzcz1cImF4LXctZnVsbCAgbGc6YXgtdy1bNTAlXSBheC1oLTggYXgtcm91bmRlZFwiPjwvYXgtc2tlbGV0b24+XG4gICAgfSBAZWxzZSB7XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInR0XCI+PC9uZy1jb250YWluZXI+XG4gICAgfSB9XG4gICAgPG5nLXRlbXBsYXRlICN0dD5cbiAgICAgIDxuZy10ZW1wbGF0ZSBbY2RrUG9ydGFsT3V0bGV0XT1cInBvcnRhbFwiIChhdHRhY2hlZCk9XCJoYW5kbGVBdHRhY2hlZCgkZXZlbnQpXCI+PC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLXRlbXBsYXRlPlxuICBgLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogQVhVbnN1YnNjcmliZXIsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQV2lkZ2V0UmVuZGVyZXJDb21wb25lbnQge1xuXG4gIHByaXZhdGUgX25vZGU6IEFYUFdpZGdldE5vZGU7XG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pXG4gIHB1YmxpYyBnZXQgbm9kZSgpOiBBWFBXaWRnZXROb2RlIHtcbiAgICByZXR1cm4gdGhpcy5fbm9kZTtcbiAgfVxuICBwdWJsaWMgc2V0IG5vZGUodjogQVhQV2lkZ2V0Tm9kZSkge1xuICAgIHRoaXMuX25vZGUgPSB2O1xuICAgIHRoaXMubG9hZENvbXBvbmVudCgpO1xuICB9XG5cblxuICBwcm90ZWN0ZWQgbWVyZ2VkT3B0aW9uczogV3JpdGFibGVTaWduYWw8YW55PiA9IHNpZ25hbDxhbnk+KHt9KTtcblxuICBwcml2YXRlIGluamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcbiAgcHJvdGVjdGVkIGJ1aWxkZXJTZXJ2aWNlID0gaW5qZWN0KEFYUExheW91dEJ1aWxkZXJTZXJ2aWNlKTtcbiAgcHJvdGVjdGVkIHdpZGdldFJlZ2lzdGVyeSA9IGluamVjdChBWFBXaWRnZXRSZWdpc3RyeVNlcnZpY2UpO1xuICBwcm90ZWN0ZWQgdW5zdWJzY3JpYmVyID0gaW5qZWN0KEFYVW5zdWJzY3JpYmVyKTtcblxuICBwcm90ZWN0ZWQgaXNMb2FkaW5nID0gc2lnbmFsKHRydWUpO1xuICBwcml2YXRlIGluc3RhbmNlITogQVhQV2lkZ2V0QmFzZTtcbiAgcHJvdGVjdGVkIHBvcnRhbCE6IENvbXBvbmVudFBvcnRhbDxhbnk+O1xuICBwcml2YXRlIGV4cHJlc3Npb25DYWNoZTogTWFwPHN0cmluZywgKCkgPT4gUHJvbWlzZTxhbnk+PiA9IG5ldyBNYXAoKTtcbiAgcHJpdmF0ZSBleHByZXNzaW9uRXZhbHVhdG9yczogTWFwPHN0cmluZywgKCkgPT4gUHJvbWlzZTxhbnk+PiA9IG5ldyBNYXAoKTtcbiAgcHJpdmF0ZSBzY29wZTogYW55ID0gbnVsbDtcblxuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuYnVpbGRlclNlcnZpY2Uub25DaGFuZ2VkLnBpcGUodGhpcy51bnN1YnNjcmliZXIudGFrZVVudGlsRGVzdHJveSkuc3Vic2NyaWJlKGFzeW5jIChlKSA9PiB7XG4gICAgICBpZiAoYXdhaXQgdGhpcy51cGRhdGVPcHRpb25zQmFzZWRPbkNvbnRleHQoKSA+IDApIHtcbiAgICAgICAgdGhpcy5hcHBseU9wdGlvbnMoKTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLmNoZWNrRm9ybXVsYUZvclVwZGF0ZSh0aGlzLm5vZGUuZm9ybXVsYSwgZS5wYXRoKSkge1xuICAgICAgICBhd2FpdCB0aGlzLnVwZGF0ZVZhbHVlQmFzZWRPbkZvcm11bGEoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgbG9hZENvbXBvbmVudCgpIHtcbiAgICB0aGlzLmlzTG9hZGluZy5zZXQodHJ1ZSk7XG4gICAgY29uc3Qgd2lkZ2V0ID0gdGhpcy53aWRnZXRSZWdpc3RlcnkucmVzb2x2ZSh0aGlzLm5vZGUudHlwZSk7XG4gICAgdGhpcy5tZXJnZWRPcHRpb25zLnNldChcbiAgICAgIG1lcmdlKGNsb25lRGVlcCh3aWRnZXQ/LmRlZmF1bHRPcHRpb25zKSwgY2xvbmVEZWVwKHdpZGdldD8uY29tcG9uZW50c1t0aGlzLm5vZGUubW9kZV0/LmRlZmF1bHRPcHRpb25zKSwgdGhpcy5ub2RlLm9wdGlvbnMpIHx8IHt9XG4gICAgKTtcbiAgICB0aGlzLnByZXByb2Nlc3NBbmRJbml0aWFsT3B0aW9ucyhjbG9uZURlZXAodGhpcy5ub2RlLm9wdGlvbnMpKTtcbiAgICBhd2FpdCB0aGlzLnVwZGF0ZU9wdGlvbnNCYXNlZE9uQ29udGV4dCgpO1xuICAgIGNvbnN0IHRva2VuVmFsdWUgPSB7XG4gICAgICBpZDogdGhpcy5ub2RlLmlkLFxuICAgICAgcGF0aDogdGhpcy5ub2RlLnBhdGgsXG4gICAgICBtb2RlOiB0aGlzLm5vZGUubW9kZSxcbiAgICAgIHR5cGU6IHRoaXMubm9kZS50eXBlLFxuICAgICAgY2hpbGRyZW46IHRoaXMubm9kZS5jaGlsZHJlbixcbiAgICAgIG9wdGlvbnM6IHRoaXMubWVyZ2VkT3B0aW9ucygpXG4gICAgfTtcbiAgICBjb25zdCB0b2tlbiA9IEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICBwYXJlbnQ6IHRoaXMuaW5qZWN0b3IsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IEFYUF9XSURHRVRfVE9LRU4sXG4gICAgICAgICAgdXNlVmFsdWU6IHRva2VuVmFsdWUsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0pO1xuICAgIHZhciBjb20gPSBhd2FpdCB3aWRnZXQ/LmNvbXBvbmVudHNbdGhpcy5ub2RlLm1vZGVdPy5jb21wb25lbnQoKTtcbiAgICB0aGlzLnBvcnRhbCA9IG5ldyBDb21wb25lbnRQb3J0YWwoY29tLCBudWxsLCB0b2tlbik7XG4gICAgdGhpcy5pc0xvYWRpbmcuc2V0KGZhbHNlKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBoYW5kbGVBdHRhY2hlZChwb3J0YWxPdXRsZXRSZWY6IENka1BvcnRhbE91dGxldEF0dGFjaGVkUmVmKSB7XG4gICAgcG9ydGFsT3V0bGV0UmVmID0gcG9ydGFsT3V0bGV0UmVmIGFzIENvbXBvbmVudFJlZjxBWFBXaWRnZXRCYXNlPjtcbiAgICB0aGlzLmluc3RhbmNlID0gcG9ydGFsT3V0bGV0UmVmLmluc3RhbmNlIGFzIEFYUFdpZGdldEJhc2U7XG4gICAgYXdhaXQgdGhpcy51cGRhdGVWYWx1ZUJhc2VkT25Gb3JtdWxhKCk7XG4gICAgYXdhaXQgdGhpcy5hc3NpZ25UcmlnZ2VycygpO1xuICB9XG5cbiAgcHJpdmF0ZSBhcHBseU9wdGlvbnMoKSB7XG4gICAgaWYgKCF0aGlzLmluc3RhbmNlKSByZXR1cm47XG4gICAgdGhpcy5pbnN0YW5jZS5zZXRPcHRpb25zKHRoaXMubWVyZ2VkT3B0aW9ucygpKTtcbiAgfVxuXG4gIHByaXZhdGUgY2hlY2tGb3JtdWxhRm9yVXBkYXRlKGZvcm11bGE6IHN0cmluZyB8IHVuZGVmaW5lZCwgcGF0aD86IHN0cmluZyB8IG51bGwpOiBib29sZWFuIHtcbiAgICBpZiAoZm9ybXVsYSkge1xuICAgICAgY29uc3QgcmVnZXggPSAvY29udGV4dFxcLmV2YWxcXCgnKFteJ10rKSdcXCkvZztcbiAgICAgIGNvbnN0IG1hdGNoZXMgPSBmb3JtdWxhLm1hdGNoKHJlZ2V4KTtcbiAgICAgIGNvbnN0IG5vZGVzID0gbWF0Y2hlcyA/IG1hdGNoZXMubWFwKChtYXRjaDogYW55KSA9PiBtYXRjaC5tYXRjaCgvJyhbXiddKyknLylbMV0pIDogW107XG4gICAgICByZXR1cm4gbm9kZXMuaW5jbHVkZXMocGF0aCk7XG4gICAgfSBlbHNlIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHByZXByb2Nlc3NBbmRJbml0aWFsT3B0aW9ucyhvYmo6IGFueSwgcGF0aFByZWZpeDogc3RyaW5nID0gJycpOiB2b2lkIHtcbiAgICBpZiAoIW9iailcbiAgICAgIHJldHVybjtcbiAgICBPYmplY3QuZW50cmllcyhvYmopLmZvckVhY2goKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgY29uc3QgY3VycmVudFBhdGggPSBwYXRoUHJlZml4ID8gYCR7cGF0aFByZWZpeH0uJHtrZXl9YCA6IGtleTtcbiAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnICYmIHZhbHVlLmluY2x1ZGVzKCd7eycpKSB7XG4gICAgICAgIC8vIENhY2hlIGR5bmFtaWMgZXhwcmVzc2lvbiBmb3IgbGF0ZXIgZXZhbHVhdGlvblxuICAgICAgICB0aGlzLmV4cHJlc3Npb25FdmFsdWF0b3JzLnNldChjdXJyZW50UGF0aCwgKCkgPT4gdGhpcy5ldmFsdWF0ZUV4cHJlc3Npb24odmFsdWUpKTtcbiAgICAgIH1cbiAgICAgIGVsc2UgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgJiYgdmFsdWUgIT09IG51bGwgJiYgKHZhbHVlLmNvbnN0cnVjdG9yID09PSBPYmplY3QgfHwgQXJyYXkuaXNBcnJheSh2YWx1ZSkpKSB7XG4gICAgICAgIC8vIFJlY3Vyc2l2ZWx5IGhhbmRsZSBuZXN0ZWQgb2JqZWN0c1xuICAgICAgICB0aGlzLnByZXByb2Nlc3NBbmRJbml0aWFsT3B0aW9ucyh2YWx1ZSwgY3VycmVudFBhdGgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gQXBwbHkgc3RhdGljIHZhbHVlcyBkaXJlY3RseVxuICAgICAgICB0aGlzLm1lcmdlZE9wdGlvbnMudXBkYXRlKChjdXJyZW50T3B0aW9ucykgPT4ge1xuICAgICAgICAgIHJldHVybiBzZXQoY3VycmVudE9wdGlvbnMsIGN1cnJlbnRQYXRoLCB2YWx1ZSk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgYXN5bmMgdXBkYXRlT3B0aW9uc0Jhc2VkT25Db250ZXh0KCkge1xuICAgIGNvbnN0IHVwZGF0ZXM6IGFueVtdID0gW107XG4gICAgZm9yIChsZXQgW3BhdGgsIGV2YWx1YXRvcl0gb2YgdGhpcy5leHByZXNzaW9uRXZhbHVhdG9ycykge1xuICAgICAgY29uc3QgbmV3VmFsdWUgPSBhd2FpdCBldmFsdWF0b3IoKTtcbiAgICAgIHVwZGF0ZXMucHVzaCh7IHBhdGgsIG5ld1ZhbHVlIH0pO1xuICAgIH1cbiAgICAvLyBBcHBseSB1cGRhdGVzIHRvIG1lcmdlZE9wdGlvbnNcbiAgICBpZiAodXBkYXRlcy5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLm1lcmdlZE9wdGlvbnMudXBkYXRlKG8gPT4ge1xuICAgICAgICBjb25zdCB1cGRhdGVkT3B0aW9ucyA9IHsgLi4ubyB9O1xuICAgICAgICB1cGRhdGVzLmZvckVhY2goKHsgcGF0aCwgbmV3VmFsdWUgfSkgPT4ge1xuICAgICAgICAgIC8vIFNldCB0aGUgbmV3IHZhbHVlIGluIHRoZSB1cGRhdGVkT3B0aW9ucyBvYmplY3QgYnkgcGF0aFxuICAgICAgICAgIHNldCh1cGRhdGVkT3B0aW9ucywgcGF0aCwgbmV3VmFsdWUpOyAvLyBBc3N1bWluZyAnc2V0JyBjYW4gaGFuZGxlIHBhdGhzIGxpa2UgJ3Byb3BlcnR5LnN1YnByb3BlcnR5J1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHVwZGF0ZWRPcHRpb25zO1xuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiB1cGRhdGVzLmxlbmd0aDtcbiAgfVxuXG4gIGFzeW5jIHVwZGF0ZVZhbHVlQmFzZWRPbkZvcm11bGEoKSB7XG4gICAgaWYgKHRoaXMubm9kZS5mb3JtdWxhKSB7XG4gICAgICBjb25zdCB2YWx1ZSA9IGF3YWl0IHRoaXMuZXZhbHVhdGVFeHByZXNzaW9uKHRoaXMubm9kZS5mb3JtdWxhKTtcbiAgICAgIHRoaXMuaW5zdGFuY2Uuc2V0VmFsdWUodmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZXZhbHVhdGVFeHByZXNzaW9uKHRlbXBsYXRlRXhwcmVzc2lvbjogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICB0cnkge1xuICAgICAgLy8gQ2hlY2sgY2FjaGUgZmlyc3QsIGJ1dCBjYWNoZSB0aGUgZnVuY3Rpb24gZm9yIGV2YWx1YXRpb24sIG5vdCB0aGUgZXZhbHVhdGVkIHZhbHVlXG4gICAgICBpZiAoIXRoaXMuZXhwcmVzc2lvbkNhY2hlLmhhcyh0ZW1wbGF0ZUV4cHJlc3Npb24pKSB7XG4gICAgICAgIGNvbnN0IGV4cHJlc3Npb25NYXRjaCA9IHRlbXBsYXRlRXhwcmVzc2lvbi5tYXRjaCgvXFx7XFx7XFxzKiguKj8pXFxzKlxcfVxcfS8pO1xuICAgICAgICBpZiAoIWV4cHJlc3Npb25NYXRjaCkge1xuICAgICAgICAgIHRocm93IEVycm9yKGBObyB2YWxpZCBleHByZXNzaW9uIGZvdW5kIGluIFwiJHt0ZW1wbGF0ZUV4cHJlc3Npb259XCJgKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBleHByZXNzaW9uID0gZXhwcmVzc2lvbk1hdGNoWzFdO1xuXG4gICAgICAgIC8vIENhY2hlIHRoZSBldmFsdWF0aW9uIGZ1bmN0aW9uIGluc3RlYWQgb2YgdGhlIHJlc3VsdFxuICAgICAgICBjb25zdCBzY29wZSA9IHRoaXMuZ2V0R2xvYmFsU2NvcGUoKTtcbiAgICAgICAgY29uc3QgZXZhbHVhdGlvbkZ1bmN0aW9uID0gYXN5bmMgKCkgPT4ge1xuICAgICAgICAgIGNvbnN0IHNhbmRib3ggPSBuZXcgRnVuY3Rpb24oJ3Njb3BlJywgYHdpdGggKHNjb3BlKSB7IHJldHVybiAoYXN5bmMgZnVuY3Rpb24oKSB7IHJldHVybiAke2V4cHJlc3Npb259OyB9KSgpOyB9YCk7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IHNhbmRib3goc2NvcGUpO1xuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMuZXhwcmVzc2lvbkNhY2hlLnNldCh0ZW1wbGF0ZUV4cHJlc3Npb24sIGV2YWx1YXRpb25GdW5jdGlvbik7XG4gICAgICB9XG5cbiAgICAgIC8vIFJldHJpZXZlIHRoZSBmdW5jdGlvbiBmcm9tIHRoZSBjYWNoZSBhbmQgY2FsbCBpdCB0byBldmFsdWF0ZSB0aGUgZXhwcmVzc2lvblxuICAgICAgY29uc3QgZXZhbHVhdGUgPSB0aGlzLmV4cHJlc3Npb25DYWNoZS5nZXQodGVtcGxhdGVFeHByZXNzaW9uKTtcbiAgICAgIGlmIChldmFsdWF0ZSkge1xuICAgICAgICAvLyBFbnN1cmUgJ2V2YWx1YXRlJyBpcyBub3QgdW5kZWZpbmVkIGJlZm9yZSBpbnZva2luZ1xuICAgICAgICByZXR1cm4gYXdhaXQgZXZhbHVhdGUoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRocm93IEVycm9yKGBGYWlsZWQgdG8gcmV0cmlldmUgZXZhbHVhdGlvbiBmdW5jdGlvbiBmb3IgZXhwcmVzc2lvbjogXCIke3RlbXBsYXRlRXhwcmVzc2lvbn1cImApO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBldmFsdWF0aW5nIGV4cHJlc3Npb246JywgZXJyb3IpO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0R2xvYmFsU2NvcGUoKSB7XG4gICAgaWYgKHRoaXMuc2NvcGUpIHJldHVybiB0aGlzLnNjb3BlO1xuICAgIHRoaXMuc2NvcGUgPSB7fTtcbiAgICBzZXQodGhpcy5zY29wZSwgJ2NvbnRleHQnLCB0aGlzLmdldENvbnRleHRTY29wZSgpKTtcbiAgICBzZXQodGhpcy5zY29wZSwgJ2V2ZW50cycsIHRoaXMuZ2V0RXZlbnRTY29wZSgpKTtcbiAgICBzZXQodGhpcy5zY29wZSwgJ3dpZGdldCcsIHRoaXMuZ2V0V2lkZ2V0U2NvcGUoKSk7XG4gICAgc2V0KHRoaXMuc2NvcGUsICdtZXRob2RzJywgdGhpcy5nZXRGdW5jdGlvblNjb3BlKCkpO1xuICAgIHNldCh0aGlzLnNjb3BlLCAndmFycycsIHRoaXMuZ2V0VmFyaWFibGVzU2NvcGUoKSk7XG4gICAgcmV0dXJuIHRoaXMuc2NvcGU7XG4gIH1cblxuICBwcml2YXRlIGdldENvbnRleHRTY29wZSgpOiBhbnkge1xuICAgIGNvbnN0IHNjb3BlOiBhbnkgPSB7fTtcbiAgICBzZXQoc2NvcGUsICdldmFsJywgKHBhdGg6IHN0cmluZykgPT4gdGhpcy5idWlsZGVyU2VydmljZS5nZXRWYWx1ZShwYXRoKSk7XG4gICAgcmV0dXJuIHNjb3BlO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRFdmVudFNjb3BlKCk6IGFueSB7XG4gICAgY29uc3Qgc2NvcGU6IGFueSA9IHt9O1xuICAgIHNldChzY29wZSwgJ2NvbnRleHQnLCAocGF0aDogc3RyaW5nKSA9PlxuICAgICAgdGhpcy5idWlsZGVyU2VydmljZS5vbkNoYW5nZWQucGlwZShcbiAgICAgICAgZmlsdGVyKChjKSA9PiBjLnBhdGggPT0gcGF0aClcbiAgICAgIClcbiAgICApO1xuICAgIHJldHVybiBzY29wZTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0V2lkZ2V0U2NvcGUoKTogYW55IHtcbiAgICBjb25zdCBzY29wZTogYW55ID0ge307XG4gICAgc2V0KHNjb3BlLCAnY2FsbCcsIChuYW1lOiBzdHJpbmcsIC4uLmFyZ3M6IGFueVtdKSA9PiB7XG4gICAgICB0aGlzLmluc3RhbmNlLmNhbGwobmFtZSwgLi4uYXJncyk7XG4gICAgfSk7XG4gICAgcmV0dXJuIHNjb3BlO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGdW5jdGlvblNjb3BlKCk6IGFueSB7XG4gICAgY29uc3Qgc2NvcGU6IGFueSA9IHt9O1xuICAgIHNldChzY29wZSwgJ3N1bScsICh2YWx1ZXM6IGFueSkgPT4ge1xuICAgICAgcmV0dXJuIHN1bSh2YWx1ZXMpO1xuICAgIH0pO1xuICAgIE9iamVjdC5lbnRyaWVzKHRoaXMuYnVpbGRlclNlcnZpY2UuZnVuY3Rpb25zKS5mb3JFYWNoKGkgPT4ge1xuICAgICAgc2V0KHNjb3BlLCBpWzBdLCAoLi4uYXJnczogYW55W10pID0+IHtcbiAgICAgICAgcmV0dXJuIGlbMV0oLi4uYXJncyk7XG4gICAgICB9KTtcbiAgICB9KVxuICAgIHJldHVybiBzY29wZTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0VmFyaWFibGVzU2NvcGUoKTogYW55IHtcbiAgICBjb25zdCBzY29wZTogYW55ID0ge307XG4gICAgc2V0KHNjb3BlLCAnZXZhbCcsIChwYXRoOiBzdHJpbmcpID0+IGdldCh0aGlzLmJ1aWxkZXJTZXJ2aWNlLnZhcmlhYmxlcywgcGF0aCkpO1xuICAgIHJldHVybiBzY29wZTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgYXNzaWduVHJpZ2dlcnMoKSB7XG4gICAgdGhpcy5ub2RlLnRyaWdnZXJzPy5mb3JFYWNoKCh0KSA9PiB7XG4gICAgICBjb25zdCBldmVudCA9IHRoaXMuZXZhbHVhdGVUcmlnZ2VyKHQuZXZlbnQpO1xuICAgICAgZXZlbnQ/LnBpcGUodGhpcy51bnN1YnNjcmliZXIudGFrZVVudGlsRGVzdHJveSkuc3Vic2NyaWJlKChjKSA9PiB7XG4gICAgICAgIHRoaXMuZXZhbHVhdGVBY3Rpb24odC5hY3Rpb24pO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGV2YWx1YXRlVHJpZ2dlcih0ZW1wbGF0ZUV4cHJlc3Npb246IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB8IG51bGwge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBleHByZXNzaW9uTWF0Y2ggPSB0ZW1wbGF0ZUV4cHJlc3Npb24ubWF0Y2goL1xce1xce1xccyooLio/KVxccypcXH1cXH0vKTtcbiAgICAgIGlmICghZXhwcmVzc2lvbk1hdGNoKSB7XG4gICAgICAgIHRocm93IEVycm9yKGBObyB2YWxpZCBleHByZXNzaW9uIGZvdW5kIGluIFwiJHt0ZW1wbGF0ZUV4cHJlc3Npb259XCJgKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGV4cHJlc3Npb24gPSBleHByZXNzaW9uTWF0Y2hbMV07XG5cbiAgICAgIC8vIENhY2hlIHRoZSBldmFsdWF0aW9uIGZ1bmN0aW9uIGluc3RlYWQgb2YgdGhlIHJlc3VsdFxuICAgICAgY29uc3Qgc2NvcGUgPSB0aGlzLmdldEdsb2JhbFNjb3BlKCk7XG4gICAgICBjb25zdCBzYW5kYm94ID0gbmV3IEZ1bmN0aW9uKCdzY29wZScsIGB3aXRoIChzY29wZSkgeyByZXR1cm4gKCAgZnVuY3Rpb24oKSB7IHJldHVybiAke2V4cHJlc3Npb259OyB9KSgpOyB9YCk7XG4gICAgICByZXR1cm4gc2FuZGJveChzY29wZSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGV2YWx1YXRpbmcgZXhwcmVzc2lvbjonLCBlcnJvcik7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGV2YWx1YXRlQWN0aW9uKHRlbXBsYXRlRXhwcmVzc2lvbjogc3RyaW5nKSB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGV4cHJlc3Npb25NYXRjaCA9IHRlbXBsYXRlRXhwcmVzc2lvbi5tYXRjaCgvXFx7XFx7XFxzKiguKj8pXFxzKlxcfVxcfS8pO1xuICAgICAgaWYgKCFleHByZXNzaW9uTWF0Y2gpIHtcbiAgICAgICAgdGhyb3cgRXJyb3IoYE5vIHZhbGlkIGV4cHJlc3Npb24gZm91bmQgaW4gXCIke3RlbXBsYXRlRXhwcmVzc2lvbn1cImApO1xuICAgICAgfVxuICAgICAgY29uc3QgZXhwcmVzc2lvbiA9IGV4cHJlc3Npb25NYXRjaFsxXTtcblxuICAgICAgLy8gQ2FjaGUgdGhlIGV2YWx1YXRpb24gZnVuY3Rpb24gaW5zdGVhZCBvZiB0aGUgcmVzdWx0XG4gICAgICBjb25zdCBzY29wZTogYW55ID0gdGhpcy5nZXRHbG9iYWxTY29wZSgpO1xuICAgICAgY29uc3Qgc2FuZGJveCA9IG5ldyBGdW5jdGlvbignc2NvcGUnLCBgd2l0aCAoc2NvcGUpIHsgICR7ZXhwcmVzc2lvbn0gfWApO1xuICAgICAgc2FuZGJveChzY29wZSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGV2YWx1YXRpbmcgZXhwcmVzc2lvbjonLCBlcnJvcik7XG4gICAgfVxuICB9XG59XG4iXX0=
311
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LXJlbmRlcmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXIvc3JjL2xpYi9idWlsZGVyL3dpZGdldC1yZW5kZXJlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBOEIsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbEYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBZ0IsUUFBUSxFQUFFLEtBQUssRUFBa0IsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsSSxPQUFPLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUM1RCxPQUFPLEVBQWMsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzVELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3RFLE9BQU8sRUFBZ0MsZ0JBQWdCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUFxQmhGLE1BQU0sT0FBTywwQkFBMEI7SUFFckMsSUFDVyxJQUFJO1FBQ2IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDRCxJQUFXLElBQUksQ0FBQyxDQUFnQjtRQUM5QixJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztRQUNmLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBc0JEO1FBZFUsa0JBQWEsR0FBd0IsTUFBTSxDQUFNLEVBQUUsQ0FBQyxDQUFDO1FBRXZELGFBQVEsR0FBRyxNQUFNLENB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LENBQUMsQ0FBQyxDQUFDLENBQUM7WUFFdEMsc0RBQXNEO1lBQ3RELE1BQU0sS0FBSyxHQUFRLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN6QyxNQUFNLE9BQU8sR0FBRyxJQUFJLFFBQVEsQ0FBQyxPQUFPLEVBQUUsbUJBQW1CLFVBQVUsSUFBSSxDQUFDLENBQUM7WUFDekUsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pCLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyw4QkFBOEIsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUN2RCxDQUFDO0lBQ0gsQ0FBQzs4R0F2UlUsMEJBQTBCO2tHQUExQiwwQkFBMEIsa0hBTjFCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGNBQWM7YUFDeEI7U0FDRiwwQkFmUzs7Ozs7Ozs7O0dBU1Q7OzJGQVFVLDBCQUEwQjtrQkFuQnRDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsUUFBUSxFQUFFOzs7Ozs7Ozs7R0FTVDtvQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxjQUFjO3lCQUN4QjtxQkFDRjtpQkFDRjt3REFJWSxJQUFJO3NCQURkLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQVV6QixVQUFVO3NCQURULEtBQUs7Z0JBSU4sS0FBSztzQkFESixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhVbnN1YnNjcmliZXIgfSBmcm9tICdAYWNvcmV4L2NvcmUvdXRpbHMnO1xuaW1wb3J0IHsgQ2RrUG9ydGFsT3V0bGV0QXR0YWNoZWRSZWYsIENvbXBvbmVudFBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgQ29tcG9uZW50UmVmLCBJbmplY3RvciwgSW5wdXQsIFdyaXRhYmxlU2lnbmFsLCBpbmplY3QsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY2xvbmVEZWVwLCBnZXQsIG1lcmdlLCBzZXQsIHN1bSB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBmaWx0ZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFYUExheW91dEJ1aWxkZXJTZXJ2aWNlIH0gZnJvbSAnLi9idWlsZGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgQVhQV2lkZ2V0UmVnaXN0cnlTZXJ2aWNlIH0gZnJvbSAnLi93aWRnZXQtcmVnaXN0ZXJ5LnNlcnZpY2UnO1xuaW1wb3J0IHsgQVhQV2lkZ2V0QmFzZSwgQVhQV2lkZ2V0Tm9kZSwgQVhQX1dJREdFVF9UT0tFTiB9IGZyb20gJy4vd2lkZ2V0LnR5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXhwLXdpZGdldC1yZW5kZXJlcicsXG4gIHRlbXBsYXRlOiBgXG4gICAgQGlmKG1lcmdlZE9wdGlvbnMoKS5pc1Zpc2libGUhPWZhbHNlKSB7IEBpZihpc0xvYWRpbmcoKSl7XG4gICAgPGF4LXNrZWxldG9uIFthbmltYXRlZF09XCJ0cnVlXCIgY2xhc3M9XCJheC13LWZ1bGwgIGxnOmF4LXctWzUwJV0gYXgtaC04IGF4LXJvdW5kZWRcIj48L2F4LXNrZWxldG9uPlxuICAgIH0gQGVsc2Uge1xuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0dFwiPjwvbmctY29udGFpbmVyPlxuICAgIH0gfVxuICAgIDxuZy10ZW1wbGF0ZSAjdHQ+XG4gICAgICA8bmctdGVtcGxhdGUgW2Nka1BvcnRhbE91dGxldF09XCJwb3J0YWxcIiAoYXR0YWNoZWQpPVwiaGFuZGxlQXR0YWNoZWQoJGV2ZW50KVwiPjwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IEFYVW5zdWJzY3JpYmVyLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFYUFdpZGdldFJlbmRlcmVyQ29tcG9uZW50IHtcbiAgcHJpdmF0ZSBfbm9kZTogQVhQV2lkZ2V0Tm9kZTtcbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSlcbiAgcHVibGljIGdldCBub2RlKCk6IEFYUFdpZGdldE5vZGUge1xuICAgIHJldHVybiB0aGlzLl9ub2RlO1xuICB9XG4gIHB1YmxpYyBzZXQgbm9kZSh2OiBBWFBXaWRnZXROb2RlKSB7XG4gICAgdGhpcy5fbm9kZSA9IHY7XG4gICAgdGhpcy5sb2FkQ29tcG9uZW50KCk7XG4gIH1cblxuICBASW5wdXQoKVxuICBwYXJlbnROb2RlOiBBWFBXaWRnZXRCYXNlIHwgbnVsbDtcblxuICBASW5wdXQoKVxuICBpbmRleDogbnVtYmVyIHwgbnVsbDtcblxuICBwcm90ZWN0ZWQgbWVyZ2VkT3B0aW9uczogV3JpdGFibGVTaWduYWw8YW55PiA9IHNpZ25hbDxhbnk+KHt9KTtcblxuICBwcml2YXRlIGluamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcbiAgcHJvdGVjdGVkIGJ1aWxkZXJTZXJ2aWNlID0gaW5qZWN0KEFYUExheW91dEJ1aWxkZXJTZXJ2aWNlKTtcbiAgcHJvdGVjdGVkIHdpZGdldFJlZ2lzdGVyeSA9IGluamVjdChBWFBXaWRnZXRSZWdpc3RyeVNlcnZpY2UpO1xuICBwcm90ZWN0ZWQgdW5zdWJzY3JpYmVyID0gaW5qZWN0KEFYVW5zdWJzY3JpYmVyKTtcblxuICBwcm90ZWN0ZWQgaXNMb2FkaW5nID0gc2lnbmFsKHRydWUpO1xuICBwcml2YXRlIGluc3RhbmNlITogQVhQV2lkZ2V0QmFzZTtcbiAgcHJvdGVjdGVkIHBvcnRhbCE6IENvbXBvbmVudFBvcnRhbDxhbnk+O1xuICBwcml2YXRlIGV4cHJlc3Npb25DYWNoZTogTWFwPHN0cmluZywgKCkgPT4gUHJvbWlzZTxhbnk+PiA9IG5ldyBNYXAoKTtcbiAgcHJpdmF0ZSBleHByZXNzaW9uRXZhbHVhdG9yczogTWFwPHN0cmluZywgKCkgPT4gUHJvbWlzZTxhbnk+PiA9IG5ldyBNYXAoKTtcbiAgcHJpdmF0ZSBzY29wZTogYW55ID0gbnVsbDtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmJ1aWxkZXJTZXJ2aWNlLm9uQ2hhbmdlZC5waXBlKHRoaXMudW5zdWJzY3JpYmVyLnRha2VVbnRpbERlc3Ryb3kpLnN1YnNjcmliZShhc3luYyAoZSkgPT4ge1xuICAgICAgaWYgKChhd2FpdCB0aGlzLnVwZGF0ZU9wdGlvbnNCYXNlZE9uQ29udGV4dCgpKSA+IDApIHtcbiAgICAgICAgdGhpcy5hcHBseU9wdGlvbnMoKTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLmNoZWNrRm9ybXVsYUZvclVwZGF0ZSh0aGlzLm5vZGUuZm9ybXVsYSwgZS5wYXRoKSkge1xuICAgICAgICBhd2FpdCB0aGlzLnVwZGF0ZVZhbHVlQmFzZWRPbkZvcm11bGEoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgbG9hZENvbXBvbmVudCgpIHtcbiAgICB0aGlzLmlzTG9hZGluZy5zZXQodHJ1ZSk7XG4gICAgY29uc3Qgd2lkZ2V0ID0gdGhpcy53aWRnZXRSZWdpc3RlcnkucmVzb2x2ZSh0aGlzLm5vZGUudHlwZSk7XG4gICAgLy9cbiAgICBjb25zdCBwcm9wcyA9IHdpZGdldD8uY29tcG9uZW50c1t0aGlzLm5vZGUubW9kZV0ucHJvcGVydGllcz8uZmlsdGVyKGMgPT4gYy5zY2hlbWEuZGVmYXVsdFZhbHVlKVxuICAgICAgLm1hcChjID0+ICh7IFtjLm5hbWVdOiBjLnNjaGVtYS5kZWZhdWx0VmFsdWUgfSkpXG4gICAgICAucmVkdWNlKChhY2MsIGN1cnIpID0+IHtcbiAgICAgICAgcmV0dXJuIHsgLi4uYWNjLCAuLi5jdXJyIH07XG4gICAgICB9LCB7fSk7XG4gICAgLy9cbiAgICB0aGlzLm1lcmdlZE9wdGlvbnMuc2V0KFxuICAgICAgbWVyZ2UoY2xvbmVEZWVwKHdpZGdldD8uZGVmYXVsdE9wdGlvbnMpLCBwcm9wcywgdGhpcy5ub2RlLm9wdGlvbnMpIHx8IHt9XG4gICAgKTtcbiAgICB0aGlzLnByZXByb2Nlc3NBbmRJbml0aWFsT3B0aW9ucyhjbG9uZURlZXAodGhpcy5ub2RlLm9wdGlvbnMpKTtcbiAgICBhd2FpdCB0aGlzLnVwZGF0ZU9wdGlvbnNCYXNlZE9uQ29udGV4dCgpO1xuICAgIGNvbnN0IHRva2VuVmFsdWUgPSB7XG4gICAgICBuYW1lOiB0aGlzLm5vZGUubmFtZSxcbiAgICAgIHBhdGg6IHRoaXMubm9kZS5wYXRoLFxuICAgICAgbW9kZTogdGhpcy5ub2RlLm1vZGUsXG4gICAgICB0eXBlOiB0aGlzLm5vZGUudHlwZSxcbiAgICAgIGNoaWxkcmVuOiB0aGlzLm5vZGUuY2hpbGRyZW4sXG4gICAgICBvcHRpb25zOiB0aGlzLm1lcmdlZE9wdGlvbnMoKSxcbiAgICAgIGNvbmZpZzogd2lkZ2V0XG4gICAgfTtcbiAgICBjb25zdCB0b2tlbiA9IEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICBwYXJlbnQ6IHRoaXMuaW5qZWN0b3IsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IEFYUF9XSURHRVRfVE9LRU4sXG4gICAgICAgICAgdXNlVmFsdWU6IHRva2VuVmFsdWUsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0pO1xuICAgIHZhciBjb20gPSBhd2FpdCB3aWRnZXQ/LmNvbXBvbmVudHNbdGhpcy5ub2RlLm1vZGVdPy5jb21wb25lbnQoKTtcbiAgICB0aGlzLnBvcnRhbCA9IG5ldyBDb21wb25lbnRQb3J0YWwoY29tLCBudWxsLCB0b2tlbik7XG4gICAgdGhpcy5pc0xvYWRpbmcuc2V0KGZhbHNlKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBoYW5kbGVBdHRhY2hlZChwb3J0YWxPdXRsZXRSZWY6IENka1BvcnRhbE91dGxldEF0dGFjaGVkUmVmKSB7XG4gICAgcG9ydGFsT3V0bGV0UmVmID0gcG9ydGFsT3V0bGV0UmVmIGFzIENvbXBvbmVudFJlZjxBWFBXaWRnZXRCYXNlPjtcbiAgICB0aGlzLmluc3RhbmNlID0gcG9ydGFsT3V0bGV0UmVmLmluc3RhbmNlIGFzIEFYUFdpZGdldEJhc2U7XG4gICAgdGhpcy5pbnN0YW5jZS5wYXJlbnQgPSB0aGlzLnBhcmVudE5vZGU7XG4gICAgdGhpcy5pbnN0YW5jZS5pbmRleCA9IHRoaXMuaW5kZXg7XG4gICAgYXdhaXQgdGhpcy51cGRhdGVWYWx1ZUJhc2VkT25Gb3JtdWxhKCk7XG4gICAgYXdhaXQgdGhpcy5hc3NpZ25UcmlnZ2VycygpO1xuICB9XG5cbiAgcHJpdmF0ZSBhcHBseU9wdGlvbnMoKSB7XG4gICAgaWYgKCF0aGlzLmluc3RhbmNlKSByZXR1cm47XG4gICAgdGhpcy5pbnN0YW5jZS5zZXRPcHRpb25zKHRoaXMubWVyZ2VkT3B0aW9ucygpKTtcbiAgfVxuXG4gIHByaXZhdGUgY2hlY2tGb3JtdWxhRm9yVXBkYXRlKGZvcm11bGE6IHN0cmluZyB8IHVuZGVmaW5lZCwgcGF0aD86IHN0cmluZyB8IG51bGwpOiBib29sZWFuIHtcbiAgICBpZiAoZm9ybXVsYSkge1xuICAgICAgY29uc3QgcmVnZXggPSAvY29udGV4dFxcLmV2YWxcXCgnKFteJ10rKSdcXCkvZztcbiAgICAgIGNvbnN0IG1hdGNoZXMgPSBmb3JtdWxhLm1hdGNoKHJlZ2V4KTtcbiAgICAgIGNvbnN0IG5vZGVzID0gbWF0Y2hlcyA/IG1hdGNoZXMubWFwKChtYXRjaDogYW55KSA9PiBtYXRjaC5tYXRjaCgvJyhbXiddKyknLylbMV0pIDogW107XG4gICAgICByZXR1cm4gbm9kZXMuaW5jbHVkZXMocGF0aCk7XG4gICAgfSBlbHNlIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHByZXByb2Nlc3NBbmRJbml0aWFsT3B0aW9ucyhvYmo6IGFueSwgcGF0aFByZWZpeDogc3RyaW5nID0gJycpOiB2b2lkIHtcbiAgICBpZiAoIW9iaikgcmV0dXJuO1xuICAgIE9iamVjdC5lbnRyaWVzKG9iaikuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICBjb25zdCBjdXJyZW50UGF0aCA9IHBhdGhQcmVmaXggPyBgJHtwYXRoUHJlZml4fS4ke2tleX1gIDoga2V5O1xuICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgJiYgdmFsdWUuaW5jbHVkZXMoJ3t7JykpIHtcbiAgICAgICAgLy8gQ2FjaGUgZHluYW1pYyBleHByZXNzaW9uIGZvciBsYXRlciBldmFsdWF0aW9uXG4gICAgICAgIHRoaXMuZXhwcmVzc2lvbkV2YWx1YXRvcnMuc2V0KGN1cnJlbnRQYXRoLCAoKSA9PiB0aGlzLmV2YWx1YXRlRXhwcmVzc2lvbih2YWx1ZSkpO1xuICAgICAgfSBlbHNlIGlmICh0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnICYmIHZhbHVlICE9PSBudWxsICYmICh2YWx1ZS5jb25zdHJ1Y3RvciA9PT0gT2JqZWN0IHx8IEFycmF5LmlzQXJyYXkodmFsdWUpKSkge1xuICAgICAgICAvLyBSZWN1cnNpdmVseSBoYW5kbGUgbmVzdGVkIG9iamVjdHNcbiAgICAgICAgdGhpcy5wcmVwcm9jZXNzQW5kSW5pdGlhbE9wdGlvbnModmFsdWUsIGN1cnJlbnRQYXRoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIEFwcGx5IHN0YXRpYyB2YWx1ZXMgZGlyZWN0bHlcbiAgICAgICAgdGhpcy5tZXJnZWRPcHRpb25zLnVwZGF0ZSgoY3VycmVudE9wdGlvbnMpID0+IHtcbiAgICAgICAgICByZXR1cm4gc2V0KGN1cnJlbnRPcHRpb25zLCBjdXJyZW50UGF0aCwgdmFsdWUpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIHVwZGF0ZU9wdGlvbnNCYXNlZE9uQ29udGV4dCgpIHtcbiAgICBjb25zdCB1cGRhdGVzOiBhbnlbXSA9IFtdO1xuICAgIGZvciAobGV0IFtwYXRoLCBldmFsdWF0b3JdIG9mIHRoaXMuZXhwcmVzc2lvbkV2YWx1YXRvcnMpIHtcbiAgICAgIGNvbnN0IG5ld1ZhbHVlID0gYXdhaXQgZXZhbHVhdG9yKCk7XG4gICAgICB1cGRhdGVzLnB1c2goeyBwYXRoLCBuZXdWYWx1ZSB9KTtcbiAgICB9XG4gICAgLy8gQXBwbHkgdXBkYXRlcyB0byBtZXJnZWRPcHRpb25zXG4gICAgaWYgKHVwZGF0ZXMubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy5tZXJnZWRPcHRpb25zLnVwZGF0ZSgobykgPT4ge1xuICAgICAgICBjb25zdCB1cGRhdGVkT3B0aW9ucyA9IHsgLi4ubyB9O1xuICAgICAgICB1cGRhdGVzLmZvckVhY2goKHsgcGF0aCwgbmV3VmFsdWUgfSkgPT4ge1xuICAgICAgICAgIC8vIFNldCB0aGUgbmV3IHZhbHVlIGluIHRoZSB1cGRhdGVkT3B0aW9ucyBvYmplY3QgYnkgcGF0aFxuICAgICAgICAgIHNldCh1cGRhdGVkT3B0aW9ucywgcGF0aCwgbmV3VmFsdWUpOyAvLyBBc3N1bWluZyAnc2V0JyBjYW4gaGFuZGxlIHBhdGhzIGxpa2UgJ3Byb3BlcnR5LnN1YnByb3BlcnR5J1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHVwZGF0ZWRPcHRpb25zO1xuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiB1cGRhdGVzLmxlbmd0aDtcbiAgfVxuXG4gIGFzeW5jIHVwZGF0ZVZhbHVlQmFzZWRPbkZvcm11bGEoKSB7XG4gICAgaWYgKHRoaXMubm9kZS5mb3JtdWxhKSB7XG4gICAgICBjb25zdCB2YWx1ZSA9IGF3YWl0IHRoaXMuZXZhbHVhdGVFeHByZXNzaW9uKHRoaXMubm9kZS5mb3JtdWxhKTtcbiAgICAgIHRoaXMuaW5zdGFuY2Uuc2V0VmFsdWUodmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZXZhbHVhdGVFeHByZXNzaW9uKHRlbXBsYXRlRXhwcmVzc2lvbjogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICB0cnkge1xuICAgICAgLy8gQ2hlY2sgY2FjaGUgZmlyc3QsIGJ1dCBjYWNoZSB0aGUgZnVuY3Rpb24gZm9yIGV2YWx1YXRpb24sIG5vdCB0aGUgZXZhbHVhdGVkIHZhbHVlXG4gICAgICBpZiAoIXRoaXMuZXhwcmVzc2lvbkNhY2hlLmhhcyh0ZW1wbGF0ZUV4cHJlc3Npb24pKSB7XG4gICAgICAgIGNvbnN0IGV4cHJlc3Npb25NYXRjaCA9IHRlbXBsYXRlRXhwcmVzc2lvbi5tYXRjaCgvXFx7XFx7XFxzKiguKj8pXFxzKlxcfVxcfS8pO1xuICAgICAgICBpZiAoIWV4cHJlc3Npb25NYXRjaCkge1xuICAgICAgICAgIHRocm93IEVycm9yKGBObyB2YWxpZCBleHByZXNzaW9uIGZvdW5kIGluIFwiJHt0ZW1wbGF0ZUV4cHJlc3Npb259XCJgKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBleHByZXNzaW9uID0gZXhwcmVzc2lvbk1hdGNoWzFdO1xuXG4gICAgICAgIC8vIENhY2hlIHRoZSBldmFsdWF0aW9uIGZ1bmN0aW9uIGluc3RlYWQgb2YgdGhlIHJlc3VsdFxuICAgICAgICBjb25zdCBzY29wZSA9IHRoaXMuZ2V0R2xvYmFsU2NvcGUoKTtcbiAgICAgICAgY29uc3QgZXZhbHVhdGlvbkZ1bmN0aW9uID0gYXN5bmMgKCkgPT4ge1xuICAgICAgICAgIGNvbnN0IHNhbmRib3ggPSBuZXcgRnVuY3Rpb24oJ3Njb3BlJywgYHdpdGggKHNjb3BlKSB7IHJldHVybiAoYXN5bmMgZnVuY3Rpb24oKSB7IHJldHVybiAke2V4cHJlc3Npb259OyB9KSgpOyB9YCk7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IHNhbmRib3goc2NvcGUpO1xuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMuZXhwcmVzc2lvbkNhY2hlLnNldCh0ZW1wbGF0ZUV4cHJlc3Npb24sIGV2YWx1YXRpb25GdW5jdGlvbik7XG4gICAgICB9XG5cbiAgICAgIC8vIFJldHJpZXZlIHRoZSBmdW5jdGlvbiBmcm9tIHRoZSBjYWNoZSBhbmQgY2FsbCBpdCB0byBldmFsdWF0ZSB0aGUgZXhwcmVzc2lvblxuICAgICAgY29uc3QgZXZhbHVhdGUgPSB0aGlzLmV4cHJlc3Npb25DYWNoZS5nZXQodGVtcGxhdGVFeHByZXNzaW9uKTtcbiAgICAgIGlmIChldmFsdWF0ZSkge1xuICAgICAgICAvLyBFbnN1cmUgJ2V2YWx1YXRlJyBpcyBub3QgdW5kZWZpbmVkIGJlZm9yZSBpbnZva2luZ1xuICAgICAgICByZXR1cm4gYXdhaXQgZXZhbHVhdGUoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRocm93IEVycm9yKGBGYWlsZWQgdG8gcmV0cmlldmUgZXZhbHVhdGlvbiBmdW5jdGlvbiBmb3IgZXhwcmVzc2lvbjogXCIke3RlbXBsYXRlRXhwcmVzc2lvbn1cImApO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBldmFsdWF0aW5nIGV4cHJlc3Npb246JywgZXJyb3IpO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0R2xvYmFsU2NvcGUoKSB7XG4gICAgaWYgKHRoaXMuc2NvcGUpIHJldHVybiB0aGlzLnNjb3BlO1xuICAgIHRoaXMuc2NvcGUgPSB7fTtcbiAgICBzZXQodGhpcy5zY29wZSwgJ2NvbnRleHQnLCB0aGlzLmdldENvbnRleHRTY29wZSgpKTtcbiAgICBzZXQodGhpcy5zY29wZSwgJ2V2ZW50cycsIHRoaXMuZ2V0RXZlbnRTY29wZSgpKTtcbiAgICBzZXQodGhpcy5zY29wZSwgJ3dpZGdldCcsIHRoaXMuZ2V0V2lkZ2V0U2NvcGUoKSk7XG4gICAgc2V0KHRoaXMuc2NvcGUsICdtZXRob2RzJywgdGhpcy5nZXRGdW5jdGlvblNjb3BlKCkpO1xuICAgIHNldCh0aGlzLnNjb3BlLCAndmFycycsIHRoaXMuZ2V0VmFyaWFibGVzU2NvcGUoKSk7XG4gICAgcmV0dXJuIHRoaXMuc2NvcGU7XG4gIH1cblxuICBwcml2YXRlIGdldENvbnRleHRTY29wZSgpOiBhbnkge1xuICAgIGNvbnN0IHNjb3BlOiBhbnkgPSB7fTtcbiAgICBzZXQoc2NvcGUsICdldmFsJywgKHBhdGg6IHN0cmluZykgPT4gdGhpcy5idWlsZGVyU2VydmljZS5nZXRWYWx1ZShwYXRoKSk7XG4gICAgcmV0dXJuIHNjb3BlO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRFdmVudFNjb3BlKCk6IGFueSB7XG4gICAgY29uc3Qgc2NvcGU6IGFueSA9IHt9O1xuICAgIHNldChzY29wZSwgJ2NvbnRleHQnLCAocGF0aDogc3RyaW5nKSA9PiB0aGlzLmJ1aWxkZXJTZXJ2aWNlLm9uQ2hhbmdlZC5waXBlKGZpbHRlcigoYykgPT4gYy5wYXRoID09IHBhdGgpKSk7XG4gICAgc2V0KHNjb3BlLCAnZnJvbScsIChldmVudDogc3RyaW5nKSA9PiBnZXQodGhpcy5pbnN0YW5jZS5hcGkoKSwgZXZlbnQpKTtcbiAgICByZXR1cm4gc2NvcGU7XG4gIH1cblxuICBwcml2YXRlIGdldFdpZGdldFNjb3BlKCk6IGFueSB7XG4gICAgY29uc3Qgc2NvcGU6IGFueSA9IHt9O1xuICAgIHNldChzY29wZSwgJ2NhbGwnLCAobmFtZTogc3RyaW5nLCAuLi5hcmdzOiBhbnlbXSkgPT4ge1xuICAgICAgdGhpcy5pbnN0YW5jZS5jYWxsKG5hbWUsIC4uLmFyZ3MpO1xuICAgIH0pO1xuICAgIHNldChzY29wZSwgJ2ZpbmQnLCAoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgcmV0dXJuIHRoaXMuYnVpbGRlclNlcnZpY2UuZ2V0V2lkZ2V0KGlkKT8uYXBpKCk7XG4gICAgfSk7XG4gICAgcmV0dXJuIHNjb3BlO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGdW5jdGlvblNjb3BlKCk6IGFueSB7XG4gICAgY29uc3Qgc2NvcGU6IGFueSA9IHt9O1xuICAgIHNldChzY29wZSwgJ3N1bScsICh2YWx1ZXM6IGFueSkgPT4ge1xuICAgICAgcmV0dXJuIHN1bSh2YWx1ZXMpO1xuICAgIH0pO1xuICAgIE9iamVjdC5lbnRyaWVzKHRoaXMuYnVpbGRlclNlcnZpY2UuZnVuY3Rpb25zKS5mb3JFYWNoKChpKSA9PiB7XG4gICAgICBzZXQoc2NvcGUsIGlbMF0sICguLi5hcmdzOiBhbnlbXSkgPT4ge1xuICAgICAgICByZXR1cm4gaVsxXSguLi5hcmdzKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICAgIHJldHVybiBzY29wZTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0VmFyaWFibGVzU2NvcGUoKTogYW55IHtcbiAgICBjb25zdCBzY29wZTogYW55ID0ge307XG4gICAgc2V0KHNjb3BlLCAnZXZhbCcsIChwYXRoOiBzdHJpbmcpID0+IGdldCh0aGlzLmJ1aWxkZXJTZXJ2aWNlLnZhcmlhYmxlcywgcGF0aCkpO1xuICAgIHJldHVybiBzY29wZTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgYXNzaWduVHJpZ2dlcnMoKSB7XG4gICAgdGhpcy5ub2RlLnRyaWdnZXJzPy5mb3JFYWNoKCh0KSA9PiB7XG4gICAgICBjb25zdCBldmVudCA9IHRoaXMuZXZhbHVhdGVUcmlnZ2VyKHQuZXZlbnQpO1xuICAgICAgZXZlbnQ/LnBpcGUodGhpcy51bnN1YnNjcmliZXIudGFrZVVudGlsRGVzdHJveSkuc3Vic2NyaWJlKChjKSA9PiB7XG4gICAgICAgIHRoaXMuZXZhbHVhdGVBY3Rpb24odC5hY3Rpb24pO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGV2YWx1YXRlVHJpZ2dlcih0ZW1wbGF0ZUV4cHJlc3Npb246IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB8IG51bGwge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBleHByZXNzaW9uTWF0Y2ggPSB0ZW1wbGF0ZUV4cHJlc3Npb24ubWF0Y2goL1xce1xce1xccyooLio/KVxccypcXH1cXH0vKTtcbiAgICAgIGlmICghZXhwcmVzc2lvbk1hdGNoKSB7XG4gICAgICAgIHRocm93IEVycm9yKGBObyB2YWxpZCBleHByZXNzaW9uIGZvdW5kIGluIFwiJHt0ZW1wbGF0ZUV4cHJlc3Npb259XCJgKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGV4cHJlc3Npb24gPSBleHByZXNzaW9uTWF0Y2hbMV07XG5cbiAgICAgIC8vIENhY2hlIHRoZSBldmFsdWF0aW9uIGZ1bmN0aW9uIGluc3RlYWQgb2YgdGhlIHJlc3VsdFxuICAgICAgY29uc3Qgc2NvcGUgPSB0aGlzLmdldEdsb2JhbFNjb3BlKCk7XG4gICAgICBjb25zdCBzYW5kYm94ID0gbmV3IEZ1bmN0aW9uKCdzY29wZScsIGB3aXRoIChzY29wZSkgeyByZXR1cm4gKCAgZnVuY3Rpb24oKSB7IHJldHVybiAke2V4cHJlc3Npb259OyB9KSgpOyB9YCk7XG4gICAgICByZXR1cm4gc2FuZGJveChzY29wZSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGV2YWx1YXRpbmcgZXhwcmVzc2lvbjonLCBlcnJvcik7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGV2YWx1YXRlQWN0aW9uKHRlbXBsYXRlRXhwcmVzc2lvbjogc3RyaW5nKSB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGV4cHJlc3Npb25NYXRjaCA9IHRlbXBsYXRlRXhwcmVzc2lvbi5tYXRjaCgvXFx7XFx7XFxzKiguKj8pXFxzKlxcfVxcfS8pO1xuICAgICAgaWYgKCFleHByZXNzaW9uTWF0Y2gpIHtcbiAgICAgICAgdGhyb3cgRXJyb3IoYE5vIHZhbGlkIGV4cHJlc3Npb24gZm91bmQgaW4gXCIke3RlbXBsYXRlRXhwcmVzc2lvbn1cImApO1xuICAgICAgfVxuICAgICAgY29uc3QgZXhwcmVzc2lvbiA9IGV4cHJlc3Npb25NYXRjaFsxXTtcblxuICAgICAgLy8gQ2FjaGUgdGhlIGV2YWx1YXRpb24gZnVuY3Rpb24gaW5zdGVhZCBvZiB0aGUgcmVzdWx0XG4gICAgICBjb25zdCBzY29wZTogYW55ID0gdGhpcy5nZXRHbG9iYWxTY29wZSgpO1xuICAgICAgY29uc3Qgc2FuZGJveCA9IG5ldyBGdW5jdGlvbignc2NvcGUnLCBgd2l0aCAoc2NvcGUpIHsgICR7ZXhwcmVzc2lvbn0gfWApO1xuICAgICAgc2FuZGJveChzY29wZSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGV2YWx1YXRpbmcgZXhwcmVzc2lvbjonLCBlcnJvcik7XG4gICAgfVxuICB9XG59XG4iXX0=