@wavemaker-ai/app-ng-runtime 1.0.0-rc.647469
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/build-task/.npmignore +2 -0
- package/build-task/advanced/carousel/carousel-template/carousel-template.build.d.ts +2 -0
- package/build-task/advanced/carousel/carousel.build.d.ts +2 -0
- package/build-task/advanced/custom-widget-container/custom-widget-container.build.d.ts +2 -0
- package/build-task/advanced/custom-widget-wrapper/custom-widget-wrapper.build.d.ts +2 -0
- package/build-task/advanced/login/login.build.d.ts +2 -0
- package/build-task/advanced/marquee/marquee.build.d.ts +2 -0
- package/build-task/basic/anchor/anchor.build.d.ts +2 -0
- package/build-task/basic/audio/audio.build.d.ts +2 -0
- package/build-task/basic/html/html.build.d.ts +2 -0
- package/build-task/basic/icon/icon.build.d.ts +2 -0
- package/build-task/basic/iframe/iframe.build.d.ts +2 -0
- package/build-task/basic/label/label.build.d.ts +2 -0
- package/build-task/basic/picture/picture.build.d.ts +2 -0
- package/build-task/basic/progress/progress-bar/progress-bar.build.d.ts +2 -0
- package/build-task/basic/progress/progress-circle/progress-circle.build.d.ts +2 -0
- package/build-task/basic/rich-text-editor/rich-text-editor.build.d.ts +2 -0
- package/build-task/basic/search/search.build.d.ts +2 -0
- package/build-task/basic/spinner/spinner.build.d.ts +2 -0
- package/build-task/basic/tree/tree.build.d.ts +1 -0
- package/build-task/basic/video/video.build.d.ts +2 -0
- package/build-task/bundles/index.umd.js +3106 -0
- package/build-task/chart/chart.build.d.ts +2 -0
- package/build-task/containers/accordion/accordion-pane/accordion-pane.build.d.ts +2 -0
- package/build-task/containers/accordion/accordion.build.d.ts +2 -0
- package/build-task/containers/container.build.d.ts +2 -0
- package/build-task/containers/layout-grid/layout-grid-column/layout-grid-column.build.d.ts +2 -0
- package/build-task/containers/layout-grid/layout-grid-row/layout-grid-row.build.d.ts +2 -0
- package/build-task/containers/layout-grid/layout-grid.build.d.ts +2 -0
- package/build-task/containers/linear-layout/linear-layout-item/linear-layout-item.build.d.ts +2 -0
- package/build-task/containers/linear-layout/linear-layout.build.d.ts +2 -0
- package/build-task/containers/panel/panel.build.d.ts +2 -0
- package/build-task/containers/repeat-template.build.d.ts +2 -0
- package/build-task/containers/segmented-control/segment-content/segment-content.build.d.ts +2 -0
- package/build-task/containers/segmented-control/segmented-control.build.d.ts +2 -0
- package/build-task/containers/tabs/tab-pane/tab-pane.build.d.ts +2 -0
- package/build-task/containers/tabs/tabs.build.d.ts +2 -0
- package/build-task/containers/tile/tile.build.d.ts +2 -0
- package/build-task/containers/wizard/wizard-action/wizard-action.build.d.ts +2 -0
- package/build-task/containers/wizard/wizard-step/wizard-step.build.d.ts +2 -0
- package/build-task/containers/wizard/wizard.build.d.ts +2 -0
- package/build-task/data/card/card-actions/card-actions.build.d.ts +2 -0
- package/build-task/data/card/card-content/card-content.build.d.ts +2 -0
- package/build-task/data/card/card-footer/card-footer.build.d.ts +2 -0
- package/build-task/data/card/card.build.d.ts +2 -0
- package/build-task/data/form/form-action/form-action.build.d.ts +2 -0
- package/build-task/data/form/form-field/form-field.build.d.ts +2 -0
- package/build-task/data/form/form.build.d.ts +2 -0
- package/build-task/data/list/list.build.d.ts +2 -0
- package/build-task/data/live-table/live-table.build.d.ts +2 -0
- package/build-task/data/media-list/media-list-item/media-list-item.build.d.ts +2 -0
- package/build-task/data/media-list/media-list.build.d.ts +2 -0
- package/build-task/data/pagination/pagination.build.d.ts +2 -0
- package/build-task/data/table/table-action/table-action.build.d.ts +2 -0
- package/build-task/data/table/table-column/table-column.build.d.ts +2 -0
- package/build-task/data/table/table-column-group/table-column-group.build.d.ts +2 -0
- package/build-task/data/table/table-row/table-row.build.d.ts +2 -0
- package/build-task/data/table/table-row-action/table-row-action.build.d.ts +2 -0
- package/build-task/data/table/table.build.d.ts +2 -0
- package/build-task/device/barcode-scanner/barcode-scanner.build.d.ts +2 -0
- package/build-task/device/camera/camera.build.d.ts +2 -0
- package/build-task/dialogs/alert-dialog/alert-dialog.build.d.ts +2 -0
- package/build-task/dialogs/base/dialog-footer/dialog-footer.build.d.ts +2 -0
- package/build-task/dialogs/confirm-dialog/confirm-dialog.build.d.ts +2 -0
- package/build-task/dialogs/design-dialog/dialog.build.d.ts +2 -0
- package/build-task/dialogs/iframe-dialog/iframe-dialog.build.d.ts +2 -0
- package/build-task/dialogs/login-dialog/login-dialog.build.d.ts +2 -0
- package/build-task/dialogs/partial-dialog/partial-dialog.build.d.ts +2 -0
- package/build-task/esm2022/advanced/carousel/carousel-template/carousel-template.build.mjs +31 -0
- package/build-task/esm2022/advanced/carousel/carousel.build.mjs +45 -0
- package/build-task/esm2022/advanced/custom-widget-container/custom-widget-container.build.mjs +15 -0
- package/build-task/esm2022/advanced/custom-widget-wrapper/custom-widget-wrapper.build.mjs +26 -0
- package/build-task/esm2022/advanced/login/login.build.mjs +15 -0
- package/build-task/esm2022/advanced/marquee/marquee.build.mjs +10 -0
- package/build-task/esm2022/basic/anchor/anchor.build.mjs +15 -0
- package/build-task/esm2022/basic/audio/audio.build.mjs +10 -0
- package/build-task/esm2022/basic/html/html.build.mjs +15 -0
- package/build-task/esm2022/basic/icon/icon.build.mjs +10 -0
- package/build-task/esm2022/basic/iframe/iframe.build.mjs +10 -0
- package/build-task/esm2022/basic/label/label.build.mjs +25 -0
- package/build-task/esm2022/basic/picture/picture.build.mjs +14 -0
- package/build-task/esm2022/basic/progress/progress-bar/progress-bar.build.mjs +35 -0
- package/build-task/esm2022/basic/progress/progress-circle/progress-circle.build.mjs +15 -0
- package/build-task/esm2022/basic/rich-text-editor/rich-text-editor.build.mjs +15 -0
- package/build-task/esm2022/basic/search/search.build.mjs +11 -0
- package/build-task/esm2022/basic/spinner/spinner.build.mjs +15 -0
- package/build-task/esm2022/basic/tree/tree.build.mjs +9 -0
- package/build-task/esm2022/basic/video/video.build.mjs +10 -0
- package/build-task/esm2022/chart/chart.build.mjs +10 -0
- package/build-task/esm2022/containers/accordion/accordion-pane/accordion-pane.build.mjs +15 -0
- package/build-task/esm2022/containers/accordion/accordion.build.mjs +40 -0
- package/build-task/esm2022/containers/container.build.mjs +10 -0
- package/build-task/esm2022/containers/layout-grid/layout-grid-column/layout-grid-column.build.mjs +10 -0
- package/build-task/esm2022/containers/layout-grid/layout-grid-row/layout-grid-row.build.mjs +10 -0
- package/build-task/esm2022/containers/layout-grid/layout-grid.build.mjs +10 -0
- package/build-task/esm2022/containers/linear-layout/linear-layout-item/linear-layout-item.build.mjs +10 -0
- package/build-task/esm2022/containers/linear-layout/linear-layout.build.mjs +21 -0
- package/build-task/esm2022/containers/panel/panel.build.mjs +21 -0
- package/build-task/esm2022/containers/repeat-template.build.mjs +26 -0
- package/build-task/esm2022/containers/segmented-control/segment-content/segment-content.build.mjs +10 -0
- package/build-task/esm2022/containers/segmented-control/segmented-control.build.mjs +10 -0
- package/build-task/esm2022/containers/tabs/tab-pane/tab-pane.build.mjs +10 -0
- package/build-task/esm2022/containers/tabs/tabs.build.mjs +40 -0
- package/build-task/esm2022/containers/tile/tile.build.mjs +10 -0
- package/build-task/esm2022/containers/wizard/wizard-action/wizard-action.build.mjs +10 -0
- package/build-task/esm2022/containers/wizard/wizard-step/wizard-step.build.mjs +16 -0
- package/build-task/esm2022/containers/wizard/wizard.build.mjs +39 -0
- package/build-task/esm2022/data/card/card-actions/card-actions.build.mjs +10 -0
- package/build-task/esm2022/data/card/card-content/card-content.build.mjs +10 -0
- package/build-task/esm2022/data/card/card-footer/card-footer.build.mjs +10 -0
- package/build-task/esm2022/data/card/card.build.mjs +10 -0
- package/build-task/esm2022/data/form/form-action/form-action.build.mjs +12 -0
- package/build-task/esm2022/data/form/form-field/form-field.build.mjs +173 -0
- package/build-task/esm2022/data/form/form.build.mjs +161 -0
- package/build-task/esm2022/data/list/list.build.mjs +89 -0
- package/build-task/esm2022/data/live-table/live-table.build.mjs +21 -0
- package/build-task/esm2022/data/media-list/media-list-item/media-list-item.build.mjs +10 -0
- package/build-task/esm2022/data/media-list/media-list.build.mjs +57 -0
- package/build-task/esm2022/data/pagination/pagination.build.mjs +10 -0
- package/build-task/esm2022/data/table/table-action/table-action.build.mjs +10 -0
- package/build-task/esm2022/data/table/table-column/table-column.build.mjs +294 -0
- package/build-task/esm2022/data/table/table-column-group/table-column-group.build.mjs +10 -0
- package/build-task/esm2022/data/table/table-row/table-row.build.mjs +34 -0
- package/build-task/esm2022/data/table/table-row-action/table-row-action.build.mjs +41 -0
- package/build-task/esm2022/data/table/table.build.mjs +86 -0
- package/build-task/esm2022/device/barcode-scanner/barcode-scanner.build.mjs +15 -0
- package/build-task/esm2022/device/camera/camera.build.mjs +15 -0
- package/build-task/esm2022/dialogs/alert-dialog/alert-dialog.build.mjs +10 -0
- package/build-task/esm2022/dialogs/base/dialog-footer/dialog-footer.build.mjs +10 -0
- package/build-task/esm2022/dialogs/confirm-dialog/confirm-dialog.build.mjs +10 -0
- package/build-task/esm2022/dialogs/design-dialog/dialog.build.mjs +17 -0
- package/build-task/esm2022/dialogs/iframe-dialog/iframe-dialog.build.mjs +10 -0
- package/build-task/esm2022/dialogs/login-dialog/login-dialog.build.mjs +10 -0
- package/build-task/esm2022/dialogs/partial-dialog/partial-dialog.build.mjs +40 -0
- package/build-task/esm2022/index.mjs +5 -0
- package/build-task/esm2022/input/calendar/calendar.build.mjs +13 -0
- package/build-task/esm2022/input/chips/chips.build.mjs +11 -0
- package/build-task/esm2022/input/color-picker/color-picker.build.mjs +11 -0
- package/build-task/esm2022/input/currency/currency.build.mjs +11 -0
- package/build-task/esm2022/input/default/button/button.build.mjs +15 -0
- package/build-task/esm2022/input/default/button-group/button-group.build.mjs +10 -0
- package/build-task/esm2022/input/default/checkbox/checkbox.build.mjs +18 -0
- package/build-task/esm2022/input/default/checkboxset/checkboxset.build.mjs +11 -0
- package/build-task/esm2022/input/default/composite/composite.build.mjs +10 -0
- package/build-task/esm2022/input/default/number/number.build.mjs +11 -0
- package/build-task/esm2022/input/default/radioset/radioset.build.mjs +15 -0
- package/build-task/esm2022/input/default/select/select.build.mjs +11 -0
- package/build-task/esm2022/input/default/switch/switch.build.mjs +15 -0
- package/build-task/esm2022/input/default/text/text.build.mjs +11 -0
- package/build-task/esm2022/input/default/textarea/textarea.build.mjs +11 -0
- package/build-task/esm2022/input/epoch/date/date.build.mjs +11 -0
- package/build-task/esm2022/input/epoch/date-time/date-time.build.mjs +11 -0
- package/build-task/esm2022/input/epoch/time/time.build.mjs +11 -0
- package/build-task/esm2022/input/file-upload/file-upload.build.mjs +20 -0
- package/build-task/esm2022/input/rating/rating.build.mjs +11 -0
- package/build-task/esm2022/input/slider/slider.build.mjs +11 -0
- package/build-task/esm2022/message/message.build.mjs +15 -0
- package/build-task/esm2022/navigation/breadcrumb/breadcrumb.build.mjs +10 -0
- package/build-task/esm2022/navigation/menu/menu.build.mjs +27 -0
- package/build-task/esm2022/navigation/nav/nav-item/nav-item.build.mjs +10 -0
- package/build-task/esm2022/navigation/nav/nav.build.mjs +10 -0
- package/build-task/esm2022/navigation/navbar/navbar.build.mjs +10 -0
- package/build-task/esm2022/navigation/popover/popover.build.mjs +41 -0
- package/build-task/esm2022/page/content/content.build.mjs +10 -0
- package/build-task/esm2022/page/footer/footer.build.mjs +15 -0
- package/build-task/esm2022/page/header/header.build.mjs +15 -0
- package/build-task/esm2022/page/layout.build.mjs +15 -0
- package/build-task/esm2022/page/left-panel/left-panel.build.mjs +15 -0
- package/build-task/esm2022/page/mobile-navbar/mobile-navbar.build.mjs +10 -0
- package/build-task/esm2022/page/page-content/page-content.build.mjs +36 -0
- package/build-task/esm2022/page/page.build.mjs +59 -0
- package/build-task/esm2022/page/right-panel/right-panel.build.mjs +15 -0
- package/build-task/esm2022/page/router-outlet/router-outlet.build.mjs +10 -0
- package/build-task/esm2022/page/tab-bar/tab-bar.build.mjs +10 -0
- package/build-task/esm2022/page/top-nav/top-nav.build.mjs +15 -0
- package/build-task/esm2022/partial/partial.build.mjs +25 -0
- package/build-task/esm2022/partial-param/partial-param.build.mjs +10 -0
- package/build-task/esm2022/prefab/prefab-container/prefab-container.build.mjs +25 -0
- package/build-task/esm2022/prefab/prefab.build.mjs +10 -0
- package/build-task/esm2022/public_api.mjs +113 -0
- package/build-task/esm2022/utils/utils.mjs +69 -0
- package/build-task/fesm2022/index.mjs +2998 -0
- package/build-task/fesm2022/index.mjs.map +1 -0
- package/build-task/index.d.ts +5 -0
- package/build-task/input/calendar/calendar.build.d.ts +2 -0
- package/build-task/input/chips/chips.build.d.ts +2 -0
- package/build-task/input/color-picker/color-picker.build.d.ts +2 -0
- package/build-task/input/currency/currency.build.d.ts +2 -0
- package/build-task/input/default/button/button.build.d.ts +2 -0
- package/build-task/input/default/button-group/button-group.build.d.ts +2 -0
- package/build-task/input/default/checkbox/checkbox.build.d.ts +2 -0
- package/build-task/input/default/checkboxset/checkboxset.build.d.ts +2 -0
- package/build-task/input/default/composite/composite.build.d.ts +2 -0
- package/build-task/input/default/number/number.build.d.ts +2 -0
- package/build-task/input/default/radioset/radioset.build.d.ts +2 -0
- package/build-task/input/default/select/select.build.d.ts +2 -0
- package/build-task/input/default/switch/switch.build.d.ts +2 -0
- package/build-task/input/default/text/text.build.d.ts +2 -0
- package/build-task/input/default/textarea/textarea.build.d.ts +2 -0
- package/build-task/input/epoch/date/date.build.d.ts +2 -0
- package/build-task/input/epoch/date-time/date-time.build.d.ts +2 -0
- package/build-task/input/epoch/time/time.build.d.ts +2 -0
- package/build-task/input/file-upload/file-upload.build.d.ts +2 -0
- package/build-task/input/rating/rating.build.d.ts +2 -0
- package/build-task/input/slider/slider.build.d.ts +2 -0
- package/build-task/message/message.build.d.ts +2 -0
- package/build-task/navigation/breadcrumb/breadcrumb.build.d.ts +2 -0
- package/build-task/navigation/menu/menu.build.d.ts +2 -0
- package/build-task/navigation/nav/nav-item/nav-item.build.d.ts +2 -0
- package/build-task/navigation/nav/nav.build.d.ts +2 -0
- package/build-task/navigation/navbar/navbar.build.d.ts +2 -0
- package/build-task/navigation/popover/popover.build.d.ts +2 -0
- package/build-task/package.json +25 -0
- package/build-task/page/content/content.build.d.ts +2 -0
- package/build-task/page/footer/footer.build.d.ts +2 -0
- package/build-task/page/header/header.build.d.ts +2 -0
- package/build-task/page/layout.build.d.ts +2 -0
- package/build-task/page/left-panel/left-panel.build.d.ts +2 -0
- package/build-task/page/mobile-navbar/mobile-navbar.build.d.ts +2 -0
- package/build-task/page/page-content/page-content.build.d.ts +2 -0
- package/build-task/page/page.build.d.ts +2 -0
- package/build-task/page/right-panel/right-panel.build.d.ts +2 -0
- package/build-task/page/router-outlet/router-outlet.build.d.ts +2 -0
- package/build-task/page/tab-bar/tab-bar.build.d.ts +2 -0
- package/build-task/page/top-nav/top-nav.build.d.ts +2 -0
- package/build-task/partial/partial.build.d.ts +2 -0
- package/build-task/partial-param/partial-param.build.d.ts +2 -0
- package/build-task/prefab/prefab-container/prefab-container.build.d.ts +2 -0
- package/build-task/prefab/prefab.build.d.ts +2 -0
- package/build-task/public_api.d.ts +112 -0
- package/build-task/utils/utils.d.ts +21 -0
- package/components/advanced/carousel/.npmignore +2 -0
- package/components/advanced/carousel/bundles/index.umd.js +352 -0
- package/components/advanced/carousel/carousel-template/carousel-template.directive.d.ts +9 -0
- package/components/advanced/carousel/carousel-template/carousel-template.props.d.ts +1 -0
- package/components/advanced/carousel/carousel.animator.d.ts +45 -0
- package/components/advanced/carousel/carousel.directive.d.ts +35 -0
- package/components/advanced/carousel/carousel.props.d.ts +1 -0
- package/components/advanced/carousel/esm2022/carousel-template/carousel-template.directive.mjs +32 -0
- package/components/advanced/carousel/esm2022/carousel-template/carousel-template.props.mjs +7 -0
- package/components/advanced/carousel/esm2022/carousel.animator.mjs +149 -0
- package/components/advanced/carousel/esm2022/carousel.directive.mjs +135 -0
- package/components/advanced/carousel/esm2022/carousel.props.mjs +13 -0
- package/components/advanced/carousel/esm2022/index.mjs +5 -0
- package/components/advanced/carousel/esm2022/public_api.mjs +4 -0
- package/components/advanced/carousel/fesm2022/index.mjs +335 -0
- package/components/advanced/carousel/fesm2022/index.mjs.map +1 -0
- package/components/advanced/carousel/index.d.ts +5 -0
- package/components/advanced/carousel/package.json +20 -0
- package/components/advanced/carousel/public_api.d.ts +3 -0
- package/components/advanced/custom/.npmignore +2 -0
- package/components/advanced/custom/bundles/index.umd.js +258 -0
- package/components/advanced/custom/custom-widget-container/custom-widget-container.directive.d.ts +29 -0
- package/components/advanced/custom/custom-widget-container/custom-widget.props.d.ts +2 -0
- package/components/advanced/custom/custom-widget-prop.d.ts +1 -0
- package/components/advanced/custom/custom-widget.directive.d.ts +19 -0
- package/components/advanced/custom/esm2022/custom-widget-container/custom-widget-container.directive.mjs +156 -0
- package/components/advanced/custom/esm2022/custom-widget-container/custom-widget.props.mjs +12 -0
- package/components/advanced/custom/esm2022/custom-widget-prop.mjs +8 -0
- package/components/advanced/custom/esm2022/custom-widget.directive.mjs +70 -0
- package/components/advanced/custom/esm2022/index.mjs +5 -0
- package/components/advanced/custom/esm2022/public_api.mjs +3 -0
- package/components/advanced/custom/fesm2022/index.mjs +244 -0
- package/components/advanced/custom/fesm2022/index.mjs.map +1 -0
- package/components/advanced/custom/index.d.ts +5 -0
- package/components/advanced/custom/package.json +20 -0
- package/components/advanced/custom/public_api.d.ts +2 -0
- package/components/advanced/login/.npmignore +2 -0
- package/components/advanced/login/bundles/index.umd.js +135 -0
- package/components/advanced/login/esm2022/index.mjs +5 -0
- package/components/advanced/login/esm2022/login.component.mjs +107 -0
- package/components/advanced/login/esm2022/login.props.mjs +8 -0
- package/components/advanced/login/esm2022/public_api.mjs +2 -0
- package/components/advanced/login/fesm2022/index.mjs +120 -0
- package/components/advanced/login/fesm2022/index.mjs.map +1 -0
- package/components/advanced/login/index.d.ts +5 -0
- package/components/advanced/login/login.component.d.ts +31 -0
- package/components/advanced/login/login.props.d.ts +1 -0
- package/components/advanced/login/package.json +20 -0
- package/components/advanced/login/public_api.d.ts +1 -0
- package/components/advanced/marquee/.npmignore +2 -0
- package/components/advanced/marquee/bundles/index.umd.js +71 -0
- package/components/advanced/marquee/esm2022/index.mjs +5 -0
- package/components/advanced/marquee/esm2022/marquee.directive.mjs +36 -0
- package/components/advanced/marquee/esm2022/marquee.props.mjs +12 -0
- package/components/advanced/marquee/esm2022/public_api.mjs +2 -0
- package/components/advanced/marquee/fesm2022/index.mjs +53 -0
- package/components/advanced/marquee/fesm2022/index.mjs.map +1 -0
- package/components/advanced/marquee/index.d.ts +5 -0
- package/components/advanced/marquee/marquee.directive.d.ts +9 -0
- package/components/advanced/marquee/marquee.props.d.ts +1 -0
- package/components/advanced/marquee/package.json +20 -0
- package/components/advanced/marquee/public_api.d.ts +1 -0
- package/components/base/.npmignore +2 -0
- package/components/base/bundles/index.umd.js +5982 -0
- package/components/base/decorators/autolayout.decorator.d.ts +4 -0
- package/components/base/decorators/autolayout.props.d.ts +1 -0
- package/components/base/directives/show-in-device.directive.d.ts +16 -0
- package/components/base/esm2022/decorators/autolayout.decorator.mjs +476 -0
- package/components/base/esm2022/decorators/autolayout.props.mjs +20 -0
- package/components/base/esm2022/directives/show-in-device.directive.mjs +90 -0
- package/components/base/esm2022/index.mjs +5 -0
- package/components/base/esm2022/pipes/custom-pipes.mjs +473 -0
- package/components/base/esm2022/pipes/image.pipe.mjs +19 -0
- package/components/base/esm2022/pipes/sanitize.pipe.mjs +44 -0
- package/components/base/esm2022/pipes/trust-as.pipe.mjs +41 -0
- package/components/base/esm2022/pipes/wm-pipe.mjs +18 -0
- package/components/base/esm2022/public_api.mjs +36 -0
- package/components/base/esm2022/utils/autolayout-utils.mjs +261 -0
- package/components/base/esm2022/utils/data-utils.mjs +581 -0
- package/components/base/esm2022/utils/form-utils.mjs +451 -0
- package/components/base/esm2022/utils/live-utils.mjs +216 -0
- package/components/base/esm2022/utils/widget-utils.mjs +495 -0
- package/components/base/esm2022/widgets/common/base/base-container.component.mjs +80 -0
- package/components/base/esm2022/widgets/common/base/base-field-validations.mjs +295 -0
- package/components/base/esm2022/widgets/common/base/base.component.mjs +713 -0
- package/components/base/esm2022/widgets/common/base/custom-widget-container.directive.mjs +48 -0
- package/components/base/esm2022/widgets/common/base/dataset-aware-nav.component.mjs +222 -0
- package/components/base/esm2022/widgets/common/base/partial-container.directive.mjs +115 -0
- package/components/base/esm2022/widgets/common/base/stylable.component.mjs +11 -0
- package/components/base/esm2022/widgets/common/base/text-content.directive.mjs +26 -0
- package/components/base/esm2022/widgets/common/container/container.directive.mjs +51 -0
- package/components/base/esm2022/widgets/common/container/container.props.mjs +15 -0
- package/components/base/esm2022/widgets/common/dialog/dialog.service.mjs +170 -0
- package/components/base/esm2022/widgets/common/item-template/item-template.directive.mjs +89 -0
- package/components/base/esm2022/widgets/common/item-template/item-template.props.mjs +7 -0
- package/components/base/esm2022/widgets/common/lazy-load/lazy-load.directive.mjs +84 -0
- package/components/base/esm2022/widgets/common/message/message.component.mjs +104 -0
- package/components/base/esm2022/widgets/common/message/message.props.mjs +13 -0
- package/components/base/esm2022/widgets/common/partial/partial.directive.mjs +53 -0
- package/components/base/esm2022/widgets/common/partial/partial.props.mjs +7 -0
- package/components/base/esm2022/widgets/common/partial-param/partial-param.directive.mjs +88 -0
- package/components/base/esm2022/widgets/common/pull-to-refresh/pull-to-refresh.mjs +261 -0
- package/components/base/esm2022/widgets/common/redraw/redrawable.directive.mjs +40 -0
- package/components/base/esm2022/widgets/common/repeat-template/repeat-template.directive.mjs +33 -0
- package/components/base/esm2022/widgets/common/repeat-template/repeat-template.props.mjs +7 -0
- package/components/base/esm2022/widgets/framework/constants.mjs +36 -0
- package/components/base/esm2022/widgets/framework/deviceview.mjs +126 -0
- package/components/base/esm2022/widgets/framework/property-change-handler.mjs +96 -0
- package/components/base/esm2022/widgets/framework/styler.mjs +123 -0
- package/components/base/esm2022/widgets/framework/types.mjs +8 -0
- package/components/base/esm2022/widgets/framework/widget-id-generator.mjs +3 -0
- package/components/base/esm2022/widgets/framework/widget-props.mjs +35 -0
- package/components/base/esm2022/widgets/framework/widget-proxy-provider.mjs +75 -0
- package/components/base/esm2022/widgets/framework/widget-registry.mjs +49 -0
- package/components/base/fesm2022/index.mjs +5858 -0
- package/components/base/fesm2022/index.mjs.map +1 -0
- package/components/base/index.d.ts +5 -0
- package/components/base/package.json +28 -0
- package/components/base/pipes/custom-pipes.d.ts +104 -0
- package/components/base/pipes/image.pipe.d.ts +7 -0
- package/components/base/pipes/sanitize.pipe.d.ts +10 -0
- package/components/base/pipes/trust-as.pipe.d.ts +10 -0
- package/components/base/pipes/wm-pipe.d.ts +9 -0
- package/components/base/public_api.d.ts +35 -0
- package/components/base/utils/autolayout-utils.d.ts +29 -0
- package/components/base/utils/data-utils.d.ts +181 -0
- package/components/base/utils/form-utils.d.ts +85 -0
- package/components/base/utils/live-utils.d.ts +65 -0
- package/components/base/utils/widget-utils.d.ts +120 -0
- package/components/base/widgets/common/base/base-container.component.d.ts +16 -0
- package/components/base/widgets/common/base/base-field-validations.d.ts +27 -0
- package/components/base/widgets/common/base/base.component.d.ts +276 -0
- package/components/base/widgets/common/base/custom-widget-container.directive.d.ts +15 -0
- package/components/base/widgets/common/base/dataset-aware-nav.component.d.ts +77 -0
- package/components/base/widgets/common/base/partial-container.directive.d.ts +22 -0
- package/components/base/widgets/common/base/stylable.component.d.ts +54 -0
- package/components/base/widgets/common/base/text-content.directive.d.ts +9 -0
- package/components/base/widgets/common/container/container.directive.d.ts +12 -0
- package/components/base/widgets/common/container/container.props.d.ts +1 -0
- package/components/base/widgets/common/dialog/dialog.service.d.ts +54 -0
- package/components/base/widgets/common/item-template/item-template.directive.d.ts +32 -0
- package/components/base/widgets/common/item-template/item-template.props.d.ts +1 -0
- package/components/base/widgets/common/lazy-load/lazy-load.directive.d.ts +15 -0
- package/components/base/widgets/common/message/message.component.d.ts +19 -0
- package/components/base/widgets/common/message/message.props.d.ts +1 -0
- package/components/base/widgets/common/partial/partial.directive.d.ts +15 -0
- package/components/base/widgets/common/partial/partial.props.d.ts +1 -0
- package/components/base/widgets/common/partial-param/partial-param.directive.d.ts +21 -0
- package/components/base/widgets/common/pull-to-refresh/pull-to-refresh.d.ts +48 -0
- package/components/base/widgets/common/redraw/redrawable.directive.d.ts +8 -0
- package/components/base/widgets/common/repeat-template/repeat-template.directive.d.ts +9 -0
- package/components/base/widgets/common/repeat-template/repeat-template.props.d.ts +1 -0
- package/components/base/widgets/framework/constants.d.ts +16 -0
- package/components/base/widgets/framework/deviceview.d.ts +1 -0
- package/components/base/widgets/framework/property-change-handler.d.ts +8 -0
- package/components/base/widgets/framework/styler.d.ts +59 -0
- package/components/base/widgets/framework/types.d.ts +23 -0
- package/components/base/widgets/framework/widget-id-generator.d.ts +2 -0
- package/components/base/widgets/framework/widget-props.d.ts +12 -0
- package/components/base/widgets/framework/widget-proxy-provider.d.ts +11 -0
- package/components/base/widgets/framework/widget-registry.d.ts +14 -0
- package/components/basic/anchor/.npmignore +2 -0
- package/components/basic/anchor/anchor.component.d.ts +37 -0
- package/components/basic/anchor/anchor.props.d.ts +1 -0
- package/components/basic/anchor/bundles/index.umd.js +204 -0
- package/components/basic/anchor/esm2022/anchor.component.mjs +155 -0
- package/components/basic/anchor/esm2022/anchor.props.mjs +27 -0
- package/components/basic/anchor/esm2022/index.mjs +5 -0
- package/components/basic/anchor/esm2022/public_api.mjs +2 -0
- package/components/basic/anchor/fesm2022/index.mjs +187 -0
- package/components/basic/anchor/fesm2022/index.mjs.map +1 -0
- package/components/basic/anchor/index.d.ts +5 -0
- package/components/basic/anchor/package.json +20 -0
- package/components/basic/anchor/public_api.d.ts +1 -0
- package/components/basic/audio/.npmignore +2 -0
- package/components/basic/audio/audio.component.d.ts +20 -0
- package/components/basic/audio/audio.props.d.ts +1 -0
- package/components/basic/audio/bundles/index.umd.js +83 -0
- package/components/basic/audio/esm2022/audio.component.mjs +41 -0
- package/components/basic/audio/esm2022/audio.props.mjs +19 -0
- package/components/basic/audio/esm2022/index.mjs +5 -0
- package/components/basic/audio/esm2022/public_api.mjs +2 -0
- package/components/basic/audio/fesm2022/index.mjs +65 -0
- package/components/basic/audio/fesm2022/index.mjs.map +1 -0
- package/components/basic/audio/index.d.ts +5 -0
- package/components/basic/audio/package.json +20 -0
- package/components/basic/audio/public_api.d.ts +1 -0
- package/components/basic/html/.npmignore +2 -0
- package/components/basic/html/bundles/index.umd.js +122 -0
- package/components/basic/html/esm2022/html.directive.mjs +88 -0
- package/components/basic/html/esm2022/html.props.mjs +12 -0
- package/components/basic/html/esm2022/index.mjs +5 -0
- package/components/basic/html/esm2022/public_api.mjs +2 -0
- package/components/basic/html/fesm2022/index.mjs +105 -0
- package/components/basic/html/fesm2022/index.mjs.map +1 -0
- package/components/basic/html/html.directive.d.ts +14 -0
- package/components/basic/html/html.props.d.ts +1 -0
- package/components/basic/html/index.d.ts +5 -0
- package/components/basic/html/package.json +20 -0
- package/components/basic/html/public_api.d.ts +1 -0
- package/components/basic/icon/.npmignore +2 -0
- package/components/basic/icon/bundles/index.umd.js +80 -0
- package/components/basic/icon/esm2022/icon.component.mjs +38 -0
- package/components/basic/icon/esm2022/icon.props.mjs +19 -0
- package/components/basic/icon/esm2022/index.mjs +5 -0
- package/components/basic/icon/esm2022/public_api.mjs +2 -0
- package/components/basic/icon/fesm2022/index.mjs +62 -0
- package/components/basic/icon/fesm2022/index.mjs.map +1 -0
- package/components/basic/icon/icon.component.d.ts +15 -0
- package/components/basic/icon/icon.props.d.ts +1 -0
- package/components/basic/icon/index.d.ts +5 -0
- package/components/basic/icon/package.json +20 -0
- package/components/basic/icon/public_api.d.ts +1 -0
- package/components/basic/iframe/.npmignore +2 -0
- package/components/basic/iframe/bundles/index.umd.js +101 -0
- package/components/basic/iframe/esm2022/iframe.component.mjs +65 -0
- package/components/basic/iframe/esm2022/iframe.props.mjs +15 -0
- package/components/basic/iframe/esm2022/index.mjs +5 -0
- package/components/basic/iframe/esm2022/public_api.mjs +2 -0
- package/components/basic/iframe/fesm2022/index.mjs +84 -0
- package/components/basic/iframe/fesm2022/index.mjs.map +1 -0
- package/components/basic/iframe/iframe.component.d.ts +26 -0
- package/components/basic/iframe/iframe.props.d.ts +1 -0
- package/components/basic/iframe/index.d.ts +5 -0
- package/components/basic/iframe/package.json +20 -0
- package/components/basic/iframe/public_api.d.ts +1 -0
- package/components/basic/label/.npmignore +2 -0
- package/components/basic/label/bundles/index.umd.js +129 -0
- package/components/basic/label/esm2022/index.mjs +5 -0
- package/components/basic/label/esm2022/label.directive.mjs +91 -0
- package/components/basic/label/esm2022/label.props.mjs +17 -0
- package/components/basic/label/esm2022/public_api.mjs +2 -0
- package/components/basic/label/fesm2022/index.mjs +113 -0
- package/components/basic/label/fesm2022/index.mjs.map +1 -0
- package/components/basic/label/index.d.ts +5 -0
- package/components/basic/label/label.directive.d.ts +12 -0
- package/components/basic/label/label.props.d.ts +1 -0
- package/components/basic/label/package.json +20 -0
- package/components/basic/label/public_api.d.ts +1 -0
- package/components/basic/picture/.npmignore +2 -0
- package/components/basic/picture/bundles/index.umd.js +138 -0
- package/components/basic/picture/esm2022/index.mjs +5 -0
- package/components/basic/picture/esm2022/picture.directive.mjs +93 -0
- package/components/basic/picture/esm2022/picture.props.mjs +23 -0
- package/components/basic/picture/esm2022/public_api.mjs +2 -0
- package/components/basic/picture/fesm2022/index.mjs +121 -0
- package/components/basic/picture/fesm2022/index.mjs.map +1 -0
- package/components/basic/picture/index.d.ts +5 -0
- package/components/basic/picture/package.json +20 -0
- package/components/basic/picture/picture.directive.d.ts +19 -0
- package/components/basic/picture/picture.props.d.ts +1 -0
- package/components/basic/picture/public_api.d.ts +1 -0
- package/components/basic/progress/progress-bar/.npmignore +2 -0
- package/components/basic/progress/progress-bar/bundles/index.umd.js +170 -0
- package/components/basic/progress/progress-bar/esm2022/index.mjs +5 -0
- package/components/basic/progress/progress-bar/esm2022/progress-bar.component.mjs +130 -0
- package/components/basic/progress/progress-bar/esm2022/progress-bar.props.mjs +19 -0
- package/components/basic/progress/progress-bar/esm2022/public_api.mjs +2 -0
- package/components/basic/progress/progress-bar/fesm2022/index.mjs +154 -0
- package/components/basic/progress/progress-bar/fesm2022/index.mjs.map +1 -0
- package/components/basic/progress/progress-bar/index.d.ts +5 -0
- package/components/basic/progress/progress-bar/package.json +20 -0
- package/components/basic/progress/progress-bar/progress-bar.component.d.ts +43 -0
- package/components/basic/progress/progress-bar/progress-bar.props.d.ts +1 -0
- package/components/basic/progress/progress-bar/public_api.d.ts +1 -0
- package/components/basic/progress/progress-circle/.npmignore +2 -0
- package/components/basic/progress/progress-circle/bundles/index.umd.js +171 -0
- package/components/basic/progress/progress-circle/esm2022/index.mjs +5 -0
- package/components/basic/progress/progress-circle/esm2022/progress-circle.component.mjs +130 -0
- package/components/basic/progress/progress-circle/esm2022/progress-circle.props.mjs +21 -0
- package/components/basic/progress/progress-circle/esm2022/public_api.mjs +2 -0
- package/components/basic/progress/progress-circle/fesm2022/index.mjs +155 -0
- package/components/basic/progress/progress-circle/fesm2022/index.mjs.map +1 -0
- package/components/basic/progress/progress-circle/index.d.ts +5 -0
- package/components/basic/progress/progress-circle/package.json +20 -0
- package/components/basic/progress/progress-circle/progress-circle.component.d.ts +40 -0
- package/components/basic/progress/progress-circle/progress-circle.props.d.ts +1 -0
- package/components/basic/progress/progress-circle/public_api.d.ts +1 -0
- package/components/basic/progress/progress-utils/.npmignore +2 -0
- package/components/basic/progress/progress-utils/bundles/index.umd.js +35 -0
- package/components/basic/progress/progress-utils/esm2022/index.mjs +5 -0
- package/components/basic/progress/progress-utils/esm2022/progress-utils.mjs +25 -0
- package/components/basic/progress/progress-utils/esm2022/public_api.mjs +2 -0
- package/components/basic/progress/progress-utils/fesm2022/index.mjs +32 -0
- package/components/basic/progress/progress-utils/fesm2022/index.mjs.map +1 -0
- package/components/basic/progress/progress-utils/index.d.ts +5 -0
- package/components/basic/progress/progress-utils/package.json +20 -0
- package/components/basic/progress/progress-utils/progress-utils.d.ts +3 -0
- package/components/basic/progress/progress-utils/public_api.d.ts +1 -0
- package/components/basic/rich-text-editor/.npmignore +2 -0
- package/components/basic/rich-text-editor/bundles/index.umd.js +236 -0
- package/components/basic/rich-text-editor/esm2022/index.mjs +5 -0
- package/components/basic/rich-text-editor/esm2022/public_api.mjs +2 -0
- package/components/basic/rich-text-editor/esm2022/rich-text-editor.component.mjs +197 -0
- package/components/basic/rich-text-editor/esm2022/rich-text-editor.props.mjs +21 -0
- package/components/basic/rich-text-editor/fesm2022/index.mjs +222 -0
- package/components/basic/rich-text-editor/fesm2022/index.mjs.map +1 -0
- package/components/basic/rich-text-editor/index.d.ts +5 -0
- package/components/basic/rich-text-editor/package.json +20 -0
- package/components/basic/rich-text-editor/public_api.d.ts +1 -0
- package/components/basic/rich-text-editor/rich-text-editor.component.d.ts +55 -0
- package/components/basic/rich-text-editor/rich-text-editor.props.d.ts +2 -0
- package/components/basic/search/.npmignore +2 -0
- package/components/basic/search/bundles/index.umd.js +1091 -0
- package/components/basic/search/data-provider/data-provider.d.ts +42 -0
- package/components/basic/search/data-provider/local-data-provider.d.ts +5 -0
- package/components/basic/search/data-provider/remote-data-provider.d.ts +10 -0
- package/components/basic/search/esm2022/data-provider/data-provider.mjs +34 -0
- package/components/basic/search/esm2022/data-provider/local-data-provider.mjs +77 -0
- package/components/basic/search/esm2022/data-provider/remote-data-provider.mjs +124 -0
- package/components/basic/search/esm2022/index.mjs +5 -0
- package/components/basic/search/esm2022/public_api.mjs +3 -0
- package/components/basic/search/esm2022/scrollable.directive.mjs +44 -0
- package/components/basic/search/esm2022/search.component.mjs +754 -0
- package/components/basic/search/esm2022/search.props.mjs +55 -0
- package/components/basic/search/fesm2022/index.mjs +1080 -0
- package/components/basic/search/fesm2022/index.mjs.map +1 -0
- package/components/basic/search/index.d.ts +5 -0
- package/components/basic/search/package.json +20 -0
- package/components/basic/search/public_api.d.ts +2 -0
- package/components/basic/search/scrollable.directive.d.ts +14 -0
- package/components/basic/search/search.component.d.ts +109 -0
- package/components/basic/search/search.props.d.ts +2 -0
- package/components/basic/spinner/.npmignore +2 -0
- package/components/basic/spinner/bundles/index.umd.js +126 -0
- package/components/basic/spinner/esm2022/index.mjs +5 -0
- package/components/basic/spinner/esm2022/public_api.mjs +2 -0
- package/components/basic/spinner/esm2022/spinner.component.mjs +87 -0
- package/components/basic/spinner/esm2022/spinner.props.mjs +20 -0
- package/components/basic/spinner/fesm2022/index.mjs +111 -0
- package/components/basic/spinner/fesm2022/index.mjs.map +1 -0
- package/components/basic/spinner/index.d.ts +5 -0
- package/components/basic/spinner/package.json +20 -0
- package/components/basic/spinner/public_api.d.ts +1 -0
- package/components/basic/spinner/spinner.component.d.ts +27 -0
- package/components/basic/spinner/spinner.props.d.ts +1 -0
- package/components/basic/tree/.npmignore +2 -0
- package/components/basic/tree/bundles/index.umd.js +566 -0
- package/components/basic/tree/esm2022/index.mjs +5 -0
- package/components/basic/tree/esm2022/public_api.mjs +2 -0
- package/components/basic/tree/esm2022/tree-node-template-host.component.mjs +33 -0
- package/components/basic/tree/esm2022/tree.component.mjs +494 -0
- package/components/basic/tree/esm2022/tree.props.mjs +22 -0
- package/components/basic/tree/fesm2022/index.mjs +550 -0
- package/components/basic/tree/fesm2022/index.mjs.map +1 -0
- package/components/basic/tree/index.d.ts +5 -0
- package/components/basic/tree/package.json +20 -0
- package/components/basic/tree/public_api.d.ts +1 -0
- package/components/basic/tree/tree-node-template-host.component.d.ts +7 -0
- package/components/basic/tree/tree.component.d.ts +66 -0
- package/components/basic/tree/tree.props.d.ts +1 -0
- package/components/basic/video/.npmignore +2 -0
- package/components/basic/video/bundles/index.umd.js +116 -0
- package/components/basic/video/esm2022/index.mjs +5 -0
- package/components/basic/video/esm2022/public_api.mjs +2 -0
- package/components/basic/video/esm2022/video.component.mjs +70 -0
- package/components/basic/video/esm2022/video.props.mjs +24 -0
- package/components/basic/video/fesm2022/index.mjs +99 -0
- package/components/basic/video/fesm2022/index.mjs.map +1 -0
- package/components/basic/video/index.d.ts +5 -0
- package/components/basic/video/package.json +20 -0
- package/components/basic/video/public_api.d.ts +1 -0
- package/components/basic/video/video.component.d.ts +27 -0
- package/components/basic/video/video.props.d.ts +1 -0
- package/components/chart/.npmignore +2 -0
- package/components/chart/bundles/index.umd.js +1747 -0
- package/components/chart/chart.component.d.ts +99 -0
- package/components/chart/chart.props.d.ts +1 -0
- package/components/chart/chart.utils.d.ts +40 -0
- package/components/chart/esm2022/chart.component.mjs +982 -0
- package/components/chart/esm2022/chart.props.mjs +67 -0
- package/components/chart/esm2022/chart.utils.mjs +723 -0
- package/components/chart/esm2022/index.mjs +5 -0
- package/components/chart/esm2022/public_api.mjs +2 -0
- package/components/chart/fesm2022/index.mjs +1774 -0
- package/components/chart/fesm2022/index.mjs.map +1 -0
- package/components/chart/index.d.ts +5 -0
- package/components/chart/package.json +20 -0
- package/components/chart/public_api.d.ts +1 -0
- package/components/containers/accordion/.npmignore +2 -0
- package/components/containers/accordion/accordion-pane/accordion-pane.component.d.ts +50 -0
- package/components/containers/accordion/accordion-pane/accordion-pane.props.d.ts +1 -0
- package/components/containers/accordion/accordion.directive.d.ts +66 -0
- package/components/containers/accordion/accordion.props.d.ts +1 -0
- package/components/containers/accordion/bundles/index.umd.js +500 -0
- package/components/containers/accordion/esm2022/accordion-pane/accordion-pane.component.mjs +145 -0
- package/components/containers/accordion/esm2022/accordion-pane/accordion-pane.props.mjs +22 -0
- package/components/containers/accordion/esm2022/accordion.directive.mjs +309 -0
- package/components/containers/accordion/esm2022/accordion.props.mjs +16 -0
- package/components/containers/accordion/esm2022/index.mjs +5 -0
- package/components/containers/accordion/esm2022/public_api.mjs +3 -0
- package/components/containers/accordion/fesm2022/index.mjs +486 -0
- package/components/containers/accordion/fesm2022/index.mjs.map +1 -0
- package/components/containers/accordion/index.d.ts +5 -0
- package/components/containers/accordion/package.json +20 -0
- package/components/containers/accordion/public_api.d.ts +2 -0
- package/components/containers/layout-grid/.npmignore +2 -0
- package/components/containers/layout-grid/bundles/index.umd.js +172 -0
- package/components/containers/layout-grid/esm2022/index.mjs +5 -0
- package/components/containers/layout-grid/esm2022/layout-grid-column/layout-grid-column.directive.mjs +57 -0
- package/components/containers/layout-grid/esm2022/layout-grid-column/layout-grid-column.props.mjs +11 -0
- package/components/containers/layout-grid/esm2022/layout-grid-row/layout-grid-row.directive.mjs +36 -0
- package/components/containers/layout-grid/esm2022/layout-grid-row/layout-grid-row.props.mjs +9 -0
- package/components/containers/layout-grid/esm2022/layout-grid.directive.mjs +36 -0
- package/components/containers/layout-grid/esm2022/layout-grid.props.mjs +9 -0
- package/components/containers/layout-grid/esm2022/public_api.mjs +4 -0
- package/components/containers/layout-grid/fesm2022/index.mjs +153 -0
- package/components/containers/layout-grid/fesm2022/index.mjs.map +1 -0
- package/components/containers/layout-grid/index.d.ts +5 -0
- package/components/containers/layout-grid/layout-grid-column/layout-grid-column.directive.d.ts +12 -0
- package/components/containers/layout-grid/layout-grid-column/layout-grid-column.props.d.ts +1 -0
- package/components/containers/layout-grid/layout-grid-row/layout-grid-row.directive.d.ts +9 -0
- package/components/containers/layout-grid/layout-grid-row/layout-grid-row.props.d.ts +1 -0
- package/components/containers/layout-grid/layout-grid.directive.d.ts +9 -0
- package/components/containers/layout-grid/layout-grid.props.d.ts +1 -0
- package/components/containers/layout-grid/package.json +20 -0
- package/components/containers/layout-grid/public_api.d.ts +3 -0
- package/components/containers/linear-layout/.npmignore +2 -0
- package/components/containers/linear-layout/bundles/index.umd.js +186 -0
- package/components/containers/linear-layout/esm2022/index.mjs +5 -0
- package/components/containers/linear-layout/esm2022/linear-layout-item/linear-layout-item.directive.mjs +44 -0
- package/components/containers/linear-layout/esm2022/linear-layout-item/linear-layout-item.props.mjs +10 -0
- package/components/containers/linear-layout/esm2022/linear-layout.directive.mjs +100 -0
- package/components/containers/linear-layout/esm2022/linear-layout.props.mjs +13 -0
- package/components/containers/linear-layout/esm2022/public_api.mjs +3 -0
- package/components/containers/linear-layout/fesm2022/index.mjs +167 -0
- package/components/containers/linear-layout/fesm2022/index.mjs.map +1 -0
- package/components/containers/linear-layout/index.d.ts +5 -0
- package/components/containers/linear-layout/linear-layout-item/linear-layout-item.directive.d.ts +10 -0
- package/components/containers/linear-layout/linear-layout-item/linear-layout-item.props.d.ts +1 -0
- package/components/containers/linear-layout/linear-layout.directive.d.ts +16 -0
- package/components/containers/linear-layout/linear-layout.props.d.ts +1 -0
- package/components/containers/linear-layout/package.json +20 -0
- package/components/containers/linear-layout/public_api.d.ts +2 -0
- package/components/containers/panel/.npmignore +2 -0
- package/components/containers/panel/bundles/index.umd.js +223 -0
- package/components/containers/panel/esm2022/index.mjs +5 -0
- package/components/containers/panel/esm2022/panel.component.mjs +168 -0
- package/components/containers/panel/esm2022/panel.props.mjs +38 -0
- package/components/containers/panel/esm2022/public_api.mjs +2 -0
- package/components/containers/panel/fesm2022/index.mjs +210 -0
- package/components/containers/panel/fesm2022/index.mjs.map +1 -0
- package/components/containers/panel/index.d.ts +5 -0
- package/components/containers/panel/package.json +20 -0
- package/components/containers/panel/panel.component.d.ts +43 -0
- package/components/containers/panel/panel.props.d.ts +1 -0
- package/components/containers/panel/public_api.d.ts +1 -0
- package/components/containers/tabs/.npmignore +2 -0
- package/components/containers/tabs/bundles/index.umd.js +788 -0
- package/components/containers/tabs/esm2022/index.mjs +5 -0
- package/components/containers/tabs/esm2022/public_api.mjs +3 -0
- package/components/containers/tabs/esm2022/tab-pane/tab-pane.component.mjs +179 -0
- package/components/containers/tabs/esm2022/tab-pane/tab-pane.props.mjs +22 -0
- package/components/containers/tabs/esm2022/tabs.animator.mjs +83 -0
- package/components/containers/tabs/esm2022/tabs.component.mjs +478 -0
- package/components/containers/tabs/esm2022/tabs.props.mjs +20 -0
- package/components/containers/tabs/fesm2022/index.mjs +775 -0
- package/components/containers/tabs/fesm2022/index.mjs.map +1 -0
- package/components/containers/tabs/index.d.ts +5 -0
- package/components/containers/tabs/package.json +20 -0
- package/components/containers/tabs/public_api.d.ts +2 -0
- package/components/containers/tabs/tab-pane/tab-pane.component.d.ts +41 -0
- package/components/containers/tabs/tab-pane/tab-pane.props.d.ts +1 -0
- package/components/containers/tabs/tabs.animator.d.ts +30 -0
- package/components/containers/tabs/tabs.component.d.ts +87 -0
- package/components/containers/tabs/tabs.props.d.ts +1 -0
- package/components/containers/tile/.npmignore +2 -0
- package/components/containers/tile/bundles/index.umd.js +68 -0
- package/components/containers/tile/esm2022/index.mjs +5 -0
- package/components/containers/tile/esm2022/public_api.mjs +2 -0
- package/components/containers/tile/esm2022/tile.directive.mjs +33 -0
- package/components/containers/tile/esm2022/tile.props.mjs +12 -0
- package/components/containers/tile/fesm2022/index.mjs +50 -0
- package/components/containers/tile/fesm2022/index.mjs.map +1 -0
- package/components/containers/tile/index.d.ts +5 -0
- package/components/containers/tile/package.json +20 -0
- package/components/containers/tile/public_api.d.ts +1 -0
- package/components/containers/tile/tile.directive.d.ts +9 -0
- package/components/containers/tile/tile.props.d.ts +1 -0
- package/components/containers/wizard/.npmignore +2 -0
- package/components/containers/wizard/bundles/index.umd.js +1074 -0
- package/components/containers/wizard/esm2022/index.mjs +5 -0
- package/components/containers/wizard/esm2022/public_api.mjs +4 -0
- package/components/containers/wizard/esm2022/wizard-action/wizard-action.directive.mjs +35 -0
- package/components/containers/wizard/esm2022/wizard-action/wizard-action.props.mjs +9 -0
- package/components/containers/wizard/esm2022/wizard-step/wizard-step.component.mjs +182 -0
- package/components/containers/wizard/esm2022/wizard-step/wizard-step.props.mjs +17 -0
- package/components/containers/wizard/esm2022/wizard.component.mjs +801 -0
- package/components/containers/wizard/esm2022/wizard.props.mjs +22 -0
- package/components/containers/wizard/fesm2022/index.mjs +1058 -0
- package/components/containers/wizard/fesm2022/index.mjs.map +1 -0
- package/components/containers/wizard/index.d.ts +5 -0
- package/components/containers/wizard/package.json +20 -0
- package/components/containers/wizard/public_api.d.ts +3 -0
- package/components/containers/wizard/wizard-action/wizard-action.directive.d.ts +9 -0
- package/components/containers/wizard/wizard-action/wizard-action.props.d.ts +1 -0
- package/components/containers/wizard/wizard-step/wizard-step.component.d.ts +59 -0
- package/components/containers/wizard/wizard-step/wizard-step.props.d.ts +1 -0
- package/components/containers/wizard/wizard.component.d.ts +192 -0
- package/components/containers/wizard/wizard.props.d.ts +1 -0
- package/components/data/card/.npmignore +2 -0
- package/components/data/card/bundles/index.umd.js +237 -0
- package/components/data/card/card-actions/card-actions.directive.d.ts +9 -0
- package/components/data/card/card-actions/card-actions.props.d.ts +1 -0
- package/components/data/card/card-content/card-content.component.d.ts +12 -0
- package/components/data/card/card-content/card-content.props.d.ts +1 -0
- package/components/data/card/card-footer/card-footer.directive.d.ts +9 -0
- package/components/data/card/card-footer/card-footer.props.d.ts +1 -0
- package/components/data/card/card.component.d.ts +23 -0
- package/components/data/card/card.props.d.ts +1 -0
- package/components/data/card/esm2022/card-actions/card-actions.directive.mjs +31 -0
- package/components/data/card/esm2022/card-actions/card-actions.props.mjs +9 -0
- package/components/data/card/esm2022/card-content/card-content.component.mjs +43 -0
- package/components/data/card/esm2022/card-content/card-content.props.mjs +10 -0
- package/components/data/card/esm2022/card-footer/card-footer.directive.mjs +31 -0
- package/components/data/card/esm2022/card-footer/card-footer.props.mjs +9 -0
- package/components/data/card/esm2022/card.component.mjs +75 -0
- package/components/data/card/esm2022/card.props.mjs +24 -0
- package/components/data/card/esm2022/index.mjs +5 -0
- package/components/data/card/esm2022/public_api.mjs +5 -0
- package/components/data/card/fesm2022/index.mjs +220 -0
- package/components/data/card/fesm2022/index.mjs.map +1 -0
- package/components/data/card/index.d.ts +5 -0
- package/components/data/card/package.json +20 -0
- package/components/data/card/public_api.d.ts +4 -0
- package/components/data/form/.npmignore +2 -0
- package/components/data/form/bundles/index.umd.js +3308 -0
- package/components/data/form/esm2022/form-action/form-action.directive.mjs +86 -0
- package/components/data/form/esm2022/form-action/form-action.props.mjs +25 -0
- package/components/data/form/esm2022/form-field/form-field.directive.mjs +611 -0
- package/components/data/form/esm2022/form-field/form-field.props.mjs +52 -0
- package/components/data/form/esm2022/form-widget.directive.mjs +83 -0
- package/components/data/form/esm2022/form.component.mjs +1247 -0
- package/components/data/form/esm2022/form.props.mjs +64 -0
- package/components/data/form/esm2022/index.mjs +5 -0
- package/components/data/form/esm2022/live-actions/dependson.directive.mjs +151 -0
- package/components/data/form/esm2022/live-actions/live-actions.directive.mjs +173 -0
- package/components/data/form/esm2022/live-filter/live-filter.directive.mjs +356 -0
- package/components/data/form/esm2022/live-form/live-form.directive.mjs +502 -0
- package/components/data/form/esm2022/public_api.mjs +9 -0
- package/components/data/form/fesm2022/index.mjs +3296 -0
- package/components/data/form/fesm2022/index.mjs.map +1 -0
- package/components/data/form/form-action/form-action.directive.d.ts +35 -0
- package/components/data/form/form-action/form-action.props.d.ts +1 -0
- package/components/data/form/form-field/form-field.directive.d.ts +116 -0
- package/components/data/form/form-field/form-field.props.d.ts +1 -0
- package/components/data/form/form-widget.directive.d.ts +19 -0
- package/components/data/form/form.component.d.ts +211 -0
- package/components/data/form/form.props.d.ts +3 -0
- package/components/data/form/index.d.ts +5 -0
- package/components/data/form/live-actions/dependson.directive.d.ts +27 -0
- package/components/data/form/live-actions/live-actions.directive.d.ts +24 -0
- package/components/data/form/live-filter/live-filter.directive.d.ts +24 -0
- package/components/data/form/live-form/live-form.directive.d.ts +44 -0
- package/components/data/form/package.json +20 -0
- package/components/data/form/public_api.d.ts +8 -0
- package/components/data/list/.npmignore +2 -0
- package/components/data/list/bundles/index.umd.js +1610 -0
- package/components/data/list/esm2022/index.mjs +5 -0
- package/components/data/list/esm2022/list-item.directive.mjs +260 -0
- package/components/data/list/esm2022/list-item.props.mjs +7 -0
- package/components/data/list/esm2022/list.animator.mjs +233 -0
- package/components/data/list/esm2022/list.component.mjs +1294 -0
- package/components/data/list/esm2022/list.props.mjs +48 -0
- package/components/data/list/esm2022/public_api.mjs +3 -0
- package/components/data/list/fesm2022/index.mjs +1602 -0
- package/components/data/list/fesm2022/index.mjs.map +1 -0
- package/components/data/list/index.d.ts +5 -0
- package/components/data/list/list-item.directive.d.ts +53 -0
- package/components/data/list/list-item.props.d.ts +1 -0
- package/components/data/list/list.animator.d.ts +32 -0
- package/components/data/list/list.component.d.ts +226 -0
- package/components/data/list/list.props.d.ts +1 -0
- package/components/data/list/package.json +20 -0
- package/components/data/list/public_api.d.ts +2 -0
- package/components/data/live-table/.npmignore +2 -0
- package/components/data/live-table/bundles/index.umd.js +273 -0
- package/components/data/live-table/esm2022/index.mjs +5 -0
- package/components/data/live-table/esm2022/live-table.component.mjs +243 -0
- package/components/data/live-table/esm2022/live-table.props.mjs +10 -0
- package/components/data/live-table/esm2022/public_api.mjs +2 -0
- package/components/data/live-table/fesm2022/index.mjs +258 -0
- package/components/data/live-table/fesm2022/index.mjs.map +1 -0
- package/components/data/live-table/index.d.ts +5 -0
- package/components/data/live-table/live-table.component.d.ts +36 -0
- package/components/data/live-table/live-table.props.d.ts +1 -0
- package/components/data/live-table/package.json +20 -0
- package/components/data/live-table/public_api.d.ts +1 -0
- package/components/data/pagination/.npmignore +2 -0
- package/components/data/pagination/bundles/index.umd.js +850 -0
- package/components/data/pagination/esm2022/index.mjs +5 -0
- package/components/data/pagination/esm2022/pagination.component.mjs +817 -0
- package/components/data/pagination/esm2022/pagination.props.mjs +23 -0
- package/components/data/pagination/esm2022/public_api.mjs +2 -0
- package/components/data/pagination/fesm2022/index.mjs +845 -0
- package/components/data/pagination/fesm2022/index.mjs.map +1 -0
- package/components/data/pagination/index.d.ts +5 -0
- package/components/data/pagination/package.json +20 -0
- package/components/data/pagination/pagination.component.d.ts +101 -0
- package/components/data/pagination/pagination.props.d.ts +1 -0
- package/components/data/pagination/public_api.d.ts +1 -0
- package/components/data/table/.npmignore +2 -0
- package/components/data/table/bundles/index.umd.js +4848 -0
- package/components/data/table/esm2022/index.mjs +5 -0
- package/components/data/table/esm2022/public_api.mjs +9 -0
- package/components/data/table/esm2022/table-action/table-action.directive.mjs +83 -0
- package/components/data/table/esm2022/table-action/table-action.props.mjs +25 -0
- package/components/data/table/esm2022/table-column/table-column.directive.mjs +744 -0
- package/components/data/table/esm2022/table-column/table-column.props.mjs +93 -0
- package/components/data/table/esm2022/table-column-group/table-column-group.directive.mjs +80 -0
- package/components/data/table/esm2022/table-column-group/table-column-group.props.mjs +11 -0
- package/components/data/table/esm2022/table-cud.directive.mjs +484 -0
- package/components/data/table/esm2022/table-filter.directive.mjs +706 -0
- package/components/data/table/esm2022/table-row/table-row.directive.mjs +68 -0
- package/components/data/table/esm2022/table-row/table-row.props.mjs +16 -0
- package/components/data/table/esm2022/table-row-action/table-row-action.directive.mjs +81 -0
- package/components/data/table/esm2022/table-row-action/table-row-action.props.mjs +20 -0
- package/components/data/table/esm2022/table.component.mjs +2406 -0
- package/components/data/table/esm2022/table.props.mjs +70 -0
- package/components/data/table/fesm2022/index.mjs +4835 -0
- package/components/data/table/fesm2022/index.mjs.map +1 -0
- package/components/data/table/index.d.ts +5 -0
- package/components/data/table/package.json +20 -0
- package/components/data/table/public_api.d.ts +8 -0
- package/components/data/table/table-action/table-action.directive.d.ts +35 -0
- package/components/data/table/table-action/table-action.props.d.ts +1 -0
- package/components/data/table/table-column/table-column.directive.d.ts +152 -0
- package/components/data/table/table-column/table-column.props.d.ts +1 -0
- package/components/data/table/table-column-group/table-column-group.directive.d.ts +23 -0
- package/components/data/table/table-column-group/table-column-group.props.d.ts +1 -0
- package/components/data/table/table-cud.directive.d.ts +34 -0
- package/components/data/table/table-filter.directive.d.ts +35 -0
- package/components/data/table/table-row/table-row.directive.d.ts +25 -0
- package/components/data/table/table-row/table-row.props.d.ts +1 -0
- package/components/data/table/table-row-action/table-row-action.directive.d.ts +31 -0
- package/components/data/table/table-row-action/table-row-action.props.d.ts +1 -0
- package/components/data/table/table.component.d.ts +419 -0
- package/components/data/table/table.props.d.ts +1 -0
- package/components/dialogs/alert-dialog/.npmignore +2 -0
- package/components/dialogs/alert-dialog/alert-dialog.component.d.ts +23 -0
- package/components/dialogs/alert-dialog/alert-dialog.props.d.ts +1 -0
- package/components/dialogs/alert-dialog/bundles/index.umd.js +126 -0
- package/components/dialogs/alert-dialog/esm2022/alert-dialog.component.mjs +87 -0
- package/components/dialogs/alert-dialog/esm2022/alert-dialog.props.mjs +22 -0
- package/components/dialogs/alert-dialog/esm2022/index.mjs +5 -0
- package/components/dialogs/alert-dialog/esm2022/public_api.mjs +2 -0
- package/components/dialogs/alert-dialog/fesm2022/index.mjs +114 -0
- package/components/dialogs/alert-dialog/fesm2022/index.mjs.map +1 -0
- package/components/dialogs/alert-dialog/index.d.ts +5 -0
- package/components/dialogs/alert-dialog/package.json +20 -0
- package/components/dialogs/alert-dialog/public_api.d.ts +1 -0
- package/components/dialogs/confirm-dialog/.npmignore +2 -0
- package/components/dialogs/confirm-dialog/bundles/index.umd.js +129 -0
- package/components/dialogs/confirm-dialog/confirm-dialog.component.d.ts +26 -0
- package/components/dialogs/confirm-dialog/confirm-dialog.props.d.ts +1 -0
- package/components/dialogs/confirm-dialog/esm2022/confirm-dialog.component.mjs +90 -0
- package/components/dialogs/confirm-dialog/esm2022/confirm-dialog.props.mjs +22 -0
- package/components/dialogs/confirm-dialog/esm2022/index.mjs +5 -0
- package/components/dialogs/confirm-dialog/esm2022/public_api.mjs +2 -0
- package/components/dialogs/confirm-dialog/fesm2022/index.mjs +117 -0
- package/components/dialogs/confirm-dialog/fesm2022/index.mjs.map +1 -0
- package/components/dialogs/confirm-dialog/index.d.ts +5 -0
- package/components/dialogs/confirm-dialog/package.json +20 -0
- package/components/dialogs/confirm-dialog/public_api.d.ts +1 -0
- package/components/dialogs/default/.npmignore +2 -0
- package/components/dialogs/default/base-dialog.d.ts +45 -0
- package/components/dialogs/default/bundles/index.umd.js +379 -0
- package/components/dialogs/default/dialog-body/dialog-body.directive.d.ts +13 -0
- package/components/dialogs/default/dialog-footer/dialog-footer.directive.d.ts +9 -0
- package/components/dialogs/default/dialog-footer/dialog-footer.props.d.ts +1 -0
- package/components/dialogs/default/dialog-header/dialog-header.component.d.ts +25 -0
- package/components/dialogs/default/esm2022/base-dialog.mjs +184 -0
- package/components/dialogs/default/esm2022/dialog-body/dialog-body.directive.mjs +86 -0
- package/components/dialogs/default/esm2022/dialog-footer/dialog-footer.directive.mjs +34 -0
- package/components/dialogs/default/esm2022/dialog-footer/dialog-footer.props.mjs +9 -0
- package/components/dialogs/default/esm2022/dialog-header/dialog-header.component.mjs +62 -0
- package/components/dialogs/default/esm2022/index.mjs +5 -0
- package/components/dialogs/default/esm2022/public_api.mjs +5 -0
- package/components/dialogs/default/fesm2022/index.mjs +364 -0
- package/components/dialogs/default/fesm2022/index.mjs.map +1 -0
- package/components/dialogs/default/index.d.ts +5 -0
- package/components/dialogs/default/package.json +20 -0
- package/components/dialogs/default/public_api.d.ts +4 -0
- package/components/dialogs/design-dialog/.npmignore +2 -0
- package/components/dialogs/design-dialog/bundles/index.umd.js +149 -0
- package/components/dialogs/design-dialog/dialog.component.d.ts +17 -0
- package/components/dialogs/design-dialog/dialog.props.d.ts +1 -0
- package/components/dialogs/design-dialog/esm2022/dialog.component.mjs +108 -0
- package/components/dialogs/design-dialog/esm2022/dialog.props.mjs +21 -0
- package/components/dialogs/design-dialog/esm2022/index.mjs +5 -0
- package/components/dialogs/design-dialog/esm2022/public_api.mjs +2 -0
- package/components/dialogs/design-dialog/fesm2022/index.mjs +134 -0
- package/components/dialogs/design-dialog/fesm2022/index.mjs.map +1 -0
- package/components/dialogs/design-dialog/index.d.ts +5 -0
- package/components/dialogs/design-dialog/package.json +20 -0
- package/components/dialogs/design-dialog/public_api.d.ts +1 -0
- package/components/dialogs/iframe-dialog/.npmignore +2 -0
- package/components/dialogs/iframe-dialog/bundles/index.umd.js +119 -0
- package/components/dialogs/iframe-dialog/esm2022/iframe-dialog.component.mjs +78 -0
- package/components/dialogs/iframe-dialog/esm2022/iframe-dialog.props.mjs +25 -0
- package/components/dialogs/iframe-dialog/esm2022/index.mjs +5 -0
- package/components/dialogs/iframe-dialog/esm2022/public_api.mjs +2 -0
- package/components/dialogs/iframe-dialog/fesm2022/index.mjs +108 -0
- package/components/dialogs/iframe-dialog/fesm2022/index.mjs.map +1 -0
- package/components/dialogs/iframe-dialog/iframe-dialog.component.d.ts +19 -0
- package/components/dialogs/iframe-dialog/iframe-dialog.props.d.ts +1 -0
- package/components/dialogs/iframe-dialog/index.d.ts +5 -0
- package/components/dialogs/iframe-dialog/package.json +20 -0
- package/components/dialogs/iframe-dialog/public_api.d.ts +1 -0
- package/components/dialogs/login-dialog/.npmignore +2 -0
- package/components/dialogs/login-dialog/bundles/index.umd.js +114 -0
- package/components/dialogs/login-dialog/esm2022/index.mjs +5 -0
- package/components/dialogs/login-dialog/esm2022/login-dialog.directive.mjs +91 -0
- package/components/dialogs/login-dialog/esm2022/public_api.mjs +2 -0
- package/components/dialogs/login-dialog/fesm2022/index.mjs +98 -0
- package/components/dialogs/login-dialog/fesm2022/index.mjs.map +1 -0
- package/components/dialogs/login-dialog/index.d.ts +5 -0
- package/components/dialogs/login-dialog/login-dialog.directive.d.ts +23 -0
- package/components/dialogs/login-dialog/package.json +20 -0
- package/components/dialogs/login-dialog/public_api.d.ts +1 -0
- package/components/dialogs/partial-dialog/.npmignore +2 -0
- package/components/dialogs/partial-dialog/bundles/index.umd.js +157 -0
- package/components/dialogs/partial-dialog/esm2022/index.mjs +5 -0
- package/components/dialogs/partial-dialog/esm2022/partial-dialog.component.mjs +119 -0
- package/components/dialogs/partial-dialog/esm2022/partial-dialog.props.mjs +22 -0
- package/components/dialogs/partial-dialog/esm2022/public_api.mjs +2 -0
- package/components/dialogs/partial-dialog/fesm2022/index.mjs +146 -0
- package/components/dialogs/partial-dialog/fesm2022/index.mjs.map +1 -0
- package/components/dialogs/partial-dialog/index.d.ts +5 -0
- package/components/dialogs/partial-dialog/package.json +20 -0
- package/components/dialogs/partial-dialog/partial-dialog.component.d.ts +29 -0
- package/components/dialogs/partial-dialog/partial-dialog.props.d.ts +1 -0
- package/components/dialogs/partial-dialog/public_api.d.ts +1 -0
- package/components/input/base-form/.npmignore +2 -0
- package/components/input/base-form/base-form.component.d.ts +26 -0
- package/components/input/base-form/bundles/index.umd.js +147 -0
- package/components/input/base-form/esm2022/base-form.component.mjs +124 -0
- package/components/input/base-form/esm2022/index.mjs +5 -0
- package/components/input/base-form/esm2022/public_api.mjs +2 -0
- package/components/input/base-form/fesm2022/index.mjs +131 -0
- package/components/input/base-form/fesm2022/index.mjs.map +1 -0
- package/components/input/base-form/index.d.ts +5 -0
- package/components/input/base-form/package.json +20 -0
- package/components/input/base-form/public_api.d.ts +1 -0
- package/components/input/base-form-custom/.npmignore +2 -0
- package/components/input/base-form-custom/base-form-custom.component.d.ts +23 -0
- package/components/input/base-form-custom/bundles/index.umd.js +129 -0
- package/components/input/base-form-custom/esm2022/base-form-custom.component.mjs +105 -0
- package/components/input/base-form-custom/esm2022/index.mjs +5 -0
- package/components/input/base-form-custom/esm2022/public_api.mjs +2 -0
- package/components/input/base-form-custom/fesm2022/index.mjs +112 -0
- package/components/input/base-form-custom/fesm2022/index.mjs.map +1 -0
- package/components/input/base-form-custom/index.d.ts +5 -0
- package/components/input/base-form-custom/package.json +20 -0
- package/components/input/base-form-custom/public_api.d.ts +1 -0
- package/components/input/button/.npmignore +2 -0
- package/components/input/button/bundles/index.umd.js +98 -0
- package/components/input/button/button.component.d.ts +19 -0
- package/components/input/button/button.props.d.ts +1 -0
- package/components/input/button/esm2022/button.component.mjs +50 -0
- package/components/input/button/esm2022/button.props.mjs +26 -0
- package/components/input/button/esm2022/index.mjs +5 -0
- package/components/input/button/esm2022/public_api.mjs +2 -0
- package/components/input/button/fesm2022/index.mjs +81 -0
- package/components/input/button/fesm2022/index.mjs.map +1 -0
- package/components/input/button/index.d.ts +5 -0
- package/components/input/button/package.json +20 -0
- package/components/input/button/public_api.d.ts +1 -0
- package/components/input/button-group/.npmignore +2 -0
- package/components/input/button-group/bundles/index.umd.js +80 -0
- package/components/input/button-group/button-group.directive.d.ts +11 -0
- package/components/input/button-group/button-group.props.d.ts +1 -0
- package/components/input/button-group/esm2022/button-group.directive.mjs +47 -0
- package/components/input/button-group/esm2022/button-group.props.mjs +10 -0
- package/components/input/button-group/esm2022/index.mjs +5 -0
- package/components/input/button-group/esm2022/public_api.mjs +2 -0
- package/components/input/button-group/fesm2022/index.mjs +62 -0
- package/components/input/button-group/fesm2022/index.mjs.map +1 -0
- package/components/input/button-group/index.d.ts +5 -0
- package/components/input/button-group/package.json +20 -0
- package/components/input/button-group/public_api.d.ts +1 -0
- package/components/input/calendar/.npmignore +2 -0
- package/components/input/calendar/bundles/index.umd.js +655 -0
- package/components/input/calendar/calendar.component.d.ts +128 -0
- package/components/input/calendar/calendar.props.d.ts +1 -0
- package/components/input/calendar/esm2022/calendar.component.mjs +637 -0
- package/components/input/calendar/esm2022/calendar.props.mjs +23 -0
- package/components/input/calendar/esm2022/index.mjs +5 -0
- package/components/input/calendar/esm2022/public_api.mjs +2 -0
- package/components/input/calendar/fesm2022/index.mjs +665 -0
- package/components/input/calendar/fesm2022/index.mjs.map +1 -0
- package/components/input/calendar/index.d.ts +5 -0
- package/components/input/calendar/package.json +20 -0
- package/components/input/calendar/public_api.d.ts +1 -0
- package/components/input/caption-position/.npmignore +2 -0
- package/components/input/caption-position/bundles/index.umd.js +196 -0
- package/components/input/caption-position/caption-position.directive.d.ts +31 -0
- package/components/input/caption-position/esm2022/caption-position.directive.mjs +172 -0
- package/components/input/caption-position/esm2022/index.mjs +5 -0
- package/components/input/caption-position/esm2022/public_api.mjs +2 -0
- package/components/input/caption-position/fesm2022/index.mjs +178 -0
- package/components/input/caption-position/fesm2022/index.mjs.map +1 -0
- package/components/input/caption-position/index.d.ts +5 -0
- package/components/input/caption-position/package.json +20 -0
- package/components/input/caption-position/public_api.d.ts +1 -0
- package/components/input/checkbox/.npmignore +2 -0
- package/components/input/checkbox/bundles/index.umd.js +206 -0
- package/components/input/checkbox/checkbox.component.d.ts +36 -0
- package/components/input/checkbox/checkbox.props.d.ts +2 -0
- package/components/input/checkbox/esm2022/checkbox.component.mjs +158 -0
- package/components/input/checkbox/esm2022/checkbox.props.mjs +30 -0
- package/components/input/checkbox/esm2022/index.mjs +5 -0
- package/components/input/checkbox/esm2022/public_api.mjs +2 -0
- package/components/input/checkbox/fesm2022/index.mjs +191 -0
- package/components/input/checkbox/fesm2022/index.mjs.map +1 -0
- package/components/input/checkbox/index.d.ts +5 -0
- package/components/input/checkbox/package.json +20 -0
- package/components/input/checkbox/public_api.d.ts +1 -0
- package/components/input/checkboxset/.npmignore +2 -0
- package/components/input/checkboxset/bundles/index.umd.js +178 -0
- package/components/input/checkboxset/checkboxset.component.d.ts +24 -0
- package/components/input/checkboxset/checkboxset.props.d.ts +2 -0
- package/components/input/checkboxset/esm2022/checkboxset.component.mjs +125 -0
- package/components/input/checkboxset/esm2022/checkboxset.props.mjs +36 -0
- package/components/input/checkboxset/esm2022/index.mjs +5 -0
- package/components/input/checkboxset/esm2022/public_api.mjs +2 -0
- package/components/input/checkboxset/fesm2022/index.mjs +165 -0
- package/components/input/checkboxset/fesm2022/index.mjs.map +1 -0
- package/components/input/checkboxset/index.d.ts +5 -0
- package/components/input/checkboxset/package.json +20 -0
- package/components/input/checkboxset/public_api.d.ts +1 -0
- package/components/input/chips/.npmignore +2 -0
- package/components/input/chips/bundles/index.umd.js +741 -0
- package/components/input/chips/chips.component.d.ts +87 -0
- package/components/input/chips/chips.props.d.ts +2 -0
- package/components/input/chips/esm2022/chips.component.mjs +676 -0
- package/components/input/chips/esm2022/chips.props.mjs +49 -0
- package/components/input/chips/esm2022/index.mjs +5 -0
- package/components/input/chips/esm2022/public_api.mjs +2 -0
- package/components/input/chips/fesm2022/index.mjs +729 -0
- package/components/input/chips/fesm2022/index.mjs.map +1 -0
- package/components/input/chips/index.d.ts +5 -0
- package/components/input/chips/package.json +20 -0
- package/components/input/chips/public_api.d.ts +1 -0
- package/components/input/color-picker/.npmignore +2 -0
- package/components/input/color-picker/bundles/index.umd.js +145 -0
- package/components/input/color-picker/color-picker.component.d.ts +33 -0
- package/components/input/color-picker/color-picker.props.d.ts +2 -0
- package/components/input/color-picker/esm2022/color-picker.component.mjs +107 -0
- package/components/input/color-picker/esm2022/color-picker.props.mjs +22 -0
- package/components/input/color-picker/esm2022/index.mjs +5 -0
- package/components/input/color-picker/esm2022/public_api.mjs +2 -0
- package/components/input/color-picker/fesm2022/index.mjs +132 -0
- package/components/input/color-picker/fesm2022/index.mjs.map +1 -0
- package/components/input/color-picker/index.d.ts +5 -0
- package/components/input/color-picker/package.json +20 -0
- package/components/input/color-picker/public_api.d.ts +1 -0
- package/components/input/composite/.npmignore +2 -0
- package/components/input/composite/bundles/index.umd.js +120 -0
- package/components/input/composite/composite.directive.d.ts +24 -0
- package/components/input/composite/composite.props.d.ts +1 -0
- package/components/input/composite/esm2022/composite.directive.mjs +88 -0
- package/components/input/composite/esm2022/composite.props.mjs +10 -0
- package/components/input/composite/esm2022/index.mjs +5 -0
- package/components/input/composite/esm2022/public_api.mjs +2 -0
- package/components/input/composite/fesm2022/index.mjs +103 -0
- package/components/input/composite/fesm2022/index.mjs.map +1 -0
- package/components/input/composite/index.d.ts +5 -0
- package/components/input/composite/package.json +20 -0
- package/components/input/composite/public_api.d.ts +1 -0
- package/components/input/currency/.npmignore +2 -0
- package/components/input/currency/bundles/index.umd.js +112 -0
- package/components/input/currency/currency.component.d.ts +28 -0
- package/components/input/currency/currency.props.d.ts +2 -0
- package/components/input/currency/esm2022/currency.component.mjs +67 -0
- package/components/input/currency/esm2022/currency.props.mjs +27 -0
- package/components/input/currency/esm2022/index.mjs +5 -0
- package/components/input/currency/esm2022/public_api.mjs +2 -0
- package/components/input/currency/fesm2022/index.mjs +97 -0
- package/components/input/currency/fesm2022/index.mjs.map +1 -0
- package/components/input/currency/index.d.ts +5 -0
- package/components/input/currency/package.json +20 -0
- package/components/input/currency/public_api.d.ts +1 -0
- package/components/input/dataset-aware-form/.npmignore +2 -0
- package/components/input/dataset-aware-form/bundles/index.umd.js +352 -0
- package/components/input/dataset-aware-form/dataset-aware-form.component.d.ts +76 -0
- package/components/input/dataset-aware-form/esm2022/dataset-aware-form.component.mjs +331 -0
- package/components/input/dataset-aware-form/esm2022/index.mjs +5 -0
- package/components/input/dataset-aware-form/esm2022/public_api.mjs +2 -0
- package/components/input/dataset-aware-form/fesm2022/index.mjs +338 -0
- package/components/input/dataset-aware-form/fesm2022/index.mjs.map +1 -0
- package/components/input/dataset-aware-form/index.d.ts +5 -0
- package/components/input/dataset-aware-form/package.json +20 -0
- package/components/input/dataset-aware-form/public_api.d.ts +1 -0
- package/components/input/epoch/base-date-time/.npmignore +2 -0
- package/components/input/epoch/base-date-time/base-date-time.component.d.ts +246 -0
- package/components/input/epoch/base-date-time/bundles/index.umd.js +1093 -0
- package/components/input/epoch/base-date-time/esm2022/base-date-time.component.mjs +1077 -0
- package/components/input/epoch/base-date-time/esm2022/index.mjs +5 -0
- package/components/input/epoch/base-date-time/esm2022/public_api.mjs +2 -0
- package/components/input/epoch/base-date-time/fesm2022/index.mjs +1084 -0
- package/components/input/epoch/base-date-time/fesm2022/index.mjs.map +1 -0
- package/components/input/epoch/base-date-time/index.d.ts +5 -0
- package/components/input/epoch/base-date-time/package.json +20 -0
- package/components/input/epoch/base-date-time/public_api.d.ts +1 -0
- package/components/input/epoch/date/.npmignore +2 -0
- package/components/input/epoch/date/bundles/index.umd.js +515 -0
- package/components/input/epoch/date/date.component.d.ts +61 -0
- package/components/input/epoch/date/date.props.d.ts +2 -0
- package/components/input/epoch/date/esm2022/date.component.mjs +345 -0
- package/components/input/epoch/date/esm2022/date.props.mjs +43 -0
- package/components/input/epoch/date/esm2022/imaskUtil.mjs +114 -0
- package/components/input/epoch/date/esm2022/index.mjs +5 -0
- package/components/input/epoch/date/esm2022/public_api.mjs +2 -0
- package/components/input/epoch/date/fesm2022/index.mjs +505 -0
- package/components/input/epoch/date/fesm2022/index.mjs.map +1 -0
- package/components/input/epoch/date/imaskUtil.d.ts +92 -0
- package/components/input/epoch/date/index.d.ts +5 -0
- package/components/input/epoch/date/package.json +20 -0
- package/components/input/epoch/date/public_api.d.ts +1 -0
- package/components/input/epoch/date-time/.npmignore +2 -0
- package/components/input/epoch/date-time/bundles/index.umd.js +519 -0
- package/components/input/epoch/date-time/date-time.component.d.ts +109 -0
- package/components/input/epoch/date-time/date-time.props.d.ts +2 -0
- package/components/input/epoch/date-time/esm2022/date-time.component.mjs +459 -0
- package/components/input/epoch/date-time/esm2022/date-time.props.mjs +47 -0
- package/components/input/epoch/date-time/esm2022/index.mjs +5 -0
- package/components/input/epoch/date-time/esm2022/public_api.mjs +2 -0
- package/components/input/epoch/date-time/fesm2022/index.mjs +510 -0
- package/components/input/epoch/date-time/fesm2022/index.mjs.map +1 -0
- package/components/input/epoch/date-time/index.d.ts +5 -0
- package/components/input/epoch/date-time/package.json +20 -0
- package/components/input/epoch/date-time/public_api.d.ts +1 -0
- package/components/input/epoch/date-time-picker/.npmignore +2 -0
- package/components/input/epoch/date-time-picker/bundles/index.umd.js +453 -0
- package/components/input/epoch/date-time-picker/date-time-picker.component.d.ts +80 -0
- package/components/input/epoch/date-time-picker/esm2022/date-time-picker.component.mjs +433 -0
- package/components/input/epoch/date-time-picker/esm2022/index.mjs +5 -0
- package/components/input/epoch/date-time-picker/esm2022/public_api.mjs +2 -0
- package/components/input/epoch/date-time-picker/fesm2022/index.mjs +439 -0
- package/components/input/epoch/date-time-picker/fesm2022/index.mjs.map +1 -0
- package/components/input/epoch/date-time-picker/index.d.ts +5 -0
- package/components/input/epoch/date-time-picker/package.json +20 -0
- package/components/input/epoch/date-time-picker/public_api.d.ts +1 -0
- package/components/input/epoch/picker/.npmignore +2 -0
- package/components/input/epoch/picker/bundles/index.umd.js +192 -0
- package/components/input/epoch/picker/esm2022/index.mjs +5 -0
- package/components/input/epoch/picker/esm2022/picker.component.mjs +165 -0
- package/components/input/epoch/picker/esm2022/public_api.mjs +3 -0
- package/components/input/epoch/picker/fesm2022/index.mjs +172 -0
- package/components/input/epoch/picker/fesm2022/index.mjs.map +1 -0
- package/components/input/epoch/picker/index.d.ts +5 -0
- package/components/input/epoch/picker/package.json +20 -0
- package/components/input/epoch/picker/picker.component.d.ts +36 -0
- package/components/input/epoch/picker/public_api.d.ts +2 -0
- package/components/input/epoch/time/.npmignore +2 -0
- package/components/input/epoch/time/bundles/index.umd.js +401 -0
- package/components/input/epoch/time/esm2022/index.mjs +5 -0
- package/components/input/epoch/time/esm2022/public_api.mjs +2 -0
- package/components/input/epoch/time/esm2022/time.component.mjs +352 -0
- package/components/input/epoch/time/esm2022/time.props.mjs +35 -0
- package/components/input/epoch/time/fesm2022/index.mjs +391 -0
- package/components/input/epoch/time/fesm2022/index.mjs.map +1 -0
- package/components/input/epoch/time/index.d.ts +5 -0
- package/components/input/epoch/time/package.json +20 -0
- package/components/input/epoch/time/public_api.d.ts +1 -0
- package/components/input/epoch/time/time.component.d.ts +105 -0
- package/components/input/epoch/time/time.props.d.ts +2 -0
- package/components/input/file-upload/.npmignore +2 -0
- package/components/input/file-upload/bundles/index.umd.js +483 -0
- package/components/input/file-upload/esm2022/file-upload.component.mjs +426 -0
- package/components/input/file-upload/esm2022/file-upload.props.mjs +39 -0
- package/components/input/file-upload/esm2022/index.mjs +5 -0
- package/components/input/file-upload/esm2022/public_api.mjs +2 -0
- package/components/input/file-upload/fesm2022/index.mjs +469 -0
- package/components/input/file-upload/fesm2022/index.mjs.map +1 -0
- package/components/input/file-upload/file-upload.component.d.ts +103 -0
- package/components/input/file-upload/file-upload.props.d.ts +1 -0
- package/components/input/file-upload/index.d.ts +5 -0
- package/components/input/file-upload/package.json +20 -0
- package/components/input/file-upload/public_api.d.ts +1 -0
- package/components/input/number/.npmignore +2 -0
- package/components/input/number/bundles/index.umd.js +109 -0
- package/components/input/number/esm2022/index.mjs +5 -0
- package/components/input/number/esm2022/number.component.mjs +57 -0
- package/components/input/number/esm2022/number.props.mjs +35 -0
- package/components/input/number/esm2022/public_api.mjs +2 -0
- package/components/input/number/fesm2022/index.mjs +95 -0
- package/components/input/number/fesm2022/index.mjs.map +1 -0
- package/components/input/number/index.d.ts +5 -0
- package/components/input/number/number.component.d.ts +26 -0
- package/components/input/number/number.props.d.ts +2 -0
- package/components/input/number/package.json +20 -0
- package/components/input/number/public_api.d.ts +1 -0
- package/components/input/radioset/.npmignore +2 -0
- package/components/input/radioset/bundles/index.umd.js +164 -0
- package/components/input/radioset/esm2022/index.mjs +5 -0
- package/components/input/radioset/esm2022/public_api.mjs +2 -0
- package/components/input/radioset/esm2022/radioset.component.mjs +110 -0
- package/components/input/radioset/esm2022/radioset.props.mjs +37 -0
- package/components/input/radioset/fesm2022/index.mjs +151 -0
- package/components/input/radioset/fesm2022/index.mjs.map +1 -0
- package/components/input/radioset/index.d.ts +5 -0
- package/components/input/radioset/package.json +20 -0
- package/components/input/radioset/public_api.d.ts +1 -0
- package/components/input/radioset/radioset.component.d.ts +23 -0
- package/components/input/radioset/radioset.props.d.ts +2 -0
- package/components/input/rating/.npmignore +2 -0
- package/components/input/rating/bundles/index.umd.js +270 -0
- package/components/input/rating/esm2022/index.mjs +5 -0
- package/components/input/rating/esm2022/public_api.mjs +2 -0
- package/components/input/rating/esm2022/rating.component.mjs +225 -0
- package/components/input/rating/esm2022/rating.props.mjs +29 -0
- package/components/input/rating/fesm2022/index.mjs +257 -0
- package/components/input/rating/fesm2022/index.mjs.map +1 -0
- package/components/input/rating/index.d.ts +5 -0
- package/components/input/rating/package.json +20 -0
- package/components/input/rating/public_api.d.ts +1 -0
- package/components/input/rating/rating.component.d.ts +44 -0
- package/components/input/rating/rating.props.d.ts +2 -0
- package/components/input/select/.npmignore +2 -0
- package/components/input/select/bundles/index.umd.js +225 -0
- package/components/input/select/esm2022/index.mjs +5 -0
- package/components/input/select/esm2022/public_api.mjs +2 -0
- package/components/input/select/esm2022/select.component.mjs +172 -0
- package/components/input/select/esm2022/select.props.mjs +36 -0
- package/components/input/select/fesm2022/index.mjs +211 -0
- package/components/input/select/fesm2022/index.mjs.map +1 -0
- package/components/input/select/index.d.ts +5 -0
- package/components/input/select/package.json +20 -0
- package/components/input/select/public_api.d.ts +1 -0
- package/components/input/select/select.component.d.ts +36 -0
- package/components/input/select/select.props.d.ts +2 -0
- package/components/input/slider/.npmignore +2 -0
- package/components/input/slider/bundles/index.umd.js +203 -0
- package/components/input/slider/esm2022/index.mjs +5 -0
- package/components/input/slider/esm2022/public_api.mjs +2 -0
- package/components/input/slider/esm2022/slider.component.mjs +157 -0
- package/components/input/slider/esm2022/slider.props.mjs +28 -0
- package/components/input/slider/fesm2022/index.mjs +189 -0
- package/components/input/slider/fesm2022/index.mjs.map +1 -0
- package/components/input/slider/index.d.ts +5 -0
- package/components/input/slider/package.json +20 -0
- package/components/input/slider/public_api.d.ts +1 -0
- package/components/input/slider/slider.component.d.ts +39 -0
- package/components/input/slider/slider.props.d.ts +2 -0
- package/components/input/switch/.npmignore +2 -0
- package/components/input/switch/bundles/index.umd.js +224 -0
- package/components/input/switch/esm2022/index.mjs +5 -0
- package/components/input/switch/esm2022/public_api.mjs +2 -0
- package/components/input/switch/esm2022/switch.component.mjs +179 -0
- package/components/input/switch/esm2022/switch.props.mjs +28 -0
- package/components/input/switch/fesm2022/index.mjs +211 -0
- package/components/input/switch/fesm2022/index.mjs.map +1 -0
- package/components/input/switch/index.d.ts +5 -0
- package/components/input/switch/package.json +20 -0
- package/components/input/switch/public_api.d.ts +1 -0
- package/components/input/switch/switch.component.d.ts +30 -0
- package/components/input/switch/switch.props.d.ts +2 -0
- package/components/input/text/.npmignore +2 -0
- package/components/input/text/base-input/base-input.d.ts +33 -0
- package/components/input/text/bundles/index.umd.js +1130 -0
- package/components/input/text/esm2022/base-input/base-input.mjs +93 -0
- package/components/input/text/esm2022/index.mjs +5 -0
- package/components/input/text/esm2022/input-calendar/input-calendar.component.mjs +53 -0
- package/components/input/text/esm2022/input-calendar/input-calendar.props.mjs +30 -0
- package/components/input/text/esm2022/input-color/input-color.component.mjs +53 -0
- package/components/input/text/esm2022/input-color/input-color.props.mjs +27 -0
- package/components/input/text/esm2022/input-email/input-email.component.mjs +53 -0
- package/components/input/text/esm2022/input-email/input-email.props.mjs +29 -0
- package/components/input/text/esm2022/input-number/input-number.component.mjs +63 -0
- package/components/input/text/esm2022/input-number/input-number.props.mjs +32 -0
- package/components/input/text/esm2022/input-text/input-text.component.mjs +136 -0
- package/components/input/text/esm2022/input-text/input-text.props.mjs +48 -0
- package/components/input/text/esm2022/number-locale/number-locale.mjs +554 -0
- package/components/input/text/esm2022/public_api.mjs +8 -0
- package/components/input/text/fesm2022/index.mjs +1114 -0
- package/components/input/text/fesm2022/index.mjs.map +1 -0
- package/components/input/text/index.d.ts +5 -0
- package/components/input/text/input-calendar/input-calendar.component.d.ts +30 -0
- package/components/input/text/input-calendar/input-calendar.props.d.ts +2 -0
- package/components/input/text/input-color/input-color.component.d.ts +27 -0
- package/components/input/text/input-color/input-color.props.d.ts +2 -0
- package/components/input/text/input-email/input-email.component.d.ts +29 -0
- package/components/input/text/input-email/input-email.props.d.ts +2 -0
- package/components/input/text/input-number/input-number.component.d.ts +33 -0
- package/components/input/text/input-number/input-number.props.d.ts +2 -0
- package/components/input/text/input-text/input-text.component.d.ts +52 -0
- package/components/input/text/input-text/input-text.props.d.ts +2 -0
- package/components/input/text/number-locale/number-locale.d.ts +127 -0
- package/components/input/text/package.json +20 -0
- package/components/input/text/public_api.d.ts +7 -0
- package/components/input/textarea/.npmignore +2 -0
- package/components/input/textarea/bundles/index.umd.js +108 -0
- package/components/input/textarea/esm2022/index.mjs +5 -0
- package/components/input/textarea/esm2022/public_api.mjs +2 -0
- package/components/input/textarea/esm2022/textarea.component.mjs +60 -0
- package/components/input/textarea/esm2022/textarea.props.mjs +30 -0
- package/components/input/textarea/fesm2022/index.mjs +94 -0
- package/components/input/textarea/fesm2022/index.mjs.map +1 -0
- package/components/input/textarea/index.d.ts +5 -0
- package/components/input/textarea/package.json +20 -0
- package/components/input/textarea/public_api.d.ts +1 -0
- package/components/input/textarea/textarea.component.d.ts +30 -0
- package/components/input/textarea/textarea.props.d.ts +2 -0
- package/components/navigation/breadcrumb/.npmignore +2 -0
- package/components/navigation/breadcrumb/breadcrumb.component.d.ts +25 -0
- package/components/navigation/breadcrumb/breadcrumb.props.d.ts +1 -0
- package/components/navigation/breadcrumb/bundles/index.umd.js +138 -0
- package/components/navigation/breadcrumb/esm2022/breadcrumb.component.mjs +101 -0
- package/components/navigation/breadcrumb/esm2022/breadcrumb.props.mjs +17 -0
- package/components/navigation/breadcrumb/esm2022/index.mjs +5 -0
- package/components/navigation/breadcrumb/esm2022/public_api.mjs +2 -0
- package/components/navigation/breadcrumb/fesm2022/index.mjs +121 -0
- package/components/navigation/breadcrumb/fesm2022/index.mjs.map +1 -0
- package/components/navigation/breadcrumb/index.d.ts +5 -0
- package/components/navigation/breadcrumb/package.json +20 -0
- package/components/navigation/breadcrumb/public_api.d.ts +1 -0
- package/components/navigation/menu/.npmignore +2 -0
- package/components/navigation/menu/bundles/index.umd.js +947 -0
- package/components/navigation/menu/esm2022/index.mjs +5 -0
- package/components/navigation/menu/esm2022/menu-adapator.component.mjs +80 -0
- package/components/navigation/menu/esm2022/menu-dropdown/menu-dropdown.component.mjs +105 -0
- package/components/navigation/menu/esm2022/menu-dropdown-item/menu-dropdown-item.component.mjs +191 -0
- package/components/navigation/menu/esm2022/menu.component.mjs +282 -0
- package/components/navigation/menu/esm2022/menu.props.mjs +37 -0
- package/components/navigation/menu/esm2022/nav/nav-item/nav-item.directive.mjs +66 -0
- package/components/navigation/menu/esm2022/nav/nav-item/nav-item.props.mjs +9 -0
- package/components/navigation/menu/esm2022/nav/nav.component.mjs +131 -0
- package/components/navigation/menu/esm2022/nav/nav.props.mjs +28 -0
- package/components/navigation/menu/esm2022/nav/navigation-control.directive.mjs +49 -0
- package/components/navigation/menu/esm2022/public_api.mjs +8 -0
- package/components/navigation/menu/fesm2022/index.mjs +929 -0
- package/components/navigation/menu/fesm2022/index.mjs.map +1 -0
- package/components/navigation/menu/index.d.ts +5 -0
- package/components/navigation/menu/menu-adapator.component.d.ts +23 -0
- package/components/navigation/menu/menu-dropdown/menu-dropdown.component.d.ts +15 -0
- package/components/navigation/menu/menu-dropdown-item/menu-dropdown-item.component.d.ts +35 -0
- package/components/navigation/menu/menu.component.d.ts +65 -0
- package/components/navigation/menu/menu.props.d.ts +1 -0
- package/components/navigation/menu/nav/nav-item/nav-item.directive.d.ts +14 -0
- package/components/navigation/menu/nav/nav-item/nav-item.props.d.ts +1 -0
- package/components/navigation/menu/nav/nav.component.d.ts +35 -0
- package/components/navigation/menu/nav/nav.props.d.ts +1 -0
- package/components/navigation/menu/nav/navigation-control.directive.d.ts +14 -0
- package/components/navigation/menu/package.json +20 -0
- package/components/navigation/menu/public_api.d.ts +7 -0
- package/components/navigation/navbar/.npmignore +2 -0
- package/components/navigation/navbar/bundles/index.umd.js +87 -0
- package/components/navigation/navbar/esm2022/index.mjs +5 -0
- package/components/navigation/navbar/esm2022/navbar.component.mjs +52 -0
- package/components/navigation/navbar/esm2022/navbar.props.mjs +13 -0
- package/components/navigation/navbar/esm2022/public_api.mjs +2 -0
- package/components/navigation/navbar/fesm2022/index.mjs +70 -0
- package/components/navigation/navbar/fesm2022/index.mjs.map +1 -0
- package/components/navigation/navbar/index.d.ts +5 -0
- package/components/navigation/navbar/navbar.component.d.ts +16 -0
- package/components/navigation/navbar/navbar.props.d.ts +1 -0
- package/components/navigation/navbar/package.json +20 -0
- package/components/navigation/navbar/public_api.d.ts +1 -0
- package/components/navigation/popover/.npmignore +2 -0
- package/components/navigation/popover/bundles/index.umd.js +514 -0
- package/components/navigation/popover/esm2022/index.mjs +5 -0
- package/components/navigation/popover/esm2022/popover.component.mjs +460 -0
- package/components/navigation/popover/esm2022/popover.props.mjs +35 -0
- package/components/navigation/popover/esm2022/public_api.mjs +2 -0
- package/components/navigation/popover/fesm2022/index.mjs +500 -0
- package/components/navigation/popover/fesm2022/index.mjs.map +1 -0
- package/components/navigation/popover/index.d.ts +5 -0
- package/components/navigation/popover/package.json +20 -0
- package/components/navigation/popover/popover.component.d.ts +83 -0
- package/components/navigation/popover/popover.props.d.ts +1 -0
- package/components/navigation/popover/public_api.d.ts +1 -0
- package/components/page/default/.npmignore +2 -0
- package/components/page/default/bundles/index.umd.js +458 -0
- package/components/page/default/content/content.component.d.ts +9 -0
- package/components/page/default/content/content.props.d.ts +1 -0
- package/components/page/default/esm2022/content/content.component.mjs +29 -0
- package/components/page/default/esm2022/content/content.props.mjs +8 -0
- package/components/page/default/esm2022/index.mjs +5 -0
- package/components/page/default/esm2022/layout.directive.mjs +58 -0
- package/components/page/default/esm2022/layout.props.mjs +5 -0
- package/components/page/default/esm2022/page-content/page-content.component.mjs +85 -0
- package/components/page/default/esm2022/page-content/page-content.props.mjs +14 -0
- package/components/page/default/esm2022/page.directive.mjs +97 -0
- package/components/page/default/esm2022/page.props.mjs +11 -0
- package/components/page/default/esm2022/public_api.mjs +7 -0
- package/components/page/default/esm2022/router-outlet.directive.mjs +47 -0
- package/components/page/default/esm2022/router-outlet.props.mjs +8 -0
- package/components/page/default/esm2022/spa-page.directive.mjs +97 -0
- package/components/page/default/esm2022/spa-page.props.mjs +10 -0
- package/components/page/default/fesm2022/index.mjs +438 -0
- package/components/page/default/fesm2022/index.mjs.map +1 -0
- package/components/page/default/index.d.ts +5 -0
- package/components/page/default/layout.directive.d.ts +20 -0
- package/components/page/default/layout.props.d.ts +1 -0
- package/components/page/default/package.json +20 -0
- package/components/page/default/page-content/page-content.component.d.ts +17 -0
- package/components/page/default/page-content/page-content.props.d.ts +1 -0
- package/components/page/default/page.directive.d.ts +38 -0
- package/components/page/default/page.props.d.ts +1 -0
- package/components/page/default/public_api.d.ts +6 -0
- package/components/page/default/router-outlet.directive.d.ts +13 -0
- package/components/page/default/router-outlet.props.d.ts +1 -0
- package/components/page/default/spa-page.directive.d.ts +38 -0
- package/components/page/default/spa-page.props.d.ts +1 -0
- package/components/page/footer/.npmignore +2 -0
- package/components/page/footer/bundles/index.umd.js +71 -0
- package/components/page/footer/esm2022/footer.directive.mjs +37 -0
- package/components/page/footer/esm2022/footer.props.mjs +11 -0
- package/components/page/footer/esm2022/index.mjs +5 -0
- package/components/page/footer/esm2022/public_api.mjs +2 -0
- package/components/page/footer/fesm2022/index.mjs +53 -0
- package/components/page/footer/fesm2022/index.mjs.map +1 -0
- package/components/page/footer/footer.directive.d.ts +9 -0
- package/components/page/footer/footer.props.d.ts +1 -0
- package/components/page/footer/index.d.ts +5 -0
- package/components/page/footer/package.json +20 -0
- package/components/page/footer/public_api.d.ts +1 -0
- package/components/page/header/.npmignore +2 -0
- package/components/page/header/bundles/index.umd.js +67 -0
- package/components/page/header/esm2022/header.component.mjs +33 -0
- package/components/page/header/esm2022/header.props.mjs +11 -0
- package/components/page/header/esm2022/index.mjs +5 -0
- package/components/page/header/esm2022/public_api.mjs +2 -0
- package/components/page/header/fesm2022/index.mjs +49 -0
- package/components/page/header/fesm2022/index.mjs.map +1 -0
- package/components/page/header/header.component.d.ts +10 -0
- package/components/page/header/header.props.d.ts +1 -0
- package/components/page/header/index.d.ts +5 -0
- package/components/page/header/package.json +20 -0
- package/components/page/header/public_api.d.ts +1 -0
- package/components/page/left-panel/.npmignore +2 -0
- package/components/page/left-panel/bundles/index.umd.js +415 -0
- package/components/page/left-panel/esm2022/index.mjs +5 -0
- package/components/page/left-panel/esm2022/left-panel.animator.mjs +133 -0
- package/components/page/left-panel/esm2022/left-panel.directive.mjs +251 -0
- package/components/page/left-panel/esm2022/left-panel.props.mjs +15 -0
- package/components/page/left-panel/esm2022/public_api.mjs +2 -0
- package/components/page/left-panel/fesm2022/index.mjs +400 -0
- package/components/page/left-panel/fesm2022/index.mjs.map +1 -0
- package/components/page/left-panel/index.d.ts +5 -0
- package/components/page/left-panel/left-panel.animator.d.ts +49 -0
- package/components/page/left-panel/left-panel.directive.d.ts +38 -0
- package/components/page/left-panel/left-panel.props.d.ts +1 -0
- package/components/page/left-panel/package.json +20 -0
- package/components/page/left-panel/public_api.d.ts +1 -0
- package/components/page/right-panel/.npmignore +2 -0
- package/components/page/right-panel/bundles/index.umd.js +86 -0
- package/components/page/right-panel/esm2022/index.mjs +5 -0
- package/components/page/right-panel/esm2022/public_api.mjs +2 -0
- package/components/page/right-panel/esm2022/right-panel.directive.mjs +52 -0
- package/components/page/right-panel/esm2022/right-panel.props.mjs +12 -0
- package/components/page/right-panel/fesm2022/index.mjs +69 -0
- package/components/page/right-panel/fesm2022/index.mjs.map +1 -0
- package/components/page/right-panel/index.d.ts +5 -0
- package/components/page/right-panel/package.json +20 -0
- package/components/page/right-panel/public_api.d.ts +1 -0
- package/components/page/right-panel/right-panel.directive.d.ts +10 -0
- package/components/page/right-panel/right-panel.props.d.ts +1 -0
- package/components/page/top-nav/.npmignore +2 -0
- package/components/page/top-nav/bundles/index.umd.js +68 -0
- package/components/page/top-nav/esm2022/index.mjs +5 -0
- package/components/page/top-nav/esm2022/public_api.mjs +2 -0
- package/components/page/top-nav/esm2022/top-nav.directive.mjs +34 -0
- package/components/page/top-nav/esm2022/top-nav.props.mjs +11 -0
- package/components/page/top-nav/fesm2022/index.mjs +50 -0
- package/components/page/top-nav/fesm2022/index.mjs.map +1 -0
- package/components/page/top-nav/index.d.ts +5 -0
- package/components/page/top-nav/package.json +20 -0
- package/components/page/top-nav/public_api.d.ts +1 -0
- package/components/page/top-nav/top-nav.directive.d.ts +9 -0
- package/components/page/top-nav/top-nav.props.d.ts +1 -0
- package/components/prefab/.npmignore +2 -0
- package/components/prefab/bundles/index.umd.js +176 -0
- package/components/prefab/esm2022/index.mjs +5 -0
- package/components/prefab/esm2022/prefab-container/prefab-container.directive.mjs +56 -0
- package/components/prefab/esm2022/prefab-container/prefab-container.props.mjs +9 -0
- package/components/prefab/esm2022/prefab.directive.mjs +88 -0
- package/components/prefab/esm2022/prefab.props.mjs +8 -0
- package/components/prefab/esm2022/public_api.mjs +3 -0
- package/components/prefab/fesm2022/index.mjs +159 -0
- package/components/prefab/fesm2022/index.mjs.map +1 -0
- package/components/prefab/index.d.ts +5 -0
- package/components/prefab/package.json +20 -0
- package/components/prefab/prefab-container/prefab-container.directive.d.ts +15 -0
- package/components/prefab/prefab-container/prefab-container.props.d.ts +1 -0
- package/components/prefab/prefab.directive.d.ts +17 -0
- package/components/prefab/prefab.props.d.ts +1 -0
- package/components/prefab/public_api.d.ts +2 -0
- package/core/.npmignore +2 -0
- package/core/bundles/index.umd.js +5608 -0
- package/core/constants/currency-constants.d.ts +1064 -0
- package/core/enums/enums.d.ts +67 -0
- package/core/esm2022/constants/currency-constants.mjs +1065 -0
- package/core/esm2022/enums/enums.mjs +72 -0
- package/core/esm2022/index.mjs +5 -0
- package/core/esm2022/public_api.mjs +26 -0
- package/core/esm2022/services/constant.service.mjs +25 -0
- package/core/esm2022/services/custom-icons-loader.service.mjs +20 -0
- package/core/esm2022/services/field-type.service.mjs +35 -0
- package/core/esm2022/services/field-widget.service.mjs +37 -0
- package/core/esm2022/services/pagination.service.mjs +336 -0
- package/core/esm2022/services/script-loader.service.mjs +75 -0
- package/core/esm2022/services/state-persistence.service.mjs +500 -0
- package/core/esm2022/services/user-custom-pipe-manager.service.mjs +23 -0
- package/core/esm2022/services/utils.service.mjs +16 -0
- package/core/esm2022/services/viewport.service.mjs +121 -0
- package/core/esm2022/types/types.mjs +81 -0
- package/core/esm2022/utils/build-utils.mjs +296 -0
- package/core/esm2022/utils/dom.mjs +123 -0
- package/core/esm2022/utils/event-notifier.mjs +70 -0
- package/core/esm2022/utils/expression-parser.mjs +593 -0
- package/core/esm2022/utils/id-generator.mjs +15 -0
- package/core/esm2022/utils/lru-cache.mjs +95 -0
- package/core/esm2022/utils/utils.mjs +1476 -0
- package/core/esm2022/utils/watcher.mjs +276 -0
- package/core/esm2022/utils/wm-project-properties.mjs +30 -0
- package/core/fesm2022/index.mjs +5455 -0
- package/core/fesm2022/index.mjs.map +1 -0
- package/core/index.d.ts +5 -0
- package/core/package.json +26 -0
- package/core/public_api.d.ts +22 -0
- package/core/services/constant.service.d.ts +28 -0
- package/core/services/custom-icons-loader.service.d.ts +6 -0
- package/core/services/field-type.service.d.ts +6 -0
- package/core/services/field-widget.service.d.ts +6 -0
- package/core/services/pagination.service.d.ts +59 -0
- package/core/services/script-loader.service.d.ts +17 -0
- package/core/services/state-persistence.service.d.ts +231 -0
- package/core/services/user-custom-pipe-manager.service.d.ts +9 -0
- package/core/services/utils.service.d.ts +6 -0
- package/core/services/viewport.service.d.ts +37 -0
- package/core/types/types.d.ts +208 -0
- package/core/utils/build-utils.d.ts +14 -0
- package/core/utils/dom.d.ts +16 -0
- package/core/utils/event-notifier.d.ts +26 -0
- package/core/utils/expression-parser.d.ts +8 -0
- package/core/utils/id-generator.d.ts +5 -0
- package/core/utils/lru-cache.d.ts +23 -0
- package/core/utils/utils.d.ts +279 -0
- package/core/utils/watcher.d.ts +13 -0
- package/core/utils/wm-project-properties.d.ts +4 -0
- package/http/.npmignore +2 -0
- package/http/bundles/index.umd.js +421 -0
- package/http/esm2022/http.service.mjs +301 -0
- package/http/esm2022/index.mjs +5 -0
- package/http/esm2022/public_api.mjs +4 -0
- package/http/esm2022/wm-http-request.mjs +48 -0
- package/http/esm2022/wm-http-response.mjs +52 -0
- package/http/fesm2022/index.mjs +405 -0
- package/http/fesm2022/index.mjs.map +1 -0
- package/http/http.service.d.ts +70 -0
- package/http/index.d.ts +5 -0
- package/http/package.json +25 -0
- package/http/public_api.d.ts +3 -0
- package/http/wm-http-request.d.ts +24 -0
- package/http/wm-http-response.d.ts +22 -0
- package/locales/angular/global/af-na.js +24 -0
- package/locales/angular/global/af.js +24 -0
- package/locales/angular/global/agq.js +22 -0
- package/locales/angular/global/ak.js +24 -0
- package/locales/angular/global/am.js +24 -0
- package/locales/angular/global/ar-ae.js +32 -0
- package/locales/angular/global/ar-bh.js +32 -0
- package/locales/angular/global/ar-dj.js +32 -0
- package/locales/angular/global/ar-dz.js +32 -0
- package/locales/angular/global/ar-eg.js +32 -0
- package/locales/angular/global/ar-eh.js +32 -0
- package/locales/angular/global/ar-er.js +32 -0
- package/locales/angular/global/ar-il.js +32 -0
- package/locales/angular/global/ar-iq.js +32 -0
- package/locales/angular/global/ar-jo.js +32 -0
- package/locales/angular/global/ar-km.js +32 -0
- package/locales/angular/global/ar-kw.js +32 -0
- package/locales/angular/global/ar-lb.js +32 -0
- package/locales/angular/global/ar-ly.js +32 -0
- package/locales/angular/global/ar-ma.js +32 -0
- package/locales/angular/global/ar-mr.js +32 -0
- package/locales/angular/global/ar-om.js +32 -0
- package/locales/angular/global/ar-ps.js +32 -0
- package/locales/angular/global/ar-qa.js +32 -0
- package/locales/angular/global/ar-sa.js +32 -0
- package/locales/angular/global/ar-sd.js +32 -0
- package/locales/angular/global/ar-so.js +32 -0
- package/locales/angular/global/ar-ss.js +32 -0
- package/locales/angular/global/ar-sy.js +32 -0
- package/locales/angular/global/ar-td.js +32 -0
- package/locales/angular/global/ar-tn.js +32 -0
- package/locales/angular/global/ar-ye.js +32 -0
- package/locales/angular/global/ar.js +32 -0
- package/locales/angular/global/as.js +24 -0
- package/locales/angular/global/asa.js +24 -0
- package/locales/angular/global/ast.js +24 -0
- package/locales/angular/global/az-cyrl.js +22 -0
- package/locales/angular/global/az-latn.js +24 -0
- package/locales/angular/global/az.js +24 -0
- package/locales/angular/global/bas.js +22 -0
- package/locales/angular/global/be-tarask.js +28 -0
- package/locales/angular/global/be.js +28 -0
- package/locales/angular/global/bem.js +24 -0
- package/locales/angular/global/bez.js +24 -0
- package/locales/angular/global/bg.js +24 -0
- package/locales/angular/global/bm.js +22 -0
- package/locales/angular/global/bn-in.js +24 -0
- package/locales/angular/global/bn.js +24 -0
- package/locales/angular/global/bo-in.js +22 -0
- package/locales/angular/global/bo.js +22 -0
- package/locales/angular/global/br.js +30 -0
- package/locales/angular/global/brx.js +24 -0
- package/locales/angular/global/bs-cyrl.js +22 -0
- package/locales/angular/global/bs-latn.js +26 -0
- package/locales/angular/global/bs.js +26 -0
- package/locales/angular/global/ca-ad.js +24 -0
- package/locales/angular/global/ca-es-valencia.js +24 -0
- package/locales/angular/global/ca-fr.js +24 -0
- package/locales/angular/global/ca-it.js +24 -0
- package/locales/angular/global/ca.js +24 -0
- package/locales/angular/global/ccp-in.js +22 -0
- package/locales/angular/global/ccp.js +22 -0
- package/locales/angular/global/ce.js +24 -0
- package/locales/angular/global/ceb.js +24 -0
- package/locales/angular/global/cgg.js +24 -0
- package/locales/angular/global/chr.js +24 -0
- package/locales/angular/global/ckb-ir.js +24 -0
- package/locales/angular/global/ckb.js +24 -0
- package/locales/angular/global/cs.js +28 -0
- package/locales/angular/global/cy.js +32 -0
- package/locales/angular/global/da-gl.js +24 -0
- package/locales/angular/global/da.js +24 -0
- package/locales/angular/global/dav.js +22 -0
- package/locales/angular/global/de-at.js +24 -0
- package/locales/angular/global/de-be.js +24 -0
- package/locales/angular/global/de-ch.js +24 -0
- package/locales/angular/global/de-it.js +24 -0
- package/locales/angular/global/de-li.js +24 -0
- package/locales/angular/global/de-lu.js +24 -0
- package/locales/angular/global/de.js +24 -0
- package/locales/angular/global/dje.js +22 -0
- package/locales/angular/global/doi.js +24 -0
- package/locales/angular/global/dsb.js +28 -0
- package/locales/angular/global/dua.js +22 -0
- package/locales/angular/global/dyo.js +22 -0
- package/locales/angular/global/dz.js +22 -0
- package/locales/angular/global/ebu.js +22 -0
- package/locales/angular/global/ee-tg.js +24 -0
- package/locales/angular/global/ee.js +24 -0
- package/locales/angular/global/el-cy.js +24 -0
- package/locales/angular/global/el.js +24 -0
- package/locales/angular/global/en-001.js +24 -0
- package/locales/angular/global/en-150.js +24 -0
- package/locales/angular/global/en-ae.js +24 -0
- package/locales/angular/global/en-ag.js +24 -0
- package/locales/angular/global/en-ai.js +24 -0
- package/locales/angular/global/en-as.js +24 -0
- package/locales/angular/global/en-at.js +24 -0
- package/locales/angular/global/en-au.js +24 -0
- package/locales/angular/global/en-bb.js +24 -0
- package/locales/angular/global/en-be.js +24 -0
- package/locales/angular/global/en-bi.js +24 -0
- package/locales/angular/global/en-bm.js +24 -0
- package/locales/angular/global/en-bs.js +24 -0
- package/locales/angular/global/en-bw.js +24 -0
- package/locales/angular/global/en-bz.js +24 -0
- package/locales/angular/global/en-ca.js +24 -0
- package/locales/angular/global/en-cc.js +24 -0
- package/locales/angular/global/en-ch.js +24 -0
- package/locales/angular/global/en-ck.js +24 -0
- package/locales/angular/global/en-cm.js +24 -0
- package/locales/angular/global/en-cx.js +24 -0
- package/locales/angular/global/en-cy.js +24 -0
- package/locales/angular/global/en-de.js +24 -0
- package/locales/angular/global/en-dg.js +24 -0
- package/locales/angular/global/en-dk.js +24 -0
- package/locales/angular/global/en-dm.js +24 -0
- package/locales/angular/global/en-er.js +24 -0
- package/locales/angular/global/en-fi.js +24 -0
- package/locales/angular/global/en-fj.js +24 -0
- package/locales/angular/global/en-fk.js +24 -0
- package/locales/angular/global/en-fm.js +24 -0
- package/locales/angular/global/en-gb.js +24 -0
- package/locales/angular/global/en-gd.js +24 -0
- package/locales/angular/global/en-gg.js +24 -0
- package/locales/angular/global/en-gh.js +24 -0
- package/locales/angular/global/en-gi.js +24 -0
- package/locales/angular/global/en-gm.js +24 -0
- package/locales/angular/global/en-gu.js +24 -0
- package/locales/angular/global/en-gy.js +24 -0
- package/locales/angular/global/en-hk.js +24 -0
- package/locales/angular/global/en-ie.js +24 -0
- package/locales/angular/global/en-il.js +24 -0
- package/locales/angular/global/en-im.js +24 -0
- package/locales/angular/global/en-in.js +24 -0
- package/locales/angular/global/en-io.js +24 -0
- package/locales/angular/global/en-je.js +24 -0
- package/locales/angular/global/en-jm.js +24 -0
- package/locales/angular/global/en-ke.js +24 -0
- package/locales/angular/global/en-ki.js +24 -0
- package/locales/angular/global/en-kn.js +24 -0
- package/locales/angular/global/en-ky.js +24 -0
- package/locales/angular/global/en-lc.js +24 -0
- package/locales/angular/global/en-lr.js +24 -0
- package/locales/angular/global/en-ls.js +24 -0
- package/locales/angular/global/en-mg.js +24 -0
- package/locales/angular/global/en-mh.js +24 -0
- package/locales/angular/global/en-mo.js +24 -0
- package/locales/angular/global/en-mp.js +24 -0
- package/locales/angular/global/en-ms.js +24 -0
- package/locales/angular/global/en-mt.js +24 -0
- package/locales/angular/global/en-mu.js +24 -0
- package/locales/angular/global/en-mv.js +24 -0
- package/locales/angular/global/en-mw.js +24 -0
- package/locales/angular/global/en-my.js +24 -0
- package/locales/angular/global/en-na.js +24 -0
- package/locales/angular/global/en-nf.js +24 -0
- package/locales/angular/global/en-ng.js +24 -0
- package/locales/angular/global/en-nl.js +24 -0
- package/locales/angular/global/en-nr.js +24 -0
- package/locales/angular/global/en-nu.js +24 -0
- package/locales/angular/global/en-nz.js +24 -0
- package/locales/angular/global/en-pg.js +24 -0
- package/locales/angular/global/en-ph.js +24 -0
- package/locales/angular/global/en-pk.js +24 -0
- package/locales/angular/global/en-pn.js +24 -0
- package/locales/angular/global/en-pr.js +24 -0
- package/locales/angular/global/en-pw.js +24 -0
- package/locales/angular/global/en-rw.js +24 -0
- package/locales/angular/global/en-sb.js +24 -0
- package/locales/angular/global/en-sc.js +24 -0
- package/locales/angular/global/en-sd.js +24 -0
- package/locales/angular/global/en-se.js +24 -0
- package/locales/angular/global/en-sg.js +24 -0
- package/locales/angular/global/en-sh.js +24 -0
- package/locales/angular/global/en-si.js +24 -0
- package/locales/angular/global/en-sl.js +24 -0
- package/locales/angular/global/en-ss.js +24 -0
- package/locales/angular/global/en-sx.js +24 -0
- package/locales/angular/global/en-sz.js +24 -0
- package/locales/angular/global/en-tc.js +24 -0
- package/locales/angular/global/en-tk.js +24 -0
- package/locales/angular/global/en-to.js +24 -0
- package/locales/angular/global/en-tt.js +24 -0
- package/locales/angular/global/en-tv.js +24 -0
- package/locales/angular/global/en-tz.js +24 -0
- package/locales/angular/global/en-ug.js +24 -0
- package/locales/angular/global/en-um.js +24 -0
- package/locales/angular/global/en-vc.js +24 -0
- package/locales/angular/global/en-vg.js +24 -0
- package/locales/angular/global/en-vi.js +24 -0
- package/locales/angular/global/en-vu.js +24 -0
- package/locales/angular/global/en-ws.js +24 -0
- package/locales/angular/global/en-za.js +24 -0
- package/locales/angular/global/en-zm.js +24 -0
- package/locales/angular/global/en-zw.js +24 -0
- package/locales/angular/global/en.js +24 -0
- package/locales/angular/global/eo.js +24 -0
- package/locales/angular/global/es-419.js +26 -0
- package/locales/angular/global/es-ar.js +26 -0
- package/locales/angular/global/es-bo.js +26 -0
- package/locales/angular/global/es-br.js +26 -0
- package/locales/angular/global/es-bz.js +26 -0
- package/locales/angular/global/es-cl.js +26 -0
- package/locales/angular/global/es-co.js +26 -0
- package/locales/angular/global/es-cr.js +26 -0
- package/locales/angular/global/es-cu.js +26 -0
- package/locales/angular/global/es-do.js +26 -0
- package/locales/angular/global/es-ea.js +26 -0
- package/locales/angular/global/es-ec.js +26 -0
- package/locales/angular/global/es-gq.js +26 -0
- package/locales/angular/global/es-gt.js +26 -0
- package/locales/angular/global/es-hn.js +26 -0
- package/locales/angular/global/es-ic.js +26 -0
- package/locales/angular/global/es-mx.js +26 -0
- package/locales/angular/global/es-ni.js +26 -0
- package/locales/angular/global/es-pa.js +26 -0
- package/locales/angular/global/es-pe.js +26 -0
- package/locales/angular/global/es-ph.js +26 -0
- package/locales/angular/global/es-pr.js +26 -0
- package/locales/angular/global/es-py.js +26 -0
- package/locales/angular/global/es-sv.js +26 -0
- package/locales/angular/global/es-us.js +26 -0
- package/locales/angular/global/es-uy.js +26 -0
- package/locales/angular/global/es-ve.js +26 -0
- package/locales/angular/global/es.js +26 -0
- package/locales/angular/global/et.js +24 -0
- package/locales/angular/global/eu.js +24 -0
- package/locales/angular/global/ewo.js +22 -0
- package/locales/angular/global/fa-af.js +24 -0
- package/locales/angular/global/fa.js +24 -0
- package/locales/angular/global/ff-adlm-bf.js +22 -0
- package/locales/angular/global/ff-adlm-cm.js +22 -0
- package/locales/angular/global/ff-adlm-gh.js +22 -0
- package/locales/angular/global/ff-adlm-gm.js +22 -0
- package/locales/angular/global/ff-adlm-gw.js +22 -0
- package/locales/angular/global/ff-adlm-lr.js +22 -0
- package/locales/angular/global/ff-adlm-mr.js +22 -0
- package/locales/angular/global/ff-adlm-ne.js +22 -0
- package/locales/angular/global/ff-adlm-ng.js +22 -0
- package/locales/angular/global/ff-adlm-sl.js +22 -0
- package/locales/angular/global/ff-adlm-sn.js +22 -0
- package/locales/angular/global/ff-adlm.js +22 -0
- package/locales/angular/global/ff-cm.js +74 -0
- package/locales/angular/global/ff-gn.js +74 -0
- package/locales/angular/global/ff-latn-bf.js +24 -0
- package/locales/angular/global/ff-latn-cm.js +24 -0
- package/locales/angular/global/ff-latn-gh.js +24 -0
- package/locales/angular/global/ff-latn-gm.js +24 -0
- package/locales/angular/global/ff-latn-gn.js +24 -0
- package/locales/angular/global/ff-latn-gw.js +24 -0
- package/locales/angular/global/ff-latn-lr.js +24 -0
- package/locales/angular/global/ff-latn-mr.js +24 -0
- package/locales/angular/global/ff-latn-ne.js +24 -0
- package/locales/angular/global/ff-latn-ng.js +24 -0
- package/locales/angular/global/ff-latn-sl.js +24 -0
- package/locales/angular/global/ff-latn.js +24 -0
- package/locales/angular/global/ff-mr.js +74 -0
- package/locales/angular/global/ff.js +24 -0
- package/locales/angular/global/fi.js +24 -0
- package/locales/angular/global/fil.js +24 -0
- package/locales/angular/global/fo-dk.js +24 -0
- package/locales/angular/global/fo.js +24 -0
- package/locales/angular/global/fr-be.js +26 -0
- package/locales/angular/global/fr-bf.js +26 -0
- package/locales/angular/global/fr-bi.js +26 -0
- package/locales/angular/global/fr-bj.js +26 -0
- package/locales/angular/global/fr-bl.js +26 -0
- package/locales/angular/global/fr-ca.js +26 -0
- package/locales/angular/global/fr-cd.js +26 -0
- package/locales/angular/global/fr-cf.js +26 -0
- package/locales/angular/global/fr-cg.js +26 -0
- package/locales/angular/global/fr-ch.js +26 -0
- package/locales/angular/global/fr-ci.js +26 -0
- package/locales/angular/global/fr-cm.js +26 -0
- package/locales/angular/global/fr-dj.js +26 -0
- package/locales/angular/global/fr-dz.js +26 -0
- package/locales/angular/global/fr-ga.js +26 -0
- package/locales/angular/global/fr-gf.js +26 -0
- package/locales/angular/global/fr-gn.js +26 -0
- package/locales/angular/global/fr-gp.js +26 -0
- package/locales/angular/global/fr-gq.js +26 -0
- package/locales/angular/global/fr-ht.js +26 -0
- package/locales/angular/global/fr-km.js +26 -0
- package/locales/angular/global/fr-lu.js +26 -0
- package/locales/angular/global/fr-ma.js +26 -0
- package/locales/angular/global/fr-mc.js +26 -0
- package/locales/angular/global/fr-mf.js +26 -0
- package/locales/angular/global/fr-mg.js +26 -0
- package/locales/angular/global/fr-ml.js +26 -0
- package/locales/angular/global/fr-mq.js +26 -0
- package/locales/angular/global/fr-mr.js +26 -0
- package/locales/angular/global/fr-mu.js +26 -0
- package/locales/angular/global/fr-nc.js +26 -0
- package/locales/angular/global/fr-ne.js +26 -0
- package/locales/angular/global/fr-pf.js +26 -0
- package/locales/angular/global/fr-pm.js +26 -0
- package/locales/angular/global/fr-re.js +26 -0
- package/locales/angular/global/fr-rw.js +26 -0
- package/locales/angular/global/fr-sc.js +26 -0
- package/locales/angular/global/fr-sn.js +26 -0
- package/locales/angular/global/fr-sy.js +26 -0
- package/locales/angular/global/fr-td.js +26 -0
- package/locales/angular/global/fr-tg.js +26 -0
- package/locales/angular/global/fr-tn.js +26 -0
- package/locales/angular/global/fr-vu.js +26 -0
- package/locales/angular/global/fr-wf.js +26 -0
- package/locales/angular/global/fr-yt.js +26 -0
- package/locales/angular/global/fr.js +26 -0
- package/locales/angular/global/fur.js +24 -0
- package/locales/angular/global/fy.js +24 -0
- package/locales/angular/global/ga-gb.js +30 -0
- package/locales/angular/global/ga.js +30 -0
- package/locales/angular/global/gd.js +28 -0
- package/locales/angular/global/gl.js +24 -0
- package/locales/angular/global/gsw-fr.js +24 -0
- package/locales/angular/global/gsw-li.js +24 -0
- package/locales/angular/global/gsw.js +24 -0
- package/locales/angular/global/gu.js +24 -0
- package/locales/angular/global/guz.js +22 -0
- package/locales/angular/global/gv.js +30 -0
- package/locales/angular/global/ha-gh.js +24 -0
- package/locales/angular/global/ha-ne.js +24 -0
- package/locales/angular/global/ha.js +24 -0
- package/locales/angular/global/haw.js +24 -0
- package/locales/angular/global/he.js +28 -0
- package/locales/angular/global/hi-latn.js +24 -0
- package/locales/angular/global/hi.js +24 -0
- package/locales/angular/global/hr-ba.js +26 -0
- package/locales/angular/global/hr.js +26 -0
- package/locales/angular/global/hsb.js +28 -0
- package/locales/angular/global/hu.js +24 -0
- package/locales/angular/global/hy.js +24 -0
- package/locales/angular/global/ia.js +24 -0
- package/locales/angular/global/id.js +22 -0
- package/locales/angular/global/ig.js +22 -0
- package/locales/angular/global/ii.js +22 -0
- package/locales/angular/global/is.js +24 -0
- package/locales/angular/global/it-ch.js +26 -0
- package/locales/angular/global/it-sm.js +26 -0
- package/locales/angular/global/it-va.js +26 -0
- package/locales/angular/global/it.js +26 -0
- package/locales/angular/global/ja.js +22 -0
- package/locales/angular/global/jgo.js +24 -0
- package/locales/angular/global/jmc.js +24 -0
- package/locales/angular/global/jv.js +22 -0
- package/locales/angular/global/ka.js +24 -0
- package/locales/angular/global/kab.js +24 -0
- package/locales/angular/global/kam.js +22 -0
- package/locales/angular/global/kde.js +22 -0
- package/locales/angular/global/kea.js +22 -0
- package/locales/angular/global/kgp.js +22 -0
- package/locales/angular/global/khq.js +22 -0
- package/locales/angular/global/ki.js +22 -0
- package/locales/angular/global/kk.js +24 -0
- package/locales/angular/global/kkj.js +24 -0
- package/locales/angular/global/kl.js +24 -0
- package/locales/angular/global/kln.js +22 -0
- package/locales/angular/global/km.js +22 -0
- package/locales/angular/global/kn.js +24 -0
- package/locales/angular/global/ko-kp.js +22 -0
- package/locales/angular/global/ko.js +22 -0
- package/locales/angular/global/kok.js +22 -0
- package/locales/angular/global/ks-arab.js +24 -0
- package/locales/angular/global/ks-deva.js +22 -0
- package/locales/angular/global/ks.js +24 -0
- package/locales/angular/global/ksb.js +24 -0
- package/locales/angular/global/ksf.js +22 -0
- package/locales/angular/global/ksh.js +26 -0
- package/locales/angular/global/ku.js +24 -0
- package/locales/angular/global/kw.js +32 -0
- package/locales/angular/global/ky.js +24 -0
- package/locales/angular/global/lag.js +26 -0
- package/locales/angular/global/lb.js +24 -0
- package/locales/angular/global/lg.js +24 -0
- package/locales/angular/global/lkt.js +22 -0
- package/locales/angular/global/ln-ao.js +24 -0
- package/locales/angular/global/ln-cf.js +24 -0
- package/locales/angular/global/ln-cg.js +24 -0
- package/locales/angular/global/ln.js +24 -0
- package/locales/angular/global/lo.js +22 -0
- package/locales/angular/global/lrc-iq.js +22 -0
- package/locales/angular/global/lrc.js +22 -0
- package/locales/angular/global/lt.js +28 -0
- package/locales/angular/global/lu.js +22 -0
- package/locales/angular/global/luo.js +22 -0
- package/locales/angular/global/luy.js +22 -0
- package/locales/angular/global/lv.js +26 -0
- package/locales/angular/global/mai.js +22 -0
- package/locales/angular/global/mas-tz.js +24 -0
- package/locales/angular/global/mas.js +24 -0
- package/locales/angular/global/mer.js +22 -0
- package/locales/angular/global/mfe.js +22 -0
- package/locales/angular/global/mg.js +24 -0
- package/locales/angular/global/mgh.js +22 -0
- package/locales/angular/global/mgo.js +24 -0
- package/locales/angular/global/mi.js +22 -0
- package/locales/angular/global/mk.js +24 -0
- package/locales/angular/global/ml.js +24 -0
- package/locales/angular/global/mn.js +24 -0
- package/locales/angular/global/mni-beng.js +22 -0
- package/locales/angular/global/mni.js +22 -0
- package/locales/angular/global/mr.js +24 -0
- package/locales/angular/global/ms-bn.js +22 -0
- package/locales/angular/global/ms-id.js +22 -0
- package/locales/angular/global/ms-sg.js +22 -0
- package/locales/angular/global/ms.js +22 -0
- package/locales/angular/global/mt.js +28 -0
- package/locales/angular/global/mua.js +22 -0
- package/locales/angular/global/my.js +22 -0
- package/locales/angular/global/mzn.js +22 -0
- package/locales/angular/global/naq.js +26 -0
- package/locales/angular/global/nb-sj.js +24 -0
- package/locales/angular/global/nb.js +24 -0
- package/locales/angular/global/nd.js +24 -0
- package/locales/angular/global/nds-nl.js +22 -0
- package/locales/angular/global/nds.js +22 -0
- package/locales/angular/global/ne-in.js +24 -0
- package/locales/angular/global/ne.js +24 -0
- package/locales/angular/global/nl-aw.js +24 -0
- package/locales/angular/global/nl-be.js +24 -0
- package/locales/angular/global/nl-bq.js +24 -0
- package/locales/angular/global/nl-cw.js +24 -0
- package/locales/angular/global/nl-sr.js +24 -0
- package/locales/angular/global/nl-sx.js +24 -0
- package/locales/angular/global/nl.js +24 -0
- package/locales/angular/global/nmg.js +22 -0
- package/locales/angular/global/nn.js +24 -0
- package/locales/angular/global/nnh.js +24 -0
- package/locales/angular/global/no.js +24 -0
- package/locales/angular/global/nus.js +22 -0
- package/locales/angular/global/nyn.js +24 -0
- package/locales/angular/global/om-ke.js +24 -0
- package/locales/angular/global/om.js +24 -0
- package/locales/angular/global/or.js +24 -0
- package/locales/angular/global/os-ru.js +24 -0
- package/locales/angular/global/os.js +24 -0
- package/locales/angular/global/pa-arab.js +22 -0
- package/locales/angular/global/pa-guru.js +24 -0
- package/locales/angular/global/pa.js +24 -0
- package/locales/angular/global/pcm.js +24 -0
- package/locales/angular/global/pl.js +28 -0
- package/locales/angular/global/ps-pk.js +24 -0
- package/locales/angular/global/ps.js +24 -0
- package/locales/angular/global/pt-ao.js +26 -0
- package/locales/angular/global/pt-ch.js +26 -0
- package/locales/angular/global/pt-cv.js +26 -0
- package/locales/angular/global/pt-gq.js +26 -0
- package/locales/angular/global/pt-gw.js +26 -0
- package/locales/angular/global/pt-lu.js +26 -0
- package/locales/angular/global/pt-mo.js +26 -0
- package/locales/angular/global/pt-mz.js +26 -0
- package/locales/angular/global/pt-pt.js +26 -0
- package/locales/angular/global/pt-st.js +26 -0
- package/locales/angular/global/pt-tl.js +26 -0
- package/locales/angular/global/pt.js +26 -0
- package/locales/angular/global/qu-bo.js +22 -0
- package/locales/angular/global/qu-ec.js +22 -0
- package/locales/angular/global/qu.js +22 -0
- package/locales/angular/global/rm.js +24 -0
- package/locales/angular/global/rn.js +22 -0
- package/locales/angular/global/ro-md.js +26 -0
- package/locales/angular/global/ro.js +26 -0
- package/locales/angular/global/rof.js +24 -0
- package/locales/angular/global/ru-by.js +28 -0
- package/locales/angular/global/ru-kg.js +28 -0
- package/locales/angular/global/ru-kz.js +28 -0
- package/locales/angular/global/ru-md.js +28 -0
- package/locales/angular/global/ru-ua.js +28 -0
- package/locales/angular/global/ru.js +28 -0
- package/locales/angular/global/rw.js +22 -0
- package/locales/angular/global/rwk.js +24 -0
- package/locales/angular/global/sa.js +22 -0
- package/locales/angular/global/sah.js +22 -0
- package/locales/angular/global/saq.js +24 -0
- package/locales/angular/global/sat-olck.js +26 -0
- package/locales/angular/global/sat.js +26 -0
- package/locales/angular/global/sbp.js +22 -0
- package/locales/angular/global/sc.js +24 -0
- package/locales/angular/global/sd-arab.js +24 -0
- package/locales/angular/global/sd-deva.js +22 -0
- package/locales/angular/global/sd.js +24 -0
- package/locales/angular/global/se-fi.js +26 -0
- package/locales/angular/global/se-se.js +26 -0
- package/locales/angular/global/se.js +26 -0
- package/locales/angular/global/seh.js +24 -0
- package/locales/angular/global/ses.js +22 -0
- package/locales/angular/global/sg.js +22 -0
- package/locales/angular/global/shi-latn.js +22 -0
- package/locales/angular/global/shi-tfng.js +26 -0
- package/locales/angular/global/shi.js +26 -0
- package/locales/angular/global/si.js +24 -0
- package/locales/angular/global/sk.js +28 -0
- package/locales/angular/global/sl.js +28 -0
- package/locales/angular/global/smn.js +26 -0
- package/locales/angular/global/sn.js +24 -0
- package/locales/angular/global/so-dj.js +24 -0
- package/locales/angular/global/so-et.js +24 -0
- package/locales/angular/global/so-ke.js +24 -0
- package/locales/angular/global/so.js +24 -0
- package/locales/angular/global/sq-mk.js +24 -0
- package/locales/angular/global/sq-xk.js +24 -0
- package/locales/angular/global/sq.js +24 -0
- package/locales/angular/global/sr-cyrl-ba.js +26 -0
- package/locales/angular/global/sr-cyrl-me.js +26 -0
- package/locales/angular/global/sr-cyrl-xk.js +26 -0
- package/locales/angular/global/sr-cyrl.js +26 -0
- package/locales/angular/global/sr-latn-ba.js +22 -0
- package/locales/angular/global/sr-latn-me.js +22 -0
- package/locales/angular/global/sr-latn-xk.js +22 -0
- package/locales/angular/global/sr-latn.js +22 -0
- package/locales/angular/global/sr.js +26 -0
- package/locales/angular/global/su-latn.js +22 -0
- package/locales/angular/global/su.js +22 -0
- package/locales/angular/global/sv-ax.js +24 -0
- package/locales/angular/global/sv-fi.js +24 -0
- package/locales/angular/global/sv.js +24 -0
- package/locales/angular/global/sw-cd.js +24 -0
- package/locales/angular/global/sw-ke.js +24 -0
- package/locales/angular/global/sw-ug.js +24 -0
- package/locales/angular/global/sw.js +24 -0
- package/locales/angular/global/ta-lk.js +24 -0
- package/locales/angular/global/ta-my.js +24 -0
- package/locales/angular/global/ta-sg.js +24 -0
- package/locales/angular/global/ta.js +24 -0
- package/locales/angular/global/te.js +24 -0
- package/locales/angular/global/teo-ke.js +24 -0
- package/locales/angular/global/teo.js +24 -0
- package/locales/angular/global/tg.js +22 -0
- package/locales/angular/global/th.js +22 -0
- package/locales/angular/global/ti-er.js +24 -0
- package/locales/angular/global/ti.js +24 -0
- package/locales/angular/global/tk.js +24 -0
- package/locales/angular/global/to.js +22 -0
- package/locales/angular/global/tr-cy.js +24 -0
- package/locales/angular/global/tr.js +24 -0
- package/locales/angular/global/tt.js +22 -0
- package/locales/angular/global/twq.js +22 -0
- package/locales/angular/global/tzm.js +24 -0
- package/locales/angular/global/ug.js +24 -0
- package/locales/angular/global/uk.js +28 -0
- package/locales/angular/global/und.js +24 -0
- package/locales/angular/global/ur-in.js +24 -0
- package/locales/angular/global/ur.js +24 -0
- package/locales/angular/global/uz-arab.js +22 -0
- package/locales/angular/global/uz-cyrl.js +22 -0
- package/locales/angular/global/uz-latn.js +24 -0
- package/locales/angular/global/uz.js +24 -0
- package/locales/angular/global/vai-latn.js +22 -0
- package/locales/angular/global/vai-vaii.js +22 -0
- package/locales/angular/global/vai.js +22 -0
- package/locales/angular/global/vi.js +22 -0
- package/locales/angular/global/vun.js +24 -0
- package/locales/angular/global/wae.js +24 -0
- package/locales/angular/global/wo.js +22 -0
- package/locales/angular/global/xh.js +24 -0
- package/locales/angular/global/xog.js +24 -0
- package/locales/angular/global/yav.js +22 -0
- package/locales/angular/global/yi.js +24 -0
- package/locales/angular/global/yo-bj.js +22 -0
- package/locales/angular/global/yo.js +22 -0
- package/locales/angular/global/yrl-co.js +22 -0
- package/locales/angular/global/yrl-ve.js +22 -0
- package/locales/angular/global/yrl.js +22 -0
- package/locales/angular/global/yue-hans.js +22 -0
- package/locales/angular/global/yue-hant.js +22 -0
- package/locales/angular/global/yue.js +22 -0
- package/locales/angular/global/zgh.js +22 -0
- package/locales/angular/global/zh-hans-hk.js +22 -0
- package/locales/angular/global/zh-hans-mo.js +22 -0
- package/locales/angular/global/zh-hans-sg.js +22 -0
- package/locales/angular/global/zh-hans.js +22 -0
- package/locales/angular/global/zh-hant-hk.js +22 -0
- package/locales/angular/global/zh-hant-mo.js +22 -0
- package/locales/angular/global/zh-hant.js +22 -0
- package/locales/angular/global/zh.js +22 -0
- package/locales/angular/global/zu.js +24 -0
- package/locales/moment/af.js +82 -0
- package/locales/moment/ar-dz.js +167 -0
- package/locales/moment/ar-kw.js +66 -0
- package/locales/moment/ar-ly.js +182 -0
- package/locales/moment/ar-ma.js +67 -0
- package/locales/moment/ar-ps.js +123 -0
- package/locales/moment/ar-sa.js +116 -0
- package/locales/moment/ar-tn.js +66 -0
- package/locales/moment/ar.js +200 -0
- package/locales/moment/az.js +113 -0
- package/locales/moment/be.js +153 -0
- package/locales/moment/bg.js +98 -0
- package/locales/moment/bm.js +62 -0
- package/locales/moment/bn-bd.js +140 -0
- package/locales/moment/bn.js +130 -0
- package/locales/moment/bo.js +135 -0
- package/locales/moment/br.js +179 -0
- package/locales/moment/bs.js +171 -0
- package/locales/moment/ca.js +111 -0
- package/locales/moment/cs.js +192 -0
- package/locales/moment/cv.js +74 -0
- package/locales/moment/cy.js +109 -0
- package/locales/moment/da.js +64 -0
- package/locales/moment/de-at.js +90 -0
- package/locales/moment/de-ch.js +87 -0
- package/locales/moment/de.js +89 -0
- package/locales/moment/dv.js +101 -0
- package/locales/moment/el.js +117 -0
- package/locales/moment/en-au.js +79 -0
- package/locales/moment/en-ca.js +75 -0
- package/locales/moment/en-gb.js +79 -0
- package/locales/moment/en-ie.js +79 -0
- package/locales/moment/en-il.js +75 -0
- package/locales/moment/en-in.js +79 -0
- package/locales/moment/en-nz.js +79 -0
- package/locales/moment/en-sg.js +79 -0
- package/locales/moment/eo.js +79 -0
- package/locales/moment/es-do.js +119 -0
- package/locales/moment/es-mx.js +121 -0
- package/locales/moment/es-us.js +121 -0
- package/locales/moment/es.js +121 -0
- package/locales/moment/et.js +89 -0
- package/locales/moment/eu.js +76 -0
- package/locales/moment/fa.js +124 -0
- package/locales/moment/fi.js +135 -0
- package/locales/moment/fil.js +69 -0
- package/locales/moment/fo.js +68 -0
- package/locales/moment/fr-ca.js +81 -0
- package/locales/moment/fr-ch.js +85 -0
- package/locales/moment/fr.js +119 -0
- package/locales/moment/fy.js +86 -0
- package/locales/moment/ga.js +106 -0
- package/locales/moment/gd.js +106 -0
- package/locales/moment/gl.js +86 -0
- package/locales/moment/gom-deva.js +137 -0
- package/locales/moment/gom-latn.js +135 -0
- package/locales/moment/gu.js +133 -0
- package/locales/moment/he.js +105 -0
- package/locales/moment/hi.js +179 -0
- package/locales/moment/hr.js +167 -0
- package/locales/moment/hu.js +129 -0
- package/locales/moment/hy-am.js +105 -0
- package/locales/moment/id.js +87 -0
- package/locales/moment/is.js +151 -0
- package/locales/moment/it-ch.js +75 -0
- package/locales/moment/it.js +117 -0
- package/locales/moment/ja.js +159 -0
- package/locales/moment/jv.js +87 -0
- package/locales/moment/ka.js +103 -0
- package/locales/moment/kk.js +93 -0
- package/locales/moment/km.js +114 -0
- package/locales/moment/kn.js +135 -0
- package/locales/moment/ko.js +86 -0
- package/locales/moment/ku-kmr.js +125 -0
- package/locales/moment/ku.js +129 -0
- package/locales/moment/ky.js +95 -0
- package/locales/moment/lb.js +148 -0
- package/locales/moment/lo.js +77 -0
- package/locales/moment/lt.js +136 -0
- package/locales/moment/lv.js +105 -0
- package/locales/moment/me.js +128 -0
- package/locales/moment/mi.js +71 -0
- package/locales/moment/mk.js +97 -0
- package/locales/moment/ml.js +93 -0
- package/locales/moment/mn.js +111 -0
- package/locales/moment/mr.js +214 -0
- package/locales/moment/ms-my.js +87 -0
- package/locales/moment/ms.js +86 -0
- package/locales/moment/mt.js +67 -0
- package/locales/moment/my.js +102 -0
- package/locales/moment/nb.js +71 -0
- package/locales/moment/ne.js +132 -0
- package/locales/moment/nl-be.js +113 -0
- package/locales/moment/nl.js +115 -0
- package/locales/moment/nn.js +70 -0
- package/locales/moment/oc-lnc.js +96 -0
- package/locales/moment/pa-in.js +133 -0
- package/locales/moment/pl.js +151 -0
- package/locales/moment/pt-br.js +69 -0
- package/locales/moment/pt.js +74 -0
- package/locales/moment/ro.js +87 -0
- package/locales/moment/ru.js +224 -0
- package/locales/moment/sd.js +92 -0
- package/locales/moment/se.js +68 -0
- package/locales/moment/si.js +80 -0
- package/locales/moment/sk.js +156 -0
- package/locales/moment/sl.js +182 -0
- package/locales/moment/sq.js +76 -0
- package/locales/moment/sr-cyrl.js +138 -0
- package/locales/moment/sr.js +140 -0
- package/locales/moment/ss.js +95 -0
- package/locales/moment/sv.js +79 -0
- package/locales/moment/sw.js +66 -0
- package/locales/moment/ta.js +142 -0
- package/locales/moment/te.js +99 -0
- package/locales/moment/tet.js +79 -0
- package/locales/moment/tg.js +128 -0
- package/locales/moment/th.js +76 -0
- package/locales/moment/tk.js +102 -0
- package/locales/moment/tl-ph.js +68 -0
- package/locales/moment/tlh.js +135 -0
- package/locales/moment/tr.js +117 -0
- package/locales/moment/tzl.js +100 -0
- package/locales/moment/tzm-latn.js +65 -0
- package/locales/moment/tzm.js +65 -0
- package/locales/moment/ug-cn.js +122 -0
- package/locales/moment/uk.js +178 -0
- package/locales/moment/ur.js +93 -0
- package/locales/moment/uz-latn.js +65 -0
- package/locales/moment/uz.js +62 -0
- package/locales/moment/vi.js +91 -0
- package/locales/moment/x-pseudo.js +84 -0
- package/locales/moment/yo.js +64 -0
- package/locales/moment/zh-cn.js +131 -0
- package/locales/moment/zh-hk.js +112 -0
- package/locales/moment/zh-mo.js +111 -0
- package/locales/moment/zh-tw.js +110 -0
- package/locales/moment-timezone/moment-timezone-with-data.js +1582 -0
- package/npm-shrinkwrap.json +17 -0
- package/oAuth/.npmignore +2 -0
- package/oAuth/bundles/index.umd.js +495 -0
- package/oAuth/esm2022/index.mjs +5 -0
- package/oAuth/esm2022/oAuth.service.mjs +51 -0
- package/oAuth/esm2022/oAuth.utils.mjs +423 -0
- package/oAuth/esm2022/public_api.mjs +3 -0
- package/oAuth/fesm2022/index.mjs +478 -0
- package/oAuth/fesm2022/index.mjs.map +1 -0
- package/oAuth/index.d.ts +5 -0
- package/oAuth/oAuth.service.d.ts +19 -0
- package/oAuth/oAuth.utils.d.ts +20 -0
- package/oAuth/package.json +25 -0
- package/oAuth/public_api.d.ts +2 -0
- package/package-lock.json +17 -0
- package/package.json +16 -0
- package/runtime/base/.npmignore +2 -0
- package/runtime/base/bundles/index.umd.js +6031 -0
- package/runtime/base/components/app-component/app.component.d.ts +46 -0
- package/runtime/base/components/app-spinner.component.d.ts +10 -0
- package/runtime/base/components/base-custom-widget.component.d.ts +75 -0
- package/runtime/base/components/base-layout.component.d.ts +30 -0
- package/runtime/base/components/base-page.component.d.ts +83 -0
- package/runtime/base/components/base-partial.component.d.ts +65 -0
- package/runtime/base/components/base-prefab.component.d.ts +61 -0
- package/runtime/base/components/base-spa-page.component.d.ts +85 -0
- package/runtime/base/components/custom-toaster.component.d.ts +19 -0
- package/runtime/base/components/empty-component/empty-page.component.d.ts +18 -0
- package/runtime/base/components/prefab-preview.component.d.ts +23 -0
- package/runtime/base/directives/accessroles.directive.d.ts +40 -0
- package/runtime/base/directives/prefab.directive.d.ts +17 -0
- package/runtime/base/esm2022/components/app-component/app.component.mjs +201 -0
- package/runtime/base/esm2022/components/app-spinner.component.mjs +54 -0
- package/runtime/base/esm2022/components/base-custom-widget.component.mjs +339 -0
- package/runtime/base/esm2022/components/base-layout.component.mjs +76 -0
- package/runtime/base/esm2022/components/base-page.component.mjs +378 -0
- package/runtime/base/esm2022/components/base-partial.component.mjs +221 -0
- package/runtime/base/esm2022/components/base-prefab.component.mjs +253 -0
- package/runtime/base/esm2022/components/base-spa-page.component.mjs +353 -0
- package/runtime/base/esm2022/components/custom-toaster.component.mjs +87 -0
- package/runtime/base/esm2022/components/empty-component/empty-page.component.mjs +66 -0
- package/runtime/base/esm2022/components/prefab-preview.component.mjs +123 -0
- package/runtime/base/esm2022/directives/accessroles.directive.mjs +118 -0
- package/runtime/base/esm2022/directives/prefab.directive.mjs +50 -0
- package/runtime/base/esm2022/guards/auth.guard.mjs +43 -0
- package/runtime/base/esm2022/guards/can-deactivate-page.guard.mjs +44 -0
- package/runtime/base/esm2022/guards/page-not-found.guard.mjs +22 -0
- package/runtime/base/esm2022/guards/role.guard.mjs +47 -0
- package/runtime/base/esm2022/index.mjs +5 -0
- package/runtime/base/esm2022/overrides/wm_dom_renderer.mjs +363 -0
- package/runtime/base/esm2022/overrides/wm_shared_styles_host.mjs +85 -0
- package/runtime/base/esm2022/public_api.mjs +49 -0
- package/runtime/base/esm2022/resolves/app-before-load.resolve.mjs +22 -0
- package/runtime/base/esm2022/resolves/app-extension.resolve.mjs +48 -0
- package/runtime/base/esm2022/resolves/app-js.resolve.mjs +39 -0
- package/runtime/base/esm2022/resolves/app-variables.resolve.mjs +31 -0
- package/runtime/base/esm2022/resolves/i18n.resolve.mjs +18 -0
- package/runtime/base/esm2022/resolves/metadata.resolve.mjs +22 -0
- package/runtime/base/esm2022/resolves/security-config.resolve.mjs +26 -0
- package/runtime/base/esm2022/runtime-base.module.mjs +942 -0
- package/runtime/base/esm2022/services/app-defaults.service.mjs +22 -0
- package/runtime/base/esm2022/services/app.manager.service.mjs +522 -0
- package/runtime/base/esm2022/services/app.service.mjs +232 -0
- package/runtime/base/esm2022/services/dynamic-component-ref-provider.service.mjs +86 -0
- package/runtime/base/esm2022/services/http-interceptor.services.mjs +83 -0
- package/runtime/base/esm2022/services/i18n.service.mjs +305 -0
- package/runtime/base/esm2022/services/navigation.service.mjs +307 -0
- package/runtime/base/esm2022/services/pipe-provider.service.mjs +127 -0
- package/runtime/base/esm2022/services/pipe.service.mjs +33 -0
- package/runtime/base/esm2022/services/prefab-manager.service.mjs +95 -0
- package/runtime/base/esm2022/services/spinner.service.mjs +144 -0
- package/runtime/base/esm2022/services/toaster.service.mjs +90 -0
- package/runtime/base/esm2022/types/types.mjs +22 -0
- package/runtime/base/esm2022/util/fragment-monitor.mjs +59 -0
- package/runtime/base/esm2022/util/utils.mjs +24 -0
- package/runtime/base/esm2022/util/wm-route-reuse-strategy.mjs +176 -0
- package/runtime/base/fesm2022/index.mjs +6068 -0
- package/runtime/base/fesm2022/index.mjs.map +1 -0
- package/runtime/base/guards/auth.guard.d.ts +14 -0
- package/runtime/base/guards/can-deactivate-page.guard.d.ts +16 -0
- package/runtime/base/guards/page-not-found.guard.d.ts +12 -0
- package/runtime/base/guards/role.guard.d.ts +17 -0
- package/runtime/base/index.d.ts +5 -0
- package/runtime/base/overrides/wm_dom_renderer.d.ts +33 -0
- package/runtime/base/overrides/wm_shared_styles_host.d.ts +23 -0
- package/runtime/base/package.json +25 -0
- package/runtime/base/public_api.d.ts +48 -0
- package/runtime/base/resolves/app-before-load.resolve.d.ts +11 -0
- package/runtime/base/resolves/app-extension.resolve.d.ts +14 -0
- package/runtime/base/resolves/app-js.resolve.d.ts +15 -0
- package/runtime/base/resolves/app-variables.resolve.d.ts +11 -0
- package/runtime/base/resolves/i18n.resolve.d.ts +9 -0
- package/runtime/base/resolves/metadata.resolve.d.ts +9 -0
- package/runtime/base/resolves/security-config.resolve.d.ts +10 -0
- package/runtime/base/runtime-base.module.d.ts +171 -0
- package/runtime/base/services/app-defaults.service.d.ts +12 -0
- package/runtime/base/services/app.manager.service.d.ts +142 -0
- package/runtime/base/services/app.service.d.ts +70 -0
- package/runtime/base/services/dynamic-component-ref-provider.service.d.ts +26 -0
- package/runtime/base/services/http-interceptor.services.d.ts +17 -0
- package/runtime/base/services/i18n.service.d.ts +58 -0
- package/runtime/base/services/navigation.service.d.ts +45 -0
- package/runtime/base/services/pipe-provider.service.d.ts +31 -0
- package/runtime/base/services/pipe.service.d.ts +12 -0
- package/runtime/base/services/prefab-manager.service.d.ts +25 -0
- package/runtime/base/services/spinner.service.d.ts +49 -0
- package/runtime/base/services/toaster.service.d.ts +23 -0
- package/runtime/base/types/types.d.ts +25 -0
- package/runtime/base/util/fragment-monitor.d.ts +22 -0
- package/runtime/base/util/utils.d.ts +6 -0
- package/runtime/base/util/wm-route-reuse-strategy.d.ts +29 -0
- package/runtime/dynamic/.npmignore +2 -0
- package/runtime/dynamic/app/app.config.d.ts +5 -0
- package/runtime/dynamic/app/app.module.d.ts +37 -0
- package/runtime/dynamic/app/app.routes.d.ts +2 -0
- package/runtime/dynamic/app/components/page-wrapper.component.d.ts +37 -0
- package/runtime/dynamic/app/services/app-extension.service.d.ts +7 -0
- package/runtime/dynamic/app/services/app-js-provider.service.d.ts +10 -0
- package/runtime/dynamic/app/services/app-resource-manager.service.d.ts +10 -0
- package/runtime/dynamic/app/services/app-variables-provider.service.d.ts +12 -0
- package/runtime/dynamic/app/services/component-ref-provider.service.d.ts +17 -0
- package/runtime/dynamic/app/services/customwidget-config-provider.service.d.ts +8 -0
- package/runtime/dynamic/app/services/prefab-config-provider.service.d.ts +10 -0
- package/runtime/dynamic/bundles/index.umd.js +887 -0
- package/runtime/dynamic/esm2022/app/app.config.mjs +141 -0
- package/runtime/dynamic/esm2022/app/app.module.mjs +314 -0
- package/runtime/dynamic/esm2022/app/app.routes.mjs +21 -0
- package/runtime/dynamic/esm2022/app/components/page-wrapper.component.mjs +106 -0
- package/runtime/dynamic/esm2022/app/services/app-extension.service.mjs +24 -0
- package/runtime/dynamic/esm2022/app/services/app-js-provider.service.mjs +25 -0
- package/runtime/dynamic/esm2022/app/services/app-resource-manager.service.mjs +31 -0
- package/runtime/dynamic/esm2022/app/services/app-variables-provider.service.mjs +27 -0
- package/runtime/dynamic/esm2022/app/services/component-ref-provider.service.mjs +266 -0
- package/runtime/dynamic/esm2022/app/services/customwidget-config-provider.service.mjs +22 -0
- package/runtime/dynamic/esm2022/app/services/prefab-config-provider.service.mjs +29 -0
- package/runtime/dynamic/esm2022/index.mjs +5 -0
- package/runtime/dynamic/esm2022/main.mjs +42 -0
- package/runtime/dynamic/esm2022/public_api.mjs +10 -0
- package/runtime/dynamic/fesm2022/index.mjs +950 -0
- package/runtime/dynamic/fesm2022/index.mjs.map +1 -0
- package/runtime/dynamic/index.d.ts +5 -0
- package/runtime/dynamic/main.d.ts +2 -0
- package/runtime/dynamic/package.json +25 -0
- package/runtime/dynamic/public_api.d.ts +9 -0
- package/scripts/@wavemaker/nvd3/build/nv.d3.min.js +1 -0
- package/scripts/d3/d3.min.js +2 -0
- package/scripts/datatable/datatable.js +3769 -0
- package/scripts/iscroll/build/iscroll.js +2091 -0
- package/scripts/jquery-ui/ui/widgets/droppable.js +503 -0
- package/scripts/jquery-ui/ui/widgets/resizable.js +1275 -0
- package/scripts/jquery-ui/ui/widgets/sortable.js +1608 -0
- package/scripts/jquery.ui.touch-punch/jquery.ui.touch-punch.min.js +11 -0
- package/scripts/summernote/dist/summernote-lite.min.js +2 -0
- package/scripts/swipey/swipey.jquery.plugin.js +769 -0
- package/scripts/tree-keyboard-navigation/keyboard-navigation.js +251 -0
- package/security/.npmignore +2 -0
- package/security/bundles/index.umd.js +446 -0
- package/security/esm2022/index.mjs +5 -0
- package/security/esm2022/public_api.mjs +2 -0
- package/security/esm2022/security.service.mjs +439 -0
- package/security/fesm2022/index.mjs +444 -0
- package/security/fesm2022/index.mjs.map +1 -0
- package/security/index.d.ts +5 -0
- package/security/package.json +25 -0
- package/security/public_api.d.ts +1 -0
- package/security/security.service.d.ts +127 -0
- package/swipey/.npmignore +2 -0
- package/swipey/bundles/index.umd.js +54 -0
- package/swipey/esm2022/index.mjs +5 -0
- package/swipey/esm2022/public_api.mjs +2 -0
- package/swipey/esm2022/swipe.animation.mjs +45 -0
- package/swipey/fesm2022/index.mjs +51 -0
- package/swipey/fesm2022/index.mjs.map +1 -0
- package/swipey/index.d.ts +5 -0
- package/swipey/package.json +25 -0
- package/swipey/public_api.d.ts +1 -0
- package/swipey/swipe.animation.d.ts +19 -0
- package/transpiler/.npmignore +2 -0
- package/transpiler/build.d.ts +35 -0
- package/transpiler/bundles/index.umd.js +804 -0
- package/transpiler/esm2022/build.mjs +475 -0
- package/transpiler/esm2022/imports.mjs +318 -0
- package/transpiler/esm2022/index.mjs +5 -0
- package/transpiler/esm2022/public_api.mjs +3 -0
- package/transpiler/fesm2022/index.mjs +799 -0
- package/transpiler/fesm2022/index.mjs.map +1 -0
- package/transpiler/imports.d.ts +2 -0
- package/transpiler/index.d.ts +5 -0
- package/transpiler/package.json +26 -0
- package/transpiler/public_api.d.ts +2 -0
- package/variables/.npmignore +2 -0
- package/variables/advanced-options.d.ts +4 -0
- package/variables/bundles/index.umd.js +3174 -0
- package/variables/constants/variables.constants.d.ts +315 -0
- package/variables/esm2022/advanced-options.mjs +2 -0
- package/variables/esm2022/constants/variables.constants.mjs +333 -0
- package/variables/esm2022/factory/variable-manager.factory.mjs +24 -0
- package/variables/esm2022/factory/variable.factory.mjs +46 -0
- package/variables/esm2022/index.mjs +5 -0
- package/variables/esm2022/manager/action/base-action.manager.mjs +14 -0
- package/variables/esm2022/manager/action/login-action.manager.mjs +180 -0
- package/variables/esm2022/manager/action/logout-action.manager.mjs +77 -0
- package/variables/esm2022/manager/action/navigation-action.manager.mjs +8 -0
- package/variables/esm2022/manager/action/notification-action.manager.mjs +152 -0
- package/variables/esm2022/manager/variable/base-variable.manager.mjs +81 -0
- package/variables/esm2022/manager/variable/web-socket-variable.manager.mjs +289 -0
- package/variables/esm2022/model/action/login-action.mjs +25 -0
- package/variables/esm2022/model/action/logout-action.mjs +22 -0
- package/variables/esm2022/model/action/navigation-action.mjs +26 -0
- package/variables/esm2022/model/action/notification-action.mjs +91 -0
- package/variables/esm2022/model/variable/web-socket-variable.mjs +34 -0
- package/variables/esm2022/public_api.mjs +6 -0
- package/variables/esm2022/service/metadata-service/metadata.service.mjs +60 -0
- package/variables/esm2022/service/variables.service.mjs +199 -0
- package/variables/esm2022/util/action/navigation-action.utils.mjs +52 -0
- package/variables/esm2022/util/oAuth.utils.mjs +11 -0
- package/variables/esm2022/util/variable/pagination.utils.mjs +402 -0
- package/variables/esm2022/util/variable/service-variable.utils.mjs +376 -0
- package/variables/esm2022/util/variable/variables.utils.mjs +809 -0
- package/variables/factory/variable-manager.factory.d.ts +3 -0
- package/variables/factory/variable.factory.d.ts +3 -0
- package/variables/fesm2022/index.mjs +3236 -0
- package/variables/fesm2022/index.mjs.map +1 -0
- package/variables/index.d.ts +5 -0
- package/variables/manager/action/base-action.manager.d.ts +4 -0
- package/variables/manager/action/login-action.manager.d.ts +7 -0
- package/variables/manager/action/logout-action.manager.d.ts +4 -0
- package/variables/manager/action/navigation-action.manager.d.ts +4 -0
- package/variables/manager/action/notification-action.manager.d.ts +23 -0
- package/variables/manager/variable/base-variable.manager.d.ts +24 -0
- package/variables/manager/variable/web-socket-variable.manager.d.ts +124 -0
- package/variables/model/action/login-action.d.ts +11 -0
- package/variables/model/action/logout-action.d.ts +10 -0
- package/variables/model/action/navigation-action.d.ts +9 -0
- package/variables/model/action/notification-action.d.ts +25 -0
- package/variables/model/variable/web-socket-variable.d.ts +11 -0
- package/variables/package.json +25 -0
- package/variables/public_api.d.ts +5 -0
- package/variables/service/metadata-service/metadata.service.d.ts +16 -0
- package/variables/service/variables.service.d.ts +57 -0
- package/variables/util/action/navigation-action.utils.d.ts +6 -0
- package/variables/util/oAuth.utils.d.ts +3 -0
- package/variables/util/variable/pagination.utils.d.ts +82 -0
- package/variables/util/variable/service-variable.utils.d.ts +16 -0
- package/variables/util/variable/variables.utils.d.ts +80 -0
|
@@ -0,0 +1,713 @@
|
|
|
1
|
+
import { ElementRef, Inject, inject, Injectable, Injector, Optional, ViewContainerRef } from '@angular/core';
|
|
2
|
+
import { EventManager } from '@angular/platform-browser';
|
|
3
|
+
import { ReplaySubject, Subject } from 'rxjs';
|
|
4
|
+
import { $invokeWatchers, $parseEvent, $unwatch, $watch, addClass, App, findParent, isDefined, removeAttr, removeClass, setAttr, setCSS, setCSSFromObj, switchClass } from '@wm/core';
|
|
5
|
+
import { getWidgetPropsByType } from '../../framework/widget-props';
|
|
6
|
+
import { isStyle } from '../../framework/styler';
|
|
7
|
+
import { register, renameWidget } from '../../framework/widget-registry';
|
|
8
|
+
import { Context, WidgetConfig } from '../../framework/types';
|
|
9
|
+
import { widgetIdGenerator } from '../../framework/widget-id-generator';
|
|
10
|
+
import { DISPLAY_TYPE, EVENTS_MAP } from '../../framework/constants';
|
|
11
|
+
import { WidgetProxyProvider } from '../../framework/widget-proxy-provider';
|
|
12
|
+
import { getWatchIdentifier } from '../../../utils/widget-utils';
|
|
13
|
+
import { camelCase, extend, forEach, isArray, isObject, join, last, map } from "lodash-es";
|
|
14
|
+
import * as i0 from "@angular/core";
|
|
15
|
+
// Gets list of classes to add and remove and applies on the $el
|
|
16
|
+
const updateClasses = (toAdd, toRemove, el) => {
|
|
17
|
+
if (toRemove && toRemove.length) {
|
|
18
|
+
removeClass(el, join(toRemove, ' '));
|
|
19
|
+
}
|
|
20
|
+
if (toAdd && toAdd.length) {
|
|
21
|
+
addClass(el, join(toAdd, ' '));
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
// To add and remove styles on the $el
|
|
25
|
+
const updateStyles = (nv, ov, el) => {
|
|
26
|
+
if (ov && isObject(ov)) {
|
|
27
|
+
const keys = Object.keys(ov || {});
|
|
28
|
+
keys.forEach(function (key) {
|
|
29
|
+
setCSS(el, key, '');
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
if (nv && isObject(nv)) {
|
|
33
|
+
setCSSFromObj(el, nv);
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
export class BaseComponent {
|
|
37
|
+
/**
|
|
38
|
+
* jQuery nativeElement reference of the component root
|
|
39
|
+
*/
|
|
40
|
+
get $element() {
|
|
41
|
+
return $(this.nativeElement);
|
|
42
|
+
}
|
|
43
|
+
constructor(inj, config, explicitContext, initPromise // Promise on which the initialization has to wait
|
|
44
|
+
) {
|
|
45
|
+
this.inj = inj;
|
|
46
|
+
this.isAttached = false;
|
|
47
|
+
/**
|
|
48
|
+
* Style change subject and observable
|
|
49
|
+
*/
|
|
50
|
+
this.styleChange = new ReplaySubject();
|
|
51
|
+
/**
|
|
52
|
+
* Property change subject and observable
|
|
53
|
+
*/
|
|
54
|
+
this.propertyChange = new Subject();
|
|
55
|
+
/**
|
|
56
|
+
* On Ready State change subject and observable
|
|
57
|
+
*/
|
|
58
|
+
this.readyState = new Subject();
|
|
59
|
+
/**
|
|
60
|
+
* Component destroy subject and observable
|
|
61
|
+
*/
|
|
62
|
+
this.destroy = new Subject();
|
|
63
|
+
/**
|
|
64
|
+
* Map of event handler callbacks
|
|
65
|
+
*/
|
|
66
|
+
this.eventHandlers = new Map();
|
|
67
|
+
/**
|
|
68
|
+
* Holds the event registration functions.
|
|
69
|
+
* these functions needs to be executed after onViewInit
|
|
70
|
+
*/
|
|
71
|
+
this.toBeSetupEventsQueue = [];
|
|
72
|
+
this.__cloneable__ = false;
|
|
73
|
+
this.$attrs = new Map();
|
|
74
|
+
this.isMuted = false;
|
|
75
|
+
this.customInjectorMap = {};
|
|
76
|
+
const elementRef = inj.get(ElementRef);
|
|
77
|
+
this.nativeElement = elementRef.nativeElement;
|
|
78
|
+
//making the code compatible in both the JIT and AOT modes
|
|
79
|
+
this.viewParentApp = inj ? inj.get(App) : inject(App);
|
|
80
|
+
this.widgetType = config.widgetType;
|
|
81
|
+
this.widgetSubType = config.widgetSubType || config.widgetType;
|
|
82
|
+
this.viewContainerRef = inj.get(ViewContainerRef);
|
|
83
|
+
// this.viewParent = (inj as any).view.component;
|
|
84
|
+
// this.viewParent = (this.viewContainerRef as any).parentInjector._lView[8];
|
|
85
|
+
// this.viewParent = _viewParent || (this.viewContainerRef as any).parentInjector._lView[8];
|
|
86
|
+
// https://github.com/angular/angular/blob/main/packages/core/src/render3/interfaces/view.ts
|
|
87
|
+
let lView = this.inj._lView;
|
|
88
|
+
this.viewParent = findParent(lView, this.viewParentApp);
|
|
89
|
+
//console.log("---*************--context--*************---", lView[8]);
|
|
90
|
+
this.context = this.inj._lView[8];
|
|
91
|
+
this.displayType = config.displayType || DISPLAY_TYPE.BLOCK;
|
|
92
|
+
// this.context = (inj as any).view.context;
|
|
93
|
+
// this.context = (this.viewContainerRef as any)._hostLView.debug.context;
|
|
94
|
+
// let hasImplicitContext = (this.viewContainerRef as any)._hostLView.find(t => t && !!t.$implicit);
|
|
95
|
+
// when $implicit is not available, this object contains some ngFor context or listitem context of the widget then
|
|
96
|
+
// we use the direct parent for example: nav component is the parent for anchor => anchor gets viewParent as Nav
|
|
97
|
+
// In other case, where we have implicitContext there we can make use of page/app level context hence viewParent.viewParent to get page level context
|
|
98
|
+
/*if (hasImplicitContext && this.viewParent.viewParent) {
|
|
99
|
+
if (this.viewParent.widgetType !== 'wm-card' && this.viewParent.widgetType !== 'wm-iframedialog'
|
|
100
|
+
&& this.viewParent.widgetType !== 'wm-partialdialog') {
|
|
101
|
+
this.viewParent = this.viewParent.viewParent;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
if (!hasImplicitContext || (!this.viewParent.widgetType)) {
|
|
105
|
+
this.context = (this.viewContainerRef as any)._hostLView.find(t => t && !!t.$implicit);
|
|
106
|
+
} else {
|
|
107
|
+
this.context = (this.viewContainerRef as any).parentInjector._lView[8];
|
|
108
|
+
}*/
|
|
109
|
+
/*if(_viewParent && !hasImplicitContext) {
|
|
110
|
+
this.context = (this.viewContainerRef as any)._hostLView[8];
|
|
111
|
+
} else {
|
|
112
|
+
this.context = hasImplicitContext;
|
|
113
|
+
}*/
|
|
114
|
+
// if (['wm-list', 'wm-nav'].includes(this.viewParent.widgetType) || ['wm-carousel-template', 'wm-card'].includes(this.widgetType)) {
|
|
115
|
+
// this.context = (this.viewContainerRef as any)._hostLView.debug.context;
|
|
116
|
+
// } else {
|
|
117
|
+
// this.context = (this.viewContainerRef as any).parentInjector._lView[8];
|
|
118
|
+
// }
|
|
119
|
+
this.widget = this.createProxy();
|
|
120
|
+
this.eventManager = inj.get(EventManager);
|
|
121
|
+
this.nativeElement.widget = this.widget;
|
|
122
|
+
this.appLocale = inj.get(App).appLocale || {};
|
|
123
|
+
this.initContext();
|
|
124
|
+
if (config.hostClass) {
|
|
125
|
+
addClass(this.nativeElement, config.hostClass);
|
|
126
|
+
}
|
|
127
|
+
this.widgetId = this.generateWidgetId();
|
|
128
|
+
this.trackId = this.generateWidgetId();
|
|
129
|
+
setAttr(this.nativeElement, 'widget-id', this.widgetId, true);
|
|
130
|
+
// register default property change handler and style change handler
|
|
131
|
+
this.registerStyleChangeListener(this.onStyleChange, this);
|
|
132
|
+
this.registerPropertyChangeListener(this.onPropertyChange, this);
|
|
133
|
+
// if the initPromise is provided, wait till the promise is resolved to proceed with the widget initialization
|
|
134
|
+
if (!initPromise) {
|
|
135
|
+
this.initWidget();
|
|
136
|
+
}
|
|
137
|
+
else {
|
|
138
|
+
this.delayedInit = true;
|
|
139
|
+
initPromise.then((resolveFn) => {
|
|
140
|
+
let formFieldCW = this.widgetSubType === 'wm-form-field-custom-widget', cw = this.widgetSubType.startsWith('wm-custom-');
|
|
141
|
+
if (formFieldCW || cw) {
|
|
142
|
+
this.customWidgetSubType = formFieldCW ? 'wm-form-field-' + last(this["formWidget"].config.widgetType.split('-')) : this["config"].widgetType;
|
|
143
|
+
}
|
|
144
|
+
this.initWidget();
|
|
145
|
+
this.setInitProps();
|
|
146
|
+
resolveFn && resolveFn();
|
|
147
|
+
});
|
|
148
|
+
}
|
|
149
|
+
if (explicitContext) {
|
|
150
|
+
extend(this.context, explicitContext);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
getNativeElement() {
|
|
154
|
+
return this.nativeElement;
|
|
155
|
+
}
|
|
156
|
+
getWidgetType() {
|
|
157
|
+
return this.widgetType;
|
|
158
|
+
}
|
|
159
|
+
getWidgetSubType() {
|
|
160
|
+
return this.widgetSubType;
|
|
161
|
+
}
|
|
162
|
+
getWidget() {
|
|
163
|
+
return this.widget;
|
|
164
|
+
}
|
|
165
|
+
setProperty(propName, propValue) {
|
|
166
|
+
this.widget[propName] = propValue;
|
|
167
|
+
}
|
|
168
|
+
getViewParent() {
|
|
169
|
+
return this.viewParent;
|
|
170
|
+
}
|
|
171
|
+
notifyStyleChange(key, nv, ov) {
|
|
172
|
+
this.styleChange.next({ key, nv, ov });
|
|
173
|
+
}
|
|
174
|
+
notifyPropertyChange(key, nv, ov) {
|
|
175
|
+
this.propertyChange.next({ key, nv, ov });
|
|
176
|
+
}
|
|
177
|
+
registerStyleChangeListener(fn, ctx) {
|
|
178
|
+
if (ctx) {
|
|
179
|
+
fn = fn.bind(ctx);
|
|
180
|
+
}
|
|
181
|
+
this.styleChange.subscribe(({ key, nv, ov }) => fn(key, nv, ov));
|
|
182
|
+
}
|
|
183
|
+
registerReadyStateListener(fn, ctx) {
|
|
184
|
+
if (ctx) {
|
|
185
|
+
fn = fn.bind(ctx);
|
|
186
|
+
}
|
|
187
|
+
if (this.readyState.isStopped) {
|
|
188
|
+
fn();
|
|
189
|
+
return;
|
|
190
|
+
}
|
|
191
|
+
this.readyState.subscribe(() => fn());
|
|
192
|
+
}
|
|
193
|
+
registerPropertyChangeListener(fn, ctx) {
|
|
194
|
+
if (ctx) {
|
|
195
|
+
fn = fn.bind(ctx);
|
|
196
|
+
}
|
|
197
|
+
this.propertyChange.subscribe(({ key, nv, ov }) => fn(key, nv, ov));
|
|
198
|
+
}
|
|
199
|
+
registerDestroyListener(fn, ctx) {
|
|
200
|
+
if (!fn) {
|
|
201
|
+
return;
|
|
202
|
+
}
|
|
203
|
+
if (ctx) {
|
|
204
|
+
fn = fn.bind(ctx);
|
|
205
|
+
}
|
|
206
|
+
this.destroy.subscribe(() => { }, () => { }, () => {
|
|
207
|
+
try {
|
|
208
|
+
if (fn && typeof fn === 'function') {
|
|
209
|
+
fn();
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
catch (e) {
|
|
213
|
+
// Silently handle cleanup errors to prevent test failures
|
|
214
|
+
// These are typically non-critical cleanup issues like:
|
|
215
|
+
// - Subscriptions already unsubscribed
|
|
216
|
+
// - Null references during cleanup
|
|
217
|
+
// - Components already destroyed
|
|
218
|
+
}
|
|
219
|
+
});
|
|
220
|
+
}
|
|
221
|
+
getDisplayType() {
|
|
222
|
+
return this.displayType;
|
|
223
|
+
}
|
|
224
|
+
createProxy() {
|
|
225
|
+
return WidgetProxyProvider.create(this, this.widgetSubType, getWidgetPropsByType(this.widgetSubType));
|
|
226
|
+
}
|
|
227
|
+
initContext() {
|
|
228
|
+
// const context = (this.inj as any).view.context;
|
|
229
|
+
const context = this.context || {};
|
|
230
|
+
const parentContexts = this.inj.get(Context, {});
|
|
231
|
+
// assign the context property accordingly
|
|
232
|
+
if (this.viewParent !== context) {
|
|
233
|
+
this.context = context;
|
|
234
|
+
}
|
|
235
|
+
else {
|
|
236
|
+
this.context = {};
|
|
237
|
+
}
|
|
238
|
+
if (parentContexts) {
|
|
239
|
+
let parentContextObj = {};
|
|
240
|
+
if (isArray(parentContexts)) {
|
|
241
|
+
forEach(parentContexts, (contextObj) => {
|
|
242
|
+
Object.assign(parentContextObj, contextObj);
|
|
243
|
+
});
|
|
244
|
+
}
|
|
245
|
+
else {
|
|
246
|
+
parentContextObj = parentContexts;
|
|
247
|
+
}
|
|
248
|
+
this.context = Object.assign({}, parentContextObj, this.context);
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
/**
|
|
252
|
+
* set the value on the proxy object ie, widget
|
|
253
|
+
* setting the property on the proxy will invoke the change listeners
|
|
254
|
+
* @param {string} key
|
|
255
|
+
* @param value
|
|
256
|
+
*/
|
|
257
|
+
setWidgetProperty(key, value) {
|
|
258
|
+
this.widget[key] = value;
|
|
259
|
+
}
|
|
260
|
+
getAttr(attrName) {
|
|
261
|
+
return this.$attrs.get(attrName);
|
|
262
|
+
}
|
|
263
|
+
/**
|
|
264
|
+
* returns app instance
|
|
265
|
+
* @returns {App}
|
|
266
|
+
*/
|
|
267
|
+
getAppInstance() {
|
|
268
|
+
return this.inj.get(App);
|
|
269
|
+
}
|
|
270
|
+
/**
|
|
271
|
+
* Generates a unique id
|
|
272
|
+
* Default pattern is `widget-id-${id}`
|
|
273
|
+
* Components can override this method to generate a different id eg, bar-chart-1
|
|
274
|
+
*/
|
|
275
|
+
generateWidgetId() {
|
|
276
|
+
return widgetIdGenerator.nextUid();
|
|
277
|
+
}
|
|
278
|
+
/**
|
|
279
|
+
* Handles the common functionality across the components
|
|
280
|
+
* eg,
|
|
281
|
+
* 1. value of the class property will be applied on the host element
|
|
282
|
+
* 2. based on the value of show property component is shown/hidden
|
|
283
|
+
*
|
|
284
|
+
* @param {string} key
|
|
285
|
+
* @param nv
|
|
286
|
+
* @param ov
|
|
287
|
+
*/
|
|
288
|
+
onPropertyChange(key, nv, ov) {
|
|
289
|
+
if (key === 'show') {
|
|
290
|
+
this.nativeElement.hidden = !nv;
|
|
291
|
+
}
|
|
292
|
+
else if (key === 'hint') {
|
|
293
|
+
setAttr(this.nativeElement, 'title', nv);
|
|
294
|
+
}
|
|
295
|
+
else if (key === 'class') {
|
|
296
|
+
switchClass(this.nativeElement, nv, ov);
|
|
297
|
+
}
|
|
298
|
+
else if (key === 'name' || key === 'tabindex') {
|
|
299
|
+
setAttr(this.nativeElement, key, nv);
|
|
300
|
+
if (key === 'name' && nv) {
|
|
301
|
+
renameWidget(this.viewParent, this.widget, nv, ov);
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
else if (key === 'conditionalclass') {
|
|
305
|
+
// update classes if old and nv value are different
|
|
306
|
+
updateClasses(nv.toAdd, nv.toRemove, this.nativeElement);
|
|
307
|
+
}
|
|
308
|
+
else if (key === 'autoplay') {
|
|
309
|
+
const tagName = this.widgetType === 'wm-audio' ? 'audio' : 'video';
|
|
310
|
+
// Trigger media(audio/video) element load method after changing autoplay property
|
|
311
|
+
this.nativeElement.querySelector(tagName).load();
|
|
312
|
+
}
|
|
313
|
+
else if (key === 'conditionalstyle') {
|
|
314
|
+
// update styles if old and nv value are different
|
|
315
|
+
updateStyles(nv, ov, this.nativeElement);
|
|
316
|
+
}
|
|
317
|
+
else if (key === 'animation') {
|
|
318
|
+
// update styles if old and nv value are different
|
|
319
|
+
addClass(this.nativeElement, "animated " + nv);
|
|
320
|
+
}
|
|
321
|
+
else if (key === 'disabled') {
|
|
322
|
+
// WMS-19321: In IE, widget is in disabled state when disabled="false" attribute is present
|
|
323
|
+
(nv === true) ? setAttr(this.nativeElement, 'disabled', 'true', true) : removeAttr(this.nativeElement, 'disabled', true);
|
|
324
|
+
}
|
|
325
|
+
else if (key === "autofocus") {
|
|
326
|
+
if (nv) {
|
|
327
|
+
this.focus();
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
}
|
|
331
|
+
/**
|
|
332
|
+
* Default style change handler
|
|
333
|
+
*/
|
|
334
|
+
onStyleChange(k, nv, ov) { }
|
|
335
|
+
/**
|
|
336
|
+
* Register the widget with the widgetRegistry
|
|
337
|
+
*/
|
|
338
|
+
registerWidget(widgetName) {
|
|
339
|
+
this.registerDestroyListener(register(this.widget, this.viewParent, this.widgetId, widgetName));
|
|
340
|
+
}
|
|
341
|
+
/**
|
|
342
|
+
* override the
|
|
343
|
+
*/
|
|
344
|
+
getMappedEventName(eventName) {
|
|
345
|
+
return EVENTS_MAP.get(eventName) || eventName;
|
|
346
|
+
}
|
|
347
|
+
/**
|
|
348
|
+
* invoke the event handler
|
|
349
|
+
* Components can override this method to execute custom logic before invoking the user callback
|
|
350
|
+
*/
|
|
351
|
+
handleEvent(node, eventName, eventCallback, locals, meta) {
|
|
352
|
+
this.eventManager.addEventListener(node, eventName, e => {
|
|
353
|
+
locals.$event = e;
|
|
354
|
+
if (meta === 'delayed') {
|
|
355
|
+
setTimeout(() => eventCallback(), 150);
|
|
356
|
+
}
|
|
357
|
+
else {
|
|
358
|
+
return eventCallback();
|
|
359
|
+
}
|
|
360
|
+
});
|
|
361
|
+
}
|
|
362
|
+
/**
|
|
363
|
+
* parse the event expression and save reference to the function inside eventHandlers map
|
|
364
|
+
* If the component provides a override for an event through @Event decorator invoke that
|
|
365
|
+
* else invoke the resolved function
|
|
366
|
+
*
|
|
367
|
+
* @param {string} eventName
|
|
368
|
+
* @param {string} expr
|
|
369
|
+
*/
|
|
370
|
+
processEventAttr(eventName, expr, meta, child) {
|
|
371
|
+
const fn = $parseEvent(expr);
|
|
372
|
+
const locals = this.context;
|
|
373
|
+
locals.widget = child ? child.widget : this.widget;
|
|
374
|
+
const boundFn = fn.bind(undefined, child ? this.viewParent.viewParent : this.viewParent, locals);
|
|
375
|
+
let widget = child ? child.widget : this, nativeElement = child ? child.nativeElement : this.nativeElement;
|
|
376
|
+
const eventCallback = () => {
|
|
377
|
+
let boundFnVal;
|
|
378
|
+
$invokeWatchers(true);
|
|
379
|
+
try {
|
|
380
|
+
locals.$event = locals.$event || new window.CustomEvent(eventName);
|
|
381
|
+
// If the event is bound directly to the variable then we need to internally handle
|
|
382
|
+
// the promise returned by the variable call.
|
|
383
|
+
boundFnVal = boundFn();
|
|
384
|
+
if (boundFnVal instanceof Promise) {
|
|
385
|
+
return boundFnVal.then(response => response, err => {
|
|
386
|
+
const widgetName = widget.name || widget.widgetId || 'unknown';
|
|
387
|
+
console.error(`Error in promise returned by event callback "${eventName}" on widget "${widgetName}":`, err);
|
|
388
|
+
return err;
|
|
389
|
+
});
|
|
390
|
+
}
|
|
391
|
+
else {
|
|
392
|
+
return boundFnVal;
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
catch (e) {
|
|
396
|
+
// Enhanced error logging with context
|
|
397
|
+
const widgetName = widget.name || widget.widgetId || 'unknown';
|
|
398
|
+
const errorMessage = e.message || String(e);
|
|
399
|
+
console.error(`Error executing event callback "${eventName}" on widget "${widgetName}":`, errorMessage);
|
|
400
|
+
console.error('Event expression context:', { eventName, widgetName, locals });
|
|
401
|
+
// Don't re-throw - allow execution to continue (e.g., navigation should still work)
|
|
402
|
+
// Return undefined to indicate error was handled
|
|
403
|
+
return undefined;
|
|
404
|
+
}
|
|
405
|
+
};
|
|
406
|
+
if (child && !child.widget.eventHandlers)
|
|
407
|
+
child.widget.eventHandlers = new Map();
|
|
408
|
+
widget.eventHandlers.set(this.getMappedEventName(eventName), { callback: eventCallback, locals });
|
|
409
|
+
// prepend eventName with on and convert it to camelcase.
|
|
410
|
+
// eg, "click" ---> onClick
|
|
411
|
+
const onEventName = camelCase(`on-${eventName}`);
|
|
412
|
+
// save the eventCallback in widgetScope.
|
|
413
|
+
widget[onEventName] = eventCallback;
|
|
414
|
+
// events needs to be setup after viewInit
|
|
415
|
+
this.toBeSetupEventsQueue.push(() => {
|
|
416
|
+
this.handleEvent(nativeElement, this.getMappedEventName(eventName), eventCallback, locals, meta);
|
|
417
|
+
});
|
|
418
|
+
}
|
|
419
|
+
/**
|
|
420
|
+
* Process the bound property
|
|
421
|
+
* Register a watch on the bound expression
|
|
422
|
+
*/
|
|
423
|
+
processBindAttr(propName, expr, child) {
|
|
424
|
+
if (!child)
|
|
425
|
+
this.initState.delete(propName);
|
|
426
|
+
let viewParent = child ? child.widget.viewParent.viewParent : this.viewParent, context = child ? child.widget.context : this.context, widget = child ? child.widget : this.widget, isMuted = child ? child.widget.isMuted : this.isMuted, widgetProps = child ? child.widget.widgetProps : this.widgetProps, widgetId = child ? child.widget.widgetId : this.widgetId;
|
|
427
|
+
// OPTIMIZATION: Apply throttling for non-critical properties
|
|
428
|
+
const watchConfig = widgetProps.get(propName) || {};
|
|
429
|
+
const throttledProps = ['class', 'style', 'ngclass', 'ngstyle'];
|
|
430
|
+
if (throttledProps.includes(propName.toLowerCase())) {
|
|
431
|
+
watchConfig.throttle = 100; // Throttle to 100ms for style/class properties
|
|
432
|
+
}
|
|
433
|
+
this.registerDestroyListener($watch(expr, viewParent, context, nv => {
|
|
434
|
+
if (propName.startsWith('base-') && widget.updateData)
|
|
435
|
+
widget.updateData(propName, nv);
|
|
436
|
+
widget[propName] = nv;
|
|
437
|
+
}, getWatchIdentifier(widgetId, propName), propName === 'datasource', watchConfig, () => isMuted));
|
|
438
|
+
}
|
|
439
|
+
/**
|
|
440
|
+
* Remove watch on the bound property
|
|
441
|
+
*/
|
|
442
|
+
removePropertyBinding(propName) {
|
|
443
|
+
$unwatch(getWatchIdentifier(this.widgetId, propName));
|
|
444
|
+
}
|
|
445
|
+
/**
|
|
446
|
+
* invoke the event callback method
|
|
447
|
+
* @param {string} eventName
|
|
448
|
+
* @param extraLocals
|
|
449
|
+
*/
|
|
450
|
+
invokeEventCallback(eventName, extraLocals) {
|
|
451
|
+
const callbackInfo = this.eventHandlers.get(eventName);
|
|
452
|
+
if (callbackInfo) {
|
|
453
|
+
const fn = callbackInfo.callback;
|
|
454
|
+
const locals = callbackInfo.locals || {};
|
|
455
|
+
if (fn) {
|
|
456
|
+
try {
|
|
457
|
+
return fn(Object.assign(locals, extraLocals));
|
|
458
|
+
}
|
|
459
|
+
catch (error) {
|
|
460
|
+
// Log error with context information for debugging
|
|
461
|
+
const widgetName = this.name || this.widgetId || 'unknown';
|
|
462
|
+
const errorMessage = error?.message || String(error);
|
|
463
|
+
console.error(`Error executing event callback "${eventName}" on widget "${widgetName}":`, errorMessage);
|
|
464
|
+
console.error('Full error:', error);
|
|
465
|
+
// Don't re-throw - allow execution to continue (e.g., navigation should still work)
|
|
466
|
+
// Return undefined to indicate error was handled
|
|
467
|
+
return undefined;
|
|
468
|
+
}
|
|
469
|
+
}
|
|
470
|
+
}
|
|
471
|
+
}
|
|
472
|
+
/**
|
|
473
|
+
* Process the attribute
|
|
474
|
+
* If the attribute is an event expression, generate a functional representation of the expression
|
|
475
|
+
* and keep in eventHandlers
|
|
476
|
+
* If the attribute is a bound expression, register a watch on the expression
|
|
477
|
+
*/
|
|
478
|
+
processAttr(attrName, attrValue, child) {
|
|
479
|
+
// console.log("====attrName=====", attrName, "=====typeof attrname=====", typeof attrName, "-----attrValue----", attrValue);
|
|
480
|
+
const { 0: propName, 1: type, 2: meta, length } = attrName.split('.');
|
|
481
|
+
if (type === 'bind') {
|
|
482
|
+
// if the show property is bound, set the initial value to false
|
|
483
|
+
if (propName === 'show' && !this.widgetSubType.startsWith('wm-custom-')) {
|
|
484
|
+
this.nativeElement.hidden = true;
|
|
485
|
+
}
|
|
486
|
+
this.processBindAttr(propName, attrValue, child);
|
|
487
|
+
}
|
|
488
|
+
else if (type === 'event' && !this.nativeElement.hasAttribute('wmwidgetcontainer')) {
|
|
489
|
+
this.processEventAttr(propName, attrValue, meta, child);
|
|
490
|
+
}
|
|
491
|
+
else if (length === 1) {
|
|
492
|
+
// remove class and name attributes. Component will set them on the proper node
|
|
493
|
+
if (attrName === 'class') {
|
|
494
|
+
removeClass(this.nativeElement, attrValue);
|
|
495
|
+
}
|
|
496
|
+
else if (attrName === 'tabindex' || attrName === 'name') {
|
|
497
|
+
removeAttr(this.nativeElement, attrName);
|
|
498
|
+
}
|
|
499
|
+
this.initState.set(propName, attrValue);
|
|
500
|
+
}
|
|
501
|
+
else {
|
|
502
|
+
// custom attributes provided on elDef;
|
|
503
|
+
}
|
|
504
|
+
}
|
|
505
|
+
/**
|
|
506
|
+
* This is required as the native element attributes are case insensitive(camelcase) like customExpressions becomes customexpression
|
|
507
|
+
* and our logic to check like these changes will fail. Before IVY changes, angular maintains a separate object with these attributes
|
|
508
|
+
* as it is like in the camelcase. With IVY all those are gone. So need to maintain a separate list with the camelcasing of attributes
|
|
509
|
+
* @private
|
|
510
|
+
* _tNode.attrs attributes are stored in array(even index: key, odd index: value)
|
|
511
|
+
*/
|
|
512
|
+
getAttributes() {
|
|
513
|
+
let _tNodeAttrs = this.inj._tNode.attrs, actualAttrs = Array.from(this.nativeElement.attributes).map(attr => attr.name);
|
|
514
|
+
if (_tNodeAttrs === null) {
|
|
515
|
+
return actualAttrs.sort();
|
|
516
|
+
}
|
|
517
|
+
forEach(_tNodeAttrs, (attr, i) => {
|
|
518
|
+
if (typeof attr === 'number') {
|
|
519
|
+
return false;
|
|
520
|
+
}
|
|
521
|
+
if (typeof attr === 'string' && i % 2 == 0) {
|
|
522
|
+
let lowerCaseAttr = attr.toLowerCase();
|
|
523
|
+
if (actualAttrs.includes(lowerCaseAttr)) {
|
|
524
|
+
let index = actualAttrs.indexOf(lowerCaseAttr);
|
|
525
|
+
actualAttrs[index] = attr;
|
|
526
|
+
}
|
|
527
|
+
}
|
|
528
|
+
});
|
|
529
|
+
/*
|
|
530
|
+
Sorting attributes as properties like placeholder is not working when it is bound.
|
|
531
|
+
placeholder and placeholder.bind two properties are coming in Array.
|
|
532
|
+
When array is not sorted, initially placeholder.bind value is set then placeholder default value is updated.
|
|
533
|
+
If array is sorted, placeholder.bind value will be set finally.
|
|
534
|
+
This is caused because of the way we are storing attribute names in watcher registry map
|
|
535
|
+
*/
|
|
536
|
+
return actualAttrs.sort();
|
|
537
|
+
}
|
|
538
|
+
/**
|
|
539
|
+
* Process the attributes
|
|
540
|
+
*/
|
|
541
|
+
processAttrs() {
|
|
542
|
+
map(this.getAttributes(), (attrName) => {
|
|
543
|
+
let attrValue = this.nativeElement.attributes[attrName].value;
|
|
544
|
+
this.$attrs.set(attrName, attrValue);
|
|
545
|
+
this.processAttr(attrName, attrValue);
|
|
546
|
+
});
|
|
547
|
+
}
|
|
548
|
+
/**
|
|
549
|
+
* Update the initState with the default property values and the values provided in the markup
|
|
550
|
+
* Process the attributes
|
|
551
|
+
* Register the widget
|
|
552
|
+
*/
|
|
553
|
+
initWidget() {
|
|
554
|
+
this.initState = new Map();
|
|
555
|
+
// get the widget properties
|
|
556
|
+
const widgetProps = getWidgetPropsByType(this.widgetSubType);
|
|
557
|
+
if (this.customWidgetSubType) {
|
|
558
|
+
const customWidgetProps = getWidgetPropsByType(this.customWidgetSubType);
|
|
559
|
+
customWidgetProps.forEach((v, k) => {
|
|
560
|
+
widgetProps.set(k, v);
|
|
561
|
+
});
|
|
562
|
+
}
|
|
563
|
+
widgetProps.forEach((v, k) => {
|
|
564
|
+
if (isDefined(v.value)) {
|
|
565
|
+
this.initState.set(k, v.value);
|
|
566
|
+
}
|
|
567
|
+
});
|
|
568
|
+
this.widgetProps = widgetProps;
|
|
569
|
+
this.processAttrs();
|
|
570
|
+
this.registerWidget(this.initState.get('name'));
|
|
571
|
+
}
|
|
572
|
+
/**
|
|
573
|
+
* Update the default properties and the properties provided in the markup in component
|
|
574
|
+
* Invoking this method will result in invocation of propertyChange handlers on the component for the first time
|
|
575
|
+
*/
|
|
576
|
+
setInitProps() {
|
|
577
|
+
if (this.initState.get('name')) {
|
|
578
|
+
this.widget.name = this.initState.get('name');
|
|
579
|
+
}
|
|
580
|
+
this.initState.forEach((v, k) => {
|
|
581
|
+
// name is already set, ignore name
|
|
582
|
+
// if the key is part of to be ignored attributes list do not set it on the component instance
|
|
583
|
+
if ((this.widgetProps.get(k) || isStyle(k)) && k !== 'name') {
|
|
584
|
+
this.widget[k] = v;
|
|
585
|
+
}
|
|
586
|
+
});
|
|
587
|
+
this.initState.clear();
|
|
588
|
+
this.initState = undefined;
|
|
589
|
+
this.readyState.next(null);
|
|
590
|
+
this.readyState.complete();
|
|
591
|
+
}
|
|
592
|
+
/**
|
|
593
|
+
* Returns true, if a listener registered for the given event on this widget markup.
|
|
594
|
+
* @param eventName
|
|
595
|
+
* @returns {boolean}
|
|
596
|
+
*/
|
|
597
|
+
hasEventCallback(eventName) {
|
|
598
|
+
return this.eventHandlers.has(eventName);
|
|
599
|
+
}
|
|
600
|
+
/**
|
|
601
|
+
* Sets the focus on the widget
|
|
602
|
+
*/
|
|
603
|
+
focus() {
|
|
604
|
+
/**
|
|
605
|
+
* Check for the nodes having focus-target attribute inside the element
|
|
606
|
+
* If found, focus the first node (eg, date widget)
|
|
607
|
+
* else, focus the element (eg, text widget)
|
|
608
|
+
*/
|
|
609
|
+
let $target = this.$element[0].querySelector('[focus-target]');
|
|
610
|
+
if (!$target) {
|
|
611
|
+
$target = this.$element[0];
|
|
612
|
+
}
|
|
613
|
+
$target.focus();
|
|
614
|
+
}
|
|
615
|
+
// Defining the execute method on BaseComponent. If dataset is binded to widgets ouptut then datasource.execute will be defined
|
|
616
|
+
execute(operation, options) {
|
|
617
|
+
}
|
|
618
|
+
mute() {
|
|
619
|
+
this.isMuted = true;
|
|
620
|
+
}
|
|
621
|
+
unmute() {
|
|
622
|
+
this.isMuted = false;
|
|
623
|
+
}
|
|
624
|
+
/**
|
|
625
|
+
* After the Angular 17 upgrade, Angular is no longer sending ngTemplateContext to components in ng-template.
|
|
626
|
+
* Wavemaker widgets inside ng-template require context to evaluate bind expressions.
|
|
627
|
+
* So we're creating an injectionToken that returns the context as a value.
|
|
628
|
+
* We are passing the injectionToken to the ngTemplateOutletInjector.
|
|
629
|
+
* This injects the context into each widget in the ng-template.
|
|
630
|
+
* In the widget component constructor we are getting the injectionToken using dependency injection.
|
|
631
|
+
* If injectionToken is present, we extend the component context with the value of injectionToken.
|
|
632
|
+
* @param contextKey
|
|
633
|
+
* @param context
|
|
634
|
+
* @returns injector
|
|
635
|
+
*/
|
|
636
|
+
createCustomInjector(contextKey, context) {
|
|
637
|
+
if (this.customInjectorMap[contextKey]) {
|
|
638
|
+
return this.customInjectorMap[contextKey].injector;
|
|
639
|
+
}
|
|
640
|
+
const injector = Injector.create({
|
|
641
|
+
providers: [{ provide: 'EXPLICIT_CONTEXT', useFactory: () => context }]
|
|
642
|
+
});
|
|
643
|
+
this.customInjectorMap[contextKey] = { context, injector };
|
|
644
|
+
return injector;
|
|
645
|
+
}
|
|
646
|
+
/**
|
|
647
|
+
* After the host page is attached from cache, this function is called.
|
|
648
|
+
*/
|
|
649
|
+
ngOnAttach() {
|
|
650
|
+
this.isAttached = true;
|
|
651
|
+
}
|
|
652
|
+
/**
|
|
653
|
+
* Before the host page is detached from dom and stored in cache, this function is called.
|
|
654
|
+
*/
|
|
655
|
+
ngOnDetach() {
|
|
656
|
+
this.isAttached = false;
|
|
657
|
+
}
|
|
658
|
+
/**
|
|
659
|
+
* nativeElement will be available by this time
|
|
660
|
+
* if the delayInit is false, properties meta will be available by this time
|
|
661
|
+
* Invoke the setInitProps if the delayInit is false
|
|
662
|
+
*/
|
|
663
|
+
ngOnInit() {
|
|
664
|
+
if (!this.delayedInit) {
|
|
665
|
+
this.setInitProps();
|
|
666
|
+
}
|
|
667
|
+
}
|
|
668
|
+
/**
|
|
669
|
+
* Register the events
|
|
670
|
+
*/
|
|
671
|
+
ngAfterViewInit() {
|
|
672
|
+
if (this.toBeSetupEventsQueue.length) {
|
|
673
|
+
for (const fn of this.toBeSetupEventsQueue) {
|
|
674
|
+
fn();
|
|
675
|
+
}
|
|
676
|
+
}
|
|
677
|
+
this.toBeSetupEventsQueue.length = 0;
|
|
678
|
+
this.isAttached = true;
|
|
679
|
+
}
|
|
680
|
+
ngAfterContentInit() { }
|
|
681
|
+
ngOnDestroy() {
|
|
682
|
+
this.isDestroyed = true;
|
|
683
|
+
this.widget = Object.create(null);
|
|
684
|
+
this.styleChange.complete();
|
|
685
|
+
this.propertyChange.complete();
|
|
686
|
+
this.destroy.complete();
|
|
687
|
+
this.isAttached = false;
|
|
688
|
+
// MEMORY LEAK FIX: Clear context to release references to parent scope data
|
|
689
|
+
// The context object holds references to repeater items, wizard steps, etc.
|
|
690
|
+
// which can retain large amounts of data even after component destruction
|
|
691
|
+
if (this.context) {
|
|
692
|
+
// Clear all properties from context
|
|
693
|
+
Object.keys(this.context).forEach(key => {
|
|
694
|
+
delete this.context[key];
|
|
695
|
+
});
|
|
696
|
+
this.context = null;
|
|
697
|
+
}
|
|
698
|
+
}
|
|
699
|
+
static { this.ɵfac = function BaseComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || BaseComponent)(i0.ɵɵinject(i0.Injector), i0.ɵɵinject(WidgetConfig), i0.ɵɵinject('EXPLICIT_CONTEXT', 8), i0.ɵɵinject(Promise)); }; }
|
|
700
|
+
static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: BaseComponent, factory: BaseComponent.ɵfac }); }
|
|
701
|
+
}
|
|
702
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BaseComponent, [{
|
|
703
|
+
type: Injectable
|
|
704
|
+
}], () => [{ type: i0.Injector }, { type: undefined, decorators: [{
|
|
705
|
+
type: Inject,
|
|
706
|
+
args: [WidgetConfig]
|
|
707
|
+
}] }, { type: undefined, decorators: [{
|
|
708
|
+
type: Inject,
|
|
709
|
+
args: ['EXPLICIT_CONTEXT']
|
|
710
|
+
}, {
|
|
711
|
+
type: Optional
|
|
712
|
+
}] }, { type: Promise }], null); })();
|
|
713
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL2Jhc2Uvc3JjL3dpZGdldHMvY29tbW9uL2Jhc2UvYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdILFVBQVUsRUFDVixNQUFNLEVBQ04sTUFBTSxFQUNOLFVBQVUsRUFDVixRQUFRLEVBR1IsUUFBUSxFQUNSLGdCQUFnQixFQUNuQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFFdkQsT0FBTyxFQUFDLGFBQWEsRUFBRSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFFNUMsT0FBTyxFQUNILGVBQWUsRUFDZixXQUFXLEVBQ1gsUUFBUSxFQUNSLE1BQU0sRUFDTixRQUFRLEVBQ1IsR0FBRyxFQUNILFVBQVUsRUFDVixTQUFTLEVBQ1QsVUFBVSxFQUNWLFdBQVcsRUFDWCxPQUFPLEVBQ1AsTUFBTSxFQUNOLGFBQWEsRUFDYixXQUFXLEVBQ2QsTUFBTSxVQUFVLENBQUM7QUFFbEIsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQy9DLE9BQU8sRUFBQyxRQUFRLEVBQUUsWUFBWSxFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDdkUsT0FBTyxFQUFpQixPQUFPLEVBQWlCLFlBQVksRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQzNGLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3RFLE9BQU8sRUFBQyxZQUFZLEVBQUUsVUFBVSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDbkUsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDMUUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDL0QsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUMsTUFBTSxXQUFXLENBQUM7O0FBSXpGLGdFQUFnRTtBQUNoRSxNQUFNLGFBQWEsR0FBRyxDQUFDLEtBQUssRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLEVBQUU7SUFDMUMsSUFBSSxRQUFRLElBQUksUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzlCLFdBQVcsQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFDRCxJQUFJLEtBQUssSUFBSSxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDeEIsUUFBUSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDbkMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQUVGLHNDQUFzQztBQUN0QyxNQUFNLFlBQVksR0FBRyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUU7SUFDaEMsSUFBSSxFQUFFLElBQUksUUFBUSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFDckIsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFTLEdBQUc7WUFDckIsTUFBTSxDQUFDLEVBQUUsRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDeEIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBQ0QsSUFBSSxFQUFFLElBQUksUUFBUSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFDckIsYUFBYSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUMxQixDQUFDO0FBRUwsQ0FBQyxDQUFDO0FBUUYsTUFBTSxPQUFnQixhQUFhO0lBVy9COztPQUVHO0lBQ0gsSUFBVyxRQUFRO1FBQ2YsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFnSEQsWUFDYyxHQUFhLEVBQ0QsTUFBcUIsRUFDSCxlQUFxQixFQUM3RCxXQUEwQixDQUFDLGtEQUFrRDs7UUFIbkUsUUFBRyxHQUFILEdBQUcsQ0FBVTtRQXhIcEIsZUFBVSxHQUFHLEtBQUssQ0FBQztRQThDMUI7O1dBRUc7UUFDYyxnQkFBVyxHQUFHLElBQUksYUFBYSxFQUFFLENBQUM7UUFFbkQ7O1dBRUc7UUFDYyxtQkFBYyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7UUFFaEQ7O1dBRUc7UUFDYyxlQUFVLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUU1Qzs7V0FFRztRQUNjLFlBQU8sR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBRXpDOztXQUVHO1FBQ0ssa0JBQWEsR0FBRyxJQUFJLEdBQUcsRUFBNkMsQ0FBQztRQTBCN0U7OztXQUdHO1FBQ0sseUJBQW9CLEdBQW9CLEVBQUUsQ0FBQztRQUU1QyxrQkFBYSxHQUFHLEtBQUssQ0FBQztRQUlyQixXQUFNLEdBQUcsSUFBSSxHQUFHLEVBQWtCLENBQUM7UUFFbkMsWUFBTyxHQUFHLEtBQUssQ0FBQztRQTBuQmhCLHNCQUFpQixHQUFRLEVBQUUsQ0FBQztRQXhtQmhDLE1BQU0sVUFBVSxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLGFBQWEsR0FBRyxVQUFVLENBQUMsYUFBYSxDQUFDO1FBQzlDLDBEQUEwRDtRQUMxRCxJQUFJLENBQUMsYUFBYSxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3RELElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQztRQUNwQyxJQUFJLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQyxhQUFhLElBQUksTUFBTSxDQUFDLFVBQVUsQ0FBQztRQUMvRCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ2xELGlEQUFpRDtRQUNqRCw2RUFBNkU7UUFDN0UsNEZBQTRGO1FBQzVGLDRGQUE0RjtRQUU1RixJQUFJLEtBQUssR0FBSSxJQUFJLENBQUMsR0FBVyxDQUFDLE1BQU0sQ0FBQztRQUNyQyxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3hELHVFQUF1RTtRQUN2RSxJQUFJLENBQUMsT0FBTyxHQUFJLElBQUksQ0FBQyxHQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRTNDLElBQUksQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDLFdBQVcsSUFBSSxZQUFZLENBQUMsS0FBSyxDQUFDO1FBQzVELDRDQUE0QztRQUM1QywwRUFBMEU7UUFDMUUsb0dBQW9HO1FBQ3BHLGtIQUFrSDtRQUNsSCxnSEFBZ0g7UUFDaEgscUpBQXFKO1FBQ3JKOzs7Ozs7Ozs7O1dBVUc7UUFFSDs7OztXQUlHO1FBQ0gscUlBQXFJO1FBQ3JJLDhFQUE4RTtRQUM5RSxXQUFXO1FBQ1gsOEVBQThFO1FBQzlFLElBQUk7UUFDSixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNqQyxJQUFJLENBQUMsWUFBWSxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDekMsSUFBSSxDQUFDLGFBQXFCLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFFakQsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsSUFBSSxFQUFFLENBQUM7UUFFOUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBRW5CLElBQUksTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ25CLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNuRCxDQUFDO1FBRUQsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUN4QyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3ZDLE9BQU8sQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLFdBQVcsRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRTlELG9FQUFvRTtRQUNwRSxJQUFJLENBQUMsMkJBQTJCLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUMzRCxJQUFJLENBQUMsOEJBQThCLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxDQUFDO1FBRWpFLDhHQUE4RztRQUM5RyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDZixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDdEIsQ0FBQzthQUFNLENBQUM7WUFDSixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztZQUN4QixXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7Z0JBQzNCLElBQUksV0FBVyxHQUFHLElBQUksQ0FBQyxhQUFhLEtBQUssNkJBQTZCLEVBQ2xFLEVBQUUsR0FBWSxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsQ0FBQztnQkFDOUQsSUFBSSxXQUFXLElBQUksRUFBRSxFQUFHLENBQUM7b0JBQ3JCLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxXQUFXLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFVBQVUsQ0FBQztnQkFDbEosQ0FBQztnQkFFRCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQ2xCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztnQkFDcEIsU0FBUyxJQUFJLFNBQVMsRUFBRSxDQUFBO1lBQzVCLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQztRQUNELElBQUcsZUFBZSxFQUFFLENBQUM7WUFDakIsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsZUFBZSxDQUFDLENBQUM7UUFDMUMsQ0FBQztJQUNMLENBQUM7SUFFTSxnQkFBZ0I7UUFDbkIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzlCLENBQUM7SUFFTSxhQUFhO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUMzQixDQUFDO0lBRU0sZ0JBQWdCO1FBQ25CLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM5QixDQUFDO0lBRU0sU0FBUztRQUNaLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUN2QixDQUFDO0lBRU0sV0FBVyxDQUFDLFFBQVEsRUFBRSxTQUFTO1FBQ2xDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUcsU0FBUyxDQUFDO0lBQ3RDLENBQUM7SUFFTSxhQUFhO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUMzQixDQUFDO0lBRU0saUJBQWlCLENBQUMsR0FBVyxFQUFFLEVBQU8sRUFBRSxFQUFPO1FBQ2xELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUMsR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUMsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFTSxvQkFBb0IsQ0FBQyxHQUFXLEVBQUUsRUFBTyxFQUFFLEVBQU87UUFDckQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBQyxHQUFHLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBQyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVNLDJCQUEyQixDQUFDLEVBQWtCLEVBQUUsR0FBUztRQUM1RCxJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ04sRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdEIsQ0FBQztRQUNELElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBQyxHQUFHLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFTSwwQkFBMEIsQ0FBQyxFQUFZLEVBQUUsR0FBUztRQUNyRCxJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ04sRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdEIsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUM1QixFQUFFLEVBQUUsQ0FBQztZQUNMLE9BQU87UUFDWCxDQUFDO1FBQ0QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRU0sOEJBQThCLENBQUMsRUFBa0IsRUFBRSxHQUFTO1FBQy9ELElBQUksR0FBRyxFQUFFLENBQUM7WUFDTixFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN0QixDQUFDO1FBQ0QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFDLEdBQUcsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUVNLHVCQUF1QixDQUFDLEVBQVksRUFBRSxHQUFTO1FBQ2xELElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUNOLE9BQU87UUFDWCxDQUFDO1FBQ0QsSUFBSSxHQUFHLEVBQUUsQ0FBQztZQUNOLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3RCLENBQUM7UUFDRCxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsR0FBRSxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRTtZQUM1QyxJQUFJLENBQUM7Z0JBQ0QsSUFBSSxFQUFFLElBQUksT0FBTyxFQUFFLEtBQUssVUFBVSxFQUFFLENBQUM7b0JBQ2pDLEVBQUUsRUFBRSxDQUFDO2dCQUNULENBQUM7WUFDTCxDQUFDO1lBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztnQkFDVCwwREFBMEQ7Z0JBQzFELHdEQUF3RDtnQkFDeEQsdUNBQXVDO2dCQUN2QyxtQ0FBbUM7Z0JBQ25DLGlDQUFpQztZQUNyQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU0sY0FBYztRQUNqQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDNUIsQ0FBQztJQUVTLFdBQVc7UUFDakIsT0FBTyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxhQUFhLEVBQUUsb0JBQW9CLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7SUFDMUcsQ0FBQztJQUVTLFdBQVc7UUFDakIsa0RBQWtEO1FBQ2xELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDO1FBRW5DLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqRCwwQ0FBMEM7UUFDMUMsSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLE9BQU8sRUFBRSxDQUFDO1lBQzlCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQzNCLENBQUM7YUFBTSxDQUFDO1lBQ0osSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFDdEIsQ0FBQztRQUVELElBQUksY0FBYyxFQUFFLENBQUM7WUFDakIsSUFBSSxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7WUFDMUIsSUFBSSxPQUFPLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQztnQkFDMUIsT0FBTyxDQUFDLGNBQWMsRUFBRSxDQUFDLFVBQVUsRUFBRSxFQUFFO29CQUNuQyxNQUFNLENBQUMsTUFBTSxDQUFDLGdCQUFnQixFQUFFLFVBQVUsQ0FBQyxDQUFDO2dCQUNoRCxDQUFDLENBQUMsQ0FBQztZQUNQLENBQUM7aUJBQU0sQ0FBQztnQkFDSixnQkFBZ0IsR0FBRyxjQUFjLENBQUM7WUFDdEMsQ0FBQztZQUNELElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3JFLENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxpQkFBaUIsQ0FBQyxHQUFXLEVBQUUsS0FBVTtRQUM1QyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQztJQUM3QixDQUFDO0lBRU0sT0FBTyxDQUFDLFFBQWdCO1FBQzNCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVEOzs7T0FHRztJQUNJLGNBQWM7UUFDakIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNPLGdCQUFnQjtRQUN0QixPQUFPLGlCQUFpQixDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3ZDLENBQUM7SUFFRDs7Ozs7Ozs7O09BU0c7SUFDTyxnQkFBZ0IsQ0FBQyxHQUFXLEVBQUUsRUFBTyxFQUFFLEVBQVE7UUFDckQsSUFBSSxHQUFHLEtBQUssTUFBTSxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDcEMsQ0FBQzthQUFNLElBQUksR0FBRyxLQUFLLE1BQU0sRUFBRSxDQUFDO1lBQ3hCLE9BQU8sQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUM3QyxDQUFDO2FBQU0sSUFBSSxHQUFHLEtBQUssT0FBTyxFQUFFLENBQUM7WUFDekIsV0FBVyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzVDLENBQUM7YUFBTSxJQUFJLEdBQUcsS0FBSyxNQUFNLElBQUksR0FBRyxLQUFLLFVBQVUsRUFBRSxDQUFDO1lBQzlDLE9BQU8sQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUNyQyxJQUFJLEdBQUcsS0FBSyxNQUFNLElBQUksRUFBRSxFQUFFLENBQUM7Z0JBQ3ZCLFlBQVksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3ZELENBQUM7UUFDTCxDQUFDO2FBQU0sSUFBSSxHQUFHLEtBQUssa0JBQWtCLEVBQUUsQ0FBQztZQUNwQyxtREFBbUQ7WUFDbkQsYUFBYSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDN0QsQ0FBQzthQUFPLElBQUksR0FBRyxLQUFLLFVBQVUsRUFBRSxDQUFDO1lBQzdCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQztZQUNuRSxrRkFBa0Y7WUFDbEYsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDckQsQ0FBQzthQUFNLElBQUksR0FBRyxLQUFLLGtCQUFrQixFQUFFLENBQUM7WUFDcEMsa0RBQWtEO1lBQ2xELFlBQVksQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUM3QyxDQUFDO2FBQU0sSUFBSSxHQUFHLEtBQUssV0FBVyxFQUFFLENBQUM7WUFDN0Isa0RBQWtEO1lBQ2xELFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLFdBQVcsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUNuRCxDQUFDO2FBQU8sSUFBSSxHQUFHLEtBQUssVUFBVSxFQUFFLENBQUM7WUFDN0IsMkZBQTJGO1lBQzNGLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDN0gsQ0FBQzthQUFNLElBQUksR0FBRyxLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQzdCLElBQUksRUFBRSxFQUFFLENBQUM7Z0JBQ0wsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2pCLENBQUM7UUFDTCxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ08sYUFBYSxDQUFDLENBQVMsRUFBRSxFQUFPLEVBQUUsRUFBUSxJQUFHLENBQUM7SUFFeEQ7O09BRUc7SUFDTyxjQUFjLENBQUMsVUFBa0I7UUFDdkMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQ3BHLENBQUM7SUFFRDs7T0FFRztJQUNPLGtCQUFrQixDQUFDLFNBQVM7UUFDbEMsT0FBTyxVQUFVLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxJQUFJLFNBQVMsQ0FBQztJQUNsRCxDQUFDO0lBRUQ7OztPQUdHO0lBQ08sV0FBVyxDQUFDLElBQWlCLEVBQUUsU0FBaUIsRUFBRSxhQUF1QixFQUFFLE1BQVcsRUFBRSxJQUFhO1FBQzNHLElBQUksQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLENBQzlCLElBQUksRUFDSixTQUFTLEVBQ1QsQ0FBQyxDQUFDLEVBQUU7WUFDQSxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztZQUNsQixJQUFJLElBQUksS0FBSyxTQUFTLEVBQUUsQ0FBQztnQkFDdEIsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGFBQWEsRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQzFDLENBQUM7aUJBQU0sQ0FBQztnQkFDSixPQUFPLGFBQWEsRUFBRSxDQUFDO1lBQzNCLENBQUM7UUFDTCxDQUFDLENBQ0osQ0FBQztJQUNOLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ08sZ0JBQWdCLENBQUMsU0FBaUIsRUFBRSxJQUFZLEVBQUUsSUFBYSxFQUFFLEtBQWE7UUFDcEYsTUFBTSxFQUFFLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzdCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDNUIsTUFBTSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDbkQsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUVqRyxJQUFJLE1BQU0sR0FBWSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksRUFDN0MsYUFBYSxHQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQztRQUV2RSxNQUFNLGFBQWEsR0FBRyxHQUFHLEVBQUU7WUFDdkIsSUFBSSxVQUFVLENBQUM7WUFDZixlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDdEIsSUFBSSxDQUFDO2dCQUNELE1BQU0sQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sSUFBSSxJQUFJLE1BQU0sQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUM7Z0JBQ25FLG1GQUFtRjtnQkFDbkYsNkNBQTZDO2dCQUM3QyxVQUFVLEdBQUcsT0FBTyxFQUFFLENBQUM7Z0JBQ3ZCLElBQUksVUFBVSxZQUFZLE9BQU8sRUFBRSxDQUFDO29CQUNoQyxPQUFPLFVBQVUsQ0FBQyxJQUFJLENBQUUsUUFBUSxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLEVBQUU7d0JBQ2hELE1BQU0sVUFBVSxHQUFJLE1BQWMsQ0FBQyxJQUFJLElBQUksTUFBTSxDQUFDLFFBQVEsSUFBSSxTQUFTLENBQUM7d0JBQ3hFLE9BQU8sQ0FBQyxLQUFLLENBQUMsZ0RBQWdELFNBQVMsZ0JBQWdCLFVBQVUsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDO3dCQUM1RyxPQUFPLEdBQUcsQ0FBQztvQkFDZixDQUFDLENBQUMsQ0FBQztnQkFDUCxDQUFDO3FCQUFNLENBQUM7b0JBQ0osT0FBTyxVQUFVLENBQUM7Z0JBQ3RCLENBQUM7WUFDTCxDQUFDO1lBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztnQkFDVCxzQ0FBc0M7Z0JBQ3RDLE1BQU0sVUFBVSxHQUFJLE1BQWMsQ0FBQyxJQUFJLElBQUksTUFBTSxDQUFDLFFBQVEsSUFBSSxTQUFTLENBQUM7Z0JBQ3hFLE1BQU0sWUFBWSxHQUFHLENBQUMsQ0FBQyxPQUFPLElBQUksTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUM1QyxPQUFPLENBQUMsS0FBSyxDQUFDLG1DQUFtQyxTQUFTLGdCQUFnQixVQUFVLElBQUksRUFBRSxZQUFZLENBQUMsQ0FBQztnQkFDeEcsT0FBTyxDQUFDLEtBQUssQ0FBQywyQkFBMkIsRUFBRSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztnQkFDOUUsb0ZBQW9GO2dCQUNwRixpREFBaUQ7Z0JBQ2pELE9BQU8sU0FBUyxDQUFDO1lBQ3JCLENBQUM7UUFDTCxDQUFDLENBQUM7UUFDRixJQUFHLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsYUFBYTtZQUNuQyxLQUFLLENBQUMsTUFBTSxDQUFDLGFBQWEsR0FBRyxJQUFJLEdBQUcsRUFBNkMsQ0FBQTtRQUVyRixNQUFNLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsU0FBUyxDQUFDLEVBQUUsRUFBQyxRQUFRLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBQyxDQUFDLENBQUM7UUFDaEcseURBQXlEO1FBQ3pELDJCQUEyQjtRQUMzQixNQUFNLFdBQVcsR0FBRyxTQUFTLENBQUMsTUFBTSxTQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ2pELHlDQUF5QztRQUV6QyxNQUFNLENBQUMsV0FBVyxDQUFDLEdBQUcsYUFBYSxDQUFDO1FBRXBDLDBDQUEwQztRQUMxQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNoQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsa0JBQWtCLENBQUMsU0FBUyxDQUFDLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNyRyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRDs7O09BR0c7SUFDTyxlQUFlLENBQUMsUUFBZ0IsRUFBRSxJQUFZLEVBQUUsS0FBWTtRQUNsRSxJQUFHLENBQUMsS0FBSztZQUNMLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3BDLElBQUksVUFBVSxHQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUMxRSxPQUFPLEdBQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFDekQsTUFBTSxHQUFRLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFDaEQsT0FBTyxHQUFPLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQ3pELFdBQVcsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUNqRSxRQUFRLEdBQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUVoRSw2REFBNkQ7UUFDN0QsTUFBTSxXQUFXLEdBQVEsV0FBVyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDekQsTUFBTSxjQUFjLEdBQUcsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQztRQUNoRSxJQUFJLGNBQWMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDLEVBQUUsQ0FBQztZQUNsRCxXQUFXLENBQUMsUUFBUSxHQUFHLEdBQUcsQ0FBQyxDQUFDLCtDQUErQztRQUMvRSxDQUFDO1FBRUQsSUFBSSxDQUFDLHVCQUF1QixDQUN4QixNQUFNLENBQ0YsSUFBSSxFQUNKLFVBQVUsRUFDVixPQUFPLEVBQ1AsRUFBRSxDQUFDLEVBQUU7WUFDRCxJQUFHLFFBQVEsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksTUFBTSxDQUFDLFVBQVU7Z0JBQ2hELE1BQU0sQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3BDLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUE7UUFDekIsQ0FBQyxFQUNELGtCQUFrQixDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsRUFDdEMsUUFBUSxLQUFLLFlBQVksRUFDekIsV0FBVyxFQUNYLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FDaEIsQ0FDSixDQUFDO0lBQ04sQ0FBQztJQUVEOztPQUVHO0lBQ08scUJBQXFCLENBQUMsUUFBZ0I7UUFDNUMsUUFBUSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLG1CQUFtQixDQUFDLFNBQWlCLEVBQUUsV0FBaUI7UUFDM0QsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdkQsSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUNmLE1BQU0sRUFBRSxHQUFHLFlBQVksQ0FBQyxRQUFRLENBQUM7WUFDakMsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUM7WUFFekMsSUFBSSxFQUFFLEVBQUUsQ0FBQztnQkFDTCxJQUFJLENBQUM7b0JBQ0QsT0FBTyxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQztnQkFDbEQsQ0FBQztnQkFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO29CQUNiLG1EQUFtRDtvQkFDbkQsTUFBTSxVQUFVLEdBQUksSUFBWSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLFNBQVMsQ0FBQztvQkFDcEUsTUFBTSxZQUFZLEdBQUcsS0FBSyxFQUFFLE9BQU8sSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ3JELE9BQU8sQ0FBQyxLQUFLLENBQUMsbUNBQW1DLFNBQVMsZ0JBQWdCLFVBQVUsSUFBSSxFQUFFLFlBQVksQ0FBQyxDQUFDO29CQUN4RyxPQUFPLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsQ0FBQztvQkFDcEMsb0ZBQW9GO29CQUNwRixpREFBaUQ7b0JBQ2pELE9BQU8sU0FBUyxDQUFDO2dCQUNyQixDQUFDO1lBQ0wsQ0FBQztRQUNMLENBQUM7SUFDTCxDQUFDO0lBQ0Q7Ozs7O09BS0c7SUFDTyxXQUFXLENBQUMsUUFBZ0IsRUFBRSxTQUFpQixFQUFFLEtBQWE7UUFDbkUsNkhBQTZIO1FBQzlILE1BQU0sRUFBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUMsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3BFLElBQUksSUFBSSxLQUFLLE1BQU0sRUFBRSxDQUFDO1lBQ2xCLGdFQUFnRTtZQUNoRSxJQUFJLFFBQVEsS0FBSyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDO2dCQUN0RSxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7WUFDckMsQ0FBQztZQUNELElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxFQUFFLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNyRCxDQUFDO2FBQU0sSUFBSSxJQUFJLEtBQUssT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsbUJBQW1CLENBQUMsRUFBRSxDQUFDO1lBQ25GLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1RCxDQUFDO2FBQU0sSUFBSSxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDdEIsK0VBQStFO1lBQy9FLElBQUksUUFBUSxLQUFLLE9BQU8sRUFBRSxDQUFDO2dCQUN2QixXQUFXLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUMvQyxDQUFDO2lCQUFNLElBQUksUUFBUSxLQUFLLFVBQVUsSUFBSSxRQUFRLEtBQUssTUFBTSxFQUFFLENBQUM7Z0JBQ3hELFVBQVUsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBQzdDLENBQUM7WUFFRCxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDNUMsQ0FBQzthQUFNLENBQUM7WUFDSix1Q0FBdUM7UUFDM0MsQ0FBQztJQUNMLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDTyxhQUFhO1FBQ25CLElBQUksV0FBVyxHQUFJLElBQUksQ0FBQyxHQUFXLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxXQUFXLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqSSxJQUFHLFdBQVcsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUN0QixPQUFPLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUM5QixDQUFDO1FBQ0QsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFNLEVBQUUsRUFBRTtZQUNsQyxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDO2dCQUMzQixPQUFPLEtBQUssQ0FBQztZQUNqQixDQUFDO1lBQ0QsSUFBRyxPQUFPLElBQUksS0FBSyxRQUFRLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztnQkFDeEMsSUFBSSxhQUFhLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUN2QyxJQUFJLFdBQVcsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQztvQkFDdEMsSUFBSSxLQUFLLEdBQUcsV0FBVyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQTtvQkFDOUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQztnQkFDOUIsQ0FBQztZQUNMLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUVIOzs7Ozs7V0FNRztRQUNILE9BQU8sV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRDs7T0FFRztJQUNLLFlBQVk7UUFDaEIsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsRUFBRSxDQUFDLFFBQWdCLEVBQUUsRUFBRTtZQUMzQyxJQUFJLFNBQVMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxLQUFLLENBQUE7WUFDN0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQ3JDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQzFDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVEOzs7O09BSUc7SUFDTyxVQUFVO1FBQ2hCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxHQUFHLEVBQWUsQ0FBQztRQUV4Qyw0QkFBNEI7UUFDNUIsTUFBTSxXQUFXLEdBQXFCLG9CQUFvQixDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUMvRSxJQUFHLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1lBQzFCLE1BQU0saUJBQWlCLEdBQXFCLG9CQUFvQixDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1lBQzNGLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtnQkFDL0IsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDMUIsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDO1FBQ0QsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUN6QixJQUFJLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDckIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNuQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztRQUUvQixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFcEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRDs7O09BR0c7SUFDTyxZQUFZO1FBQ2xCLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNsRCxDQUFDO1FBQ0QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDNUIsbUNBQW1DO1lBQ25DLDhGQUE4RjtZQUM5RixJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLE1BQU0sRUFBRSxDQUFDO2dCQUMxRCxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN2QixDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBRTNCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVEOzs7O09BSUc7SUFDTyxnQkFBZ0IsQ0FBQyxTQUFTO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOztPQUVHO0lBQ08sS0FBSztRQUNYOzs7O1dBSUc7UUFDSCxJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQy9ELElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNYLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9CLENBQUM7UUFDRCxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELCtIQUErSDtJQUNySCxPQUFPLENBQUMsU0FBUyxFQUFFLE9BQU87SUFFcEMsQ0FBQztJQUVNLElBQUk7UUFDUCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztJQUN4QixDQUFDO0lBRU0sTUFBTTtRQUNULElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO0lBQ3pCLENBQUM7SUFJRDs7Ozs7Ozs7Ozs7T0FXRztJQUNILG9CQUFvQixDQUFDLFVBQWtCLEVBQUUsT0FBWTtRQUNqRCxJQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ3BDLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsQ0FBQyxDQUFDLFFBQVEsQ0FBQztRQUN2RCxDQUFDO1FBQ0QsTUFBTSxRQUFRLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQztZQUM3QixTQUFTLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDMUUsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxDQUFDO1FBQzNELE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENBQUM7SUFFRDs7T0FFRztJQUNJLFVBQVU7UUFDYixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztJQUMzQixDQUFDO0lBRUQ7O09BRUc7SUFDSSxVQUFVO1FBQ2IsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7SUFDNUIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxRQUFRO1FBQ0osSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNwQixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDeEIsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNILGVBQWU7UUFDWCxJQUFJLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNuQyxLQUFLLE1BQU0sRUFBRSxJQUFJLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO2dCQUN6QyxFQUFFLEVBQUUsQ0FBQztZQUNULENBQUM7UUFDTCxDQUFDO1FBQ0QsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDckMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7SUFDM0IsQ0FBQztJQUVELGtCQUFrQixLQUFJLENBQUM7SUFFdkIsV0FBVztRQUNQLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDL0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUV4Qiw0RUFBNEU7UUFDNUUsNEVBQTRFO1FBQzVFLDBFQUEwRTtRQUMxRSxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNmLG9DQUFvQztZQUNwQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ3BDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUM3QixDQUFDLENBQUMsQ0FBQztZQUNILElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLENBQUM7SUFDTCxDQUFDOzhHQWowQmlCLGFBQWEsd0NBa0luQixZQUFZLGVBQ1osa0JBQWtCO3VFQW5JWixhQUFhLFdBQWIsYUFBYTs7aUZBQWIsYUFBYTtjQURsQyxVQUFVOztzQkFtSUYsTUFBTTt1QkFBQyxZQUFZOztzQkFDbkIsTUFBTTt1QkFBQyxrQkFBa0I7O3NCQUFHLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEluamVjdCxcbiAgICBpbmplY3QsXG4gICAgSW5qZWN0YWJsZSxcbiAgICBJbmplY3RvcixcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25Jbml0LFxuICAgIE9wdGlvbmFsLFxuICAgIFZpZXdDb250YWluZXJSZWZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0V2ZW50TWFuYWdlcn0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5cbmltcG9ydCB7UmVwbGF5U3ViamVjdCwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7XG4gICAgJGludm9rZVdhdGNoZXJzLFxuICAgICRwYXJzZUV2ZW50LFxuICAgICR1bndhdGNoLFxuICAgICR3YXRjaCxcbiAgICBhZGRDbGFzcyxcbiAgICBBcHAsXG4gICAgZmluZFBhcmVudCxcbiAgICBpc0RlZmluZWQsXG4gICAgcmVtb3ZlQXR0cixcbiAgICByZW1vdmVDbGFzcyxcbiAgICBzZXRBdHRyLFxuICAgIHNldENTUyxcbiAgICBzZXRDU1NGcm9tT2JqLFxuICAgIHN3aXRjaENsYXNzXG59IGZyb20gJ0B3bS9jb3JlJztcblxuaW1wb3J0IHtnZXRXaWRnZXRQcm9wc0J5VHlwZX0gZnJvbSAnLi4vLi4vZnJhbWV3b3JrL3dpZGdldC1wcm9wcyc7XG5pbXBvcnQge2lzU3R5bGV9IGZyb20gJy4uLy4uL2ZyYW1ld29yay9zdHlsZXInO1xuaW1wb3J0IHtyZWdpc3RlciwgcmVuYW1lV2lkZ2V0fSBmcm9tICcuLi8uLi9mcmFtZXdvcmsvd2lkZ2V0LXJlZ2lzdHJ5JztcbmltcG9ydCB7Q2hhbmdlTGlzdGVuZXIsIENvbnRleHQsIElXaWRnZXRDb25maWcsIFdpZGdldENvbmZpZ30gZnJvbSAnLi4vLi4vZnJhbWV3b3JrL3R5cGVzJztcbmltcG9ydCB7d2lkZ2V0SWRHZW5lcmF0b3J9IGZyb20gJy4uLy4uL2ZyYW1ld29yay93aWRnZXQtaWQtZ2VuZXJhdG9yJztcbmltcG9ydCB7RElTUExBWV9UWVBFLCBFVkVOVFNfTUFQfSBmcm9tICcuLi8uLi9mcmFtZXdvcmsvY29uc3RhbnRzJztcbmltcG9ydCB7V2lkZ2V0UHJveHlQcm92aWRlcn0gZnJvbSAnLi4vLi4vZnJhbWV3b3JrL3dpZGdldC1wcm94eS1wcm92aWRlcic7XG5pbXBvcnQge2dldFdhdGNoSWRlbnRpZmllcn0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvd2lkZ2V0LXV0aWxzJztcbmltcG9ydCB7Y2FtZWxDYXNlLCBleHRlbmQsIGZvckVhY2gsIGlzQXJyYXksIGlzT2JqZWN0LCBqb2luLCBsYXN0LCBtYXB9IGZyb20gXCJsb2Rhc2gtZXNcIjtcblxuZGVjbGFyZSBjb25zdCAkO1xuXG4vLyBHZXRzIGxpc3Qgb2YgY2xhc3NlcyB0byBhZGQgYW5kIHJlbW92ZSBhbmQgYXBwbGllcyBvbiB0aGUgJGVsXG5jb25zdCB1cGRhdGVDbGFzc2VzID0gKHRvQWRkLCB0b1JlbW92ZSwgZWwpID0+IHtcbiAgICBpZiAodG9SZW1vdmUgJiYgdG9SZW1vdmUubGVuZ3RoKSB7XG4gICAgICAgIHJlbW92ZUNsYXNzKGVsLCBqb2luKHRvUmVtb3ZlLCAnICcpKTtcbiAgICB9XG4gICAgaWYgKHRvQWRkICYmIHRvQWRkLmxlbmd0aCkge1xuICAgICAgICBhZGRDbGFzcyhlbCwgam9pbih0b0FkZCwgJyAnKSk7XG4gICAgfVxufTtcblxuLy8gVG8gYWRkIGFuZCByZW1vdmUgc3R5bGVzIG9uIHRoZSAkZWxcbmNvbnN0IHVwZGF0ZVN0eWxlcyA9IChudiwgb3YsIGVsKSA9PiB7XG4gICAgaWYgKG92ICYmIGlzT2JqZWN0KG92KSkge1xuICAgICAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXMob3YgfHwge30pO1xuICAgICAgICBrZXlzLmZvckVhY2goZnVuY3Rpb24oa2V5KSB7XG4gICAgICAgICAgICBzZXRDU1MoZWwsIGtleSwgJycpO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgaWYgKG52ICYmIGlzT2JqZWN0KG52KSkge1xuICAgICAgICBzZXRDU1NGcm9tT2JqKGVsLCBudik7XG4gICAgfVxuXG59O1xuXG5pbnRlcmZhY2UgQ2hpbGQge1xuICAgIHdpZGdldDogYW55LFxuICAgIG5hdGl2ZUVsZW1lbnQ6IGFueVxufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSwgT25Jbml0LCBBZnRlclZpZXdJbml0LCBBZnRlckNvbnRlbnRJbml0IHtcblxuICAgIC8qKlxuICAgICAqIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgd2lkZ2V0XG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IHdpZGdldElkOiBhbnk7XG5cbiAgICBwdWJsaWMgaXNEZXN0cm95ZWQ6IGJvb2xlYW47XG5cbiAgICBwdWJsaWMgaXNBdHRhY2hlZCA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogalF1ZXJ5IG5hdGl2ZUVsZW1lbnQgcmVmZXJlbmNlIG9mIHRoZSBjb21wb25lbnQgcm9vdFxuICAgICAqL1xuICAgIHB1YmxpYyBnZXQgJGVsZW1lbnQoKSB7XG4gICAgICAgIHJldHVybiAkKHRoaXMubmF0aXZlRWxlbWVudCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRE9NIG5vZGUgcmVmZXJlbmNlIG9mIHRoZSBjb21wb25lbnQgcm9vdFxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBuYXRpdmVFbGVtZW50OiBIVE1MRWxlbWVudDtcblxuICAgIC8qKlxuICAgICAqIFR5cGUgb2YgdGhlIGNvbXBvbmVudFxuICAgICAqL1xuICAgIHByb3RlY3RlZCByZWFkb25seSB3aWRnZXRUeXBlOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBNb3N0IG9mIHRoZSBjYXNlcyBpdCBpcyBzYW1lIGFzIHdpZGdldFR5cGVcbiAgICAgKiBmb3Igc3BlY2lmaWMgd2lkZ2V0cyBsaWtlIGNoYXJ0cyB3aWRnZXRUeXBlIGNhbiBiZSB3bS1jaGFydCB3aGVyZSBhcyB0aGUgc3VidHlwZSBjYW4gYmUgd20tYmFyLWNoYXJ0XG4gICAgICovXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHdpZGdldFN1YlR5cGU6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIFByb3h5IGZvciB0aGUgY29tcG9uZW50IGluc3RhbmNlLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCB3aWRnZXQ6IGFueTtcblxuICAgIC8qKlxuICAgICAqIFZpZXcgcGFyZW50IGNvbXBvbmVudFxuICAgICAqIGVnLCBQYWdlLCBQYXJ0aWFsLCBQcmVmYWJcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgdmlld1BhcmVudDogYW55O1xuXG4gICAgLyoqXG4gICAgICogRXZlbnRNYW5nZXIgdG8gYWRkL3JlbW92ZSBldmVudHNcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZXZlbnRNYW5hZ2VyOiBFdmVudE1hbmFnZXI7XG5cbiAgICAvKipcbiAgICAgKiBBcHAgTG9jYWxlXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGFwcExvY2FsZTogYW55O1xuXG4gICAgLyoqXG4gICAgICogU3R5bGUgY2hhbmdlIHN1YmplY3QgYW5kIG9ic2VydmFibGVcbiAgICAgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IHN0eWxlQ2hhbmdlID0gbmV3IFJlcGxheVN1YmplY3QoKTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGNoYW5nZSBzdWJqZWN0IGFuZCBvYnNlcnZhYmxlXG4gICAgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBwcm9wZXJ0eUNoYW5nZSA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgICAvKipcbiAgICAgKiBPbiBSZWFkeSBTdGF0ZSBjaGFuZ2Ugc3ViamVjdCBhbmQgb2JzZXJ2YWJsZVxuICAgICAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVhZHlTdGF0ZSA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgICAvKipcbiAgICAgKiBDb21wb25lbnQgZGVzdHJveSBzdWJqZWN0IGFuZCBvYnNlcnZhYmxlXG4gICAgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95ID0gbmV3IFN1YmplY3QoKTtcblxuICAgIC8qKlxuICAgICAqIE1hcCBvZiBldmVudCBoYW5kbGVyIGNhbGxiYWNrc1xuICAgICAqL1xuICAgIHByaXZhdGUgZXZlbnRIYW5kbGVycyA9IG5ldyBNYXA8c3RyaW5nLCB7Y2FsbGJhY2s6IEZ1bmN0aW9uLCBsb2NhbHM6IGFueX0+KCk7XG5cbiAgICAvKipcbiAgICAgKiBjb250ZXh0IG9mIHRoZSB3aWRnZXRcbiAgICAgKiB3aGVuIHRoZSB3aWRnZXQgaXMgcHJlc2V0IGluc2lkZSBhIHJlcGVhdGVyIHRoaXMgY29udGV4dCB3aWxsIGhhdmUgdGhlIHJlcGVhdGVyIHJlbGF0ZWQgcHJvcGVydGllc1xuICAgICAqL1xuICAgIHB1YmxpYyBjb250ZXh0OiBhbnk7XG5cbiAgICAvKipcbiAgICAgKiBJbml0aWFsIHN0YXRlIG9mIHRoZSB3aWRnZXQuXG4gICAgICogV2lsbCBiZSB1bmRlZmluZWQgb25jZSB0aGUgaW5pdGlhbCBwcm9wZXJ0aWVzIGFyZSBzZXQgb24gdG8gdGhlIGNvbXBvbmVudFxuICAgICAqL1xuICAgIHByaXZhdGUgaW5pdFN0YXRlOiBNYXA8c3RyaW5nLCBhbnk+O1xuXG4gICAgLyoqXG4gICAgICogSW50ZXJuYWwgZmxhZyB0byBkZXRlcm1pbmUgd2hldGhlciB0byB3YWl0IGZvciB0aGUgd2lkZ2V0IGluaXRpYWxpemF0aW9uIG9yIG5vdFxuICAgICAqIElmIHRoZSBpbml0UHJvbWlzZSBpcyBwcm92aWRlZCBpbiB0aGUgY29uc3RydWN0aW9uIHdhaXQgdGlsbCB0aGUgcHJvbWlzZSBpcyByZXNvbHZlZFxuICAgICAqIElmIHRoZSBpbml0UHJvbWlzZSBpcyBub3QgcHJvdmlkZWQgcHJvY2VlZCB3aXRoIHRoZSBpbml0aWFsaXphdGlvbiwgd2hpY2ggaXMgdGhlIGRlZmF1bHQgYmVoYXZpb3IuXG4gICAgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBkZWxheWVkSW5pdDogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIERpc3BsYXkgdHlwZSBvZiB0aGUgY29tcG9uZW50LiBlZywgYmxvY2soRGVmYXVsdCksIGlubGluZS1ibG9jaywgaW5saW5lIGV0Y1xuICAgICAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZGlzcGxheVR5cGU6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIEhvbGRzIHRoZSBldmVudCByZWdpc3RyYXRpb24gZnVuY3Rpb25zLlxuICAgICAqIHRoZXNlIGZ1bmN0aW9ucyBuZWVkcyB0byBiZSBleGVjdXRlZCBhZnRlciBvblZpZXdJbml0XG4gICAgICovXG4gICAgcHJpdmF0ZSB0b0JlU2V0dXBFdmVudHNRdWV1ZTogQXJyYXk8RnVuY3Rpb24+ID0gW107XG5cbiAgICBwdWJsaWMgX19jbG9uZWFibGVfXyA9IGZhbHNlO1xuXG4gICAgcHVibGljIHdpZGdldFByb3BzOiBNYXA8c3RyaW5nLCBhbnk+O1xuXG4gICAgcHJpdmF0ZSAkYXR0cnMgPSBuZXcgTWFwPHN0cmluZywgc3RyaW5nPigpO1xuXG4gICAgcHJpdmF0ZSBpc011dGVkID0gZmFsc2U7XG5cbiAgICBwdWJsaWMgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZjtcbiAgICBwdWJsaWMgdmlld1BhcmVudEFwcDogQXBwO1xuICAgIC8qKlxuICAgICAqIFRvIGF2b2lkIHJlLXJlbmRlcmluZyBvZiB3aWRnZXQsIHBhc3NpbmcgdW5pcXVlIGlkIGFzIGNvbnRleHRLZXkgdG8gY3JlYXRlQ3VzdG9tSW5qZWN0b3JcbiAgICAgKiAoZm9yIExpc3QsIER5bmFtaWMgVGFicywgQWNjb3JkaW9uLCBOYXYsIENhcm91c2VsKVxuICAgICAqL1xuICAgIHB1YmxpYyB0cmFja0lkOiBzdHJpbmc7XG5cbiAgICBjdXN0b21XaWRnZXRTdWJUeXBlOiBzdHJpbmc7XG5cbiAgICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoXG4gICAgICAgIHByb3RlY3RlZCBpbmo6IEluamVjdG9yLFxuICAgICAgICBASW5qZWN0KFdpZGdldENvbmZpZykgY29uZmlnOiBJV2lkZ2V0Q29uZmlnLFxuICAgICAgICBASW5qZWN0KCdFWFBMSUNJVF9DT05URVhUJykgQE9wdGlvbmFsKCkgZXhwbGljaXRDb250ZXh0PzogYW55LFxuICAgICAgICBpbml0UHJvbWlzZT86IFByb21pc2U8YW55PiAvLyBQcm9taXNlIG9uIHdoaWNoIHRoZSBpbml0aWFsaXphdGlvbiBoYXMgdG8gd2FpdFxuICAgICkge1xuICAgICAgICBjb25zdCBlbGVtZW50UmVmID0gaW5qLmdldChFbGVtZW50UmVmKTtcbiAgICAgICAgdGhpcy5uYXRpdmVFbGVtZW50ID0gZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgICAgICAvL21ha2luZyB0aGUgY29kZSBjb21wYXRpYmxlIGluIGJvdGggdGhlIEpJVCBhbmQgQU9UIG1vZGVzXG4gICAgICAgIHRoaXMudmlld1BhcmVudEFwcCA9IGluaiA/IGluai5nZXQoQXBwKSA6IGluamVjdChBcHApO1xuICAgICAgICB0aGlzLndpZGdldFR5cGUgPSBjb25maWcud2lkZ2V0VHlwZTtcbiAgICAgICAgdGhpcy53aWRnZXRTdWJUeXBlID0gY29uZmlnLndpZGdldFN1YlR5cGUgfHwgY29uZmlnLndpZGdldFR5cGU7XG4gICAgICAgIHRoaXMudmlld0NvbnRhaW5lclJlZiA9IGluai5nZXQoVmlld0NvbnRhaW5lclJlZik7XG4gICAgICAgIC8vIHRoaXMudmlld1BhcmVudCA9IChpbmogYXMgYW55KS52aWV3LmNvbXBvbmVudDtcbiAgICAgICAgLy8gdGhpcy52aWV3UGFyZW50ID0gKHRoaXMudmlld0NvbnRhaW5lclJlZiBhcyBhbnkpLnBhcmVudEluamVjdG9yLl9sVmlld1s4XTtcbiAgICAgICAgLy8gdGhpcy52aWV3UGFyZW50ID0gX3ZpZXdQYXJlbnQgfHwgKHRoaXMudmlld0NvbnRhaW5lclJlZiBhcyBhbnkpLnBhcmVudEluamVjdG9yLl9sVmlld1s4XTtcbiAgICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9ibG9iL21haW4vcGFja2FnZXMvY29yZS9zcmMvcmVuZGVyMy9pbnRlcmZhY2VzL3ZpZXcudHNcblxuICAgICAgICBsZXQgbFZpZXcgPSAodGhpcy5pbmogYXMgYW55KS5fbFZpZXc7XG4gICAgICAgIHRoaXMudmlld1BhcmVudCA9IGZpbmRQYXJlbnQobFZpZXcsIHRoaXMudmlld1BhcmVudEFwcCk7XG4gICAgICAgIC8vY29uc29sZS5sb2coXCItLS0qKioqKioqKioqKioqLS1jb250ZXh0LS0qKioqKioqKioqKioqLS0tXCIsIGxWaWV3WzhdKTtcbiAgICAgICAgdGhpcy5jb250ZXh0ID0gKHRoaXMuaW5qIGFzIGFueSkuX2xWaWV3WzhdO1xuXG4gICAgICAgIHRoaXMuZGlzcGxheVR5cGUgPSBjb25maWcuZGlzcGxheVR5cGUgfHwgRElTUExBWV9UWVBFLkJMT0NLO1xuICAgICAgICAvLyB0aGlzLmNvbnRleHQgPSAoaW5qIGFzIGFueSkudmlldy5jb250ZXh0O1xuICAgICAgICAvLyB0aGlzLmNvbnRleHQgPSAodGhpcy52aWV3Q29udGFpbmVyUmVmIGFzIGFueSkuX2hvc3RMVmlldy5kZWJ1Zy5jb250ZXh0O1xuICAgICAgICAvLyBsZXQgaGFzSW1wbGljaXRDb250ZXh0ID0gKHRoaXMudmlld0NvbnRhaW5lclJlZiBhcyBhbnkpLl9ob3N0TFZpZXcuZmluZCh0ID0+IHQgJiYgISF0LiRpbXBsaWNpdCk7XG4gICAgICAgIC8vIHdoZW4gJGltcGxpY2l0IGlzIG5vdCBhdmFpbGFibGUsIHRoaXMgb2JqZWN0IGNvbnRhaW5zIHNvbWUgbmdGb3IgY29udGV4dCBvciBsaXN0aXRlbSBjb250ZXh0IG9mIHRoZSB3aWRnZXQgdGhlblxuICAgICAgICAvLyB3ZSB1c2UgdGhlIGRpcmVjdCBwYXJlbnQgZm9yIGV4YW1wbGU6IG5hdiBjb21wb25lbnQgaXMgdGhlIHBhcmVudCBmb3IgYW5jaG9yID0+IGFuY2hvciBnZXRzIHZpZXdQYXJlbnQgYXMgTmF2XG4gICAgICAgIC8vIEluIG90aGVyIGNhc2UsIHdoZXJlIHdlIGhhdmUgaW1wbGljaXRDb250ZXh0IHRoZXJlIHdlIGNhbiBtYWtlIHVzZSBvZiBwYWdlL2FwcCBsZXZlbCBjb250ZXh0IGhlbmNlIHZpZXdQYXJlbnQudmlld1BhcmVudCB0byBnZXQgcGFnZSBsZXZlbCBjb250ZXh0XG4gICAgICAgIC8qaWYgKGhhc0ltcGxpY2l0Q29udGV4dCAmJiB0aGlzLnZpZXdQYXJlbnQudmlld1BhcmVudCkge1xuICAgICAgICAgICAgaWYgKHRoaXMudmlld1BhcmVudC53aWRnZXRUeXBlICE9PSAnd20tY2FyZCcgJiYgdGhpcy52aWV3UGFyZW50LndpZGdldFR5cGUgIT09ICd3bS1pZnJhbWVkaWFsb2cnXG4gICAgICAgICAgICAgICAgJiYgdGhpcy52aWV3UGFyZW50LndpZGdldFR5cGUgIT09ICd3bS1wYXJ0aWFsZGlhbG9nJykge1xuICAgICAgICAgICAgICAgIHRoaXMudmlld1BhcmVudCA9IHRoaXMudmlld1BhcmVudC52aWV3UGFyZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmICghaGFzSW1wbGljaXRDb250ZXh0IHx8ICghdGhpcy52aWV3UGFyZW50LndpZGdldFR5cGUpKSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRleHQgPSAodGhpcy52aWV3Q29udGFpbmVyUmVmIGFzIGFueSkuX2hvc3RMVmlldy5maW5kKHQgPT4gdCAmJiAhIXQuJGltcGxpY2l0KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuY29udGV4dCA9ICh0aGlzLnZpZXdDb250YWluZXJSZWYgYXMgYW55KS5wYXJlbnRJbmplY3Rvci5fbFZpZXdbOF07XG4gICAgICAgIH0qL1xuXG4gICAgICAgIC8qaWYoX3ZpZXdQYXJlbnQgJiYgIWhhc0ltcGxpY2l0Q29udGV4dCkge1xuICAgICAgICAgICAgdGhpcy5jb250ZXh0ID0gKHRoaXMudmlld0NvbnRhaW5lclJlZiBhcyBhbnkpLl9ob3N0TFZpZXdbOF07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRleHQgPSBoYXNJbXBsaWNpdENvbnRleHQ7XG4gICAgICAgIH0qL1xuICAgICAgICAvLyBpZiAoWyd3bS1saXN0JywgJ3dtLW5hdiddLmluY2x1ZGVzKHRoaXMudmlld1BhcmVudC53aWRnZXRUeXBlKSB8fCBbJ3dtLWNhcm91c2VsLXRlbXBsYXRlJywgJ3dtLWNhcmQnXS5pbmNsdWRlcyh0aGlzLndpZGdldFR5cGUpKSB7XG4gICAgICAgIC8vICAgICB0aGlzLmNvbnRleHQgPSAodGhpcy52aWV3Q29udGFpbmVyUmVmIGFzIGFueSkuX2hvc3RMVmlldy5kZWJ1Zy5jb250ZXh0O1xuICAgICAgICAvLyB9IGVsc2Uge1xuICAgICAgICAvLyAgICAgdGhpcy5jb250ZXh0ID0gKHRoaXMudmlld0NvbnRhaW5lclJlZiBhcyBhbnkpLnBhcmVudEluamVjdG9yLl9sVmlld1s4XTtcbiAgICAgICAgLy8gfVxuICAgICAgICB0aGlzLndpZGdldCA9IHRoaXMuY3JlYXRlUHJveHkoKTtcbiAgICAgICAgdGhpcy5ldmVudE1hbmFnZXIgPSBpbmouZ2V0KEV2ZW50TWFuYWdlcik7XG4gICAgICAgICh0aGlzLm5hdGl2ZUVsZW1lbnQgYXMgYW55KS53aWRnZXQgPSB0aGlzLndpZGdldDtcblxuICAgICAgICB0aGlzLmFwcExvY2FsZSA9IGluai5nZXQoQXBwKS5hcHBMb2NhbGUgfHwge307XG5cbiAgICAgICAgdGhpcy5pbml0Q29udGV4dCgpO1xuXG4gICAgICAgIGlmIChjb25maWcuaG9zdENsYXNzKSB7XG4gICAgICAgICAgICBhZGRDbGFzcyh0aGlzLm5hdGl2ZUVsZW1lbnQsIGNvbmZpZy5ob3N0Q2xhc3MpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy53aWRnZXRJZCA9IHRoaXMuZ2VuZXJhdGVXaWRnZXRJZCgpO1xuICAgICAgICB0aGlzLnRyYWNrSWQgPSB0aGlzLmdlbmVyYXRlV2lkZ2V0SWQoKTtcbiAgICAgICAgc2V0QXR0cih0aGlzLm5hdGl2ZUVsZW1lbnQsICd3aWRnZXQtaWQnLCB0aGlzLndpZGdldElkLCB0cnVlKTtcblxuICAgICAgICAvLyByZWdpc3RlciBkZWZhdWx0IHByb3BlcnR5IGNoYW5nZSBoYW5kbGVyIGFuZCBzdHlsZSBjaGFuZ2UgaGFuZGxlclxuICAgICAgICB0aGlzLnJlZ2lzdGVyU3R5bGVDaGFuZ2VMaXN0ZW5lcih0aGlzLm9uU3R5bGVDaGFuZ2UsIHRoaXMpO1xuICAgICAgICB0aGlzLnJlZ2lzdGVyUHJvcGVydHlDaGFuZ2VMaXN0ZW5lcih0aGlzLm9uUHJvcGVydHlDaGFuZ2UsIHRoaXMpO1xuXG4gICAgICAgIC8vIGlmIHRoZSBpbml0UHJvbWlzZSBpcyBwcm92aWRlZCwgd2FpdCB0aWxsIHRoZSBwcm9taXNlIGlzIHJlc29sdmVkIHRvIHByb2NlZWQgd2l0aCB0aGUgd2lkZ2V0IGluaXRpYWxpemF0aW9uXG4gICAgICAgIGlmICghaW5pdFByb21pc2UpIHtcbiAgICAgICAgICAgIHRoaXMuaW5pdFdpZGdldCgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5kZWxheWVkSW5pdCA9IHRydWU7XG4gICAgICAgICAgICBpbml0UHJvbWlzZS50aGVuKChyZXNvbHZlRm4pID0+IHtcbiAgICAgICAgICAgICAgICBsZXQgZm9ybUZpZWxkQ1cgPSB0aGlzLndpZGdldFN1YlR5cGUgPT09ICd3bS1mb3JtLWZpZWxkLWN1c3RvbS13aWRnZXQnLFxuICAgICAgICAgICAgICAgICAgICBjdyAgICAgICAgICA9IHRoaXMud2lkZ2V0U3ViVHlwZS5zdGFydHNXaXRoKCd3bS1jdXN0b20tJyk7XG4gICAgICAgICAgICAgICAgaWYoIGZvcm1GaWVsZENXIHx8IGN3ICkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmN1c3RvbVdpZGdldFN1YlR5cGUgPSBmb3JtRmllbGRDVyA/ICd3bS1mb3JtLWZpZWxkLScgKyBsYXN0KHRoaXNbXCJmb3JtV2lkZ2V0XCJdLmNvbmZpZy53aWRnZXRUeXBlLnNwbGl0KCctJykpIDogdGhpc1tcImNvbmZpZ1wiXS53aWRnZXRUeXBlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHRoaXMuaW5pdFdpZGdldCgpO1xuICAgICAgICAgICAgICAgIHRoaXMuc2V0SW5pdFByb3BzKCk7XG4gICAgICAgICAgICAgICAgcmVzb2x2ZUZuICYmIHJlc29sdmVGbigpXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBpZihleHBsaWNpdENvbnRleHQpIHtcbiAgICAgICAgICAgIGV4dGVuZCh0aGlzLmNvbnRleHQsIGV4cGxpY2l0Q29udGV4dCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0TmF0aXZlRWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFdpZGdldFR5cGUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMud2lkZ2V0VHlwZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0V2lkZ2V0U3ViVHlwZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy53aWRnZXRTdWJUeXBlO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRXaWRnZXQoKTogYW55IHtcbiAgICAgICAgcmV0dXJuIHRoaXMud2lkZ2V0O1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXRQcm9wZXJ0eShwcm9wTmFtZSwgcHJvcFZhbHVlKSB7XG4gICAgICAgIHRoaXMud2lkZ2V0W3Byb3BOYW1lXSA9IHByb3BWYWx1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0Vmlld1BhcmVudCgpOiBhbnkge1xuICAgICAgICByZXR1cm4gdGhpcy52aWV3UGFyZW50O1xuICAgIH1cblxuICAgIHB1YmxpYyBub3RpZnlTdHlsZUNoYW5nZShrZXk6IHN0cmluZywgbnY6IGFueSwgb3Y6IGFueSkge1xuICAgICAgICB0aGlzLnN0eWxlQ2hhbmdlLm5leHQoe2tleSwgbnYsIG92fSk7XG4gICAgfVxuXG4gICAgcHVibGljIG5vdGlmeVByb3BlcnR5Q2hhbmdlKGtleTogc3RyaW5nLCBudjogYW55LCBvdjogYW55KSB7XG4gICAgICAgIHRoaXMucHJvcGVydHlDaGFuZ2UubmV4dCh7a2V5LCBudiwgb3Z9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVnaXN0ZXJTdHlsZUNoYW5nZUxpc3RlbmVyKGZuOiBDaGFuZ2VMaXN0ZW5lciwgY3R4PzogYW55KSB7XG4gICAgICAgIGlmIChjdHgpIHtcbiAgICAgICAgICAgIGZuID0gZm4uYmluZChjdHgpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuc3R5bGVDaGFuZ2Uuc3Vic2NyaWJlKCh7a2V5LCBudiwgb3Z9KSA9PiBmbihrZXksIG52LCBvdikpO1xuICAgIH1cblxuICAgIHB1YmxpYyByZWdpc3RlclJlYWR5U3RhdGVMaXN0ZW5lcihmbjogRnVuY3Rpb24sIGN0eD86IGFueSkge1xuICAgICAgICBpZiAoY3R4KSB7XG4gICAgICAgICAgICBmbiA9IGZuLmJpbmQoY3R4KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5yZWFkeVN0YXRlLmlzU3RvcHBlZCkge1xuICAgICAgICAgICAgZm4oKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnJlYWR5U3RhdGUuc3Vic2NyaWJlKCgpID0+IGZuKCkpO1xuICAgIH1cblxuICAgIHB1YmxpYyByZWdpc3RlclByb3BlcnR5Q2hhbmdlTGlzdGVuZXIoZm46IENoYW5nZUxpc3RlbmVyLCBjdHg/OiBhbnkpIHtcbiAgICAgICAgaWYgKGN0eCkge1xuICAgICAgICAgICAgZm4gPSBmbi5iaW5kKGN0eCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5wcm9wZXJ0eUNoYW5nZS5zdWJzY3JpYmUoKHtrZXksIG52LCBvdn0pID0+IGZuKGtleSwgbnYsIG92KSk7XG4gICAgfVxuXG4gICAgcHVibGljIHJlZ2lzdGVyRGVzdHJveUxpc3RlbmVyKGZuOiBGdW5jdGlvbiwgY3R4PzogYW55KSB7XG4gICAgICAgIGlmICghZm4pIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY3R4KSB7XG4gICAgICAgICAgICBmbiA9IGZuLmJpbmQoY3R4KTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmRlc3Ryb3kuc3Vic2NyaWJlKCgpID0+IHt9LCAoKSA9PiB7fSwgKCkgPT4ge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBpZiAoZm4gJiYgdHlwZW9mIGZuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgIGZuKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgICAgIC8vIFNpbGVudGx5IGhhbmRsZSBjbGVhbnVwIGVycm9ycyB0byBwcmV2ZW50IHRlc3QgZmFpbHVyZXNcbiAgICAgICAgICAgICAgICAvLyBUaGVzZSBhcmUgdHlwaWNhbGx5IG5vbi1jcml0aWNhbCBjbGVhbnVwIGlzc3VlcyBsaWtlOlxuICAgICAgICAgICAgICAgIC8vIC0gU3Vic2NyaXB0aW9ucyBhbHJlYWR5IHVuc3Vic2NyaWJlZFxuICAgICAgICAgICAgICAgIC8vIC0gTnVsbCByZWZlcmVuY2VzIGR1cmluZyBjbGVhbnVwXG4gICAgICAgICAgICAgICAgLy8gLSBDb21wb25lbnRzIGFscmVhZHkgZGVzdHJveWVkXG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXREaXNwbGF5VHlwZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5kaXNwbGF5VHlwZTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgY3JlYXRlUHJveHkoKTogYW55IHtcbiAgICAgICAgcmV0dXJuIFdpZGdldFByb3h5UHJvdmlkZXIuY3JlYXRlKHRoaXMsIHRoaXMud2lkZ2V0U3ViVHlwZSwgZ2V0V2lkZ2V0UHJvcHNCeVR5cGUodGhpcy53aWRnZXRTdWJUeXBlKSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGluaXRDb250ZXh0KCkge1xuICAgICAgICAvLyBjb25zdCBjb250ZXh0ID0gKHRoaXMuaW5qIGFzIGFueSkudmlldy5jb250ZXh0O1xuICAgICAgICBjb25zdCBjb250ZXh0ID0gdGhpcy5jb250ZXh0IHx8IHt9O1xuXG4gICAgICAgIGNvbnN0IHBhcmVudENvbnRleHRzID0gdGhpcy5pbmouZ2V0KENvbnRleHQsIHt9KTtcblxuICAgICAgICAvLyBhc3NpZ24gdGhlIGNvbnRleHQgcHJvcGVydHkgYWNjb3JkaW5nbHlcbiAgICAgICAgaWYgKHRoaXMudmlld1BhcmVudCAhPT0gY29udGV4dCkge1xuICAgICAgICAgICAgdGhpcy5jb250ZXh0ID0gY29udGV4dDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuY29udGV4dCA9IHt9O1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHBhcmVudENvbnRleHRzKSB7XG4gICAgICAgICAgICBsZXQgcGFyZW50Q29udGV4dE9iaiA9IHt9O1xuICAgICAgICAgICAgaWYgKGlzQXJyYXkocGFyZW50Q29udGV4dHMpKSB7XG4gICAgICAgICAgICAgICAgZm9yRWFjaChwYXJlbnRDb250ZXh0cywgKGNvbnRleHRPYmopID0+IHtcbiAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmFzc2lnbihwYXJlbnRDb250ZXh0T2JqLCBjb250ZXh0T2JqKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgcGFyZW50Q29udGV4dE9iaiA9IHBhcmVudENvbnRleHRzO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5jb250ZXh0ID0gT2JqZWN0LmFzc2lnbih7fSwgcGFyZW50Q29udGV4dE9iaiwgdGhpcy5jb250ZXh0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIHNldCB0aGUgdmFsdWUgb24gdGhlIHByb3h5IG9iamVjdCBpZSwgd2lkZ2V0XG4gICAgICogc2V0dGluZyB0aGUgcHJvcGVydHkgb24gdGhlIHByb3h5IHdpbGwgaW52b2tlIHRoZSBjaGFuZ2UgbGlzdGVuZXJzXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IGtleVxuICAgICAqIEBwYXJhbSB2YWx1ZVxuICAgICAqL1xuICAgIHB1YmxpYyBzZXRXaWRnZXRQcm9wZXJ0eShrZXk6IHN0cmluZywgdmFsdWU6IGFueSkge1xuICAgICAgICB0aGlzLndpZGdldFtrZXldID0gdmFsdWU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEF0dHIoYXR0ck5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLiRhdHRycy5nZXQoYXR0ck5hbWUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIHJldHVybnMgYXBwIGluc3RhbmNlXG4gICAgICogQHJldHVybnMge0FwcH1cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0QXBwSW5zdGFuY2UoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmluai5nZXQoQXBwKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZW5lcmF0ZXMgYSB1bmlxdWUgaWRcbiAgICAgKiBEZWZhdWx0IHBhdHRlcm4gaXMgYHdpZGdldC1pZC0ke2lkfWBcbiAgICAgKiBDb21wb25lbnRzIGNhbiBvdmVycmlkZSB0aGlzIG1ldGhvZCB0byBnZW5lcmF0ZSBhIGRpZmZlcmVudCBpZCBlZywgYmFyLWNoYXJ0LTFcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgZ2VuZXJhdGVXaWRnZXRJZCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gd2lkZ2V0SWRHZW5lcmF0b3IubmV4dFVpZCgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEhhbmRsZXMgdGhlIGNvbW1vbiBmdW5jdGlvbmFsaXR5IGFjcm9zcyB0aGUgY29tcG9uZW50c1xuICAgICAqIGVnLFxuICAgICAqICAxLiB2YWx1ZSBvZiB0aGUgY2xhc3MgcHJvcGVydHkgd2lsbCBiZSBhcHBsaWVkIG9uIHRoZSBob3N0IGVsZW1lbnRcbiAgICAgKiAgMi4gYmFzZWQgb24gdGhlIHZhbHVlIG9mIHNob3cgcHJvcGVydHkgY29tcG9uZW50IGlzIHNob3duL2hpZGRlblxuICAgICAqXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IGtleVxuICAgICAqIEBwYXJhbSBudlxuICAgICAqIEBwYXJhbSBvdlxuICAgICAqL1xuICAgIHByb3RlY3RlZCBvblByb3BlcnR5Q2hhbmdlKGtleTogc3RyaW5nLCBudjogYW55LCBvdj86IGFueSkge1xuICAgICAgICBpZiAoa2V5ID09PSAnc2hvdycpIHtcbiAgICAgICAgICAgIHRoaXMubmF0aXZlRWxlbWVudC5oaWRkZW4gPSAhbnY7XG4gICAgICAgIH0gZWxzZSBpZiAoa2V5ID09PSAnaGludCcpIHtcbiAgICAgICAgICAgIHNldEF0dHIodGhpcy5uYXRpdmVFbGVtZW50LCAndGl0bGUnLCBudik7XG4gICAgICAgIH0gZWxzZSBpZiAoa2V5ID09PSAnY2xhc3MnKSB7XG4gICAgICAgICAgICBzd2l0Y2hDbGFzcyh0aGlzLm5hdGl2ZUVsZW1lbnQsIG52LCBvdik7XG4gICAgICAgIH0gZWxzZSBpZiAoa2V5ID09PSAnbmFtZScgfHwga2V5ID09PSAndGFiaW5kZXgnKSB7XG4gICAgICAgICAgICBzZXRBdHRyKHRoaXMubmF0aXZlRWxlbWVudCwga2V5LCBudik7XG4gICAgICAgICAgICBpZiAoa2V5ID09PSAnbmFtZScgJiYgbnYpIHtcbiAgICAgICAgICAgICAgICByZW5hbWVXaWRnZXQodGhpcy52aWV3UGFyZW50LCB0aGlzLndpZGdldCwgbnYsIG92KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmIChrZXkgPT09ICdjb25kaXRpb25hbGNsYXNzJykge1xuICAgICAgICAgICAgLy8gdXBkYXRlIGNsYXNzZXMgaWYgb2xkIGFuZCBudiB2YWx1ZSBhcmUgZGlmZmVyZW50XG4gICAgICAgICAgICB1cGRhdGVDbGFzc2VzKG52LnRvQWRkLCBudi50b1JlbW92ZSwgdGhpcy5uYXRpdmVFbGVtZW50KTtcbiAgICAgICAgfSBlbHNlICBpZiAoa2V5ID09PSAnYXV0b3BsYXknKSB7XG4gICAgICAgICAgICBjb25zdCB0YWdOYW1lID0gdGhpcy53aWRnZXRUeXBlID09PSAnd20tYXVkaW8nID8gJ2F1ZGlvJyA6ICd2aWRlbyc7XG4gICAgICAgICAgICAvLyBUcmlnZ2VyIG1lZGlhKGF1ZGlvL3ZpZGVvKSBlbGVtZW50IGxvYWQgbWV0aG9kIGFmdGVyIGNoYW5naW5nIGF1dG9wbGF5IHByb3BlcnR5XG4gICAgICAgICAgICB0aGlzLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3Rvcih0YWdOYW1lKS5sb2FkKCk7XG4gICAgICAgIH0gZWxzZSBpZiAoa2V5ID09PSAnY29uZGl0aW9uYWxzdHlsZScpIHtcbiAgICAgICAgICAgIC8vIHVwZGF0ZSBzdHlsZXMgaWYgb2xkIGFuZCBudiB2YWx1ZSBhcmUgZGlmZmVyZW50XG4gICAgICAgICAgICB1cGRhdGVTdHlsZXMobnYsIG92LCB0aGlzLm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgICB9IGVsc2UgaWYgKGtleSA9PT0gJ2FuaW1hdGlvbicpIHtcbiAgICAgICAgICAgIC8vIHVwZGF0ZSBzdHlsZXMgaWYgb2xkIGFuZCBudiB2YWx1ZSBhcmUgZGlmZmVyZW50XG4gICAgICAgICAgICBhZGRDbGFzcyh0aGlzLm5hdGl2ZUVsZW1lbnQsIFwiYW5pbWF0ZWQgXCIgKyBudik7XG4gICAgICAgIH0gIGVsc2UgaWYgKGtleSA9PT0gJ2Rpc2FibGVkJykge1xuICAgICAgICAgICAgLy8gV01TLTE5MzIxOiBJbiBJRSwgd2lkZ2V0IGlzIGluIGRpc2FibGVkIHN0YXRlIHdoZW4gZGlzYWJsZWQ9XCJmYWxzZVwiIGF0dHJpYnV0ZSBpcyBwcmVzZW50XG4gICAgICAgICAgICAobnYgPT09IHRydWUpID8gc2V0QXR0cih0aGlzLm5hdGl2ZUVsZW1lbnQsICdkaXNhYmxlZCcsICd0cnVlJywgdHJ1ZSkgOiByZW1vdmVBdHRyKHRoaXMubmF0aXZlRWxlbWVudCwgJ2Rpc2FibGVkJywgdHJ1ZSk7XG4gICAgICAgIH0gZWxzZSBpZiAoa2V5ID09PSBcImF1dG9mb2N1c1wiKSB7XG4gICAgICAgICAgICBpZiAobnYpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZvY3VzKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBEZWZhdWx0IHN0eWxlIGNoYW5nZSBoYW5kbGVyXG4gICAgICovXG4gICAgcHJvdGVjdGVkIG9uU3R5bGVDaGFuZ2Uoazogc3RyaW5nLCBudjogYW55LCBvdj86IGFueSkge31cblxuICAgIC8qKlxuICAgICAqIFJlZ2lzdGVyIHRoZSB3aWRnZXQgd2l0aCB0aGUgd2lkZ2V0UmVnaXN0cnlcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVnaXN0ZXJXaWRnZXQod2lkZ2V0TmFtZTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMucmVnaXN0ZXJEZXN0cm95TGlzdGVuZXIocmVnaXN0ZXIodGhpcy53aWRnZXQsIHRoaXMudmlld1BhcmVudCwgdGhpcy53aWRnZXRJZCwgd2lkZ2V0TmFtZSkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIG92ZXJyaWRlIHRoZVxuICAgICAqL1xuICAgIHByb3RlY3RlZCBnZXRNYXBwZWRFdmVudE5hbWUoZXZlbnROYW1lKSB7XG4gICAgICAgIHJldHVybiBFVkVOVFNfTUFQLmdldChldmVudE5hbWUpIHx8IGV2ZW50TmFtZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBpbnZva2UgdGhlIGV2ZW50IGhhbmRsZXJcbiAgICAgKiBDb21wb25lbnRzIGNhbiBvdmVycmlkZSB0aGlzIG1ldGhvZCB0byBleGVjdXRlIGN1c3RvbSBsb2dpYyBiZWZvcmUgaW52b2tpbmcgdGhlIHVzZXIgY2FsbGJhY2tcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgaGFuZGxlRXZlbnQobm9kZTogSFRNTEVsZW1lbnQsIGV2ZW50TmFtZTogc3RyaW5nLCBldmVudENhbGxiYWNrOiBGdW5jdGlvbiwgbG9jYWxzOiBhbnksIG1ldGE/OiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5ldmVudE1hbmFnZXIuYWRkRXZlbnRMaXN0ZW5lcihcbiAgICAgICAgICAgIG5vZGUsXG4gICAgICAgICAgICBldmVudE5hbWUsXG4gICAgICAgICAgICBlID0+IHtcbiAgICAgICAgICAgICAgICBsb2NhbHMuJGV2ZW50ID0gZTtcbiAgICAgICAgICAgICAgICBpZiAobWV0YSA9PT0gJ2RlbGF5ZWQnKSB7XG4gICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiBldmVudENhbGxiYWNrKCksIDE1MCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGV2ZW50Q2FsbGJhY2soKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogcGFyc2UgdGhlIGV2ZW50IGV4cHJlc3Npb24gYW5kIHNhdmUgcmVmZXJlbmNlIHRvIHRoZSBmdW5jdGlvbiBpbnNpZGUgZXZlbnRIYW5kbGVycyBtYXBcbiAgICAgKiBJZiB0aGUgY29tcG9uZW50IHByb3ZpZGVzIGEgb3ZlcnJpZGUgZm9yIGFuIGV2ZW50IHRocm91Z2ggQEV2ZW50IGRlY29yYXRvciBpbnZva2UgdGhhdFxuICAgICAqIGVsc2UgaW52b2tlIHRoZSByZXNvbHZlZCBmdW5jdGlvblxuICAgICAqXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IGV2ZW50TmFtZVxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBleHByXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHByb2Nlc3NFdmVudEF0dHIoZXZlbnROYW1lOiBzdHJpbmcsIGV4cHI6IHN0cmluZywgbWV0YT86IHN0cmluZywgY2hpbGQ/OiBDaGlsZCkge1xuICAgICAgICBjb25zdCBmbiA9ICRwYXJzZUV2ZW50KGV4cHIpO1xuICAgICAgICBjb25zdCBsb2NhbHMgPSB0aGlzLmNvbnRleHQ7XG4gICAgICAgIGxvY2Fscy53aWRnZXQgPSBjaGlsZCA/IGNoaWxkLndpZGdldCA6IHRoaXMud2lkZ2V0O1xuICAgICAgICBjb25zdCBib3VuZEZuID0gZm4uYmluZCh1bmRlZmluZWQsIGNoaWxkID8gdGhpcy52aWV3UGFyZW50LnZpZXdQYXJlbnQgOiB0aGlzLnZpZXdQYXJlbnQsIGxvY2Fscyk7XG5cbiAgICAgICAgbGV0IHdpZGdldCAgICAgICAgICA9IGNoaWxkID8gY2hpbGQud2lkZ2V0IDogdGhpcyxcbiAgICAgICAgICAgIG5hdGl2ZUVsZW1lbnQgICA9IGNoaWxkID8gY2hpbGQubmF0aXZlRWxlbWVudCA6IHRoaXMubmF0aXZlRWxlbWVudDtcblxuICAgICAgICBjb25zdCBldmVudENhbGxiYWNrID0gKCkgPT4ge1xuICAgICAgICAgICAgbGV0IGJvdW5kRm5WYWw7XG4gICAgICAgICAgICAkaW52b2tlV2F0Y2hlcnModHJ1ZSk7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGxvY2Fscy4kZXZlbnQgPSBsb2NhbHMuJGV2ZW50IHx8IG5ldyB3aW5kb3cuQ3VzdG9tRXZlbnQoZXZlbnROYW1lKTtcbiAgICAgICAgICAgICAgICAvLyBJZiB0aGUgZXZlbnQgaXMgYm91bmQgZGlyZWN0bHkgdG8gdGhlIHZhcmlhYmxlIHRoZW4gd2UgbmVlZCB0byBpbnRlcm5hbGx5IGhhbmRsZVxuICAgICAgICAgICAgICAgIC8vIHRoZSBwcm9taXNlIHJldHVybmVkIGJ5IHRoZSB2YXJpYWJsZSBjYWxsLlxuICAgICAgICAgICAgICAgIGJvdW5kRm5WYWwgPSBib3VuZEZuKCk7XG4gICAgICAgICAgICAgICAgaWYgKGJvdW5kRm5WYWwgaW5zdGFuY2VvZiBQcm9taXNlKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBib3VuZEZuVmFsLnRoZW4oIHJlc3BvbnNlID0+IHJlc3BvbnNlLCBlcnIgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgd2lkZ2V0TmFtZSA9ICh3aWRnZXQgYXMgYW55KS5uYW1lIHx8IHdpZGdldC53aWRnZXRJZCB8fCAndW5rbm93bic7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGBFcnJvciBpbiBwcm9taXNlIHJldHVybmVkIGJ5IGV2ZW50IGNhbGxiYWNrIFwiJHtldmVudE5hbWV9XCIgb24gd2lkZ2V0IFwiJHt3aWRnZXROYW1lfVwiOmAsIGVycik7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZXJyO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gYm91bmRGblZhbDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgLy8gRW5oYW5jZWQgZXJyb3IgbG9nZ2luZyB3aXRoIGNvbnRleHRcbiAgICAgICAgICAgICAgICBjb25zdCB3aWRnZXROYW1lID0gKHdpZGdldCBhcyBhbnkpLm5hbWUgfHwgd2lkZ2V0LndpZGdldElkIHx8ICd1bmtub3duJztcbiAgICAgICAgICAgICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSBlLm1lc3NhZ2UgfHwgU3RyaW5nKGUpO1xuICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoYEVycm9yIGV4ZWN1dGluZyBldmVudCBjYWxsYmFjayBcIiR7ZXZlbnROYW1lfVwiIG9uIHdpZGdldCBcIiR7d2lkZ2V0TmFtZX1cIjpgLCBlcnJvck1lc3NhZ2UpO1xuICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0V2ZW50IGV4cHJlc3Npb24gY29udGV4dDonLCB7IGV2ZW50TmFtZSwgd2lkZ2V0TmFtZSwgbG9jYWxzIH0pO1xuICAgICAgICAgICAgICAgIC8vIERvbid0IHJlLXRocm93IC0gYWxsb3cgZXhlY3V0aW9uIHRvIGNvbnRpbnVlIChlLmcuLCBuYXZpZ2F0aW9uIHNob3VsZCBzdGlsbCB3b3JrKVxuICAgICAgICAgICAgICAgIC8vIFJldHVybiB1bmRlZmluZWQgdG8gaW5kaWNhdGUgZXJyb3Igd2FzIGhhbmRsZWRcbiAgICAgICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgICBpZihjaGlsZCAmJiAhY2hpbGQud2lkZ2V0LmV2ZW50SGFuZGxlcnMpXG4gICAgICAgICAgICBjaGlsZC53aWRnZXQuZXZlbnRIYW5kbGVycyA9IG5ldyBNYXA8c3RyaW5nLCB7Y2FsbGJhY2s6IEZ1bmN0aW9uLCBsb2NhbHM6IGFueX0+KClcblxuICAgICAgICB3aWRnZXQuZXZlbnRIYW5kbGVycy5zZXQodGhpcy5nZXRNYXBwZWRFdmVudE5hbWUoZXZlbnROYW1lKSwge2NhbGxiYWNrOiBldmVudENhbGxiYWNrLCBsb2NhbHN9KTtcbiAgICAgICAgLy8gcHJlcGVuZCBldmVudE5hbWUgd2l0aCBvbiBhbmQgY29udmVydCBpdCB0byBjYW1lbGNhc2UuXG4gICAgICAgIC8vIGVnLCBcImNsaWNrXCIgLS0tPiBvbkNsaWNrXG4gICAgICAgIGNvbnN0IG9uRXZlbnROYW1lID0gY2FtZWxDYXNlKGBvbi0ke2V2ZW50TmFtZX1gKTtcbiAgICAgICAgLy8gc2F2ZSB0aGUgZXZlbnRDYWxsYmFjayBpbiB3aWRnZXRTY29wZS5cblxuICAgICAgICB3aWRnZXRbb25FdmVudE5hbWVdID0gZXZlbnRDYWxsYmFjaztcblxuICAgICAgICAvLyBldmVudHMgbmVlZHMgdG8gYmUgc2V0dXAgYWZ0ZXIgdmlld0luaXRcbiAgICAgICAgdGhpcy50b0JlU2V0dXBFdmVudHNRdWV1ZS5wdXNoKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlRXZlbnQobmF0aXZlRWxlbWVudCwgdGhpcy5nZXRNYXBwZWRFdmVudE5hbWUoZXZlbnROYW1lKSwgZXZlbnRDYWxsYmFjaywgbG9jYWxzLCBtZXRhKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHJvY2VzcyB0aGUgYm91bmQgcHJvcGVydHlcbiAgICAgKiBSZWdpc3RlciBhIHdhdGNoIG9uIHRoZSBib3VuZCBleHByZXNzaW9uXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHByb2Nlc3NCaW5kQXR0cihwcm9wTmFtZTogc3RyaW5nLCBleHByOiBzdHJpbmcsIGNoaWxkID86IGFueSkge1xuICAgICAgICBpZighY2hpbGQpXG4gICAgICAgICAgICB0aGlzLmluaXRTdGF0ZS5kZWxldGUocHJvcE5hbWUpO1xuICAgICAgICBsZXQgdmlld1BhcmVudCAgPSBjaGlsZCA/IGNoaWxkLndpZGdldC52aWV3UGFyZW50LnZpZXdQYXJlbnQgOiB0aGlzLnZpZXdQYXJlbnQsXG4gICAgICAgICAgICBjb250ZXh0ICAgICA9IGNoaWxkID8gY2hpbGQud2lkZ2V0LmNvbnRleHQgOiB0aGlzLmNvbnRleHQsXG4gICAgICAgICAgICB3aWRnZXQgICAgICA9IGNoaWxkID8gY2hpbGQud2lkZ2V0IDogdGhpcy53aWRnZXQsXG4gICAgICAgICAgICBpc011dGVkICAgICA9IGNoaWxkID8gY2hpbGQud2lkZ2V0LmlzTXV0ZWQgOiB0aGlzLmlzTXV0ZWQsXG4gICAgICAgICAgICB3aWRnZXRQcm9wcyA9IGNoaWxkID8gY2hpbGQud2lkZ2V0LndpZGdldFByb3BzIDogdGhpcy53aWRnZXRQcm9wcyxcbiAgICAgICAgICAgIHdpZGdldElkICAgID0gY2hpbGQgPyBjaGlsZC53aWRnZXQud2lkZ2V0SWQgOiB0aGlzLndpZGdldElkO1xuXG4gICAgICAgIC8vIE9QVElNSVpBVElPTjogQXBwbHkgdGhyb3R0bGluZyBmb3Igbm9uLWNyaXRpY2FsIHByb3BlcnRpZXNcbiAgICAgICAgY29uc3Qgd2F0Y2hDb25maWc6IGFueSA9IHdpZGdldFByb3BzLmdldChwcm9wTmFtZSkgfHwge307XG4gICAgICAgIGNvbnN0IHRocm90dGxlZFByb3BzID0gWydjbGFzcycsICdzdHlsZScsICduZ2NsYXNzJywgJ25nc3R5bGUnXTtcbiAgICAgICAgaWYgKHRocm90dGxlZFByb3BzLmluY2x1ZGVzKHByb3BOYW1lLnRvTG93ZXJDYXNlKCkpKSB7XG4gICAgICAgICAgICB3YXRjaENvbmZpZy50aHJvdHRsZSA9IDEwMDsgLy8gVGhyb3R0bGUgdG8gMTAwbXMgZm9yIHN0eWxlL2NsYXNzIHByb3BlcnRpZXNcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMucmVnaXN0ZXJEZXN0cm95TGlzdGVuZXIoXG4gICAgICAgICAgICAkd2F0Y2goXG4gICAgICAgICAgICAgICAgZXhwcixcbiAgICAgICAgICAgICAgICB2aWV3UGFyZW50LFxuICAgICAgICAgICAgICAgIGNvbnRleHQsXG4gICAgICAgICAgICAgICAgbnYgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZihwcm9wTmFtZS5zdGFydHNXaXRoKCdiYXNlLScpICYmIHdpZGdldC51cGRhdGVEYXRhKVxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkZ2V0LnVwZGF0ZURhdGEocHJvcE5hbWUsIG52KTtcbiAgICAgICAgICAgICAgICAgICAgd2lkZ2V0W3Byb3BOYW1lXSA9IG52XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBnZXRXYXRjaElkZW50aWZpZXIod2lkZ2V0SWQsIHByb3BOYW1lKSxcbiAgICAgICAgICAgICAgICBwcm9wTmFtZSA9PT0gJ2RhdGFzb3VyY2UnLFxuICAgICAgICAgICAgICAgIHdhdGNoQ29uZmlnLFxuICAgICAgICAgICAgICAgICgpID0+IGlzTXV0ZWRcbiAgICAgICAgICAgIClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmUgd2F0Y2ggb24gdGhlIGJvdW5kIHByb3BlcnR5XG4gICAgICovXG4gICAgcHJvdGVjdGVkIHJlbW92ZVByb3BlcnR5QmluZGluZyhwcm9wTmFtZTogc3RyaW5nKSB7XG4gICAgICAgICR1bndhdGNoKGdldFdhdGNoSWRlbnRpZmllcih0aGlzLndpZGdldElkLCBwcm9wTmFtZSkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGludm9rZSB0aGUgZXZlbnQgY2FsbGJhY2sgbWV0aG9kXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IGV2ZW50TmFtZVxuICAgICAqIEBwYXJhbSBleHRyYUxvY2Fsc1xuICAgICAqL1xuICAgIHB1YmxpYyBpbnZva2VFdmVudENhbGxiYWNrKGV2ZW50TmFtZTogc3RyaW5nLCBleHRyYUxvY2Fscz86IGFueSkge1xuICAgICAgICBjb25zdCBjYWxsYmFja0luZm8gPSB0aGlzLmV2ZW50SGFuZGxlcnMuZ2V0KGV2ZW50TmFtZSk7XG4gICAgICAgIGlmIChjYWxsYmFja0luZm8pIHtcbiAgICAgICAgICAgIGNvbnN0IGZuID0gY2FsbGJhY2tJbmZvLmNhbGxiYWNrO1xuICAgICAgICAgICAgY29uc3QgbG9jYWxzID0gY2FsbGJhY2tJbmZvLmxvY2FscyB8fCB7fTtcblxuICAgICAgICAgICAgaWYgKGZuKSB7XG4gICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZuKE9iamVjdC5hc3NpZ24obG9jYWxzLCBleHRyYUxvY2FscykpO1xuICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIExvZyBlcnJvciB3aXRoIGNvbnRleHQgaW5mb3JtYXRpb24gZm9yIGRlYnVnZ2luZ1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB3aWRnZXROYW1lID0gKHRoaXMgYXMgYW55KS5uYW1lIHx8IHRoaXMud2lkZ2V0SWQgfHwgJ3Vua25vd24nO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSBlcnJvcj8ubWVzc2FnZSB8fCBTdHJpbmcoZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGBFcnJvciBleGVjdXRpbmcgZXZlbnQgY2FsbGJhY2sgXCIke2V2ZW50TmFtZX1cIiBvbiB3aWRnZXQgXCIke3dpZGdldE5hbWV9XCI6YCwgZXJyb3JNZXNzYWdlKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcignRnVsbCBlcnJvcjonLCBlcnJvcik7XG4gICAgICAgICAgICAgICAgICAgIC8vIERvbid0IHJlLXRocm93IC0gYWxsb3cgZXhlY3V0aW9uIHRvIGNvbnRpbnVlIChlLmcuLCBuYXZpZ2F0aW9uIHNob3VsZCBzdGlsbCB3b3JrKVxuICAgICAgICAgICAgICAgICAgICAvLyBSZXR1cm4gdW5kZWZpbmVkIHRvIGluZGljYXRlIGVycm9yIHdhcyBoYW5kbGVkXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFByb2Nlc3MgdGhlIGF0dHJpYnV0ZVxuICAgICAqIElmIHRoZSBhdHRyaWJ1dGUgaXMgYW4gZXZlbnQgZXhwcmVzc2lvbiwgZ2VuZXJhdGUgYSBmdW5jdGlvbmFsIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBleHByZXNzaW9uXG4gICAgICogICAgICBhbmQga2VlcCBpbiBldmVudEhhbmRsZXJzXG4gICAgICogSWYgdGhlIGF0dHJpYnV0ZSBpcyBhIGJvdW5kIGV4cHJlc3Npb24sIHJlZ2lzdGVyIGEgd2F0Y2ggb24gdGhlIGV4cHJlc3Npb25cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcHJvY2Vzc0F0dHIoYXR0ck5hbWU6IHN0cmluZywgYXR0clZhbHVlOiBzdHJpbmcsIGNoaWxkPzogQ2hpbGQpIHtcbiAgICAgICAgIC8vIGNvbnNvbGUubG9nKFwiPT09PWF0dHJOYW1lPT09PT1cIiwgYXR0ck5hbWUsIFwiPT09PT10eXBlb2YgYXR0cm5hbWU9PT09PVwiLCB0eXBlb2YgYXR0ck5hbWUsIFwiLS0tLS1hdHRyVmFsdWUtLS0tXCIsIGF0dHJWYWx1ZSk7XG4gICAgICAgIGNvbnN0IHswOiBwcm9wTmFtZSwgMTogdHlwZSwgMjogbWV0YSwgbGVuZ3RofSA9IGF0dHJOYW1lLnNwbGl0KCcuJyk7XG4gICAgICAgIGlmICh0eXBlID09PSAnYmluZCcpIHtcbiAgICAgICAgICAgIC8vIGlmIHRoZSBzaG93IHByb3BlcnR5IGlzIGJvdW5kLCBzZXQgdGhlIGluaXRpYWwgdmFsdWUgdG8gZmFsc2VcbiAgICAgICAgICAgIGlmIChwcm9wTmFtZSA9PT0gJ3Nob3cnICYmICF0aGlzLndpZGdldFN1YlR5cGUuc3RhcnRzV2l0aCgnd20tY3VzdG9tLScpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5uYXRpdmVFbGVtZW50LmhpZGRlbiA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLnByb2Nlc3NCaW5kQXR0cihwcm9wTmFtZSwgYXR0clZhbHVlLCBjaGlsZCk7XG4gICAgICAgIH0gZWxzZSBpZiAodHlwZSA9PT0gJ2V2ZW50JyAmJiAhdGhpcy5uYXRpdmVFbGVtZW50Lmhhc0F0dHJpYnV0ZSgnd213aWRnZXRjb250YWluZXInKSkge1xuICAgICAgICAgICAgdGhpcy5wcm9jZXNzRXZlbnRBdHRyKHByb3BOYW1lLCBhdHRyVmFsdWUsIG1ldGEsIGNoaWxkKTtcbiAgICAgICAgfSBlbHNlIGlmIChsZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgIC8vIHJlbW92ZSBjbGFzcyBhbmQgbmFtZSBhdHRyaWJ1dGVzLiBDb21wb25lbnQgd2lsbCBzZXQgdGhlbSBvbiB0aGUgcHJvcGVyIG5vZGVcbiAgICAgICAgICAgIGlmIChhdHRyTmFtZSA9PT0gJ2NsYXNzJykge1xuICAgICAgICAgICAgICAgIHJlbW92ZUNsYXNzKHRoaXMubmF0aXZlRWxlbWVudCwgYXR0clZhbHVlKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoYXR0ck5hbWUgPT09ICd0YWJpbmRleCcgfHwgYXR0ck5hbWUgPT09ICduYW1lJykge1xuICAgICAgICAgICAgICAgIHJlbW92ZUF0dHIodGhpcy5uYXRpdmVFbGVtZW50LCBhdHRyTmFtZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuaW5pdFN0YXRlLnNldChwcm9wTmFtZSwgYXR0clZhbHVlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIGN1c3RvbSBhdHRyaWJ1dGVzIHByb3ZpZGVkIG9uIGVsRGVmO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVGhpcyBpcyByZXF1aXJlZCBhcyB0aGUgbmF0aXZlIGVsZW1lbnQgYXR0cmlidXRlcyBhcmUgY2FzZSBpbnNlbnNpdGl2ZShjYW1lbGNhc2UpIGxpa2UgY3VzdG9tRXhwcmVzc2lvbnMgYmVjb21lcyBjdXN0b21leHByZXNzaW9uXG4gICAgICogYW5kIG91ciBsb2dpYyB0byBjaGVjayBsaWtlIHRoZXNlIGNoYW5nZXMgd2lsbCBmYWlsLiBCZWZvcmUgSVZZIGNoYW5nZXMsIGFuZ3VsYXIgbWFpbnRhaW5zIGEgc2VwYXJhdGUgb2JqZWN0IHdpdGggdGhlc2UgYXR0cmlidXRlc1xuICAgICAqIGFzIGl0IGlzIGxpa2UgaW4gdGhlIGNhbWVsY2FzZS4gV2l0aCBJVlkgYWxsIHRob3NlIGFyZSBnb25lLiBTbyBuZWVkIHRvIG1haW50YWluIGEgc2VwYXJhdGUgbGlzdCB3aXRoIHRoZSBjYW1lbGNhc2luZyBvZiBhdHRyaWJ1dGVzXG4gICAgICogQHByaXZhdGVcbiAgICAgKiBfdE5vZGUuYXR0cnMgYXR0cmlidXRlcyBhcmUgc3RvcmVkIGluIGFycmF5KGV2ZW4gaW5kZXg6IGtleSwgb2RkIGluZGV4OiB2YWx1ZSlcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgZ2V0QXR0cmlidXRlcygpIHtcbiAgICAgICAgbGV0IF90Tm9kZUF0dHJzID0gKHRoaXMuaW5qIGFzIGFueSkuX3ROb2RlLmF0dHJzLCBhY3R1YWxBdHRycyA9IEFycmF5LmZyb20odGhpcy5uYXRpdmVFbGVtZW50LmF0dHJpYnV0ZXMpLm1hcChhdHRyID0+IGF0dHIubmFtZSk7XG4gICAgICAgIGlmKF90Tm9kZUF0dHJzID09PSBudWxsKSB7XG4gICAgICAgICAgICByZXR1cm4gYWN0dWFsQXR0cnMuc29ydCgpO1xuICAgICAgICB9XG4gICAgICAgIGZvckVhY2goX3ROb2RlQXR0cnMsIChhdHRyLCBpOiBhbnkpID0+IHtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgYXR0ciA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZih0eXBlb2YgYXR0ciA9PT0gJ3N0cmluZycgJiYgaSAlIDIgPT0gMCkge1xuICAgICAgICAgICAgICAgIGxldCBsb3dlckNhc2VBdHRyID0gYXR0ci50b0xvd2VyQ2FzZSgpO1xuICAgICAgICAgICAgICAgIGlmIChhY3R1YWxBdHRycy5pbmNsdWRlcyhsb3dlckNhc2VBdHRyKSkge1xuICAgICAgICAgICAgICAgICAgICBsZXQgaW5kZXggPSBhY3R1YWxBdHRycy5pbmRleE9mKGxvd2VyQ2FzZUF0dHIpXG4gICAgICAgICAgICAgICAgICAgIGFjdHVhbEF0dHJzW2luZGV4XSA9IGF0dHI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICAvKlxuICAgICAgICBTb3J0aW5nIGF0dHJpYnV0ZXMgYXMgcHJvcGVydGllcyBsaWtlIHBsYWNlaG9sZGVyIGlzIG5vdCB3b3JraW5nIHdoZW4gaXQgaXMgYm91bmQuXG4gICAgICAgIHBsYWNlaG9sZGVyIGFuZCBwbGFjZWhvbGRlci5iaW5kIHR3byBwcm9wZXJ0aWVzIGFyZSBjb21pbmcgaW4gQXJyYXkuXG4gICAgICAgIFdoZW4gYXJyYXkgaXMgbm90IHNvcnRlZCwgaW5pdGlhbGx5IHBsYWNlaG9sZGVyLmJpbmQgdmFsdWUgaXMgc2V0IHRoZW4gcGxhY2Vob2xkZXIgZGVmYXVsdCB2YWx1ZSBpcyB1cGRhdGVkLlxuICAgICAgICBJZiBhcnJheSBpcyBzb3J0ZWQsIHBsYWNlaG9sZGVyLmJpbmQgdmFsdWUgd2lsbCBiZSBzZXQgZmluYWxseS5cbiAgICAgICAgVGhpcyBpcyBjYXVzZWQgYmVjYXVzZSBvZiB0aGUgd2F5IHdlIGFyZSBzdG9yaW5nIGF0dHJpYnV0ZSBuYW1lcyBpbiB3YXRjaGVyIHJlZ2lzdHJ5IG1hcFxuICAgICAgICAgKi9cbiAgICAgICAgcmV0dXJuIGFjdHVhbEF0dHJzLnNvcnQoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQcm9jZXNzIHRoZSBhdHRyaWJ1dGVzXG4gICAgICovXG4gICAgcHJpdmF0ZSBwcm9jZXNzQXR0cnMoKSB7XG4gICAgICAgIG1hcCh0aGlzLmdldEF0dHJpYnV0ZXMoKSwgKGF0dHJOYW1lOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgIGxldCBhdHRyVmFsdWUgPSB0aGlzLm5hdGl2ZUVsZW1lbnQuYXR0cmlidXRlc1thdHRyTmFtZV0udmFsdWVcbiAgICAgICAgICAgIHRoaXMuJGF0dHJzLnNldChhdHRyTmFtZSwgYXR0clZhbHVlKTtcbiAgICAgICAgICAgIHRoaXMucHJvY2Vzc0F0dHIoYXR0ck5hbWUsIGF0dHJWYWx1ZSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFVwZGF0ZSB0aGUgaW5pdFN0YXRlIHdpdGggdGhlIGRlZmF1bHQgcHJvcGVydHkgdmFsdWVzIGFuZCB0aGUgdmFsdWVzIHByb3ZpZGVkIGluIHRoZSBtYXJrdXBcbiAgICAgKiBQcm9jZXNzIHRoZSBhdHRyaWJ1dGVzXG4gICAgICogUmVnaXN0ZXIgdGhlIHdpZGdldFxuICAgICAqL1xuICAgIHByb3RlY3RlZCBpbml0V2lkZ2V0KCkge1xuICAgICAgICB0aGlzLmluaXRTdGF0ZSA9IG5ldyBNYXA8c3RyaW5nLCBhbnk+KCk7XG5cbiAgICAgICAgLy8gZ2V0IHRoZSB3aWRnZXQgcHJvcGVydGllc1xuICAgICAgICBjb25zdCB3aWRnZXRQcm9wczogTWFwPHN0cmluZywgYW55PiA9IGdldFdpZGdldFByb3BzQnlUeXBlKHRoaXMud2lkZ2V0U3ViVHlwZSk7XG4gICAgICAgIGlmKHRoaXMuY3VzdG9tV2lkZ2V0U3ViVHlwZSkge1xuICAgICAgICAgICAgY29uc3QgY3VzdG9tV2lkZ2V0UHJvcHM6IE1hcDxzdHJpbmcsIGFueT4gPSBnZXRXaWRnZXRQcm9wc0J5VHlwZSh0aGlzLmN1c3RvbVdpZGdldFN1YlR5cGUpO1xuICAgICAgICAgICAgY3VzdG9tV2lkZ2V0UHJvcHMuZm9yRWFjaCgodiwgaykgPT4ge1xuICAgICAgICAgICAgICAgIHdpZGdldFByb3BzLnNldChrLCB2KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHdpZGdldFByb3BzLmZvckVhY2goKHYsIGspID0+IHtcbiAgICAgICAgICAgIGlmIChpc0RlZmluZWQodi52YWx1ZSkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmluaXRTdGF0ZS5zZXQoaywgdi52YWx1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMud2lkZ2V0UHJvcHMgPSB3aWRnZXRQcm9wcztcblxuICAgICAgICB0aGlzLnByb2Nlc3NBdHRycygpO1xuXG4gICAgICAgIHRoaXMucmVnaXN0ZXJXaWRnZXQodGhpcy5pbml0U3RhdGUuZ2V0KCduYW1lJykpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFVwZGF0ZSB0aGUgZGVmYXVsdCBwcm9wZXJ0aWVzIGFuZCB0aGUgcHJvcGVydGllcyBwcm92aWRlZCBpbiB0aGUgbWFya3VwIGluIGNvbXBvbmVudFxuICAgICAqIEludm9raW5nIHRoaXMgbWV0aG9kIHdpbGwgcmVzdWx0IGluIGludm9jYXRpb24gb2YgcHJvcGVydHlDaGFuZ2UgaGFuZGxlcnMgb24gdGhlIGNvbXBvbmVudCBmb3IgdGhlIGZpcnN0IHRpbWVcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgc2V0SW5pdFByb3BzKCkge1xuICAgICAgICBpZiAodGhpcy5pbml0U3RhdGUuZ2V0KCduYW1lJykpIHtcbiAgICAgICAgICAgIHRoaXMud2lkZ2V0Lm5hbWUgPSB0aGlzLmluaXRTdGF0ZS5nZXQoJ25hbWUnKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmluaXRTdGF0ZS5mb3JFYWNoKCh2LCBrKSA9PiB7XG4gICAgICAgICAgICAvLyBuYW1lIGlzIGFscmVhZHkgc2V0LCBpZ25vcmUgbmFtZVxuICAgICAgICAgICAgLy8gaWYgdGhlIGtleSBpcyBwYXJ0IG9mIHRvIGJlIGlnbm9yZWQgYXR0cmlidXRlcyBsaXN0IGRvIG5vdCBzZXQgaXQgb24gdGhlIGNvbXBvbmVudCBpbnN0YW5jZVxuICAgICAgICAgICAgaWYgKCh0aGlzLndpZGdldFByb3BzLmdldChrKSB8fCBpc1N0eWxlKGspKSAmJiBrICE9PSAnbmFtZScpIHtcbiAgICAgICAgICAgICAgICB0aGlzLndpZGdldFtrXSA9IHY7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmluaXRTdGF0ZS5jbGVhcigpO1xuICAgICAgICB0aGlzLmluaXRTdGF0ZSA9IHVuZGVmaW5lZDtcblxuICAgICAgICB0aGlzLnJlYWR5U3RhdGUubmV4dChudWxsKTtcbiAgICAgICAgdGhpcy5yZWFkeVN0YXRlLmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0cnVlLCBpZiBhIGxpc3RlbmVyIHJlZ2lzdGVyZWQgZm9yIHRoZSBnaXZlbiBldmVudCBvbiB0aGlzIHdpZGdldCBtYXJrdXAuXG4gICAgICogQHBhcmFtIGV2ZW50TmFtZVxuICAgICAqIEByZXR1cm5zIHtib29sZWFufVxuICAgICAqL1xuICAgIHByb3RlY3RlZCBoYXNFdmVudENhbGxiYWNrKGV2ZW50TmFtZSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5ldmVudEhhbmRsZXJzLmhhcyhldmVudE5hbWUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldHMgdGhlIGZvY3VzIG9uIHRoZSB3aWRnZXRcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgZm9jdXMoKTogdm9pZCB7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBDaGVjayBmb3IgdGhlIG5vZGVzIGhhdmluZyBmb2N1cy10YXJnZXQgYXR0cmlidXRlIGluc2lkZSB0aGUgZWxlbWVudFxuICAgICAgICAgKiBJZiBmb3VuZCwgZm9jdXMgdGhlIGZpcnN0IG5vZGUgKGVnLCBkYXRlIHdpZGdldClcbiAgICAgICAgICogZWxzZSwgZm9jdXMgdGhlIGVsZW1lbnQgKGVnLCB0ZXh0IHdpZGdldClcbiAgICAgICAgICovXG4gICAgICAgIGxldCAkdGFyZ2V0ID0gdGhpcy4kZWxlbWVudFswXS5xdWVyeVNlbGVjdG9yKCdbZm9jdXMtdGFyZ2V0XScpO1xuICAgICAgICBpZiAoISR0YXJnZXQpIHtcbiAgICAgICAgICAgICR0YXJnZXQgPSB0aGlzLiRlbGVtZW50WzBdO1xuICAgICAgICB9XG4gICAgICAgICR0YXJnZXQuZm9jdXMoKTtcbiAgICB9XG5cbiAgICAvLyBEZWZpbmluZyB0aGUgZXhlY3V0ZSBtZXRob2Qgb24gQmFzZUNvbXBvbmVudC4gSWYgZGF0YXNldCBpcyBiaW5kZWQgdG8gd2lkZ2V0cyBvdXB0dXQgdGhlbiBkYXRhc291cmNlLmV4ZWN1dGUgd2lsbCBiZSBkZWZpbmVkXG4gICAgcHJvdGVjdGVkIGV4ZWN1dGUob3BlcmF0aW9uLCBvcHRpb25zKTogYW55IHtcblxuICAgIH1cblxuICAgIHB1YmxpYyBtdXRlKCkge1xuICAgICAgICB0aGlzLmlzTXV0ZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIHB1YmxpYyB1bm11dGUoKSB7XG4gICAgICAgIHRoaXMuaXNNdXRlZCA9IGZhbHNlO1xuICAgIH1cblxuICAgIHByaXZhdGUgY3VzdG9tSW5qZWN0b3JNYXA6IGFueSA9IHt9O1xuXG4gICAgLyoqXG4gICAgICogQWZ0ZXIgdGhlIEFuZ3VsYXIgMTcgdXBncmFkZSwgQW5ndWxhciBpcyBubyBsb25nZXIgc2VuZGluZyBuZ1RlbXBsYXRlQ29udGV4dCB0byBjb21wb25lbnRzIGluIG5nLXRlbXBsYXRlLlxuICAgICAqIFdhdmVtYWtlciB3aWRnZXRzIGluc2lkZSBuZy10ZW1wbGF0ZSByZXF1aXJlIGNvbnRleHQgdG8gZXZhbHVhdGUgYmluZCBleHByZXNzaW9ucy5cbiAgICAgKiBTbyB3ZSdyZSBjcmVhdGluZyBhbiBpbmplY3Rpb25Ub2tlbiB0aGF0IHJldHVybnMgdGhlIGNvbnRleHQgYXMgYSB2YWx1ZS5cbiAgICAgKiBXZSBhcmUgcGFzc2luZyB0aGUgaW5qZWN0aW9uVG9rZW4gdG8gdGhlIG5nVGVtcGxhdGVPdXRsZXRJbmplY3Rvci5cbiAgICAgKiBUaGlzIGluamVjdHMgdGhlIGNvbnRleHQgaW50byBlYWNoIHdpZGdldCBpbiB0aGUgbmctdGVtcGxhdGUuXG4gICAgICogSW4gdGhlIHdpZGdldCBjb21wb25lbnQgY29uc3RydWN0b3Igd2UgYXJlIGdldHRpbmcgdGhlIGluamVjdGlvblRva2VuIHVzaW5nIGRlcGVuZGVuY3kgaW5qZWN0aW9uLlxuICAgICAqIElmIGluamVjdGlvblRva2VuIGlzIHByZXNlbnQsIHdlIGV4dGVuZCB0aGUgY29tcG9uZW50IGNvbnRleHQgd2l0aCB0aGUgdmFsdWUgb2YgaW5qZWN0aW9uVG9rZW4uXG4gICAgICogQHBhcmFtIGNvbnRleHRLZXlcbiAgICAgKiBAcGFyYW0gY29udGV4dFxuICAgICAqIEByZXR1cm5zIGluamVjdG9yXG4gICAgICovXG4gICAgY3JlYXRlQ3VzdG9tSW5qZWN0b3IoY29udGV4dEtleTogc3RyaW5nLCBjb250ZXh0OiBhbnkpIHtcbiAgICAgICAgaWYodGhpcy5jdXN0b21JbmplY3Rvck1hcFtjb250ZXh0S2V5XSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuY3VzdG9tSW5qZWN0b3JNYXBbY29udGV4dEtleV0uaW5qZWN0b3I7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgaW5qZWN0b3IgPSBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgICAgICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiAnRVhQTElDSVRfQ09OVEVYVCcsIHVzZUZhY3Rvcnk6ICgpID0+IGNvbnRleHQgfV1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuY3VzdG9tSW5qZWN0b3JNYXBbY29udGV4dEtleV0gPSB7IGNvbnRleHQsIGluamVjdG9yIH07XG4gICAgICAgIHJldHVybiBpbmplY3RvcjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZnRlciB0aGUgaG9zdCBwYWdlIGlzIGF0dGFjaGVkIGZyb20gY2FjaGUsIHRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkLlxuICAgICAqL1xuICAgIHB1YmxpYyBuZ09uQXR0YWNoKCkge1xuICAgICAgICB0aGlzLmlzQXR0YWNoZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEJlZm9yZSB0aGUgaG9zdCBwYWdlIGlzIGRldGFjaGVkIGZyb20gZG9tIGFuZCBzdG9yZWQgaW4gY2FjaGUsICB0aGlzIGZ1bmN0aW9uIGlzIGNhbGxlZC5cbiAgICAgKi9cbiAgICBwdWJsaWMgbmdPbkRldGFjaCgpIHtcbiAgICAgICAgdGhpcy5pc0F0dGFjaGVkID0gZmFsc2U7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogbmF0aXZlRWxlbWVudCB3aWxsIGJlIGF2YWlsYWJsZSBieSB0aGlzIHRpbWVcbiAgICAgKiBpZiB0aGUgZGVsYXlJbml0IGlzIGZhbHNlLCBwcm9wZXJ0aWVzIG1ldGEgd2lsbCBiZSBhdmFpbGFibGUgYnkgdGhpcyB0aW1lXG4gICAgICogSW52b2tlIHRoZSBzZXRJbml0UHJvcHMgaWYgdGhlIGRlbGF5SW5pdCBpcyBmYWxzZVxuICAgICAqL1xuICAgIG5nT25Jbml0KCkge1xuICAgICAgICBpZiAoIXRoaXMuZGVsYXllZEluaXQpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0SW5pdFByb3BzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZWdpc3RlciB0aGUgZXZlbnRzXG4gICAgICovXG4gICAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgICAgICBpZiAodGhpcy50b0JlU2V0dXBFdmVudHNRdWV1ZS5sZW5ndGgpIHtcbiAgICAgICAgICAgIGZvciAoY29uc3QgZm4gb2YgdGhpcy50b0JlU2V0dXBFdmVudHNRdWV1ZSkge1xuICAgICAgICAgICAgICAgIGZuKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy50b0JlU2V0dXBFdmVudHNRdWV1ZS5sZW5ndGggPSAwO1xuICAgICAgICB0aGlzLmlzQXR0YWNoZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHt9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgdGhpcy5pc0Rlc3Ryb3llZCA9IHRydWU7XG4gICAgICAgIHRoaXMud2lkZ2V0ID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgICAgICAgdGhpcy5zdHlsZUNoYW5nZS5jb21wbGV0ZSgpO1xuICAgICAgICB0aGlzLnByb3BlcnR5Q2hhbmdlLmNvbXBsZXRlKCk7XG4gICAgICAgIHRoaXMuZGVzdHJveS5jb21wbGV0ZSgpO1xuICAgICAgICB0aGlzLmlzQXR0YWNoZWQgPSBmYWxzZTtcblxuICAgICAgICAvLyBNRU1PUlkgTEVBSyBGSVg6IENsZWFyIGNvbnRleHQgdG8gcmVsZWFzZSByZWZlcmVuY2VzIHRvIHBhcmVudCBzY29wZSBkYXRhXG4gICAgICAgIC8vIFRoZSBjb250ZXh0IG9iamVjdCBob2xkcyByZWZlcmVuY2VzIHRvIHJlcGVhdGVyIGl0ZW1zLCB3aXphcmQgc3RlcHMsIGV0Yy5cbiAgICAgICAgLy8gd2hpY2ggY2FuIHJldGFpbiBsYXJnZSBhbW91bnRzIG9mIGRhdGEgZXZlbiBhZnRlciBjb21wb25lbnQgZGVzdHJ1Y3Rpb25cbiAgICAgICAgaWYgKHRoaXMuY29udGV4dCkge1xuICAgICAgICAgICAgLy8gQ2xlYXIgYWxsIHByb3BlcnRpZXMgZnJvbSBjb250ZXh0XG4gICAgICAgICAgICBPYmplY3Qua2V5cyh0aGlzLmNvbnRleHQpLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgICAgICAgICBkZWxldGUgdGhpcy5jb250ZXh0W2tleV07XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRoaXMuY29udGV4dCA9IG51bGw7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|