@ng-nest/ui 14.0.7 → 14.0.9
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/auto-complete/auto-complete-portal.component.d.ts +6 -3
- package/auto-complete/auto-complete.component.d.ts +3 -5
- package/avatar/avatar-group.component.d.ts +8 -0
- package/avatar/avatar.component.d.ts +15 -4
- package/avatar/avatar.module.d.ts +5 -4
- package/avatar/avatar.property.d.ts +31 -3
- package/avatar/public-api.d.ts +1 -0
- package/badge/badge.component.d.ts +4 -1
- package/badge/badge.property.d.ts +6 -1
- package/base-form/base-form.component.d.ts +3 -1
- package/base-form/base-form.property.d.ts +9 -1
- package/calendar/calendar.property.d.ts +2 -1
- package/core/animation/badge.d.ts +1 -0
- package/core/config/config.d.ts +31 -0
- package/core/interfaces/identify.type.d.ts +2 -0
- package/core/interfaces/layout.type.d.ts +22 -1
- package/core/util/check.d.ts +2 -0
- package/core/util/public-api.d.ts +1 -0
- package/dialog/dialog.property.d.ts +8 -0
- package/esm2020/auto-complete/auto-complete-portal.component.mjs +11 -4
- package/esm2020/auto-complete/auto-complete.component.mjs +20 -21
- package/esm2020/avatar/avatar-group.component.mjs +19 -0
- package/esm2020/avatar/avatar.component.mjs +91 -11
- package/esm2020/avatar/avatar.module.mjs +6 -5
- package/esm2020/avatar/avatar.property.mjs +31 -3
- package/esm2020/avatar/public-api.mjs +2 -1
- package/esm2020/badge/badge.component.mjs +24 -8
- package/esm2020/badge/badge.property.mjs +7 -2
- package/esm2020/base-form/base-form.component.mjs +13 -4
- package/esm2020/base-form/base-form.property.mjs +4 -2
- package/esm2020/calendar/calendar.property.mjs +1 -1
- package/esm2020/core/animation/badge.mjs +17 -1
- package/esm2020/core/config/config.mjs +1 -1
- package/esm2020/core/functions/property.mjs +1 -1
- package/esm2020/core/interfaces/identify.type.mjs +1 -1
- package/esm2020/core/interfaces/layout.type.mjs +1 -1
- package/esm2020/core/util/check.mjs +7 -0
- package/esm2020/core/util/public-api.mjs +2 -1
- package/esm2020/dialog/dialog.property.mjs +1 -1
- package/esm2020/find/find.property.mjs +2 -2
- package/esm2020/form/control.component.mjs +13 -4
- package/esm2020/form/form.component.mjs +3 -3
- package/esm2020/form/form.property.mjs +1 -1
- package/esm2020/i18n/i18n.property.mjs +1 -1
- package/esm2020/i18n/languages/en_US.mjs +11 -1
- package/esm2020/i18n/languages/zh_CN.mjs +11 -1
- package/esm2020/i18n/languages/zh_TW.mjs +11 -1
- package/esm2020/icon/icon.property.mjs +1 -1
- package/esm2020/image/image-group.component.mjs +6 -3
- package/esm2020/image/image.component.mjs +18 -5
- package/esm2020/image/image.module.mjs +5 -4
- package/esm2020/image/image.property.mjs +22 -3
- package/esm2020/index.mjs +3 -1
- package/esm2020/input/input.component.mjs +7 -4
- package/esm2020/input/input.property.mjs +1 -1
- package/esm2020/input-number/input-number.component.mjs +8 -2
- package/esm2020/input-number/input-number.property.mjs +4 -2
- package/esm2020/keyword/keyword.directive.mjs +66 -0
- package/esm2020/keyword/keyword.module.mjs +19 -0
- package/esm2020/keyword/keyword.property.mjs +41 -0
- package/esm2020/keyword/ng-nest-ui-keyword.mjs +5 -0
- package/esm2020/keyword/public-api.mjs +4 -0
- package/esm2020/list/list-drop-group.directive.mjs +47 -0
- package/esm2020/list/list-option.component.mjs +4 -4
- package/esm2020/list/list.component.mjs +38 -10
- package/esm2020/list/list.module.mjs +12 -7
- package/esm2020/list/list.property.mjs +19 -3
- package/esm2020/list/public-api.mjs +2 -1
- package/esm2020/message-box/message-box.component.mjs +24 -9
- package/esm2020/message-box/message-box.module.mjs +8 -4
- package/esm2020/message-box/message-box.property.mjs +1 -1
- package/esm2020/message-box/message-box.service.mjs +10 -3
- package/esm2020/resizable/resizable.directive.mjs +2 -2
- package/esm2020/select/select-portal.component.mjs +6 -3
- package/esm2020/select/select.component.mjs +31 -23
- package/esm2020/select/select.property.mjs +8 -2
- package/esm2020/slider-select/slider-select.component.mjs +6 -3
- package/esm2020/slider-select/slider-select.property.mjs +7 -2
- package/esm2020/table/table-body.component.mjs +5 -3
- package/esm2020/table/table.component.mjs +13 -9
- package/esm2020/table/table.property.mjs +21 -2
- package/esm2020/transfer/transfer.component.mjs +354 -51
- package/esm2020/transfer/transfer.module.mjs +35 -4
- package/esm2020/transfer/transfer.property.mjs +41 -3
- package/esm2020/tree/tree-node.component.mjs +65 -31
- package/esm2020/tree/tree.component.mjs +189 -72
- package/esm2020/tree/tree.module.mjs +5 -4
- package/esm2020/tree/tree.property.mjs +44 -2
- package/esm2020/tree-select/ng-nest-ui-tree-select.mjs +5 -0
- package/esm2020/tree-select/public-api.mjs +5 -0
- package/esm2020/tree-select/tree-select-portal.component.mjs +111 -0
- package/esm2020/tree-select/tree-select.component.mjs +633 -0
- package/esm2020/tree-select/tree-select.module.mjs +65 -0
- package/esm2020/tree-select/tree-select.property.mjs +159 -0
- package/esm2020/upload/upload.component.mjs +9 -6
- package/esm2020/upload/upload.module.mjs +12 -4
- package/esm2020/upload/upload.property.mjs +10 -3
- package/fesm2015/ng-nest-ui-auto-complete.mjs +28 -22
- package/fesm2015/ng-nest-ui-auto-complete.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-avatar.mjs +143 -17
- package/fesm2015/ng-nest-ui-avatar.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-badge.mjs +29 -8
- package/fesm2015/ng-nest-ui-badge.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-base-form.mjs +16 -5
- package/fesm2015/ng-nest-ui-base-form.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-calendar.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-core.mjs +24 -1
- package/fesm2015/ng-nest-ui-core.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-dialog.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-find.mjs +1 -1
- package/fesm2015/ng-nest-ui-find.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-form.mjs +14 -6
- package/fesm2015/ng-nest-ui-form.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-i18n.mjs +30 -0
- package/fesm2015/ng-nest-ui-i18n.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-icon.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-image.mjs +47 -11
- package/fesm2015/ng-nest-ui-image.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-input-number.mjs +10 -2
- package/fesm2015/ng-nest-ui-input-number.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-input.mjs +6 -3
- package/fesm2015/ng-nest-ui-input.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-keyword.mjs +125 -0
- package/fesm2015/ng-nest-ui-keyword.mjs.map +1 -0
- package/fesm2015/ng-nest-ui-list.mjs +116 -23
- package/fesm2015/ng-nest-ui-list.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-message-box.mjs +39 -14
- package/fesm2015/ng-nest-ui-message-box.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-resizable.mjs +1 -1
- package/fesm2015/ng-nest-ui-resizable.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-select.mjs +42 -25
- package/fesm2015/ng-nest-ui-select.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-slider-select.mjs +11 -3
- package/fesm2015/ng-nest-ui-slider-select.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-table.mjs +36 -11
- package/fesm2015/ng-nest-ui-table.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-transfer.mjs +433 -57
- package/fesm2015/ng-nest-ui-transfer.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-tree-select.mjs +959 -0
- package/fesm2015/ng-nest-ui-tree-select.mjs.map +1 -0
- package/fesm2015/ng-nest-ui-tree.mjs +306 -112
- package/fesm2015/ng-nest-ui-tree.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-upload.mjs +28 -10
- package/fesm2015/ng-nest-ui-upload.mjs.map +1 -1
- package/fesm2015/ng-nest-ui.mjs +2 -0
- package/fesm2015/ng-nest-ui.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-auto-complete.mjs +28 -22
- package/fesm2020/ng-nest-ui-auto-complete.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-avatar.mjs +140 -17
- package/fesm2020/ng-nest-ui-avatar.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-badge.mjs +29 -8
- package/fesm2020/ng-nest-ui-badge.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-base-form.mjs +16 -5
- package/fesm2020/ng-nest-ui-base-form.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-calendar.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-core.mjs +24 -1
- package/fesm2020/ng-nest-ui-core.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-dialog.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-find.mjs +1 -1
- package/fesm2020/ng-nest-ui-find.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-form.mjs +14 -6
- package/fesm2020/ng-nest-ui-form.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-i18n.mjs +30 -0
- package/fesm2020/ng-nest-ui-i18n.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-icon.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-image.mjs +47 -11
- package/fesm2020/ng-nest-ui-image.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-input-number.mjs +10 -2
- package/fesm2020/ng-nest-ui-input-number.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-input.mjs +6 -3
- package/fesm2020/ng-nest-ui-input.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-keyword.mjs +125 -0
- package/fesm2020/ng-nest-ui-keyword.mjs.map +1 -0
- package/fesm2020/ng-nest-ui-list.mjs +113 -22
- package/fesm2020/ng-nest-ui-list.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-message-box.mjs +38 -13
- package/fesm2020/ng-nest-ui-message-box.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-resizable.mjs +1 -1
- package/fesm2020/ng-nest-ui-resizable.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-select.mjs +42 -25
- package/fesm2020/ng-nest-ui-select.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-slider-select.mjs +11 -3
- package/fesm2020/ng-nest-ui-slider-select.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-table.mjs +36 -11
- package/fesm2020/ng-nest-ui-table.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-transfer.mjs +427 -55
- package/fesm2020/ng-nest-ui-transfer.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-tree-select.mjs +954 -0
- package/fesm2020/ng-nest-ui-tree-select.mjs.map +1 -0
- package/fesm2020/ng-nest-ui-tree.mjs +302 -109
- package/fesm2020/ng-nest-ui-tree.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-upload.mjs +28 -10
- package/fesm2020/ng-nest-ui-upload.mjs.map +1 -1
- package/fesm2020/ng-nest-ui.mjs +2 -0
- package/fesm2020/ng-nest-ui.mjs.map +1 -1
- package/find/find.property.d.ts +1 -1
- package/form/form.property.d.ts +10 -0
- package/i18n/i18n.property.d.ts +12 -0
- package/i18n/languages/en_US.d.ts +10 -0
- package/i18n/languages/zh_CN.d.ts +10 -0
- package/i18n/languages/zh_TW.d.ts +10 -0
- package/icon/icon.property.d.ts +1 -1
- package/image/image-group.component.d.ts +1 -0
- package/image/image.component.d.ts +3 -2
- package/image/image.module.d.ts +3 -2
- package/image/image.property.d.ts +23 -7
- package/index.d.ts +2 -0
- package/input/input.property.d.ts +7 -2
- package/input-number/input-number.property.d.ts +12 -1
- package/keyword/index.d.ts +5 -0
- package/keyword/keyword.directive.d.ts +19 -0
- package/keyword/keyword.module.d.ts +9 -0
- package/keyword/keyword.property.d.ts +40 -0
- package/keyword/public-api.d.ts +3 -0
- package/list/list-drop-group.directive.d.ts +15 -0
- package/list/list-option.component.d.ts +0 -1
- package/list/list.component.d.ts +7 -3
- package/list/list.module.d.ts +15 -13
- package/list/list.property.d.ts +25 -3
- package/list/public-api.d.ts +1 -0
- package/message-box/message-box.component.d.ts +4 -2
- package/message-box/message-box.module.d.ts +2 -1
- package/message-box/message-box.property.d.ts +18 -4
- package/package.json +17 -1
- package/select/select-portal.component.d.ts +5 -1
- package/select/select.component.d.ts +2 -2
- package/select/select.property.d.ts +6 -1
- package/slider-select/slider-select.component.d.ts +1 -0
- package/slider-select/slider-select.property.d.ts +6 -1
- package/style/core/index.css +29 -0
- package/style/core/index.css.map +1 -1
- package/style/directives/index.scss +1 -0
- package/style/directives/keyword/index.scss +6 -0
- package/style/directives/keyword/mixin.scss +24 -0
- package/style/directives/keyword/param.scss +3 -0
- package/table/table.property.d.ts +18 -1
- package/transfer/transfer.component.d.ts +29 -4
- package/transfer/transfer.module.d.ts +3 -1
- package/transfer/transfer.property.d.ts +85 -6
- package/tree/tree-node.component.d.ts +4 -4
- package/tree/tree.component.d.ts +13 -1
- package/tree/tree.module.d.ts +2 -1
- package/tree/tree.property.d.ts +49 -14
- package/tree-select/index.d.ts +5 -0
- package/tree-select/public-api.d.ts +4 -0
- package/tree-select/tree-select-portal.component.d.ts +63 -0
- package/tree-select/tree-select.component.d.ts +101 -0
- package/tree-select/tree-select.module.d.ts +20 -0
- package/tree-select/tree-select.property.d.ts +207 -0
- package/upload/upload.component.d.ts +1 -1
- package/upload/upload.module.d.ts +3 -1
- package/upload/upload.property.d.ts +13 -3
- package/affix/examples/en_US/default/README.md +0 -4
- package/affix/examples/en_US/default/default/README.md +0 -6
- package/affix/examples/en_US/default/scope/README.md +0 -6
- package/affix/examples/zh_CN/default/README.md +0 -4
- package/affix/examples/zh_CN/default/default/README.md +0 -6
- package/affix/examples/zh_CN/default/scope/README.md +0 -6
- package/alert/examples/en_US/default/README.md +0 -4
- package/alert/examples/en_US/default/custom/README.md +0 -9
- package/alert/examples/en_US/default/default/README.md +0 -6
- package/alert/examples/en_US/default/description/README.md +0 -6
- package/alert/examples/en_US/default/effect/README.md +0 -6
- package/alert/examples/en_US/default/icon/README.md +0 -6
- package/alert/examples/zh_CN/default/README.md +0 -4
- package/alert/examples/zh_CN/default/custom/README.md +0 -9
- package/alert/examples/zh_CN/default/default/README.md +0 -6
- package/alert/examples/zh_CN/default/description/README.md +0 -6
- package/alert/examples/zh_CN/default/effect/README.md +0 -6
- package/alert/examples/zh_CN/default/icon/README.md +0 -6
- package/anchor/examples/en_US/default/README.md +0 -4
- package/anchor/examples/en_US/default/default/README.md +0 -6
- package/anchor/examples/zh_CN/default/README.md +0 -4
- package/anchor/examples/zh_CN/default/default/README.md +0 -6
- package/auto-complete/examples/en_US/default/README.md +0 -4
- package/auto-complete/examples/en_US/default/bordered/README.md +0 -6
- package/auto-complete/examples/en_US/default/custom/README.md +0 -6
- package/auto-complete/examples/en_US/default/default/README.md +0 -6
- package/auto-complete/examples/en_US/default/disabled/README.md +0 -6
- package/auto-complete/examples/en_US/default/label/README.md +0 -7
- package/auto-complete/examples/en_US/default/required/README.md +0 -6
- package/auto-complete/examples/en_US/default/size/README.md +0 -6
- package/auto-complete/examples/zh_CN/default/README.md +0 -4
- package/auto-complete/examples/zh_CN/default/bordered/README.md +0 -6
- package/auto-complete/examples/zh_CN/default/custom/README.md +0 -6
- package/auto-complete/examples/zh_CN/default/default/README.md +0 -6
- package/auto-complete/examples/zh_CN/default/disabled/README.md +0 -6
- package/auto-complete/examples/zh_CN/default/label/README.md +0 -7
- package/auto-complete/examples/zh_CN/default/required/README.md +0 -6
- package/auto-complete/examples/zh_CN/default/size/README.md +0 -6
- package/avatar/examples/en_US/default/README.md +0 -4
- package/avatar/examples/en_US/default/default/README.md +0 -7
- package/avatar/examples/en_US/default/display/README.md +0 -6
- package/avatar/examples/en_US/default/fallback/README.md +0 -6
- package/avatar/examples/en_US/default/fit/README.md +0 -6
- package/avatar/examples/zh_CN/default/README.md +0 -4
- package/avatar/examples/zh_CN/default/default/README.md +0 -7
- package/avatar/examples/zh_CN/default/display/README.md +0 -6
- package/avatar/examples/zh_CN/default/fallback/README.md +0 -6
- package/avatar/examples/zh_CN/default/fit/README.md +0 -6
- package/back-top/examples/en_US/default/README.md +0 -4
- package/back-top/examples/en_US/default/custom/README.md +0 -6
- package/back-top/examples/en_US/default/default/README.md +0 -6
- package/back-top/examples/en_US/default/target/README.md +0 -6
- package/back-top/examples/zh_CN/default/README.md +0 -4
- package/back-top/examples/zh_CN/default/custom/README.md +0 -6
- package/back-top/examples/zh_CN/default/default/README.md +0 -6
- package/back-top/examples/zh_CN/default/target/README.md +0 -6
- package/badge/examples/en_US/default/README.md +0 -4
- package/badge/examples/en_US/default/color/README.md +0 -6
- package/badge/examples/en_US/default/custom/README.md +0 -7
- package/badge/examples/en_US/default/default/README.md +0 -7
- package/badge/examples/en_US/default/dot/README.md +0 -7
- package/badge/examples/en_US/default/max/README.md +0 -6
- package/badge/examples/en_US/default/offset/README.md +0 -6
- package/badge/examples/zh_CN/default/README.md +0 -4
- package/badge/examples/zh_CN/default/color/README.md +0 -6
- package/badge/examples/zh_CN/default/custom/README.md +0 -7
- package/badge/examples/zh_CN/default/default/README.md +0 -7
- package/badge/examples/zh_CN/default/dot/README.md +0 -7
- package/badge/examples/zh_CN/default/max/README.md +0 -6
- package/badge/examples/zh_CN/default/offset/README.md +0 -6
- package/border/examples/en_US/default/README.md +0 -4
- package/border/examples/en_US/default/default/README.md +0 -6
- package/border/examples/en_US/default/radius/README.md +0 -6
- package/border/examples/en_US/default/shadow/README.md +0 -6
- package/border/examples/zh_CN/default/README.md +0 -4
- package/border/examples/zh_CN/default/default/README.md +0 -6
- package/border/examples/zh_CN/default/radius/README.md +0 -6
- package/border/examples/zh_CN/default/shadow/README.md +0 -6
- package/button/examples/en_US/default/README.md +0 -4
- package/button/examples/en_US/default/default/README.md +0 -8
- package/button/examples/en_US/default/disabled/README.md +0 -8
- package/button/examples/en_US/default/group/README.md +0 -10
- package/button/examples/en_US/default/icon/README.md +0 -9
- package/button/examples/en_US/default/loading/README.md +0 -8
- package/button/examples/en_US/default/size/README.md +0 -8
- package/button/examples/en_US/default/text/README.md +0 -6
- package/button/examples/zh_CN/default/README.md +0 -4
- package/button/examples/zh_CN/default/default/README.md +0 -8
- package/button/examples/zh_CN/default/disabled/README.md +0 -8
- package/button/examples/zh_CN/default/group/README.md +0 -10
- package/button/examples/zh_CN/default/icon/README.md +0 -9
- package/button/examples/zh_CN/default/loading/README.md +0 -8
- package/button/examples/zh_CN/default/size/README.md +0 -8
- package/button/examples/zh_CN/default/text/README.md +0 -6
- package/calendar/examples/en_US/default/README.md +0 -4
- package/calendar/examples/en_US/default/card/README.md +0 -6
- package/calendar/examples/en_US/default/default/README.md +0 -6
- package/calendar/examples/en_US/default/header/README.md +0 -6
- package/calendar/examples/zh_CN/default/README.md +0 -4
- package/calendar/examples/zh_CN/default/card/README.md +0 -6
- package/calendar/examples/zh_CN/default/default/README.md +0 -6
- package/calendar/examples/zh_CN/default/header/README.md +0 -6
- package/card/examples/en_US/default/README.md +0 -4
- package/card/examples/en_US/default/default/README.md +0 -6
- package/card/examples/en_US/default/header/README.md +0 -6
- package/card/examples/en_US/default/img/README.md +0 -6
- package/card/examples/en_US/default/shadow/README.md +0 -7
- package/card/examples/zh_CN/default/README.md +0 -4
- package/card/examples/zh_CN/default/default/README.md +0 -6
- package/card/examples/zh_CN/default/header/README.md +0 -6
- package/card/examples/zh_CN/default/img/README.md +0 -6
- package/card/examples/zh_CN/default/shadow/README.md +0 -7
- package/carousel/examples/en_US/default/README.md +0 -4
- package/carousel/examples/en_US/default/arrow/README.md +0 -7
- package/carousel/examples/en_US/default/card/README.md +0 -7
- package/carousel/examples/en_US/default/default/README.md +0 -7
- package/carousel/examples/en_US/default/direction/README.md +0 -6
- package/carousel/examples/zh_CN/default/README.md +0 -4
- package/carousel/examples/zh_CN/default/arrow/README.md +0 -7
- package/carousel/examples/zh_CN/default/card/README.md +0 -7
- package/carousel/examples/zh_CN/default/default/README.md +0 -7
- package/carousel/examples/zh_CN/default/direction/README.md +0 -6
- package/cascade/examples/en_US/default/README.md +0 -4
- package/cascade/examples/en_US/default/bordered/README.md +0 -6
- package/cascade/examples/en_US/default/default/README.md +0 -7
- package/cascade/examples/en_US/default/disabled/README.md +0 -6
- package/cascade/examples/en_US/default/hover/README.md +0 -7
- package/cascade/examples/en_US/default/label/README.md +0 -7
- package/cascade/examples/en_US/default/required/README.md +0 -6
- package/cascade/examples/en_US/default/size/README.md +0 -6
- package/cascade/examples/zh_CN/default/README.md +0 -4
- package/cascade/examples/zh_CN/default/bordered/README.md +0 -6
- package/cascade/examples/zh_CN/default/default/README.md +0 -7
- package/cascade/examples/zh_CN/default/disabled/README.md +0 -6
- package/cascade/examples/zh_CN/default/hover/README.md +0 -7
- package/cascade/examples/zh_CN/default/label/README.md +0 -7
- package/cascade/examples/zh_CN/default/required/README.md +0 -6
- package/cascade/examples/zh_CN/default/size/README.md +0 -6
- package/checkbox/examples/en_US/default/README.md +0 -4
- package/checkbox/examples/en_US/default/async/README.md +0 -6
- package/checkbox/examples/en_US/default/button/README.md +0 -6
- package/checkbox/examples/en_US/default/check-all/README.md +0 -6
- package/checkbox/examples/en_US/default/default/README.md +0 -9
- package/checkbox/examples/en_US/default/disabled/README.md +0 -9
- package/checkbox/examples/en_US/default/icon/README.md +0 -6
- package/checkbox/examples/zh_CN/default/README.md +0 -4
- package/checkbox/examples/zh_CN/default/async/README.md +0 -6
- package/checkbox/examples/zh_CN/default/button/README.md +0 -6
- package/checkbox/examples/zh_CN/default/check-all/README.md +0 -6
- package/checkbox/examples/zh_CN/default/default/README.md +0 -9
- package/checkbox/examples/zh_CN/default/disabled/README.md +0 -9
- package/checkbox/examples/zh_CN/default/icon/README.md +0 -6
- package/collapse/examples/en_US/default/README.md +0 -4
- package/collapse/examples/en_US/default/accordion/README.md +0 -7
- package/collapse/examples/en_US/default/arrow/README.md +0 -6
- package/collapse/examples/en_US/default/border/README.md +0 -6
- package/collapse/examples/en_US/default/custom/README.md +0 -6
- package/collapse/examples/en_US/default/default/README.md +0 -6
- package/collapse/examples/en_US/default/disabled/README.md +0 -6
- package/collapse/examples/en_US/default/ghost/README.md +0 -6
- package/collapse/examples/en_US/default/icon/README.md +0 -6
- package/collapse/examples/zh_CN/default/README.md +0 -4
- package/collapse/examples/zh_CN/default/accordion/README.md +0 -7
- package/collapse/examples/zh_CN/default/arrow/README.md +0 -6
- package/collapse/examples/zh_CN/default/border/README.md +0 -6
- package/collapse/examples/zh_CN/default/custom/README.md +0 -6
- package/collapse/examples/zh_CN/default/default/README.md +0 -6
- package/collapse/examples/zh_CN/default/disabled/README.md +0 -6
- package/collapse/examples/zh_CN/default/ghost/README.md +0 -6
- package/collapse/examples/zh_CN/default/icon/README.md +0 -6
- package/color/examples/en_US/default/README.md +0 -4
- package/color/examples/en_US/default/assist/README.md +0 -6
- package/color/examples/en_US/default/default/README.md +0 -8
- package/color/examples/en_US/default/neutral/README.md +0 -6
- package/color/examples/zh_CN/default/README.md +0 -4
- package/color/examples/zh_CN/default/assist/README.md +0 -6
- package/color/examples/zh_CN/default/default/README.md +0 -8
- package/color/examples/zh_CN/default/neutral/README.md +0 -6
- package/color-picker/examples/en_US/default/README.md +0 -4
- package/color-picker/examples/en_US/default/bordered/README.md +0 -6
- package/color-picker/examples/en_US/default/default/README.md +0 -6
- package/color-picker/examples/en_US/default/disabled/README.md +0 -6
- package/color-picker/examples/en_US/default/label/README.md +0 -7
- package/color-picker/examples/en_US/default/required/README.md +0 -6
- package/color-picker/examples/en_US/default/size/README.md +0 -6
- package/color-picker/examples/zh_CN/default/README.md +0 -4
- package/color-picker/examples/zh_CN/default/bordered/README.md +0 -6
- package/color-picker/examples/zh_CN/default/default/README.md +0 -6
- package/color-picker/examples/zh_CN/default/disabled/README.md +0 -6
- package/color-picker/examples/zh_CN/default/label/README.md +0 -7
- package/color-picker/examples/zh_CN/default/required/README.md +0 -6
- package/color-picker/examples/zh_CN/default/size/README.md +0 -6
- package/comment/examples/en_US/default/README.md +0 -4
- package/comment/examples/en_US/default/default/README.md +0 -6
- package/comment/examples/zh_CN/default/README.md +0 -4
- package/comment/examples/zh_CN/default/default/README.md +0 -6
- package/container/examples/en_US/default/README.md +0 -4
- package/container/examples/en_US/default/default/README.md +0 -10
- package/container/examples/zh_CN/default/README.md +0 -4
- package/container/examples/zh_CN/default/default/README.md +0 -10
- package/crumb/examples/en_US/default/README.md +0 -4
- package/crumb/examples/en_US/default/custom/README.md +0 -6
- package/crumb/examples/en_US/default/default/README.md +0 -6
- package/crumb/examples/en_US/default/icon/README.md +0 -6
- package/crumb/examples/en_US/default/separator/README.md +0 -6
- package/crumb/examples/zh_CN/default/README.md +0 -4
- package/crumb/examples/zh_CN/default/custom/README.md +0 -6
- package/crumb/examples/zh_CN/default/default/README.md +0 -6
- package/crumb/examples/zh_CN/default/icon/README.md +0 -6
- package/crumb/examples/zh_CN/default/separator/README.md +0 -6
- package/date-picker/examples/en_US/default/README.md +0 -4
- package/date-picker/examples/en_US/default/bordered/README.md +0 -6
- package/date-picker/examples/en_US/default/default/README.md +0 -6
- package/date-picker/examples/en_US/default/disabled/README.md +0 -6
- package/date-picker/examples/en_US/default/label/README.md +0 -7
- package/date-picker/examples/en_US/default/required/README.md +0 -6
- package/date-picker/examples/en_US/default/size/README.md +0 -6
- package/date-picker/examples/en_US/default/time/README.md +0 -6
- package/date-picker/examples/en_US/default/today/README.md +0 -6
- package/date-picker/examples/en_US/default/year-month/README.md +0 -6
- package/date-picker/examples/zh_CN/default/README.md +0 -4
- package/date-picker/examples/zh_CN/default/bordered/README.md +0 -6
- package/date-picker/examples/zh_CN/default/default/README.md +0 -6
- package/date-picker/examples/zh_CN/default/disabled/README.md +0 -6
- package/date-picker/examples/zh_CN/default/label/README.md +0 -7
- package/date-picker/examples/zh_CN/default/required/README.md +0 -6
- package/date-picker/examples/zh_CN/default/size/README.md +0 -6
- package/date-picker/examples/zh_CN/default/time/README.md +0 -6
- package/date-picker/examples/zh_CN/default/today/README.md +0 -6
- package/date-picker/examples/zh_CN/default/year-month/README.md +0 -6
- package/description/examples/en_US/default/README.md +0 -4
- package/description/examples/en_US/default/border/README.md +0 -6
- package/description/examples/en_US/default/default/README.md +0 -6
- package/description/examples/en_US/default/size/README.md +0 -6
- package/description/examples/en_US/default/split/README.md +0 -8
- package/description/examples/en_US/default/vertical/README.md +0 -4
- package/description/examples/zh_CN/default/README.md +0 -4
- package/description/examples/zh_CN/default/border/README.md +0 -6
- package/description/examples/zh_CN/default/default/README.md +0 -6
- package/description/examples/zh_CN/default/size/README.md +0 -6
- package/description/examples/zh_CN/default/split/README.md +0 -8
- package/description/examples/zh_CN/default/vertical/README.md +0 -4
- package/dialog/examples/en_US/default/README.md +0 -4
- package/dialog/examples/en_US/default/container/README.md +0 -6
- package/dialog/examples/en_US/default/custom/README.md +0 -6
- package/dialog/examples/en_US/default/default/README.md +0 -6
- package/dialog/examples/en_US/default/draggable/README.md +0 -6
- package/dialog/examples/en_US/default/resizable/README.md +0 -6
- package/dialog/examples/en_US/default/service/README.md +0 -6
- package/dialog/examples/zh_CN/default/README.md +0 -4
- package/dialog/examples/zh_CN/default/container/README.md +0 -6
- package/dialog/examples/zh_CN/default/custom/README.md +0 -6
- package/dialog/examples/zh_CN/default/default/README.md +0 -6
- package/dialog/examples/zh_CN/default/draggable/README.md +0 -6
- package/dialog/examples/zh_CN/default/resizable/README.md +0 -6
- package/dialog/examples/zh_CN/default/service/README.md +0 -6
- package/drawer/examples/en_US/default/README.md +0 -4
- package/drawer/examples/en_US/default/container/README.md +0 -6
- package/drawer/examples/en_US/default/custom/README.md +0 -6
- package/drawer/examples/en_US/default/default/README.md +0 -6
- package/drawer/examples/en_US/default/multiple/README.md +0 -6
- package/drawer/examples/en_US/default/service/README.md +0 -6
- package/drawer/examples/en_US/default/title/README.md +0 -6
- package/drawer/examples/zh_CN/default/README.md +0 -4
- package/drawer/examples/zh_CN/default/container/README.md +0 -6
- package/drawer/examples/zh_CN/default/custom/README.md +0 -6
- package/drawer/examples/zh_CN/default/default/README.md +0 -6
- package/drawer/examples/zh_CN/default/multiple/README.md +0 -6
- package/drawer/examples/zh_CN/default/service/README.md +0 -6
- package/drawer/examples/zh_CN/default/title/README.md +0 -6
- package/dropdown/examples/en_US/default/README.md +0 -4
- package/dropdown/examples/en_US/default/default/README.md +0 -6
- package/dropdown/examples/en_US/default/multistage/README.md +0 -6
- package/dropdown/examples/en_US/default/prop/README.md +0 -6
- package/dropdown/examples/en_US/default/trigger/README.md +0 -6
- package/dropdown/examples/zh_CN/default/README.md +0 -4
- package/dropdown/examples/zh_CN/default/default/README.md +0 -6
- package/dropdown/examples/zh_CN/default/multistage/README.md +0 -6
- package/dropdown/examples/zh_CN/default/prop/README.md +0 -6
- package/dropdown/examples/zh_CN/default/trigger/README.md +0 -6
- package/empty/examples/en_US/default/README.md +0 -4
- package/empty/examples/en_US/default/custom/README.md +0 -6
- package/empty/examples/en_US/default/default/README.md +0 -6
- package/empty/examples/zh_CN/default/README.md +0 -4
- package/empty/examples/zh_CN/default/custom/README.md +0 -6
- package/empty/examples/zh_CN/default/default/README.md +0 -6
- package/find/examples/en_US/default/README.md +0 -4
- package/find/examples/en_US/default/bordered/README.md +0 -6
- package/find/examples/en_US/default/default/README.md +0 -10
- package/find/examples/en_US/default/disabled/README.md +0 -6
- package/find/examples/en_US/default/label/README.md +0 -7
- package/find/examples/en_US/default/size/README.md +0 -6
- package/find/examples/en_US/default/tree/README.md +0 -6
- package/find/examples/en_US/default/tree-table/README.md +0 -5
- package/find/examples/zh_CN/default/README.md +0 -4
- package/find/examples/zh_CN/default/bordered/README.md +0 -6
- package/find/examples/zh_CN/default/default/README.md +0 -10
- package/find/examples/zh_CN/default/disabled/README.md +0 -6
- package/find/examples/zh_CN/default/label/README.md +0 -7
- package/find/examples/zh_CN/default/size/README.md +0 -6
- package/find/examples/zh_CN/default/tree/README.md +0 -6
- package/find/examples/zh_CN/default/tree-table/README.md +0 -5
- package/form/examples/en_US/default/README.md +0 -4
- package/form/examples/en_US/default/default/README.md +0 -6
- package/form/examples/en_US/default/form-vaild/README.md +0 -8
- package/form/examples/en_US/default/label-row/README.md +0 -5
- package/form/examples/en_US/default/title/README.md +0 -4
- package/form/examples/zh_CN/default/README.md +0 -4
- package/form/examples/zh_CN/default/default/README.md +0 -6
- package/form/examples/zh_CN/default/form-vaild/README.md +0 -8
- package/form/examples/zh_CN/default/label-row/README.md +0 -5
- package/form/examples/zh_CN/default/title/README.md +0 -4
- package/highlight/examples/en_US/default/README.md +0 -4
- package/highlight/examples/en_US/default/html/README.md +0 -6
- package/highlight/examples/en_US/default/scss/README.md +0 -6
- package/highlight/examples/en_US/default/typescript/README.md +0 -6
- package/highlight/examples/zh_CN/default/README.md +0 -4
- package/highlight/examples/zh_CN/default/html/README.md +0 -6
- package/highlight/examples/zh_CN/default/scss/README.md +0 -6
- package/highlight/examples/zh_CN/default/typescript/README.md +0 -6
- package/icon/examples/en_US/default/README.md +0 -4
- package/icon/examples/en_US/default/ant-design/README.md +0 -12
- package/icon/examples/en_US/default/eva/README.md +0 -11
- package/icon/examples/en_US/default/feather/README.md +0 -8
- package/icon/examples/en_US/default/font-awesome/README.md +0 -10
- package/icon/examples/en_US/default/material-design/README.md +0 -11
- package/icon/examples/zh_CN/default/README.md +0 -4
- package/icon/examples/zh_CN/default/ant-design/README.md +0 -12
- package/icon/examples/zh_CN/default/eva/README.md +0 -11
- package/icon/examples/zh_CN/default/feather/README.md +0 -8
- package/icon/examples/zh_CN/default/font-awesome/README.md +0 -10
- package/icon/examples/zh_CN/default/material-design/README.md +0 -11
- package/image/examples/en_US/default/README.md +0 -4
- package/image/examples/en_US/default/default/README.md +0 -6
- package/image/examples/en_US/default/fallback/README.md +0 -6
- package/image/examples/en_US/default/group/README.md +0 -6
- package/image/examples/en_US/default/placeholder/README.md +0 -6
- package/image/examples/zh_CN/default/README.md +0 -4
- package/image/examples/zh_CN/default/default/README.md +0 -6
- package/image/examples/zh_CN/default/fallback/README.md +0 -6
- package/image/examples/zh_CN/default/group/README.md +0 -6
- package/image/examples/zh_CN/default/placeholder/README.md +0 -6
- package/input/examples/en_US/default/README.md +0 -4
- package/input/examples/en_US/default/bordered/README.md +0 -6
- package/input/examples/en_US/default/clear/README.md +0 -6
- package/input/examples/en_US/default/default/README.md +0 -6
- package/input/examples/en_US/default/disabled/README.md +0 -6
- package/input/examples/en_US/default/focus/README.md +0 -6
- package/input/examples/en_US/default/group/README.md +0 -6
- package/input/examples/en_US/default/icon/README.md +0 -7
- package/input/examples/en_US/default/label/README.md +0 -7
- package/input/examples/en_US/default/length/README.md +0 -6
- package/input/examples/en_US/default/perpost/README.md +0 -6
- package/input/examples/en_US/default/required/README.md +0 -6
- package/input/examples/en_US/default/size/README.md +0 -6
- package/input/examples/zh_CN/default/README.md +0 -4
- package/input/examples/zh_CN/default/bordered/README.md +0 -6
- package/input/examples/zh_CN/default/clear/README.md +0 -6
- package/input/examples/zh_CN/default/default/README.md +0 -6
- package/input/examples/zh_CN/default/disabled/README.md +0 -6
- package/input/examples/zh_CN/default/focus/README.md +0 -6
- package/input/examples/zh_CN/default/group/README.md +0 -6
- package/input/examples/zh_CN/default/icon/README.md +0 -7
- package/input/examples/zh_CN/default/label/README.md +0 -7
- package/input/examples/zh_CN/default/length/README.md +0 -6
- package/input/examples/zh_CN/default/perpost/README.md +0 -6
- package/input/examples/zh_CN/default/required/README.md +0 -6
- package/input/examples/zh_CN/default/size/README.md +0 -6
- package/input-number/examples/en_US/default/README.md +0 -4
- package/input-number/examples/en_US/default/bordered/README.md +0 -6
- package/input-number/examples/en_US/default/default/README.md +0 -6
- package/input-number/examples/en_US/default/disabled/README.md +0 -6
- package/input-number/examples/en_US/default/label/README.md +0 -7
- package/input-number/examples/en_US/default/limit/README.md +0 -6
- package/input-number/examples/en_US/default/precision/README.md +0 -7
- package/input-number/examples/en_US/default/required/README.md +0 -6
- package/input-number/examples/en_US/default/size/README.md +0 -6
- package/input-number/examples/zh_CN/default/README.md +0 -4
- package/input-number/examples/zh_CN/default/bordered/README.md +0 -6
- package/input-number/examples/zh_CN/default/default/README.md +0 -6
- package/input-number/examples/zh_CN/default/disabled/README.md +0 -6
- package/input-number/examples/zh_CN/default/label/README.md +0 -7
- package/input-number/examples/zh_CN/default/limit/README.md +0 -6
- package/input-number/examples/zh_CN/default/precision/README.md +0 -7
- package/input-number/examples/zh_CN/default/required/README.md +0 -6
- package/input-number/examples/zh_CN/default/size/README.md +0 -6
- package/layout/examples/en_US/default/README.md +0 -4
- package/layout/examples/en_US/default/blend/README.md +0 -6
- package/layout/examples/en_US/default/default/README.md +0 -10
- package/layout/examples/en_US/default/flex/README.md +0 -10
- package/layout/examples/en_US/default/hidden/README.md +0 -20
- package/layout/examples/en_US/default/layout/README.md +0 -6
- package/layout/examples/en_US/default/offset/README.md +0 -8
- package/layout/examples/en_US/default/space/README.md +0 -9
- package/layout/examples/zh_CN/default/README.md +0 -4
- package/layout/examples/zh_CN/default/blend/README.md +0 -6
- package/layout/examples/zh_CN/default/default/README.md +0 -10
- package/layout/examples/zh_CN/default/flex/README.md +0 -10
- package/layout/examples/zh_CN/default/hidden/README.md +0 -20
- package/layout/examples/zh_CN/default/layout/README.md +0 -6
- package/layout/examples/zh_CN/default/offset/README.md +0 -8
- package/layout/examples/zh_CN/default/space/README.md +0 -9
- package/link/examples/en_US/default/README.md +0 -4
- package/link/examples/en_US/default/default/README.md +0 -6
- package/link/examples/en_US/default/disabled/README.md +0 -8
- package/link/examples/en_US/default/icon/README.md +0 -6
- package/link/examples/en_US/default/underline/README.md +0 -6
- package/link/examples/zh_CN/default/README.md +0 -4
- package/link/examples/zh_CN/default/default/README.md +0 -6
- package/link/examples/zh_CN/default/disabled/README.md +0 -8
- package/link/examples/zh_CN/default/icon/README.md +0 -6
- package/link/examples/zh_CN/default/underline/README.md +0 -6
- package/list/examples/en_US/default/README.md +0 -4
- package/list/examples/en_US/default/default/README.md +0 -7
- package/list/examples/en_US/default/load-more/README.md +0 -8
- package/list/examples/en_US/default/scroll/README.md +0 -8
- package/list/examples/en_US/default/size/README.md +0 -6
- package/list/examples/zh_CN/default/README.md +0 -4
- package/list/examples/zh_CN/default/default/README.md +0 -7
- package/list/examples/zh_CN/default/load-more/README.md +0 -8
- package/list/examples/zh_CN/default/scroll/README.md +0 -8
- package/list/examples/zh_CN/default/size/README.md +0 -6
- package/loading/examples/en_US/default/README.md +0 -4
- package/loading/examples/en_US/default/custom/README.md +0 -6
- package/loading/examples/en_US/default/default/README.md +0 -6
- package/loading/examples/en_US/default/full-screen/README.md +0 -6
- package/loading/examples/zh_CN/default/README.md +0 -4
- package/loading/examples/zh_CN/default/custom/README.md +0 -6
- package/loading/examples/zh_CN/default/default/README.md +0 -6
- package/loading/examples/zh_CN/default/full-screen/README.md +0 -6
- package/menu/examples/en_US/default/README.md +0 -4
- package/menu/examples/en_US/default/default/README.md +0 -6
- package/menu/examples/en_US/default/icon/README.md +0 -6
- package/menu/examples/en_US/default/layout/README.md +0 -6
- package/menu/examples/en_US/default/leaf/README.md +0 -6
- package/menu/examples/en_US/default/size/README.md +0 -6
- package/menu/examples/zh_CN/default/README.md +0 -4
- package/menu/examples/zh_CN/default/default/README.md +0 -6
- package/menu/examples/zh_CN/default/icon/README.md +0 -6
- package/menu/examples/zh_CN/default/layout/README.md +0 -6
- package/menu/examples/zh_CN/default/leaf/README.md +0 -6
- package/menu/examples/zh_CN/default/size/README.md +0 -6
- package/message/examples/en_US/default/README.md +0 -4
- package/message/examples/en_US/default/close/README.md +0 -6
- package/message/examples/en_US/default/default/README.md +0 -6
- package/message/examples/en_US/default/loading/README.md +0 -6
- package/message/examples/en_US/default/single/README.md +0 -6
- package/message/examples/en_US/default/type/README.md +0 -6
- package/message/examples/zh_CN/default/README.md +0 -4
- package/message/examples/zh_CN/default/close/README.md +0 -6
- package/message/examples/zh_CN/default/default/README.md +0 -6
- package/message/examples/zh_CN/default/loading/README.md +0 -6
- package/message/examples/zh_CN/default/single/README.md +0 -6
- package/message/examples/zh_CN/default/type/README.md +0 -6
- package/message-box/examples/en_US/default/README.md +0 -4
- package/message-box/examples/en_US/default/confirm/README.md +0 -6
- package/message-box/examples/en_US/default/custom/README.md +0 -6
- package/message-box/examples/en_US/default/default/README.md +0 -6
- package/message-box/examples/en_US/default/prompt/README.md +0 -6
- package/message-box/examples/zh_CN/default/README.md +0 -4
- package/message-box/examples/zh_CN/default/confirm/README.md +0 -6
- package/message-box/examples/zh_CN/default/custom/README.md +0 -6
- package/message-box/examples/zh_CN/default/default/README.md +0 -6
- package/message-box/examples/zh_CN/default/prompt/README.md +0 -6
- package/notification/examples/en_US/default/README.md +0 -4
- package/notification/examples/en_US/default/default/README.md +0 -6
- package/notification/examples/en_US/default/type/README.md +0 -7
- package/notification/examples/zh_CN/default/README.md +0 -4
- package/notification/examples/zh_CN/default/default/README.md +0 -6
- package/notification/examples/zh_CN/default/type/README.md +0 -7
- package/outlet/examples/en_US/default/README.md +0 -4
- package/outlet/examples/en_US/default/default/README.md +0 -6
- package/outlet/examples/zh_CN/default/README.md +0 -4
- package/outlet/examples/zh_CN/default/default/README.md +0 -6
- package/page-header/examples/en_US/default/README.md +0 -4
- package/page-header/examples/en_US/default/default/README.md +0 -6
- package/page-header/examples/zh_CN/default/README.md +0 -4
- package/page-header/examples/zh_CN/default/default/README.md +0 -6
- package/pagination/examples/en_US/default/README.md +0 -4
- package/pagination/examples/en_US/default/default/README.md +0 -6
- package/pagination/examples/en_US/default/style/README.md +0 -8
- package/pagination/examples/zh_CN/default/README.md +0 -4
- package/pagination/examples/zh_CN/default/default/README.md +0 -6
- package/pagination/examples/zh_CN/default/style/README.md +0 -10
- package/popconfirm/examples/en_US/default/README.md +0 -4
- package/popconfirm/examples/en_US/default/async-close/README.md +0 -6
- package/popconfirm/examples/en_US/default/condition/README.md +0 -6
- package/popconfirm/examples/en_US/default/default/README.md +0 -6
- package/popconfirm/examples/zh_CN/default/README.md +0 -4
- package/popconfirm/examples/zh_CN/default/async-close/README.md +0 -6
- package/popconfirm/examples/zh_CN/default/condition/README.md +0 -6
- package/popconfirm/examples/zh_CN/default/default/README.md +0 -6
- package/popover/examples/en_US/default/README.md +0 -4
- package/popover/examples/en_US/default/default/README.md +0 -6
- package/popover/examples/zh_CN/default/README.md +0 -4
- package/popover/examples/zh_CN/default/default/README.md +0 -6
- package/progress/examples/en_US/default/README.md +0 -4
- package/progress/examples/en_US/default/circle/README.md +0 -6
- package/progress/examples/en_US/default/color/README.md +0 -6
- package/progress/examples/en_US/default/dashboard/README.md +0 -6
- package/progress/examples/en_US/default/default/README.md +0 -6
- package/progress/examples/en_US/default/format/README.md +0 -6
- package/progress/examples/en_US/default/gradient/README.md +0 -6
- package/progress/examples/en_US/default/inside/README.md +0 -6
- package/progress/examples/en_US/default/steps/README.md +0 -6
- package/progress/examples/en_US/default/subsection/README.md +0 -6
- package/progress/examples/zh_CN/default/README.md +0 -4
- package/progress/examples/zh_CN/default/circle/README.md +0 -6
- package/progress/examples/zh_CN/default/color/README.md +0 -6
- package/progress/examples/zh_CN/default/dashboard/README.md +0 -6
- package/progress/examples/zh_CN/default/default/README.md +0 -6
- package/progress/examples/zh_CN/default/format/README.md +0 -6
- package/progress/examples/zh_CN/default/gradient/README.md +0 -6
- package/progress/examples/zh_CN/default/inside/README.md +0 -6
- package/progress/examples/zh_CN/default/steps/README.md +0 -6
- package/progress/examples/zh_CN/default/subsection/README.md +0 -6
- package/radio/examples/en_US/default/README.md +0 -4
- package/radio/examples/en_US/default/async/README.md +0 -6
- package/radio/examples/en_US/default/button/README.md +0 -6
- package/radio/examples/en_US/default/default/README.md +0 -9
- package/radio/examples/en_US/default/disabled/README.md +0 -9
- package/radio/examples/en_US/default/icon/README.md +0 -6
- package/radio/examples/zh_CN/default/README.md +0 -4
- package/radio/examples/zh_CN/default/async/README.md +0 -6
- package/radio/examples/zh_CN/default/button/README.md +0 -6
- package/radio/examples/zh_CN/default/default/README.md +0 -9
- package/radio/examples/zh_CN/default/disabled/README.md +0 -9
- package/radio/examples/zh_CN/default/icon/README.md +0 -6
- package/rate/examples/en_US/default/README.md +0 -4
- package/rate/examples/en_US/default/color/README.md +0 -6
- package/rate/examples/en_US/default/custom/README.md +0 -6
- package/rate/examples/en_US/default/default/README.md +0 -6
- package/rate/examples/en_US/default/disabled/README.md +0 -8
- package/rate/examples/en_US/default/half/README.md +0 -6
- package/rate/examples/zh_CN/default/README.md +0 -4
- package/rate/examples/zh_CN/default/color/README.md +0 -6
- package/rate/examples/zh_CN/default/custom/README.md +0 -6
- package/rate/examples/zh_CN/default/default/README.md +0 -6
- package/rate/examples/zh_CN/default/disabled/README.md +0 -8
- package/rate/examples/zh_CN/default/half/README.md +0 -6
- package/result/examples/en_US/default/README.md +0 -4
- package/result/examples/en_US/default/error/README.md +0 -4
- package/result/examples/en_US/default/icon/README.md +0 -4
- package/result/examples/en_US/default/img/README.md +0 -4
- package/result/examples/en_US/default/info/README.md +0 -4
- package/result/examples/en_US/default/result403/README.md +0 -4
- package/result/examples/en_US/default/result404/README.md +0 -4
- package/result/examples/en_US/default/result500/README.md +0 -4
- package/result/examples/en_US/default/success/README.md +0 -4
- package/result/examples/en_US/default/warning/README.md +0 -4
- package/result/examples/zh_CN/default/README.md +0 -4
- package/result/examples/zh_CN/default/error/README.md +0 -4
- package/result/examples/zh_CN/default/icon/README.md +0 -4
- package/result/examples/zh_CN/default/img/README.md +0 -4
- package/result/examples/zh_CN/default/info/README.md +0 -4
- package/result/examples/zh_CN/default/result403/README.md +0 -4
- package/result/examples/zh_CN/default/result404/README.md +0 -4
- package/result/examples/zh_CN/default/result500/README.md +0 -4
- package/result/examples/zh_CN/default/success/README.md +0 -4
- package/result/examples/zh_CN/default/warning/README.md +0 -4
- package/select/examples/en_US/default/README.md +0 -4
- package/select/examples/en_US/default/async/README.md +0 -7
- package/select/examples/en_US/default/bordered/README.md +0 -6
- package/select/examples/en_US/default/custom/README.md +0 -6
- package/select/examples/en_US/default/default/README.md +0 -7
- package/select/examples/en_US/default/disabled/README.md +0 -6
- package/select/examples/en_US/default/label/README.md +0 -7
- package/select/examples/en_US/default/multiple/README.md +0 -6
- package/select/examples/en_US/default/required/README.md +0 -6
- package/select/examples/en_US/default/search/README.md +0 -6
- package/select/examples/en_US/default/size/README.md +0 -6
- package/select/examples/zh_CN/default/README.md +0 -4
- package/select/examples/zh_CN/default/async/README.md +0 -7
- package/select/examples/zh_CN/default/bordered/README.md +0 -6
- package/select/examples/zh_CN/default/custom/README.md +0 -6
- package/select/examples/zh_CN/default/default/README.md +0 -7
- package/select/examples/zh_CN/default/disabled/README.md +0 -6
- package/select/examples/zh_CN/default/label/README.md +0 -7
- package/select/examples/zh_CN/default/multiple/README.md +0 -6
- package/select/examples/zh_CN/default/required/README.md +0 -6
- package/select/examples/zh_CN/default/search/README.md +0 -6
- package/select/examples/zh_CN/default/size/README.md +0 -6
- package/skeleton/examples/en_US/default/README.md +0 -4
- package/skeleton/examples/en_US/default/active/README.md +0 -6
- package/skeleton/examples/en_US/default/complex/README.md +0 -6
- package/skeleton/examples/en_US/default/default/README.md +0 -6
- package/skeleton/examples/en_US/default/list/README.md +0 -6
- package/skeleton/examples/en_US/default/loading/README.md +0 -6
- package/skeleton/examples/en_US/default/table/README.md +0 -6
- package/skeleton/examples/zh_CN/default/README.md +0 -4
- package/skeleton/examples/zh_CN/default/active/README.md +0 -6
- package/skeleton/examples/zh_CN/default/complex/README.md +0 -6
- package/skeleton/examples/zh_CN/default/default/README.md +0 -6
- package/skeleton/examples/zh_CN/default/list/README.md +0 -6
- package/skeleton/examples/zh_CN/default/loading/README.md +0 -6
- package/skeleton/examples/zh_CN/default/table/README.md +0 -6
- package/slider/examples/en_US/default/README.md +0 -4
- package/slider/examples/en_US/default/activated/README.md +0 -6
- package/slider/examples/en_US/default/custom/README.md +0 -6
- package/slider/examples/en_US/default/default/README.md +0 -6
- package/slider/examples/en_US/default/expand/README.md +0 -7
- package/slider/examples/en_US/default/scroll/README.md +0 -6
- package/slider/examples/en_US/default/size/README.md +0 -6
- package/slider/examples/zh_CN/default/README.md +0 -4
- package/slider/examples/zh_CN/default/activated/README.md +0 -6
- package/slider/examples/zh_CN/default/custom/README.md +0 -6
- package/slider/examples/zh_CN/default/default/README.md +0 -6
- package/slider/examples/zh_CN/default/expand/README.md +0 -7
- package/slider/examples/zh_CN/default/scroll/README.md +0 -6
- package/slider/examples/zh_CN/default/size/README.md +0 -6
- package/slider-select/examples/en_US/default/README.md +0 -4
- package/slider-select/examples/en_US/default/default/README.md +0 -6
- package/slider-select/examples/en_US/default/disabled/README.md +0 -6
- package/slider-select/examples/en_US/default/label/README.md +0 -7
- package/slider-select/examples/en_US/default/limit/README.md +0 -6
- package/slider-select/examples/en_US/default/precision/README.md +0 -7
- package/slider-select/examples/zh_CN/default/README.md +0 -4
- package/slider-select/examples/zh_CN/default/default/README.md +0 -6
- package/slider-select/examples/zh_CN/default/disabled/README.md +0 -6
- package/slider-select/examples/zh_CN/default/label/README.md +0 -7
- package/slider-select/examples/zh_CN/default/limit/README.md +0 -6
- package/slider-select/examples/zh_CN/default/precision/README.md +0 -7
- package/statistic/examples/en_US/default/README.md +0 -4
- package/statistic/examples/en_US/default/default/README.md +0 -6
- package/statistic/examples/en_US/default/down/README.md +0 -6
- package/statistic/examples/en_US/default/prefix/README.md +0 -7
- package/statistic/examples/zh_CN/default/README.md +0 -4
- package/statistic/examples/zh_CN/default/default/README.md +0 -6
- package/statistic/examples/zh_CN/default/down/README.md +0 -6
- package/statistic/examples/zh_CN/default/prefix/README.md +0 -7
- package/steps/examples/en_US/default/README.md +0 -4
- package/steps/examples/en_US/default/custom/README.md +0 -6
- package/steps/examples/en_US/default/default/README.md +0 -6
- package/steps/examples/en_US/default/description/README.md +0 -6
- package/steps/examples/en_US/default/icon/README.md +0 -6
- package/steps/examples/en_US/default/index/README.md +0 -6
- package/steps/examples/en_US/default/layout/README.md +0 -6
- package/steps/examples/en_US/default/node-status/README.md +0 -6
- package/steps/examples/en_US/default/status/README.md +0 -6
- package/steps/examples/en_US/default/tabs/README.md +0 -6
- package/steps/examples/zh_CN/default/README.md +0 -4
- package/steps/examples/zh_CN/default/custom/README.md +0 -6
- package/steps/examples/zh_CN/default/default/README.md +0 -6
- package/steps/examples/zh_CN/default/description/README.md +0 -6
- package/steps/examples/zh_CN/default/icon/README.md +0 -6
- package/steps/examples/zh_CN/default/index/README.md +0 -6
- package/steps/examples/zh_CN/default/layout/README.md +0 -6
- package/steps/examples/zh_CN/default/node-status/README.md +0 -6
- package/steps/examples/zh_CN/default/status/README.md +0 -6
- package/steps/examples/zh_CN/default/tabs/README.md +0 -6
- package/switch/examples/en_US/default/README.md +0 -4
- package/switch/examples/en_US/default/default/README.md +0 -6
- package/switch/examples/en_US/default/disabled/README.md +0 -6
- package/switch/examples/en_US/default/label/README.md +0 -7
- package/switch/examples/zh_CN/default/README.md +0 -4
- package/switch/examples/zh_CN/default/default/README.md +0 -6
- package/switch/examples/zh_CN/default/disabled/README.md +0 -6
- package/switch/examples/zh_CN/default/label/README.md +0 -7
- package/table/examples/en_US/default/README.md +0 -4
- package/table/examples/en_US/default/adaption/README.md +0 -6
- package/table/examples/en_US/default/bordered/README.md +0 -6
- package/table/examples/en_US/default/checkbox/README.md +0 -7
- package/table/examples/en_US/default/config/README.md +0 -6
- package/table/examples/en_US/default/custom/README.md +0 -10
- package/table/examples/en_US/default/default/README.md +0 -7
- package/table/examples/en_US/default/drag-width/README.md +0 -6
- package/table/examples/en_US/default/edit/README.md +0 -7
- package/table/examples/en_US/default/expand/README.md +0 -8
- package/table/examples/en_US/default/fix/README.md +0 -6
- package/table/examples/en_US/default/head/README.md +0 -6
- package/table/examples/en_US/default/header/README.md +0 -6
- package/table/examples/en_US/default/row-size/README.md +0 -6
- package/table/examples/en_US/default/rowclass/README.md +0 -6
- package/table/examples/en_US/default/scroll/README.md +0 -7
- package/table/examples/en_US/default/search/README.md +0 -6
- package/table/examples/zh_CN/default/README.md +0 -4
- package/table/examples/zh_CN/default/adaption/README.md +0 -6
- package/table/examples/zh_CN/default/bordered/README.md +0 -6
- package/table/examples/zh_CN/default/checkbox/README.md +0 -8
- package/table/examples/zh_CN/default/config/README.md +0 -6
- package/table/examples/zh_CN/default/custom/README.md +0 -10
- package/table/examples/zh_CN/default/default/README.md +0 -7
- package/table/examples/zh_CN/default/drag-width/README.md +0 -6
- package/table/examples/zh_CN/default/edit/README.md +0 -7
- package/table/examples/zh_CN/default/expand/README.md +0 -8
- package/table/examples/zh_CN/default/fix/README.md +0 -6
- package/table/examples/zh_CN/default/head/README.md +0 -6
- package/table/examples/zh_CN/default/header/README.md +0 -6
- package/table/examples/zh_CN/default/row-size/README.md +0 -6
- package/table/examples/zh_CN/default/rowclass/README.md +0 -6
- package/table/examples/zh_CN/default/scroll/README.md +0 -7
- package/table/examples/zh_CN/default/search/README.md +0 -6
- package/tabs/examples/en_US/default/README.md +0 -4
- package/tabs/examples/en_US/default/action/README.md +0 -6
- package/tabs/examples/en_US/default/card/README.md +0 -6
- package/tabs/examples/en_US/default/custom/README.md +0 -6
- package/tabs/examples/en_US/default/default/README.md +0 -6
- package/tabs/examples/en_US/default/expand/README.md +0 -6
- package/tabs/examples/en_US/default/layout/README.md +0 -6
- package/tabs/examples/en_US/default/tag/README.md +0 -6
- package/tabs/examples/zh_CN/default/README.md +0 -4
- package/tabs/examples/zh_CN/default/action/README.md +0 -6
- package/tabs/examples/zh_CN/default/card/README.md +0 -6
- package/tabs/examples/zh_CN/default/custom/README.md +0 -6
- package/tabs/examples/zh_CN/default/default/README.md +0 -6
- package/tabs/examples/zh_CN/default/expand/README.md +0 -6
- package/tabs/examples/zh_CN/default/layout/README.md +0 -6
- package/tabs/examples/zh_CN/default/tag/README.md +0 -6
- package/tag/examples/en_US/default/README.md +0 -4
- package/tag/examples/en_US/default/bordered/README.md +0 -6
- package/tag/examples/en_US/default/checked/README.md +0 -6
- package/tag/examples/en_US/default/close/README.md +0 -6
- package/tag/examples/en_US/default/color/README.md +0 -6
- package/tag/examples/en_US/default/default/README.md +0 -6
- package/tag/examples/en_US/default/size/README.md +0 -6
- package/tag/examples/zh_CN/default/README.md +0 -4
- package/tag/examples/zh_CN/default/bordered/README.md +0 -6
- package/tag/examples/zh_CN/default/checked/README.md +0 -6
- package/tag/examples/zh_CN/default/close/README.md +0 -6
- package/tag/examples/zh_CN/default/color/README.md +0 -6
- package/tag/examples/zh_CN/default/default/README.md +0 -6
- package/tag/examples/zh_CN/default/size/README.md +0 -6
- package/text-retract/examples/en_US/default/README.md +0 -4
- package/text-retract/examples/en_US/default/default/README.md +0 -6
- package/text-retract/examples/zh_CN/default/README.md +0 -4
- package/text-retract/examples/zh_CN/default/default/README.md +0 -6
- package/textarea/examples/en_US/default/README.md +0 -4
- package/textarea/examples/en_US/default/clear/README.md +0 -6
- package/textarea/examples/en_US/default/default/README.md +0 -6
- package/textarea/examples/en_US/default/disabled/README.md +0 -6
- package/textarea/examples/en_US/default/icon/README.md +0 -7
- package/textarea/examples/en_US/default/label/README.md +0 -7
- package/textarea/examples/en_US/default/length/README.md +0 -6
- package/textarea/examples/en_US/default/required/README.md +0 -6
- package/textarea/examples/zh_CN/default/README.md +0 -4
- package/textarea/examples/zh_CN/default/clear/README.md +0 -6
- package/textarea/examples/zh_CN/default/default/README.md +0 -6
- package/textarea/examples/zh_CN/default/disabled/README.md +0 -6
- package/textarea/examples/zh_CN/default/icon/README.md +0 -7
- package/textarea/examples/zh_CN/default/label/README.md +0 -7
- package/textarea/examples/zh_CN/default/length/README.md +0 -6
- package/textarea/examples/zh_CN/default/required/README.md +0 -6
- package/theme/examples/en_US/default/README.md +0 -4
- package/theme/examples/en_US/default/default/README.md +0 -8
- package/theme/examples/zh_CN/default/README.md +0 -4
- package/theme/examples/zh_CN/default/default/README.md +0 -8
- package/time-ago/examples/en_US/default/README.md +0 -4
- package/time-ago/examples/en_US/default/default/README.md +0 -4
- package/time-ago/examples/zh_CN/default/README.md +0 -4
- package/time-ago/examples/zh_CN/default/default/README.md +0 -4
- package/time-picker/examples/en_US/default/README.md +0 -4
- package/time-picker/examples/en_US/default/bordered/README.md +0 -6
- package/time-picker/examples/en_US/default/default/README.md +0 -7
- package/time-picker/examples/en_US/default/disabled/README.md +0 -6
- package/time-picker/examples/en_US/default/hour-minute/README.md +0 -6
- package/time-picker/examples/en_US/default/label/README.md +0 -7
- package/time-picker/examples/en_US/default/required/README.md +0 -6
- package/time-picker/examples/en_US/default/size/README.md +0 -6
- package/time-picker/examples/zh_CN/default/README.md +0 -4
- package/time-picker/examples/zh_CN/default/bordered/README.md +0 -6
- package/time-picker/examples/zh_CN/default/default/README.md +0 -7
- package/time-picker/examples/zh_CN/default/disabled/README.md +0 -6
- package/time-picker/examples/zh_CN/default/hour-minute/README.md +0 -6
- package/time-picker/examples/zh_CN/default/label/README.md +0 -7
- package/time-picker/examples/zh_CN/default/required/README.md +0 -6
- package/time-picker/examples/zh_CN/default/size/README.md +0 -6
- package/time-range/examples/en_US/default/README.md +0 -4
- package/time-range/examples/en_US/default/default/README.md +0 -6
- package/time-range/examples/zh_CN/default/README.md +0 -4
- package/time-range/examples/zh_CN/default/default/README.md +0 -6
- package/timeline/examples/en_US/default/README.md +0 -4
- package/timeline/examples/en_US/default/color/README.md +0 -6
- package/timeline/examples/en_US/default/custom/README.md +0 -6
- package/timeline/examples/en_US/default/default/README.md +0 -6
- package/timeline/examples/en_US/default/icon/README.md +0 -6
- package/timeline/examples/en_US/default/loading/README.md +0 -6
- package/timeline/examples/en_US/default/mode/README.md +0 -6
- package/timeline/examples/en_US/default/size/README.md +0 -6
- package/timeline/examples/en_US/default/type/README.md +0 -6
- package/timeline/examples/zh_CN/default/README.md +0 -4
- package/timeline/examples/zh_CN/default/color/README.md +0 -6
- package/timeline/examples/zh_CN/default/custom/README.md +0 -6
- package/timeline/examples/zh_CN/default/default/README.md +0 -6
- package/timeline/examples/zh_CN/default/icon/README.md +0 -6
- package/timeline/examples/zh_CN/default/loading/README.md +0 -6
- package/timeline/examples/zh_CN/default/mode/README.md +0 -6
- package/timeline/examples/zh_CN/default/size/README.md +0 -6
- package/timeline/examples/zh_CN/default/type/README.md +0 -6
- package/tooltip/examples/en_US/default/README.md +0 -4
- package/tooltip/examples/en_US/default/default/README.md +0 -6
- package/tooltip/examples/zh_CN/default/README.md +0 -4
- package/tooltip/examples/zh_CN/default/default/README.md +0 -6
- package/transfer/examples/en_US/default/README.md +0 -4
- package/transfer/examples/en_US/default/custom/README.md +0 -6
- package/transfer/examples/en_US/default/default/README.md +0 -6
- package/transfer/examples/en_US/default/drag/README.md +0 -6
- package/transfer/examples/zh_CN/default/README.md +0 -4
- package/transfer/examples/zh_CN/default/custom/README.md +0 -6
- package/transfer/examples/zh_CN/default/default/README.md +0 -6
- package/transfer/examples/zh_CN/default/drag/README.md +0 -6
- package/tree/examples/en_US/default/README.md +0 -4
- package/tree/examples/en_US/default/checkbox/README.md +0 -6
- package/tree/examples/en_US/default/control/README.md +0 -6
- package/tree/examples/en_US/default/custom/README.md +0 -6
- package/tree/examples/en_US/default/default/README.md +0 -4
- package/tree/examples/en_US/default/height/README.md +0 -7
- package/tree/examples/en_US/default/lazy/README.md +0 -6
- package/tree/examples/en_US/default/open/README.md +0 -6
- package/tree/examples/en_US/default/status/README.md +0 -6
- package/tree/examples/en_US/default/virtual-scroll/README.md +0 -7
- package/tree/examples/zh_CN/default/README.md +0 -4
- package/tree/examples/zh_CN/default/checkbox/README.md +0 -6
- package/tree/examples/zh_CN/default/control/README.md +0 -6
- package/tree/examples/zh_CN/default/custom/README.md +0 -6
- package/tree/examples/zh_CN/default/default/README.md +0 -4
- package/tree/examples/zh_CN/default/height/README.md +0 -7
- package/tree/examples/zh_CN/default/lazy/README.md +0 -6
- package/tree/examples/zh_CN/default/open/README.md +0 -6
- package/tree/examples/zh_CN/default/status/README.md +0 -6
- package/tree/examples/zh_CN/default/virtual-scroll/README.md +0 -7
- package/tree-file/examples/en_US/default/README.md +0 -4
- package/tree-file/examples/en_US/default/default/README.md +0 -6
- package/tree-file/examples/zh_CN/default/README.md +0 -4
- package/tree-file/examples/zh_CN/default/default/README.md +0 -6
- package/typography/examples/en_US/default/README.md +0 -4
- package/typography/examples/en_US/default/default/README.md +0 -6
- package/typography/examples/en_US/default/line-height/README.md +0 -6
- package/typography/examples/en_US/default/size/README.md +0 -6
- package/typography/examples/zh_CN/default/README.md +0 -4
- package/typography/examples/zh_CN/default/default/README.md +0 -6
- package/typography/examples/zh_CN/default/line-height/README.md +0 -6
- package/typography/examples/zh_CN/default/size/README.md +0 -6
- package/upload/examples/en_US/default/README.md +0 -4
- package/upload/examples/en_US/default/custom/README.md +0 -6
- package/upload/examples/en_US/default/default/README.md +0 -8
- package/upload/examples/en_US/default/disabled/README.md +0 -9
- package/upload/examples/en_US/default/img/README.md +0 -6
- package/upload/examples/zh_CN/default/README.md +0 -4
- package/upload/examples/zh_CN/default/custom/README.md +0 -6
- package/upload/examples/zh_CN/default/default/README.md +0 -8
- package/upload/examples/zh_CN/default/disabled/README.md +0 -9
- package/upload/examples/zh_CN/default/img/README.md +0 -6
|
@@ -0,0 +1,633 @@
|
|
|
1
|
+
import { BehaviorSubject, Subject } from 'rxjs';
|
|
2
|
+
import { Component, ViewEncapsulation, ChangeDetectionStrategy, ViewChild } from '@angular/core';
|
|
3
|
+
import { XTreeSelectProperty, XTreeSelectPrefix } from './tree-select.property';
|
|
4
|
+
import { XIsEmpty, XIsObservable, XIsChange, XSetData, XClearClass, XIsObjectArray, XIsFunction, XIsArray, XIsString, XRemove, XResize } from '@ng-nest/ui/core';
|
|
5
|
+
import { XPortalConnectedPosition } from '@ng-nest/ui/portal';
|
|
6
|
+
import { XTreeSelectPortalComponent } from './tree-select-portal.component';
|
|
7
|
+
import { takeUntil, throttleTime, debounceTime, distinctUntilChanged, map } from 'rxjs/operators';
|
|
8
|
+
import { DOWN_ARROW, UP_ARROW, ENTER, MAC_ENTER, LEFT_ARROW, RIGHT_ARROW, TAB, BACKSPACE } from '@angular/cdk/keycodes';
|
|
9
|
+
import { XValueAccessor } from '@ng-nest/ui/base-form';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
import * as i1 from "@ng-nest/ui/portal";
|
|
12
|
+
import * as i2 from "@angular/cdk/overlay";
|
|
13
|
+
import * as i3 from "@ng-nest/ui/i18n";
|
|
14
|
+
import * as i4 from "@ng-nest/ui/core";
|
|
15
|
+
import * as i5 from "@angular/common";
|
|
16
|
+
import * as i6 from "@angular/forms";
|
|
17
|
+
import * as i7 from "@ng-nest/ui/input";
|
|
18
|
+
import * as i8 from "@ng-nest/ui/tag";
|
|
19
|
+
import * as i9 from "@ng-nest/ui/outlet";
|
|
20
|
+
export class XTreeSelectComponent extends XTreeSelectProperty {
|
|
21
|
+
constructor(renderer, cdr, portalService, viewContainerRef, overlay, i18n, configService) {
|
|
22
|
+
super();
|
|
23
|
+
this.renderer = renderer;
|
|
24
|
+
this.cdr = cdr;
|
|
25
|
+
this.portalService = portalService;
|
|
26
|
+
this.viewContainerRef = viewContainerRef;
|
|
27
|
+
this.overlay = overlay;
|
|
28
|
+
this.i18n = i18n;
|
|
29
|
+
this.configService = configService;
|
|
30
|
+
this.readonly = true;
|
|
31
|
+
this.enter = false;
|
|
32
|
+
this.showClearable = false;
|
|
33
|
+
this.displayValue = '';
|
|
34
|
+
this.multipleSearchValue = '';
|
|
35
|
+
this.nodes = [];
|
|
36
|
+
this.selectedNodes = [];
|
|
37
|
+
this.displayNodes = [];
|
|
38
|
+
this.displayMore = '';
|
|
39
|
+
this.showDisplayMore = false;
|
|
40
|
+
this.searchNodes = [];
|
|
41
|
+
this.icon = 'fto-chevron-down';
|
|
42
|
+
this.iconSpin = false;
|
|
43
|
+
this.maxNodes = 6;
|
|
44
|
+
this.inputPadding = 0.4;
|
|
45
|
+
this.protalTobottom = true;
|
|
46
|
+
this.asyncLoading = false;
|
|
47
|
+
this.animating = false;
|
|
48
|
+
this.objectArray = false;
|
|
49
|
+
this.selectedSurplus = 0;
|
|
50
|
+
this.selectedTotal = 0;
|
|
51
|
+
this.locale = {};
|
|
52
|
+
this.valueTplContext = { $node: null, $isValue: true };
|
|
53
|
+
this.valueChange = new Subject();
|
|
54
|
+
this.positionChange = new Subject();
|
|
55
|
+
this.closeSubject = new Subject();
|
|
56
|
+
this.dataChange = new BehaviorSubject([]);
|
|
57
|
+
this.keydownSubject = new Subject();
|
|
58
|
+
this.inputChange = new Subject();
|
|
59
|
+
this.composition = false;
|
|
60
|
+
this.multipleInputSizeChange = new Subject();
|
|
61
|
+
this._unSubject = new Subject();
|
|
62
|
+
}
|
|
63
|
+
get getReadonly() {
|
|
64
|
+
return (this.readonly && !this.search) || (Boolean(this.search) && Boolean(this.multiple));
|
|
65
|
+
}
|
|
66
|
+
get getMaxTagContent() {
|
|
67
|
+
return this.maxTagContent || this.locale.maxTagContent;
|
|
68
|
+
}
|
|
69
|
+
writeValue(value) {
|
|
70
|
+
if (this.multiple) {
|
|
71
|
+
if (XIsEmpty(value)) {
|
|
72
|
+
value = [];
|
|
73
|
+
}
|
|
74
|
+
if (!XIsArray(value)) {
|
|
75
|
+
value = [value];
|
|
76
|
+
}
|
|
77
|
+
this.objectArray = XIsObjectArray(value);
|
|
78
|
+
}
|
|
79
|
+
this.value = value;
|
|
80
|
+
this.setDisplayValue();
|
|
81
|
+
this.valueChange.next(this.value);
|
|
82
|
+
this.cdr.detectChanges();
|
|
83
|
+
}
|
|
84
|
+
ngOnInit() {
|
|
85
|
+
this.setFlex(this.treeSelect.nativeElement, this.renderer, this.justify, this.align, this.direction);
|
|
86
|
+
this.setClassMap();
|
|
87
|
+
this.setSubject();
|
|
88
|
+
if (this.multiple) {
|
|
89
|
+
this.valueTpl = this.multipleValueTpl;
|
|
90
|
+
this.inputPadding = 0.125;
|
|
91
|
+
}
|
|
92
|
+
this.i18n.localeChange
|
|
93
|
+
.pipe(map((x) => x.treeSelect), takeUntil(this._unSubject))
|
|
94
|
+
.subscribe((x) => {
|
|
95
|
+
this.locale = x;
|
|
96
|
+
this.cdr.markForCheck();
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
ngOnChanges(changes) {
|
|
100
|
+
const { data } = changes;
|
|
101
|
+
XIsChange(data) && this.setData();
|
|
102
|
+
}
|
|
103
|
+
ngAfterViewInit() {
|
|
104
|
+
this.setPortal();
|
|
105
|
+
if (this.multiple && this.inputCom.inputValueRef) {
|
|
106
|
+
XResize(this.inputCom.inputValueRef.nativeElement)
|
|
107
|
+
.pipe(debounceTime(30), takeUntil(this._unSubject))
|
|
108
|
+
.subscribe((x) => {
|
|
109
|
+
this._resizeObserver = x.resizeObserver;
|
|
110
|
+
this.setMutipleInputSize();
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
ngOnDestroy() {
|
|
115
|
+
this._unSubject.next();
|
|
116
|
+
this._unSubject.unsubscribe();
|
|
117
|
+
this._resizeObserver?.disconnect();
|
|
118
|
+
}
|
|
119
|
+
setClassMap() {
|
|
120
|
+
XClearClass(this.labelMap);
|
|
121
|
+
this.labelMap[`x-text-align-${this.labelAlign}`] = this.labelAlign ? true : false;
|
|
122
|
+
}
|
|
123
|
+
setData() {
|
|
124
|
+
if (this.async)
|
|
125
|
+
return;
|
|
126
|
+
XSetData(this.data, this._unSubject).subscribe((x) => {
|
|
127
|
+
this.nodes = x;
|
|
128
|
+
this.dataChange.next(this.nodes);
|
|
129
|
+
this.setDisplayValue();
|
|
130
|
+
this.setPortal();
|
|
131
|
+
this.cdr.detectChanges();
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
setSubject() {
|
|
135
|
+
this.closeSubject.pipe(takeUntil(this._unSubject)).subscribe(() => {
|
|
136
|
+
this.closePortal();
|
|
137
|
+
});
|
|
138
|
+
this.inputChange.pipe(debounceTime(this.debounceTime), distinctUntilChanged(), takeUntil(this._unSubject)).subscribe((x) => {
|
|
139
|
+
this.modelChange(x);
|
|
140
|
+
});
|
|
141
|
+
this.keydownSubject.pipe(throttleTime(10), takeUntil(this._unSubject)).subscribe((x) => {
|
|
142
|
+
const keyCode = x.keyCode;
|
|
143
|
+
if (!this.portalAttached() && [DOWN_ARROW, UP_ARROW, LEFT_ARROW, RIGHT_ARROW, ENTER, MAC_ENTER, BACKSPACE].includes(keyCode)) {
|
|
144
|
+
this.inputChange.next(this.displayValue);
|
|
145
|
+
}
|
|
146
|
+
// if (this.portalAttached() && [ESCAPE].includes(keyCode)) {
|
|
147
|
+
// this.closeSubject.next();
|
|
148
|
+
// }
|
|
149
|
+
});
|
|
150
|
+
this.multipleInputSizeChange.pipe(distinctUntilChanged(), takeUntil(this._unSubject)).subscribe((x) => {
|
|
151
|
+
if (this.multipleInput) {
|
|
152
|
+
const input = this.multipleInput?.elementRef.nativeElement;
|
|
153
|
+
this.renderer.setStyle(input, 'width', `${x}px`);
|
|
154
|
+
}
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
setMutipleInputSize() {
|
|
158
|
+
const ivf = this.inputCom.inputValueRef.nativeElement;
|
|
159
|
+
let { clientWidth, scrollHeight } = ivf;
|
|
160
|
+
const len = ivf.children.length;
|
|
161
|
+
let lastRowTagTop = -1;
|
|
162
|
+
let lines = 1;
|
|
163
|
+
let rowTagTop = -1;
|
|
164
|
+
let lastRowTagsWidth = 0;
|
|
165
|
+
let marginLeft = 0;
|
|
166
|
+
let marginTop = 0;
|
|
167
|
+
for (let i = len - 1; i >= 0; i--) {
|
|
168
|
+
const ele = ivf.children[i];
|
|
169
|
+
if (ele.tagName === 'X-TAG') {
|
|
170
|
+
const { offsetTop, offsetWidth } = ele;
|
|
171
|
+
const style = getComputedStyle(ele);
|
|
172
|
+
marginLeft = Number(style.marginLeft.replace('px', ''));
|
|
173
|
+
marginTop = Number(style.marginTop.replace('px', ''));
|
|
174
|
+
if (rowTagTop === -1) {
|
|
175
|
+
rowTagTop = offsetTop;
|
|
176
|
+
}
|
|
177
|
+
else if (rowTagTop !== offsetTop) {
|
|
178
|
+
lines++;
|
|
179
|
+
rowTagTop = offsetTop;
|
|
180
|
+
}
|
|
181
|
+
if (lastRowTagTop === -1) {
|
|
182
|
+
lastRowTagTop = offsetTop;
|
|
183
|
+
}
|
|
184
|
+
if (lastRowTagTop === offsetTop) {
|
|
185
|
+
lastRowTagsWidth += offsetWidth + marginLeft;
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
const height = scrollHeight + (lines > 1 ? marginTop : 0);
|
|
190
|
+
this.renderer.setStyle(this.inputCom.inputRef.nativeElement, 'height', `${height}px`);
|
|
191
|
+
if (this.multipleInput) {
|
|
192
|
+
this.multipleInputSizeChange.next(clientWidth - lastRowTagsWidth - marginLeft);
|
|
193
|
+
}
|
|
194
|
+
this.portal?.overlayRef?.updatePosition();
|
|
195
|
+
}
|
|
196
|
+
menter() {
|
|
197
|
+
this.enter = true;
|
|
198
|
+
if (this.disabled || !this.clearable || this.iconSpin)
|
|
199
|
+
return;
|
|
200
|
+
if (!XIsEmpty(this.displayValue)) {
|
|
201
|
+
this.icon = '';
|
|
202
|
+
this.showClearable = true;
|
|
203
|
+
this.cdr.detectChanges();
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
mleave() {
|
|
207
|
+
this.enter = false;
|
|
208
|
+
if (this.disabled || !this.clearable || this.iconSpin)
|
|
209
|
+
return;
|
|
210
|
+
if (this.clearable) {
|
|
211
|
+
this.icon = 'fto-chevron-down';
|
|
212
|
+
this.showClearable = false;
|
|
213
|
+
this.cdr.detectChanges();
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
modelChange(value) {
|
|
217
|
+
if (XIsFunction(this.data)) {
|
|
218
|
+
if (!this.portalAttached()) {
|
|
219
|
+
this.showPortal();
|
|
220
|
+
}
|
|
221
|
+
this.icon = 'fto-loader';
|
|
222
|
+
this.iconSpin = true;
|
|
223
|
+
this.cdr.detectChanges();
|
|
224
|
+
XSetData(this.data, this._unSubject, true, value).subscribe((x) => {
|
|
225
|
+
this.icon = '';
|
|
226
|
+
this.iconSpin = false;
|
|
227
|
+
if (!this.enter && this.clearable) {
|
|
228
|
+
this.showClearable = false;
|
|
229
|
+
}
|
|
230
|
+
this.nodes = x;
|
|
231
|
+
this.dataChange.next(this.nodes);
|
|
232
|
+
this.cdr.detectChanges();
|
|
233
|
+
});
|
|
234
|
+
return;
|
|
235
|
+
}
|
|
236
|
+
if (this.nodes) {
|
|
237
|
+
if (!this.portalAttached()) {
|
|
238
|
+
this.showPortal();
|
|
239
|
+
}
|
|
240
|
+
if (XIsEmpty(value)) {
|
|
241
|
+
this.searchNodes = [
|
|
242
|
+
...this.nodes.map((x) => {
|
|
243
|
+
let res = { ...x };
|
|
244
|
+
delete res.children;
|
|
245
|
+
delete res.childrenLoaded;
|
|
246
|
+
delete res.leaf;
|
|
247
|
+
return res;
|
|
248
|
+
})
|
|
249
|
+
];
|
|
250
|
+
}
|
|
251
|
+
else {
|
|
252
|
+
this.setSearchNodes(value);
|
|
253
|
+
}
|
|
254
|
+
this.dataChange.next(this.searchNodes);
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
setSearchNodes(value) {
|
|
258
|
+
let nodes = [];
|
|
259
|
+
const getParent = (node) => {
|
|
260
|
+
if (XIsEmpty(node.pid))
|
|
261
|
+
return;
|
|
262
|
+
const parent = this.nodes.find((x) => x.id === node.pid);
|
|
263
|
+
parent.open = true;
|
|
264
|
+
if (!XIsEmpty(parent)) {
|
|
265
|
+
if (nodes.every((x) => x.id !== parent.id)) {
|
|
266
|
+
nodes.push(parent);
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
};
|
|
270
|
+
if (this.caseSensitive) {
|
|
271
|
+
nodes = this.nodes.filter((x) => x.label.indexOf(value) >= 0);
|
|
272
|
+
}
|
|
273
|
+
else {
|
|
274
|
+
nodes = this.nodes.filter((x) => x.label.toLowerCase().indexOf(value.toLowerCase()) >= 0);
|
|
275
|
+
}
|
|
276
|
+
for (let node of nodes) {
|
|
277
|
+
getParent(node);
|
|
278
|
+
}
|
|
279
|
+
this.searchNodes = nodes.map((x) => {
|
|
280
|
+
let res = { ...x };
|
|
281
|
+
delete res.children;
|
|
282
|
+
delete res.childrenLoaded;
|
|
283
|
+
delete res.leaf;
|
|
284
|
+
return res;
|
|
285
|
+
});
|
|
286
|
+
}
|
|
287
|
+
clearEmit() {
|
|
288
|
+
this.value = this.multiple ? [] : '';
|
|
289
|
+
this.displayValue = '';
|
|
290
|
+
this.multipleSearchValue = '';
|
|
291
|
+
this.selectedNodes = [];
|
|
292
|
+
this.setDisplayNodes();
|
|
293
|
+
this.valueTplContext.$node = null;
|
|
294
|
+
this.mleave();
|
|
295
|
+
this.valueChange.next(this.value);
|
|
296
|
+
this.inputChange.next('');
|
|
297
|
+
if (this.onChange)
|
|
298
|
+
this.onChange(this.value);
|
|
299
|
+
}
|
|
300
|
+
setDisplayValue(clickNode) {
|
|
301
|
+
if (this.nodes.length > 0) {
|
|
302
|
+
if (this.multiple) {
|
|
303
|
+
if (XIsEmpty(this.value)) {
|
|
304
|
+
this.value = [];
|
|
305
|
+
this.displayValue = '';
|
|
306
|
+
this.selectedNodes = [];
|
|
307
|
+
this.displayNodes = [];
|
|
308
|
+
this.displayMore = '';
|
|
309
|
+
this.valueTplContext.$node = null;
|
|
310
|
+
this.setDisplayNodes();
|
|
311
|
+
}
|
|
312
|
+
else {
|
|
313
|
+
let ids = [];
|
|
314
|
+
let selected = [];
|
|
315
|
+
if (this.objectArray) {
|
|
316
|
+
ids = this.value.map((x) => x.id);
|
|
317
|
+
}
|
|
318
|
+
else {
|
|
319
|
+
ids = this.value;
|
|
320
|
+
}
|
|
321
|
+
if (clickNode) {
|
|
322
|
+
let inx = this.selectedNodes.findIndex((x) => x.id === clickNode.id);
|
|
323
|
+
if (inx >= 0) {
|
|
324
|
+
XRemove(this.selectedNodes, (x) => x.id === clickNode.id);
|
|
325
|
+
}
|
|
326
|
+
else {
|
|
327
|
+
this.selectedNodes.push(clickNode);
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
else {
|
|
331
|
+
for (let id of ids) {
|
|
332
|
+
let node = this.nodes.find((x) => x.id === id);
|
|
333
|
+
if (node)
|
|
334
|
+
selected.push(node);
|
|
335
|
+
}
|
|
336
|
+
this.selectedNodes = selected;
|
|
337
|
+
}
|
|
338
|
+
if (this.showPath) {
|
|
339
|
+
for (let node of this.selectedNodes) {
|
|
340
|
+
const parents = this.getParentPath(node);
|
|
341
|
+
node.path = parents.map((x) => x.label).join(this.separator);
|
|
342
|
+
}
|
|
343
|
+
}
|
|
344
|
+
this.setDisplayNodes();
|
|
345
|
+
this.displayValue = this.selectedNodes.map((x) => x.label).join(this.separator);
|
|
346
|
+
this.valueTplContext.$node = [...this.selectedNodes];
|
|
347
|
+
}
|
|
348
|
+
}
|
|
349
|
+
else {
|
|
350
|
+
let node = this.nodes.find((x) => x.id === this.value);
|
|
351
|
+
if (node) {
|
|
352
|
+
if (this.showPath) {
|
|
353
|
+
const parents = this.getParentPath(node);
|
|
354
|
+
this.displayValue = parents.map((x) => x.label).join(this.separator);
|
|
355
|
+
}
|
|
356
|
+
else {
|
|
357
|
+
this.displayValue = node.label;
|
|
358
|
+
}
|
|
359
|
+
this.valueTplContext.$node = node;
|
|
360
|
+
}
|
|
361
|
+
else {
|
|
362
|
+
this.displayValue = '';
|
|
363
|
+
this.valueTplContext.$node = null;
|
|
364
|
+
}
|
|
365
|
+
}
|
|
366
|
+
this.cdr.detectChanges();
|
|
367
|
+
}
|
|
368
|
+
}
|
|
369
|
+
getParentPath(node) {
|
|
370
|
+
let res = [node];
|
|
371
|
+
const getParent = (nd) => {
|
|
372
|
+
let parent = this.nodes.find((x) => nd.pid && x.id === nd.pid);
|
|
373
|
+
if (parent) {
|
|
374
|
+
res = [parent, ...res];
|
|
375
|
+
getParent(parent);
|
|
376
|
+
}
|
|
377
|
+
};
|
|
378
|
+
getParent(node);
|
|
379
|
+
return res;
|
|
380
|
+
}
|
|
381
|
+
closeNode(event, node, index) {
|
|
382
|
+
let inx = -1;
|
|
383
|
+
if (this.objectArray) {
|
|
384
|
+
inx = this.value.findIndex((y) => y.id === node.id);
|
|
385
|
+
}
|
|
386
|
+
else {
|
|
387
|
+
inx = this.value.findIndex((y) => y === node.id);
|
|
388
|
+
}
|
|
389
|
+
if (inx >= 0) {
|
|
390
|
+
this.value.splice(inx, 1);
|
|
391
|
+
this.valueChange.next(this.value);
|
|
392
|
+
if (this.onChange)
|
|
393
|
+
this.onChange(this.value);
|
|
394
|
+
this.selectedNodes.splice(index, 1);
|
|
395
|
+
this.setDisplayNodes();
|
|
396
|
+
}
|
|
397
|
+
event.stopPropagation();
|
|
398
|
+
}
|
|
399
|
+
setDisplayNodes() {
|
|
400
|
+
if (!this.multiple)
|
|
401
|
+
return;
|
|
402
|
+
const maxlen = this.selectedNodes.length;
|
|
403
|
+
let len = 0;
|
|
404
|
+
if (!this.maxTagCount) {
|
|
405
|
+
len = maxlen;
|
|
406
|
+
}
|
|
407
|
+
else {
|
|
408
|
+
len = maxlen > Number(this.maxTagCount) ? Number(this.maxTagCount) : maxlen;
|
|
409
|
+
}
|
|
410
|
+
let more = maxlen - len;
|
|
411
|
+
more = more < 0 ? 0 : more;
|
|
412
|
+
this.displayNodes = this.selectedNodes.slice(0, len);
|
|
413
|
+
this.showDisplayMore = more > 0;
|
|
414
|
+
if (XIsString(this.getMaxTagContent)) {
|
|
415
|
+
this.displayMore = more > 0 ? this.getMaxTagContent.replace(/\{\{surplus\}\}/g, `${more}`) : '';
|
|
416
|
+
}
|
|
417
|
+
else {
|
|
418
|
+
this.selectedSurplus = more;
|
|
419
|
+
this.selectedTotal = maxlen;
|
|
420
|
+
}
|
|
421
|
+
setTimeout(() => this.setMutipleInputSize());
|
|
422
|
+
}
|
|
423
|
+
portalAttached() {
|
|
424
|
+
return this.portal?.overlayRef?.hasAttached();
|
|
425
|
+
}
|
|
426
|
+
closePortal() {
|
|
427
|
+
if (this.portalAttached()) {
|
|
428
|
+
this.portal?.overlayRef?.detach();
|
|
429
|
+
this.active = false;
|
|
430
|
+
this.multipleSearchValue = '';
|
|
431
|
+
this.cdr.detectChanges();
|
|
432
|
+
return true;
|
|
433
|
+
}
|
|
434
|
+
return false;
|
|
435
|
+
}
|
|
436
|
+
destroyPortal() {
|
|
437
|
+
this.portal?.overlayRef?.dispose();
|
|
438
|
+
}
|
|
439
|
+
showPortal(click = false) {
|
|
440
|
+
if (this.disabled || this.iconSpin || this.animating)
|
|
441
|
+
return;
|
|
442
|
+
this.active = true;
|
|
443
|
+
if ((this.async && XIsObservable(this.data) && this.nodes.length === 0) || XIsFunction(this.data)) {
|
|
444
|
+
this.icon = 'fto-loader';
|
|
445
|
+
this.iconSpin = true;
|
|
446
|
+
this.inputCom.cdr.detectChanges();
|
|
447
|
+
XSetData(this.data, this._unSubject, true, click ? '' : this.displayValue).subscribe((x) => {
|
|
448
|
+
this.icon = 'fto-chevron-down';
|
|
449
|
+
this.iconSpin = false;
|
|
450
|
+
if (!this.enter && this.clearable) {
|
|
451
|
+
this.showClearable = false;
|
|
452
|
+
}
|
|
453
|
+
this.inputCom.cdr.detectChanges();
|
|
454
|
+
this.nodes = x;
|
|
455
|
+
this.dataChange.next(this.nodes);
|
|
456
|
+
if (!this.search)
|
|
457
|
+
this.setDisplayValue();
|
|
458
|
+
this.createPortal();
|
|
459
|
+
this.cdr.detectChanges();
|
|
460
|
+
});
|
|
461
|
+
}
|
|
462
|
+
else {
|
|
463
|
+
this.dataChange.next(this.nodes);
|
|
464
|
+
this.createPortal();
|
|
465
|
+
}
|
|
466
|
+
if (this.search && this.multiple) {
|
|
467
|
+
this.multipleInput.inputFocus();
|
|
468
|
+
}
|
|
469
|
+
else {
|
|
470
|
+
this.inputCom.inputFocus();
|
|
471
|
+
}
|
|
472
|
+
}
|
|
473
|
+
createPortal() {
|
|
474
|
+
this.box = this.inputCom.inputRef.nativeElement.getBoundingClientRect();
|
|
475
|
+
const config = {
|
|
476
|
+
backdropClass: '',
|
|
477
|
+
width: this.box.width,
|
|
478
|
+
positionStrategy: this.setPlacement(),
|
|
479
|
+
scrollStrategy: this.overlay.scrollStrategies.reposition()
|
|
480
|
+
};
|
|
481
|
+
this.setPosition(config);
|
|
482
|
+
this.portal = this.portalService.attach({
|
|
483
|
+
content: XTreeSelectPortalComponent,
|
|
484
|
+
viewContainerRef: this.viewContainerRef,
|
|
485
|
+
overlayConfig: config
|
|
486
|
+
});
|
|
487
|
+
this.portal.overlayRef
|
|
488
|
+
?.outsidePointerEvents()
|
|
489
|
+
.pipe(takeUntil(this._unSubject))
|
|
490
|
+
.subscribe(() => {
|
|
491
|
+
this.setDisplayValue();
|
|
492
|
+
this.closeSubject.next();
|
|
493
|
+
});
|
|
494
|
+
this.setInstance();
|
|
495
|
+
}
|
|
496
|
+
setPosition(config) {
|
|
497
|
+
let position = config.positionStrategy;
|
|
498
|
+
position.positionChanges.pipe(takeUntil(this._unSubject)).subscribe((pos) => {
|
|
499
|
+
const place = XPortalConnectedPosition.get(pos.connectionPair);
|
|
500
|
+
place !== this.placement && this.positionChange.next(place);
|
|
501
|
+
});
|
|
502
|
+
}
|
|
503
|
+
setInstance() {
|
|
504
|
+
let componentRef = this.portal.componentRef;
|
|
505
|
+
if (!componentRef)
|
|
506
|
+
return;
|
|
507
|
+
Object.assign(componentRef.instance, {
|
|
508
|
+
data: this.nodes,
|
|
509
|
+
value: this.value,
|
|
510
|
+
placement: this.placement,
|
|
511
|
+
multiple: this.multiple,
|
|
512
|
+
selectAll: this.selectAll,
|
|
513
|
+
nodeTpl: this.nodeTpl,
|
|
514
|
+
valueChange: this.valueChange,
|
|
515
|
+
positionChange: this.positionChange,
|
|
516
|
+
closeSubject: this.closeSubject,
|
|
517
|
+
keydownSubject: this.keydownSubject,
|
|
518
|
+
dataChange: this.dataChange,
|
|
519
|
+
inputCom: this.inputCom,
|
|
520
|
+
portalMaxHeight: this.portalMaxHeight,
|
|
521
|
+
objectArray: this.objectArray,
|
|
522
|
+
selectAllText: this.selectAllText,
|
|
523
|
+
caseSensitive: this.caseSensitive,
|
|
524
|
+
search: this.search,
|
|
525
|
+
virtualScroll: this.virtualScroll,
|
|
526
|
+
size: this.size,
|
|
527
|
+
onlyLeaf: this.onlyLeaf,
|
|
528
|
+
expandedLevel: this.expandedLevel,
|
|
529
|
+
inputChange: this.inputChange,
|
|
530
|
+
destroyPortal: () => this.destroyPortal(),
|
|
531
|
+
nodeEmit: (node, value) => this.nodeClick(node, value),
|
|
532
|
+
animating: (ing) => (this.animating = ing)
|
|
533
|
+
});
|
|
534
|
+
componentRef.changeDetectorRef.detectChanges();
|
|
535
|
+
}
|
|
536
|
+
nodeClick(node, value) {
|
|
537
|
+
if (this.multiple) {
|
|
538
|
+
if (this.value.length === 0) {
|
|
539
|
+
this.value = value;
|
|
540
|
+
}
|
|
541
|
+
if (this.multipleInput) {
|
|
542
|
+
const input = this.multipleInput.elementRef.nativeElement;
|
|
543
|
+
this.renderer.setStyle(input, 'width', '2rem');
|
|
544
|
+
}
|
|
545
|
+
if (this.search && this.multipleSearchValue !== '') {
|
|
546
|
+
this.multipleSearchValue = '';
|
|
547
|
+
this.inputChange.next('');
|
|
548
|
+
this.valueChange.next([...this.value]);
|
|
549
|
+
}
|
|
550
|
+
this.setDisplayValue(node);
|
|
551
|
+
}
|
|
552
|
+
else {
|
|
553
|
+
node = node;
|
|
554
|
+
if (this.showPath) {
|
|
555
|
+
const parents = this.getParentPath(node);
|
|
556
|
+
this.displayValue = parents.map((x) => x.label).join(this.separator);
|
|
557
|
+
}
|
|
558
|
+
else {
|
|
559
|
+
this.displayValue = node.label;
|
|
560
|
+
}
|
|
561
|
+
this.valueTplContext.$node = node;
|
|
562
|
+
this.value = node.id;
|
|
563
|
+
this.closeSubject.next();
|
|
564
|
+
}
|
|
565
|
+
if (this.search && this.multiple) {
|
|
566
|
+
this.multipleInput.inputFocus();
|
|
567
|
+
}
|
|
568
|
+
else {
|
|
569
|
+
this.inputCom.inputFocus();
|
|
570
|
+
}
|
|
571
|
+
if (this.onChange)
|
|
572
|
+
this.onChange(this.value);
|
|
573
|
+
this.formControlValidator();
|
|
574
|
+
this.cdr.detectChanges();
|
|
575
|
+
}
|
|
576
|
+
selectAllNodes(value) {
|
|
577
|
+
this.value = value;
|
|
578
|
+
}
|
|
579
|
+
setPlacement() {
|
|
580
|
+
return this.portalService.setPlacement({
|
|
581
|
+
elementRef: this.inputCom.inputRef,
|
|
582
|
+
placement: [this.placement, 'bottom', 'top'],
|
|
583
|
+
transformOriginOn: 'x-tree-select-portal'
|
|
584
|
+
});
|
|
585
|
+
}
|
|
586
|
+
setPortal() {
|
|
587
|
+
this.portalAttached() && this.portal?.overlayRef?.updatePositionStrategy(this.setPlacement());
|
|
588
|
+
}
|
|
589
|
+
formControlChanges() {
|
|
590
|
+
this.setData();
|
|
591
|
+
this.ngOnInit();
|
|
592
|
+
this.writeValue(this.value);
|
|
593
|
+
this.ngAfterViewInit();
|
|
594
|
+
this.cdr.detectChanges();
|
|
595
|
+
}
|
|
596
|
+
onKeydown($event) {
|
|
597
|
+
this.keydownSubject.next($event);
|
|
598
|
+
if ($event.keyCode !== TAB && !this.search) {
|
|
599
|
+
$event.preventDefault();
|
|
600
|
+
}
|
|
601
|
+
}
|
|
602
|
+
onFocus(_event) {
|
|
603
|
+
if (this.search && this.multiple) {
|
|
604
|
+
this.multipleInput.inputFocus();
|
|
605
|
+
}
|
|
606
|
+
else {
|
|
607
|
+
this.inputCom.inputFocus();
|
|
608
|
+
}
|
|
609
|
+
}
|
|
610
|
+
onInput(_event) {
|
|
611
|
+
this.formControlValidator();
|
|
612
|
+
setTimeout(() => this.inputChange.next(this.multiple ? this.multipleSearchValue : this.displayValue));
|
|
613
|
+
}
|
|
614
|
+
}
|
|
615
|
+
/** @nocollapse */ XTreeSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: XTreeSelectComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i1.XPortalService }, { token: i0.ViewContainerRef }, { token: i2.Overlay }, { token: i3.XI18nService }, { token: i4.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
|
|
616
|
+
/** @nocollapse */ XTreeSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: XTreeSelectComponent, selector: "x-tree-select", providers: [XValueAccessor(XTreeSelectComponent)], viewQueries: [{ propertyName: "inputCom", first: true, predicate: ["inputCom"], descendants: true, static: true }, { propertyName: "treeSelect", first: true, predicate: ["treeSelect"], descendants: true, static: true }, { propertyName: "multipleValueTpl", first: true, predicate: ["multipleValueTpl"], descendants: true, static: true }, { propertyName: "multipleInput", first: true, predicate: ["multipleInput"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div #treeSelect class=\"x-tree-select\" [class.x-tree-select-multiple]=\"multiple\">\r\n <div class=\"x-tree-select-row\">\r\n <x-input\r\n #inputCom\r\n type=\"text\"\r\n [label]=\"label\"\r\n [labelWidth]=\"labelWidth\"\r\n [labelAlign]=\"labelAlign\"\r\n [justify]=\"justify\"\r\n [align]=\"align\"\r\n [direction]=\"direction\"\r\n [required]=\"required\"\r\n [disabled]=\"disabled\"\r\n [validator]=\"validator\"\r\n [icon]=\"icon\"\r\n [iconSpin]=\"iconSpin\"\r\n [placeholder]=\"placeholder\"\r\n [readonly]=\"getReadonly\"\r\n [clearable]=\"showClearable\"\r\n [(ngModel)]=\"displayValue\"\r\n [valueTpl]=\"valueTpl ? valueTpl : nodeTpl\"\r\n [valueTplContext]=\"valueTplContext\"\r\n [size]=\"size\"\r\n [bordered]=\"bordered\"\r\n [before]=\"before\"\r\n [after]=\"after\"\r\n [pattern]=\"pattern\"\r\n [message]=\"message\"\r\n [pointer]=\"true\"\r\n [inputPadding]=\"inputPadding\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (xKeydown)=\"onKeydown($event)\"\r\n (xInput)=\"onInput($event)\"\r\n (xFocus)=\"onFocus($event)\"\r\n (xClick)=\"showPortal(true)\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n (xComposition)=\"composition = $event\"\r\n ></x-input>\r\n </div>\r\n</div>\r\n\r\n<ng-template #multipleValueTpl>\r\n <x-tag\r\n [@.disabled]=\"true\"\r\n *ngFor=\"let node of displayNodes; index as i\"\r\n [closable]=\"!disabled\"\r\n (close)=\"closeNode($event, node, i)\"\r\n [size]=\"size\"\r\n >{{ showPath ? node.path : node.label }}</x-tag\r\n >\r\n <x-tag [@.disabled]=\"true\" *ngIf=\"showDisplayMore\" [size]=\"size\">\r\n <ng-container *xOutlet=\"getMaxTagContent; context: { $surplus: selectedSurplus, $total: selectedTotal }\">{{\r\n displayMore\r\n }}</ng-container>\r\n </x-tag>\r\n <x-input\r\n #multipleInput\r\n *ngIf=\"search\"\r\n bordered=\"false\"\r\n [size]=\"size\"\r\n inputPadding=\"0.275\"\r\n [(ngModel)]=\"multipleSearchValue\"\r\n (xInput)=\"onInput($event)\"\r\n (xKeydown)=\"onKeydown($event)\"\r\n ></x-input>\r\n</ng-template>\r\n", styles: ["@charset \"UTF-8\";x-tree-select{display:inline-block;width:12rem}.x-tree-select{margin:0;padding:0;width:100%}.x-tree-select x-input{width:100%}.x-tree-select-multiple .x-input-value-template-value{display:flex;align-items:center;margin-bottom:.125rem;flex-wrap:wrap;width:initial;height:initial!important}.x-tree-select-multiple .x-input-value-template-value>x-tag{display:inline-flex;margin-left:.0625rem;margin-top:.125rem}.x-tree-select-multiple .x-input-value-template-value>x-tag .x-tag-big{height:var(--x-height-large);line-height:var(--x-height-large);padding:0 var(--x-padding-large)}.x-tree-select-multiple .x-input-value-template-value>x-tag .x-tag-big>.x-icon{right:calc(-var(--x-padding-large)/2)}.x-tree-select-multiple .x-input-value-template-value>x-tag .x-tag-large{height:var(--x-height-medium);line-height:var(--x-height-medium);padding:0 var(--x-padding-medium)}.x-tree-select-multiple .x-input-value-template-value>x-tag .x-tag-large>.x-icon{right:calc(-var(--x-padding-medium)/2)}.x-tree-select-multiple .x-input-value-template-value>x-tag .x-tag-medium{height:var(--x-height-small);line-height:var(--x-height-small);padding:0 var(--x-padding-small)}.x-tree-select-multiple .x-input-value-template-value>x-tag .x-tag-medium>.x-icon{right:calc(-var(--x-padding-small)/2)}.x-tree-select-multiple .x-input-value-template-value>x-tag .x-tag-small{height:var(--x-height-mini);line-height:var(--x-height-mini);padding:0 var(--x-padding-mini)}.x-tree-select-multiple .x-input-value-template-value>x-tag .x-tag-small>.x-icon{right:calc(-var(--x-padding-mini)/2)}.x-tree-select-multiple .x-input-value-template-value>x-tag .x-tag-mini{height:1.125rem;line-height:1.125rem;padding:0 .125rem}.x-tree-select-multiple .x-input-value-template-value>x-tag .x-tag-mini>.x-icon{right:-.0625rem}.x-tree-select-multiple .x-input-value-template-value>x-input{margin-top:.125rem;width:5rem;min-width:3rem}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-input>input,.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-input>.x-input-value-template-value{height:var(--x-height-large);line-height:var(--x-height-large);padding:0 var(--x-padding-large)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-large);line-height:var(--x-height-large)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-large);line-height:var(--x-height-large);padding:0 var(--x-padding-large)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-big>label{height:var(--x-height-large);line-height:var(--x-height-large)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-input>input,.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-input>.x-input-value-template-value{height:var(--x-height-medium);line-height:var(--x-height-medium);padding:0 var(--x-padding-medium)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-medium);line-height:var(--x-height-medium);padding:0 var(--x-padding-medium)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-large>label{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-input>input,.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-input>.x-input-value-template-value{height:var(--x-height-small);line-height:var(--x-height-small);padding:0 var(--x-padding-small)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-small);line-height:var(--x-height-small)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-small);line-height:var(--x-height-small);padding:0 var(--x-padding-small)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-medium>label{height:var(--x-height-small);line-height:var(--x-height-small)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-input>input,.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-input>.x-input-value-template-value{height:var(--x-height-mini);line-height:var(--x-height-mini);padding:0 var(--x-padding-mini)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-mini);line-height:var(--x-height-mini)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-mini);line-height:var(--x-height-mini);padding:0 var(--x-padding-mini)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-small>label{height:var(--x-height-mini);line-height:var(--x-height-mini)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-input>input,.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-input>.x-input-value-template-value{height:1.125rem;line-height:1.125rem;padding:0 .125rem}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-input>.x-input-max-length{height:1.125rem;line-height:1.125rem}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:1.125rem;line-height:1.125rem;padding:0 .125rem}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-mini>label{height:1.125rem;line-height:1.125rem}.x-tree-select-portal{margin:.0625rem 0;font-size:var(--x-font-size);color:var(--x-text);border:var(--x-border-width) var(--x-border-style) var(--x-border);width:100%;border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color);position:relative;display:flex;flex-direction:column;background-color:var(--x-background);overflow:hidden auto;max-height:calc((calc(var(--x-font-size) + .875rem) * 6) + (var(--x-border-width) * 7))}.x-tree-select-portal x-tree{width:100%}.x-tree-select-portal x-empty{margin:1rem;display:block}\n"], dependencies: [{ kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i6.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i7.XInputComponent, selector: "x-input" }, { kind: "component", type: i8.XTagComponent, selector: "x-tag" }, { kind: "directive", type: i9.XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
617
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: XTreeSelectComponent, decorators: [{
|
|
618
|
+
type: Component,
|
|
619
|
+
args: [{ selector: `${XTreeSelectPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XTreeSelectComponent)], template: "<div #treeSelect class=\"x-tree-select\" [class.x-tree-select-multiple]=\"multiple\">\r\n <div class=\"x-tree-select-row\">\r\n <x-input\r\n #inputCom\r\n type=\"text\"\r\n [label]=\"label\"\r\n [labelWidth]=\"labelWidth\"\r\n [labelAlign]=\"labelAlign\"\r\n [justify]=\"justify\"\r\n [align]=\"align\"\r\n [direction]=\"direction\"\r\n [required]=\"required\"\r\n [disabled]=\"disabled\"\r\n [validator]=\"validator\"\r\n [icon]=\"icon\"\r\n [iconSpin]=\"iconSpin\"\r\n [placeholder]=\"placeholder\"\r\n [readonly]=\"getReadonly\"\r\n [clearable]=\"showClearable\"\r\n [(ngModel)]=\"displayValue\"\r\n [valueTpl]=\"valueTpl ? valueTpl : nodeTpl\"\r\n [valueTplContext]=\"valueTplContext\"\r\n [size]=\"size\"\r\n [bordered]=\"bordered\"\r\n [before]=\"before\"\r\n [after]=\"after\"\r\n [pattern]=\"pattern\"\r\n [message]=\"message\"\r\n [pointer]=\"true\"\r\n [inputPadding]=\"inputPadding\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (xKeydown)=\"onKeydown($event)\"\r\n (xInput)=\"onInput($event)\"\r\n (xFocus)=\"onFocus($event)\"\r\n (xClick)=\"showPortal(true)\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n (xComposition)=\"composition = $event\"\r\n ></x-input>\r\n </div>\r\n</div>\r\n\r\n<ng-template #multipleValueTpl>\r\n <x-tag\r\n [@.disabled]=\"true\"\r\n *ngFor=\"let node of displayNodes; index as i\"\r\n [closable]=\"!disabled\"\r\n (close)=\"closeNode($event, node, i)\"\r\n [size]=\"size\"\r\n >{{ showPath ? node.path : node.label }}</x-tag\r\n >\r\n <x-tag [@.disabled]=\"true\" *ngIf=\"showDisplayMore\" [size]=\"size\">\r\n <ng-container *xOutlet=\"getMaxTagContent; context: { $surplus: selectedSurplus, $total: selectedTotal }\">{{\r\n displayMore\r\n }}</ng-container>\r\n </x-tag>\r\n <x-input\r\n #multipleInput\r\n *ngIf=\"search\"\r\n bordered=\"false\"\r\n [size]=\"size\"\r\n inputPadding=\"0.275\"\r\n [(ngModel)]=\"multipleSearchValue\"\r\n (xInput)=\"onInput($event)\"\r\n (xKeydown)=\"onKeydown($event)\"\r\n ></x-input>\r\n</ng-template>\r\n", styles: ["@charset \"UTF-8\";x-tree-select{display:inline-block;width:12rem}.x-tree-select{margin:0;padding:0;width:100%}.x-tree-select x-input{width:100%}.x-tree-select-multiple .x-input-value-template-value{display:flex;align-items:center;margin-bottom:.125rem;flex-wrap:wrap;width:initial;height:initial!important}.x-tree-select-multiple .x-input-value-template-value>x-tag{display:inline-flex;margin-left:.0625rem;margin-top:.125rem}.x-tree-select-multiple .x-input-value-template-value>x-tag .x-tag-big{height:var(--x-height-large);line-height:var(--x-height-large);padding:0 var(--x-padding-large)}.x-tree-select-multiple .x-input-value-template-value>x-tag .x-tag-big>.x-icon{right:calc(-var(--x-padding-large)/2)}.x-tree-select-multiple .x-input-value-template-value>x-tag .x-tag-large{height:var(--x-height-medium);line-height:var(--x-height-medium);padding:0 var(--x-padding-medium)}.x-tree-select-multiple .x-input-value-template-value>x-tag .x-tag-large>.x-icon{right:calc(-var(--x-padding-medium)/2)}.x-tree-select-multiple .x-input-value-template-value>x-tag .x-tag-medium{height:var(--x-height-small);line-height:var(--x-height-small);padding:0 var(--x-padding-small)}.x-tree-select-multiple .x-input-value-template-value>x-tag .x-tag-medium>.x-icon{right:calc(-var(--x-padding-small)/2)}.x-tree-select-multiple .x-input-value-template-value>x-tag .x-tag-small{height:var(--x-height-mini);line-height:var(--x-height-mini);padding:0 var(--x-padding-mini)}.x-tree-select-multiple .x-input-value-template-value>x-tag .x-tag-small>.x-icon{right:calc(-var(--x-padding-mini)/2)}.x-tree-select-multiple .x-input-value-template-value>x-tag .x-tag-mini{height:1.125rem;line-height:1.125rem;padding:0 .125rem}.x-tree-select-multiple .x-input-value-template-value>x-tag .x-tag-mini>.x-icon{right:-.0625rem}.x-tree-select-multiple .x-input-value-template-value>x-input{margin-top:.125rem;width:5rem;min-width:3rem}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-input>input,.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-input>.x-input-value-template-value{height:var(--x-height-large);line-height:var(--x-height-large);padding:0 var(--x-padding-large)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-large);line-height:var(--x-height-large)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-big>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-large);line-height:var(--x-height-large);padding:0 var(--x-padding-large)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-big>label{height:var(--x-height-large);line-height:var(--x-height-large)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-input>input,.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-input>.x-input-value-template-value{height:var(--x-height-medium);line-height:var(--x-height-medium);padding:0 var(--x-padding-medium)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-large>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-medium);line-height:var(--x-height-medium);padding:0 var(--x-padding-medium)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-large>label{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-input>input,.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-input>.x-input-value-template-value{height:var(--x-height-small);line-height:var(--x-height-small);padding:0 var(--x-padding-small)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-small);line-height:var(--x-height-small)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-medium>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-small);line-height:var(--x-height-small);padding:0 var(--x-padding-small)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-medium>label{height:var(--x-height-small);line-height:var(--x-height-small)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-input>input,.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-input>.x-input-value-template-value{height:var(--x-height-mini);line-height:var(--x-height-mini);padding:0 var(--x-padding-mini)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-mini);line-height:var(--x-height-mini)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-small>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-mini);line-height:var(--x-height-mini);padding:0 var(--x-padding-mini)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-small>label{height:var(--x-height-mini);line-height:var(--x-height-mini)}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-input>input,.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-input>.x-input-value-template-value{height:1.125rem;line-height:1.125rem;padding:0 .125rem}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-input>.x-input-max-length{height:1.125rem;line-height:1.125rem}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-mini>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:1.125rem;line-height:1.125rem;padding:0 .125rem}.x-tree-select-multiple .x-input-value-template-value>x-input .x-input-mini>label{height:1.125rem;line-height:1.125rem}.x-tree-select-portal{margin:.0625rem 0;font-size:var(--x-font-size);color:var(--x-text);border:var(--x-border-width) var(--x-border-style) var(--x-border);width:100%;border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color);position:relative;display:flex;flex-direction:column;background-color:var(--x-background);overflow:hidden auto;max-height:calc((calc(var(--x-font-size) + .875rem) * 6) + (var(--x-border-width) * 7))}.x-tree-select-portal x-tree{width:100%}.x-tree-select-portal x-empty{margin:1rem;display:block}\n"] }]
|
|
620
|
+
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: i1.XPortalService }, { type: i0.ViewContainerRef }, { type: i2.Overlay }, { type: i3.XI18nService }, { type: i4.XConfigService }]; }, propDecorators: { inputCom: [{
|
|
621
|
+
type: ViewChild,
|
|
622
|
+
args: ['inputCom', { static: true }]
|
|
623
|
+
}], treeSelect: [{
|
|
624
|
+
type: ViewChild,
|
|
625
|
+
args: ['treeSelect', { static: true }]
|
|
626
|
+
}], multipleValueTpl: [{
|
|
627
|
+
type: ViewChild,
|
|
628
|
+
args: ['multipleValueTpl', { static: true }]
|
|
629
|
+
}], multipleInput: [{
|
|
630
|
+
type: ViewChild,
|
|
631
|
+
args: ['multipleInput']
|
|
632
|
+
}] } });
|
|
633
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdHJlZS1zZWxlY3QvdHJlZS1zZWxlY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvdHJlZS1zZWxlY3QvdHJlZS1zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDaEQsT0FBTyxFQUNMLFNBQVMsRUFFVCxpQkFBaUIsRUFDakIsdUJBQXVCLEVBT3ZCLFNBQVMsRUFFVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQW1CLG1CQUFtQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDakcsT0FBTyxFQUNMLFFBQVEsRUFDUixhQUFhLEVBQ2IsU0FBUyxFQUNULFFBQVEsRUFDUixXQUFXLEVBR1gsY0FBYyxFQUNkLFdBQVcsRUFDWCxRQUFRLEVBQ1IsU0FBUyxFQUNULE9BQU8sRUFDUCxPQUFPLEVBQ1IsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEVBQXFDLHdCQUF3QixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFakcsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFNUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLG9CQUFvQixFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xHLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDeEgsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7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QVM7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBPbkluaXQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgUmVuZGVyZXIyLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBPbkNoYW5nZXMsXHJcbiAgVmlld0NvbnRhaW5lclJlZixcclxuICBWaWV3Q2hpbGQsXHJcbiAgVGVtcGxhdGVSZWZcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgWFRyZWVTZWxlY3ROb2RlLCBYVHJlZVNlbGVjdFByb3BlcnR5LCBYVHJlZVNlbGVjdFByZWZpeCB9IGZyb20gJy4vdHJlZS1zZWxlY3QucHJvcGVydHknO1xyXG5pbXBvcnQge1xyXG4gIFhJc0VtcHR5LFxyXG4gIFhJc09ic2VydmFibGUsXHJcbiAgWElzQ2hhbmdlLFxyXG4gIFhTZXREYXRhLFxyXG4gIFhDbGVhckNsYXNzLFxyXG4gIFhDb25maWdTZXJ2aWNlLFxyXG4gIFhQb3NpdGlvblRvcEJvdHRvbSxcclxuICBYSXNPYmplY3RBcnJheSxcclxuICBYSXNGdW5jdGlvbixcclxuICBYSXNBcnJheSxcclxuICBYSXNTdHJpbmcsXHJcbiAgWFJlbW92ZSxcclxuICBYUmVzaXplXHJcbn0gZnJvbSAnQG5nLW5lc3QvdWkvY29yZSc7XHJcbmltcG9ydCB7IFhQb3J0YWxTZXJ2aWNlLCBYUG9ydGFsT3ZlcmxheVJlZiwgWFBvcnRhbENvbm5lY3RlZFBvc2l0aW9uIH0gZnJvbSAnQG5nLW5lc3QvdWkvcG9ydGFsJztcclxuaW1wb3J0IHsgWElucHV0Q29tcG9uZW50IH0gZnJvbSAnQG5nLW5lc3QvdWkvaW5wdXQnO1xyXG5pbXBvcnQgeyBYVHJlZVNlbGVjdFBvcnRhbENvbXBvbmVudCB9IGZyb20gJy4vdHJlZS1zZWxlY3QtcG9ydGFsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE92ZXJsYXksIEZsZXhpYmxlQ29ubmVjdGVkUG9zaXRpb25TdHJhdGVneSwgQ29ubmVjdGVkT3ZlcmxheVBvc2l0aW9uQ2hhbmdlLCBPdmVybGF5Q29uZmlnIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xyXG5pbXBvcnQgeyB0YWtlVW50aWwsIHRocm90dGxlVGltZSwgZGVib3VuY2VUaW1lLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBET1dOX0FSUk9XLCBVUF9BUlJPVywgRU5URVIsIE1BQ19FTlRFUiwgTEVGVF9BUlJPVywgUklHSFRfQVJST1csIFRBQiwgQkFDS1NQQUNFIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2tleWNvZGVzJztcclxuaW1wb3J0IHsgWFZhbHVlQWNjZXNzb3IgfSBmcm9tICdAbmctbmVzdC91aS9iYXNlLWZvcm0nO1xyXG5pbXBvcnQgeyBYSTE4blRyZWVTZWxlY3QsIFhJMThuU2VydmljZSB9IGZyb20gJ0BuZy1uZXN0L3VpL2kxOG4nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IGAke1hUcmVlU2VsZWN0UHJlZml4fWAsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RyZWUtc2VsZWN0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90cmVlLXNlbGVjdC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgcHJvdmlkZXJzOiBbWFZhbHVlQWNjZXNzb3IoWFRyZWVTZWxlY3RDb21wb25lbnQpXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgWFRyZWVTZWxlY3RDb21wb25lbnQgZXh0ZW5kcyBYVHJlZVNlbGVjdFByb3BlcnR5IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xyXG4gIEBWaWV3Q2hpbGQoJ2lucHV0Q29tJywgeyBzdGF0aWM6IHRydWUgfSkgaW5wdXRDb20hOiBYSW5wdXRDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZCgndHJlZVNlbGVjdCcsIHsgc3RhdGljOiB0cnVlIH0pIHRyZWVTZWxlY3QhOiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoJ211bHRpcGxlVmFsdWVUcGwnLCB7IHN0YXRpYzogdHJ1ZSB9KSBtdWx0aXBsZVZhbHVlVHBsITogVGVtcGxhdGVSZWY8dm9pZD47XHJcbiAgQFZpZXdDaGlsZCgnbXVsdGlwbGVJbnB1dCcpIG11bHRpcGxlSW5wdXQhOiBYSW5wdXRDb21wb25lbnQ7XHJcblxyXG4gIGdldCBnZXRSZWFkb25seSgpIHtcclxuICAgIHJldHVybiAodGhpcy5yZWFkb25seSAmJiAhdGhpcy5zZWFyY2gpIHx8IChCb29sZWFuKHRoaXMuc2VhcmNoKSAmJiBCb29sZWFuKHRoaXMubXVsdGlwbGUpKTtcclxuICB9XHJcblxyXG4gIGdldCBnZXRNYXhUYWdDb250ZW50KCkge1xyXG4gICAgcmV0dXJuIHRoaXMubWF4VGFnQ29udGVudCB8fCB0aGlzLmxvY2FsZS5tYXhUYWdDb250ZW50O1xyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XHJcbiAgICBpZiAodGhpcy5tdWx0aXBsZSkge1xyXG4gICAgICBpZiAoWElzRW1wdHkodmFsdWUpKSB7XHJcbiAgICAgICAgdmFsdWUgPSBbXTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoIVhJc0FycmF5KHZhbHVlKSkge1xyXG4gICAgICAgIHZhbHVlID0gW3ZhbHVlXTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLm9iamVjdEFycmF5ID0gWElzT2JqZWN0QXJyYXkodmFsdWUpO1xyXG4gICAgfVxyXG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xyXG4gICAgdGhpcy5zZXREaXNwbGF5VmFsdWUoKTtcclxuICAgIHRoaXMudmFsdWVDaGFuZ2UubmV4dCh0aGlzLnZhbHVlKTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIHJlYWRvbmx5ID0gdHJ1ZTtcclxuICBlbnRlcjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHNob3dDbGVhcmFibGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBkaXNwbGF5VmFsdWU6IGFueSA9ICcnO1xyXG4gIG11bHRpcGxlU2VhcmNoVmFsdWUgPSAnJztcclxuICBub2RlczogWFRyZWVTZWxlY3ROb2RlW10gPSBbXTtcclxuICBzZWxlY3RlZE5vZGVzOiBYVHJlZVNlbGVjdE5vZGVbXSA9IFtdO1xyXG4gIGRpc3BsYXlOb2RlczogWFRyZWVTZWxlY3ROb2RlW10gPSBbXTtcclxuICBkaXNwbGF5TW9yZSA9ICcnO1xyXG4gIHNob3dEaXNwbGF5TW9yZSA9IGZhbHNlO1xyXG4gIHNlYXJjaE5vZGVzOiBYVHJlZVNlbGVjdE5vZGVbXSA9IFtdO1xyXG4gIGNsb25lTm9kZXMhOiBYVHJlZVNlbGVjdE5vZGVbXTtcclxuICBwb3J0YWwhOiBYUG9ydGFsT3ZlcmxheVJlZjxYVHJlZVNlbGVjdFBvcnRhbENvbXBvbmVudD47XHJcbiAgaWNvbjogc3RyaW5nID0gJ2Z0by1jaGV2cm9uLWRvd24nO1xyXG4gIGljb25TcGluOiBib29sZWFuID0gZmFsc2U7XHJcbiAgYm94ITogRE9NUmVjdDtcclxuICBwcm90YWxIZWlnaHQhOiBudW1iZXI7XHJcbiAgbWF4Tm9kZXM6IG51bWJlciA9IDY7XHJcbiAgaW5wdXRQYWRkaW5nID0gMC40O1xyXG4gIHByb3RhbFRvYm90dG9tOiBib29sZWFuID0gdHJ1ZTtcclxuICBhc3luY0xvYWRpbmcgPSBmYWxzZTtcclxuICBhbmltYXRpbmcgPSBmYWxzZTtcclxuICBvYmplY3RBcnJheSA9IGZhbHNlO1xyXG4gIHNlbGVjdGVkU3VycGx1cyA9IDA7XHJcbiAgc2VsZWN0ZWRUb3RhbCA9IDA7XHJcbiAgbG9jYWxlOiBYSTE4blRyZWVTZWxlY3QgPSB7fTtcclxuICBvdmVycmlkZSB2YWx1ZVRwbENvbnRleHQ6IHsgJG5vZGU6IGFueTsgJGlzVmFsdWU6IGJvb2xlYW4gfSA9IHsgJG5vZGU6IG51bGwsICRpc1ZhbHVlOiB0cnVlIH07XHJcbiAgdmFsdWVDaGFuZ2U6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0KCk7XHJcbiAgcG9zaXRpb25DaGFuZ2U6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0KCk7XHJcbiAgY2xvc2VTdWJqZWN0OiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3QoKTtcclxuICBkYXRhQ2hhbmdlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxYVHJlZVNlbGVjdE5vZGVbXT4oW10pO1xyXG4gIGtleWRvd25TdWJqZWN0OiBTdWJqZWN0PEtleWJvYXJkRXZlbnQ+ID0gbmV3IFN1YmplY3QoKTtcclxuICBpbnB1dENoYW5nZTogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3QoKTtcclxuICBjb21wb3NpdGlvbjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIG11bHRpcGxlSW5wdXRTaXplQ2hhbmdlID0gbmV3IFN1YmplY3Q8bnVtYmVyPigpO1xyXG4gIHByaXZhdGUgX3VuU3ViamVjdCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgcHJpdmF0ZSBfcmVzaXplT2JzZXJ2ZXIhOiBSZXNpemVPYnNlcnZlcjtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgcmVuZGVyZXI6IFJlbmRlcmVyMixcclxuICAgIHB1YmxpYyBvdmVycmlkZSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSBwb3J0YWxTZXJ2aWNlOiBYUG9ydGFsU2VydmljZSxcclxuICAgIHByaXZhdGUgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcclxuICAgIHByaXZhdGUgb3ZlcmxheTogT3ZlcmxheSxcclxuICAgIHB1YmxpYyBpMThuOiBYSTE4blNlcnZpY2UsXHJcbiAgICBwdWJsaWMgY29uZmlnU2VydmljZTogWENvbmZpZ1NlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc2V0RmxleCh0aGlzLnRyZWVTZWxlY3QubmF0aXZlRWxlbWVudCwgdGhpcy5yZW5kZXJlciwgdGhpcy5qdXN0aWZ5LCB0aGlzLmFsaWduLCB0aGlzLmRpcmVjdGlvbik7XHJcbiAgICB0aGlzLnNldENsYXNzTWFwKCk7XHJcbiAgICB0aGlzLnNldFN1YmplY3QoKTtcclxuICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XHJcbiAgICAgIHRoaXMudmFsdWVUcGwgPSB0aGlzLm11bHRpcGxlVmFsdWVUcGw7XHJcbiAgICAgIHRoaXMuaW5wdXRQYWRkaW5nID0gMC4xMjU7XHJcbiAgICB9XHJcbiAgICB0aGlzLmkxOG4ubG9jYWxlQ2hhbmdlXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIG1hcCgoeCkgPT4geC50cmVlU2VsZWN0IGFzIFhJMThuVHJlZVNlbGVjdCksXHJcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX3VuU3ViamVjdClcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKCh4KSA9PiB7XHJcbiAgICAgICAgdGhpcy5sb2NhbGUgPSB4O1xyXG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGNvbnN0IHsgZGF0YSB9ID0gY2hhbmdlcztcclxuICAgIFhJc0NoYW5nZShkYXRhKSAmJiB0aGlzLnNldERhdGEoKTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIHRoaXMuc2V0UG9ydGFsKCk7XHJcbiAgICBpZiAodGhpcy5tdWx0aXBsZSAmJiB0aGlzLmlucHV0Q29tLmlucHV0VmFsdWVSZWYpIHtcclxuICAgICAgWFJlc2l6ZSh0aGlzLmlucHV0Q29tLmlucHV0VmFsdWVSZWYubmF0aXZlRWxlbWVudClcclxuICAgICAgICAucGlwZShkZWJvdW5jZVRpbWUoMzApLCB0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KSlcclxuICAgICAgICAuc3Vic2NyaWJlKCh4KSA9PiB7XHJcbiAgICAgICAgICB0aGlzLl9yZXNpemVPYnNlcnZlciA9IHgucmVzaXplT2JzZXJ2ZXI7XHJcbiAgICAgICAgICB0aGlzLnNldE11dGlwbGVJbnB1dFNpemUoKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fdW5TdWJqZWN0Lm5leHQoKTtcclxuICAgIHRoaXMuX3VuU3ViamVjdC51bnN1YnNjcmliZSgpO1xyXG4gICAgdGhpcy5fcmVzaXplT2JzZXJ2ZXI/LmRpc2Nvbm5lY3QoKTtcclxuICB9XHJcblxyXG4gIHNldENsYXNzTWFwKCkge1xyXG4gICAgWENsZWFyQ2xhc3ModGhpcy5sYWJlbE1hcCk7XHJcbiAgICB0aGlzLmxhYmVsTWFwW2B4LXRleHQtYWxpZ24tJHt0aGlzLmxhYmVsQWxpZ259YF0gPSB0aGlzLmxhYmVsQWxpZ24gPyB0cnVlIDogZmFsc2U7XHJcbiAgfVxyXG5cclxuICBzZXREYXRhKCkge1xyXG4gICAgaWYgKHRoaXMuYXN5bmMpIHJldHVybjtcclxuICAgIFhTZXREYXRhPFhUcmVlU2VsZWN0Tm9kZT4odGhpcy5kYXRhLCB0aGlzLl91blN1YmplY3QpLnN1YnNjcmliZSgoeCkgPT4ge1xyXG4gICAgICB0aGlzLm5vZGVzID0geDtcclxuICAgICAgdGhpcy5kYXRhQ2hhbmdlLm5leHQodGhpcy5ub2Rlcyk7XHJcbiAgICAgIHRoaXMuc2V0RGlzcGxheVZhbHVlKCk7XHJcbiAgICAgIHRoaXMuc2V0UG9ydGFsKCk7XHJcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgc2V0U3ViamVjdCgpIHtcclxuICAgIHRoaXMuY2xvc2VTdWJqZWN0LnBpcGUodGFrZVVudGlsKHRoaXMuX3VuU3ViamVjdCkpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIHRoaXMuY2xvc2VQb3J0YWwoKTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5pbnB1dENoYW5nZS5waXBlKGRlYm91bmNlVGltZSh0aGlzLmRlYm91bmNlVGltZSBhcyBudW1iZXIpLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLCB0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KSkuc3Vic2NyaWJlKCh4KSA9PiB7XHJcbiAgICAgIHRoaXMubW9kZWxDaGFuZ2UoeCk7XHJcbiAgICB9KTtcclxuICAgIHRoaXMua2V5ZG93blN1YmplY3QucGlwZSh0aHJvdHRsZVRpbWUoMTApLCB0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KSkuc3Vic2NyaWJlKCh4KSA9PiB7XHJcbiAgICAgIGNvbnN0IGtleUNvZGUgPSB4LmtleUNvZGU7XHJcbiAgICAgIGlmICghdGhpcy5wb3J0YWxBdHRhY2hlZCgpICYmIFtET1dOX0FSUk9XLCBVUF9BUlJPVywgTEVGVF9BUlJPVywgUklHSFRfQVJST1csIEVOVEVSLCBNQUNfRU5URVIsIEJBQ0tTUEFDRV0uaW5jbHVkZXMoa2V5Q29kZSkpIHtcclxuICAgICAgICB0aGlzLmlucHV0Q2hhbmdlLm5leHQodGhpcy5kaXNwbGF5VmFsdWUpO1xyXG4gICAgICB9XHJcbiAgICAgIC8vIGlmICh0aGlzLnBvcnRhbEF0dGFjaGVkKCkgJiYgW0VTQ0FQRV0uaW5jbHVkZXMoa2V5Q29kZSkpIHtcclxuICAgICAgLy8gICB0aGlzLmNsb3NlU3ViamVjdC5uZXh0KCk7XHJcbiAgICAgIC8vIH1cclxuICAgIH0pO1xyXG4gICAgdGhpcy5tdWx0aXBsZUlucHV0U2l6ZUNoYW5nZS5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksIHRha2VVbnRpbCh0aGlzLl91blN1YmplY3QpKS5zdWJzY3JpYmUoKHgpID0+IHtcclxuICAgICAgaWYgKHRoaXMubXVsdGlwbGVJbnB1dCkge1xyXG4gICAgICAgIGNvbnN0IGlucHV0ID0gdGhpcy5tdWx0aXBsZUlucHV0Py5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShpbnB1dCwgJ3dpZHRoJywgYCR7eH1weGApO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHNldE11dGlwbGVJbnB1dFNpemUoKSB7XHJcbiAgICBjb25zdCBpdmYgPSB0aGlzLmlucHV0Q29tLmlucHV0VmFsdWVSZWYubmF0aXZlRWxlbWVudCBhcyBIVE1MRGl2RWxlbWVudDtcclxuICAgIGxldCB7IGNsaWVudFdpZHRoLCBzY3JvbGxIZWlnaHQgfSA9IGl2ZjtcclxuICAgIGNvbnN0IGxlbiA9IGl2Zi5jaGlsZHJlbi5sZW5ndGg7XHJcbiAgICBsZXQgbGFzdFJvd1RhZ1RvcCA9IC0xO1xyXG4gICAgbGV0IGxpbmVzID0gMTtcclxuICAgIGxldCByb3dUYWdUb3AgPSAtMTtcclxuICAgIGxldCBsYXN0Um93VGFnc1dpZHRoID0gMDtcclxuICAgIGxldCBtYXJnaW5MZWZ0ID0gMDtcclxuICAgIGxldCBtYXJnaW5Ub3AgPSAwO1xyXG4gICAgZm9yIChsZXQgaSA9IGxlbiAtIDE7IGkgPj0gMDsgaS0tKSB7XHJcbiAgICAgIGNvbnN0IGVsZSA9IGl2Zi5jaGlsZHJlbltpXSBhcyBIVE1MRWxlbWVudDtcclxuICAgICAgaWYgKGVsZS50YWdOYW1lID09PSAnWC1UQUcnKSB7XHJcbiAgICAgICAgY29uc3QgeyBvZmZzZXRUb3AsIG9mZnNldFdpZHRoIH0gPSBlbGU7XHJcbiAgICAgICAgY29uc3Qgc3R5bGUgPSBnZXRDb21wdXRlZFN0eWxlKGVsZSk7XHJcbiAgICAgICAgbWFyZ2luTGVmdCA9IE51bWJlcihzdHlsZS5tYXJnaW5MZWZ0LnJlcGxhY2UoJ3B4JywgJycpKTtcclxuICAgICAgICBtYXJnaW5Ub3AgPSBOdW1iZXIoc3R5bGUubWFyZ2luVG9wLnJlcGxhY2UoJ3B4JywgJycpKTtcclxuICAgICAgICBpZiAocm93VGFnVG9wID09PSAtMSkge1xyXG4gICAgICAgICAgcm93VGFnVG9wID0gb2Zmc2V0VG9wO1xyXG4gICAgICAgIH0gZWxzZSBpZiAocm93VGFnVG9wICE9PSBvZmZzZXRUb3ApIHtcclxuICAgICAgICAgIGxpbmVzKys7XHJcbiAgICAgICAgICByb3dUYWdUb3AgPSBvZmZzZXRUb3A7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChsYXN0Um93VGFnVG9wID09PSAtMSkge1xyXG4gICAgICAgICAgbGFzdFJvd1RhZ1RvcCA9IG9mZnNldFRvcDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGxhc3RSb3dUYWdUb3AgPT09IG9mZnNldFRvcCkge1xyXG4gICAgICAgICAgbGFzdFJvd1RhZ3NXaWR0aCArPSBvZmZzZXRXaWR0aCArIG1hcmdpbkxlZnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBjb25zdCBoZWlnaHQgPSBzY3JvbGxIZWlnaHQgKyAobGluZXMgPiAxID8gbWFyZ2luVG9wIDogMCk7XHJcbiAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuaW5wdXRDb20uaW5wdXRSZWYubmF0aXZlRWxlbWVudCwgJ2hlaWdodCcsIGAke2hlaWdodH1weGApO1xyXG4gICAgaWYgKHRoaXMubXVsdGlwbGVJbnB1dCkge1xyXG4gICAgICB0aGlzLm11bHRpcGxlSW5wdXRTaXplQ2hhbmdlLm5leHQoY2xpZW50V2lkdGggLSBsYXN0Um93VGFnc1dpZHRoIC0gbWFyZ2luTGVmdCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnBvcnRhbD8ub3ZlcmxheVJlZj8udXBkYXRlUG9zaXRpb24oKTtcclxuICB9XHJcblxyXG4gIG1lbnRlcigpIHtcclxuICAgIHRoaXMuZW50ZXIgPSB0cnVlO1xyXG4gICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgIXRoaXMuY2xlYXJhYmxlIHx8IHRoaXMuaWNvblNwaW4pIHJldHVybjtcclxuICAgIGlmICghWElzRW1wdHkodGhpcy5kaXNwbGF5VmFsdWUpKSB7XHJcbiAgICAgIHRoaXMuaWNvbiA9ICcnO1xyXG4gICAgICB0aGlzLnNob3dDbGVhcmFibGUgPSB0cnVlO1xyXG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBtbGVhdmUoKSB7XHJcbiAgICB0aGlzLmVudGVyID0gZmFsc2U7XHJcbiAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCAhdGhpcy5jbGVhcmFibGUgfHwgdGhpcy5pY29uU3BpbikgcmV0dXJuO1xyXG4gICAgaWYgKHRoaXMuY2xlYXJhYmxlKSB7XHJcbiAgICAgIHRoaXMuaWNvbiA9ICdmdG8tY2hldnJvbi1kb3duJztcclxuICAgICAgdGhpcy5zaG93Q2xlYXJhYmxlID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG1vZGVsQ2hhbmdlKHZhbHVlOiBzdHJpbmcgfCBudW1iZXIpIHtcclxuICAgIGlmIChYSXNGdW5jdGlvbih0aGlzLmRhdGEpKSB7XHJcbiAgICAgIGlmICghdGhpcy5wb3J0YWxBdHRhY2hlZCgpKSB7XHJcbiAgICAgICAgdGhpcy5zaG93UG9ydGFsKCk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5pY29uID0gJ2Z0by1sb2FkZXInO1xyXG4gICAgICB0aGlzLmljb25TcGluID0gdHJ1ZTtcclxuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICBYU2V0RGF0YTxYVHJlZVNlbGVjdE5vZGU+KHRoaXMuZGF0YSwgdGhpcy5fdW5TdWJqZWN0LCB0cnVlLCB2YWx1ZSBhcyBhbnkpLnN1YnNjcmliZSgoeCkgPT4ge1xyXG4gICAgICAgIHRoaXMuaWNvbiA9ICcnO1xyXG4gICAgICAgIHRoaXMuaWNvblNwaW4gPSBmYWxzZTtcclxuICAgICAgICBpZiAoIXRoaXMuZW50ZXIgJiYgdGhpcy5jbGVhcmFibGUpIHtcclxuICAgICAgICAgIHRoaXMuc2hvd0NsZWFyYWJsZSA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLm5vZGVzID0geDtcclxuICAgICAgICB0aGlzLmRhdGFDaGFuZ2UubmV4dCh0aGlzLm5vZGVzKTtcclxuICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIH0pO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5ub2Rlcykge1xyXG4gICAgICBpZiAoIXRoaXMucG9ydGFsQXR0YWNoZWQoKSkge1xyXG4gICAgICAgIHRoaXMuc2hvd1BvcnRhbCgpO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChYSXNFbXB0eSh2YWx1ZSkpIHtcclxuICAgICAgICB0aGlzLnNlYXJjaE5vZGVzID0gW1xyXG4gICAgICAgICAgLi4udGhpcy5ub2Rlcy5tYXAoKHgpID0+IHtcclxuICAgICAgICAgICAgbGV0IHJlcyA9IHsgLi4ueCB9O1xyXG4gICAgICAgICAgICBkZWxldGUgcmVzLmNoaWxkcmVuO1xyXG4gICAgICAgICAgICBkZWxldGUgcmVzLmNoaWxkcmVuTG9hZGVkO1xyXG4gICAgICAgICAgICBkZWxldGUgcmVzLmxlYWY7XHJcbiAgICAgICAgICAgIHJldHVybiByZXM7XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgIF07XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5zZXRTZWFyY2hOb2Rlcyh2YWx1ZSk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5kYXRhQ2hhbmdlLm5leHQodGhpcy5zZWFyY2hOb2Rlcyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRTZWFyY2hOb2Rlcyh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyKSB7XHJcbiAgICBsZXQgbm9kZXM6IFhUcmVlU2VsZWN0Tm9kZVtdID0gW107XHJcbiAgICBjb25zdCBnZXRQYXJlbnQgPSAobm9kZTogWFRyZWVTZWxlY3ROb2RlKSA9PiB7XHJcbiAgICAgIGlmIChYSXNFbXB0eShub2RlLnBpZCkpIHJldHVybjtcclxuICAgICAgY29uc3QgcGFyZW50ID0gdGhpcy5ub2Rlcy5maW5kKCh4KSA9PiB4LmlkID09PSBub2RlLnBpZCkgYXMgWFRyZWVTZWxlY3ROb2RlO1xyXG4gICAgICBwYXJlbnQub3BlbiA9IHRydWU7XHJcbiAgICAgIGlmICghWElzRW1wdHkocGFyZW50KSkge1xyXG4gICAgICAgIGlmIChub2Rlcy5ldmVyeSgoeCkgPT4geC5pZCAhPT0gcGFyZW50LmlkKSkge1xyXG4gICAgICAgICAgbm9kZXMucHVzaChwYXJlbnQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfTtcclxuICAgIGlmICh0aGlzLmNhc2VTZW5zaXRpdmUpIHtcclxuICAgICAgbm9kZXMgPSB0aGlzLm5vZGVzLmZpbHRlcigoeCkgPT4geC5sYWJlbC5pbmRleE9mKHZhbHVlKSA+PSAwKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIG5vZGVzID0gdGhpcy5ub2Rlcy5maWx0ZXIoKHgpID0+ICh4LmxhYmVsIGFzIHN0cmluZykudG9Mb3dlckNhc2UoKS5pbmRleE9mKCh2YWx1ZSBhcyBzdHJpbmcpLnRvTG93ZXJDYXNlKCkpID49IDApO1xyXG4gICAgfVxyXG4gICAgZm9yIChsZXQgbm9kZSBvZiBub2Rlcykge1xyXG4gICAgICBnZXRQYXJlbnQobm9kZSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnNlYXJjaE5vZGVzID0gbm9kZXMubWFwKCh4KSA9PiB7XHJcbiAgICAgIGxldCByZXMgPSB7IC4uLnggfTtcclxuICAgICAgZGVsZXRlIHJlcy5jaGlsZHJlbjtcclxuICAgICAgZGVsZXRlIHJlcy5jaGlsZHJlbkxvYWRlZDtcclxuICAgICAgZGVsZXRlIHJlcy5sZWFmO1xyXG4gICAgICByZXR1cm4gcmVzO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBjbGVhckVtaXQoKSB7XHJcbiAgICB0aGlzLnZhbHVlID0gdGhpcy5tdWx0aXBsZSA/IFtdIDogJyc7XHJcbiAgICB0aGlzLmRpc3BsYXlWYWx1ZSA9ICcnO1xyXG4gICAgdGhpcy5tdWx0aXBsZVNlYXJjaFZhbHVlID0gJyc7XHJcbiAgICB0aGlzLnNlbGVjdGVkTm9kZXMgPSBbXTtcclxuICAgIHRoaXMuc2V0RGlzcGxheU5vZGVzKCk7XHJcbiAgICB0aGlzLnZhbHVlVHBsQ29udGV4dC4kbm9kZSA9IG51bGw7XHJcbiAgICB0aGlzLm1sZWF2ZSgpO1xyXG4gICAgdGhpcy52YWx1ZUNoYW5nZS5uZXh0KHRoaXMudmFsdWUpO1xyXG4gICAgdGhpcy5pbnB1dENoYW5nZS5uZXh0KCcnKTtcclxuICAgIGlmICh0aGlzLm9uQ2hhbmdlKSB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgc2V0RGlzcGxheVZhbHVlKGNsaWNrTm9kZT86IFhUcmVlU2VsZWN0Tm9kZSkge1xyXG4gICAgaWYgKHRoaXMubm9kZXMubGVuZ3RoID4gMCkge1xyXG4gICAgICBpZiAodGhpcy5tdWx0aXBsZSkge1xyXG4gICAgICAgIGlmIChYSXNFbXB0eSh0aGlzLnZhbHVlKSkge1xyXG4gICAgICAgICAgdGhpcy52YWx1ZSA9IFtdO1xyXG4gICAgICAgICAgdGhpcy5kaXNwbGF5VmFsdWUgPSAnJztcclxuICAgICAgICAgIHRoaXMuc2VsZWN0ZWROb2RlcyA9IFtdO1xyXG4gICAgICAgICAgdGhpcy5kaXNwbGF5Tm9kZXMgPSBbXTtcclxuICAgICAgICAgIHRoaXMuZGlzcGxheU1vcmUgPSAnJztcclxuICAgICAgICAgIHRoaXMudmFsdWVUcGxDb250ZXh0LiRub2RlID0gbnVsbDtcclxuICAgICAgICAgIHRoaXMuc2V0RGlzcGxheU5vZGVzKCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGxldCBpZHMgPSBbXTtcclxuICAgICAgICAgIGxldCBzZWxlY3RlZCA9IFtdO1xyXG4gICAgICAgICAgaWYgKHRoaXMub2JqZWN0QXJyYXkpIHtcclxuICAgICAgICAgICAgaWRzID0gdGhpcy52YWx1ZS5tYXAoKHg6IFhUcmVlU2VsZWN0Tm9kZSkgPT4geC5pZCk7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBpZHMgPSB0aGlzLnZhbHVlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKGNsaWNrTm9kZSkge1xyXG4gICAgICAgICAgICBsZXQgaW54ID0gdGhpcy5zZWxlY3RlZE5vZGVzLmZpbmRJbmRleCgoeDogWFRyZWVTZWxlY3ROb2RlKSA9PiB4LmlkID09PSBjbGlja05vZGUuaWQpO1xyXG4gICAgICAgICAgICBpZiAoaW54ID49IDApIHtcclxuICAgICAgICAgICAgICBYUmVtb3ZlKHRoaXMuc2VsZWN0ZWROb2RlcywgKHgpID0+IHguaWQgPT09IGNsaWNrTm9kZS5pZCk7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGVzLnB1c2goY2xpY2tOb2RlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgZm9yIChsZXQgaWQgb2YgaWRzKSB7XHJcbiAgICAgICAgICAgICAgbGV0IG5vZGUgPSB0aGlzLm5vZGVzLmZpbmQoKHgpID0+IHguaWQgPT09IGlkKTtcclxuICAgICAgICAgICAgICBpZiAobm9kZSkgc2VsZWN0ZWQucHVzaChub2RlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkTm9kZXMgPSBzZWxlY3RlZDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGlmICh0aGlzLnNob3dQYXRoKSB7XHJcbiAgICAgICAgICAgIGZvciAobGV0IG5vZGUgb2YgdGhpcy5zZWxlY3RlZE5vZGVzKSB7XHJcbiAgICAgICAgICAgICAgY29uc3QgcGFyZW50cyA9IHRoaXMuZ2V0UGFyZW50UGF0aChub2RlKTtcclxuICAgICAgICAgICAgICBub2RlLnBhdGggPSBwYXJlbnRzLm1hcCgoeCkgPT4geC5sYWJlbCkuam9pbih0aGlzLnNlcGFyYXRvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRoaXMuc2V0RGlzcGxheU5vZGVzKCk7XHJcbiAgICAgICAgICB0aGlzLmRpc3BsYXlWYWx1ZSA9IHRoaXMuc2VsZWN0ZWROb2Rlcy5tYXAoKHgpID0+IHgubGFiZWwpLmpvaW4odGhpcy5zZXBhcmF0b3IpO1xyXG4gICAgICAgICAgdGhpcy52YWx1ZVRwbENvbnRleHQuJG5vZGUgPSBbLi4udGhpcy5zZWxlY3RlZE5vZGVzXTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgbGV0IG5vZGUgPSB0aGlzLm5vZGVzLmZpbmQoKHgpID0+IHguaWQgPT09IHRoaXMudmFsdWUpO1xyXG4gICAgICAgIGlmIChub2RlKSB7XHJcbiAgICAgICAgICBpZiAodGhpcy5zaG93UGF0aCkge1xyXG4gICAgICAgICAgICBjb25zdCBwYXJlbnRzID0gdGhpcy5nZXRQYXJlbnRQYXRoKG5vZGUpO1xyXG4gICAgICAgICAgICB0aGlzLmRpc3BsYXlWYWx1ZSA9IHBhcmVudHMubWFwKCh4KSA9PiB4LmxhYmVsKS5qb2luKHRoaXMuc2VwYXJhdG9yKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuZGlzcGxheVZhbHVlID0gbm9kZS5sYWJlbDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRoaXMudmFsdWVUcGxDb250ZXh0LiRub2RlID0gbm9kZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5kaXNwbGF5VmFsdWUgPSAnJztcclxuICAgICAgICAgIHRoaXMudmFsdWVUcGxDb250ZXh0LiRub2RlID0gbnVsbDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0UGFyZW50UGF0aChub2RlOiBYVHJlZVNlbGVjdE5vZGUpIHtcclxuICAgIGxldCByZXM6IFhUcmVlU2VsZWN0Tm9kZVtdID0gW25vZGVdO1xyXG4gICAgY29uc3QgZ2V0UGFyZW50ID0gKG5kOiBYVHJlZVNlbGVjdE5vZGUpID0+IHtcclxuICAgICAgbGV0IHBhcmVudCA9IHRoaXMubm9kZXMuZmluZCgoeCkgPT4gbmQucGlkICYmIHguaWQgPT09IG5kLnBpZCk7XHJcbiAgICAgIGlmIChwYXJlbnQpIHtcclxuICAgICAgICByZXMgPSBbcGFyZW50LCAuLi5yZXNdO1xyXG4gICAgICAgIGdldFBhcmVudChwYXJlbnQpO1xyXG4gICAgICB9XHJcbiAgICB9O1xyXG4gICAgZ2V0UGFyZW50KG5vZGUpO1xyXG5cclxuICAgIHJldHVybiByZXM7XHJcbiAgfVxyXG5cclxuICBjbG9zZU5vZGUoZXZlbnQ6IEV2ZW50LCBub2RlOiBYVHJlZVNlbGVjdE5vZGUsIGluZGV4OiBudW1iZXIpIHtcclxuICAgIGxldCBpbnggPSAtMTtcclxuICAgIGlmICh0aGlzLm9iamVjdEFycmF5KSB7XHJcbiAgICAgIGlueCA9IHRoaXMudmFsdWUuZmluZEluZGV4KCh5OiBYVHJlZVNlbGVjdE5vZGUpID0+IHkuaWQgPT09IG5vZGUuaWQpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaW54ID0gdGhpcy52YWx1ZS5maW5kSW5kZXgoKHk6IG51bWJlciB8IHN0cmluZykgPT4geSA9PT0gbm9kZS5pZCk7XHJcbiAgICB9XHJcbiAgICBpZiAoaW54ID49IDApIHtcclxuICAgICAgdGhpcy52YWx1ZS5zcGxpY2UoaW54LCAxKTtcclxuICAgICAgdGhpcy52YWx1ZUNoYW5nZS5uZXh0KHRoaXMudmFsdWUpO1xyXG4gICAgICBpZiAodGhpcy5vbkNoYW5nZSkgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlKTtcclxuICAgICAgdGhpcy5zZWxlY3RlZE5vZGVzLnNwbGljZShpbmRleCwgMSk7XHJcbiAgICAgIHRoaXMuc2V0RGlzcGxheU5vZGVzKCk7XHJcbiAgICB9XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICB9XHJcblxyXG4gIHNldERpc3BsYXlOb2RlcygpIHtcclxuICAgIGlmICghdGhpcy5tdWx0aXBsZSkgcmV0dXJuO1xyXG4gICAgY29uc3QgbWF4bGVuID0gdGhpcy5zZWxlY3RlZE5vZGVzLmxlbmd0aDtcclxuICAgIGxldCBsZW4gPSAwO1xyXG4gICAgaWYgKCF0aGlzLm1heFRhZ0NvdW50KSB7XHJcbiAgICAgIGxlbiA9IG1heGxlbjtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGxlbiA9IG1heGxlbiA+IE51bWJlcih0aGlzLm1heFRhZ0NvdW50KSA/IE51bWJlcih0aGlzLm1heFRhZ0NvdW50KSA6IG1heGxlbjtcclxuICAgIH1cclxuICAgIGxldCBtb3JlID0gbWF4bGVuIC0gbGVuO1xyXG4gICAgbW9yZSA9IG1vcmUgPCAwID8gMCA6IG1vcmU7XHJcbiAgICB0aGlzLmRpc3BsYXlOb2RlcyA9IHRoaXMuc2VsZWN0ZWROb2Rlcy5zbGljZSgwLCBsZW4pO1xyXG4gICAgdGhpcy5zaG93RGlzcGxheU1vcmUgPSBtb3JlID4gMDtcclxuICAgIGlmIChYSXNTdHJpbmcodGhpcy5nZXRNYXhUYWdDb250ZW50KSkge1xyXG4gICAgICB0aGlzLmRpc3BsYXlNb3JlID0gbW9yZSA+IDAgPyAodGhpcy5nZXRNYXhUYWdDb250ZW50IGFzIHN0cmluZykucmVwbGFjZSgvXFx7XFx7c3VycGx1c1xcfVxcfS9nLCBgJHttb3JlfWApIDogJyc7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkU3VycGx1cyA9IG1vcmU7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRUb3RhbCA9IG1heGxlbjtcclxuICAgIH1cclxuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5zZXRNdXRpcGxlSW5wdXRTaXplKCkpO1xyXG4gIH1cclxuXHJcbiAgcG9ydGFsQXR0YWNoZWQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5wb3J0YWw/Lm92ZXJsYXlSZWY/Lmhhc0F0dGFjaGVkKCk7XHJcbiAgfVxyXG5cclxuICBjbG9zZVBvcnRhbCgpIHtcclxuICAgIGlmICh0aGlzLnBvcnRhbEF0dGFjaGVkKCkpIHtcclxuICAgICAgdGhpcy5wb3J0YWw/Lm92ZXJsYXlSZWY/LmRldGFjaCgpO1xyXG4gICAgICB0aGlzLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICB0aGlzLm11bHRpcGxlU2VhcmNoVmFsdWUgPSAnJztcclxuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIGRlc3Ryb3lQb3J0YWwoKSB7XHJcbiAgICB0aGlzLnBvcnRhbD8ub3ZlcmxheVJlZj8uZGlzcG9zZSgpO1xyXG4gIH1cclxuXHJcbiAgc2hvd1BvcnRhbChjbGljayA9IGZhbHNlKSB7XHJcbiAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLmljb25TcGluIHx8IHRoaXMuYW5pbWF0aW5nKSByZXR1cm47XHJcbiAgICB0aGlzLmFjdGl2ZSA9IHRydWU7XHJcbiAgICBpZiAoKHRoaXMuYXN5bmMgJiYgWElzT2JzZXJ2YWJsZSh0aGlzLmRhdGEpICYmIHRoaXMubm9kZXMubGVuZ3RoID09PSAwKSB8fCBYSXNGdW5jdGlvbih0aGlzLmRhdGEpKSB7XHJcbiAgICAgIHRoaXMuaWNvbiA9ICdmdG8tbG9hZGVyJztcclxuICAgICAgdGhpcy5pY29uU3BpbiA9IHRydWU7XHJcbiAgICAgIHRoaXMuaW5wdXRDb20uY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgWFNldERhdGE8WFRyZWVTZWxlY3ROb2RlPih0aGlzLmRhdGEsIHRoaXMuX3VuU3ViamVjdCwgdHJ1ZSwgY2xpY2sgPyAnJyA6IHRoaXMuZGlzcGxheVZhbHVlKS5zdWJzY3JpYmUoKHgpID0+IHtcclxuICAgICAgICB0aGlzLmljb24gPSAnZnRvLWNoZXZyb24tZG93bic7XHJcbiAgICAgICAgdGhpcy5pY29uU3BpbiA9IGZhbHNlO1xyXG4gICAgICAgIGlmICghdGhpcy5lbnRlciAmJiB0aGlzLmNsZWFyYWJsZSkge1xyXG4gICAgICAgICAgdGhpcy5zaG93Q2xlYXJhYmxlID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuaW5wdXRDb20uY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICB0aGlzLm5vZGVzID0geDtcclxuICAgICAgICB0aGlzLmRhdGFDaGFuZ2UubmV4dCh0aGlzLm5vZGVzKTtcclxuICAgICAgICBpZiAoIXRoaXMuc2VhcmNoKSB0aGlzLnNldERpc3BsYXlWYWx1ZSgpO1xyXG4gICAgICAgIHRoaXMuY3JlYXRlUG9ydGFsKCk7XHJcbiAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZGF0YUNoYW5nZS5uZXh0KHRoaXMubm9kZXMpO1xyXG4gICAgICB0aGlzLmNyZWF0ZVBvcnRhbCgpO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuc2VhcmNoICYmIHRoaXMubXVsdGlwbGUpIHtcclxuICAgICAgdGhpcy5tdWx0aXBsZUlucHV0LmlucHV0Rm9jdXMoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuaW5wdXRDb20uaW5wdXRGb2N1cygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY3JlYXRlUG9ydGFsKCkge1xyXG4gICAgdGhpcy5ib3ggPSB0aGlzLmlucHV0Q29tLmlucHV0UmVmLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcbiAgICBjb25zdCBjb25maWc6IE92ZXJsYXlDb25maWcgPSB7XHJcbiAgICAgIGJhY2tkcm9wQ2xhc3M6ICcnLFxyXG4gICAgICB3aWR0aDogdGhpcy5ib3gud2lkdGgsXHJcbiAgICAgIHBvc2l0aW9uU3RyYXRlZ3k6IHRoaXMuc2V0UGxhY2VtZW50KCksXHJcbiAgICAgIHNjcm9sbFN0cmF0ZWd5OiB0aGlzLm92ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5yZXBvc2l0aW9uKClcclxuICAgIH07XHJcbiAgICB0aGlzLnNldFBvc2l0aW9uKGNvbmZpZyk7XHJcbiAgICB0aGlzLnBvcnRhbCA9IHRoaXMucG9ydGFsU2VydmljZS5hdHRhY2goe1xyXG4gICAgICBjb250ZW50OiBYVHJlZVNlbGVjdFBvcnRhbENvbXBvbmVudCxcclxuICAgICAgdmlld0NvbnRhaW5lclJlZjogdGhpcy52aWV3Q29udGFpbmVyUmVmLFxyXG4gICAgICBvdmVybGF5Q29uZmlnOiBjb25maWdcclxuICAgIH0pO1xyXG4gICAgdGhpcy5wb3J0YWwub3ZlcmxheVJlZlxyXG4gICAgICA/Lm91dHNpZGVQb2ludGVyRXZlbnRzKClcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX3VuU3ViamVjdCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuc2V0RGlzcGxheVZhbHVlKCk7XHJcbiAgICAgICAgdGhpcy5jbG9zZVN1YmplY3QubmV4dCgpO1xyXG4gICAgICB9KTtcclxuICAgIHRoaXMuc2V0SW5zdGFuY2UoKTtcclxuICB9XHJcblxyXG4gIHNldFBvc2l0aW9uKGNvbmZpZzogT3ZlcmxheUNvbmZpZykge1xyXG4gICAgbGV0IHBvc2l0aW9uID0gY29uZmlnLnBvc2l0aW9uU3RyYXRlZ3kgYXMgRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5O1xyXG4gICAgcG9zaXRpb24ucG9zaXRpb25DaGFuZ2VzLnBpcGUodGFrZVVudGlsKHRoaXMuX3VuU3ViamVjdCkpLnN1YnNjcmliZSgocG9zOiBDb25uZWN0ZWRPdmVybGF5UG9zaXRpb25DaGFuZ2UpID0+IHtcclxuICAgICAgY29uc3QgcGxhY2UgPSBYUG9ydGFsQ29ubmVjdGVkUG9zaXRpb24uZ2V0KHBvcy5jb25uZWN0aW9uUGFpcikgYXMgWFBvc2l0aW9uVG9wQm90dG9tO1xyXG4gICAgICBwbGFjZSAhPT0gdGhpcy5wbGFjZW1lbnQgJiYgdGhpcy5wb3NpdGlvbkNoYW5nZS5uZXh0KHBsYWNlKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgc2V0SW5zdGFuY2UoKSB7XHJcbiAgICBsZXQgY29tcG9uZW50UmVmID0gdGhpcy5wb3J0YWwuY29tcG9uZW50UmVmO1xyXG4gICAgaWYgKCFjb21wb25lbnRSZWYpIHJldHVybjtcclxuICAgIE9iamVjdC5hc3NpZ24oY29tcG9uZW50UmVmLmluc3RhbmNlLCB7XHJcbiAgICAgIGRhdGE6IHRoaXMubm9kZXMsXHJcbiAgICAgIHZhbHVlOiB0aGlzLnZhbHVlLFxyXG4gICAgICBwbGFjZW1lbnQ6IHRoaXMucGxhY2VtZW50LFxyXG4gICAgICBtdWx0aXBsZTogdGhpcy5tdWx0aXBsZSxcclxuICAgICAgc2VsZWN0QWxsOiB0aGlzLnNlbGVjdEFsbCxcclxuICAgICAgbm9kZVRwbDogdGhpcy5ub2RlVHBsLFxyXG4gICAgICB2YWx1ZUNoYW5nZTogdGhpcy52YWx1ZUNoYW5nZSxcclxuICAgICAgcG9zaXRpb25DaGFuZ2U6IHRoaXMucG9zaXRpb25DaGFuZ2UsXHJcbiAgICAgIGNsb3NlU3ViamVjdDogdGhpcy5jbG9zZVN1YmplY3QsXHJcbiAgICAgIGtleWRvd25TdWJqZWN0OiB0aGlzLmtleWRvd25TdWJqZWN0LFxyXG4gICAgICBkYXRhQ2hhbmdlOiB0aGlzLmRhdGFDaGFuZ2UsXHJcbiAgICAgIGlucHV0Q29tOiB0aGlzLmlucHV0Q29tLFxyXG4gICAgICBwb3J0YWxNYXhIZWlnaHQ6IHRoaXMucG9ydGFsTWF4SGVpZ2h0LFxyXG4gICAgICBvYmplY3RBcnJheTogdGhpcy5vYmplY3RBcnJheSxcclxuICAgICAgc2VsZWN0QWxsVGV4dDogdGhpcy5zZWxlY3RBbGxUZXh0LFxyXG4gICAgICBjYXNlU2Vuc2l0aXZlOiB0aGlzLmNhc2VTZW5zaXRpdmUsXHJcbiAgICAgIHNlYXJjaDogdGhpcy5zZWFyY2gsXHJcbiAgICAgIHZpcnR1YWxTY3JvbGw6IHRoaXMudmlydHVhbFNjcm9sbCxcclxuICAgICAgc2l6ZTogdGhpcy5zaXplLFxyXG4gICAgICBvbmx5TGVhZjogdGhpcy5vbmx5TGVhZixcclxuICAgICAgZXhwYW5kZWRMZXZlbDogdGhpcy5leHBhbmRlZExldmVsLFxyXG4gICAgICBpbnB1dENoYW5nZTogdGhpcy5pbnB1dENoYW5nZSxcclxuICAgICAgZGVzdHJveVBvcnRhbDogKCkgPT4gdGhpcy5kZXN0cm95UG9ydGFsKCksXHJcbiAgICAgIG5vZGVFbWl0OiAobm9kZTogWFRyZWVTZWxlY3ROb2RlLCB2YWx1ZTogWFRyZWVTZWxlY3ROb2RlW10gfCAoc3RyaW5nIHwgbnVtYmVyKVtdKSA9PiB0aGlzLm5vZGVDbGljayhub2RlLCB2YWx1ZSksXHJcbiAgICAgIGFuaW1hdGluZzogKGluZzogYm9vbGVhbikgPT4gKHRoaXMuYW5pbWF0aW5nID0gaW5nKVxyXG4gICAgfSk7XHJcbiAgICBjb21wb25lbnRSZWYuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgbm9kZUNsaWNrKG5vZGU6IFhUcmVlU2VsZWN0Tm9kZSwgdmFsdWU/OiBYVHJlZVNlbGVjdE5vZGVbXSB8IChzdHJpbmcgfCBudW1iZXIpW10pIHtcclxuICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XHJcbiAgICAgIGlmICh0aGlzLnZhbHVlLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5tdWx0aXBsZUlucHV0KSB7XHJcbiAgICAgICAgY29uc3QgaW5wdXQgPSB0aGlzLm11bHRpcGxlSW5wdXQuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xyXG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoaW5wdXQsICd3aWR0aCcsICcycmVtJyk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMuc2VhcmNoICYmIHRoaXMubXVsdGlwbGVTZWFyY2hWYWx1ZSAhPT0gJycpIHtcclxuICAgICAgICB0aGlzLm11bHRpcGxlU2VhcmNoVmFsdWUgPSAnJztcclxuICAgICAgICB0aGlzLmlucHV0Q2hhbmdlLm5leHQoJycpO1xyXG4gICAgICAgIHRoaXMudmFsdWVDaGFuZ2UubmV4dChbLi4udGhpcy52YWx1ZV0pO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuc2V0RGlzcGxheVZhbHVlKG5vZGUpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgbm9kZSA9IG5vZGUgYXMgWFRyZWVTZWxlY3ROb2RlO1xyXG4gICAgICBpZiAodGhpcy5zaG93UGF0aCkge1xyXG4gICAgICAgIGNvbnN0IHBhcmVudHMgPSB0aGlzLmdldFBhcmVudFBhdGgobm9kZSk7XHJcbiAgICAgICAgdGhpcy5kaXNwbGF5VmFsdWUgPSBwYXJlbnRzLm1hcCgoeCkgPT4geC5sYWJlbCkuam9pbih0aGlzLnNlcGFyYXRvcik7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5kaXNwbGF5VmFsdWUgPSBub2RlLmxhYmVsO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMudmFsdWVUcGxDb250ZXh0LiRub2RlID0gbm9kZTtcclxuICAgICAgdGhpcy52YWx1ZSA9IG5vZGUuaWQ7XHJcbiAgICAgIHRoaXMuY2xvc2VTdWJqZWN0Lm5leHQoKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnNlYXJjaCAmJiB0aGlzLm11bHRpcGxlKSB7XHJcbiAgICAgIHRoaXMubXVsdGlwbGVJbnB1dC5pbnB1dEZvY3VzKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmlucHV0Q29tLmlucHV0Rm9jdXMoKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLm9uQ2hhbmdlKSB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUpO1xyXG4gICAgdGhpcy5mb3JtQ29udHJvbFZhbGlkYXRvcigpO1xyXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgc2VsZWN0QWxsTm9kZXModmFsdWU6IFhUcmVlU2VsZWN0Tm9kZVtdIHwgKHN0cmluZyB8IG51bWJlcilbXSkge1xyXG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgc2V0UGxhY2VtZW50KCkge1xyXG4gICAgcmV0dXJuIHRoaXMucG9ydGFsU2VydmljZS5zZXRQbGFjZW1lbnQoe1xyXG4gICAgICBlbGVtZW50UmVmOiB0aGlzLmlucHV0Q29tLmlucHV0UmVmLFxyXG4gICAgICBwbGFjZW1lbnQ6IFt0aGlzLnBsYWNlbWVudCBhcyBYUG9zaXRpb25Ub3BCb3R0b20sICdib3R0b20nLCAndG9wJ10sXHJcbiAgICAgIHRyYW5zZm9ybU9yaWdpbk9uOiAneC10cmVlLXNlbGVjdC1wb3J0YWwnXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHNldFBvcnRhbCgpIHtcclxuICAgIHRoaXMucG9ydGFsQXR0YWNoZWQoKSAmJiB0aGlzLnBvcnRhbD8ub3ZlcmxheVJlZj8udXBkYXRlUG9zaXRpb25TdHJhdGVneSh0aGlzLnNldFBsYWNlbWVudCgpKTtcclxuICB9XHJcblxyXG4gIGZvcm1Db250cm9sQ2hhbmdlcygpIHtcclxuICAgIHRoaXMuc2V0RGF0YSgpO1xyXG4gICAgdGhpcy5uZ09uSW5pdCgpO1xyXG4gICAgdGhpcy53cml0ZVZhbHVlKHRoaXMudmFsdWUpO1xyXG4gICAgdGhpcy5uZ0FmdGVyVmlld0luaXQoKTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIG9uS2V5ZG93bigkZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcclxuICAgIHRoaXMua2V5ZG93blN1YmplY3QubmV4dCgkZXZlbnQpO1xyXG4gICAgaWYgKCRldmVudC5rZXlDb2RlICE9PSBUQUIgJiYgIXRoaXMuc2VhcmNoKSB7XHJcbiAgICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25Gb2N1cyhfZXZlbnQ6IEV2ZW50KSB7XHJcbiAgICBpZiAodGhpcy5zZWFyY2ggJiYgdGhpcy5tdWx0aXBsZSkge1xyXG4gICAgICB0aGlzLm11bHRpcGxlSW5wdXQuaW5wdXRGb2N1cygpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5pbnB1dENvbS5pbnB1dEZvY3VzKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbklucHV0KF9ldmVudDogSW5wdXRFdmVudCkge1xyXG4gICAgdGhpcy5mb3JtQ29udHJvbFZhbGlkYXRvcigpO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmlucHV0Q2hhbmdlLm5leHQodGhpcy5tdWx0aXBsZSA/IHRoaXMubXVsdGlwbGVTZWFyY2hWYWx1ZSA6IHRoaXMuZGlzcGxheVZhbHVlKSk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgI3RyZWVTZWxlY3QgY2xhc3M9XCJ4LXRyZWUtc2VsZWN0XCIgW2NsYXNzLngtdHJlZS1zZWxlY3QtbXVsdGlwbGVdPVwibXVsdGlwbGVcIj5cclxuICA8ZGl2IGNsYXNzPVwieC10cmVlLXNlbGVjdC1yb3dcIj5cclxuICAgIDx4LWlucHV0XHJcbiAgICAgICNpbnB1dENvbVxyXG4gICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgIFtsYWJlbF09XCJsYWJlbFwiXHJcbiAgICAgIFtsYWJlbFdpZHRoXT1cImxhYmVsV2lkdGhcIlxyXG4gICAgICBbbGFiZWxBbGlnbl09XCJsYWJlbEFsaWduXCJcclxuICAgICAgW2p1c3RpZnldPVwianVzdGlmeVwiXHJcbiAgICAgIFthbGlnbl09XCJhbGlnblwiXHJcbiAgICAgIFtkaXJlY3Rpb25dPVwiZGlyZWN0aW9uXCJcclxuICAgICAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcclxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgICAgW3ZhbGlkYXRvcl09XCJ2YWxpZGF0b3JcIlxyXG4gICAgICBbaWNvbl09XCJpY29uXCJcclxuICAgICAgW2ljb25TcGluXT1cImljb25TcGluXCJcclxuICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcclxuICAgICAgW3JlYWRvbmx5XT1cImdldFJlYWRvbmx5XCJcclxuICAgICAgW2NsZWFyYWJsZV09XCJzaG93Q2xlYXJhYmxlXCJcclxuICAgICAgWyhuZ01vZGVsKV09XCJkaXNwbGF5VmFsdWVcIlxyXG4gICAgICBbdmFsdWVUcGxdPVwidmFsdWVUcGwgPyB2YWx1ZVRwbCA6IG5vZGVUcGxcIlxyXG4gICAgICBbdmFsdWVUcGxDb250ZXh0XT1cInZhbHVlVHBsQ29udGV4dFwiXHJcbiAgICAgIFtzaXplXT1cInNpemVcIlxyXG4gICAgICBbYm9yZGVyZWRdPVwiYm9yZGVyZWRcIlxyXG4gICAgICBbYmVmb3JlXT1cImJlZm9yZVwiXHJcbiAgICAgIFthZnRlcl09XCJhZnRlclwiXHJcbiAgICAgIFtwYXR0ZXJuXT1cInBhdHRlcm5cIlxyXG4gICAgICBbbWVzc2FnZV09XCJtZXNzYWdlXCJcclxuICAgICAgW3BvaW50ZXJdPVwidHJ1ZVwiXHJcbiAgICAgIFtpbnB1dFBhZGRpbmddPVwiaW5wdXRQYWRkaW5nXCJcclxuICAgICAgWyhhY3RpdmUpXT1cImFjdGl2ZVwiXHJcbiAgICAgIChjbGVhckVtaXQpPVwiY2xlYXJFbWl0KClcIlxyXG4gICAgICAoeEtleWRvd24pPVwib25LZXlkb3duKCRldmVudClcIlxyXG4gICAgICAoeElucHV0KT1cIm9uSW5wdXQoJGV2ZW50KVwiXHJcbiAgICAgICh4Rm9jdXMpPVwib25Gb2N1cygkZXZlbnQpXCJcclxuICAgICAgKHhDbGljayk9XCJzaG93UG9ydGFsKHRydWUpXCJcclxuICAgICAgKHhNb3VzZWVudGVyKT1cIm1lbnRlcigpXCJcclxuICAgICAgKHhNb3VzZWxlYXZlKT1cIm1sZWF2ZSgpXCJcclxuICAgICAgKHhDb21wb3NpdGlvbik9XCJjb21wb3NpdGlvbiA9ICRldmVudFwiXHJcbiAgICA+PC94LWlucHV0PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjbXVsdGlwbGVWYWx1ZVRwbD5cclxuICA8eC10YWdcclxuICAgIFtALmRpc2FibGVkXT1cInRydWVcIlxyXG4gICAgKm5nRm9yPVwibGV0IG5vZGUgb2YgZGlzcGxheU5vZGVzOyBpbmRleCBhcyBpXCJcclxuICAgIFtjbG9zYWJsZV09XCIhZGlzYWJsZWRcIlxyXG4gICAgKGNsb3NlKT1cImNsb3NlTm9kZSgkZXZlbnQsIG5vZGUsIGkpXCJcclxuICAgIFtzaXplXT1cInNpemVcIlxyXG4gICAgPnt7IHNob3dQYXRoID8gbm9kZS5wYXRoIDogbm9kZS5sYWJlbCB9fTwveC10YWdcclxuICA+XHJcbiAgPHgtdGFnIFtALmRpc2FibGVkXT1cInRydWVcIiAqbmdJZj1cInNob3dEaXNwbGF5TW9yZVwiIFtzaXplXT1cInNpemVcIj5cclxuICAgIDxuZy1jb250YWluZXIgKnhPdXRsZXQ9XCJnZXRNYXhUYWdDb250ZW50OyBjb250ZXh0OiB7ICRzdXJwbHVzOiBzZWxlY3RlZFN1cnBsdXMsICR0b3RhbDogc2VsZWN0ZWRUb3RhbCB9XCI+e3tcclxuICAgICAgZGlzcGxheU1vcmVcclxuICAgIH19PC9uZy1jb250YWluZXI+XHJcbiAgPC94LXRhZz5cclxuICA8eC1pbnB1dFxyXG4gICAgI211bHRpcGxlSW5wdXRcclxuICAgICpuZ0lmPVwic2VhcmNoXCJcclxuICAgIGJvcmRlcmVkPVwiZmFsc2VcIlxyXG4gICAgW3NpemVdPVwic2l6ZVwiXHJcbiAgICBpbnB1dFBhZGRpbmc9XCIwLjI3NVwiXHJcbiAgICBbKG5nTW9kZWwpXT1cIm11bHRpcGxlU2VhcmNoVmFsdWVcIlxyXG4gICAgKHhJbnB1dCk9XCJvbklucHV0KCRldmVudClcIlxyXG4gICAgKHhLZXlkb3duKT1cIm9uS2V5ZG93bigkZXZlbnQpXCJcclxuICA+PC94LWlucHV0PlxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=
|