@seniorsistemas/angular-components 19.0.5 → 19.0.6
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/accordion/lib/accordion/accordion.component.d.ts +25 -0
- package/accordion/lib/accordion/components/accordion-panel/accordion-panel.component.d.ts +60 -0
- package/alert/lib/alert/alert.component.d.ts +40 -0
- package/autocomplete/lib/autocomplete/autocomplete.component.d.ts +51 -0
- package/badge/lib/badge/badge.component.d.ts +20 -0
- package/bignumber-input/lib/bignumber-input/bignumber-input.directive.d.ts +46 -1
- package/breadcrumb/lib/breadcrumb/breadcrumb.component.d.ts +12 -0
- package/button/lib/button/button.component.d.ts +101 -0
- package/calendar-mask/lib/calendar-mask/calendar-mask.directive.d.ts +24 -0
- package/card/lib/card/card.component.d.ts +18 -0
- package/chat/lib/chat/chat.component.d.ts +20 -2
- package/chat/lib/chat/components/chat-message/chat-message.component.d.ts +18 -2
- package/checkbox/lib/checkbox/checkbox.component.d.ts +23 -3
- package/checkbox-list/lib/checkbox-list/checkbox-list.component.d.ts +20 -0
- package/chips/lib/chips/chip-item/chip-item.component.d.ts +15 -0
- package/chips/lib/chips/chips/chips.component.d.ts +41 -0
- package/code-editor/lib/code-editor/code-editor.component.d.ts +40 -0
- package/collapse-link/lib/collapse-link/collapse-link.component.d.ts +18 -0
- package/common/lib/svg-factory/components/iassist-icon/iassist-icon.component.d.ts +5 -0
- package/confirm-dialog/lib/popup-confirm-dialog/popup-confirm-dialog.component.d.ts +19 -0
- package/content-generator/lib/content-generator/content-generator.component.d.ts +30 -0
- package/control-errors/lib/control-errors/control-errors.component.d.ts +36 -0
- package/country-phone-picker/lib/country-phone-picker/country-phone-picker.component.d.ts +36 -0
- package/currency/lib/currency.service.d.ts +15 -2
- package/custom-fields/lib/custom-fields/custom-fields.component.d.ts +31 -0
- package/dialog/lib/src/dialog/dialog.component.d.ts +51 -0
- package/dialog/lib/src/dialog/services/dialog.service.d.ts +2 -2
- package/dialog/lib/src/dialog/services/internal-dialog.service.d.ts +1 -1
- package/dynamic-form/dynamic-form/components/lookup/lookup.component.d.ts +6 -5
- package/dynamic-form/dynamic-form/components/lookup/models/lookup-api.model.d.ts +5 -0
- package/dynamic-form/dynamic-form/configurations/structure/fieldset.d.ts +14 -0
- package/dynamic-form/dynamic-form/configurations/structure/row.d.ts +67 -0
- package/dynamic-form/dynamic-form/configurations/structure/section.d.ts +8 -0
- package/dynamic-form/dynamic-form/configurations/structure/structure.d.ts +19 -0
- package/dynamic-form/dynamic-form/dynamic-form.component.d.ts +21 -1
- package/dynamic-form/dynamic-form/form-field/configurations/fields/autocomplete-field.d.ts +45 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/bignumber-field.d.ts +59 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/blob-field.d.ts +55 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/boolean-field.d.ts +35 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/boolean-switch-field.d.ts +17 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/button-field.d.ts +23 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/calendar-field.d.ts +66 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/checkbox-field.d.ts +15 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/chips-field.d.ts +30 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/content-generator-field.d.ts +47 -2
- package/dynamic-form/dynamic-form/form-field/configurations/fields/country-phone-picker-field.d.ts +26 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/currency-field.d.ts +18 -1
- package/dynamic-form/dynamic-form/form-field/configurations/fields/field.d.ts +44 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/lookup-field.d.ts +112 -4
- package/dynamic-form/dynamic-form/form-field/configurations/fields/number-field.d.ts +42 -3
- package/dynamic-form/dynamic-form/form-field/configurations/fields/password-field.d.ts +48 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/profile-picture.d.ts +62 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/radio-button-field.d.ts +34 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/select-field.d.ts +63 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/slider-field.d.ts +47 -1
- package/dynamic-form/dynamic-form/form-field/configurations/fields/star-rating-field.d.ts +23 -0
- package/dynamic-form/dynamic-form/form-field/configurations/fields/text-area-field.d.ts +37 -1
- package/dynamic-form/dynamic-form/form-field/configurations/fields/text-field.d.ts +65 -2
- package/dynamic-form/public-api.d.ts +1 -0
- package/editable-overlay/lib/editable-overlay/editable-overlay.directive.d.ts +16 -0
- package/empty-state/lib/empty-state/empty-state.component.d.ts +59 -0
- package/esm2022/accordion/lib/accordion/accordion.component.mjs +26 -1
- package/esm2022/accordion/lib/accordion/components/accordion-panel/accordion-panel.component.mjs +61 -1
- package/esm2022/alert/lib/alert/alert.component.mjs +41 -1
- package/esm2022/autocomplete/lib/autocomplete/autocomplete.component.mjs +52 -1
- package/esm2022/badge/lib/badge/badge.component.mjs +21 -1
- package/esm2022/bignumber-input/lib/bignumber-input/bignumber-input.directive.mjs +47 -2
- package/esm2022/breadcrumb/lib/breadcrumb/breadcrumb.component.mjs +13 -1
- package/esm2022/button/lib/button/button.component.mjs +102 -1
- package/esm2022/calendar-mask/lib/calendar-mask/calendar-mask.directive.mjs +72 -47
- package/esm2022/card/lib/card/card.component.mjs +21 -6
- package/esm2022/chat/lib/chat/chat.component.mjs +23 -5
- package/esm2022/chat/lib/chat/components/chat-message/chat-message.component.mjs +20 -4
- package/esm2022/checkbox/lib/checkbox/checkbox.component.mjs +24 -4
- package/esm2022/checkbox-list/lib/checkbox-list/checkbox-list.component.mjs +22 -2
- package/esm2022/chips/lib/chips/chip-item/chip-item.component.mjs +17 -2
- package/esm2022/chips/lib/chips/chips/chips.component.mjs +42 -1
- package/esm2022/code-editor/lib/code-editor/code-editor.component.mjs +41 -1
- package/esm2022/collapse-link/lib/collapse-link/collapse-link.component.mjs +19 -1
- package/esm2022/common/lib/svg-factory/components/iassist-icon/iassist-icon.component.mjs +6 -1
- package/esm2022/confirm-dialog/lib/popup-confirm-dialog/popup-confirm-dialog.component.mjs +20 -1
- package/esm2022/content-generator/lib/content-generator/content-generator.component.mjs +31 -1
- package/esm2022/control-errors/lib/control-errors/control-errors.component.mjs +37 -1
- package/esm2022/country-phone-picker/lib/country-phone-picker/country-phone-picker.component.mjs +37 -1
- package/esm2022/currency/lib/currency.service.mjs +21 -8
- package/esm2022/custom-fields/lib/custom-fields/custom-fields.component.mjs +32 -1
- package/esm2022/dialog/lib/src/dialog/dialog.component.mjs +66 -11
- package/esm2022/dialog/lib/src/dialog/services/dialog.service.mjs +13 -10
- package/esm2022/dialog/lib/src/dialog/services/internal-dialog.service.mjs +3 -3
- package/esm2022/dynamic-form/dynamic-form/components/lookup/lookup.component.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/components/lookup/models/lookup-api.model.mjs +2 -0
- package/esm2022/dynamic-form/dynamic-form/configurations/structure/fieldset.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/configurations/structure/row.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/configurations/structure/section.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/configurations/structure/structure.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/dynamic-form.component.mjs +22 -2
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/autocomplete-field.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/bignumber-field.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/blob-field.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/boolean-field.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/boolean-switch-field.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/button-field.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/calendar-field.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/checkbox-field.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/chips-field.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/content-generator-field.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/country-phone-picker-field.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/currency-field.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/field.mjs +1 -2
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/lookup-field.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/number-field.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/password-field.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/profile-picture.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/radio-button-field.mjs +6 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/select-field.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/slider-field.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/star-rating-field.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/text-area-field.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/text-field.mjs +1 -1
- package/esm2022/dynamic-form/dynamic-form/form-field/fields/text-area/text-area-field.component.mjs +3 -3
- package/esm2022/dynamic-form/public-api.mjs +2 -2
- package/esm2022/editable-overlay/lib/editable-overlay/editable-overlay.directive.mjs +17 -1
- package/esm2022/empty-state/lib/empty-state/empty-state.component.mjs +60 -1
- package/esm2022/fieldset/lib/fieldset/fieldset.component.mjs +25 -5
- package/esm2022/file-picker/lib/file-picker/file-picker.component.mjs +48 -1
- package/esm2022/gantt/lib/gantt/gantt.component.mjs +32 -1
- package/esm2022/global-search/lib/global-search/global-search.component.mjs +30 -1
- package/esm2022/grid-menu/lib/grid-menu/grid-menu.component.mjs +40 -1
- package/esm2022/help-popover/lib/help-popover/help-popover.directive.mjs +83 -27
- package/esm2022/image-cropper/lib/image-cropper/image-cropper.component.mjs +40 -3
- package/esm2022/infinite-scroll/lib/infinite-scroll/infinite-scroll.directive.mjs +18 -2
- package/esm2022/info-sign/lib/info-sign/info-sign.directive.mjs +33 -4
- package/esm2022/inline-edit/lib/inline-edit/inline-edit.component.mjs +16 -1
- package/esm2022/insights/lib/insights/insights.component.mjs +23 -1
- package/esm2022/interactive-content/lib/interactive-content/interactive-content.directive.mjs +21 -1
- package/esm2022/kanban/lib/kanban/kanban.component.mjs +34 -16
- package/esm2022/label-value/lib/label-value/label-value.component.mjs +14 -1
- package/esm2022/loading-state/lib/loading-state/loading-state.component.mjs +37 -1
- package/esm2022/loading-state/lib/loading-state/loading-state.directive.mjs +24 -1
- package/esm2022/locale/lib/locale/locale.service.mjs +8 -1
- package/esm2022/localized-number-input/lib/localized-number-input/localized-number-input.directive.mjs +17 -1
- package/esm2022/mask/lib/mask/mask-formatter.pipe.mjs +13 -1
- package/esm2022/mouse-events/lib/mouse-events/double-click.directive.mjs +16 -3
- package/esm2022/mouse-events/lib/mouse-events/long-press.directive.mjs +24 -10
- package/esm2022/navigation-button/lib/navigation-button/navigation-button.component.mjs +20 -1
- package/esm2022/number-input/lib/number-input/number-input.directive.mjs +32 -12
- package/esm2022/numeric/lib/numeric.pipe.mjs +16 -1
- package/esm2022/numeric/lib/numeric.service.mjs +21 -1
- package/esm2022/numeric-mask/lib/numeric-mask/numeric-mask.directive.mjs +9 -6
- package/esm2022/object-card/lib/object-card/object-card.component.mjs +24 -1
- package/esm2022/optional-fields/editor/editor-field.mjs +1 -1
- package/esm2022/paginator/lib/paginator/paginator.component.mjs +20 -1
- package/esm2022/panel/lib/panel/panel.component.mjs +44 -23
- package/esm2022/password-strength/lib/password-strength/password-strength.component.mjs +25 -1
- package/esm2022/password-strength/lib/password-strength/password-strength.directive.mjs +54 -1
- package/esm2022/picklist/lib/picklist/picklist.component.mjs +33 -2
- package/esm2022/pin-code-field/lib/pin-code-field/pin-code-field.component.mjs +29 -34
- package/esm2022/profile-picture-picker/lib/profile-picture-picker/profile-picture-picker.component.mjs +86 -2
- package/esm2022/progressbar/lib/progressbar/progressbar.component.mjs +53 -3
- package/esm2022/radio-button/lib/radio-button/radio-button.component.mjs +28 -1
- package/esm2022/radio-button/lib/radio-button-group/radio-button-group.component.mjs +27 -1
- package/esm2022/rating-scale/lib/rating-scale/rating-scale.component.mjs +39 -7
- package/esm2022/select/lib/select/select.component.mjs +35 -1
- package/esm2022/select-button/lib/select-button/select-button.component.mjs +35 -1
- package/esm2022/shared/lib/shared/border-button/border-button.component.mjs +11 -3
- package/esm2022/sidebar/lib/sidebar/sidebar.component.mjs +54 -1
- package/esm2022/slide-in-bar/lib/slide-in-bar/slide-in-bar.component.mjs +76 -36
- package/esm2022/slider/lib/slider/slider.component.mjs +90 -9
- package/esm2022/speech-recognition/lib/speech-recognition/speech-recognition/speech-recognition.component.mjs +25 -4
- package/esm2022/split-button/lib/split-button/split-button.component.mjs +24 -2
- package/esm2022/star-rating/star-rating/star-rating.component.mjs +17 -1
- package/esm2022/stats-card/lib/stats-card/stats-card.component.mjs +32 -10
- package/esm2022/stepper/lib/stepper/stepper.component.mjs +20 -1
- package/esm2022/structure/lib/structure/footer.component.mjs +11 -1
- package/esm2022/switch/lib/switch/switch.component.mjs +22 -2
- package/esm2022/table/lib/table/table-column/table-columns.component.mjs +16 -1
- package/esm2022/table-header/lib/table-header/table-header-checkbox.component.mjs +29 -3
- package/esm2022/tabs/lib/tab-item/tab-item.component.mjs +33 -2
- package/esm2022/tabs/lib/tabs/tabs.component.mjs +35 -3
- package/esm2022/template/lib/template/template.directive.mjs +14 -2
- package/esm2022/text-area/lib/text-area/text-area.component.mjs +28 -1
- package/esm2022/thumbnail/lib/thumbnail/thumbnail.component.mjs +25 -1
- package/esm2022/thumbnails/lib/thumbnails/thumbnails.component.mjs +28 -3
- package/esm2022/tiered-menu/lib/tiered-menu/tiered-menu.directive.mjs +30 -1
- package/esm2022/tile/lib/tile/tile.component.mjs +26 -1
- package/esm2022/timeline/lib/timeline/timeline.component.mjs +26 -3
- package/esm2022/toast/lib/toast/toast.component.mjs +24 -4
- package/esm2022/token-list/lib/token-list/token-list.component.mjs +22 -1
- package/esm2022/tooltip/lib/tooltip/tooltip.directive.mjs +66 -1
- package/esm2022/topbar/lib/topbar/topbar.component.mjs +18 -1
- package/esm2022/tree/lib/tree/tree.component.mjs +28 -1
- package/esm2022/workspace-switch/lib/workspace-switch/workspace-switch.component.mjs +47 -1
- package/fesm2022/seniorsistemas-angular-components-accordion.mjs +85 -0
- package/fesm2022/seniorsistemas-angular-components-accordion.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-alert.mjs +40 -0
- package/fesm2022/seniorsistemas-angular-components-alert.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-autocomplete.mjs +51 -0
- package/fesm2022/seniorsistemas-angular-components-autocomplete.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-badge.mjs +20 -0
- package/fesm2022/seniorsistemas-angular-components-badge.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-bignumber-input.mjs +46 -1
- package/fesm2022/seniorsistemas-angular-components-bignumber-input.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-breadcrumb.mjs +12 -0
- package/fesm2022/seniorsistemas-angular-components-breadcrumb.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-button.mjs +101 -0
- package/fesm2022/seniorsistemas-angular-components-button.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-calendar-mask.mjs +71 -46
- package/fesm2022/seniorsistemas-angular-components-calendar-mask.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-card.mjs +19 -4
- package/fesm2022/seniorsistemas-angular-components-card.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-chat.mjs +39 -5
- package/fesm2022/seniorsistemas-angular-components-chat.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-checkbox-list.mjs +21 -1
- package/fesm2022/seniorsistemas-angular-components-checkbox-list.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-checkbox.mjs +23 -3
- package/fesm2022/seniorsistemas-angular-components-checkbox.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-chips.mjs +57 -1
- package/fesm2022/seniorsistemas-angular-components-chips.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-code-editor.mjs +40 -0
- package/fesm2022/seniorsistemas-angular-components-code-editor.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-collapse-link.mjs +18 -0
- package/fesm2022/seniorsistemas-angular-components-collapse-link.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-common.mjs +5 -0
- package/fesm2022/seniorsistemas-angular-components-common.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-confirm-dialog.mjs +19 -0
- package/fesm2022/seniorsistemas-angular-components-confirm-dialog.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-content-generator.mjs +30 -0
- package/fesm2022/seniorsistemas-angular-components-content-generator.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-control-errors.mjs +36 -0
- package/fesm2022/seniorsistemas-angular-components-control-errors.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-country-phone-picker.mjs +36 -0
- package/fesm2022/seniorsistemas-angular-components-country-phone-picker.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-currency.mjs +19 -6
- package/fesm2022/seniorsistemas-angular-components-currency.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-custom-fields.mjs +31 -0
- package/fesm2022/seniorsistemas-angular-components-custom-fields.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-dialog.mjs +74 -16
- package/fesm2022/seniorsistemas-angular-components-dialog.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs +29 -4
- package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-editable-overlay.mjs +16 -0
- package/fesm2022/seniorsistemas-angular-components-editable-overlay.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-empty-state.mjs +59 -0
- package/fesm2022/seniorsistemas-angular-components-empty-state.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-fieldset.mjs +21 -1
- package/fesm2022/seniorsistemas-angular-components-fieldset.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-file-picker.mjs +47 -0
- package/fesm2022/seniorsistemas-angular-components-file-picker.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-gantt.mjs +31 -0
- package/fesm2022/seniorsistemas-angular-components-gantt.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-global-search.mjs +29 -0
- package/fesm2022/seniorsistemas-angular-components-global-search.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-grid-menu.mjs +39 -0
- package/fesm2022/seniorsistemas-angular-components-grid-menu.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-help-popover.mjs +80 -24
- package/fesm2022/seniorsistemas-angular-components-help-popover.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-image-cropper.mjs +38 -1
- package/fesm2022/seniorsistemas-angular-components-image-cropper.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-infinite-scroll.mjs +17 -1
- package/fesm2022/seniorsistemas-angular-components-infinite-scroll.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-info-sign.mjs +30 -1
- package/fesm2022/seniorsistemas-angular-components-info-sign.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs +15 -0
- package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-insights.mjs +22 -0
- package/fesm2022/seniorsistemas-angular-components-insights.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-interactive-content.mjs +20 -0
- package/fesm2022/seniorsistemas-angular-components-interactive-content.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-kanban.mjs +28 -10
- package/fesm2022/seniorsistemas-angular-components-kanban.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-label-value.mjs +13 -0
- package/fesm2022/seniorsistemas-angular-components-label-value.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-loading-state.mjs +59 -0
- package/fesm2022/seniorsistemas-angular-components-loading-state.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-locale.mjs +7 -0
- package/fesm2022/seniorsistemas-angular-components-locale.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-localized-number-input.mjs +16 -0
- package/fesm2022/seniorsistemas-angular-components-localized-number-input.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-mask.mjs +12 -0
- package/fesm2022/seniorsistemas-angular-components-mask.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-mouse-events.mjs +35 -8
- package/fesm2022/seniorsistemas-angular-components-mouse-events.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-navigation-button.mjs +19 -0
- package/fesm2022/seniorsistemas-angular-components-navigation-button.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-number-input.mjs +31 -11
- package/fesm2022/seniorsistemas-angular-components-number-input.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-numeric-mask.mjs +8 -5
- package/fesm2022/seniorsistemas-angular-components-numeric-mask.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-numeric.mjs +35 -0
- package/fesm2022/seniorsistemas-angular-components-numeric.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-object-card.mjs +23 -0
- package/fesm2022/seniorsistemas-angular-components-object-card.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-optional-fields-editor.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-paginator.mjs +19 -0
- package/fesm2022/seniorsistemas-angular-components-paginator.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-panel.mjs +39 -18
- package/fesm2022/seniorsistemas-angular-components-panel.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-password-strength.mjs +77 -0
- package/fesm2022/seniorsistemas-angular-components-password-strength.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-picklist.mjs +32 -1
- package/fesm2022/seniorsistemas-angular-components-picklist.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-pin-code-field.mjs +28 -33
- package/fesm2022/seniorsistemas-angular-components-pin-code-field.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-profile-picture-picker.mjs +85 -1
- package/fesm2022/seniorsistemas-angular-components-profile-picture-picker.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-progressbar.mjs +52 -2
- package/fesm2022/seniorsistemas-angular-components-progressbar.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-radio-button.mjs +53 -0
- package/fesm2022/seniorsistemas-angular-components-radio-button.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-rating-scale.mjs +36 -4
- package/fesm2022/seniorsistemas-angular-components-rating-scale.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-select-button.mjs +34 -0
- package/fesm2022/seniorsistemas-angular-components-select-button.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-select.mjs +34 -0
- package/fesm2022/seniorsistemas-angular-components-select.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-shared.mjs +9 -1
- package/fesm2022/seniorsistemas-angular-components-shared.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-sidebar.mjs +53 -0
- package/fesm2022/seniorsistemas-angular-components-sidebar.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-slide-in-bar.mjs +71 -31
- package/fesm2022/seniorsistemas-angular-components-slide-in-bar.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-slider.mjs +89 -8
- package/fesm2022/seniorsistemas-angular-components-slider.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-speech-recognition.mjs +24 -3
- package/fesm2022/seniorsistemas-angular-components-speech-recognition.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-split-button.mjs +22 -0
- package/fesm2022/seniorsistemas-angular-components-split-button.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-star-rating.mjs +16 -0
- package/fesm2022/seniorsistemas-angular-components-star-rating.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-stats-card.mjs +30 -8
- package/fesm2022/seniorsistemas-angular-components-stats-card.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-stepper.mjs +19 -0
- package/fesm2022/seniorsistemas-angular-components-stepper.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-structure.mjs +10 -0
- package/fesm2022/seniorsistemas-angular-components-structure.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-switch.mjs +20 -0
- package/fesm2022/seniorsistemas-angular-components-switch.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-table-header.mjs +28 -2
- package/fesm2022/seniorsistemas-angular-components-table-header.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-table.mjs +15 -0
- package/fesm2022/seniorsistemas-angular-components-table.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-tabs.mjs +65 -2
- package/fesm2022/seniorsistemas-angular-components-tabs.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-template.mjs +13 -1
- package/fesm2022/seniorsistemas-angular-components-template.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-text-area.mjs +27 -0
- package/fesm2022/seniorsistemas-angular-components-text-area.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-thumbnail.mjs +24 -0
- package/fesm2022/seniorsistemas-angular-components-thumbnail.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-thumbnails.mjs +26 -1
- package/fesm2022/seniorsistemas-angular-components-thumbnails.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-tiered-menu.mjs +29 -0
- package/fesm2022/seniorsistemas-angular-components-tiered-menu.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-tile.mjs +25 -0
- package/fesm2022/seniorsistemas-angular-components-tile.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-timeline.mjs +25 -2
- package/fesm2022/seniorsistemas-angular-components-timeline.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-toast.mjs +22 -2
- package/fesm2022/seniorsistemas-angular-components-toast.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-token-list.mjs +21 -0
- package/fesm2022/seniorsistemas-angular-components-token-list.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-tooltip.mjs +65 -0
- package/fesm2022/seniorsistemas-angular-components-tooltip.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-topbar.mjs +17 -0
- package/fesm2022/seniorsistemas-angular-components-topbar.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-tree.mjs +27 -0
- package/fesm2022/seniorsistemas-angular-components-tree.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-workspace-switch.mjs +46 -0
- package/fesm2022/seniorsistemas-angular-components-workspace-switch.mjs.map +1 -1
- package/fieldset/lib/fieldset/fieldset.component.d.ts +23 -3
- package/file-picker/lib/file-picker/file-picker.component.d.ts +47 -0
- package/gantt/lib/gantt/gantt.component.d.ts +31 -0
- package/global-search/lib/global-search/global-search.component.d.ts +29 -0
- package/grid-menu/lib/grid-menu/grid-menu.component.d.ts +39 -0
- package/help-popover/lib/help-popover/help-popover.directive.d.ts +67 -17
- package/image-cropper/lib/image-cropper/image-cropper.component.d.ts +38 -0
- package/infinite-scroll/lib/infinite-scroll/infinite-scroll.directive.d.ts +15 -0
- package/info-sign/lib/info-sign/info-sign.directive.d.ts +30 -1
- package/inline-edit/lib/inline-edit/inline-edit.component.d.ts +15 -0
- package/insights/lib/insights/insights.component.d.ts +22 -0
- package/interactive-content/lib/interactive-content/interactive-content.directive.d.ts +20 -0
- package/kanban/lib/kanban/kanban.component.d.ts +25 -5
- package/label-value/lib/label-value/label-value.component.d.ts +13 -0
- package/loading-state/lib/loading-state/loading-state.component.d.ts +36 -0
- package/loading-state/lib/loading-state/loading-state.directive.d.ts +23 -0
- package/locale/lib/locale/locale.service.d.ts +7 -0
- package/localized-number-input/lib/localized-number-input/localized-number-input.directive.d.ts +16 -0
- package/mask/lib/mask/mask-formatter.pipe.d.ts +12 -0
- package/mouse-events/lib/mouse-events/double-click.directive.d.ts +13 -0
- package/mouse-events/lib/mouse-events/long-press.directive.d.ts +16 -2
- package/navigation-button/lib/navigation-button/navigation-button.component.d.ts +19 -0
- package/number-input/lib/number-input/number-input.directive.d.ts +19 -1
- package/numeric/lib/numeric.pipe.d.ts +15 -0
- package/numeric/lib/numeric.service.d.ts +20 -0
- package/numeric-mask/lib/numeric-mask/numeric-mask.directive.d.ts +5 -4
- package/object-card/lib/object-card/object-card.component.d.ts +23 -0
- package/optional-fields/editor/editor-field.d.ts +19 -0
- package/package.json +12 -12
- package/paginator/lib/paginator/paginator.component.d.ts +19 -0
- package/panel/lib/panel/panel.component.d.ts +24 -3
- package/password-strength/lib/password-strength/password-strength.component.d.ts +24 -0
- package/password-strength/lib/password-strength/password-strength.directive.d.ts +53 -0
- package/picklist/lib/picklist/picklist.component.d.ts +29 -0
- package/pin-code-field/lib/pin-code-field/pin-code-field.component.d.ts +28 -33
- package/profile-picture-picker/lib/profile-picture-picker/profile-picture-picker.component.d.ts +85 -1
- package/progressbar/lib/progressbar/progressbar.component.d.ts +50 -0
- package/radio-button/lib/radio-button/radio-button.component.d.ts +27 -0
- package/radio-button/lib/radio-button-group/radio-button-group.component.d.ts +26 -0
- package/rating-scale/lib/rating-scale/rating-scale.component.d.ts +30 -2
- package/select/lib/select/select.component.d.ts +34 -0
- package/select-button/lib/select-button/select-button.component.d.ts +34 -0
- package/shared/lib/shared/border-button/border-button.component.d.ts +10 -2
- package/sidebar/lib/sidebar/sidebar.component.d.ts +53 -0
- package/slide-in-bar/lib/slide-in-bar/slide-in-bar.component.d.ts +53 -2
- package/slider/lib/slider/slider.component.d.ts +72 -0
- package/speech-recognition/lib/speech-recognition/speech-recognition/speech-recognition.component.d.ts +18 -0
- package/split-button/lib/split-button/split-button.component.d.ts +22 -0
- package/star-rating/star-rating/star-rating.component.d.ts +16 -0
- package/stats-card/lib/stats-card/stats-card.component.d.ts +28 -0
- package/stepper/lib/stepper/stepper.component.d.ts +19 -0
- package/structure/lib/structure/footer.component.d.ts +10 -0
- package/switch/lib/switch/switch.component.d.ts +20 -0
- package/table/lib/table/table-column/table-columns.component.d.ts +15 -0
- package/table-header/lib/table-header/table-header-checkbox.component.d.ts +18 -0
- package/tabs/lib/tab-item/tab-item.component.d.ts +31 -0
- package/tabs/lib/tabs/tabs.component.d.ts +28 -0
- package/template/lib/template/template.directive.d.ts +12 -0
- package/text-area/lib/text-area/text-area.component.d.ts +27 -0
- package/thumbnail/lib/thumbnail/thumbnail.component.d.ts +24 -0
- package/thumbnails/lib/thumbnails/thumbnails.component.d.ts +27 -2
- package/tiered-menu/lib/tiered-menu/tiered-menu.directive.d.ts +29 -0
- package/tile/lib/tile/tile.component.d.ts +25 -0
- package/timeline/lib/timeline/timeline.component.d.ts +24 -0
- package/toast/lib/toast/toast.component.d.ts +22 -2
- package/token-list/lib/token-list/token-list.component.d.ts +21 -0
- package/tooltip/lib/tooltip/tooltip.directive.d.ts +65 -0
- package/topbar/lib/topbar/topbar.component.d.ts +17 -0
- package/tree/lib/tree/tree.component.d.ts +27 -0
- package/workspace-switch/lib/workspace-switch/workspace-switch.component.d.ts +46 -0
|
@@ -8,32 +8,73 @@ import * as i0 from "@angular/core";
|
|
|
8
8
|
import * as i1 from "@angular/forms";
|
|
9
9
|
import * as i2 from "primeng/keyfilter";
|
|
10
10
|
import * as i3 from "../chip-item/chip-item.component";
|
|
11
|
+
/**
|
|
12
|
+
* @description Componente de entrada de tags/chips que permite adicionar e remover
|
|
13
|
+
* itens de texto livremente ou a partir de uma lista. Suporta templates personalizados
|
|
14
|
+
* para renderização de cada chip, filtro de teclas, limite de itens e duplicação configurável.
|
|
15
|
+
* Implementa {@link ControlValueAccessor} para uso em formulários Angular.
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```html
|
|
19
|
+
* <s-chips
|
|
20
|
+
* formControlName="tags"
|
|
21
|
+
* placeholder="Adicionar tag..."
|
|
22
|
+
* [max]="10"
|
|
23
|
+
* [allowDuplicated]="false"
|
|
24
|
+
* (added)="onAdded($event)" />
|
|
25
|
+
* ```
|
|
26
|
+
*
|
|
27
|
+
* @category Inputs
|
|
28
|
+
*/
|
|
11
29
|
export class ChipsComponent {
|
|
12
30
|
cdr;
|
|
13
31
|
newItem = '';
|
|
14
32
|
chipTemplate;
|
|
33
|
+
/** @description Desabilita a interação com o componente. @default false */
|
|
15
34
|
disabled = false;
|
|
35
|
+
/** @description Chave do objeto usada para exibição quando os itens são objetos complexos. @default '' */
|
|
16
36
|
field = '';
|
|
37
|
+
/** @description Lista de chips atualmente exibidos. @default [] */
|
|
17
38
|
value = [];
|
|
39
|
+
/** @description Texto de placeholder exibido no campo de entrada quando vazio. */
|
|
18
40
|
placeholder;
|
|
41
|
+
/** @description Número máximo de chips permitidos. @default Infinity */
|
|
19
42
|
max = Infinity;
|
|
43
|
+
/** @description Comprimento máximo do texto de cada chip. @default Infinity */
|
|
20
44
|
maxLength = Infinity;
|
|
45
|
+
/** @description Identificador do elemento `<input>` interno. Gerado automaticamente se não informado. */
|
|
21
46
|
inputId = `chips-${randomHash()}`;
|
|
47
|
+
/** @description Permite a adição de chips com valor duplicado. @default true */
|
|
22
48
|
allowDuplicated = true;
|
|
49
|
+
/** @description Quando `false`, a comparação de duplicatas é case-insensitive. @default false */
|
|
23
50
|
caseSensitiveDuplication = false;
|
|
51
|
+
/** @description Adiciona o chip ao pressionar Tab. @default true */
|
|
24
52
|
addOnTab = true;
|
|
53
|
+
/** @description Adiciona o chip ao perder o foco (blur). @default true */
|
|
25
54
|
addOnBlur = true;
|
|
55
|
+
/** @description Caractere separador que, quando digitado, confirma a adição de um novo chip. @default '' */
|
|
26
56
|
separator = '';
|
|
57
|
+
/** @description Coloca o foco automaticamente no campo de entrada ao renderizar o componente. @default false */
|
|
27
58
|
autofocus = false;
|
|
59
|
+
/** @description Texto informativo exibido abaixo do campo de entrada. @default '' */
|
|
28
60
|
infoLabel = '';
|
|
61
|
+
/** @description Expressão regular ou padrão predefinido (PrimeNG KeyFilterPattern) para filtrar teclas aceitas. */
|
|
29
62
|
keyFilter;
|
|
63
|
+
/** @description Exibe tooltip ao passar o mouse sobre chips com texto truncado. @default true */
|
|
30
64
|
showTooltip = true;
|
|
65
|
+
/** @description Número máximo de caracteres exibidos diretamente no chip sem aplicar truncamento. @default 20 */
|
|
31
66
|
maxLengthRenderWithoutTooltip = 20;
|
|
67
|
+
/** @description Emitido quando um novo chip é adicionado com sucesso. */
|
|
32
68
|
added = new EventEmitter();
|
|
69
|
+
/** @description Emitido quando um chip é removido pelo usuário. */
|
|
33
70
|
removed = new EventEmitter();
|
|
71
|
+
/** @description Emitido quando o campo de entrada recebe foco. */
|
|
34
72
|
focused = new EventEmitter();
|
|
73
|
+
/** @description Emitido quando o campo de entrada perde o foco. */
|
|
35
74
|
focusLost = new EventEmitter();
|
|
75
|
+
/** @description Emitido quando o usuário clica em um chip existente. */
|
|
36
76
|
chipClicked = new EventEmitter();
|
|
77
|
+
/** @description Emitido sempre que a lista de chips é alterada (adição ou remoção). */
|
|
37
78
|
valueChange = new EventEmitter();
|
|
38
79
|
templates = null;
|
|
39
80
|
input = null;
|
|
@@ -238,4 +279,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
238
279
|
type: HostListener,
|
|
239
280
|
args: ['document:keydown', ['$event']]
|
|
240
281
|
}], onInputLostFocus: [] } });
|
|
241
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hpcHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2NoaXBzL3NyYy9saWIvY2hpcHMvY2hpcHMvY2hpcHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2NoaXBzL3NyYy9saWIvY2hpcHMvY2hpcHMvY2hpcHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFHSCxTQUFTLEVBQ1QsZUFBZSxFQUNmLFVBQVUsRUFDVixZQUFZLEVBQ1osVUFBVSxFQUNWLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUdOLFNBQVMsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFLekUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDaEYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7Ozs7QUFjMUUsTUFBTSxPQUFPLGNBQWM7SUFxRk07SUFwRnRCLE9BQU8sR0FBRyxFQUFFLENBQUM7SUFDYixZQUFZLENBQW9CO0lBR2hDLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFHakIsS0FBSyxHQUFHLEVBQUUsQ0FBQztJQUdYLEtBQUssR0FBVSxFQUFFLENBQUM7SUFHbEIsV0FBVyxDQUFxQjtJQUdoQyxHQUFHLEdBQUcsUUFBUSxDQUFDO0lBR2YsU0FBUyxHQUFHLFFBQVEsQ0FBQztJQUdyQixPQUFPLEdBQUcsU0FBUyxVQUFVLEVBQUUsRUFBRSxDQUFDO0lBR2xDLGVBQWUsR0FBRyxJQUFJLENBQUM7SUFHdkIsd0JBQXdCLEdBQUcsS0FBSyxD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QURmLE1BQU07Z0JBSUEsV0FBVztzQkFEakIsTUFBTTtnQkFJQSxXQUFXO3NCQURqQixNQUFNO2dCQUlVLFNBQVM7c0JBRHpCLGVBQWU7dUJBQUMsaUJBQWlCO2dCQUlqQixLQUFLO3NCQURyQixTQUFTO3VCQUFDLE9BQU8sRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUU7Z0JBMENqQyxTQUFTO3NCQUZmLFlBQVk7dUJBQUMsa0JBQWtCLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBMEJyQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyVmlld0luaXQsXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBmb3J3YXJkUmVmLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgUXVlcnlMaXN0LFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IEtleUZpbHRlclBhdHRlcm4gfSBmcm9tICdwcmltZW5nL2tleWZpbHRlcic7XG5cbmltcG9ydCB7IENoaXBBZGRFdmVudCwgQ2hpcENsaWNrRXZlbnQsIENoaXBSZW1vdmVFdmVudCB9IGZyb20gJy4uL21vZGVscy9jaGlwLW1vZGVscyc7XG5pbXBvcnQgeyBUZW1wbGF0ZURpcmVjdGl2ZSB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvdGVtcGxhdGUnO1xuaW1wb3J0IHsgaXNOdWxsT3JVbmRlZmluZWQsIHJhbmRvbUhhc2ggfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzL3V0aWxzJztcbmltcG9ydCB7IENoZWNrRGlzYWJsZWQgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzL3NoYXJlZCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAncy1jaGlwcycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NoaXBzLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jaGlwcy5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IENoaXBzQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIENoaXBzQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICAgIHB1YmxpYyBuZXdJdGVtID0gJyc7XG4gICAgcHVibGljIGNoaXBUZW1wbGF0ZT86IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZmllbGQgPSAnJztcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHZhbHVlOiBhbnlbXSA9IFtdO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgcGxhY2Vob2xkZXI6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIG1heCA9IEluZmluaXR5O1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgbWF4TGVuZ3RoID0gSW5maW5pdHk7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBpbnB1dElkID0gYGNoaXBzLSR7cmFuZG9tSGFzaCgpfWA7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBhbGxvd0R1cGxpY2F0ZWQgPSB0cnVlO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgY2FzZVNlbnNpdGl2ZUR1cGxpY2F0aW9uID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBhZGRPblRhYiA9IHRydWU7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBhZGRPbkJsdXIgPSB0cnVlO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgc2VwYXJhdG9yID0gJyc7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBhdXRvZm9jdXMgPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGluZm9MYWJlbCA9ICcnO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMga2V5RmlsdGVyPzogUmVnRXhwIHwgS2V5RmlsdGVyUGF0dGVybjtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHNob3dUb29sdGlwID0gdHJ1ZTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIG1heExlbmd0aFJlbmRlcldpdGhvdXRUb29sdGlwID0gMjA7XG5cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgYWRkZWQgPSBuZXcgRXZlbnRFbWl0dGVyPENoaXBBZGRFdmVudD4oKTtcblxuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyByZW1vdmVkID0gbmV3IEV2ZW50RW1pdHRlcjxDaGlwUmVtb3ZlRXZlbnQ+KCk7XG5cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgZm9jdXNlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Rm9jdXNFdmVudD4oKTtcblxuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyBmb2N1c0xvc3QgPSBuZXcgRXZlbnRFbWl0dGVyPEZvY3VzRXZlbnQ+KCk7XG5cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgY2hpcENsaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyPENoaXBDbGlja0V2ZW50PigpO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmdbXSB8IGFueVtdPigpO1xuXG4gICAgQENvbnRlbnRDaGlsZHJlbihUZW1wbGF0ZURpcmVjdGl2ZSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRlbXBsYXRlczogUXVlcnlMaXN0PFRlbXBsYXRlRGlyZWN0aXZlPiB8IG51bGwgPSBudWxsO1xuXG4gICAgQFZpZXdDaGlsZCgnaW5wdXQnLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IGlucHV0OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PiB8IG51bGwgPSBudWxsO1xuXG4gICAgcHVibGljIGlzRm9jdXNlZCA9IGZhbHNlO1xuICAgIHB1YmxpYyBvbkNoYW5nZTogKHZhbHVlOiBzdHJpbmdbXSB8IGFueVtdKSA9PiB2b2lkID0gKCkgPT4geyB9O1xuICAgIHB1YmxpYyBvblRvdWNoZWQ6ICh2YWx1ZTogc3RyaW5nW10gfCBhbnlbXSkgPT4gdm9pZCA9ICgpID0+IHsgfTtcblxuICAgIHByaXZhdGUgaXNUYWJFdmVudEFjdGl2ZSA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7IH1cblxuICAgIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmF1dG9mb2N1cyAmJiB0aGlzLmlucHV0KSB7XG4gICAgICAgICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy50ZW1wbGF0ZXMpIHtcbiAgICAgICAgICAgIHRoaXMuY2hpcFRlbXBsYXRlID0gdGhpcy50ZW1wbGF0ZXMuZmluZCgoeCkgPT4geC50eXBlID09PSAnY2hpcC1jb250YWluZXInKT8udGVtcGxhdGU7XG4gICAgICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgd3JpdGVWYWx1ZShvYmo6IHN0cmluZ1tdIHwgYW55W10pOiB2b2lkIHtcbiAgICAgICAgaWYgKGlzTnVsbE9yVW5kZWZpbmVkKG9iaikpIHtcbiAgICAgICAgICAgIG9iaiA9IFtdO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMudmFsdWUgPSBvYmo7XG4gICAgfVxuXG4gICAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2YWx1ZTogc3RyaW5nW10gfCBhbnlbXSkgPT4gdm9pZCk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gICAgfVxuXG4gICAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gICAgfVxuXG4gICAgcHVibGljIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDprZXlkb3duJywgWyckZXZlbnQnXSlcbiAgICBAQ2hlY2tEaXNhYmxlZCgpXG4gICAgcHVibGljIG9uS2V5ZG93bigkZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICAgICAgY29uc3QgaXNFbnRlciA9ICRldmVudC5rZXkgPT09ICdFbnRlcic7XG4gICAgICAgIGNvbnN0IGlzU2VwYXJhdG9yID0gdGhpcy5zZXBhcmF0b3IgJiYgJGV2ZW50LmtleSA9PT0gdGhpcy5zZXBhcmF0b3I7XG4gICAgICAgIGNvbnN0IGV2ZW50S2V5SXNUYWIgPSAkZXZlbnQua2V5ID09PSAnVGFiJztcbiAgICAgICAgaWYgKGV2ZW50S2V5SXNUYWIpIHtcbiAgICAgICAgICAgIGNvbnN0IHRhYlRpbWVvdXRUaW1lID0gNTA7XG4gICAgICAgICAgICB0aGlzLmlzVGFiRXZlbnRBY3RpdmUgPSB0cnVlO1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5pc1RhYkV2ZW50QWN0aXZlID0gZmFsc2U7XG4gICAgICAgICAgICB9LCB0YWJUaW1lb3V0VGltZSk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgaXNUYWIgPSB0aGlzLmFkZE9uVGFiICYmIGV2ZW50S2V5SXNUYWI7XG4gICAgICAgIGlmIChpc0VudGVyIHx8IGlzU2VwYXJhdG9yIHx8IGlzVGFiKSB7XG4gICAgICAgICAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIHRoaXMuYWRkSXRlbSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIG9uSW5wdXRGb2N1cygkZXZlbnQ6IEZvY3VzRXZlbnQpIHtcbiAgICAgICAgdGhpcy5mb2N1c2VkLmVtaXQoJGV2ZW50KTtcbiAgICAgICAgdGhpcy5pc0ZvY3VzZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIEBDaGVja0Rpc2FibGVkKClcbiAgICBwdWJsaWMgb25JbnB1dExvc3RGb2N1cygkZXZlbnQ6IEZvY3VzRXZlbnQpIHtcbiAgICAgICAgdGhpcy5pc0ZvY3VzZWQgPSBmYWxzZTtcbiAgICAgICAgaWYgKCF0aGlzLmFkZE9uQmx1ciB8fCB0aGlzLmlzVGFiRXZlbnRBY3RpdmUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmFkZEl0ZW0oKTtcbiAgICAgICAgdGhpcy5mb2N1c0xvc3QuZW1pdCgkZXZlbnQpO1xuICAgIH1cblxuICAgIHB1YmxpYyByZW1vdmVJdGVtKHsgaXRlbUluZGV4LCBldmVudCB9OiB7IGl0ZW1JbmRleDogbnVtYmVyOyBldmVudDogRXZlbnQgfSkge1xuICAgICAgICBjb25zdCBfcmVtb3ZlZEl0ZW0gPSB0aGlzLnZhbHVlW2l0ZW1JbmRleF07XG4gICAgICAgIHRoaXMudmFsdWUuc3BsaWNlKGl0ZW1JbmRleCwgMSk7XG4gICAgICAgIHRoaXMucmVtb3ZlZC5lbWl0KHsgdmFsdWU6IF9yZW1vdmVkSXRlbSwgb3JpZ2luYWxFdmVudDogZXZlbnQgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIG9uQ2hpcENsaWNrZWQoeyBldmVudCwgZGF0YSB9OiB7IGV2ZW50OiBFdmVudDsgZGF0YTogc3RyaW5nIHwgT2JqZWN0IH0pIHtcbiAgICAgICAgdGhpcy5jaGlwQ2xpY2tlZC5lbWl0KHsgdmFsdWU6IGRhdGEsIG9yaWdpbmFsRXZlbnQ6IGV2ZW50IH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgYWRkSXRlbSgpIHtcbiAgICAgICAgaWYgKCF0aGlzLmhhc1ZhbHVlVG9BZGQoKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLmlzTWF4UmVhY2hlZCgpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCF0aGlzLmlzVmFsaWRJdGVtTGVuZ3RoKCkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCB2YWx1ZVRvQWRkID0gdGhpcy5nZXRWYWx1ZVRvQWRkKCk7XG4gICAgICAgIGlmICghdGhpcy5oYXNEdXBsaWNhdGVkSXRlbSgpKSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlVmFsdWUodmFsdWVUb0FkZCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5uZXdJdGVtID0gJyc7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoYXNWYWx1ZVRvQWRkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLm5ld0l0ZW07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpc01heFJlYWNoZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhISh0aGlzLm1heCAmJiB0aGlzLnZhbHVlLmxlbmd0aCA9PT0gdGhpcy5tYXgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgaXNWYWxpZEl0ZW1MZW5ndGgoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLm1heExlbmd0aCA/IHRoaXMubmV3SXRlbS5sZW5ndGggPD0gdGhpcy5tYXhMZW5ndGggOiB0cnVlO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0TWFwcGVkVmFsdWVzKCk6IHN0cmluZ1tdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZmllbGQgPyB0aGlzLnZhbHVlLm1hcCgoeCkgPT4geFt0aGlzLmZpZWxkXSkgOiB0aGlzLnZhbHVlO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0VmFsdWVUb0FkZCgpOiBhbnkge1xuICAgICAgICByZXR1cm4gdGhpcy5maWVsZCA/IHsgW3RoaXMuZmllbGRdOiB0aGlzLm5ld0l0ZW0gfSA6IHRoaXMubmV3SXRlbTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGhhc0R1cGxpY2F0ZWRJdGVtKCk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAodGhpcy5hbGxvd0R1cGxpY2F0ZWQpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBtYXBwZWRWYWx1ZXMgPSB0aGlzLmdldE1hcHBlZFZhbHVlcygpO1xuICAgICAgICByZXR1cm4gISFtYXBwZWRWYWx1ZXMuZmluZCgoeCkgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMuY2FzZVNlbnNpdGl2ZUR1cGxpY2F0aW9uKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHggPT09IHRoaXMubmV3SXRlbTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHgudG9Mb3dlckNhc2UoKSA9PT0gdGhpcy5uZXdJdGVtLnRvTG93ZXJDYXNlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3RvcmVWYWx1ZSh2YWx1ZTogYW55KSB7XG4gICAgICAgIHRoaXMudmFsdWUgPSBbLi4udGhpcy52YWx1ZSwgdmFsdWVdO1xuICAgICAgICB0aGlzLmFkZGVkLmVtaXQoeyB2YWx1ZSB9KTtcbiAgICAgICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KHRoaXMudmFsdWUpO1xuICAgICAgICB0aGlzLndyaXRlVmFsdWUodGhpcy52YWx1ZSk7XG4gICAgICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZSk7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkKHRoaXMudmFsdWUpO1xuICAgIH1cbn1cbiIsIjx1bCBjbGFzcz1cImNoaXBzLWNvbnRhaW5lclwiIFtjbGFzcy5jaGlwcy1jb250YWluZXItLWZvY3VzZWRdPVwiaXNGb2N1c2VkXCI+XG4gICAgQGZvcihpdGVtIG9mIHZhbHVlOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgPGxpPlxuICAgICAgICAgICAgPHMtY2hpcC1pdGVtXG4gICAgICAgICAgICAgICAgW3RlbXBsYXRlUmVmXT1cImNoaXBUZW1wbGF0ZVwiXG4gICAgICAgICAgICAgICAgW2RhdGFSZW5kZXJdPVwiaXRlbVwiXG4gICAgICAgICAgICAgICAgW29iamVjdEZpZWxkXT1cImZpZWxkXCJcbiAgICAgICAgICAgICAgICBbaXRlbUluZGV4XT1cIiRpbmRleFwiXG4gICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAgICAgICBbc2hvd1Rvb2x0aXBdPVwic2hvd1Rvb2x0aXBcIlxuICAgICAgICAgICAgICAgIFttYXhMZW5ndGhSZW5kZXJXaXRob3V0VG9vbHRpcF09XCJtYXhMZW5ndGhSZW5kZXJXaXRob3V0VG9vbHRpcFwiXG4gICAgICAgICAgICAgICAgKGNsaWNrUmVtb3ZlKT1cInJlbW92ZUl0ZW0oJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgKGNoaXBDbGlja2VkKT1cIm9uQ2hpcENsaWNrZWQoJGV2ZW50KVwiPlxuICAgICAgICAgICAgPC9zLWNoaXAtaXRlbT5cbiAgICAgICAgPC9saT5cbiAgICB9XG5cbiAgICBAaWYoa2V5RmlsdGVyKSB7XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgI2lucHV0XG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQgfHwgbWF4ID09PSB2YWx1ZS5sZW5ndGhcIlxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyIHx8ICcnXCJcbiAgICAgICAgICAgIFttYXhsZW5ndGhdPVwibWF4TGVuZ3RoXCJcbiAgICAgICAgICAgIFtpZF09XCJpbnB1dElkXCJcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwibmV3SXRlbVwiXG4gICAgICAgICAgICBbcEtleUZpbHRlcl09XCJrZXlGaWx0ZXJcIlxuICAgICAgICAgICAgKGZvY3VzKT1cIm9uSW5wdXRGb2N1cygkZXZlbnQpXCJcbiAgICAgICAgICAgIChibHVyKT1cIm9uSW5wdXRMb3N0Rm9jdXMoJGV2ZW50KVwiPlxuICAgIH1AZWxzZSB7XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgI2lucHV0XG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQgfHwgbWF4ID09PSB2YWx1ZS5sZW5ndGhcIlxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyIHx8ICcnXCJcbiAgICAgICAgICAgIFttYXhsZW5ndGhdPVwibWF4TGVuZ3RoXCJcbiAgICAgICAgICAgIFtpZF09XCJpbnB1dElkXCJcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwibmV3SXRlbVwiXG4gICAgICAgICAgICAoZm9jdXMpPVwib25JbnB1dEZvY3VzKCRldmVudClcIlxuICAgICAgICAgICAgKGJsdXIpPVwib25JbnB1dExvc3RGb2N1cygkZXZlbnQpXCI+XG4gICAgfVxuPC91bD5cbkBpZihpbmZvTGFiZWwpIHtcbiAgICA8c3BhbiBjbGFzcz1cImluZm8tbGFiZWxcIj5cbiAgICAgICAge3sgaW5mb0xhYmVsIH19XG4gICAgPC9zcGFuPlxufVxuIl19
|
|
282
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hpcHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2NoaXBzL3NyYy9saWIvY2hpcHMvY2hpcHMvY2hpcHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2NoaXBzL3NyYy9saWIvY2hpcHMvY2hpcHMvY2hpcHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFHSCxTQUFTLEVBQ1QsZUFBZSxFQUNmLFVBQVUsRUFDVixZQUFZLEVBQ1osVUFBVSxFQUNWLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUdOLFNBQVMsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFLekUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDaEYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7Ozs7QUFFMUU7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBaUJHO0FBYUgsTUFBTSxPQUFPLGNBQWM7SUE0R007SUEzR3RCLE9BQU8sR0FBRyxFQUFFLENBQUM7SUFDYixZQUFZLENBQW9CO0lBRXZDLDJFQUEyRTtJQUVwRSxRQUFRLEdBQUcsS0FBSyxDQUFDO0lBRXhCLDBHQUEwRztJQUVuRyxLQUFLLEdBQUcsRUFBRSxDQUFDO0lBRWxCLG1FQUFtRTtJQUU1RCxLQUFLLEdBQVUsRUFBRSxDQUFDO0lBRXpCLGtGQUFrRjtJQUUzRSxXQUFXLENBQXFCO0lBRXZDLHdFQUF3RTtJQUVqRSxHQUFHLEdBQUcsUUFBUSxDQUFDO0lBRXRCLCtFQUErRTtJQUV4RSxTQUFT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O2dCQUtDLE9BQU87c0JBRGIsS0FBSztnQkFLQyxlQUFlO3NCQURyQixLQUFLO2dCQUtDLHdCQUF3QjtzQkFEOUIsS0FBSztnQkFLQyxRQUFRO3NCQURkLEtBQUs7Z0JBS0MsU0FBUztzQkFEZixLQUFLO2dCQUtDLFNBQVM7c0JBRGYsS0FBSztnQkFLQyxTQUFTO3NCQURmLEtBQUs7Z0JBS0MsU0FBUztzQkFEZixLQUFLO2dCQUtDLFNBQVM7c0JBRGYsS0FBSztnQkFLQyxXQUFXO3NCQURqQixLQUFLO2dCQUtDLDZCQUE2QjtzQkFEbkMsS0FBSztnQkFLQyxLQUFLO3NCQURYLE1BQU07Z0JBS0EsT0FBTztzQkFEYixNQUFNO2dCQUtBLE9BQU87c0JBRGIsTUFBTTtnQkFLQSxTQUFTO3NCQURmLE1BQU07Z0JBS0EsV0FBVztzQkFEakIsTUFBTTtnQkFLQSxXQUFXO3NCQURqQixNQUFNO2dCQUlVLFNBQVM7c0JBRHpCLGVBQWU7dUJBQUMsaUJBQWlCO2dCQUlqQixLQUFLO3NCQURyQixTQUFTO3VCQUFDLE9BQU8sRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUU7Z0JBMENqQyxTQUFTO3NCQUZmLFlBQVk7dUJBQUMsa0JBQWtCLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBMEJyQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyVmlld0luaXQsXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBmb3J3YXJkUmVmLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgUXVlcnlMaXN0LFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IEtleUZpbHRlclBhdHRlcm4gfSBmcm9tICdwcmltZW5nL2tleWZpbHRlcic7XG5cbmltcG9ydCB7IENoaXBBZGRFdmVudCwgQ2hpcENsaWNrRXZlbnQsIENoaXBSZW1vdmVFdmVudCB9IGZyb20gJy4uL21vZGVscy9jaGlwLW1vZGVscyc7XG5pbXBvcnQgeyBUZW1wbGF0ZURpcmVjdGl2ZSB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMvdGVtcGxhdGUnO1xuaW1wb3J0IHsgaXNOdWxsT3JVbmRlZmluZWQsIHJhbmRvbUhhc2ggfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzL3V0aWxzJztcbmltcG9ydCB7IENoZWNrRGlzYWJsZWQgfSBmcm9tICdAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzL3NoYXJlZCc7XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIENvbXBvbmVudGUgZGUgZW50cmFkYSBkZSB0YWdzL2NoaXBzIHF1ZSBwZXJtaXRlIGFkaWNpb25hciBlIHJlbW92ZXJcbiAqIGl0ZW5zIGRlIHRleHRvIGxpdnJlbWVudGUgb3UgYSBwYXJ0aXIgZGUgdW1hIGxpc3RhLiBTdXBvcnRhIHRlbXBsYXRlcyBwZXJzb25hbGl6YWRvc1xuICogcGFyYSByZW5kZXJpemHDp8OjbyBkZSBjYWRhIGNoaXAsIGZpbHRybyBkZSB0ZWNsYXMsIGxpbWl0ZSBkZSBpdGVucyBlIGR1cGxpY2HDp8OjbyBjb25maWd1csOhdmVsLlxuICogSW1wbGVtZW50YSB7QGxpbmsgQ29udHJvbFZhbHVlQWNjZXNzb3J9IHBhcmEgdXNvIGVtIGZvcm11bMOhcmlvcyBBbmd1bGFyLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBodG1sXG4gKiA8cy1jaGlwc1xuICogICBmb3JtQ29udHJvbE5hbWU9XCJ0YWdzXCJcbiAqICAgcGxhY2Vob2xkZXI9XCJBZGljaW9uYXIgdGFnLi4uXCJcbiAqICAgW21heF09XCIxMFwiXG4gKiAgIFthbGxvd0R1cGxpY2F0ZWRdPVwiZmFsc2VcIlxuICogICAoYWRkZWQpPVwib25BZGRlZCgkZXZlbnQpXCIgLz5cbiAqIGBgYFxuICpcbiAqIEBjYXRlZ29yeSBJbnB1dHNcbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdzLWNoaXBzJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY2hpcHMuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2NoaXBzLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQ2hpcHNDb21wb25lbnQpLFxuICAgICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2hpcHNDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gICAgcHVibGljIG5ld0l0ZW0gPSAnJztcbiAgICBwdWJsaWMgY2hpcFRlbXBsYXRlPzogVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIC8qKiBAZGVzY3JpcHRpb24gRGVzYWJpbGl0YSBhIGludGVyYcOnw6NvIGNvbSBvIGNvbXBvbmVudGUuIEBkZWZhdWx0IGZhbHNlICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgZGlzYWJsZWQgPSBmYWxzZTtcblxuICAgIC8qKiBAZGVzY3JpcHRpb24gQ2hhdmUgZG8gb2JqZXRvIHVzYWRhIHBhcmEgZXhpYmnDp8OjbyBxdWFuZG8gb3MgaXRlbnMgc8OjbyBvYmpldG9zIGNvbXBsZXhvcy4gQGRlZmF1bHQgJycgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBmaWVsZCA9ICcnO1xuXG4gICAgLyoqIEBkZXNjcmlwdGlvbiBMaXN0YSBkZSBjaGlwcyBhdHVhbG1lbnRlIGV4aWJpZG9zLiBAZGVmYXVsdCBbXSAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHZhbHVlOiBhbnlbXSA9IFtdO1xuXG4gICAgLyoqIEBkZXNjcmlwdGlvbiBUZXh0byBkZSBwbGFjZWhvbGRlciBleGliaWRvIG5vIGNhbXBvIGRlIGVudHJhZGEgcXVhbmRvIHZhemlvLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHBsYWNlaG9sZGVyOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgICAvKiogQGRlc2NyaXB0aW9uIE7Dum1lcm8gbcOheGltbyBkZSBjaGlwcyBwZXJtaXRpZG9zLiBAZGVmYXVsdCBJbmZpbml0eSAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIG1heCA9IEluZmluaXR5O1xuXG4gICAgLyoqIEBkZXNjcmlwdGlvbiBDb21wcmltZW50byBtw6F4aW1vIGRvIHRleHRvIGRlIGNhZGEgY2hpcC4gQGRlZmF1bHQgSW5maW5pdHkgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBtYXhMZW5ndGggPSBJbmZpbml0eTtcblxuICAgIC8qKiBAZGVzY3JpcHRpb24gSWRlbnRpZmljYWRvciBkbyBlbGVtZW50byBgPGlucHV0PmAgaW50ZXJuby4gR2VyYWRvIGF1dG9tYXRpY2FtZW50ZSBzZSBuw6NvIGluZm9ybWFkby4gKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBpbnB1dElkID0gYGNoaXBzLSR7cmFuZG9tSGFzaCgpfWA7XG5cbiAgICAvKiogQGRlc2NyaXB0aW9uIFBlcm1pdGUgYSBhZGnDp8OjbyBkZSBjaGlwcyBjb20gdmFsb3IgZHVwbGljYWRvLiBAZGVmYXVsdCB0cnVlICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgYWxsb3dEdXBsaWNhdGVkID0gdHJ1ZTtcblxuICAgIC8qKiBAZGVzY3JpcHRpb24gUXVhbmRvIGBmYWxzZWAsIGEgY29tcGFyYcOnw6NvIGRlIGR1cGxpY2F0YXMgw6kgY2FzZS1pbnNlbnNpdGl2ZS4gQGRlZmF1bHQgZmFsc2UgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBjYXNlU2Vuc2l0aXZlRHVwbGljYXRpb24gPSBmYWxzZTtcblxuICAgIC8qKiBAZGVzY3JpcHRpb24gQWRpY2lvbmEgbyBjaGlwIGFvIHByZXNzaW9uYXIgVGFiLiBAZGVmYXVsdCB0cnVlICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgYWRkT25UYWIgPSB0cnVlO1xuXG4gICAgLyoqIEBkZXNjcmlwdGlvbiBBZGljaW9uYSBvIGNoaXAgYW8gcGVyZGVyIG8gZm9jbyAoYmx1cikuIEBkZWZhdWx0IHRydWUgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBhZGRPbkJsdXIgPSB0cnVlO1xuXG4gICAgLyoqIEBkZXNjcmlwdGlvbiBDYXJhY3RlcmUgc2VwYXJhZG9yIHF1ZSwgcXVhbmRvIGRpZ2l0YWRvLCBjb25maXJtYSBhIGFkacOnw6NvIGRlIHVtIG5vdm8gY2hpcC4gQGRlZmF1bHQgJycgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzZXBhcmF0b3IgPSAnJztcblxuICAgIC8qKiBAZGVzY3JpcHRpb24gQ29sb2NhIG8gZm9jbyBhdXRvbWF0aWNhbWVudGUgbm8gY2FtcG8gZGUgZW50cmFkYSBhbyByZW5kZXJpemFyIG8gY29tcG9uZW50ZS4gQGRlZmF1bHQgZmFsc2UgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBhdXRvZm9jdXMgPSBmYWxzZTtcblxuICAgIC8qKiBAZGVzY3JpcHRpb24gVGV4dG8gaW5mb3JtYXRpdm8gZXhpYmlkbyBhYmFpeG8gZG8gY2FtcG8gZGUgZW50cmFkYS4gQGRlZmF1bHQgJycgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBpbmZvTGFiZWwgPSAnJztcblxuICAgIC8qKiBAZGVzY3JpcHRpb24gRXhwcmVzc8OjbyByZWd1bGFyIG91IHBhZHLDo28gcHJlZGVmaW5pZG8gKFByaW1lTkcgS2V5RmlsdGVyUGF0dGVybikgcGFyYSBmaWx0cmFyIHRlY2xhcyBhY2VpdGFzLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGtleUZpbHRlcj86IFJlZ0V4cCB8IEtleUZpbHRlclBhdHRlcm47XG5cbiAgICAvKiogQGRlc2NyaXB0aW9uIEV4aWJlIHRvb2x0aXAgYW8gcGFzc2FyIG8gbW91c2Ugc29icmUgY2hpcHMgY29tIHRleHRvIHRydW5jYWRvLiBAZGVmYXVsdCB0cnVlICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgc2hvd1Rvb2x0aXAgPSB0cnVlO1xuXG4gICAgLyoqIEBkZXNjcmlwdGlvbiBOw7ptZXJvIG3DoXhpbW8gZGUgY2FyYWN0ZXJlcyBleGliaWRvcyBkaXJldGFtZW50ZSBubyBjaGlwIHNlbSBhcGxpY2FyIHRydW5jYW1lbnRvLiBAZGVmYXVsdCAyMCAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIG1heExlbmd0aFJlbmRlcldpdGhvdXRUb29sdGlwID0gMjA7XG5cbiAgICAvKiogQGRlc2NyaXB0aW9uIEVtaXRpZG8gcXVhbmRvIHVtIG5vdm8gY2hpcCDDqSBhZGljaW9uYWRvIGNvbSBzdWNlc3NvLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyBhZGRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Q2hpcEFkZEV2ZW50PigpO1xuXG4gICAgLyoqIEBkZXNjcmlwdGlvbiBFbWl0aWRvIHF1YW5kbyB1bSBjaGlwIMOpIHJlbW92aWRvIHBlbG8gdXN1w6FyaW8uICovXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIHJlbW92ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPENoaXBSZW1vdmVFdmVudD4oKTtcblxuICAgIC8qKiBAZGVzY3JpcHRpb24gRW1pdGlkbyBxdWFuZG8gbyBjYW1wbyBkZSBlbnRyYWRhIHJlY2ViZSBmb2NvLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyBmb2N1c2VkID0gbmV3IEV2ZW50RW1pdHRlcjxGb2N1c0V2ZW50PigpO1xuXG4gICAgLyoqIEBkZXNjcmlwdGlvbiBFbWl0aWRvIHF1YW5kbyBvIGNhbXBvIGRlIGVudHJhZGEgcGVyZGUgbyBmb2NvLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyBmb2N1c0xvc3QgPSBuZXcgRXZlbnRFbWl0dGVyPEZvY3VzRXZlbnQ+KCk7XG5cbiAgICAvKiogQGRlc2NyaXB0aW9uIEVtaXRpZG8gcXVhbmRvIG8gdXN1w6FyaW8gY2xpY2EgZW0gdW0gY2hpcCBleGlzdGVudGUuICovXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIGNoaXBDbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcjxDaGlwQ2xpY2tFdmVudD4oKTtcblxuICAgIC8qKiBAZGVzY3JpcHRpb24gRW1pdGlkbyBzZW1wcmUgcXVlIGEgbGlzdGEgZGUgY2hpcHMgw6kgYWx0ZXJhZGEgKGFkacOnw6NvIG91IHJlbW/Dp8OjbykuICovXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmdbXSB8IGFueVtdPigpO1xuXG4gICAgQENvbnRlbnRDaGlsZHJlbihUZW1wbGF0ZURpcmVjdGl2ZSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRlbXBsYXRlczogUXVlcnlMaXN0PFRlbXBsYXRlRGlyZWN0aXZlPiB8IG51bGwgPSBudWxsO1xuXG4gICAgQFZpZXdDaGlsZCgnaW5wdXQnLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IGlucHV0OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PiB8IG51bGwgPSBudWxsO1xuXG4gICAgcHVibGljIGlzRm9jdXNlZCA9IGZhbHNlO1xuICAgIHB1YmxpYyBvbkNoYW5nZTogKHZhbHVlOiBzdHJpbmdbXSB8IGFueVtdKSA9PiB2b2lkID0gKCkgPT4ge307XG4gICAgcHVibGljIG9uVG91Y2hlZDogKHZhbHVlOiBzdHJpbmdbXSB8IGFueVtdKSA9PiB2b2lkID0gKCkgPT4ge307XG5cbiAgICBwcml2YXRlIGlzVGFiRXZlbnRBY3RpdmUgPSBmYWxzZTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICAgIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmF1dG9mb2N1cyAmJiB0aGlzLmlucHV0KSB7XG4gICAgICAgICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy50ZW1wbGF0ZXMpIHtcbiAgICAgICAgICAgIHRoaXMuY2hpcFRlbXBsYXRlID0gdGhpcy50ZW1wbGF0ZXMuZmluZCgoeCkgPT4geC50eXBlID09PSAnY2hpcC1jb250YWluZXInKT8udGVtcGxhdGU7XG4gICAgICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgd3JpdGVWYWx1ZShvYmo6IHN0cmluZ1tdIHwgYW55W10pOiB2b2lkIHtcbiAgICAgICAgaWYgKGlzTnVsbE9yVW5kZWZpbmVkKG9iaikpIHtcbiAgICAgICAgICAgIG9iaiA9IFtdO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMudmFsdWUgPSBvYmo7XG4gICAgfVxuXG4gICAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2YWx1ZTogc3RyaW5nW10gfCBhbnlbXSkgPT4gdm9pZCk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gICAgfVxuXG4gICAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gICAgfVxuXG4gICAgcHVibGljIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDprZXlkb3duJywgWyckZXZlbnQnXSlcbiAgICBAQ2hlY2tEaXNhYmxlZCgpXG4gICAgcHVibGljIG9uS2V5ZG93bigkZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICAgICAgY29uc3QgaXNFbnRlciA9ICRldmVudC5rZXkgPT09ICdFbnRlcic7XG4gICAgICAgIGNvbnN0IGlzU2VwYXJhdG9yID0gdGhpcy5zZXBhcmF0b3IgJiYgJGV2ZW50LmtleSA9PT0gdGhpcy5zZXBhcmF0b3I7XG4gICAgICAgIGNvbnN0IGV2ZW50S2V5SXNUYWIgPSAkZXZlbnQua2V5ID09PSAnVGFiJztcbiAgICAgICAgaWYgKGV2ZW50S2V5SXNUYWIpIHtcbiAgICAgICAgICAgIGNvbnN0IHRhYlRpbWVvdXRUaW1lID0gNTA7XG4gICAgICAgICAgICB0aGlzLmlzVGFiRXZlbnRBY3RpdmUgPSB0cnVlO1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5pc1RhYkV2ZW50QWN0aXZlID0gZmFsc2U7XG4gICAgICAgICAgICB9LCB0YWJUaW1lb3V0VGltZSk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgaXNUYWIgPSB0aGlzLmFkZE9uVGFiICYmIGV2ZW50S2V5SXNUYWI7XG4gICAgICAgIGlmIChpc0VudGVyIHx8IGlzU2VwYXJhdG9yIHx8IGlzVGFiKSB7XG4gICAgICAgICAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIHRoaXMuYWRkSXRlbSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIG9uSW5wdXRGb2N1cygkZXZlbnQ6IEZvY3VzRXZlbnQpIHtcbiAgICAgICAgdGhpcy5mb2N1c2VkLmVtaXQoJGV2ZW50KTtcbiAgICAgICAgdGhpcy5pc0ZvY3VzZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIEBDaGVja0Rpc2FibGVkKClcbiAgICBwdWJsaWMgb25JbnB1dExvc3RGb2N1cygkZXZlbnQ6IEZvY3VzRXZlbnQpIHtcbiAgICAgICAgdGhpcy5pc0ZvY3VzZWQgPSBmYWxzZTtcbiAgICAgICAgaWYgKCF0aGlzLmFkZE9uQmx1ciB8fCB0aGlzLmlzVGFiRXZlbnRBY3RpdmUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmFkZEl0ZW0oKTtcbiAgICAgICAgdGhpcy5mb2N1c0xvc3QuZW1pdCgkZXZlbnQpO1xuICAgIH1cblxuICAgIHB1YmxpYyByZW1vdmVJdGVtKHsgaXRlbUluZGV4LCBldmVudCB9OiB7IGl0ZW1JbmRleDogbnVtYmVyOyBldmVudDogRXZlbnQgfSkge1xuICAgICAgICBjb25zdCBfcmVtb3ZlZEl0ZW0gPSB0aGlzLnZhbHVlW2l0ZW1JbmRleF07XG4gICAgICAgIHRoaXMudmFsdWUuc3BsaWNlKGl0ZW1JbmRleCwgMSk7XG4gICAgICAgIHRoaXMucmVtb3ZlZC5lbWl0KHsgdmFsdWU6IF9yZW1vdmVkSXRlbSwgb3JpZ2luYWxFdmVudDogZXZlbnQgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIG9uQ2hpcENsaWNrZWQoeyBldmVudCwgZGF0YSB9OiB7IGV2ZW50OiBFdmVudDsgZGF0YTogc3RyaW5nIHwgT2JqZWN0IH0pIHtcbiAgICAgICAgdGhpcy5jaGlwQ2xpY2tlZC5lbWl0KHsgdmFsdWU6IGRhdGEsIG9yaWdpbmFsRXZlbnQ6IGV2ZW50IH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgYWRkSXRlbSgpIHtcbiAgICAgICAgaWYgKCF0aGlzLmhhc1ZhbHVlVG9BZGQoKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLmlzTWF4UmVhY2hlZCgpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCF0aGlzLmlzVmFsaWRJdGVtTGVuZ3RoKCkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCB2YWx1ZVRvQWRkID0gdGhpcy5nZXRWYWx1ZVRvQWRkKCk7XG4gICAgICAgIGlmICghdGhpcy5oYXNEdXBsaWNhdGVkSXRlbSgpKSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlVmFsdWUodmFsdWVUb0FkZCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5uZXdJdGVtID0gJyc7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoYXNWYWx1ZVRvQWRkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLm5ld0l0ZW07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpc01heFJlYWNoZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhISh0aGlzLm1heCAmJiB0aGlzLnZhbHVlLmxlbmd0aCA9PT0gdGhpcy5tYXgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgaXNWYWxpZEl0ZW1MZW5ndGgoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLm1heExlbmd0aCA/IHRoaXMubmV3SXRlbS5sZW5ndGggPD0gdGhpcy5tYXhMZW5ndGggOiB0cnVlO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0TWFwcGVkVmFsdWVzKCk6IHN0cmluZ1tdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZmllbGQgPyB0aGlzLnZhbHVlLm1hcCgoeCkgPT4geFt0aGlzLmZpZWxkXSkgOiB0aGlzLnZhbHVlO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0VmFsdWVUb0FkZCgpOiBhbnkge1xuICAgICAgICByZXR1cm4gdGhpcy5maWVsZCA/IHsgW3RoaXMuZmllbGRdOiB0aGlzLm5ld0l0ZW0gfSA6IHRoaXMubmV3SXRlbTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGhhc0R1cGxpY2F0ZWRJdGVtKCk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAodGhpcy5hbGxvd0R1cGxpY2F0ZWQpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBtYXBwZWRWYWx1ZXMgPSB0aGlzLmdldE1hcHBlZFZhbHVlcygpO1xuICAgICAgICByZXR1cm4gISFtYXBwZWRWYWx1ZXMuZmluZCgoeCkgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMuY2FzZVNlbnNpdGl2ZUR1cGxpY2F0aW9uKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHggPT09IHRoaXMubmV3SXRlbTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHgudG9Mb3dlckNhc2UoKSA9PT0gdGhpcy5uZXdJdGVtLnRvTG93ZXJDYXNlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3RvcmVWYWx1ZSh2YWx1ZTogYW55KSB7XG4gICAgICAgIHRoaXMudmFsdWUgPSBbLi4udGhpcy52YWx1ZSwgdmFsdWVdO1xuICAgICAgICB0aGlzLmFkZGVkLmVtaXQoeyB2YWx1ZSB9KTtcbiAgICAgICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KHRoaXMudmFsdWUpO1xuICAgICAgICB0aGlzLndyaXRlVmFsdWUodGhpcy52YWx1ZSk7XG4gICAgICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZSk7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkKHRoaXMudmFsdWUpO1xuICAgIH1cbn1cblxuIiwiPHVsIGNsYXNzPVwiY2hpcHMtY29udGFpbmVyXCIgW2NsYXNzLmNoaXBzLWNvbnRhaW5lci0tZm9jdXNlZF09XCJpc0ZvY3VzZWRcIj5cbiAgICBAZm9yKGl0ZW0gb2YgdmFsdWU7IHRyYWNrICRpbmRleCkge1xuICAgICAgICA8bGk+XG4gICAgICAgICAgICA8cy1jaGlwLWl0ZW1cbiAgICAgICAgICAgICAgICBbdGVtcGxhdGVSZWZdPVwiY2hpcFRlbXBsYXRlXCJcbiAgICAgICAgICAgICAgICBbZGF0YVJlbmRlcl09XCJpdGVtXCJcbiAgICAgICAgICAgICAgICBbb2JqZWN0RmllbGRdPVwiZmllbGRcIlxuICAgICAgICAgICAgICAgIFtpdGVtSW5kZXhdPVwiJGluZGV4XCJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgIFtzaG93VG9vbHRpcF09XCJzaG93VG9vbHRpcFwiXG4gICAgICAgICAgICAgICAgW21heExlbmd0aFJlbmRlcldpdGhvdXRUb29sdGlwXT1cIm1heExlbmd0aFJlbmRlcldpdGhvdXRUb29sdGlwXCJcbiAgICAgICAgICAgICAgICAoY2xpY2tSZW1vdmUpPVwicmVtb3ZlSXRlbSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAoY2hpcENsaWNrZWQpPVwib25DaGlwQ2xpY2tlZCgkZXZlbnQpXCI+XG4gICAgICAgICAgICA8L3MtY2hpcC1pdGVtPlxuICAgICAgICA8L2xpPlxuICAgIH1cblxuICAgIEBpZihrZXlGaWx0ZXIpIHtcbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAjaW5wdXRcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZCB8fCBtYXggPT09IHZhbHVlLmxlbmd0aFwiXG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXIgfHwgJydcIlxuICAgICAgICAgICAgW21heGxlbmd0aF09XCJtYXhMZW5ndGhcIlxuICAgICAgICAgICAgW2lkXT1cImlucHV0SWRcIlxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJuZXdJdGVtXCJcbiAgICAgICAgICAgIFtwS2V5RmlsdGVyXT1cImtleUZpbHRlclwiXG4gICAgICAgICAgICAoZm9jdXMpPVwib25JbnB1dEZvY3VzKCRldmVudClcIlxuICAgICAgICAgICAgKGJsdXIpPVwib25JbnB1dExvc3RGb2N1cygkZXZlbnQpXCI+XG4gICAgfUBlbHNlIHtcbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAjaW5wdXRcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZCB8fCBtYXggPT09IHZhbHVlLmxlbmd0aFwiXG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXIgfHwgJydcIlxuICAgICAgICAgICAgW21heGxlbmd0aF09XCJtYXhMZW5ndGhcIlxuICAgICAgICAgICAgW2lkXT1cImlucHV0SWRcIlxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJuZXdJdGVtXCJcbiAgICAgICAgICAgIChmb2N1cyk9XCJvbklucHV0Rm9jdXMoJGV2ZW50KVwiXG4gICAgICAgICAgICAoYmx1cik9XCJvbklucHV0TG9zdEZvY3VzKCRldmVudClcIj5cbiAgICB9XG48L3VsPlxuQGlmKGluZm9MYWJlbCkge1xuICAgIDxzcGFuIGNsYXNzPVwiaW5mby1sYWJlbFwiPlxuICAgICAgICB7eyBpbmZvTGFiZWwgfX1cbiAgICA8L3NwYW4+XG59XG4iXX0=
|
|
@@ -5,23 +5,63 @@ import { Subject } from 'rxjs';
|
|
|
5
5
|
import { take, takeUntil } from 'rxjs/operators';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
import * as i1 from "./core/facades/core-facade";
|
|
8
|
+
/**
|
|
9
|
+
* @description Componente de editor de código com syntax highlighting, construído sobre
|
|
10
|
+
* um editor Monaco/CodeMirror. Implementa {@link ControlValueAccessor} para integração
|
|
11
|
+
* com formulários Angular e suporta configuração de linguagem, tema e opções avançadas
|
|
12
|
+
* do editor via `editorOptions`.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```html
|
|
16
|
+
* <s-code-editor
|
|
17
|
+
* formControlName="script"
|
|
18
|
+
* [editorOptions]="{ language: 'javascript', theme: 'vs-dark' }"
|
|
19
|
+
* (codeChange)="onCodeChange($event)" />
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* @category Inputs
|
|
23
|
+
*/
|
|
8
24
|
export class CodeEditorComponent {
|
|
9
25
|
coreFacade;
|
|
26
|
+
/**
|
|
27
|
+
* @description Opções de configuração do editor (linguagem, tema, readonly, etc.).
|
|
28
|
+
* Ao atribuir um novo valor, as opções são aplicadas imediatamente ao editor.
|
|
29
|
+
*/
|
|
10
30
|
set editorOptions(options) {
|
|
11
31
|
if (options) {
|
|
12
32
|
this.coreFacade.changeEditorOptions(options);
|
|
13
33
|
}
|
|
14
34
|
}
|
|
35
|
+
/**
|
|
36
|
+
* @description Conteúdo textual do editor. Ao atribuir, o código é propagado ao núcleo do editor.
|
|
37
|
+
*/
|
|
15
38
|
set code(code) {
|
|
16
39
|
this.coreFacade.changeCode(code);
|
|
17
40
|
}
|
|
41
|
+
/**
|
|
42
|
+
* @description Indica se o código atual é válido segundo as regras do editor.
|
|
43
|
+
* Pode ser usado para exibir indicadores visuais de erro.
|
|
44
|
+
*
|
|
45
|
+
* @default false
|
|
46
|
+
*/
|
|
18
47
|
isCodeValid = false;
|
|
48
|
+
/**
|
|
49
|
+
* @description Payload adicional passado ao núcleo do editor, utilizado para
|
|
50
|
+
* contexto de autocompletar ou validações específicas da linguagem.
|
|
51
|
+
*/
|
|
19
52
|
set payload(payload) {
|
|
20
53
|
this.coreFacade.setPayload(payload);
|
|
21
54
|
}
|
|
55
|
+
/** @description Emitido sempre que o conteúdo do editor é alterado. Emite o código atual como string. */
|
|
22
56
|
codeChange = new EventEmitter();
|
|
57
|
+
/** @description Emitido quando o estado de validade do código muda. */
|
|
23
58
|
isCodeValidChange = new EventEmitter();
|
|
59
|
+
/**
|
|
60
|
+
* @deprecated Use `codeChange` ao invés deste output.
|
|
61
|
+
* @description Emitido sempre que o conteúdo do editor é alterado.
|
|
62
|
+
*/
|
|
24
63
|
onCodeChange = new EventEmitter();
|
|
64
|
+
/** @description Emitido quando o componente finaliza o carregamento e o editor está pronto para uso. */
|
|
25
65
|
onComponentFinishLoad = new EventEmitter();
|
|
26
66
|
coreWrapperElement = null;
|
|
27
67
|
_ngUnsubscribe = new Subject();
|
|
@@ -113,4 +153,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
113
153
|
type: ViewChild,
|
|
114
154
|
args: ['coreWrapper']
|
|
115
155
|
}] } });
|
|
116
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS1lZGl0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2NvZGUtZWRpdG9yL3NyYy9saWIvY29kZS1lZGl0b3IvY29kZS1lZGl0b3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2NvZGUtZWRpdG9yL3NyYy9saWIvY29kZS1lZGl0b3IvY29kZS1lZGl0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsd0RBQXdEO0FBQ3hELE9BQU8sRUFDSCxTQUFTLEVBSVQsS0FBSyxFQUNMLE1BQU0sRUFDTixZQUFZLEVBQ1osU0FBUyxFQUVULFVBQVUsR0FDYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFekUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFpQmpELE1BQU0sT0FBTyxtQkFBbUI7SUF3Q0M7SUF2QzdCLElBQ1csYUFBYSxDQUFDLE9BQWtDO1FBQ3ZELElBQUksT0FBTyxFQUFFLENBQUM7WUFDVixJQUFJLENBQUMsVUFBVSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2pELENBQUM7SUFDTCxDQUFDO0lBRUQsSUFDVyxJQUFJLENBQUMsSUFBWTtRQUN4QixJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRVEsV0FBVyxHQUF3QixLQUFLLENBQUM7SUFFbEQsSUFDVyxPQUFPLENBQUMsT0FBZTtRQUM5QixJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBR00sVUFBVSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7SUFHeEMsaUJBQWlCLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztJQUdoRCxZQUFZLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztJQUcxQyxxQkFBcUIsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0lBR3ZDLGtCQUFrQixHQUFzQixJQUFJLENBQUM7SUFFN0MsY0FBYyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFFOUMsU0FBUyxHQUE0QixHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7SUFDOUMsVUFBVSxHQUFlLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztJQUUxQyxZQUE2QixVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO0lBQUcsQ0FBQztJQUVoRCxVQUFVLENBQUMsS0FBYTtRQUMzQixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBRU0sZ0JBQWdCLENBQUMsUUFBaUM7UUFDckQsSUFBSSxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUM7SUFDOUIsQ0FBQztJQUVNLGlCQUFpQixDQUFDLFNBQXFCO1FBQzFDLElBQUksQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFDO0lBQ2hDLENBQUM7SUFFTSxRQUFRO1FBQ1gsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRU0sZUFBZTtRQUNsQixJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRU0sV0FBVztRQUNkLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDOUIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFTyxxQkFBcUI7UUFDekIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsYUFBK0IsQ0FBQyxDQUFDO0lBQ3BHLENBQUM7SUFFTyxrQkFBa0I7UUFDdEIsSUFBSSxDQUFDLFVBQVU7YUFDViw2QkFBNkIsRUFBRTthQUMvQixJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ2IsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRXhELElBQUksQ0FBQyxVQUFVO2FBQ1YseUJBQXlCLEVBQUU7YUFDM0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7YUFDcEMsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDaEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDM0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDN0IsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekIsQ0FBQyxDQUFDLENBQUM7UUFFUCxJQUFJLENBQUMsVUFBVTthQUNWLGlDQUFpQyxFQUFFO2FBQ25DLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO2FBQ3BDLFNBQVMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQ3BCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDMUMsQ0FBQyxDQUFDLENBQUM7SUFDWCxDQUFDO3dHQS9GUSxtQkFBbUI7NEZBQW5CLG1CQUFtQiwrU0FSakI7WUFDUDtnQkFDSSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLG1CQUFtQixDQUFDO2dCQUNsRCxLQUFLLEVBQUUsSUFBSTthQUNkO1NBQ0osNklDL0JMLGlEQUE2Qzs7NEZEaUNoQyxtQkFBbUI7a0JBWi9CLFNBQVM7K0JBQ0ksZUFBZSxhQUdkO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLG9CQUFvQixDQUFDOzRCQUNsRCxLQUFLLEVBQUUsSUFBSTt5QkFDZDtxQkFDSjsrRUFJVSxhQUFhO3NCQUR2QixLQUFLO2dCQVFLLElBQUk7c0JBRGQsS0FBSztnQkFLRyxXQUFXO3NCQUFuQixLQUFLO2dCQUdLLE9BQU87c0JBRGpCLEtBQUs7Z0JBTUMsVUFBVTtzQkFEaEIsTUFBTTtnQkFJQSxpQkFBaUI7c0JBRHZCLE1BQU07Z0JBSUEsWUFBWTtzQkFEbEIsTUFBTTtnQkFJQSxxQkFBcUI7c0JBRDNCLE1BQU07Z0JBSVUsa0JBQWtCO3NCQURsQyxTQUFTO3VCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW9uLXByZWZpeCAqL1xuaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgT25Jbml0LFxuICAgIEFmdGVyVmlld0luaXQsXG4gICAgT25EZXN0cm95LFxuICAgIElucHV0LFxuICAgIE91dHB1dCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgVmlld0NoaWxkLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgZm9yd2FyZFJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgQ29yZUZhY2FkZSB9IGZyb20gJy4vY29yZS9mYWNhZGVzL2NvcmUtZmFjYWRlJztcbmltcG9ydCB7IEVkaXRvck9wdGlvbnMgfSBmcm9tICcuL21vZGVscyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAncy1jb2RlLWVkaXRvcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NvZGUtZWRpdG9yLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jb2RlLWVkaXRvci5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IENvZGVFZGl0b3JDb21wb25lbnQpLFxuICAgICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZUVkaXRvckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uRGVzdHJveSB7XG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgc2V0IGVkaXRvck9wdGlvbnMob3B0aW9uczogRWRpdG9yT3B0aW9ucyB8IHVuZGVmaW5lZCkge1xuICAgICAgICBpZiAob3B0aW9ucykge1xuICAgICAgICAgICAgdGhpcy5jb3JlRmFjYWRlLmNoYW5nZUVkaXRvck9wdGlvbnMob3B0aW9ucyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzZXQgY29kZShjb2RlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5jb3JlRmFjYWRlLmNoYW5nZUNvZGUoY29kZSk7XG4gICAgfVxuXG4gICAgQElucHV0KCkgaXNDb2RlVmFsaWQ6IGJvb2xlYW4gfCB1bmRlZmluZWQgPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHNldCBwYXlsb2FkKHBheWxvYWQ6IHN0cmluZykge1xuICAgICAgICB0aGlzLmNvcmVGYWNhZGUuc2V0UGF5bG9hZChwYXlsb2FkKTtcbiAgICB9XG5cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgY29kZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIGlzQ29kZVZhbGlkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIG9uQ29kZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIG9uQ29tcG9uZW50RmluaXNoTG9hZCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAgIEBWaWV3Q2hpbGQoJ2NvcmVXcmFwcGVyJylcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvcmVXcmFwcGVyRWxlbWVudDogRWxlbWVudFJlZiB8IG51bGwgPSBudWxsO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBfbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICBwcml2YXRlIF9vbkNoYW5nZTogKHZhbHVlOiBzdHJpbmcpID0+IHZvaWQgPSAoKSA9PiB7fTtcbiAgICBwcml2YXRlIF9vblRvdWNoZWQ6ICgpID0+IHZvaWQgPSAoKSA9PiB7fTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgY29yZUZhY2FkZTogQ29yZUZhY2FkZSkge31cblxuICAgIHB1YmxpYyB3cml0ZVZhbHVlKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb2RlID0gdmFsdWU7XG4gICAgfVxuXG4gICAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2Uob25DaGFuZ2U6ICh2YWx1ZTogc3RyaW5nKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX29uQ2hhbmdlID0gb25DaGFuZ2U7XG4gICAgfVxuXG4gICAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKG9uVG91Y2hlZDogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9vblRvdWNoZWQgPSBvblRvdWNoZWQ7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvcmVGYWNhZGUuaW5pdENvcmUoKTtcbiAgICAgICAgdGhpcy5zZXR1cENvcmVMaXN0ZW5lcnMoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNldENvcmVXcmFwcGVyRWxlbWVudCgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb3JlRmFjYWRlLmRlc3Ryb3lDb3JlKCk7XG4gICAgICAgIHRoaXMuX25nVW5zdWJzY3JpYmUubmV4dCgpO1xuICAgICAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRDb3JlV3JhcHBlckVsZW1lbnQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY29yZUZhY2FkZS5zZXRDb3JlV3JhcHBlckVsZW1lbnQodGhpcy5jb3JlV3JhcHBlckVsZW1lbnQ/Lm5hdGl2ZUVsZW1lbnQgYXMgSFRNTERpdkVsZW1lbnQpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0dXBDb3JlTGlzdGVuZXJzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvcmVGYWNhZGVcbiAgICAgICAgICAgIC5nZXRPbkNvcmVGaW5pc2hMb2FkT2JzZXJ2YWJsZSgpXG4gICAgICAgICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLm9uQ29tcG9uZW50RmluaXNoTG9hZC5lbWl0KCkpO1xuXG4gICAgICAgIHRoaXMuY29yZUZhY2FkZVxuICAgICAgICAgICAgLmdldE9uQ29kZUNoYW5nZU9ic2VydmFibGUoKVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoY29kZSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuY29kZUNoYW5nZS5lbWl0KGNvZGUpO1xuICAgICAgICAgICAgICAgIHRoaXMub25Db2RlQ2hhbmdlLmVtaXQoY29kZSk7XG4gICAgICAgICAgICAgICAgdGhpcy5fb25Ub3VjaGVkKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5fb25DaGFuZ2UoY29kZSk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmNvcmVGYWNhZGVcbiAgICAgICAgICAgIC5nZXRPbkNvZGVWYWxpZGl0eUNoYW5nZU9ic2VydmFibGUoKVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgodmFsaWRpdHkpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmlzQ29kZVZhbGlkQ2hhbmdlLmVtaXQodmFsaWRpdHkpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxufVxuIiwiPGRpdiAjY29yZVdyYXBwZXIgY2xhc3M9XCJjb3JlLXdyYXBwZXJcIj48L2Rpdj4iXX0=
|
|
156
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS1lZGl0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2NvZGUtZWRpdG9yL3NyYy9saWIvY29kZS1lZGl0b3IvY29kZS1lZGl0b3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2NvZGUtZWRpdG9yL3NyYy9saWIvY29kZS1lZGl0b3IvY29kZS1lZGl0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsd0RBQXdEO0FBQ3hELE9BQU8sRUFDSCxTQUFTLEVBSVQsS0FBSyxFQUNMLE1BQU0sRUFDTixZQUFZLEVBQ1osU0FBUyxFQUVULFVBQVUsR0FDYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFekUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFLakQ7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBYUgsTUFBTSxPQUFPLG1CQUFtQjtJQWdFQztJQS9EN0I7OztPQUdHO0lBQ0gsSUFDVyxhQUFhLENBQUMsT0FBa0M7UUFDdkQsSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUNWLElBQUksQ0FBQyxVQUFVLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDakQsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNILElBQ1csSUFBSSxDQUFDLElBQVk7UUFDeEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ00sV0FBVyxHQUF3QixLQUFLLENBQUM7SUFFbEQ7OztPQUdHO0lBQ0gsSUFD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akI7WUFDUDtnQkFDSSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLG1CQUFtQixDQUFDO2dCQUNsRCxLQUFLLEVBQUUsSUFBSTthQUNkO1NBQ0osNklDL0NMLGlEQUE2Qzs7NEZEaURoQyxtQkFBbUI7a0JBWi9CLFNBQVM7K0JBQ0ksZUFBZSxhQUdkO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLG9CQUFvQixDQUFDOzRCQUNsRCxLQUFLLEVBQUUsSUFBSTt5QkFDZDtxQkFDSjsrRUFRVSxhQUFhO3NCQUR2QixLQUFLO2dCQVdLLElBQUk7c0JBRGQsS0FBSztnQkFXRyxXQUFXO3NCQUFuQixLQUFLO2dCQU9LLE9BQU87c0JBRGpCLEtBQUs7Z0JBT0MsVUFBVTtzQkFEaEIsTUFBTTtnQkFLQSxpQkFBaUI7c0JBRHZCLE1BQU07Z0JBUUEsWUFBWTtzQkFEbEIsTUFBTTtnQkFLQSxxQkFBcUI7c0JBRDNCLE1BQU07Z0JBSVUsa0JBQWtCO3NCQURsQyxTQUFTO3VCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW9uLXByZWZpeCAqL1xuaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgT25Jbml0LFxuICAgIEFmdGVyVmlld0luaXQsXG4gICAgT25EZXN0cm95LFxuICAgIElucHV0LFxuICAgIE91dHB1dCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgVmlld0NoaWxkLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgZm9yd2FyZFJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgQ29yZUZhY2FkZSB9IGZyb20gJy4vY29yZS9mYWNhZGVzL2NvcmUtZmFjYWRlJztcbmltcG9ydCB7IEVkaXRvck9wdGlvbnMgfSBmcm9tICcuL21vZGVscyc7XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIENvbXBvbmVudGUgZGUgZWRpdG9yIGRlIGPDs2RpZ28gY29tIHN5bnRheCBoaWdobGlnaHRpbmcsIGNvbnN0cnXDrWRvIHNvYnJlXG4gKiB1bSBlZGl0b3IgTW9uYWNvL0NvZGVNaXJyb3IuIEltcGxlbWVudGEge0BsaW5rIENvbnRyb2xWYWx1ZUFjY2Vzc29yfSBwYXJhIGludGVncmHDp8Ojb1xuICogY29tIGZvcm11bMOhcmlvcyBBbmd1bGFyIGUgc3Vwb3J0YSBjb25maWd1cmHDp8OjbyBkZSBsaW5ndWFnZW0sIHRlbWEgZSBvcMOnw7VlcyBhdmFuw6dhZGFzXG4gKiBkbyBlZGl0b3IgdmlhIGBlZGl0b3JPcHRpb25zYC5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgaHRtbFxuICogPHMtY29kZS1lZGl0b3JcbiAqICAgZm9ybUNvbnRyb2xOYW1lPVwic2NyaXB0XCJcbiAqICAgW2VkaXRvck9wdGlvbnNdPVwieyBsYW5ndWFnZTogJ2phdmFzY3JpcHQnLCB0aGVtZTogJ3ZzLWRhcmsnIH1cIlxuICogICAoY29kZUNoYW5nZSk9XCJvbkNvZGVDaGFuZ2UoJGV2ZW50KVwiIC8+XG4gKiBgYGBcbiAqXG4gKiBAY2F0ZWdvcnkgSW5wdXRzXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAncy1jb2RlLWVkaXRvcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NvZGUtZWRpdG9yLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jb2RlLWVkaXRvci5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IENvZGVFZGl0b3JDb21wb25lbnQpLFxuICAgICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ29kZUVkaXRvckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uRGVzdHJveSB7XG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIE9ww6fDtWVzIGRlIGNvbmZpZ3VyYcOnw6NvIGRvIGVkaXRvciAobGluZ3VhZ2VtLCB0ZW1hLCByZWFkb25seSwgZXRjLikuXG4gICAgICogQW8gYXRyaWJ1aXIgdW0gbm92byB2YWxvciwgYXMgb3DDp8O1ZXMgc8OjbyBhcGxpY2FkYXMgaW1lZGlhdGFtZW50ZSBhbyBlZGl0b3IuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgc2V0IGVkaXRvck9wdGlvbnMob3B0aW9uczogRWRpdG9yT3B0aW9ucyB8IHVuZGVmaW5lZCkge1xuICAgICAgICBpZiAob3B0aW9ucykge1xuICAgICAgICAgICAgdGhpcy5jb3JlRmFjYWRlLmNoYW5nZUVkaXRvck9wdGlvbnMob3B0aW9ucyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gQ29udGXDumRvIHRleHR1YWwgZG8gZWRpdG9yLiBBbyBhdHJpYnVpciwgbyBjw7NkaWdvIMOpIHByb3BhZ2FkbyBhbyBuw7pjbGVvIGRvIGVkaXRvci5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzZXQgY29kZShjb2RlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5jb3JlRmFjYWRlLmNoYW5nZUNvZGUoY29kZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIEluZGljYSBzZSBvIGPDs2RpZ28gYXR1YWwgw6kgdsOhbGlkbyBzZWd1bmRvIGFzIHJlZ3JhcyBkbyBlZGl0b3IuXG4gICAgICogUG9kZSBzZXIgdXNhZG8gcGFyYSBleGliaXIgaW5kaWNhZG9yZXMgdmlzdWFpcyBkZSBlcnJvLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoKSBpc0NvZGVWYWxpZDogYm9vbGVhbiB8IHVuZGVmaW5lZCA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIFBheWxvYWQgYWRpY2lvbmFsIHBhc3NhZG8gYW8gbsO6Y2xlbyBkbyBlZGl0b3IsIHV0aWxpemFkbyBwYXJhXG4gICAgICogY29udGV4dG8gZGUgYXV0b2NvbXBsZXRhciBvdSB2YWxpZGHDp8O1ZXMgZXNwZWPDrWZpY2FzIGRhIGxpbmd1YWdlbS5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzZXQgcGF5bG9hZChwYXlsb2FkOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5jb3JlRmFjYWRlLnNldFBheWxvYWQocGF5bG9hZCk7XG4gICAgfVxuXG4gICAgLyoqIEBkZXNjcmlwdGlvbiBFbWl0aWRvIHNlbXByZSBxdWUgbyBjb250ZcO6ZG8gZG8gZWRpdG9yIMOpIGFsdGVyYWRvLiBFbWl0ZSBvIGPDs2RpZ28gYXR1YWwgY29tbyBzdHJpbmcuICovXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIGNvZGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICAgIC8qKiBAZGVzY3JpcHRpb24gRW1pdGlkbyBxdWFuZG8gbyBlc3RhZG8gZGUgdmFsaWRhZGUgZG8gY8OzZGlnbyBtdWRhLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyBpc0NvZGVWYWxpZENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAgIC8qKlxuICAgICAqIEBkZXByZWNhdGVkIFVzZSBgY29kZUNoYW5nZWAgYW8gaW52w6lzIGRlc3RlIG91dHB1dC5cbiAgICAgKiBAZGVzY3JpcHRpb24gRW1pdGlkbyBzZW1wcmUgcXVlIG8gY29udGXDumRvIGRvIGVkaXRvciDDqSBhbHRlcmFkby5cbiAgICAgKi9cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgb25Db2RlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgICAvKiogQGRlc2NyaXB0aW9uIEVtaXRpZG8gcXVhbmRvIG8gY29tcG9uZW50ZSBmaW5hbGl6YSBvIGNhcnJlZ2FtZW50byBlIG8gZWRpdG9yIGVzdMOhIHByb250byBwYXJhIHVzby4gKi9cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgb25Db21wb25lbnRGaW5pc2hMb2FkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gICAgQFZpZXdDaGlsZCgnY29yZVdyYXBwZXInKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgY29yZVdyYXBwZXJFbGVtZW50OiBFbGVtZW50UmVmIHwgbnVsbCA9IG51bGw7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9uZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIHByaXZhdGUgX29uQ2hhbmdlOiAodmFsdWU6IHN0cmluZykgPT4gdm9pZCA9ICgpID0+IHt9O1xuICAgIHByaXZhdGUgX29uVG91Y2hlZDogKCkgPT4gdm9pZCA9ICgpID0+IHt9O1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBjb3JlRmFjYWRlOiBDb3JlRmFjYWRlKSB7fVxuXG4gICAgcHVibGljIHdyaXRlVmFsdWUodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvZGUgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShvbkNoYW5nZTogKHZhbHVlOiBzdHJpbmcpID0+IHZvaWQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fb25DaGFuZ2UgPSBvbkNoYW5nZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQob25Ub3VjaGVkOiAoKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX29uVG91Y2hlZCA9IG9uVG91Y2hlZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY29yZUZhY2FkZS5pbml0Q29yZSgpO1xuICAgICAgICB0aGlzLnNldHVwQ29yZUxpc3RlbmVycygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2V0Q29yZVdyYXBwZXJFbGVtZW50KCk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvcmVGYWNhZGUuZGVzdHJveUNvcmUoKTtcbiAgICAgICAgdGhpcy5fbmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgICAgIHRoaXMuX25nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldENvcmVXcmFwcGVyRWxlbWVudCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb3JlRmFjYWRlLnNldENvcmVXcmFwcGVyRWxlbWVudCh0aGlzLmNvcmVXcmFwcGVyRWxlbWVudD8ubmF0aXZlRWxlbWVudCBhcyBIVE1MRGl2RWxlbWVudCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXR1cENvcmVMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY29yZUZhY2FkZVxuICAgICAgICAgICAgLmdldE9uQ29yZUZpbmlzaExvYWRPYnNlcnZhYmxlKClcbiAgICAgICAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMub25Db21wb25lbnRGaW5pc2hMb2FkLmVtaXQoKSk7XG5cbiAgICAgICAgdGhpcy5jb3JlRmFjYWRlXG4gICAgICAgICAgICAuZ2V0T25Db2RlQ2hhbmdlT2JzZXJ2YWJsZSgpXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChjb2RlKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5jb2RlQ2hhbmdlLmVtaXQoY29kZSk7XG4gICAgICAgICAgICAgICAgdGhpcy5vbkNvZGVDaGFuZ2UuZW1pdChjb2RlKTtcbiAgICAgICAgICAgICAgICB0aGlzLl9vblRvdWNoZWQoKTtcbiAgICAgICAgICAgICAgICB0aGlzLl9vbkNoYW5nZShjb2RlKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuY29yZUZhY2FkZVxuICAgICAgICAgICAgLmdldE9uQ29kZVZhbGlkaXR5Q2hhbmdlT2JzZXJ2YWJsZSgpXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCh2YWxpZGl0eSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuaXNDb2RlVmFsaWRDaGFuZ2UuZW1pdCh2YWxpZGl0eSk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG59XG5cbiIsIjxkaXYgI2NvcmVXcmFwcGVyIGNsYXNzPVwiY29yZS13cmFwcGVyXCI+PC9kaXY+Il19
|
|
@@ -2,16 +2,34 @@ import { animate, state, style, transition, trigger } from '@angular/animations'
|
|
|
2
2
|
import { Component, Input } from '@angular/core';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
import * as i1 from "@angular/common";
|
|
5
|
+
/**
|
|
6
|
+
* @description Componente de link expansor que mostra/oculta conteúdo transclusão
|
|
7
|
+
* com animação de colapso. Exibe rótulos diferentes para os estados expandido e colapsado.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```html
|
|
11
|
+
* <s-collapse-link expandedLabel="Ver menos" collapsedLabel="Ver mais">
|
|
12
|
+
* <p>Conteúdo oculto</p>
|
|
13
|
+
* </s-collapse-link>
|
|
14
|
+
* ```
|
|
15
|
+
*
|
|
16
|
+
* @category Structure
|
|
17
|
+
*/
|
|
5
18
|
export class CollapseLinkComponent {
|
|
6
19
|
static nextIdSeed = 0;
|
|
7
20
|
static _nextId = CollapseLinkComponent.nextIdSeed;
|
|
8
21
|
static getNextId() {
|
|
9
22
|
return this._nextId++;
|
|
10
23
|
}
|
|
24
|
+
/** @description Identificador do botão de toggle. Gerado automaticamente se não informado. */
|
|
11
25
|
buttonId = `s-collapse-button-${CollapseLinkComponent.getNextId()}`;
|
|
26
|
+
/** @description Rótulo exibido quando o conteúdo está expandido. @default 'Mostrar menos' */
|
|
12
27
|
expandedLabel = 'Mostrar menos';
|
|
28
|
+
/** @description Rótulo exibido quando o conteúdo está colapsado. @default 'Mostrar mais' */
|
|
13
29
|
collapsedLabel = 'Mostrar mais';
|
|
30
|
+
/** @description Desabilita o botão de toggle. @default false */
|
|
14
31
|
disabled = false;
|
|
32
|
+
/** @description Controla externamente o estado colapsado do componente. @default true */
|
|
15
33
|
collapse = true;
|
|
16
34
|
collapsed = true;
|
|
17
35
|
animating = false;
|
|
@@ -78,4 +96,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
78
96
|
}], collapse: [{
|
|
79
97
|
type: Input
|
|
80
98
|
}] } });
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
99
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGFwc2UtbGluay5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvY29sbGFwc2UtbGluay9zcmMvbGliL2NvbGxhcHNlLWxpbmsvY29sbGFwc2UtbGluay5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvY29sbGFwc2UtbGluay9zcmMvbGliL2NvbGxhcHNlLWxpbmsvY29sbGFwc2UtbGluay5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUE0QixNQUFNLGVBQWUsQ0FBQzs7O0FBRTNFOzs7Ozs7Ozs7Ozs7R0FZRztBQXlCSCxNQUFNLE9BQU8scUJBQXFCO0lBQ3ZCLE1BQU0sQ0FBVSxVQUFVLEdBQUcsQ0FBQyxDQUFDO0lBQzlCLE1BQU0sQ0FBQyxPQUFPLEdBQUcscUJBQXFCLENBQUMsVUFBVSxDQUFDO0lBRW5ELE1BQU0sQ0FBQyxTQUFTO1FBQ25CLE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCw4RkFBOEY7SUFFdkYsUUFBUSxHQUFHLHFCQUFxQixxQkFBcUIsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDO0lBRTNFLDZGQUE2RjtJQUV0RixhQUFhLEdBQUcsZUFBZSxDQUFDO0lBRXZDLDRGQUE0RjtJQUVyRixjQUFjLEdBQUcsY0FBYyxDQUFDO0lBRXZDLGdFQUFnRTtJQUV6RCxRQUFRLEdBQUcsS0FBSyxDQUFDO0lBRXhCLHlGQUF5RjtJQUVsRixRQUFRLEdBQUcsSUFBSSxDQUFDO0lBRWhCLFNBQVMsR0FBRyxJQUFJLENBQUM7SUFDakIsU0FBUyxHQUFHLEtBQUssQ0FBQztJQUV6QixXQUFXLENBQUMsT0FBc0I7UUFDOUIsSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztZQUN0QixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUN0RCxDQUFDO0lBQ0wsQ0FBQztJQUVNLE1BQU07UUFDVCxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNqQixPQUFPO1FBQ1gsQ0FBQztRQUVELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3JDLENBQUM7SUFFTSxZQUFZO1FBQ2YsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7SUFDM0IsQ0FBQztJQUVNLFVBQVUsQ0FBQyxRQUFpQjtRQUMvQixJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNqQixPQUFPO1FBQ1gsQ0FBQztRQUVELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO0lBQzlCLENBQUM7d0dBekRRLHFCQUFxQjs0RkFBckIscUJBQXFCLDROQ3hDbEMsK2xCQTBCQSwrc0NETmdCO1lBQ1IsT0FBTyxDQUFDLGlCQUFpQixFQUFFO2dCQUN2QixLQUFLLENBQ0QsTUFBTSxFQUNOLEtBQUssQ0FBQztvQkFDRixNQUFNLEVBQUUsQ0FBQztvQkFDVCxPQUFPLEVBQUUsQ0FBQztpQkFDYixDQUFDLENBQ0w7Z0JBQ0QsS0FBSyxDQUNELEdBQUcsRUFDSCxLQUFLLENBQUM7b0JBQ0YsTUFBTSxFQUFFLEdBQUc7b0JBQ1gsT0FBTyxFQUFFLENBQUM7aUJBQ2IsQ0FBQyxDQUNMO2dCQUNELFVBQVUsQ0FBQyxZQUFZLEVBQUUsT0FBTyxDQUFDLHNDQUFzQyxDQUFDLENBQUM7YUFDNUUsQ0FBQztTQUNMOzs0RkFFUSxxQkFBcUI7a0JBeEJqQyxTQUFTOytCQUNJLGlCQUFpQixjQUdmO3dCQUNSLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRTs0QkFDdkIsS0FBSyxDQUNELE1BQU0sRUFDTixLQUFLLENBQUM7Z0NBQ0YsTUFBTSxFQUFFLENBQUM7Z0NBQ1QsT0FBTyxFQUFFLENBQUM7NkJBQ2IsQ0FBQyxDQUNMOzRCQUNELEtBQUssQ0FDRCxHQUFHLEVBQ0gsS0FBSyxDQUFDO2dDQUNGLE1BQU0sRUFBRSxHQUFHO2dDQUNYLE9BQU8sRUFBRSxDQUFDOzZCQUNiLENBQUMsQ0FDTDs0QkFDRCxVQUFVLENBQUMsWUFBWSxFQUFFLE9BQU8sQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO3lCQUM1RSxDQUFDO3FCQUNMOzhCQVlNLFFBQVE7c0JBRGQsS0FBSztnQkFLQyxhQUFhO3NCQURuQixLQUFLO2dCQUtDLGNBQWM7c0JBRHBCLEtBQUs7Z0JBS0MsUUFBUTtzQkFEZCxLQUFLO2dCQUtDLFFBQVE7c0JBRGQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFuaW1hdGUsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIENvbXBvbmVudGUgZGUgbGluayBleHBhbnNvciBxdWUgbW9zdHJhL29jdWx0YSBjb250ZcO6ZG8gdHJhbnNjbHVzw6NvXG4gKiBjb20gYW5pbWHDp8OjbyBkZSBjb2xhcHNvLiBFeGliZSByw7N0dWxvcyBkaWZlcmVudGVzIHBhcmEgb3MgZXN0YWRvcyBleHBhbmRpZG8gZSBjb2xhcHNhZG8uXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGh0bWxcbiAqIDxzLWNvbGxhcHNlLWxpbmsgZXhwYW5kZWRMYWJlbD1cIlZlciBtZW5vc1wiIGNvbGxhcHNlZExhYmVsPVwiVmVyIG1haXNcIj5cbiAqICAgPHA+Q29udGXDumRvIG9jdWx0bzwvcD5cbiAqIDwvcy1jb2xsYXBzZS1saW5rPlxuICogYGBgXG4gKlxuICogQGNhdGVnb3J5IFN0cnVjdHVyZVxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3MtY29sbGFwc2UtbGluaycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NvbGxhcHNlLWxpbmsuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2NvbGxhcHNlLWxpbmsuY29tcG9uZW50LnNjc3MnXSxcbiAgICBhbmltYXRpb25zOiBbXG4gICAgICAgIHRyaWdnZXIoJ2NvbGxhcHNlQ29udGVudCcsIFtcbiAgICAgICAgICAgIHN0YXRlKFxuICAgICAgICAgICAgICAgICd2b2lkJyxcbiAgICAgICAgICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMCxcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMCxcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBzdGF0ZShcbiAgICAgICAgICAgICAgICAnKicsXG4gICAgICAgICAgICAgICAgc3R5bGUoe1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6ICcqJyxcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICB0cmFuc2l0aW9uKCd2b2lkIDw9PiAqJywgYW5pbWF0ZSgnNDAwbXMgY3ViaWMtYmV6aWVyKDAuODYsIDAsIDAuMDcsIDEpJykpLFxuICAgICAgICBdKSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBDb2xsYXBzZUxpbmtDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICAgIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgbmV4dElkU2VlZCA9IDA7XG4gICAgcHJpdmF0ZSBzdGF0aWMgX25leHRJZCA9IENvbGxhcHNlTGlua0NvbXBvbmVudC5uZXh0SWRTZWVkO1xuXG4gICAgcHVibGljIHN0YXRpYyBnZXROZXh0SWQoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX25leHRJZCsrO1xuICAgIH1cblxuICAgIC8qKiBAZGVzY3JpcHRpb24gSWRlbnRpZmljYWRvciBkbyBib3TDo28gZGUgdG9nZ2xlLiBHZXJhZG8gYXV0b21hdGljYW1lbnRlIHNlIG7Do28gaW5mb3JtYWRvLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGJ1dHRvbklkID0gYHMtY29sbGFwc2UtYnV0dG9uLSR7Q29sbGFwc2VMaW5rQ29tcG9uZW50LmdldE5leHRJZCgpfWA7XG5cbiAgICAvKiogQGRlc2NyaXB0aW9uIFLDs3R1bG8gZXhpYmlkbyBxdWFuZG8gbyBjb250ZcO6ZG8gZXN0w6EgZXhwYW5kaWRvLiBAZGVmYXVsdCAnTW9zdHJhciBtZW5vcycgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBleHBhbmRlZExhYmVsID0gJ01vc3RyYXIgbWVub3MnO1xuXG4gICAgLyoqIEBkZXNjcmlwdGlvbiBSw7N0dWxvIGV4aWJpZG8gcXVhbmRvIG8gY29udGXDumRvIGVzdMOhIGNvbGFwc2Fkby4gQGRlZmF1bHQgJ01vc3RyYXIgbWFpcycgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBjb2xsYXBzZWRMYWJlbCA9ICdNb3N0cmFyIG1haXMnO1xuXG4gICAgLyoqIEBkZXNjcmlwdGlvbiBEZXNhYmlsaXRhIG8gYm90w6NvIGRlIHRvZ2dsZS4gQGRlZmF1bHQgZmFsc2UgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gICAgLyoqIEBkZXNjcmlwdGlvbiBDb250cm9sYSBleHRlcm5hbWVudGUgbyBlc3RhZG8gY29sYXBzYWRvIGRvIGNvbXBvbmVudGUuIEBkZWZhdWx0IHRydWUgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBjb2xsYXBzZSA9IHRydWU7XG5cbiAgICBwdWJsaWMgY29sbGFwc2VkID0gdHJ1ZTtcbiAgICBwdWJsaWMgYW5pbWF0aW5nID0gZmFsc2U7XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgICAgIGlmIChjaGFuZ2VzWydjb2xsYXBzZSddKSB7XG4gICAgICAgICAgICB0aGlzLm9uQ29sbGFwc2UoY2hhbmdlc1snY29sbGFwc2UnXS5jdXJyZW50VmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHRvZ2dsZSgpIHtcbiAgICAgICAgaWYgKHRoaXMuYW5pbWF0aW5nKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmFuaW1hdGluZyA9IHRydWU7XG4gICAgICAgIHRoaXMuY29sbGFwc2VkID0gIXRoaXMuY29sbGFwc2VkO1xuICAgIH1cblxuICAgIHB1YmxpYyBvblRvZ2dsZURvbmUoKSB7XG4gICAgICAgIHRoaXMuYW5pbWF0aW5nID0gZmFsc2U7XG4gICAgfVxuXG4gICAgcHVibGljIG9uQ29sbGFwc2UoY29sbGFwc2U6IGJvb2xlYW4pIHtcbiAgICAgICAgaWYgKHRoaXMuYW5pbWF0aW5nKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmFuaW1hdGluZyA9IHRydWU7XG4gICAgICAgIHRoaXMuY29sbGFwc2VkID0gY29sbGFwc2U7XG4gICAgfVxufVxuXG4iLCJAaWYgKCFjb2xsYXBzZWQpIHtcbiAgICA8ZGl2XG4gICAgICAgIEBjb2xsYXBzZUNvbnRlbnRcbiAgICAgICAgKEBjb2xsYXBzZUNvbnRlbnQuZG9uZSk9XCJvblRvZ2dsZURvbmUoKVwiXG4gICAgPlxuICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG59XG5cbjxidXR0b25cbiAgICBbaWRdPVwiYnV0dG9uSWRcIlxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIGNsYXNzPVwicy1jb2xsYXBzZS1idXR0b25cIlxuICAgIChjbGljayk9XCJ0b2dnbGUoKVwiXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbj5cbiAgICA8c3BhblxuICAgICAgICBjbGFzcz1cInMtYnV0dG9uLWljb24gZmFcIlxuICAgICAgICBbbmdDbGFzc109XCJ7ICdmYS1jYXJldC1kb3duJzogY29sbGFwc2VkLCAnZmEtY2FyZXQtdXAnOiAhY29sbGFwc2VkIH1cIlxuICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgID5cbiAgICA8L3NwYW4+XG4gICAgPHNwYW4gY2xhc3M9XCJzLWJ1dHRvbi10ZXh0XCI+e3tcbiAgICAgICAgY29sbGFwc2VkID8gY29sbGFwc2VkTGFiZWwgOiBleHBhbmRlZExhYmVsXG4gICAgfX08L3NwYW4+XG48L2J1dHRvbj5cbiJdfQ==
|