@acorex/platform 18.2.3 → 19.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/common/lib/app/app-startup.service.d.ts +1 -2
- package/common/lib/app/application.types.d.ts +3 -3
- package/common/lib/schema/entity/entity.class.d.ts +1 -1
- package/core/index.d.ts +1 -0
- package/core/utils/highlighter.d.ts +43 -0
- package/fesm2022/acorex-platform-auth.mjs +27 -29
- package/fesm2022/acorex-platform-auth.mjs.map +1 -1
- package/fesm2022/{acorex-platform-common-avatar-widget-edit.component-DtC2IaE8.mjs → acorex-platform-common-avatar-widget-edit.component-syRKKn21.mjs} +6 -26
- package/fesm2022/acorex-platform-common-avatar-widget-edit.component-syRKKn21.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-avatar-widget-view.component-BOIV0Be1.mjs → acorex-platform-common-avatar-widget-view.component-DSju_bgg.mjs} +6 -28
- package/fesm2022/acorex-platform-common-avatar-widget-view.component-DSju_bgg.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-boolean-widget-filter.component-S4-3SmKA.mjs → acorex-platform-common-boolean-widget-filter.component-aaKT0FyC.mjs} +6 -26
- package/fesm2022/acorex-platform-common-boolean-widget-filter.component-aaKT0FyC.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-change-password.component-g_GEw3IZ.mjs → acorex-platform-common-change-password.component-DFoC5nP2.mjs} +7 -8
- package/fesm2022/acorex-platform-common-change-password.component-DFoC5nP2.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-checkbox-widget-column.component-DOoneR7g.mjs → acorex-platform-common-checkbox-widget-column.component-DZxykkVr.mjs} +6 -28
- package/fesm2022/acorex-platform-common-checkbox-widget-column.component-DZxykkVr.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-checkbox-widget-edit.component-PFRq-XS-.mjs → acorex-platform-common-checkbox-widget-edit.component-CNmYVpMu.mjs} +6 -29
- package/fesm2022/acorex-platform-common-checkbox-widget-edit.component-CNmYVpMu.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-checkbox-widget-view.component-CKz8XnjT.mjs → acorex-platform-common-checkbox-widget-view.component-3XLnJx9A.mjs} +6 -28
- package/fesm2022/acorex-platform-common-checkbox-widget-view.component-3XLnJx9A.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-dateTime-widget-column.component-DG0leXAo.mjs → acorex-platform-common-dateTime-widget-column.component-CKaMC189.mjs} +6 -27
- package/fesm2022/acorex-platform-common-dateTime-widget-column.component-CKaMC189.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-dateTime-widget-edit.component-D8W-XEcx.mjs → acorex-platform-common-dateTime-widget-edit.component-B50J-bwp.mjs} +6 -26
- package/fesm2022/acorex-platform-common-dateTime-widget-edit.component-B50J-bwp.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-dateTime-widget-filter.component-DngCKwFY.mjs → acorex-platform-common-dateTime-widget-filter.component-CTV2a3c0.mjs} +6 -24
- package/fesm2022/acorex-platform-common-dateTime-widget-filter.component-CTV2a3c0.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-dateTime-widget-view.component-KGgJkiKB.mjs → acorex-platform-common-dateTime-widget-view.component-C7hmUXLz.mjs} +6 -27
- package/fesm2022/acorex-platform-common-dateTime-widget-view.component-C7hmUXLz.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-email-widget-column.component-CLNqSuB7.mjs → acorex-platform-common-email-widget-column.component-BPoSZTqM.mjs} +6 -29
- package/fesm2022/acorex-platform-common-email-widget-column.component-BPoSZTqM.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-email-widget-edit.component--0gaRm4s.mjs → acorex-platform-common-email-widget-edit.component-aLPGOG3r.mjs} +6 -27
- package/fesm2022/acorex-platform-common-email-widget-edit.component-aLPGOG3r.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-email-widget-view.component-C3AUr1HO.mjs → acorex-platform-common-email-widget-view.component-dMByK5bc.mjs} +5 -27
- package/fesm2022/acorex-platform-common-email-widget-view.component-dMByK5bc.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-file-widget-column.component-C9AHk2UP.mjs → acorex-platform-common-file-widget-column.component-Dafc2zLc.mjs} +6 -27
- package/fesm2022/acorex-platform-common-file-widget-column.component-Dafc2zLc.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-file-widget-edit.component-L7bln9k0.mjs → acorex-platform-common-file-widget-edit.component-C31kfJSw.mjs} +6 -27
- package/fesm2022/acorex-platform-common-file-widget-edit.component-C31kfJSw.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-file-widget-filter.component-Ce35mqny.mjs → acorex-platform-common-file-widget-filter.component-BNCcBun4.mjs} +6 -29
- package/fesm2022/acorex-platform-common-file-widget-filter.component-BNCcBun4.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-file-widget-view.component-BvMzrs5C.mjs → acorex-platform-common-file-widget-view.component-T3r6musY.mjs} +6 -27
- package/fesm2022/acorex-platform-common-file-widget-view.component-T3r6musY.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-gallery-widget-edit.component-BVuV2Ib8.mjs → acorex-platform-common-gallery-widget-edit.component-zBsaBkzu.mjs} +6 -26
- package/fesm2022/acorex-platform-common-gallery-widget-edit.component-zBsaBkzu.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-gallery-widget-filter.component-C8tdM6PX.mjs → acorex-platform-common-gallery-widget-filter.component-BhLYuB6p.mjs} +6 -28
- package/fesm2022/acorex-platform-common-gallery-widget-filter.component-BhLYuB6p.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-gallery-widget-view.component-D8YmSi9C.mjs → acorex-platform-common-gallery-widget-view.component-Dxf4Oj1E.mjs} +6 -26
- package/fesm2022/acorex-platform-common-gallery-widget-view.component-Dxf4Oj1E.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-largetext-widget-edit.component-DGMxpnsr.mjs → acorex-platform-common-largetext-widget-edit.component-BYMIaLCI.mjs} +5 -27
- package/fesm2022/acorex-platform-common-largetext-widget-edit.component-BYMIaLCI.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-lookup-widget-column.component-B-cEaNjv.mjs → acorex-platform-common-lookup-widget-column.component-BB0Mdx2u.mjs} +6 -28
- package/fesm2022/acorex-platform-common-lookup-widget-column.component-BB0Mdx2u.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-lookup-widget-edit.component-DqB_g9Zz.mjs → acorex-platform-common-lookup-widget-edit.component-DUPsS_ZW.mjs} +6 -28
- package/fesm2022/acorex-platform-common-lookup-widget-edit.component-DUPsS_ZW.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-lookup-widget-filter.component-0TPWNWSd.mjs → acorex-platform-common-lookup-widget-filter.component-CLyl94AJ.mjs} +6 -26
- package/fesm2022/acorex-platform-common-lookup-widget-filter.component-CLyl94AJ.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-lookup-widget-view.component-DYAg76YH.mjs → acorex-platform-common-lookup-widget-view.component-CJijszjn.mjs} +6 -28
- package/fesm2022/acorex-platform-common-lookup-widget-view.component-CJijszjn.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-map-widget-edit.component-C3cpsXD5.mjs → acorex-platform-common-map-widget-edit.component-BTHORlG5.mjs} +6 -27
- package/fesm2022/acorex-platform-common-map-widget-edit.component-BTHORlG5.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-map-widget-view.component-C-DCNaJi.mjs → acorex-platform-common-map-widget-view.component-CQzW1ZeD.mjs} +6 -27
- package/fesm2022/acorex-platform-common-map-widget-view.component-CQzW1ZeD.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-messenger-widget-column.component-B2A7ZBEP.mjs → acorex-platform-common-messenger-widget-column.component-Brm4vLGA.mjs} +6 -29
- package/fesm2022/acorex-platform-common-messenger-widget-column.component-Brm4vLGA.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-messenger-widget-edit.component-DC8vQDo0.mjs → acorex-platform-common-messenger-widget-edit.component-CJHvut2C.mjs} +6 -27
- package/fesm2022/acorex-platform-common-messenger-widget-edit.component-CJHvut2C.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-messenger-widget-view.component-B6FavkmG.mjs → acorex-platform-common-messenger-widget-view.component-DVylp_2t.mjs} +6 -28
- package/fesm2022/acorex-platform-common-messenger-widget-view.component-DVylp_2t.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-number-widget-edit.component-Bc5-ZUw4.mjs → acorex-platform-common-number-widget-edit.component-DZf-n-yr.mjs} +6 -27
- package/fesm2022/acorex-platform-common-number-widget-edit.component-DZf-n-yr.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-number-widget-filter.component-DxfJ90n4.mjs → acorex-platform-common-number-widget-filter.component-womVAhSr.mjs} +6 -28
- package/fesm2022/acorex-platform-common-number-widget-filter.component-womVAhSr.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-number-widget-view.component-DGfLSGw1.mjs → acorex-platform-common-number-widget-view.component-L2pxAqqz.mjs} +5 -27
- package/fesm2022/acorex-platform-common-number-widget-view.component-L2pxAqqz.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-password-widget-column.component-DEHaVLGK.mjs → acorex-platform-common-password-widget-column.component-3ubqJk-d.mjs} +6 -28
- package/fesm2022/acorex-platform-common-password-widget-column.component-3ubqJk-d.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-password-widget-edit.component-DrYyu5v-.mjs → acorex-platform-common-password-widget-edit.component-BokyEDfK.mjs} +6 -28
- package/fesm2022/acorex-platform-common-password-widget-edit.component-BokyEDfK.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-password-widget-view.component-B_HU-3J1.mjs → acorex-platform-common-password-widget-view.component-BuFoE2fz.mjs} +7 -28
- package/fesm2022/acorex-platform-common-password-widget-view.component-BuFoE2fz.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-phone-widget-column.component-D99ncxxJ.mjs → acorex-platform-common-phone-widget-column.component-79Me_VNP.mjs} +6 -29
- package/fesm2022/acorex-platform-common-phone-widget-column.component-79Me_VNP.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-phone-widget-edit.component-a5EAI9FK.mjs → acorex-platform-common-phone-widget-edit.component-CIayMoT1.mjs} +6 -26
- package/fesm2022/acorex-platform-common-phone-widget-edit.component-CIayMoT1.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-phone-widget-view.component-BlFVuoNN.mjs → acorex-platform-common-phone-widget-view.component-B1Xu_rxC.mjs} +6 -28
- package/fesm2022/acorex-platform-common-phone-widget-view.component-B1Xu_rxC.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-rich-text-widget-column.component-DOdv5I2s.mjs → acorex-platform-common-rich-text-widget-column.component-Dbn3JMOu.mjs} +6 -29
- package/fesm2022/acorex-platform-common-rich-text-widget-column.component-Dbn3JMOu.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-rich-text-widget-edit.component-DL5UyAqe.mjs → acorex-platform-common-rich-text-widget-edit.component-CHT12edE.mjs} +6 -27
- package/fesm2022/acorex-platform-common-rich-text-widget-edit.component-CHT12edE.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-rich-text-widget-view.component-B9WB-mx9.mjs → acorex-platform-common-rich-text-widget-view.component-qvUpx39D.mjs} +5 -27
- package/fesm2022/acorex-platform-common-rich-text-widget-view.component-qvUpx39D.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-selection-list-widget-column.component-CkOuYy0Z.mjs → acorex-platform-common-selection-list-widget-column.component-E7yRTViz.mjs} +6 -29
- package/fesm2022/acorex-platform-common-selection-list-widget-column.component-E7yRTViz.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-selection-list-widget-edit.component-BmbDQ1LH.mjs → acorex-platform-common-selection-list-widget-edit.component-B8dmJ_jJ.mjs} +6 -28
- package/fesm2022/acorex-platform-common-selection-list-widget-edit.component-B8dmJ_jJ.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-selection-list-widget-filter.component-Dm_1-7eT.mjs → acorex-platform-common-selection-list-widget-filter.component-i4syx0Bj.mjs} +6 -27
- package/fesm2022/acorex-platform-common-selection-list-widget-filter.component-i4syx0Bj.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-selection-list-widget-view.component-3hinF85C.mjs → acorex-platform-common-selection-list-widget-view.component-B7disiIF.mjs} +6 -29
- package/fesm2022/acorex-platform-common-selection-list-widget-view.component-B7disiIF.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-signature-pad-widget-edit.component-DmmPbw-A.mjs → acorex-platform-common-signature-pad-widget-edit.component-CMoiIhgJ.mjs} +6 -26
- package/fesm2022/acorex-platform-common-signature-pad-widget-edit.component-CMoiIhgJ.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-signature-pad-widget-view.component-DkFaMNk8.mjs → acorex-platform-common-signature-pad-widget-view.component-HfArY6VQ.mjs} +6 -27
- package/fesm2022/acorex-platform-common-signature-pad-widget-view.component-HfArY6VQ.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-string-widget-filter.component-DAqR2PUN.mjs → acorex-platform-common-string-widget-filter.component-CDssxMLR.mjs} +6 -28
- package/fesm2022/acorex-platform-common-string-widget-filter.component-CDssxMLR.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-text-widget-column.component-DVczwvKA.mjs → acorex-platform-common-text-widget-column.component-7yp4qqIb.mjs} +5 -27
- package/fesm2022/acorex-platform-common-text-widget-column.component-7yp4qqIb.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-text-widget-edit.component-DC_GnFhe.mjs → acorex-platform-common-text-widget-edit.component-5koh5Aws.mjs} +6 -27
- package/fesm2022/acorex-platform-common-text-widget-edit.component-5koh5Aws.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-text-widget-view.component-BK3HZGgb.mjs → acorex-platform-common-text-widget-view.component-BH0LTD80.mjs} +5 -27
- package/fesm2022/{acorex-platform-common-text-widget-view.component-BK3HZGgb.mjs.map → acorex-platform-common-text-widget-view.component-BH0LTD80.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-common-toggle-widget-column.component-Bp1d7SAE.mjs → acorex-platform-common-toggle-widget-column.component-C5dMjerm.mjs} +6 -28
- package/fesm2022/acorex-platform-common-toggle-widget-column.component-C5dMjerm.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-toggle-widget-edit.component-D64m4agx.mjs → acorex-platform-common-toggle-widget-edit.component-JOnGMn-9.mjs} +6 -27
- package/fesm2022/acorex-platform-common-toggle-widget-edit.component-JOnGMn-9.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-toggle-widget-view.component-BTaXXZ88.mjs → acorex-platform-common-toggle-widget-view.component-DguoIz_c.mjs} +6 -28
- package/fesm2022/acorex-platform-common-toggle-widget-view.component-DguoIz_c.mjs.map +1 -0
- package/fesm2022/acorex-platform-common.mjs +197 -190
- package/fesm2022/acorex-platform-common.mjs.map +1 -1
- package/fesm2022/acorex-platform-core.mjs +114 -7
- package/fesm2022/acorex-platform-core.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-builder.mjs +72 -61
- package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-designer.mjs +374 -234
- package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-entity.mjs +916 -897
- package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-setting.mjs +247 -44
- package/fesm2022/acorex-platform-layout-setting.mjs.map +1 -1
- package/fesm2022/{acorex-platform-layouts-entity-create-view.component-JsGlDx_S.mjs → acorex-platform-layouts-entity-create-view.component-1Yw4H3CW.mjs} +6 -6
- package/fesm2022/acorex-platform-layouts-entity-create-view.component-1Yw4H3CW.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layouts-entity-import-view.component-9FK_Iro9.mjs → acorex-platform-layouts-entity-import-view.component-BIHTWoXR.mjs} +7 -9
- package/fesm2022/acorex-platform-layouts-entity-import-view.component-BIHTWoXR.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layouts-entity-modify-view.component-CNbc8ewu.mjs → acorex-platform-layouts-entity-modify-view.component-Cb2Yvtav.mjs} +7 -9
- package/fesm2022/acorex-platform-layouts-entity-modify-view.component-Cb2Yvtav.mjs.map +1 -0
- package/fesm2022/acorex-platform-layouts.mjs +99 -88
- package/fesm2022/acorex-platform-layouts.mjs.map +1 -1
- package/fesm2022/acorex-platform-native.mjs +7 -7
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-Bw-rbKbL.mjs +108 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-Bw-rbKbL.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-DJYTC375.mjs +305 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-DJYTC375.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-default-entity-master-modify-view.component-wPZPhMgy.mjs → acorex-platform-themes-default-entity-master-modify-view.component-DoeGBemE.mjs} +17 -18
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-DoeGBemE.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-D8UjpvuI.mjs +130 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-D8UjpvuI.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-default-error-401.component-D5QQ2HAv.mjs → acorex-platform-themes-default-error-401.component-CRMYVnTw.mjs} +5 -5
- package/fesm2022/acorex-platform-themes-default-error-401.component-CRMYVnTw.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-default-error-404.component-DSY_D3Iq.mjs → acorex-platform-themes-default-error-404.component-Dc_IGKXu.mjs} +5 -5
- package/fesm2022/acorex-platform-themes-default-error-404.component-Dc_IGKXu.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-default-error-offline.component-B6wSkMdd.mjs → acorex-platform-themes-default-error-offline.component-C6raiMLq.mjs} +5 -5
- package/fesm2022/acorex-platform-themes-default-error-offline.component-C6raiMLq.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default.mjs +182 -286
- package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
- package/fesm2022/acorex-platform-themes-shared.mjs +8 -9
- package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
- package/fesm2022/{acorex-platform-widgets-button-widget-designer.component-CPFA79Gx.mjs → acorex-platform-widgets-button-widget-designer.component-BQe1zP7P.mjs} +6 -7
- package/fesm2022/acorex-platform-widgets-button-widget-designer.component-BQe1zP7P.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-checkbox-widget-column.component-MInF2GVN.mjs → acorex-platform-widgets-checkbox-widget-column.component-05nKV-UV.mjs} +6 -7
- package/fesm2022/acorex-platform-widgets-checkbox-widget-column.component-05nKV-UV.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-checkbox-widget-designer.component-B7Qv2aYx.mjs → acorex-platform-widgets-checkbox-widget-designer.component-RCi5IJOR.mjs} +6 -7
- package/fesm2022/acorex-platform-widgets-checkbox-widget-designer.component-RCi5IJOR.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-checkbox-widget-view.component-DP4kITs-.mjs → acorex-platform-widgets-checkbox-widget-view.component-BkWcZ4K9.mjs} +6 -7
- package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-BkWcZ4K9.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-color-box-widget-designer.component-uQBHAspe.mjs → acorex-platform-widgets-color-box-widget-designer.component-CWhbgmDV.mjs} +6 -7
- package/fesm2022/acorex-platform-widgets-color-box-widget-designer.component-CWhbgmDV.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-contact-widget-filter.component-DnQZon-E.mjs → acorex-platform-widgets-contact-widget-filter.component-B1HiCGC6.mjs} +5 -6
- package/fesm2022/acorex-platform-widgets-contact-widget-filter.component-B1HiCGC6.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-page-widget-designer.component-DOulAanE.mjs → acorex-platform-widgets-page-widget-designer.component-DGNcuRbs.mjs} +21 -11
- package/fesm2022/acorex-platform-widgets-page-widget-designer.component-DGNcuRbs.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-rich-text-popup.component-C8KmObPV.mjs → acorex-platform-widgets-rich-text-popup.component-D7LZqQIO.mjs} +6 -7
- package/fesm2022/acorex-platform-widgets-rich-text-popup.component-D7LZqQIO.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-text-block-widget-designer.component-BE6goaZc.mjs → acorex-platform-widgets-text-block-widget-designer.component-BToPbMjj.mjs} +6 -7
- package/fesm2022/acorex-platform-widgets-text-block-widget-designer.component-BToPbMjj.mjs.map +1 -0
- package/fesm2022/acorex-platform-widgets.mjs +576 -876
- package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
- package/fesm2022/acorex-platform-workflow.mjs +23 -23
- package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
- package/layout/builder/lib/builder/widget-column-renderer.d.ts +1 -1
- package/layout/builder/lib/builder/widget.types.d.ts +21 -5
- package/layout/designer/lib/designer/components/add-widget-button/add-widget-mini-button.component.d.ts +3 -1
- package/layout/designer/lib/designer/components/board/board.component.d.ts +4 -3
- package/layout/designer/lib/designer/designer.component.d.ts +1 -1
- package/layout/designer/lib/designer/shared/designer-connector.service.d.ts +2 -2
- package/layout/designer/lib/designer/shared/designer.service.d.ts +10 -4
- package/layout/designer/lib/designer/shared/designer.types.d.ts +11 -0
- package/layout/designer/lib/designer/shared/generic-commands.types.d.ts +1 -0
- package/layout/designer/lib/designer/shared/widget-designer-renderer.directive.d.ts +7 -5
- package/layout/designer/lib/property-viewer/widget-property-viewer.component.d.ts +1 -1
- package/layout/entity/lib/entity-master-create.viewmodel.d.ts +10 -5
- package/layout/entity/lib/entity-master-list.viewmodel.d.ts +11 -4
- package/layout/entity/lib/index.d.ts +4 -3
- package/layout/entity/lib/workflows/create-entity.workflow.d.ts +2 -0
- package/layout/setting/README.md +2 -3
- package/{themes/default/lib/layouts/setting-layout → layout/setting/lib}/convert-setting-data.d.ts +7 -6
- package/layout/setting/lib/setting.viewmodel.d.ts +38 -9
- package/layouts/lib/admin/entity-layout/entity-list-view/entity-list-view.component.d.ts +12 -0
- package/layouts/lib/admin/entity-layout/workflows/create-entity.workflow.d.ts +2 -0
- package/package.json +8 -36
- package/themes/default/lib/default.module.d.ts +3 -4
- package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.d.ts +1 -4
- package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-columns/list-view-option-columns.component.d.ts +3 -0
- package/themes/default/lib/layouts/entity-layouts/entity-master-modify-view/entity-master-modify-view.component.d.ts +1 -1
- package/themes/default/lib/layouts/setting-layout/index.d.ts +2 -2
- package/themes/default/lib/layouts/setting-layout/setting-menu/setting-menu.component.d.ts +12 -0
- package/themes/default/lib/layouts/setting-layout/setting-view/setting-view.component.d.ts +7 -0
- package/widgets/lib/properties/editors.props.d.ts +1 -0
- package/widgets/lib/widgets/advance/cron-job/cron-job-widget-edit.component.d.ts +1 -2
- package/widgets/lib/widgets/advance/file/file-box-widget-view.component.d.ts +1 -1
- package/widgets/lib/widgets/editors/select/select-box-widget-edit.component.d.ts +1 -0
- package/widgets/lib/widgets/index.d.ts +0 -1
- package/widgets/lib/widgets/layout/block/block-widget.config.d.ts +4 -6
- package/workflow/lib/workflow.service.d.ts +1 -1
- package/esm2022/acorex-platform.mjs +0 -5
- package/esm2022/auth/acorex-platform-auth.mjs +0 -5
- package/esm2022/auth/index.mjs +0 -14
- package/esm2022/auth/lib/application/application.loader.mjs +0 -23
- package/esm2022/auth/lib/application/application.types.mjs +0 -2
- package/esm2022/auth/lib/auth-registry.service.mjs +0 -29
- package/esm2022/auth/lib/auth.guard.mjs +0 -16
- package/esm2022/auth/lib/auth.module.mjs +0 -90
- package/esm2022/auth/lib/auth.strategy.mjs +0 -2
- package/esm2022/auth/lib/errors.types.mjs +0 -15
- package/esm2022/auth/lib/feature/feature.directive.mjs +0 -55
- package/esm2022/auth/lib/feature/feature.guard.mjs +0 -19
- package/esm2022/auth/lib/feature/feature.loader.mjs +0 -14
- package/esm2022/auth/lib/feature/feature.types.mjs +0 -2
- package/esm2022/auth/lib/feature/index.mjs +0 -5
- package/esm2022/auth/lib/permission/index.mjs +0 -5
- package/esm2022/auth/lib/permission/permission.directive.mjs +0 -54
- package/esm2022/auth/lib/permission/permission.guard.mjs +0 -19
- package/esm2022/auth/lib/permission/permission.loader.mjs +0 -14
- package/esm2022/auth/lib/permission/permission.types.mjs +0 -2
- package/esm2022/auth/lib/session.service.mjs +0 -265
- package/esm2022/auth/lib/session.types.mjs +0 -29
- package/esm2022/auth/lib/tenant/tenant.loader.mjs +0 -20
- package/esm2022/auth/lib/tenant/tenant.types.mjs +0 -2
- package/esm2022/auth/lib/user/user.types.mjs +0 -2
- package/esm2022/common/acorex-platform-common.mjs +0 -5
- package/esm2022/common/index.mjs +0 -13
- package/esm2022/common/lib/app/app-startup.service.mjs +0 -40
- package/esm2022/common/lib/app/application.types.mjs +0 -55
- package/esm2022/common/lib/app/index.mjs +0 -4
- package/esm2022/common/lib/app/operators.mjs +0 -65
- package/esm2022/common/lib/common.module.mjs +0 -155
- package/esm2022/common/lib/configs/app.config.mjs +0 -27
- package/esm2022/common/lib/configs/config.types.mjs +0 -3
- package/esm2022/common/lib/data/data-provider.types.mjs +0 -3
- package/esm2022/common/lib/data/data.types.mjs +0 -2
- package/esm2022/common/lib/data/dexie-storage.service.mjs +0 -130
- package/esm2022/common/lib/data/entity-data-seeder.mjs +0 -25
- package/esm2022/common/lib/data/entity-storage-service.mjs +0 -63
- package/esm2022/common/lib/data/filter-middleware.service.mjs +0 -53
- package/esm2022/common/lib/data/index.mjs +0 -8
- package/esm2022/common/lib/data/operators.service.mjs +0 -15
- package/esm2022/common/lib/errors/error-handler-registry.service.mjs +0 -29
- package/esm2022/common/lib/errors/error-handler.types.mjs +0 -2
- package/esm2022/common/lib/errors/global-error-handler.mjs +0 -36
- package/esm2022/common/lib/errors/index.mjs +0 -4
- package/esm2022/common/lib/layout/beardcrumb.type.mjs +0 -2
- package/esm2022/common/lib/layout/component-slot/component-slot-loader.service.mjs +0 -57
- package/esm2022/common/lib/layout/component-slot/component-slot-registery.service.mjs +0 -28
- package/esm2022/common/lib/layout/component-slot/component-slot.directive.mjs +0 -24
- package/esm2022/common/lib/layout/component-slot/component-slot.module.mjs +0 -72
- package/esm2022/common/lib/layout/component-slot/component-slot.types.mjs +0 -2
- package/esm2022/common/lib/layout/component-slot/index.mjs +0 -6
- package/esm2022/common/lib/layout/grid-layout/grid-layout.directive.mjs +0 -61
- package/esm2022/common/lib/layout/grid-layout/grid-layout.types.mjs +0 -2
- package/esm2022/common/lib/layout/grid-layout/index.mjs +0 -3
- package/esm2022/common/lib/layout/index.mjs +0 -8
- package/esm2022/common/lib/layout/logo/index.mjs +0 -3
- package/esm2022/common/lib/layout/logo/logo.component.mjs +0 -38
- package/esm2022/common/lib/layout/logo/logo.types.mjs +0 -21
- package/esm2022/common/lib/layout/menu/index.mjs +0 -4
- package/esm2022/common/lib/layout/menu/menu.provider.mjs +0 -137
- package/esm2022/common/lib/layout/menu/menu.service.mjs +0 -105
- package/esm2022/common/lib/layout/menu/menu.types.mjs +0 -2
- package/esm2022/common/lib/layout/sticky.directive.mjs +0 -78
- package/esm2022/common/lib/layout/theme/components/slots/footer-text-slot.component.mjs +0 -20
- package/esm2022/common/lib/layout/theme/components/slots/index.mjs +0 -3
- package/esm2022/common/lib/layout/theme/components/slots/navbar-slot.component.mjs +0 -36
- package/esm2022/common/lib/schema/component-loader.mjs +0 -2
- package/esm2022/common/lib/schema/entity/entity-registery.service.mjs +0 -70
- package/esm2022/common/lib/schema/entity/entity.class.mjs +0 -32
- package/esm2022/common/lib/schema/entity/entity.loader.mjs +0 -13
- package/esm2022/common/lib/schema/entity/index.mjs +0 -4
- package/esm2022/common/lib/schema/formats.mjs +0 -2
- package/esm2022/common/lib/schema/index.mjs +0 -9
- package/esm2022/common/lib/schema/schema-registery.service.mjs +0 -33
- package/esm2022/common/lib/schema/schema.module.mjs +0 -23
- package/esm2022/common/lib/schema/schema.types.mjs +0 -2
- package/esm2022/common/lib/schema/widget/index.mjs +0 -6
- package/esm2022/common/lib/schema/widget/widget-base.mjs +0 -113
- package/esm2022/common/lib/schema/widget/widget-column-renderer.mjs +0 -118
- package/esm2022/common/lib/schema/widget/widget-filter-renderer.mjs +0 -133
- package/esm2022/common/lib/schema/widget/widget-renderer.mjs +0 -148
- package/esm2022/common/lib/schema/widget/widget-token.mjs +0 -3
- package/esm2022/common/lib/schema/widgets/avatar/avatar-widget-edit.component.mjs +0 -166
- package/esm2022/common/lib/schema/widgets/avatar/avatar-widget-view.component.mjs +0 -63
- package/esm2022/common/lib/schema/widgets/checkbox/checkbox-widget-column.component.mjs +0 -53
- package/esm2022/common/lib/schema/widgets/checkbox/checkbox-widget-edit.component.mjs +0 -22
- package/esm2022/common/lib/schema/widgets/checkbox/checkbox-widget-view.component.mjs +0 -47
- package/esm2022/common/lib/schema/widgets/common-widget-filter/boolean-widget-filter.component.mjs +0 -153
- package/esm2022/common/lib/schema/widgets/common-widget-filter/number-widget-filter.component.mjs +0 -135
- package/esm2022/common/lib/schema/widgets/common-widget-filter/string-widget-filter.component.mjs +0 -125
- package/esm2022/common/lib/schema/widgets/common-widgets.module.mjs +0 -505
- package/esm2022/common/lib/schema/widgets/dateTime/dateTime-widget-column.component.mjs +0 -44
- package/esm2022/common/lib/schema/widgets/dateTime/dateTime-widget-edit.component.mjs +0 -177
- package/esm2022/common/lib/schema/widgets/dateTime/dateTime-widget-filter.component.mjs +0 -284
- package/esm2022/common/lib/schema/widgets/dateTime/dateTime-widget-view.component.mjs +0 -71
- package/esm2022/common/lib/schema/widgets/email/email-widget-column.component.mjs +0 -73
- package/esm2022/common/lib/schema/widgets/email/email-widget-edit.component.mjs +0 -248
- package/esm2022/common/lib/schema/widgets/email/email-widget-view.component.mjs +0 -108
- package/esm2022/common/lib/schema/widgets/file/file-widget-column.component.mjs +0 -27
- package/esm2022/common/lib/schema/widgets/file/file-widget-edit.component.mjs +0 -200
- package/esm2022/common/lib/schema/widgets/file/file-widget-filter.component.mjs +0 -27
- package/esm2022/common/lib/schema/widgets/file/file-widget-view.component.mjs +0 -153
- package/esm2022/common/lib/schema/widgets/gallery/gallery-widget-edit.component.mjs +0 -189
- package/esm2022/common/lib/schema/widgets/gallery/gallery-widget-filter.component.mjs +0 -27
- package/esm2022/common/lib/schema/widgets/gallery/gallery-widget-types.mjs +0 -2
- package/esm2022/common/lib/schema/widgets/gallery/gallery-widget-view.component.mjs +0 -173
- package/esm2022/common/lib/schema/widgets/index.mjs +0 -2
- package/esm2022/common/lib/schema/widgets/lookup/lookup-widget-column.component.mjs +0 -43
- package/esm2022/common/lib/schema/widgets/lookup/lookup-widget-edit.component.mjs +0 -95
- package/esm2022/common/lib/schema/widgets/lookup/lookup-widget-filter.component.mjs +0 -160
- package/esm2022/common/lib/schema/widgets/lookup/lookup-widget-view.component.mjs +0 -54
- package/esm2022/common/lib/schema/widgets/map/map-widget-edit.component.mjs +0 -91
- package/esm2022/common/lib/schema/widgets/map/map-widget-view.component.mjs +0 -63
- package/esm2022/common/lib/schema/widgets/messenger/messenger-widget-column.component.mjs +0 -71
- package/esm2022/common/lib/schema/widgets/messenger/messenger-widget-edit.component.mjs +0 -136
- package/esm2022/common/lib/schema/widgets/messenger/messenger-widget-view.component.mjs +0 -132
- package/esm2022/common/lib/schema/widgets/number/number-widget-edit.component.mjs +0 -46
- package/esm2022/common/lib/schema/widgets/number/number-widget-view.component.mjs +0 -30
- package/esm2022/common/lib/schema/widgets/password/change-password.component.mjs +0 -174
- package/esm2022/common/lib/schema/widgets/password/password-widget-column.component.mjs +0 -67
- package/esm2022/common/lib/schema/widgets/password/password-widget-edit.component.mjs +0 -41
- package/esm2022/common/lib/schema/widgets/password/password-widget-view.component.mjs +0 -109
- package/esm2022/common/lib/schema/widgets/phone/phone-widget-column.component.mjs +0 -91
- package/esm2022/common/lib/schema/widgets/phone/phone-widget-edit.component.mjs +0 -248
- package/esm2022/common/lib/schema/widgets/phone/phone-widget-view.component.mjs +0 -123
- package/esm2022/common/lib/schema/widgets/rich-text/rich-text-widget-column.component.mjs +0 -61
- package/esm2022/common/lib/schema/widgets/rich-text/rich-text-widget-edit.component.mjs +0 -66
- package/esm2022/common/lib/schema/widgets/rich-text/rich-text-widget-view.component.mjs +0 -34
- package/esm2022/common/lib/schema/widgets/selection-list/selection-list-widget-column.component.mjs +0 -45
- package/esm2022/common/lib/schema/widgets/selection-list/selection-list-widget-edit.component.mjs +0 -53
- package/esm2022/common/lib/schema/widgets/selection-list/selection-list-widget-filter.component.mjs +0 -45
- package/esm2022/common/lib/schema/widgets/selection-list/selection-list-widget-view.component.mjs +0 -45
- package/esm2022/common/lib/schema/widgets/signature-pad/signature-pad-widget-edit.component.mjs +0 -128
- package/esm2022/common/lib/schema/widgets/signature-pad/signature-pad-widget-view.component.mjs +0 -41
- package/esm2022/common/lib/schema/widgets/text/largetext-widget-edit.component.mjs +0 -36
- package/esm2022/common/lib/schema/widgets/text/text-widget-column.component.mjs +0 -46
- package/esm2022/common/lib/schema/widgets/text/text-widget-edit.component.mjs +0 -161
- package/esm2022/common/lib/schema/widgets/text/text-widget-view.component.mjs +0 -66
- package/esm2022/common/lib/schema/widgets/toggle/toggle-widget-column.component.mjs +0 -57
- package/esm2022/common/lib/schema/widgets/toggle/toggle-widget-edit.component.mjs +0 -25
- package/esm2022/common/lib/schema/widgets/toggle/toggle-widget-view.component.mjs +0 -49
- package/esm2022/common/lib/settings/index.mjs +0 -5
- package/esm2022/common/lib/settings/setting-definition.provider.mjs +0 -183
- package/esm2022/common/lib/settings/settings.provider.mjs +0 -35
- package/esm2022/common/lib/settings/settings.service.mjs +0 -53
- package/esm2022/common/lib/settings/settings.types.mjs +0 -2
- package/esm2022/common/lib/store/common.actions.mjs +0 -5
- package/esm2022/common/lib/store/common.effects.mjs +0 -34
- package/esm2022/common/lib/store/index.mjs +0 -3
- package/esm2022/common/lib/utils/clipboard-service.mjs +0 -26
- package/esm2022/common/lib/utils/data-generator.mjs +0 -133
- package/esm2022/common/lib/utils/index.mjs +0 -4
- package/esm2022/common/lib/utils/pdf.service.mjs +0 -85
- package/esm2022/common/lib/workflows/common.workflow.mjs +0 -73
- package/esm2022/common/lib/workflows/error-handler.mjs +0 -24
- package/esm2022/common/lib/workflows/index.mjs +0 -3
- package/esm2022/core/acorex-platform-core.mjs +0 -5
- package/esm2022/core/index.mjs +0 -5
- package/esm2022/core/lib/types.mjs +0 -13
- package/esm2022/core/utils/countdown-timer.mjs +0 -49
- package/esm2022/core/utils/data-conditioner.mjs +0 -138
- package/esm2022/core/utils/html-utils.mjs +0 -27
- package/esm2022/index.mjs +0 -2
- package/esm2022/layout/builder/acorex-platform-layout-builder.mjs +0 -5
- package/esm2022/layout/builder/index.mjs +0 -2
- package/esm2022/layout/builder/lib/builder/builder.module.mjs +0 -68
- package/esm2022/layout/builder/lib/builder/builder.service.mjs +0 -105
- package/esm2022/layout/builder/lib/builder/datasource-provider.service.mjs +0 -27
- package/esm2022/layout/builder/lib/builder/index.mjs +0 -12
- package/esm2022/layout/builder/lib/builder/widget-catalog.mjs +0 -39
- package/esm2022/layout/builder/lib/builder/widget-column-renderer.mjs +0 -117
- package/esm2022/layout/builder/lib/builder/widget-container.component.mjs +0 -46
- package/esm2022/layout/builder/lib/builder/widget-groups.mjs +0 -27
- package/esm2022/layout/builder/lib/builder/widget-registery.service.mjs +0 -36
- package/esm2022/layout/builder/lib/builder/widget-renderer.component.directive.mjs +0 -313
- package/esm2022/layout/builder/lib/builder/widget-renderer.component.mjs +0 -320
- package/esm2022/layout/builder/lib/builder/widget.types.mjs +0 -264
- package/esm2022/layout/designer/acorex-platform-layout-designer.mjs +0 -5
- package/esm2022/layout/designer/index.mjs +0 -5
- package/esm2022/layout/designer/lib/designer/components/add-widget-button/add-widget-button.component.mjs +0 -37
- package/esm2022/layout/designer/lib/designer/components/add-widget-button/add-widget-line-button.component.mjs +0 -49
- package/esm2022/layout/designer/lib/designer/components/add-widget-button/add-widget-mini-button.component.mjs +0 -53
- package/esm2022/layout/designer/lib/designer/components/add-widget-button/index.mjs +0 -4
- package/esm2022/layout/designer/lib/designer/components/board/board.component.mjs +0 -139
- package/esm2022/layout/designer/lib/designer/components/breadcrumbs/breadcrumbs.component.mjs +0 -59
- package/esm2022/layout/designer/lib/designer/components/drawers/data-sources/data-sources.component.mjs +0 -33
- package/esm2022/layout/designer/lib/designer/components/drawers/history/history.component.mjs +0 -30
- package/esm2022/layout/designer/lib/designer/components/drawers/outline/outline.component.mjs +0 -61
- package/esm2022/layout/designer/lib/designer/components/drawers/pages/pages.component.mjs +0 -28
- package/esm2022/layout/designer/lib/designer/components/grid-drawer/grid-drawer.component.mjs +0 -82
- package/esm2022/layout/designer/lib/designer/components/header-menu/header-menu.component.mjs +0 -105
- package/esm2022/layout/designer/lib/designer/components/size-mode/view-size-toolbar.component.mjs +0 -54
- package/esm2022/layout/designer/lib/designer/components/widget-picker/widget-picker.component.mjs +0 -121
- package/esm2022/layout/designer/lib/designer/designer.component.mjs +0 -81
- package/esm2022/layout/designer/lib/designer/index.mjs +0 -10
- package/esm2022/layout/designer/lib/designer/shared/command.mjs +0 -185
- package/esm2022/layout/designer/lib/designer/shared/designer-connector.service.mjs +0 -10
- package/esm2022/layout/designer/lib/designer/shared/designer.service.mjs +0 -603
- package/esm2022/layout/designer/lib/designer/shared/designer.types.mjs +0 -6
- package/esm2022/layout/designer/lib/designer/shared/drawer-content/drawer-content.component.mjs +0 -16
- package/esm2022/layout/designer/lib/designer/shared/generic-commands.types.mjs +0 -52
- package/esm2022/layout/designer/lib/designer/shared/widget-designer-renderer.directive.mjs +0 -220
- package/esm2022/layout/designer/lib/preview/preview-frame.component.mjs +0 -75
- package/esm2022/layout/designer/lib/preview/preview-viewer.component.mjs +0 -67
- package/esm2022/layout/designer/lib/preview/preview.component.mjs +0 -79
- package/esm2022/layout/designer/lib/property-viewer/widget-property-viewer.component.mjs +0 -119
- package/esm2022/layout/entity/acorex-platform-layout-entity.mjs +0 -5
- package/esm2022/layout/entity/index.mjs +0 -2
- package/esm2022/layout/entity/lib/entity-detail-list.viewmodel.mjs +0 -182
- package/esm2022/layout/entity/lib/entity-master-create.viewmodel.mjs +0 -143
- package/esm2022/layout/entity/lib/entity-master-list.viewmodel.mjs +0 -325
- package/esm2022/layout/entity/lib/entity-master-single.viewmodel.mjs +0 -227
- package/esm2022/layout/entity/lib/entity-master-update.viewmodel.mjs +0 -103
- package/esm2022/layout/entity/lib/entity-registery.service.mjs +0 -69
- package/esm2022/layout/entity/lib/entity.config.mjs +0 -30
- package/esm2022/layout/entity/lib/entity.module.mjs +0 -154
- package/esm2022/layout/entity/lib/entity.service.mjs +0 -18
- package/esm2022/layout/entity/lib/entity.viewmodel.mjs +0 -34
- package/esm2022/layout/entity/lib/index.mjs +0 -10
- package/esm2022/layout/entity/lib/widgets/lookup-widget/index.mjs +0 -7
- package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-column.component.mjs +0 -25
- package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.mjs +0 -267
- package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-filter.component.mjs +0 -20
- package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-print.component.mjs +0 -19
- package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.component.mjs +0 -208
- package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.viewmodel.mjs +0 -109
- package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-view.component.mjs +0 -110
- package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget.config.mjs +0 -62
- package/esm2022/layout/entity/lib/widgets/widget-selector/index.mjs +0 -4
- package/esm2022/layout/entity/lib/widgets/widget-selector/widget-selector-widget-edit.component.mjs +0 -130
- package/esm2022/layout/entity/lib/widgets/widget-selector/widget-selector-widget-view.component.mjs +0 -18
- package/esm2022/layout/entity/lib/widgets/widget-selector/widget-selector-widget.config.mjs +0 -20
- package/esm2022/layout/entity/lib/workflows/create-entity.workflow.mjs +0 -92
- package/esm2022/layout/entity/lib/workflows/delete-entity.workflow.mjs +0 -130
- package/esm2022/layout/entity/lib/workflows/modify-section.workflow.mjs +0 -94
- package/esm2022/layout/entity/lib/workflows/show-details.workflow.mjs +0 -35
- package/esm2022/layout/entity/lib/workflows/show-list.workflow.mjs +0 -35
- package/esm2022/layout/setting/acorex-platform-layout-setting.mjs +0 -5
- package/esm2022/layout/setting/index.mjs +0 -2
- package/esm2022/layout/setting/lib/setting.viewmodel.mjs +0 -50
- package/esm2022/layouts/acorex-platform-layouts.mjs +0 -5
- package/esm2022/layouts/index.mjs +0 -3
- package/esm2022/layouts/lib/admin/admin.module.mjs +0 -94
- package/esm2022/layouts/lib/admin/admin.routes.mjs +0 -48
- package/esm2022/layouts/lib/admin/custom-reuse.strategy.mjs +0 -20
- package/esm2022/layouts/lib/admin/entity-layout/entity-create-view/entity-create-view.component.mjs +0 -119
- package/esm2022/layouts/lib/admin/entity-layout/entity-create-view/entity-create-view.config.mjs +0 -138
- package/esm2022/layouts/lib/admin/entity-layout/entity-details-view/detail-view.config.mjs +0 -126
- package/esm2022/layouts/lib/admin/entity-layout/entity-details-view/entity-details-view.component.mjs +0 -164
- package/esm2022/layouts/lib/admin/entity-layout/entity-details-view/index.mjs +0 -3
- package/esm2022/layouts/lib/admin/entity-layout/entity-import-view/entity-import-view.component.mjs +0 -91
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/entity-custom-view/entity-custom-view.component.mjs +0 -201
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/index.mjs +0 -6
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-columns/list-view-option-columns.component.mjs +0 -53
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-conditions/list-view-option-conditions.component.mjs +0 -105
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-conditions/list-view-option-filter-operator.component.mjs +0 -76
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-sorting/list-view-option-sorting.component.mjs +0 -56
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/entity-list-view.component.mjs +0 -295
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/index.mjs +0 -5
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/list-view.config.mjs +0 -341
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/list-view.module.mjs +0 -163
- package/esm2022/layouts/lib/admin/entity-layout/entity-modify-view/entity-modify-view.component.mjs +0 -95
- package/esm2022/layouts/lib/admin/entity-layout/entity-modify-view/entity-modify-view.config.mjs +0 -67
- package/esm2022/layouts/lib/admin/entity-layout/entity-quick-view/entity-quick-view.component.mjs +0 -77
- package/esm2022/layouts/lib/admin/entity-layout/entity-quick-view/index.mjs +0 -2
- package/esm2022/layouts/lib/admin/entity-layout/index.mjs +0 -5
- package/esm2022/layouts/lib/admin/entity-layout/workflows/create-entity.workflow.mjs +0 -93
- package/esm2022/layouts/lib/admin/entity-layout/workflows/delete-entity.workflow.mjs +0 -139
- package/esm2022/layouts/lib/admin/entity-layout/workflows/import-entity.workflow.mjs +0 -77
- package/esm2022/layouts/lib/admin/entity-layout/workflows/index.mjs +0 -7
- package/esm2022/layouts/lib/admin/entity-layout/workflows/modify-entity.workflow.mjs +0 -100
- package/esm2022/layouts/lib/admin/entity-layout/workflows/modify-section.workflow.mjs +0 -85
- package/esm2022/layouts/lib/admin/entity-layout/workflows/show-details.workflow.mjs +0 -36
- package/esm2022/layouts/lib/admin/entity-layout/workflows/show-list.workflow.mjs +0 -35
- package/esm2022/layouts/lib/admin/entity-layout/workflows/show-quick-view.workflow.mjs +0 -50
- package/esm2022/layouts/lib/admin/entity.resolver.mjs +0 -17
- package/esm2022/layouts/lib/admin/index.mjs +0 -6
- package/esm2022/layouts/lib/layout.module.mjs +0 -43
- package/esm2022/native/acorex-platform-native.mjs +0 -5
- package/esm2022/native/index.mjs +0 -3
- package/esm2022/native/lib/native.module.mjs +0 -16
- package/esm2022/native/lib/native.service.mjs +0 -133
- package/esm2022/themes/default/acorex-platform-themes-default.mjs +0 -5
- package/esm2022/themes/default/index.mjs +0 -5
- package/esm2022/themes/default/lib/default.module.mjs +0 -78
- package/esm2022/themes/default/lib/entity-reuse.strategy.mjs +0 -19
- package/esm2022/themes/default/lib/layout.routes.mjs +0 -20
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.mjs +0 -160
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-create-view/entity-master-create-view.component.mjs +0 -106
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.mjs +0 -190
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-columns/list-view-option-columns.component.mjs +0 -64
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-sorting/list-view-option-sorting.component.mjs +0 -72
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-modify-view/entity-master-modify-view.component.mjs +0 -85
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.mjs +0 -84
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-single-view/overview/entity-single-overview.component.mjs +0 -70
- package/esm2022/themes/default/lib/layouts/entity-layouts/index.mjs +0 -2
- package/esm2022/themes/default/lib/layouts/root-layout/components/footer/footer.component.mjs +0 -14
- package/esm2022/themes/default/lib/layouts/root-layout/components/header/header.component.mjs +0 -27
- package/esm2022/themes/default/lib/layouts/root-layout/components/menu/root-menu.component.mjs +0 -40
- package/esm2022/themes/default/lib/layouts/root-layout/index.mjs +0 -6
- package/esm2022/themes/default/lib/layouts/root-layout/root-layout.component.mjs +0 -36
- package/esm2022/themes/default/lib/layouts/root-layout/root-layout.module.mjs +0 -99
- package/esm2022/themes/default/lib/layouts/setting-layout/convert-setting-data.mjs +0 -49
- package/esm2022/themes/default/lib/layouts/setting-layout/index.mjs +0 -3
- package/esm2022/themes/default/lib/layouts/setting-layout/setting-preview/setting-preview.component.mjs +0 -104
- package/esm2022/themes/default/lib/layouts/setting-layout/setting-view/setting-menu.component.mjs +0 -44
- package/esm2022/themes/default/lib/pages/errors/error-401/error-401.component.mjs +0 -28
- package/esm2022/themes/default/lib/pages/errors/error-404/error-404.component.mjs +0 -22
- package/esm2022/themes/default/lib/pages/errors/error-offline/error-offline.component.mjs +0 -16
- package/esm2022/themes/shared/acorex-platform-themes-shared.mjs +0 -5
- package/esm2022/themes/shared/index.mjs +0 -4
- package/esm2022/themes/shared/lib/components/theme-slot.component.mjs +0 -116
- package/esm2022/themes/shared/lib/services/theme.service.mjs +0 -250
- package/esm2022/themes/shared/lib/shared.module.mjs +0 -39
- package/esm2022/widgets/acorex-platform-widgets.mjs +0 -5
- package/esm2022/widgets/index.mjs +0 -4
- package/esm2022/widgets/lib/properties/data-source.props.mjs +0 -21
- package/esm2022/widgets/lib/properties/editors.props.mjs +0 -252
- package/esm2022/widgets/lib/properties/general.props.mjs +0 -115
- package/esm2022/widgets/lib/properties/groups.mjs +0 -21
- package/esm2022/widgets/lib/properties/index.mjs +0 -7
- package/esm2022/widgets/lib/properties/layout.props.mjs +0 -270
- package/esm2022/widgets/lib/properties/table-column.props.mjs +0 -33
- package/esm2022/widgets/lib/widgets/actions/button/button-widget-designer.component.mjs +0 -69
- package/esm2022/widgets/lib/widgets/actions/button/button-widget-view.component.mjs +0 -68
- package/esm2022/widgets/lib/widgets/actions/button/button-widget.config.mjs +0 -31
- package/esm2022/widgets/lib/widgets/actions/button/index.mjs +0 -3
- package/esm2022/widgets/lib/widgets/advance/cron-job/cron-job-widget-column.component.mjs +0 -20
- package/esm2022/widgets/lib/widgets/advance/cron-job/cron-job-widget-designer.component.mjs +0 -18
- package/esm2022/widgets/lib/widgets/advance/cron-job/cron-job-widget-edit.component.mjs +0 -24
- package/esm2022/widgets/lib/widgets/advance/cron-job/cron-job-widget-filter.component.mjs +0 -20
- package/esm2022/widgets/lib/widgets/advance/cron-job/cron-job-widget-print.component.mjs +0 -19
- package/esm2022/widgets/lib/widgets/advance/cron-job/cron-job-widget-view.component.mjs +0 -22
- package/esm2022/widgets/lib/widgets/advance/cron-job/cron-job-widget.config.mjs +0 -31
- package/esm2022/widgets/lib/widgets/advance/cron-job/index.mjs +0 -8
- package/esm2022/widgets/lib/widgets/advance/file/file-box-widget-column.component.mjs +0 -19
- package/esm2022/widgets/lib/widgets/advance/file/file-box-widget-edit.component.mjs +0 -131
- package/esm2022/widgets/lib/widgets/advance/file/file-box-widget-filter.component.mjs +0 -20
- package/esm2022/widgets/lib/widgets/advance/file/file-box-widget-print.component.mjs +0 -19
- package/esm2022/widgets/lib/widgets/advance/file/file-box-widget-view.component.mjs +0 -215
- package/esm2022/widgets/lib/widgets/advance/file/file-box-widget.config.mjs +0 -53
- package/esm2022/widgets/lib/widgets/advance/file/file-box-widget.service.mjs +0 -3
- package/esm2022/widgets/lib/widgets/advance/file/index.mjs +0 -8
- package/esm2022/widgets/lib/widgets/advance/gallery/gallery-widget-column.component.mjs +0 -19
- package/esm2022/widgets/lib/widgets/advance/gallery/gallery-widget-edit.component.mjs +0 -182
- package/esm2022/widgets/lib/widgets/advance/gallery/gallery-widget-filter.component.mjs +0 -20
- package/esm2022/widgets/lib/widgets/advance/gallery/gallery-widget-print.component.mjs +0 -19
- package/esm2022/widgets/lib/widgets/advance/gallery/gallery-widget-types.mjs +0 -2
- package/esm2022/widgets/lib/widgets/advance/gallery/gallery-widget-view.component.mjs +0 -160
- package/esm2022/widgets/lib/widgets/advance/gallery/gallery-widget.config.mjs +0 -30
- package/esm2022/widgets/lib/widgets/advance/gallery/index.mjs +0 -7
- package/esm2022/widgets/lib/widgets/advance/map/index.mjs +0 -4
- package/esm2022/widgets/lib/widgets/advance/map/map-box-widget-edit.component.mjs +0 -77
- package/esm2022/widgets/lib/widgets/advance/map/map-box-widget-view.component.mjs +0 -52
- package/esm2022/widgets/lib/widgets/advance/map/map-box-widget.config.mjs +0 -120
- package/esm2022/widgets/lib/widgets/advance/qrcode/index.mjs +0 -3
- package/esm2022/widgets/lib/widgets/advance/qrcode/qrcode-widget-view.component.mjs +0 -60
- package/esm2022/widgets/lib/widgets/advance/qrcode/qrcode-widget.config.mjs +0 -64
- package/esm2022/widgets/lib/widgets/advance/signature/index.mjs +0 -7
- package/esm2022/widgets/lib/widgets/advance/signature/signature-pad-widget-column.component.mjs +0 -19
- package/esm2022/widgets/lib/widgets/advance/signature/signature-pad-widget-edit.component.mjs +0 -151
- package/esm2022/widgets/lib/widgets/advance/signature/signature-pad-widget-filter.component.mjs +0 -20
- package/esm2022/widgets/lib/widgets/advance/signature/signature-pad-widget-print.component.mjs +0 -19
- package/esm2022/widgets/lib/widgets/advance/signature/signature-pad-widget-view.component.mjs +0 -43
- package/esm2022/widgets/lib/widgets/advance/signature/signature-pad-widget.config.mjs +0 -30
- package/esm2022/widgets/lib/widgets/editors/checkbox/checkbox-widget-column.component.mjs +0 -51
- package/esm2022/widgets/lib/widgets/editors/checkbox/checkbox-widget-designer.component.mjs +0 -54
- package/esm2022/widgets/lib/widgets/editors/checkbox/checkbox-widget-edit.component.mjs +0 -72
- package/esm2022/widgets/lib/widgets/editors/checkbox/checkbox-widget-view.component.mjs +0 -70
- package/esm2022/widgets/lib/widgets/editors/checkbox/checkbox-widget.config.mjs +0 -41
- package/esm2022/widgets/lib/widgets/editors/checkbox/index.mjs +0 -3
- package/esm2022/widgets/lib/widgets/editors/color/color-box-widget-column.component.mjs +0 -40
- package/esm2022/widgets/lib/widgets/editors/color/color-box-widget-designer.component.mjs +0 -54
- package/esm2022/widgets/lib/widgets/editors/color/color-box-widget-edit.component.mjs +0 -61
- package/esm2022/widgets/lib/widgets/editors/color/color-box-widget-filter.component.mjs +0 -20
- package/esm2022/widgets/lib/widgets/editors/color/color-box-widget-print.component.mjs +0 -19
- package/esm2022/widgets/lib/widgets/editors/color/color-box-widget-view.component.mjs +0 -41
- package/esm2022/widgets/lib/widgets/editors/color/color-box-widget.config.mjs +0 -40
- package/esm2022/widgets/lib/widgets/editors/color/index.mjs +0 -7
- package/esm2022/widgets/lib/widgets/editors/contact/contact-widget-column.component.mjs +0 -50
- package/esm2022/widgets/lib/widgets/editors/contact/contact-widget-edit.component.mjs +0 -322
- package/esm2022/widgets/lib/widgets/editors/contact/contact-widget-filter.component.mjs +0 -20
- package/esm2022/widgets/lib/widgets/editors/contact/contact-widget-print.component.mjs +0 -19
- package/esm2022/widgets/lib/widgets/editors/contact/contact-widget-view.component.mjs +0 -122
- package/esm2022/widgets/lib/widgets/editors/contact/contact-widget.config.mjs +0 -59
- package/esm2022/widgets/lib/widgets/editors/contact/contact.type.mjs +0 -2
- package/esm2022/widgets/lib/widgets/editors/contact/index.mjs +0 -6
- package/esm2022/widgets/lib/widgets/editors/contact/popup-component.mjs +0 -78
- package/esm2022/widgets/lib/widgets/editors/date-time/date-time-box-widget-column.component.mjs +0 -64
- package/esm2022/widgets/lib/widgets/editors/date-time/date-time-box-widget-edit.component.mjs +0 -172
- package/esm2022/widgets/lib/widgets/editors/date-time/date-time-box-widget-filter.component.mjs +0 -20
- package/esm2022/widgets/lib/widgets/editors/date-time/date-time-box-widget-print.component.mjs +0 -19
- package/esm2022/widgets/lib/widgets/editors/date-time/date-time-box-widget-view.component.mjs +0 -63
- package/esm2022/widgets/lib/widgets/editors/date-time/date-time-box-widget.config.mjs +0 -43
- package/esm2022/widgets/lib/widgets/editors/date-time/index.mjs +0 -7
- package/esm2022/widgets/lib/widgets/editors/email/email-box-widget-column.component.mjs +0 -66
- package/esm2022/widgets/lib/widgets/editors/email/email-box-widget-edit.component.mjs +0 -258
- package/esm2022/widgets/lib/widgets/editors/email/email-box-widget-filter.component.mjs +0 -20
- package/esm2022/widgets/lib/widgets/editors/email/email-box-widget-print.component.mjs +0 -19
- package/esm2022/widgets/lib/widgets/editors/email/email-box-widget-view.component.mjs +0 -115
- package/esm2022/widgets/lib/widgets/editors/email/email-box-widget.config.mjs +0 -41
- package/esm2022/widgets/lib/widgets/editors/email/index.mjs +0 -7
- package/esm2022/widgets/lib/widgets/editors/large-text/index.mjs +0 -7
- package/esm2022/widgets/lib/widgets/editors/large-text/large-text-widget-column.component.mjs +0 -23
- package/esm2022/widgets/lib/widgets/editors/large-text/large-text-widget-edit.component.mjs +0 -79
- package/esm2022/widgets/lib/widgets/editors/large-text/large-text-widget-filter.component.mjs +0 -20
- package/esm2022/widgets/lib/widgets/editors/large-text/large-text-widget-print.component.mjs +0 -19
- package/esm2022/widgets/lib/widgets/editors/large-text/large-text-widget-view.component.mjs +0 -31
- package/esm2022/widgets/lib/widgets/editors/large-text/large-text-widget.config.mjs +0 -42
- package/esm2022/widgets/lib/widgets/editors/link/index.mjs +0 -7
- package/esm2022/widgets/lib/widgets/editors/link/link-widget-column.component.mjs +0 -19
- package/esm2022/widgets/lib/widgets/editors/link/link-widget-edit.component.mjs +0 -399
- package/esm2022/widgets/lib/widgets/editors/link/link-widget-filter.component.mjs +0 -20
- package/esm2022/widgets/lib/widgets/editors/link/link-widget-print.component.mjs +0 -19
- package/esm2022/widgets/lib/widgets/editors/link/link-widget-view.component.mjs +0 -120
- package/esm2022/widgets/lib/widgets/editors/link/link-widget.config.mjs +0 -30
- package/esm2022/widgets/lib/widgets/editors/number/index.mjs +0 -7
- package/esm2022/widgets/lib/widgets/editors/number/number-box-widget-column.component.mjs +0 -38
- package/esm2022/widgets/lib/widgets/editors/number/number-box-widget-edit.component.mjs +0 -159
- package/esm2022/widgets/lib/widgets/editors/number/number-box-widget-filter.component.mjs +0 -20
- package/esm2022/widgets/lib/widgets/editors/number/number-box-widget-print.component.mjs +0 -19
- package/esm2022/widgets/lib/widgets/editors/number/number-box-widget-view.component.mjs +0 -50
- package/esm2022/widgets/lib/widgets/editors/number/number-box-widget.config.mjs +0 -42
- package/esm2022/widgets/lib/widgets/editors/password/index.mjs +0 -7
- package/esm2022/widgets/lib/widgets/editors/password/password-box-widget-column.component.mjs +0 -56
- package/esm2022/widgets/lib/widgets/editors/password/password-box-widget-edit.component.mjs +0 -56
- package/esm2022/widgets/lib/widgets/editors/password/password-box-widget-filter.component.mjs +0 -20
- package/esm2022/widgets/lib/widgets/editors/password/password-box-widget-print.component.mjs +0 -19
- package/esm2022/widgets/lib/widgets/editors/password/password-box-widget-view.component.mjs +0 -82
- package/esm2022/widgets/lib/widgets/editors/password/password-box-widget.config.mjs +0 -40
- package/esm2022/widgets/lib/widgets/editors/phone/index.mjs +0 -7
- package/esm2022/widgets/lib/widgets/editors/phone/phone-box-widget-column.component.mjs +0 -66
- package/esm2022/widgets/lib/widgets/editors/phone/phone-box-widget-edit.component.mjs +0 -230
- package/esm2022/widgets/lib/widgets/editors/phone/phone-box-widget-filter.component.mjs +0 -20
- package/esm2022/widgets/lib/widgets/editors/phone/phone-box-widget-print.component.mjs +0 -19
- package/esm2022/widgets/lib/widgets/editors/phone/phone-box-widget-view.component.mjs +0 -115
- package/esm2022/widgets/lib/widgets/editors/phone/phone-box-widget.config.mjs +0 -33
- package/esm2022/widgets/lib/widgets/editors/rich-text/index.mjs +0 -7
- package/esm2022/widgets/lib/widgets/editors/rich-text/rich-text-popup.component.mjs +0 -38
- package/esm2022/widgets/lib/widgets/editors/rich-text/rich-text-widget-column.component.mjs +0 -46
- package/esm2022/widgets/lib/widgets/editors/rich-text/rich-text-widget-edit.component.mjs +0 -92
- package/esm2022/widgets/lib/widgets/editors/rich-text/rich-text-widget-filter.component.mjs +0 -20
- package/esm2022/widgets/lib/widgets/editors/rich-text/rich-text-widget-print.component.mjs +0 -19
- package/esm2022/widgets/lib/widgets/editors/rich-text/rich-text-widget-view.component.mjs +0 -47
- package/esm2022/widgets/lib/widgets/editors/rich-text/rich-text-widget.config.mjs +0 -41
- package/esm2022/widgets/lib/widgets/editors/select/index.mjs +0 -7
- package/esm2022/widgets/lib/widgets/editors/select/select-box-widget-column.component.mjs +0 -49
- package/esm2022/widgets/lib/widgets/editors/select/select-box-widget-edit.component.mjs +0 -108
- package/esm2022/widgets/lib/widgets/editors/select/select-box-widget-filter.component.mjs +0 -19
- package/esm2022/widgets/lib/widgets/editors/select/select-box-widget-print.component.mjs +0 -19
- package/esm2022/widgets/lib/widgets/editors/select/select-box-widget-view.component.mjs +0 -60
- package/esm2022/widgets/lib/widgets/editors/select/select-box-widget.config.mjs +0 -41
- package/esm2022/widgets/lib/widgets/editors/selection-list/index.mjs +0 -8
- package/esm2022/widgets/lib/widgets/editors/selection-list/selection-list-widget-column.component.mjs +0 -56
- package/esm2022/widgets/lib/widgets/editors/selection-list/selection-list-widget-designer.component.mjs +0 -88
- package/esm2022/widgets/lib/widgets/editors/selection-list/selection-list-widget-edit.component.mjs +0 -99
- package/esm2022/widgets/lib/widgets/editors/selection-list/selection-list-widget-filter.component.mjs +0 -20
- package/esm2022/widgets/lib/widgets/editors/selection-list/selection-list-widget-print.component.mjs +0 -19
- package/esm2022/widgets/lib/widgets/editors/selection-list/selection-list-widget-view.component.mjs +0 -52
- package/esm2022/widgets/lib/widgets/editors/selection-list/selection-list-widget.config.mjs +0 -44
- package/esm2022/widgets/lib/widgets/editors/text/index.mjs +0 -7
- package/esm2022/widgets/lib/widgets/editors/text/text-box-widget-column.component.mjs +0 -20
- package/esm2022/widgets/lib/widgets/editors/text/text-box-widget-edit.component.mjs +0 -130
- package/esm2022/widgets/lib/widgets/editors/text/text-box-widget-filter.component.mjs +0 -20
- package/esm2022/widgets/lib/widgets/editors/text/text-box-widget-print.component.mjs +0 -19
- package/esm2022/widgets/lib/widgets/editors/text/text-box-widget-view.component.mjs +0 -47
- package/esm2022/widgets/lib/widgets/editors/text/text-box-widget.config.mjs +0 -43
- package/esm2022/widgets/lib/widgets/editors/toggle/index.mjs +0 -7
- package/esm2022/widgets/lib/widgets/editors/toggle/toggle-widget-column.component.mjs +0 -53
- package/esm2022/widgets/lib/widgets/editors/toggle/toggle-widget-edit.component.mjs +0 -48
- package/esm2022/widgets/lib/widgets/editors/toggle/toggle-widget-filter.component.mjs +0 -20
- package/esm2022/widgets/lib/widgets/editors/toggle/toggle-widget-print.component.mjs +0 -20
- package/esm2022/widgets/lib/widgets/editors/toggle/toggle-widget-view.component.mjs +0 -55
- package/esm2022/widgets/lib/widgets/editors/toggle/toggle-widget.config.mjs +0 -42
- package/esm2022/widgets/lib/widgets/index.mjs +0 -27
- package/esm2022/widgets/lib/widgets/layout/block/block-widget-designer.component.mjs +0 -98
- package/esm2022/widgets/lib/widgets/layout/block/block-widget-view.component.mjs +0 -83
- package/esm2022/widgets/lib/widgets/layout/block/block-widget.config.mjs +0 -31
- package/esm2022/widgets/lib/widgets/layout/block/index.mjs +0 -4
- package/esm2022/widgets/lib/widgets/layout/document/document-widget.config.mjs +0 -13
- package/esm2022/widgets/lib/widgets/layout/form-field/form-field-widget-designer.component.mjs +0 -67
- package/esm2022/widgets/lib/widgets/layout/form-field/form-field-widget-view.component.mjs +0 -51
- package/esm2022/widgets/lib/widgets/layout/form-field/form-field-widget.config.mjs +0 -30
- package/esm2022/widgets/lib/widgets/layout/form-field/index.mjs +0 -4
- package/esm2022/widgets/lib/widgets/layout/grid/grid-widget-designer.component.mjs +0 -91
- package/esm2022/widgets/lib/widgets/layout/grid/grid-widget-print.component.mjs +0 -19
- package/esm2022/widgets/lib/widgets/layout/grid/grid-widget-view.component.mjs +0 -38
- package/esm2022/widgets/lib/widgets/layout/grid/grid-widget.config.mjs +0 -29
- package/esm2022/widgets/lib/widgets/layout/grid/index.mjs +0 -5
- package/esm2022/widgets/lib/widgets/layout/grid-item/grid-item-widget-designer.component.mjs +0 -100
- package/esm2022/widgets/lib/widgets/layout/grid-item/grid-item-widget-print.component.mjs +0 -19
- package/esm2022/widgets/lib/widgets/layout/grid-item/grid-item-widget-view.component.mjs +0 -89
- package/esm2022/widgets/lib/widgets/layout/grid-item/grid-item-widget.config.mjs +0 -31
- package/esm2022/widgets/lib/widgets/layout/grid-item/index.mjs +0 -5
- package/esm2022/widgets/lib/widgets/layout/grid-row/grid-row-widget-designer.component.mjs +0 -85
- package/esm2022/widgets/lib/widgets/layout/grid-row/grid-row-widget-print.component.mjs +0 -19
- package/esm2022/widgets/lib/widgets/layout/grid-row/grid-row-widget-view.component.mjs +0 -38
- package/esm2022/widgets/lib/widgets/layout/grid-row/grid-row-widget.config.mjs +0 -28
- package/esm2022/widgets/lib/widgets/layout/grid-row/index.mjs +0 -5
- package/esm2022/widgets/lib/widgets/layout/page/index.mjs +0 -3
- package/esm2022/widgets/lib/widgets/layout/page/page-widget-designer.component.mjs +0 -148
- package/esm2022/widgets/lib/widgets/layout/page/page-widget-view.component.mjs +0 -41
- package/esm2022/widgets/lib/widgets/layout/page/page-widget.config.mjs +0 -46
- package/esm2022/widgets/lib/widgets/layout/repeater/index.mjs +0 -6
- package/esm2022/widgets/lib/widgets/layout/repeater/repeater-widget-designer.component.mjs +0 -125
- package/esm2022/widgets/lib/widgets/layout/repeater/repeater-widget-edit.component.mjs +0 -170
- package/esm2022/widgets/lib/widgets/layout/repeater/repeater-widget-print.component.mjs +0 -20
- package/esm2022/widgets/lib/widgets/layout/repeater/repeater-widget-view.component.mjs +0 -44
- package/esm2022/widgets/lib/widgets/layout/repeater/repeater-widget.config.mjs +0 -37
- package/esm2022/widgets/lib/widgets/layout/template/index.mjs +0 -5
- package/esm2022/widgets/lib/widgets/layout/template/template-picker/template-picker.component.mjs +0 -120
- package/esm2022/widgets/lib/widgets/layout/template/template-widget-designer.component.mjs +0 -70
- package/esm2022/widgets/lib/widgets/layout/template/template-widget-edit.component.mjs +0 -96
- package/esm2022/widgets/lib/widgets/layout/template/template-widget-view.component.mjs +0 -62
- package/esm2022/widgets/lib/widgets/layout/template/template-widget.config.mjs +0 -30
- package/esm2022/widgets/lib/widgets/layout/template/template.provider.mjs +0 -58
- package/esm2022/widgets/lib/widgets/layout/text-block/index.mjs +0 -3
- package/esm2022/widgets/lib/widgets/layout/text-block/text-block-widget-designer.component.mjs +0 -38
- package/esm2022/widgets/lib/widgets/layout/text-block/text-block-widget-view.component.mjs +0 -30
- package/esm2022/widgets/lib/widgets/layout/text-block/text-block-widget.config.mjs +0 -43
- package/esm2022/widgets/lib/widgets.module.mjs +0 -113
- package/esm2022/workflow/acorex-platform-workflow.mjs +0 -5
- package/esm2022/workflow/index.mjs +0 -7
- package/esm2022/workflow/lib/actions/start-workflow.action.mjs +0 -32
- package/esm2022/workflow/lib/errors.types.mjs +0 -8
- package/esm2022/workflow/lib/workflow-event-dispatcher.service.mjs +0 -23
- package/esm2022/workflow/lib/workflow-registery.service.mjs +0 -39
- package/esm2022/workflow/lib/workflow.module.mjs +0 -101
- package/esm2022/workflow/lib/workflow.service.mjs +0 -188
- package/esm2022/workflow/lib/workflow.types.mjs +0 -59
- package/fesm2022/acorex-platform-common-avatar-widget-edit.component-DtC2IaE8.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-avatar-widget-view.component-BOIV0Be1.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-boolean-widget-filter.component-S4-3SmKA.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-change-password.component-g_GEw3IZ.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-checkbox-widget-column.component-DOoneR7g.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-checkbox-widget-edit.component-PFRq-XS-.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-checkbox-widget-view.component-CKz8XnjT.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-dateTime-widget-column.component-DG0leXAo.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-dateTime-widget-edit.component-D8W-XEcx.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-dateTime-widget-filter.component-DngCKwFY.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-dateTime-widget-view.component-KGgJkiKB.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-email-widget-column.component-CLNqSuB7.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-email-widget-edit.component--0gaRm4s.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-email-widget-view.component-C3AUr1HO.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-file-widget-column.component-C9AHk2UP.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-file-widget-edit.component-L7bln9k0.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-file-widget-filter.component-Ce35mqny.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-file-widget-view.component-BvMzrs5C.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-gallery-widget-edit.component-BVuV2Ib8.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-gallery-widget-filter.component-C8tdM6PX.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-gallery-widget-view.component-D8YmSi9C.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-largetext-widget-edit.component-DGMxpnsr.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-lookup-widget-column.component-B-cEaNjv.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-lookup-widget-edit.component-DqB_g9Zz.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-lookup-widget-filter.component-0TPWNWSd.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-lookup-widget-view.component-DYAg76YH.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-map-widget-edit.component-C3cpsXD5.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-map-widget-view.component-C-DCNaJi.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-messenger-widget-column.component-B2A7ZBEP.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-messenger-widget-edit.component-DC8vQDo0.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-messenger-widget-view.component-B6FavkmG.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-number-widget-edit.component-Bc5-ZUw4.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-number-widget-filter.component-DxfJ90n4.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-number-widget-view.component-DGfLSGw1.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-password-widget-column.component-DEHaVLGK.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-password-widget-edit.component-DrYyu5v-.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-password-widget-view.component-B_HU-3J1.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-phone-widget-column.component-D99ncxxJ.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-phone-widget-edit.component-a5EAI9FK.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-phone-widget-view.component-BlFVuoNN.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-rich-text-widget-column.component-DOdv5I2s.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-rich-text-widget-edit.component-DL5UyAqe.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-rich-text-widget-view.component-B9WB-mx9.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-selection-list-widget-column.component-CkOuYy0Z.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-selection-list-widget-edit.component-BmbDQ1LH.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-selection-list-widget-filter.component-Dm_1-7eT.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-selection-list-widget-view.component-3hinF85C.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-signature-pad-widget-edit.component-DmmPbw-A.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-signature-pad-widget-view.component-DkFaMNk8.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-string-widget-filter.component-DAqR2PUN.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-text-widget-column.component-DVczwvKA.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-text-widget-edit.component-DC_GnFhe.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-toggle-widget-column.component-Bp1d7SAE.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-toggle-widget-edit.component-D64m4agx.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-toggle-widget-view.component-BTaXXZ88.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-entity-create-view.component-JsGlDx_S.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-entity-import-view.component-9FK_Iro9.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-entity-modify-view.component-CNbc8ewu.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-CJY8R3sa.mjs +0 -109
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-CJY8R3sa.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-C6zgLyry.mjs +0 -301
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-C6zgLyry.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-wPZPhMgy.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-DNXWb6ij.mjs +0 -148
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-DNXWb6ij.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-error-401.component-D5QQ2HAv.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-error-404.component-DSY_D3Iq.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-error-offline.component-B6wSkMdd.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-button-widget-designer.component-CPFA79Gx.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-checkbox-widget-column.component-MInF2GVN.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-checkbox-widget-designer.component-B7Qv2aYx.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-DP4kITs-.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-color-box-widget-designer.component-uQBHAspe.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-contact-widget-filter.component-DnQZon-E.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-page-widget-designer.component-DOulAanE.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-rich-text-popup.component-C8KmObPV.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-template-picker.component-DPlvwgbu.mjs +0 -123
- package/fesm2022/acorex-platform-widgets-template-picker.component-DPlvwgbu.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-template-widget-edit.component-DwPYeF0y.mjs +0 -136
- package/fesm2022/acorex-platform-widgets-template-widget-edit.component-DwPYeF0y.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-text-block-widget-designer.component-BE6goaZc.mjs.map +0 -1
- package/themes/default/lib/layout.routes.d.ts +0 -2
- package/themes/default/lib/layouts/setting-layout/setting-preview/setting-preview.component.d.ts +0 -24
- package/themes/default/lib/layouts/setting-layout/setting-view/setting-menu.component.d.ts +0 -20
- package/widgets/lib/widgets/layout/template/index.d.ts +0 -4
- package/widgets/lib/widgets/layout/template/template-picker/template-picker.component.d.ts +0 -30
- package/widgets/lib/widgets/layout/template/template-widget-designer.component.d.ts +0 -11
- package/widgets/lib/widgets/layout/template/template-widget-edit.component.d.ts +0 -13
- package/widgets/lib/widgets/layout/template/template-widget-view.component.d.ts +0 -11
- package/widgets/lib/widgets/layout/template/template-widget.config.d.ts +0 -7
- package/widgets/lib/widgets/layout/template/template.provider.d.ts +0 -24
|
@@ -1,320 +0,0 @@
|
|
|
1
|
-
import { AXUnsubscriber } from '@acorex/core/utils';
|
|
2
|
-
import { ComponentPortal } from '@angular/cdk/portal';
|
|
3
|
-
import { ChangeDetectionStrategy, Component, Injector, Input, inject, signal, } from '@angular/core';
|
|
4
|
-
import { cloneDeep, get, merge, set, sum } from 'lodash-es';
|
|
5
|
-
import { filter } from 'rxjs';
|
|
6
|
-
import { AXPLayoutBuilderService } from './builder.service';
|
|
7
|
-
import { AXPWidgetRegistryService } from './widget-registery.service';
|
|
8
|
-
import { AXP_WIDGET_TOKEN, } from './widget.types';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
import * as i1 from "@angular/common";
|
|
11
|
-
import * as i2 from "@angular/cdk/portal";
|
|
12
|
-
import * as i3 from "@acorex/components/skeleton";
|
|
13
|
-
export class AXPWidgetRendererComponent {
|
|
14
|
-
get node() {
|
|
15
|
-
return this._node;
|
|
16
|
-
}
|
|
17
|
-
set node(v) {
|
|
18
|
-
this._node = v;
|
|
19
|
-
this.loadComponent();
|
|
20
|
-
}
|
|
21
|
-
get mode() {
|
|
22
|
-
return this._mode;
|
|
23
|
-
}
|
|
24
|
-
set mode(v) {
|
|
25
|
-
this._mode = v;
|
|
26
|
-
}
|
|
27
|
-
constructor() {
|
|
28
|
-
this._mode = 'edit';
|
|
29
|
-
this.mergedOptions = signal({});
|
|
30
|
-
this.injector = inject(Injector);
|
|
31
|
-
this.builderService = inject(AXPLayoutBuilderService);
|
|
32
|
-
this.widgetRegistery = inject(AXPWidgetRegistryService);
|
|
33
|
-
this.unsubscriber = inject(AXUnsubscriber);
|
|
34
|
-
this.isLoading = signal(true);
|
|
35
|
-
this.expressionCache = new Map();
|
|
36
|
-
this.expressionEvaluators = new Map();
|
|
37
|
-
this.scope = null;
|
|
38
|
-
this.builderService.onChanged.pipe(this.unsubscriber.takeUntilDestroy).subscribe(async (e) => {
|
|
39
|
-
if ((await this.updateOptionsBasedOnContext()) > 0) {
|
|
40
|
-
this.applyOptions();
|
|
41
|
-
}
|
|
42
|
-
if (this.checkFormulaForUpdate(this.node.formula, e.path)) {
|
|
43
|
-
await this.updateValueBasedOnFormula();
|
|
44
|
-
}
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
async loadComponent() {
|
|
48
|
-
this.isLoading.set(true);
|
|
49
|
-
const widget = this.widgetRegistery.resolve(this.node.type);
|
|
50
|
-
//
|
|
51
|
-
const props = widget?.components[this.mode]?.properties
|
|
52
|
-
?.filter((c) => c.schema.defaultValue != null)
|
|
53
|
-
.map((c) => ({ [c.name]: c.schema.defaultValue }))
|
|
54
|
-
.reduce((acc, curr) => {
|
|
55
|
-
return { ...acc, ...curr };
|
|
56
|
-
}, {});
|
|
57
|
-
//
|
|
58
|
-
this.mergedOptions.set(merge(props, this.node.options) || {});
|
|
59
|
-
this.preprocessAndInitialOptions(cloneDeep(this.node.options));
|
|
60
|
-
await this.updateOptionsBasedOnContext();
|
|
61
|
-
const tokenValue = {
|
|
62
|
-
node: this.node,
|
|
63
|
-
options: this.mergedOptions(),
|
|
64
|
-
config: widget,
|
|
65
|
-
};
|
|
66
|
-
const token = Injector.create({
|
|
67
|
-
parent: this.injector,
|
|
68
|
-
providers: [
|
|
69
|
-
{
|
|
70
|
-
provide: AXP_WIDGET_TOKEN,
|
|
71
|
-
useValue: tokenValue,
|
|
72
|
-
},
|
|
73
|
-
],
|
|
74
|
-
});
|
|
75
|
-
var com = await widget?.components[this.mode]?.component();
|
|
76
|
-
this.portal = new ComponentPortal(com, null, token);
|
|
77
|
-
this.isLoading.set(false);
|
|
78
|
-
}
|
|
79
|
-
async handleAttached(portalOutletRef) {
|
|
80
|
-
portalOutletRef = portalOutletRef;
|
|
81
|
-
this.instance = portalOutletRef.instance;
|
|
82
|
-
this.instance.parent = this.parentNode;
|
|
83
|
-
this.instance.index = this.index;
|
|
84
|
-
this.instance.mode = this.mode;
|
|
85
|
-
await this.updateValueBasedOnFormula();
|
|
86
|
-
await this.assignTriggers();
|
|
87
|
-
}
|
|
88
|
-
applyOptions() {
|
|
89
|
-
if (!this.instance)
|
|
90
|
-
return;
|
|
91
|
-
this.instance.setOptions(this.mergedOptions());
|
|
92
|
-
}
|
|
93
|
-
checkFormulaForUpdate(formula, path) {
|
|
94
|
-
if (formula) {
|
|
95
|
-
const regex = /context\.eval\('([^']+)'\)/g;
|
|
96
|
-
const matches = formula.match(regex);
|
|
97
|
-
const nodes = matches ? matches.map((match) => match.match(/'([^']+)'/)[1]) : [];
|
|
98
|
-
return nodes.includes(path);
|
|
99
|
-
}
|
|
100
|
-
else
|
|
101
|
-
return false;
|
|
102
|
-
}
|
|
103
|
-
preprocessAndInitialOptions(obj, pathPrefix = '') {
|
|
104
|
-
if (!obj)
|
|
105
|
-
return;
|
|
106
|
-
Object.entries(obj).forEach(([key, value]) => {
|
|
107
|
-
const currentPath = pathPrefix ? `${pathPrefix}.${key}` : key;
|
|
108
|
-
if (typeof value === 'string' && value.includes('{{')) {
|
|
109
|
-
// Cache dynamic expression for later evaluation
|
|
110
|
-
this.expressionEvaluators.set(currentPath, () => this.evaluateExpression(value));
|
|
111
|
-
}
|
|
112
|
-
else if (typeof value === 'object' &&
|
|
113
|
-
value !== null &&
|
|
114
|
-
(value.constructor === Object || Array.isArray(value))) {
|
|
115
|
-
// Recursively handle nested objects
|
|
116
|
-
this.preprocessAndInitialOptions(value, currentPath);
|
|
117
|
-
}
|
|
118
|
-
else {
|
|
119
|
-
// Apply static values directly
|
|
120
|
-
this.mergedOptions.update((currentOptions) => {
|
|
121
|
-
return set(currentOptions, currentPath, value);
|
|
122
|
-
});
|
|
123
|
-
}
|
|
124
|
-
});
|
|
125
|
-
}
|
|
126
|
-
async updateOptionsBasedOnContext() {
|
|
127
|
-
const updates = [];
|
|
128
|
-
for (let [path, evaluator] of this.expressionEvaluators) {
|
|
129
|
-
const newValue = await evaluator();
|
|
130
|
-
updates.push({ path, newValue });
|
|
131
|
-
}
|
|
132
|
-
// Apply updates to mergedOptions
|
|
133
|
-
if (updates.length > 0) {
|
|
134
|
-
this.mergedOptions.update((o) => {
|
|
135
|
-
const updatedOptions = { ...o };
|
|
136
|
-
updates.forEach(({ path, newValue }) => {
|
|
137
|
-
// Set the new value in the updatedOptions object by path
|
|
138
|
-
set(updatedOptions, path, newValue); // Assuming 'set' can handle paths like 'property.subproperty'
|
|
139
|
-
});
|
|
140
|
-
return updatedOptions;
|
|
141
|
-
});
|
|
142
|
-
}
|
|
143
|
-
return updates.length;
|
|
144
|
-
}
|
|
145
|
-
async updateValueBasedOnFormula() {
|
|
146
|
-
if (this.node.formula) {
|
|
147
|
-
const value = await this.evaluateExpression(this.node.formula);
|
|
148
|
-
this.instance.setValue(value);
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
async evaluateExpression(templateExpression) {
|
|
152
|
-
try {
|
|
153
|
-
// Check cache first, but cache the function for evaluation, not the evaluated value
|
|
154
|
-
if (!this.expressionCache.has(templateExpression)) {
|
|
155
|
-
const expressionMatch = templateExpression.match(/\{\{\s*(.*?)\s*\}\}/);
|
|
156
|
-
if (!expressionMatch) {
|
|
157
|
-
throw Error(`No valid expression found in "${templateExpression}"`);
|
|
158
|
-
}
|
|
159
|
-
const expression = expressionMatch[1];
|
|
160
|
-
// Cache the evaluation function instead of the result
|
|
161
|
-
const scope = this.getGlobalScope();
|
|
162
|
-
const evaluationFunction = async () => {
|
|
163
|
-
const sandbox = new Function('scope', `with (scope) { return (async function() { return ${expression}; })(); }`);
|
|
164
|
-
return await sandbox(scope);
|
|
165
|
-
};
|
|
166
|
-
this.expressionCache.set(templateExpression, evaluationFunction);
|
|
167
|
-
}
|
|
168
|
-
// Retrieve the function from the cache and call it to evaluate the expression
|
|
169
|
-
const evaluate = this.expressionCache.get(templateExpression);
|
|
170
|
-
if (evaluate) {
|
|
171
|
-
const result = await evaluate();
|
|
172
|
-
return result;
|
|
173
|
-
}
|
|
174
|
-
else {
|
|
175
|
-
throw Error(`Failed to retrieve evaluation function for expression: "${templateExpression}"`);
|
|
176
|
-
}
|
|
177
|
-
}
|
|
178
|
-
catch (error) {
|
|
179
|
-
console.error('Error evaluating expression:', error);
|
|
180
|
-
return false;
|
|
181
|
-
}
|
|
182
|
-
}
|
|
183
|
-
getGlobalScope() {
|
|
184
|
-
if (this.scope)
|
|
185
|
-
return this.scope;
|
|
186
|
-
this.scope = {};
|
|
187
|
-
set(this.scope, 'context', this.getContextScope());
|
|
188
|
-
set(this.scope, 'events', this.getEventScope());
|
|
189
|
-
set(this.scope, 'widget', this.getWidgetScope());
|
|
190
|
-
set(this.scope, 'methods', this.getFunctionScope());
|
|
191
|
-
set(this.scope, 'vars', this.getVariablesScope());
|
|
192
|
-
return this.scope;
|
|
193
|
-
}
|
|
194
|
-
getContextScope() {
|
|
195
|
-
const scope = {};
|
|
196
|
-
set(scope, 'eval', (path) => this.builderService.getValue(path));
|
|
197
|
-
return scope;
|
|
198
|
-
}
|
|
199
|
-
getEventScope() {
|
|
200
|
-
const scope = {};
|
|
201
|
-
set(scope, 'context', (path) => this.builderService.onChanged.pipe(filter((c) => c.path == path)));
|
|
202
|
-
set(scope, 'from', (event) => get(this.instance.api(), event));
|
|
203
|
-
return scope;
|
|
204
|
-
}
|
|
205
|
-
getWidgetScope() {
|
|
206
|
-
const scope = {};
|
|
207
|
-
set(scope, 'call', (name, ...args) => {
|
|
208
|
-
this.instance.call(name, ...args);
|
|
209
|
-
});
|
|
210
|
-
set(scope, 'find', (id) => {
|
|
211
|
-
return this.builderService.getWidget(id)?.api();
|
|
212
|
-
});
|
|
213
|
-
return scope;
|
|
214
|
-
}
|
|
215
|
-
getFunctionScope() {
|
|
216
|
-
const scope = {};
|
|
217
|
-
set(scope, 'sum', (values) => {
|
|
218
|
-
return sum(values);
|
|
219
|
-
});
|
|
220
|
-
Object.entries(this.builderService.functions).forEach((i) => {
|
|
221
|
-
set(scope, i[0], (...args) => {
|
|
222
|
-
return i[1](...args);
|
|
223
|
-
});
|
|
224
|
-
});
|
|
225
|
-
return scope;
|
|
226
|
-
}
|
|
227
|
-
getVariablesScope() {
|
|
228
|
-
const scope = {};
|
|
229
|
-
set(scope, 'eval', (path) => get(this.builderService.variables, path));
|
|
230
|
-
return scope;
|
|
231
|
-
}
|
|
232
|
-
async assignTriggers() {
|
|
233
|
-
this.node.triggers?.forEach((t) => {
|
|
234
|
-
const event = this.evaluateTrigger(t.event);
|
|
235
|
-
event?.pipe(this.unsubscriber.takeUntilDestroy).subscribe((c) => {
|
|
236
|
-
this.evaluateAction(t.action);
|
|
237
|
-
});
|
|
238
|
-
});
|
|
239
|
-
}
|
|
240
|
-
evaluateTrigger(templateExpression) {
|
|
241
|
-
try {
|
|
242
|
-
const expressionMatch = templateExpression.match(/\{\{\s*(.*?)\s*\}\}/);
|
|
243
|
-
if (!expressionMatch) {
|
|
244
|
-
throw Error(`No valid expression found in "${templateExpression}"`);
|
|
245
|
-
}
|
|
246
|
-
const expression = expressionMatch[1];
|
|
247
|
-
// Cache the evaluation function instead of the result
|
|
248
|
-
const scope = this.getGlobalScope();
|
|
249
|
-
const sandbox = new Function('scope', `with (scope) { return ( function() { return ${expression}; })(); }`);
|
|
250
|
-
return sandbox(scope);
|
|
251
|
-
}
|
|
252
|
-
catch (error) {
|
|
253
|
-
console.error('Error evaluating expression:', error);
|
|
254
|
-
return null;
|
|
255
|
-
}
|
|
256
|
-
}
|
|
257
|
-
evaluateAction(templateExpression) {
|
|
258
|
-
try {
|
|
259
|
-
const expressionMatch = templateExpression.match(/\{\{\s*(.*?)\s*\}\}/);
|
|
260
|
-
if (!expressionMatch) {
|
|
261
|
-
throw Error(`No valid expression found in "${templateExpression}"`);
|
|
262
|
-
}
|
|
263
|
-
const expression = expressionMatch[1];
|
|
264
|
-
// Cache the evaluation function instead of the result
|
|
265
|
-
const scope = this.getGlobalScope();
|
|
266
|
-
const sandbox = new Function('scope', `with (scope) { ${expression} }`);
|
|
267
|
-
sandbox(scope);
|
|
268
|
-
}
|
|
269
|
-
catch (error) {
|
|
270
|
-
console.error('Error evaluating expression:', error);
|
|
271
|
-
}
|
|
272
|
-
}
|
|
273
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPWidgetRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
274
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXPWidgetRendererComponent, selector: "axp-widget-renderer", inputs: { node: "node", mode: "mode", parentNode: "parentNode", index: "index" }, providers: [
|
|
275
|
-
{
|
|
276
|
-
provide: AXUnsubscriber,
|
|
277
|
-
},
|
|
278
|
-
], ngImport: i0, template: `
|
|
279
|
-
@if(mergedOptions().isVisible!=false) { @if(isLoading()){
|
|
280
|
-
<ax-skeleton [animated]="true" class="ax-w-full lg:ax-w-[50%] ax-h-8 ax-rounded"></ax-skeleton>
|
|
281
|
-
} @else {
|
|
282
|
-
<ng-container *ngTemplateOutlet="tt"></ng-container>
|
|
283
|
-
} }
|
|
284
|
-
<ng-template #tt>
|
|
285
|
-
<ng-template [cdkPortalOutlet]="portal" (attached)="handleAttached($event)"></ng-template>
|
|
286
|
-
</ng-template>
|
|
287
|
-
`, 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 }); }
|
|
288
|
-
}
|
|
289
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPWidgetRendererComponent, decorators: [{
|
|
290
|
-
type: Component,
|
|
291
|
-
args: [{
|
|
292
|
-
selector: 'axp-widget-renderer',
|
|
293
|
-
template: `
|
|
294
|
-
@if(mergedOptions().isVisible!=false) { @if(isLoading()){
|
|
295
|
-
<ax-skeleton [animated]="true" class="ax-w-full lg:ax-w-[50%] ax-h-8 ax-rounded"></ax-skeleton>
|
|
296
|
-
} @else {
|
|
297
|
-
<ng-container *ngTemplateOutlet="tt"></ng-container>
|
|
298
|
-
} }
|
|
299
|
-
<ng-template #tt>
|
|
300
|
-
<ng-template [cdkPortalOutlet]="portal" (attached)="handleAttached($event)"></ng-template>
|
|
301
|
-
</ng-template>
|
|
302
|
-
`,
|
|
303
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
304
|
-
providers: [
|
|
305
|
-
{
|
|
306
|
-
provide: AXUnsubscriber,
|
|
307
|
-
},
|
|
308
|
-
],
|
|
309
|
-
}]
|
|
310
|
-
}], ctorParameters: () => [], propDecorators: { node: [{
|
|
311
|
-
type: Input,
|
|
312
|
-
args: [{ required: true }]
|
|
313
|
-
}], mode: [{
|
|
314
|
-
type: Input
|
|
315
|
-
}], parentNode: [{
|
|
316
|
-
type: Input
|
|
317
|
-
}], index: [{
|
|
318
|
-
type: Input
|
|
319
|
-
}] } });
|
|
320
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LXJlbmRlcmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXIvc3JjL2xpYi9idWlsZGVyL3dpZGdldC1yZW5kZXJlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBOEIsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbEYsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBRVQsUUFBUSxFQUNSLEtBQUssRUFFTCxNQUFNLEVBQ04sTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQzVELE9BQU8sRUFBYyxNQUFNLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDNUQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEUsT0FBTyxFQUtMLGdCQUFnQixHQUNqQixNQUFNLGdCQUFnQixDQUFDOzs7OztBQXFCeEIsTUFBTSxPQUFPLDBCQUEwQjtJQUVyQyxJQUNXLElBQUk7UUFDYixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUNELElBQVcsSUFBSSxDQUFDLENBQWdCO1FBQzlCLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ2YsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFHRCxJQUNXLElBQUk7UUFDYixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUNELElBQVcsSUFBSSxD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LENBQUM7WUFDRCxNQUFNLFVBQVUsR0FBRyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFFdEMsc0RBQXNEO1lBQ3RELE1BQU0sS0FBSyxHQUFRLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN6QyxNQUFNLE9BQU8sR0FBRyxJQUFJLFFBQVEsQ0FBQyxPQUFPLEVBQUUsbUJBQW1CLFVBQVUsSUFBSSxDQUFDLENBQUM7WUFDekUsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pCLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyw4QkFBOEIsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUN2RCxDQUFDO0lBQ0gsQ0FBQzs4R0FuU1UsMEJBQTBCO2tHQUExQiwwQkFBMEIsZ0lBTjFCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGNBQWM7YUFDeEI7U0FDRiwwQkFmUzs7Ozs7Ozs7O0dBU1Q7OzJGQVFVLDBCQUEwQjtrQkFuQnRDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsUUFBUSxFQUFFOzs7Ozs7Ozs7R0FTVDtvQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxjQUFjO3lCQUN4QjtxQkFDRjtpQkFDRjt3REFJWSxJQUFJO3NCQURkLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQVdkLElBQUk7c0JBRGQsS0FBSztnQkFTTixVQUFVO3NCQURULEtBQUs7Z0JBSU4sS0FBSztzQkFESixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhVbnN1YnNjcmliZXIgfSBmcm9tICdAYWNvcmV4L2NvcmUvdXRpbHMnO1xuaW1wb3J0IHsgQ2RrUG9ydGFsT3V0bGV0QXR0YWNoZWRSZWYsIENvbXBvbmVudFBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgQ29tcG9uZW50UmVmLFxuICBJbmplY3RvcixcbiAgSW5wdXQsXG4gIFdyaXRhYmxlU2lnbmFsLFxuICBpbmplY3QsXG4gIHNpZ25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBjbG9uZURlZXAsIGdldCwgbWVyZ2UsIHNldCwgc3VtIH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7IE9ic2VydmFibGUsIGZpbHRlciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQVhQTGF5b3V0QnVpbGRlclNlcnZpY2UgfSBmcm9tICcuL2J1aWxkZXIuc2VydmljZSc7XG5pbXBvcnQgeyBBWFBXaWRnZXRSZWdpc3RyeVNlcnZpY2UgfSBmcm9tICcuL3dpZGdldC1yZWdpc3Rlcnkuc2VydmljZSc7XG5pbXBvcnQge1xuICBBWFBXaWRnZXRDb21wb25lbnQsXG4gIEFYUFdpZGdldE5vZGUsXG4gIEFYUFdpZGdldE5vZGVUb2tlbixcbiAgQVhQV2lkZ2V0UmVuZGVyTW9kZSxcbiAgQVhQX1dJREdFVF9UT0tFTixcbn0gZnJvbSAnLi93aWRnZXQudHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheHAtd2lkZ2V0LXJlbmRlcmVyJyxcbiAgdGVtcGxhdGU6IGBcbiAgICBAaWYobWVyZ2VkT3B0aW9ucygpLmlzVmlzaWJsZSE9ZmFsc2UpIHsgQGlmKGlzTG9hZGluZygpKXtcbiAgICA8YXgtc2tlbGV0b24gW2FuaW1hdGVkXT1cInRydWVcIiBjbGFzcz1cImF4LXctZnVsbCAgbGc6YXgtdy1bNTAlXSBheC1oLTggYXgtcm91bmRlZFwiPjwvYXgtc2tlbGV0b24+XG4gICAgfSBAZWxzZSB7XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInR0XCI+PC9uZy1jb250YWluZXI+XG4gICAgfSB9XG4gICAgPG5nLXRlbXBsYXRlICN0dD5cbiAgICAgIDxuZy10ZW1wbGF0ZSBbY2RrUG9ydGFsT3V0bGV0XT1cInBvcnRhbFwiIChhdHRhY2hlZCk9XCJoYW5kbGVBdHRhY2hlZCgkZXZlbnQpXCI+PC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLXRlbXBsYXRlPlxuICBgLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogQVhVbnN1YnNjcmliZXIsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQV2lkZ2V0UmVuZGVyZXJDb21wb25lbnQge1xuICBwcml2YXRlIF9ub2RlOiBBWFBXaWRnZXROb2RlO1xuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KVxuICBwdWJsaWMgZ2V0IG5vZGUoKTogQVhQV2lkZ2V0Tm9kZSB7XG4gICAgcmV0dXJuIHRoaXMuX25vZGU7XG4gIH1cbiAgcHVibGljIHNldCBub2RlKHY6IEFYUFdpZGdldE5vZGUpIHtcbiAgICB0aGlzLl9ub2RlID0gdjtcbiAgICB0aGlzLmxvYWRDb21wb25lbnQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX21vZGU6IEFYUFdpZGdldFJlbmRlck1vZGUgPSAnZWRpdCc7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBnZXQgbW9kZSgpOiBBWFBXaWRnZXRSZW5kZXJNb2RlIHtcbiAgICByZXR1cm4gdGhpcy5fbW9kZTtcbiAgfVxuICBwdWJsaWMgc2V0IG1vZGUodjogQVhQV2lkZ2V0UmVuZGVyTW9kZSkge1xuICAgIHRoaXMuX21vZGUgPSB2O1xuICB9XG5cbiAgQElucHV0KClcbiAgcGFyZW50Tm9kZTogQVhQV2lkZ2V0Q29tcG9uZW50IHwgbnVsbDtcblxuICBASW5wdXQoKVxuICBpbmRleDogbnVtYmVyIHwgbnVsbDtcblxuICBwcm90ZWN0ZWQgbWVyZ2VkT3B0aW9uczogV3JpdGFibGVTaWduYWw8YW55PiA9IHNpZ25hbDxhbnk+KHt9KTtcblxuICBwcml2YXRlIGluamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcbiAgcHJvdGVjdGVkIGJ1aWxkZXJTZXJ2aWNlID0gaW5qZWN0KEFYUExheW91dEJ1aWxkZXJTZXJ2aWNlKTtcbiAgcHJvdGVjdGVkIHdpZGdldFJlZ2lzdGVyeSA9IGluamVjdChBWFBXaWRnZXRSZWdpc3RyeVNlcnZpY2UpO1xuICBwcm90ZWN0ZWQgdW5zdWJzY3JpYmVyID0gaW5qZWN0KEFYVW5zdWJzY3JpYmVyKTtcblxuICBwcm90ZWN0ZWQgaXNMb2FkaW5nID0gc2lnbmFsKHRydWUpO1xuICBwcml2YXRlIGluc3RhbmNlITogQVhQV2lkZ2V0Q29tcG9uZW50O1xuICBwcm90ZWN0ZWQgcG9ydGFsITogQ29tcG9uZW50UG9ydGFsPGFueT47XG4gIHByaXZhdGUgZXhwcmVzc2lvbkNhY2hlOiBNYXA8c3RyaW5nLCAoKSA9PiBQcm9taXNlPGFueT4+ID0gbmV3IE1hcCgpO1xuICBwcml2YXRlIGV4cHJlc3Npb25FdmFsdWF0b3JzOiBNYXA8c3RyaW5nLCAoKSA9PiBQcm9taXNlPGFueT4+ID0gbmV3IE1hcCgpO1xuICBwcml2YXRlIHNjb3BlOiBhbnkgPSBudWxsO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuYnVpbGRlclNlcnZpY2Uub25DaGFuZ2VkLnBpcGUodGhpcy51bnN1YnNjcmliZXIudGFrZVVudGlsRGVzdHJveSkuc3Vic2NyaWJlKGFzeW5jIChlKSA9PiB7XG4gICAgICBpZiAoKGF3YWl0IHRoaXMudXBkYXRlT3B0aW9uc0Jhc2VkT25Db250ZXh0KCkpID4gMCkge1xuICAgICAgICB0aGlzLmFwcGx5T3B0aW9ucygpO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMuY2hlY2tGb3JtdWxhRm9yVXBkYXRlKHRoaXMubm9kZS5mb3JtdWxhLCBlLnBhdGgpKSB7XG4gICAgICAgIGF3YWl0IHRoaXMudXBkYXRlVmFsdWVCYXNlZE9uRm9ybXVsYSgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBsb2FkQ29tcG9uZW50KCkge1xuICAgIHRoaXMuaXNMb2FkaW5nLnNldCh0cnVlKTtcbiAgICBjb25zdCB3aWRnZXQgPSB0aGlzLndpZGdldFJlZ2lzdGVyeS5yZXNvbHZlKHRoaXMubm9kZS50eXBlKTtcbiAgICAvL1xuICAgIGNvbnN0IHByb3BzID0gd2lkZ2V0Py5jb21wb25lbnRzW3RoaXMubW9kZV0/LnByb3BlcnRpZXNcbiAgICAgID8uZmlsdGVyKChjKSA9PiBjLnNjaGVtYS5kZWZhdWx0VmFsdWUgIT0gbnVsbClcbiAgICAgIC5tYXAoKGMpID0+ICh7IFtjLm5hbWVdOiBjLnNjaGVtYS5kZWZhdWx0VmFsdWUgfSkpXG4gICAgICAucmVkdWNlKChhY2MsIGN1cnIpID0+IHtcbiAgICAgICAgcmV0dXJuIHsgLi4uYWNjLCAuLi5jdXJyIH07XG4gICAgICB9LCB7fSk7XG4gICAgLy9cbiAgICB0aGlzLm1lcmdlZE9wdGlvbnMuc2V0KG1lcmdlKHByb3BzLCB0aGlzLm5vZGUub3B0aW9ucykgfHwge30pO1xuICAgIHRoaXMucHJlcHJvY2Vzc0FuZEluaXRpYWxPcHRpb25zKGNsb25lRGVlcCh0aGlzLm5vZGUub3B0aW9ucykpO1xuICAgIGF3YWl0IHRoaXMudXBkYXRlT3B0aW9uc0Jhc2VkT25Db250ZXh0KCk7XG4gICAgY29uc3QgdG9rZW5WYWx1ZSA9IHtcbiAgICAgIG5vZGU6IHRoaXMubm9kZSxcbiAgICAgIG9wdGlvbnM6IHRoaXMubWVyZ2VkT3B0aW9ucygpLFxuICAgICAgY29uZmlnOiB3aWRnZXQsXG4gICAgfSBhcyBBWFBXaWRnZXROb2RlVG9rZW47XG4gICAgY29uc3QgdG9rZW4gPSBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgcGFyZW50OiB0aGlzLmluamVjdG9yLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBBWFBfV0lER0VUX1RPS0VOLFxuICAgICAgICAgIHVzZVZhbHVlOiB0b2tlblZhbHVlLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9KTtcbiAgICB2YXIgY29tID0gYXdhaXQgd2lkZ2V0Py5jb21wb25lbnRzW3RoaXMubW9kZV0/LmNvbXBvbmVudCgpO1xuICAgIHRoaXMucG9ydGFsID0gbmV3IENvbXBvbmVudFBvcnRhbChjb20sIG51bGwsIHRva2VuKTtcbiAgICB0aGlzLmlzTG9hZGluZy5zZXQoZmFsc2UpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIGhhbmRsZUF0dGFjaGVkKHBvcnRhbE91dGxldFJlZjogQ2RrUG9ydGFsT3V0bGV0QXR0YWNoZWRSZWYpIHtcbiAgICBwb3J0YWxPdXRsZXRSZWYgPSBwb3J0YWxPdXRsZXRSZWYgYXMgQ29tcG9uZW50UmVmPEFYUFdpZGdldENvbXBvbmVudD47XG4gICAgdGhpcy5pbnN0YW5jZSA9IHBvcnRhbE91dGxldFJlZi5pbnN0YW5jZSBhcyBBWFBXaWRnZXRDb21wb25lbnQ7XG4gICAgdGhpcy5pbnN0YW5jZS5wYXJlbnQgPSB0aGlzLnBhcmVudE5vZGU7XG4gICAgdGhpcy5pbnN0YW5jZS5pbmRleCA9IHRoaXMuaW5kZXg7XG4gICAgdGhpcy5pbnN0YW5jZS5tb2RlID0gdGhpcy5tb2RlO1xuICAgIGF3YWl0IHRoaXMudXBkYXRlVmFsdWVCYXNlZE9uRm9ybXVsYSgpO1xuICAgIGF3YWl0IHRoaXMuYXNzaWduVHJpZ2dlcnMoKTtcbiAgfVxuXG4gIHByaXZhdGUgYXBwbHlPcHRpb25zKCkge1xuICAgIGlmICghdGhpcy5pbnN0YW5jZSkgcmV0dXJuO1xuICAgIHRoaXMuaW5zdGFuY2Uuc2V0T3B0aW9ucyh0aGlzLm1lcmdlZE9wdGlvbnMoKSk7XG4gIH1cblxuICBwcml2YXRlIGNoZWNrRm9ybXVsYUZvclVwZGF0ZShmb3JtdWxhOiBzdHJpbmcgfCB1bmRlZmluZWQsIHBhdGg/OiBzdHJpbmcgfCBudWxsKTogYm9vbGVhbiB7XG4gICAgaWYgKGZvcm11bGEpIHtcbiAgICAgIGNvbnN0IHJlZ2V4ID0gL2NvbnRleHRcXC5ldmFsXFwoJyhbXiddKyknXFwpL2c7XG4gICAgICBjb25zdCBtYXRjaGVzID0gZm9ybXVsYS5tYXRjaChyZWdleCk7XG4gICAgICBjb25zdCBub2RlcyA9IG1hdGNoZXMgPyBtYXRjaGVzLm1hcCgobWF0Y2g6IGFueSkgPT4gbWF0Y2gubWF0Y2goLycoW14nXSspJy8pWzFdKSA6IFtdO1xuICAgICAgcmV0dXJuIG5vZGVzLmluY2x1ZGVzKHBhdGgpO1xuICAgIH0gZWxzZSByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBwcmVwcm9jZXNzQW5kSW5pdGlhbE9wdGlvbnMob2JqOiBhbnksIHBhdGhQcmVmaXg6IHN0cmluZyA9ICcnKTogdm9pZCB7XG4gICAgaWYgKCFvYmopIHJldHVybjtcbiAgICBPYmplY3QuZW50cmllcyhvYmopLmZvckVhY2goKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgY29uc3QgY3VycmVudFBhdGggPSBwYXRoUHJlZml4ID8gYCR7cGF0aFByZWZpeH0uJHtrZXl9YCA6IGtleTtcbiAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnICYmIHZhbHVlLmluY2x1ZGVzKCd7eycpKSB7XG4gICAgICAgIC8vIENhY2hlIGR5bmFtaWMgZXhwcmVzc2lvbiBmb3IgbGF0ZXIgZXZhbHVhdGlvblxuICAgICAgICB0aGlzLmV4cHJlc3Npb25FdmFsdWF0b3JzLnNldChjdXJyZW50UGF0aCwgKCkgPT4gdGhpcy5ldmFsdWF0ZUV4cHJlc3Npb24odmFsdWUpKTtcbiAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgIHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgJiZcbiAgICAgICAgdmFsdWUgIT09IG51bGwgJiZcbiAgICAgICAgKHZhbHVlLmNvbnN0cnVjdG9yID09PSBPYmplY3QgfHwgQXJyYXkuaXNBcnJheSh2YWx1ZSkpXG4gICAgICApIHtcbiAgICAgICAgLy8gUmVjdXJzaXZlbHkgaGFuZGxlIG5lc3RlZCBvYmplY3RzXG4gICAgICAgIHRoaXMucHJlcHJvY2Vzc0FuZEluaXRpYWxPcHRpb25zKHZhbHVlLCBjdXJyZW50UGF0aCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBBcHBseSBzdGF0aWMgdmFsdWVzIGRpcmVjdGx5XG4gICAgICAgIHRoaXMubWVyZ2VkT3B0aW9ucy51cGRhdGUoKGN1cnJlbnRPcHRpb25zKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHNldChjdXJyZW50T3B0aW9ucywgY3VycmVudFBhdGgsIHZhbHVlKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBhc3luYyB1cGRhdGVPcHRpb25zQmFzZWRPbkNvbnRleHQoKSB7XG4gICAgY29uc3QgdXBkYXRlczogYW55W10gPSBbXTtcbiAgICBmb3IgKGxldCBbcGF0aCwgZXZhbHVhdG9yXSBvZiB0aGlzLmV4cHJlc3Npb25FdmFsdWF0b3JzKSB7XG4gICAgICBjb25zdCBuZXdWYWx1ZSA9IGF3YWl0IGV2YWx1YXRvcigpO1xuICAgICAgdXBkYXRlcy5wdXNoKHsgcGF0aCwgbmV3VmFsdWUgfSk7XG4gICAgfVxuICAgIC8vIEFwcGx5IHVwZGF0ZXMgdG8gbWVyZ2VkT3B0aW9uc1xuICAgIGlmICh1cGRhdGVzLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMubWVyZ2VkT3B0aW9ucy51cGRhdGUoKG8pID0+IHtcbiAgICAgICAgY29uc3QgdXBkYXRlZE9wdGlvbnMgPSB7IC4uLm8gfTtcbiAgICAgICAgdXBkYXRlcy5mb3JFYWNoKCh7IHBhdGgsIG5ld1ZhbHVlIH0pID0+IHtcbiAgICAgICAgICAvLyBTZXQgdGhlIG5ldyB2YWx1ZSBpbiB0aGUgdXBkYXRlZE9wdGlvbnMgb2JqZWN0IGJ5IHBhdGhcbiAgICAgICAgICBzZXQodXBkYXRlZE9wdGlvbnMsIHBhdGgsIG5ld1ZhbHVlKTsgLy8gQXNzdW1pbmcgJ3NldCcgY2FuIGhhbmRsZSBwYXRocyBsaWtlICdwcm9wZXJ0eS5zdWJwcm9wZXJ0eSdcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiB1cGRhdGVkT3B0aW9ucztcbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gdXBkYXRlcy5sZW5ndGg7XG4gIH1cblxuICBhc3luYyB1cGRhdGVWYWx1ZUJhc2VkT25Gb3JtdWxhKCkge1xuICAgIGlmICh0aGlzLm5vZGUuZm9ybXVsYSkge1xuICAgICAgY29uc3QgdmFsdWUgPSBhd2FpdCB0aGlzLmV2YWx1YXRlRXhwcmVzc2lvbih0aGlzLm5vZGUuZm9ybXVsYSk7XG4gICAgICB0aGlzLmluc3RhbmNlLnNldFZhbHVlKHZhbHVlKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGV2YWx1YXRlRXhwcmVzc2lvbih0ZW1wbGF0ZUV4cHJlc3Npb246IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgdHJ5IHtcbiAgICAgIC8vIENoZWNrIGNhY2hlIGZpcnN0LCBidXQgY2FjaGUgdGhlIGZ1bmN0aW9uIGZvciBldmFsdWF0aW9uLCBub3QgdGhlIGV2YWx1YXRlZCB2YWx1ZVxuICAgICAgaWYgKCF0aGlzLmV4cHJlc3Npb25DYWNoZS5oYXModGVtcGxhdGVFeHByZXNzaW9uKSkge1xuICAgICAgICBjb25zdCBleHByZXNzaW9uTWF0Y2ggPSB0ZW1wbGF0ZUV4cHJlc3Npb24ubWF0Y2goL1xce1xce1xccyooLio/KVxccypcXH1cXH0vKTtcbiAgICAgICAgaWYgKCFleHByZXNzaW9uTWF0Y2gpIHtcbiAgICAgICAgICB0aHJvdyBFcnJvcihgTm8gdmFsaWQgZXhwcmVzc2lvbiBmb3VuZCBpbiBcIiR7dGVtcGxhdGVFeHByZXNzaW9ufVwiYCk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZXhwcmVzc2lvbiA9IGV4cHJlc3Npb25NYXRjaFsxXTtcblxuICAgICAgICAvLyBDYWNoZSB0aGUgZXZhbHVhdGlvbiBmdW5jdGlvbiBpbnN0ZWFkIG9mIHRoZSByZXN1bHRcbiAgICAgICAgY29uc3Qgc2NvcGUgPSB0aGlzLmdldEdsb2JhbFNjb3BlKCk7XG4gICAgICAgIGNvbnN0IGV2YWx1YXRpb25GdW5jdGlvbiA9IGFzeW5jICgpID0+IHtcbiAgICAgICAgICBjb25zdCBzYW5kYm94ID0gbmV3IEZ1bmN0aW9uKFxuICAgICAgICAgICAgJ3Njb3BlJyxcbiAgICAgICAgICAgIGB3aXRoIChzY29wZSkgeyByZXR1cm4gKGFzeW5jIGZ1bmN0aW9uKCkgeyByZXR1cm4gJHtleHByZXNzaW9ufTsgfSkoKTsgfWBcbiAgICAgICAgICApO1xuICAgICAgICAgIHJldHVybiBhd2FpdCBzYW5kYm94KHNjb3BlKTtcbiAgICAgICAgfTtcblxuICAgICAgICB0aGlzLmV4cHJlc3Npb25DYWNoZS5zZXQodGVtcGxhdGVFeHByZXNzaW9uLCBldmFsdWF0aW9uRnVuY3Rpb24pO1xuICAgICAgfVxuXG4gICAgICAvLyBSZXRyaWV2ZSB0aGUgZnVuY3Rpb24gZnJvbSB0aGUgY2FjaGUgYW5kIGNhbGwgaXQgdG8gZXZhbHVhdGUgdGhlIGV4cHJlc3Npb25cbiAgICAgIGNvbnN0IGV2YWx1YXRlID0gdGhpcy5leHByZXNzaW9uQ2FjaGUuZ2V0KHRlbXBsYXRlRXhwcmVzc2lvbik7XG4gICAgICBpZiAoZXZhbHVhdGUpIHtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgZXZhbHVhdGUoKTtcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRocm93IEVycm9yKGBGYWlsZWQgdG8gcmV0cmlldmUgZXZhbHVhdGlvbiBmdW5jdGlvbiBmb3IgZXhwcmVzc2lvbjogXCIke3RlbXBsYXRlRXhwcmVzc2lvbn1cImApO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBldmFsdWF0aW5nIGV4cHJlc3Npb246JywgZXJyb3IpO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0R2xvYmFsU2NvcGUoKSB7XG4gICAgaWYgKHRoaXMuc2NvcGUpIHJldHVybiB0aGlzLnNjb3BlO1xuICAgIHRoaXMuc2NvcGUgPSB7fTtcbiAgICBzZXQodGhpcy5zY29wZSwgJ2NvbnRleHQnLCB0aGlzLmdldENvbnRleHRTY29wZSgpKTtcbiAgICBzZXQodGhpcy5zY29wZSwgJ2V2ZW50cycsIHRoaXMuZ2V0RXZlbnRTY29wZSgpKTtcbiAgICBzZXQodGhpcy5zY29wZSwgJ3dpZGdldCcsIHRoaXMuZ2V0V2lkZ2V0U2NvcGUoKSk7XG4gICAgc2V0KHRoaXMuc2NvcGUsICdtZXRob2RzJywgdGhpcy5nZXRGdW5jdGlvblNjb3BlKCkpO1xuICAgIHNldCh0aGlzLnNjb3BlLCAndmFycycsIHRoaXMuZ2V0VmFyaWFibGVzU2NvcGUoKSk7XG4gICAgcmV0dXJuIHRoaXMuc2NvcGU7XG4gIH1cblxuICBwcml2YXRlIGdldENvbnRleHRTY29wZSgpOiBhbnkge1xuICAgIGNvbnN0IHNjb3BlOiBhbnkgPSB7fTtcbiAgICBzZXQoc2NvcGUsICdldmFsJywgKHBhdGg6IHN0cmluZykgPT4gdGhpcy5idWlsZGVyU2VydmljZS5nZXRWYWx1ZShwYXRoKSk7XG4gICAgcmV0dXJuIHNjb3BlO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRFdmVudFNjb3BlKCk6IGFueSB7XG4gICAgY29uc3Qgc2NvcGU6IGFueSA9IHt9O1xuICAgIHNldChzY29wZSwgJ2NvbnRleHQnLCAocGF0aDogc3RyaW5nKSA9PiB0aGlzLmJ1aWxkZXJTZXJ2aWNlLm9uQ2hhbmdlZC5waXBlKGZpbHRlcigoYykgPT4gYy5wYXRoID09IHBhdGgpKSk7XG4gICAgc2V0KHNjb3BlLCAnZnJvbScsIChldmVudDogc3RyaW5nKSA9PiBnZXQodGhpcy5pbnN0YW5jZS5hcGkoKSwgZXZlbnQpKTtcbiAgICByZXR1cm4gc2NvcGU7XG4gIH1cblxuICBwcml2YXRlIGdldFdpZGdldFNjb3BlKCk6IGFueSB7XG4gICAgY29uc3Qgc2NvcGU6IGFueSA9IHt9O1xuICAgIHNldChzY29wZSwgJ2NhbGwnLCAobmFtZTogc3RyaW5nLCAuLi5hcmdzOiBhbnlbXSkgPT4ge1xuICAgICAgdGhpcy5pbnN0YW5jZS5jYWxsKG5hbWUsIC4uLmFyZ3MpO1xuICAgIH0pO1xuICAgIHNldChzY29wZSwgJ2ZpbmQnLCAoaWQ6IHN0cmluZykgPT4ge1xuICAgICAgcmV0dXJuIHRoaXMuYnVpbGRlclNlcnZpY2UuZ2V0V2lkZ2V0KGlkKT8uYXBpKCk7XG4gICAgfSk7XG4gICAgcmV0dXJuIHNjb3BlO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGdW5jdGlvblNjb3BlKCk6IGFueSB7XG4gICAgY29uc3Qgc2NvcGU6IGFueSA9IHt9O1xuICAgIHNldChzY29wZSwgJ3N1bScsICh2YWx1ZXM6IGFueSkgPT4ge1xuICAgICAgcmV0dXJuIHN1bSh2YWx1ZXMpO1xuICAgIH0pO1xuICAgIE9iamVjdC5lbnRyaWVzKHRoaXMuYnVpbGRlclNlcnZpY2UuZnVuY3Rpb25zKS5mb3JFYWNoKChpKSA9PiB7XG4gICAgICBzZXQoc2NvcGUsIGlbMF0sICguLi5hcmdzOiBhbnlbXSkgPT4ge1xuICAgICAgICByZXR1cm4gaVsxXSguLi5hcmdzKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICAgIHJldHVybiBzY29wZTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0VmFyaWFibGVzU2NvcGUoKTogYW55IHtcbiAgICBjb25zdCBzY29wZTogYW55ID0ge307XG4gICAgc2V0KHNjb3BlLCAnZXZhbCcsIChwYXRoOiBzdHJpbmcpID0+IGdldCh0aGlzLmJ1aWxkZXJTZXJ2aWNlLnZhcmlhYmxlcywgcGF0aCkpO1xuICAgIHJldHVybiBzY29wZTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgYXNzaWduVHJpZ2dlcnMoKSB7XG4gICAgdGhpcy5ub2RlLnRyaWdnZXJzPy5mb3JFYWNoKCh0KSA9PiB7XG4gICAgICBjb25zdCBldmVudCA9IHRoaXMuZXZhbHVhdGVUcmlnZ2VyKHQuZXZlbnQpO1xuICAgICAgZXZlbnQ/LnBpcGUodGhpcy51bnN1YnNjcmliZXIudGFrZVVudGlsRGVzdHJveSkuc3Vic2NyaWJlKChjKSA9PiB7XG4gICAgICAgIHRoaXMuZXZhbHVhdGVBY3Rpb24odC5hY3Rpb24pO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGV2YWx1YXRlVHJpZ2dlcih0ZW1wbGF0ZUV4cHJlc3Npb246IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB8IG51bGwge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBleHByZXNzaW9uTWF0Y2ggPSB0ZW1wbGF0ZUV4cHJlc3Npb24ubWF0Y2goL1xce1xce1xccyooLio/KVxccypcXH1cXH0vKTtcbiAgICAgIGlmICghZXhwcmVzc2lvbk1hdGNoKSB7XG4gICAgICAgIHRocm93IEVycm9yKGBObyB2YWxpZCBleHByZXNzaW9uIGZvdW5kIGluIFwiJHt0ZW1wbGF0ZUV4cHJlc3Npb259XCJgKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGV4cHJlc3Npb24gPSBleHByZXNzaW9uTWF0Y2hbMV07XG5cbiAgICAgIC8vIENhY2hlIHRoZSBldmFsdWF0aW9uIGZ1bmN0aW9uIGluc3RlYWQgb2YgdGhlIHJlc3VsdFxuICAgICAgY29uc3Qgc2NvcGUgPSB0aGlzLmdldEdsb2JhbFNjb3BlKCk7XG4gICAgICBjb25zdCBzYW5kYm94ID0gbmV3IEZ1bmN0aW9uKCdzY29wZScsIGB3aXRoIChzY29wZSkgeyByZXR1cm4gKCAgZnVuY3Rpb24oKSB7IHJldHVybiAke2V4cHJlc3Npb259OyB9KSgpOyB9YCk7XG4gICAgICByZXR1cm4gc2FuZGJveChzY29wZSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGV2YWx1YXRpbmcgZXhwcmVzc2lvbjonLCBlcnJvcik7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGV2YWx1YXRlQWN0aW9uKHRlbXBsYXRlRXhwcmVzc2lvbjogc3RyaW5nKSB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGV4cHJlc3Npb25NYXRjaCA9IHRlbXBsYXRlRXhwcmVzc2lvbi5tYXRjaCgvXFx7XFx7XFxzKiguKj8pXFxzKlxcfVxcfS8pO1xuICAgICAgaWYgKCFleHByZXNzaW9uTWF0Y2gpIHtcbiAgICAgICAgdGhyb3cgRXJyb3IoYE5vIHZhbGlkIGV4cHJlc3Npb24gZm91bmQgaW4gXCIke3RlbXBsYXRlRXhwcmVzc2lvbn1cImApO1xuICAgICAgfVxuICAgICAgY29uc3QgZXhwcmVzc2lvbiA9IGV4cHJlc3Npb25NYXRjaFsxXTtcblxuICAgICAgLy8gQ2FjaGUgdGhlIGV2YWx1YXRpb24gZnVuY3Rpb24gaW5zdGVhZCBvZiB0aGUgcmVzdWx0XG4gICAgICBjb25zdCBzY29wZTogYW55ID0gdGhpcy5nZXRHbG9iYWxTY29wZSgpO1xuICAgICAgY29uc3Qgc2FuZGJveCA9IG5ldyBGdW5jdGlvbignc2NvcGUnLCBgd2l0aCAoc2NvcGUpIHsgICR7ZXhwcmVzc2lvbn0gfWApO1xuICAgICAgc2FuZGJveChzY29wZSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGV2YWx1YXRpbmcgZXhwcmVzc2lvbjonLCBlcnJvcik7XG4gICAgfVxuICB9XG59XG4iXX0=
|