sidesys-generic-ui 0.0.19 → 0.0.21
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/karma.conf.js +44 -0
- package/ng-package.json +8 -0
- package/package.json +15 -33
- package/src/lib/alert/index.ts +2 -0
- package/src/lib/alert/s-alert.component.css +0 -0
- package/src/lib/alert/s-alert.component.html +3 -0
- package/src/lib/alert/s-alert.component.spec.ts +25 -0
- package/src/lib/alert/s-alert.component.ts +19 -0
- package/src/lib/alert/s-alert.module.ts +15 -0
- package/src/lib/avatar/components/profile-group/index.ts +2 -0
- package/src/lib/avatar/components/profile-group/s-profile-group.component.html +9 -0
- package/src/lib/avatar/components/profile-group/s-profile-group.component.scss +40 -0
- package/src/lib/avatar/components/profile-group/s-profile-group.component.spec.ts +25 -0
- package/src/lib/avatar/components/profile-group/s-profile-group.component.ts +59 -0
- package/src/lib/avatar/components/profile-group/s-profile-group.module.ts +17 -0
- package/src/lib/avatar/index.ts +2 -0
- package/src/lib/avatar/s-avatar.component.html +50 -0
- package/src/lib/avatar/s-avatar.component.scss +239 -0
- package/src/lib/avatar/s-avatar.component.spec.ts +25 -0
- package/src/lib/avatar/s-avatar.component.ts +42 -0
- package/src/lib/avatar/s-avatar.module.ts +19 -0
- package/src/lib/badge/index.ts +2 -0
- package/src/lib/badge/s-badge.component.html +4 -0
- package/src/lib/badge/s-badge.component.scss +65 -0
- package/src/lib/badge/s-badge.component.spec.ts +25 -0
- package/src/lib/badge/s-badge.component.ts +19 -0
- package/src/lib/badge/s-badge.module.ts +16 -0
- package/src/lib/blockquote/index.ts +2 -0
- package/src/lib/blockquote/s-blockquote.component.css +24 -0
- package/src/lib/blockquote/s-blockquote.component.html +5 -0
- package/src/lib/blockquote/s-blockquote.component.spec.ts +25 -0
- package/src/lib/blockquote/s-blockquote.component.ts +17 -0
- package/src/lib/blockquote/s-blockquote.module.ts +15 -0
- package/{lib/breadcrum/index.d.ts → src/lib/breadcrum/index.ts} +1 -0
- package/src/lib/breadcrum/interface/breadcrum-nav.interface.ts +6 -0
- package/src/lib/breadcrum/interface/index.ts +1 -0
- package/src/lib/breadcrum/s-breadcrum.component.html +11 -0
- package/src/lib/breadcrum/s-breadcrum.component.scss +89 -0
- package/src/lib/breadcrum/s-breadcrum.component.spec.ts +25 -0
- package/src/lib/breadcrum/s-breadcrum.component.ts +27 -0
- package/src/lib/breadcrum/s-breadcrum.module.ts +18 -0
- package/src/lib/button/button.module.ts +16 -0
- package/src/lib/button/components/button/s-button.component.html +14 -0
- package/src/lib/button/components/button/s-button.component.scss +237 -0
- package/src/lib/button/components/button/s-button.component.spec.ts +25 -0
- package/src/lib/button/components/button/s-button.component.ts +45 -0
- package/src/lib/button/components/button/styles/s-button-loading.scss +62 -0
- package/src/lib/button/components/button/styles/s-button-themes.scss +162 -0
- package/src/lib/button/index.ts +2 -0
- package/{lib/card/index.d.ts → src/lib/card/index.ts} +1 -1
- package/src/lib/card/s-card-models.ts +11 -0
- package/src/lib/card/s-card.component.html +28 -0
- package/src/lib/card/s-card.component.scss +117 -0
- package/src/lib/card/s-card.component.spec.ts +25 -0
- package/src/lib/card/s-card.component.ts +55 -0
- package/src/lib/card/s-card.module.ts +26 -0
- package/src/lib/checkbox/index.ts +2 -0
- package/src/lib/checkbox/s-checkbox.component.html +4 -0
- package/src/lib/checkbox/s-checkbox.component.scss +63 -0
- package/src/lib/checkbox/s-checkbox.component.spec.ts +25 -0
- package/src/lib/checkbox/s-checkbox.component.ts +55 -0
- package/src/lib/checkbox/s-checkbox.module.ts +17 -0
- package/{lib/company-logo/index.d.ts → src/lib/company-logo/index.ts} +1 -1
- package/src/lib/company-logo/s-company-logo.component.html +3 -0
- package/src/lib/company-logo/s-company-logo.component.scss +14 -0
- package/src/lib/company-logo/s-company-logo.component.spec.ts +25 -0
- package/src/lib/company-logo/s-company-logo.component.ts +38 -0
- package/src/lib/company-logo/s-company-logo.module.ts +16 -0
- package/src/lib/content/index.ts +2 -0
- package/src/lib/content/s-content.component.html +3 -0
- package/src/lib/content/s-content.component.scss +20 -0
- package/src/lib/content/s-content.component.spec.ts +25 -0
- package/src/lib/content/s-content.component.ts +32 -0
- package/src/lib/content/s-content.module.ts +20 -0
- package/{lib/drop-down/index.d.ts → src/lib/drop-down/index.ts} +1 -1
- package/src/lib/drop-down/s-drop-down-button.ts +4 -0
- package/src/lib/drop-down/s-drop-down.component.html +5 -0
- package/src/lib/drop-down/s-drop-down.component.scss +34 -0
- package/src/lib/drop-down/s-drop-down.component.spec.ts +25 -0
- package/src/lib/drop-down/s-drop-down.component.ts +33 -0
- package/src/lib/drop-down/s-drop-down.module.ts +12 -0
- package/src/lib/fonts-material.scss +15 -0
- package/src/lib/fonts.scss +184 -0
- package/{lib/footer/index.d.ts → src/lib/footer/index.ts} +1 -1
- package/src/lib/footer/s-footer.component.html +4 -0
- package/src/lib/footer/s-footer.component.scss +25 -0
- package/src/lib/footer/s-footer.component.spec.ts +25 -0
- package/src/lib/footer/s-footer.component.ts +14 -0
- package/src/lib/footer/s-footer.module.ts +18 -0
- package/{lib/form/index.d.ts → src/lib/form/index.ts} +1 -1
- package/src/lib/form/s-form-control.ts +65 -0
- package/src/lib/form/s-form.component.html +60 -0
- package/src/lib/form/s-form.component.scss +7 -0
- package/src/lib/form/s-form.component.spec.ts +25 -0
- package/src/lib/form/s-form.component.ts +131 -0
- package/src/lib/form/s-form.module.ts +29 -0
- package/src/lib/icon/index.ts +2 -0
- package/src/lib/icon/s-icon.component.css +3 -0
- package/src/lib/icon/s-icon.component.html +8 -0
- package/src/lib/icon/s-icon.component.spec.ts +25 -0
- package/src/lib/icon/s-icon.component.ts +39 -0
- package/src/lib/icon/s-icon.module.ts +16 -0
- package/src/lib/icon/s-icons.ts +55 -0
- package/src/lib/icon-material/index.ts +2 -0
- package/src/lib/icon-material/s-icon-material.component.html +5 -0
- package/src/lib/icon-material/s-icon-material.component.scss +38 -0
- package/src/lib/icon-material/s-icon-material.component.spec.ts +25 -0
- package/src/lib/icon-material/s-icon-material.component.ts +51 -0
- package/src/lib/icon-material/s-icon-material.module.ts +14 -0
- package/src/lib/input/components/error-control/s-error-control.component.html +4 -0
- package/src/lib/input/components/error-control/s-error-control.component.scss +54 -0
- package/src/lib/input/components/error-control/s-error-control.component.spec.ts +25 -0
- package/src/lib/input/components/error-control/s-error-control.component.ts +50 -0
- package/src/lib/input/components/input-text/s-input-text.component.html +270 -0
- package/src/lib/input/components/input-text/s-input-text.component.scss +312 -0
- package/src/lib/input/components/input-text/s-input-text.component.spec.ts +25 -0
- package/src/lib/input/components/input-text/s-input-text.component.ts +311 -0
- package/src/lib/input/components/input-textarea/s-input-textarea.component.html +15 -0
- package/src/lib/input/components/input-textarea/s-input-textarea.component.scss +62 -0
- package/src/lib/input/components/input-textarea/s-input-textarea.component.spec.ts +25 -0
- package/src/lib/input/components/input-textarea/s-input-textarea.component.ts +82 -0
- package/src/lib/input/input.module.ts +30 -0
- package/src/lib/link/index.ts +2 -0
- package/src/lib/link/s-link.component.html +8 -0
- package/src/lib/link/s-link.component.scss +69 -0
- package/src/lib/link/s-link.component.spec.ts +25 -0
- package/src/lib/link/s-link.component.ts +24 -0
- package/src/lib/link/s-link.module.ts +15 -0
- package/src/lib/list/index.ts +2 -0
- package/src/lib/list/s-list.component.html +10 -0
- package/src/lib/list/s-list.component.scss +85 -0
- package/src/lib/list/s-list.component.spec.ts +25 -0
- package/src/lib/list/s-list.component.ts +21 -0
- package/src/lib/list/s-list.module.ts +17 -0
- package/src/lib/list-simple/index.ts +2 -0
- package/src/lib/list-simple/s-list-simple.component.html +3 -0
- package/src/lib/list-simple/s-list-simple.component.scss +146 -0
- package/src/lib/list-simple/s-list-simple.component.spec.ts +25 -0
- package/src/lib/list-simple/s-list-simple.component.ts +19 -0
- package/src/lib/list-simple/s-list-simple.module.ts +17 -0
- package/{lib/login/index.d.ts → src/lib/login/index.ts} +1 -1
- package/src/lib/login/s-login-event.ts +4 -0
- package/src/lib/login/s-login-images.ts +3 -0
- package/{lib/login/s-login-model.d.ts → src/lib/login/s-login-model.ts} +3 -3
- package/src/lib/login/s-login.component.html +46 -0
- package/src/lib/login/s-login.component.scss +69 -0
- package/src/lib/login/s-login.component.ts +92 -0
- package/src/lib/login/s-login.module.ts +24 -0
- package/src/lib/navbar/components/icon-menu/components/s-notificaction.component.ts +35 -0
- package/src/lib/navbar/components/icon-menu/components/s-notification.component.html +38 -0
- package/src/lib/navbar/components/icon-menu/components/s-notification.component.scss +93 -0
- package/src/lib/navbar/components/icon-menu/index.ts +4 -0
- package/src/lib/navbar/components/icon-menu/s-icon-menu-model.ts +21 -0
- package/src/lib/navbar/components/icon-menu/s-icon-menu.component.html +43 -0
- package/src/lib/navbar/components/icon-menu/s-icon-menu.component.scss +95 -0
- package/src/lib/navbar/components/icon-menu/s-icon-menu.component.ts +65 -0
- package/src/lib/navbar/components/icon-menu/s-icon-menu.module.ts +32 -0
- package/{lib/navbar/components/menu-config/index.d.ts → src/lib/navbar/components/menu-config/index.ts} +1 -1
- package/src/lib/navbar/components/menu-config/s-menu-config-model.ts +5 -0
- package/src/lib/navbar/components/menu-config/s-menu-config.component.html +1 -0
- package/src/lib/navbar/components/menu-config/s-menu-config.component.scss +0 -0
- package/src/lib/navbar/components/menu-config/s-menu-config.component.ts +34 -0
- package/src/lib/navbar/components/menu-config/s-menu-config.module.ts +21 -0
- package/{lib/navbar/components/menu-main/index.d.ts → src/lib/navbar/components/menu-main/index.ts} +1 -1
- package/src/lib/navbar/components/menu-main/s-menu-main-model.ts +7 -0
- package/src/lib/navbar/components/menu-main/s-menu-main.component.html +34 -0
- package/src/lib/navbar/components/menu-main/s-menu-main.component.scss +129 -0
- package/src/lib/navbar/components/menu-main/s-menu-main.component.ts +35 -0
- package/src/lib/navbar/components/menu-main/s-menu-main.module.ts +23 -0
- package/{lib/navbar/components/search-menu/index.d.ts → src/lib/navbar/components/search-menu/index.ts} +1 -1
- package/src/lib/navbar/components/search-menu/s-search-menu.component.html +1 -0
- package/src/lib/navbar/components/search-menu/s-search-menu.component.scss +0 -0
- package/src/lib/navbar/components/search-menu/s-search-menu.component.ts +34 -0
- package/src/lib/navbar/components/search-menu/s-search-menu.module.ts +19 -0
- package/{lib/navbar/index.d.ts → src/lib/navbar/index.ts} +3 -0
- package/src/lib/navbar/s-navbar.component.html +34 -0
- package/src/lib/navbar/s-navbar.component.scss +92 -0
- package/src/lib/navbar/s-navbar.component.ts +72 -0
- package/src/lib/navbar/s-navbar.module.ts +35 -0
- package/{lib/pagination/index.d.ts → src/lib/pagination/index.ts} +1 -1
- package/src/lib/pagination/new/s-pag-model.ts +4 -0
- package/src/lib/pagination/new/s-pag.component.html +27 -0
- package/src/lib/pagination/new/s-pag.component.scss +63 -0
- package/src/lib/pagination/new/s-pag.component.ts +99 -0
- package/src/lib/pagination/s-pagination.component.html +6 -0
- package/src/lib/pagination/s-pagination.component.scss +15 -0
- package/src/lib/pagination/s-pagination.component.ts +79 -0
- package/src/lib/pagination/s-pagination.module.ts +25 -0
- package/src/lib/popup/index.ts +2 -0
- package/src/lib/popup/s-popup.component.html +24 -0
- package/src/lib/popup/s-popup.component.scss +127 -0
- package/src/lib/popup/s-popup.component.spec.ts +25 -0
- package/src/lib/popup/s-popup.component.ts +125 -0
- package/src/lib/popup/s-popup.module.ts +23 -0
- package/src/lib/precode/index.ts +2 -0
- package/src/lib/precode/s-precode.component.html +7 -0
- package/src/lib/precode/s-precode.component.scss +53 -0
- package/src/lib/precode/s-precode.component.spec.ts +25 -0
- package/src/lib/precode/s-precode.component.ts +29 -0
- package/src/lib/precode/s-precode.module.ts +20 -0
- package/src/lib/progressbar/index.ts +2 -0
- package/src/lib/progressbar/s-progressbar.component.html +15 -0
- package/src/lib/progressbar/s-progressbar.component.scss +51 -0
- package/src/lib/progressbar/s-progressbar.component.spec.ts +25 -0
- package/src/lib/progressbar/s-progressbar.component.ts +20 -0
- package/src/lib/progressbar/s-progressbar.module.ts +16 -0
- package/src/lib/progressbar/temperature/temperature.component.ts +25 -0
- package/src/lib/radio/index.ts +2 -0
- package/src/lib/radio/s-radio.component.html +4 -0
- package/src/lib/radio/s-radio.component.scss +57 -0
- package/src/lib/radio/s-radio.component.spec.ts +25 -0
- package/src/lib/radio/s-radio.component.ts +55 -0
- package/src/lib/radio/s-radio.module.ts +17 -0
- package/src/lib/reset.scss +43 -0
- package/{lib/select/index.d.ts → src/lib/select/index.ts} +1 -1
- package/src/lib/select/s-select-model.ts +27 -0
- package/src/lib/select/s-select.module.ts +33 -0
- package/src/lib/select/select-multiple/s-select-multiple.component.html +44 -0
- package/src/lib/select/select-multiple/s-select-multiple.component.scss +200 -0
- package/src/lib/select/select-multiple/s-select-multiple.component.ts +106 -0
- package/src/lib/select/select-normal/s-select.component.html +3 -0
- package/src/lib/select/select-normal/s-select.component.scss +15 -0
- package/src/lib/select/select-normal/s-select.component.spec.ts +25 -0
- package/src/lib/select/select-normal/s-select.component.ts +21 -0
- package/src/lib/select/select-simple/s-select-simple.component.html +57 -0
- package/src/lib/select/select-simple/s-select-simple.component.scss +189 -0
- package/src/lib/select/select-simple/s-select-simple.component.ts +118 -0
- package/src/lib/shared/image-loader.directive.ts +28 -0
- package/src/lib/shared/localstorage.service.ts +64 -0
- package/src/lib/shared/shared.module.ts +17 -0
- package/{lib/sidebar/index.d.ts → src/lib/sidebar/index.ts} +1 -1
- package/src/lib/sidebar/s-sidebar-model.ts +19 -0
- package/src/lib/sidebar/s-sidebar.component.html +63 -0
- package/src/lib/sidebar/s-sidebar.component.scss +300 -0
- package/src/lib/sidebar/s-sidebar.component.spec.ts +25 -0
- package/src/lib/sidebar/s-sidebar.component.ts +81 -0
- package/src/lib/sidebar/s-sidebar.module.ts +24 -0
- package/src/lib/spinner/index.ts +2 -0
- package/src/lib/spinner/s-spinner.component.html +1 -0
- package/src/lib/spinner/s-spinner.component.scss +265 -0
- package/src/lib/spinner/s-spinner.component.spec.ts +25 -0
- package/src/lib/spinner/s-spinner.component.ts +21 -0
- package/src/lib/spinner/s-spinner.module.ts +16 -0
- package/src/lib/stepper/index.ts +2 -0
- package/src/lib/stepper/s-stepper.component.css +0 -0
- package/src/lib/stepper/s-stepper.component.html +3 -0
- package/src/lib/stepper/s-stepper.component.spec.ts +25 -0
- package/src/lib/stepper/s-stepper.component.ts +19 -0
- package/src/lib/stepper/s-stepper.module.ts +15 -0
- package/{lib/sub-menu/index.d.ts → src/lib/sub-menu/index.ts} +1 -1
- package/src/lib/sub-menu/s-sub-menu-model.ts +33 -0
- package/src/lib/sub-menu/s-sub-menu.component.html +77 -0
- package/src/lib/sub-menu/s-sub-menu.component.scss +99 -0
- package/src/lib/sub-menu/s-sub-menu.component.spec.ts +25 -0
- package/src/lib/sub-menu/s-sub-menu.component.ts +56 -0
- package/src/lib/sub-menu/s-sub-menu.module.ts +25 -0
- package/{lib/table/index.d.ts → src/lib/table/index.ts} +1 -1
- package/src/lib/table/s-table-content.ts +30 -0
- package/src/lib/table/s-table.component.html +24 -0
- package/src/lib/table/s-table.component.scss +49 -0
- package/src/lib/table/s-table.component.spec.ts +25 -0
- package/src/lib/table/s-table.component.ts +87 -0
- package/src/lib/table/s-table.module.ts +12 -0
- package/src/lib/table-t/s-tablet.component.html +18 -0
- package/src/lib/table-t/s-tablet.component.scss +41 -0
- package/src/lib/table-t/s-tablet.component.spec.ts +25 -0
- package/src/lib/table-t/s-tablet.component.ts +223 -0
- package/src/lib/table-t/s-tablet.module.ts +10 -0
- package/{lib/tabs/index.d.ts → src/lib/tabs/index.ts} +1 -1
- package/{lib/tabs/models/configTabs.interface.d.ts → src/lib/tabs/models/configTabs.interface.ts} +1 -1
- package/{lib/tabs/models/tab.interface.d.ts → src/lib/tabs/models/tab.interface.ts} +1 -1
- package/src/lib/tabs/s-tabs.component.html +8 -0
- package/src/lib/tabs/s-tabs.component.scss +49 -0
- package/src/lib/tabs/s-tabs.component.spec.ts +25 -0
- package/src/lib/tabs/s-tabs.component.ts +38 -0
- package/src/lib/tabs/s-tabs.module.ts +17 -0
- package/src/lib/tag/index.ts +2 -0
- package/src/lib/tag/s-tag.component.html +3 -0
- package/src/lib/tag/s-tag.component.scss +117 -0
- package/src/lib/tag/s-tag.component.spec.ts +25 -0
- package/src/lib/tag/s-tag.component.ts +17 -0
- package/src/lib/tag/s-tag.module.ts +17 -0
- package/{lib/text-search/index.d.ts → src/lib/text-search/index.ts} +1 -1
- package/src/lib/text-search/s-text-search.component.html +4 -0
- package/src/lib/text-search/s-text-search.component.scss +23 -0
- package/src/lib/text-search/s-text-search.component.spec.ts +25 -0
- package/src/lib/text-search/s-text-search.component.ts +30 -0
- package/src/lib/text-search/s-text-search.module.ts +16 -0
- package/src/lib/theme/index.ts +2 -0
- package/src/lib/theme/s-theme.component.scss +1 -0
- package/src/lib/theme/s-theme.component.spec.ts +25 -0
- package/src/lib/theme/s-theme.component.ts +12 -0
- package/src/lib/theme/s-theme.module.ts +15 -0
- package/src/lib/theme.scss +662 -0
- package/src/lib/thumbnail/index.ts +2 -0
- package/src/lib/thumbnail/s-thumbnail-model.ts +5 -0
- package/src/lib/thumbnail/s-thumbnail.component.html +3 -0
- package/src/lib/thumbnail/s-thumbnail.component.scss +6 -0
- package/src/lib/thumbnail/s-thumbnail.component.spec.ts +25 -0
- package/src/lib/thumbnail/s-thumbnail.component.ts +22 -0
- package/src/lib/thumbnail/s-thumbnail.module.ts +17 -0
- package/{lib/toast/index.d.ts → src/lib/toast/index.ts} +1 -1
- package/src/lib/toast/s-toast-service.ts +31 -0
- package/src/lib/toast/s-toast.component.html +16 -0
- package/src/lib/toast/s-toast.component.scss +200 -0
- package/src/lib/toast/s-toast.component.spec.ts +25 -0
- package/src/lib/toast/s-toast.component.ts +86 -0
- package/src/lib/toast/s-toast.module.ts +19 -0
- package/src/lib/toggle-switch/index.ts +2 -0
- package/src/lib/toggle-switch/s-toggle-switch.component.html +10 -0
- package/src/lib/toggle-switch/s-toggle-switch.component.scss +199 -0
- package/src/lib/toggle-switch/s-toggle-switch.component.spec.ts +25 -0
- package/src/lib/toggle-switch/s-toggle-switch.component.ts +72 -0
- package/src/lib/toggle-switch/s-toggle-switch.module.ts +20 -0
- package/src/lib/tooltip/directive/s-tooltip-directive.ts +26 -0
- package/{lib/tooltip/index.d.ts → src/lib/tooltip/index.ts} +1 -1
- package/src/lib/tooltip/s-tooltip-model.ts +6 -0
- package/src/lib/tooltip/s-tooltip.component.html +4 -0
- package/src/lib/tooltip/s-tooltip.component.scss +112 -0
- package/src/lib/tooltip/s-tooltip.component.spec.ts +25 -0
- package/src/lib/tooltip/s-tooltip.component.ts +79 -0
- package/src/lib/tooltip/s-tooltip.module.ts +16 -0
- package/{lib/tree-list/index.d.ts → src/lib/tree-list/index.ts} +1 -1
- package/{lib/tree-list/models/tree-node.interface.d.ts → src/lib/tree-list/models/tree-node.interface.ts} +3 -1
- package/src/lib/tree-list/s-tree-list.component.html +29 -0
- package/src/lib/tree-list/s-tree-list.component.scss +46 -0
- package/src/lib/tree-list/s-tree-list.component.ts +127 -0
- package/src/lib/tree-list/s-tree-list.module.ts +22 -0
- package/src/lib/variables.scss +107 -0
- package/src/test.ts +16 -0
- package/tsconfig.lib.json +21 -0
- package/tsconfig.lib.prod.json +10 -0
- package/tsconfig.spec.json +17 -0
- package/esm2020/lib/alert/index.mjs +0 -3
- package/esm2020/lib/alert/s-alert.component.mjs +0 -15
- package/esm2020/lib/alert/s-alert.module.mjs +0 -22
- package/esm2020/lib/avatar/components/profile-group/index.mjs +0 -3
- package/esm2020/lib/avatar/components/profile-group/s-profile-group.component.mjs +0 -55
- package/esm2020/lib/avatar/components/profile-group/s-profile-group.module.mjs +0 -26
- package/esm2020/lib/avatar/index.mjs +0 -3
- package/esm2020/lib/avatar/s-avatar.component.mjs +0 -49
- package/esm2020/lib/avatar/s-avatar.module.mjs +0 -30
- package/esm2020/lib/badge/index.mjs +0 -3
- package/esm2020/lib/badge/s-badge.component.mjs +0 -26
- package/esm2020/lib/badge/s-badge.module.mjs +0 -26
- package/esm2020/lib/blockquote/index.mjs +0 -3
- package/esm2020/lib/blockquote/s-blockquote.component.mjs +0 -14
- package/esm2020/lib/blockquote/s-blockquote.module.mjs +0 -22
- package/esm2020/lib/breadcrum/index.mjs +0 -3
- package/esm2020/lib/breadcrum/s-breadcrum.component.mjs +0 -38
- package/esm2020/lib/breadcrum/s-breadcrum.module.mjs +0 -30
- package/esm2020/lib/button/button.module.mjs +0 -24
- package/esm2020/lib/button/components/button/s-button.component.mjs +0 -62
- package/esm2020/lib/button/index.mjs +0 -3
- package/esm2020/lib/card/index.mjs +0 -4
- package/esm2020/lib/card/s-card-models.mjs +0 -11
- package/esm2020/lib/card/s-card.component.mjs +0 -76
- package/esm2020/lib/card/s-card.module.mjs +0 -44
- package/esm2020/lib/checkbox/index.mjs +0 -3
- package/esm2020/lib/checkbox/s-checkbox.component.mjs +0 -66
- package/esm2020/lib/checkbox/s-checkbox.module.mjs +0 -26
- package/esm2020/lib/company-logo/index.mjs +0 -3
- package/esm2020/lib/company-logo/s-company-logo.component.mjs +0 -35
- package/esm2020/lib/company-logo/s-company-logo.module.mjs +0 -22
- package/esm2020/lib/content/index.mjs +0 -3
- package/esm2020/lib/content/s-content.component.mjs +0 -30
- package/esm2020/lib/content/s-content.module.mjs +0 -26
- package/esm2020/lib/drop-down/index.mjs +0 -4
- package/esm2020/lib/drop-down/s-drop-down-button.mjs +0 -7
- package/esm2020/lib/drop-down/s-drop-down.component.mjs +0 -37
- package/esm2020/lib/drop-down/s-drop-down.module.mjs +0 -18
- package/esm2020/lib/footer/index.mjs +0 -3
- package/esm2020/lib/footer/s-footer.component.mjs +0 -15
- package/esm2020/lib/footer/s-footer.module.mjs +0 -28
- package/esm2020/lib/form/index.mjs +0 -4
- package/esm2020/lib/form/s-form-control.mjs +0 -59
- package/esm2020/lib/form/s-form.component.mjs +0 -130
- package/esm2020/lib/form/s-form.module.mjs +0 -51
- package/esm2020/lib/icon/index.mjs +0 -3
- package/esm2020/lib/icon/s-icon.component.mjs +0 -41
- package/esm2020/lib/icon/s-icon.module.mjs +0 -22
- package/esm2020/lib/icon/s-icons.mjs +0 -55
- package/esm2020/lib/icon-material/index.mjs +0 -3
- package/esm2020/lib/icon-material/s-icon-material.component.mjs +0 -57
- package/esm2020/lib/icon-material/s-icon-material.module.mjs +0 -22
- package/esm2020/lib/input/components/error-control/s-error-control.component.mjs +0 -52
- package/esm2020/lib/input/components/input-text/s-input-text.component.mjs +0 -317
- package/esm2020/lib/input/components/input-textarea/s-input-textarea.component.mjs +0 -99
- package/esm2020/lib/input/index.mjs +0 -5
- package/esm2020/lib/input/input.module.mjs +0 -49
- package/esm2020/lib/link/index.mjs +0 -3
- package/esm2020/lib/link/s-link.component.mjs +0 -33
- package/esm2020/lib/link/s-link.module.mjs +0 -22
- package/esm2020/lib/list/index.mjs +0 -3
- package/esm2020/lib/list/s-list.component.mjs +0 -24
- package/esm2020/lib/list/s-list.module.mjs +0 -26
- package/esm2020/lib/list-simple/index.mjs +0 -3
- package/esm2020/lib/list-simple/s-list-simple.component.mjs +0 -17
- package/esm2020/lib/list-simple/s-list-simple.module.mjs +0 -26
- package/esm2020/lib/login/index.mjs +0 -5
- package/esm2020/lib/login/s-login-event.mjs +0 -3
- package/esm2020/lib/login/s-login-images.mjs +0 -4
- package/esm2020/lib/login/s-login-model.mjs +0 -3
- package/esm2020/lib/login/s-login.component.mjs +0 -97
- package/esm2020/lib/login/s-login.module.mjs +0 -32
- package/esm2020/lib/navbar/components/icon-menu/components/s-notificaction.component.mjs +0 -41
- package/esm2020/lib/navbar/components/icon-menu/index.mjs +0 -5
- package/esm2020/lib/navbar/components/icon-menu/s-icon-menu-model.mjs +0 -3
- package/esm2020/lib/navbar/components/icon-menu/s-icon-menu.component.mjs +0 -70
- package/esm2020/lib/navbar/components/icon-menu/s-icon-menu.module.mjs +0 -53
- package/esm2020/lib/navbar/components/menu-config/index.mjs +0 -4
- package/esm2020/lib/navbar/components/menu-config/s-menu-config-model.mjs +0 -8
- package/esm2020/lib/navbar/components/menu-config/s-menu-config.component.mjs +0 -39
- package/esm2020/lib/navbar/components/menu-config/s-menu-config.module.mjs +0 -35
- package/esm2020/lib/navbar/components/menu-main/index.mjs +0 -4
- package/esm2020/lib/navbar/components/menu-main/s-menu-main-model.mjs +0 -3
- package/esm2020/lib/navbar/components/menu-main/s-menu-main.component.mjs +0 -28
- package/esm2020/lib/navbar/components/menu-main/s-menu-main.module.mjs +0 -39
- package/esm2020/lib/navbar/components/search-menu/index.mjs +0 -3
- package/esm2020/lib/navbar/components/search-menu/s-search-menu.component.mjs +0 -38
- package/esm2020/lib/navbar/components/search-menu/s-search-menu.module.mjs +0 -31
- package/esm2020/lib/navbar/index.mjs +0 -9
- package/esm2020/lib/navbar/s-navbar.component.mjs +0 -95
- package/esm2020/lib/navbar/s-navbar.module.mjs +0 -63
- package/esm2020/lib/pagination/index.mjs +0 -4
- package/esm2020/lib/pagination/new/s-pag-model.mjs +0 -7
- package/esm2020/lib/pagination/new/s-pag.component.mjs +0 -98
- package/esm2020/lib/pagination/s-pagination.component.mjs +0 -84
- package/esm2020/lib/pagination/s-pagination.module.mjs +0 -41
- package/esm2020/lib/popup/index.mjs +0 -3
- package/esm2020/lib/popup/s-popup.component.mjs +0 -139
- package/esm2020/lib/popup/s-popup.module.mjs +0 -36
- package/esm2020/lib/precode/index.mjs +0 -3
- package/esm2020/lib/precode/s-precode.component.mjs +0 -32
- package/esm2020/lib/precode/s-precode.module.mjs +0 -32
- package/esm2020/lib/progressbar/index.mjs +0 -3
- package/esm2020/lib/progressbar/s-progressbar.component.mjs +0 -27
- package/esm2020/lib/progressbar/s-progressbar.module.mjs +0 -26
- package/esm2020/lib/progressbar/temperature/temperature.component.mjs +0 -25
- package/esm2020/lib/radio/index.mjs +0 -3
- package/esm2020/lib/radio/s-radio.component.mjs +0 -67
- package/esm2020/lib/radio/s-radio.module.mjs +0 -26
- package/esm2020/lib/select/index.mjs +0 -6
- package/esm2020/lib/select/s-select-model.mjs +0 -9
- package/esm2020/lib/select/s-select.module.mjs +0 -54
- package/esm2020/lib/select/select-multiple/s-select-multiple.component.mjs +0 -127
- package/esm2020/lib/select/select-normal/s-select.component.mjs +0 -28
- package/esm2020/lib/select/select-simple/s-select-simple.component.mjs +0 -132
- package/esm2020/lib/shared/image-loader.directive.mjs +0 -31
- package/esm2020/lib/shared/localstorage.service.mjs +0 -64
- package/esm2020/lib/shared/shared.module.mjs +0 -24
- package/esm2020/lib/sidebar/index.mjs +0 -4
- package/esm2020/lib/sidebar/s-sidebar-model.mjs +0 -2
- package/esm2020/lib/sidebar/s-sidebar.component.mjs +0 -82
- package/esm2020/lib/sidebar/s-sidebar.module.mjs +0 -40
- package/esm2020/lib/spinner/index.mjs +0 -3
- package/esm2020/lib/spinner/s-spinner.component.mjs +0 -27
- package/esm2020/lib/spinner/s-spinner.module.mjs +0 -24
- package/esm2020/lib/stepper/index.mjs +0 -3
- package/esm2020/lib/stepper/s-stepper.component.mjs +0 -15
- package/esm2020/lib/stepper/s-stepper.module.mjs +0 -22
- package/esm2020/lib/sub-menu/index.mjs +0 -4
- package/esm2020/lib/sub-menu/s-sub-menu-model.mjs +0 -15
- package/esm2020/lib/sub-menu/s-sub-menu.component.mjs +0 -64
- package/esm2020/lib/sub-menu/s-sub-menu.module.mjs +0 -42
- package/esm2020/lib/table/index.mjs +0 -4
- package/esm2020/lib/table/s-table-content.mjs +0 -37
- package/esm2020/lib/table/s-table.component.mjs +0 -96
- package/esm2020/lib/table/s-table.module.mjs +0 -20
- package/esm2020/lib/table-t/index.mjs +0 -3
- package/esm2020/lib/table-t/s-tablet.component.mjs +0 -203
- package/esm2020/lib/table-t/s-tablet.module.mjs +0 -18
- package/esm2020/lib/tabs/index.mjs +0 -4
- package/esm2020/lib/tabs/models/configTabs.interface.mjs +0 -2
- package/esm2020/lib/tabs/models/index.mjs +0 -3
- package/esm2020/lib/tabs/models/tab.interface.mjs +0 -2
- package/esm2020/lib/tabs/s-tabs.component.mjs +0 -36
- package/esm2020/lib/tabs/s-tabs.module.mjs +0 -26
- package/esm2020/lib/tag/index.mjs +0 -3
- package/esm2020/lib/tag/s-tag.component.mjs +0 -22
- package/esm2020/lib/tag/s-tag.module.mjs +0 -26
- package/esm2020/lib/text-search/index.mjs +0 -3
- package/esm2020/lib/text-search/s-text-search.component.mjs +0 -29
- package/esm2020/lib/text-search/s-text-search.module.mjs +0 -26
- package/esm2020/lib/theme/index.mjs +0 -3
- package/esm2020/lib/theme/s-theme.component.mjs +0 -11
- package/esm2020/lib/theme/s-theme.module.mjs +0 -22
- package/esm2020/lib/thumbnail/index.mjs +0 -3
- package/esm2020/lib/thumbnail/s-thumbnail.component.mjs +0 -23
- package/esm2020/lib/thumbnail/s-thumbnail.module.mjs +0 -26
- package/esm2020/lib/toast/index.mjs +0 -4
- package/esm2020/lib/toast/s-toast-service.mjs +0 -30
- package/esm2020/lib/toast/s-toast.component.mjs +0 -86
- package/esm2020/lib/toast/s-toast.module.mjs +0 -28
- package/esm2020/lib/toggle-switch/index.mjs +0 -3
- package/esm2020/lib/toggle-switch/s-toggle-switch.component.mjs +0 -85
- package/esm2020/lib/toggle-switch/s-toggle-switch.module.mjs +0 -32
- package/esm2020/lib/tooltip/directive/s-tooltip-directive.mjs +0 -31
- package/esm2020/lib/tooltip/index.mjs +0 -4
- package/esm2020/lib/tooltip/s-tooltip.component.mjs +0 -80
- package/esm2020/lib/tooltip/s-tooltip.module.mjs +0 -25
- package/esm2020/lib/tree-list/index.mjs +0 -4
- package/esm2020/lib/tree-list/models/index.mjs +0 -2
- package/esm2020/lib/tree-list/models/tree-node.interface.mjs +0 -2
- package/esm2020/lib/tree-list/s-tree-list.component.mjs +0 -114
- package/esm2020/lib/tree-list/s-tree-list.module.mjs +0 -36
- package/esm2020/public-api.mjs +0 -44
- package/esm2020/sidesys-generic-ui.mjs +0 -5
- package/fesm2015/sidesys-generic-ui.mjs +0 -4770
- package/fesm2015/sidesys-generic-ui.mjs.map +0 -1
- package/fesm2020/sidesys-generic-ui.mjs +0 -4752
- package/fesm2020/sidesys-generic-ui.mjs.map +0 -1
- package/index.d.ts +0 -5
- package/lib/alert/index.d.ts +0 -2
- package/lib/alert/s-alert.component.d.ts +0 -8
- package/lib/alert/s-alert.module.d.ts +0 -8
- package/lib/avatar/components/profile-group/index.d.ts +0 -2
- package/lib/avatar/components/profile-group/s-profile-group.component.d.ts +0 -12
- package/lib/avatar/components/profile-group/s-profile-group.module.d.ts +0 -9
- package/lib/avatar/index.d.ts +0 -2
- package/lib/avatar/s-avatar.component.d.ts +0 -19
- package/lib/avatar/s-avatar.module.d.ts +0 -10
- package/lib/badge/index.d.ts +0 -2
- package/lib/badge/s-badge.component.d.ts +0 -11
- package/lib/badge/s-badge.module.d.ts +0 -9
- package/lib/blockquote/index.d.ts +0 -2
- package/lib/blockquote/s-blockquote.component.d.ts +0 -8
- package/lib/blockquote/s-blockquote.module.d.ts +0 -8
- package/lib/breadcrum/s-breadcrum.component.d.ts +0 -17
- package/lib/breadcrum/s-breadcrum.module.d.ts +0 -10
- package/lib/button/button.module.d.ts +0 -8
- package/lib/button/components/button/s-button.component.d.ts +0 -21
- package/lib/button/index.d.ts +0 -2
- package/lib/card/s-card-models.d.ts +0 -6
- package/lib/card/s-card.component.d.ts +0 -32
- package/lib/card/s-card.module.d.ts +0 -13
- package/lib/checkbox/index.d.ts +0 -2
- package/lib/checkbox/s-checkbox.component.d.ts +0 -21
- package/lib/checkbox/s-checkbox.module.d.ts +0 -9
- package/lib/company-logo/s-company-logo.component.d.ts +0 -13
- package/lib/company-logo/s-company-logo.module.d.ts +0 -8
- package/lib/content/index.d.ts +0 -2
- package/lib/content/s-content.component.d.ts +0 -14
- package/lib/content/s-content.module.d.ts +0 -8
- package/lib/drop-down/s-drop-down-button.d.ts +0 -4
- package/lib/drop-down/s-drop-down.component.d.ts +0 -20
- package/lib/drop-down/s-drop-down.module.d.ts +0 -8
- package/lib/footer/s-footer.component.d.ts +0 -6
- package/lib/footer/s-footer.module.d.ts +0 -9
- package/lib/form/s-form-control.d.ts +0 -26
- package/lib/form/s-form.component.d.ts +0 -33
- package/lib/form/s-form.module.d.ts +0 -14
- package/lib/icon/index.d.ts +0 -2
- package/lib/icon/s-icon.component.d.ts +0 -18
- package/lib/icon/s-icon.module.d.ts +0 -8
- package/lib/icon/s-icons.d.ts +0 -8
- package/lib/icon-material/index.d.ts +0 -2
- package/lib/icon-material/s-icon-material.component.d.ts +0 -19
- package/lib/icon-material/s-icon-material.module.d.ts +0 -8
- package/lib/input/components/error-control/s-error-control.component.d.ts +0 -13
- package/lib/input/components/input-text/s-input-text.component.d.ts +0 -59
- package/lib/input/components/input-textarea/s-input-textarea.component.d.ts +0 -33
- package/lib/input/input.module.d.ts +0 -13
- package/lib/link/index.d.ts +0 -2
- package/lib/link/s-link.component.d.ts +0 -14
- package/lib/link/s-link.module.d.ts +0 -8
- package/lib/list/index.d.ts +0 -2
- package/lib/list/s-list.component.d.ts +0 -11
- package/lib/list/s-list.module.d.ts +0 -9
- package/lib/list-simple/index.d.ts +0 -2
- package/lib/list-simple/s-list-simple.component.d.ts +0 -9
- package/lib/list-simple/s-list-simple.module.d.ts +0 -9
- package/lib/login/s-login-event.d.ts +0 -4
- package/lib/login/s-login-images.d.ts +0 -3
- package/lib/login/s-login.component.d.ts +0 -35
- package/lib/login/s-login.module.d.ts +0 -10
- package/lib/navbar/components/icon-menu/components/s-notificaction.component.d.ts +0 -16
- package/lib/navbar/components/icon-menu/index.d.ts +0 -4
- package/lib/navbar/components/icon-menu/s-icon-menu-model.d.ts +0 -20
- package/lib/navbar/components/icon-menu/s-icon-menu.component.d.ts +0 -23
- package/lib/navbar/components/icon-menu/s-icon-menu.module.d.ts +0 -15
- package/lib/navbar/components/menu-config/s-menu-config-model.d.ts +0 -5
- package/lib/navbar/components/menu-config/s-menu-config.component.d.ts +0 -19
- package/lib/navbar/components/menu-config/s-menu-config.module.d.ts +0 -11
- package/lib/navbar/components/menu-main/s-menu-main-model.d.ts +0 -7
- package/lib/navbar/components/menu-main/s-menu-main.component.d.ts +0 -13
- package/lib/navbar/components/menu-main/s-menu-main.module.d.ts +0 -12
- package/lib/navbar/components/search-menu/s-search-menu.component.d.ts +0 -17
- package/lib/navbar/components/search-menu/s-search-menu.module.d.ts +0 -10
- package/lib/navbar/s-navbar.component.d.ts +0 -36
- package/lib/navbar/s-navbar.module.d.ts +0 -18
- package/lib/pagination/new/s-pag-model.d.ts +0 -4
- package/lib/pagination/new/s-pag.component.d.ts +0 -32
- package/lib/pagination/s-pagination.component.d.ts +0 -27
- package/lib/pagination/s-pagination.module.d.ts +0 -12
- package/lib/popup/index.d.ts +0 -2
- package/lib/popup/s-popup.component.d.ts +0 -39
- package/lib/popup/s-popup.module.d.ts +0 -10
- package/lib/precode/index.d.ts +0 -2
- package/lib/precode/s-precode.component.d.ts +0 -11
- package/lib/precode/s-precode.module.d.ts +0 -10
- package/lib/progressbar/index.d.ts +0 -2
- package/lib/progressbar/s-progressbar.component.d.ts +0 -11
- package/lib/progressbar/s-progressbar.module.d.ts +0 -9
- package/lib/progressbar/temperature/temperature.component.d.ts +0 -11
- package/lib/radio/index.d.ts +0 -2
- package/lib/radio/s-radio.component.d.ts +0 -21
- package/lib/radio/s-radio.module.d.ts +0 -9
- package/lib/select/s-select-model.d.ts +0 -25
- package/lib/select/s-select.module.d.ts +0 -15
- package/lib/select/select-multiple/s-select-multiple.component.d.ts +0 -32
- package/lib/select/select-normal/s-select.component.d.ts +0 -12
- package/lib/select/select-simple/s-select-simple.component.d.ts +0 -36
- package/lib/shared/image-loader.directive.d.ts +0 -13
- package/lib/shared/localstorage.service.d.ts +0 -14
- package/lib/shared/shared.module.d.ts +0 -8
- package/lib/sidebar/s-sidebar-model.d.ts +0 -13
- package/lib/sidebar/s-sidebar.component.d.ts +0 -28
- package/lib/sidebar/s-sidebar.module.d.ts +0 -12
- package/lib/spinner/index.d.ts +0 -2
- package/lib/spinner/s-spinner.component.d.ts +0 -12
- package/lib/spinner/s-spinner.module.d.ts +0 -8
- package/lib/stepper/index.d.ts +0 -2
- package/lib/stepper/s-stepper.component.d.ts +0 -8
- package/lib/stepper/s-stepper.module.d.ts +0 -8
- package/lib/sub-menu/s-sub-menu-model.d.ts +0 -30
- package/lib/sub-menu/s-sub-menu.component.d.ts +0 -19
- package/lib/sub-menu/s-sub-menu.module.d.ts +0 -13
- package/lib/table/s-table-content.d.ts +0 -26
- package/lib/table/s-table.component.d.ts +0 -28
- package/lib/table/s-table.module.d.ts +0 -10
- package/lib/table-t/s-tablet.component.d.ts +0 -65
- package/lib/table-t/s-tablet.module.d.ts +0 -8
- package/lib/tabs/s-tabs.component.d.ts +0 -15
- package/lib/tabs/s-tabs.module.d.ts +0 -9
- package/lib/tag/index.d.ts +0 -2
- package/lib/tag/s-tag.component.d.ts +0 -8
- package/lib/tag/s-tag.module.d.ts +0 -9
- package/lib/text-search/s-text-search.component.d.ts +0 -13
- package/lib/text-search/s-text-search.module.d.ts +0 -9
- package/lib/theme/index.d.ts +0 -2
- package/lib/theme/s-theme.component.d.ts +0 -5
- package/lib/theme/s-theme.module.d.ts +0 -8
- package/lib/thumbnail/index.d.ts +0 -2
- package/lib/thumbnail/s-thumbnail.component.d.ts +0 -11
- package/lib/thumbnail/s-thumbnail.module.d.ts +0 -9
- package/lib/toast/s-toast-service.d.ts +0 -11
- package/lib/toast/s-toast.component.d.ts +0 -25
- package/lib/toast/s-toast.module.d.ts +0 -9
- package/lib/toggle-switch/index.d.ts +0 -2
- package/lib/toggle-switch/s-toggle-switch.component.d.ts +0 -25
- package/lib/toggle-switch/s-toggle-switch.module.d.ts +0 -10
- package/lib/tooltip/directive/s-tooltip-directive.d.ts +0 -12
- package/lib/tooltip/s-tooltip.component.d.ts +0 -19
- package/lib/tooltip/s-tooltip.module.d.ts +0 -9
- package/lib/tree-list/s-tree-list.component.d.ts +0 -24
- package/lib/tree-list/s-tree-list.module.d.ts +0 -11
- /package/{lib/input/index.d.ts → src/lib/input/index.ts} +0 -0
- /package/{lib/table-t/index.d.ts → src/lib/table-t/index.ts} +0 -0
- /package/{lib/tabs/models/index.d.ts → src/lib/tabs/models/index.ts} +0 -0
- /package/{lib/tree-list/models/index.d.ts → src/lib/tree-list/models/index.ts} +0 -0
- /package/{public-api.d.ts → src/public-api.ts} +0 -0
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { Component, Input, ViewEncapsulation } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/common";
|
|
4
|
-
import * as i2 from "../../../icon-material/s-icon-material.component";
|
|
5
|
-
export class SErrorControl {
|
|
6
|
-
constructor() {
|
|
7
|
-
this.theme = "default"; //default , red , green , yellow
|
|
8
|
-
this.icon = false;
|
|
9
|
-
this.iconCustom = "";
|
|
10
|
-
this.size = 'm';
|
|
11
|
-
this.iconName = '';
|
|
12
|
-
}
|
|
13
|
-
ngOnInit() {
|
|
14
|
-
if (this.iconCustom == "") {
|
|
15
|
-
switch (this.theme) {
|
|
16
|
-
case "default":
|
|
17
|
-
this.iconName = "stars";
|
|
18
|
-
break;
|
|
19
|
-
case "red":
|
|
20
|
-
this.iconName = "error";
|
|
21
|
-
break;
|
|
22
|
-
case "green":
|
|
23
|
-
this.iconName = "check_circle";
|
|
24
|
-
break;
|
|
25
|
-
case "yellow":
|
|
26
|
-
this.iconName = "info";
|
|
27
|
-
break;
|
|
28
|
-
default:
|
|
29
|
-
this.iconName = "stars";
|
|
30
|
-
break;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
else {
|
|
34
|
-
this.iconName = this.iconCustom;
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
SErrorControl.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: SErrorControl, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
39
|
-
SErrorControl.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.2", type: SErrorControl, selector: "s-error-control", inputs: { theme: "theme", icon: "icon", iconCustom: "iconCustom", size: "size" }, ngImport: i0, template: "<label class=\"label-content label-content-{{theme}} {{size}}\">\r\n <s-icon-mat *ngIf=\"icon\" class=\"icon-{{theme}}\">{{iconName}}</s-icon-mat>\r\n <ng-content></ng-content>\r\n</label>", styles: [".label-content{display:inline-flex;align-items:center;margin-left:3px;font-weight:400;font-size:.875rem;line-height:0px}.label-content.sm{font-size:.625rem}.label-content s-icon-mat{display:flex;align-items:center;margin-right:3px}.label-content s-icon-mat span{font-size:1.01rem}.icon-default,.label-content-default{color:var(--secondary-500)}.icon-yellow,.label-content-yellow{color:var(--yellow-600)}.icon-red,.label-content-red{color:var(--red-600)}.icon-green,.label-content-green{color:var(--green-600)}.form-group{margin:5px}.form-group .label{font-weight:400;font-size:.875rem;color:var(--secondary-600)}.form-group .content-input-main-626.sm{margin:0}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.SIconMaterialComponent, selector: "s-icon-mat", inputs: ["size", "color", "fill", "weight", "grade", "opticalSize", "style", "type"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
40
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: SErrorControl, decorators: [{
|
|
41
|
-
type: Component,
|
|
42
|
-
args: [{ selector: 's-error-control', encapsulation: ViewEncapsulation.None, template: "<label class=\"label-content label-content-{{theme}} {{size}}\">\r\n <s-icon-mat *ngIf=\"icon\" class=\"icon-{{theme}}\">{{iconName}}</s-icon-mat>\r\n <ng-content></ng-content>\r\n</label>", styles: [".label-content{display:inline-flex;align-items:center;margin-left:3px;font-weight:400;font-size:.875rem;line-height:0px}.label-content.sm{font-size:.625rem}.label-content s-icon-mat{display:flex;align-items:center;margin-right:3px}.label-content s-icon-mat span{font-size:1.01rem}.icon-default,.label-content-default{color:var(--secondary-500)}.icon-yellow,.label-content-yellow{color:var(--yellow-600)}.icon-red,.label-content-red{color:var(--red-600)}.icon-green,.label-content-green{color:var(--green-600)}.form-group{margin:5px}.form-group .label{font-weight:400;font-size:.875rem;color:var(--secondary-600)}.form-group .content-input-main-626.sm{margin:0}\n"] }]
|
|
43
|
-
}], ctorParameters: function () { return []; }, propDecorators: { theme: [{
|
|
44
|
-
type: Input
|
|
45
|
-
}], icon: [{
|
|
46
|
-
type: Input
|
|
47
|
-
}], iconCustom: [{
|
|
48
|
-
type: Input
|
|
49
|
-
}], size: [{
|
|
50
|
-
type: Input
|
|
51
|
-
}] } });
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicy1lcnJvci1jb250cm9sLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpZGVzeXMtZ2VuZXJpYy11aS9zcmMvbGliL2lucHV0L2NvbXBvbmVudHMvZXJyb3ItY29udHJvbC9zLWVycm9yLWNvbnRyb2wuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2lkZXN5cy1nZW5lcmljLXVpL3NyYy9saWIvaW5wdXQvY29tcG9uZW50cy9lcnJvci1jb250cm9sL3MtZXJyb3ItY29udHJvbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQVE1RSxNQUFNLE9BQU8sYUFBYTtJQVV4QjtRQVJTLFVBQUssR0FBMkMsU0FBUyxDQUFDLENBQUUsZ0NBQWdDO1FBQzVGLFNBQUksR0FBVyxLQUFLLENBQUM7UUFDckIsZUFBVSxHQUFVLEVBQUUsQ0FBQztRQUN2QixTQUFJLEdBQWUsR0FBRyxDQUFDO1FBR2hDLGFBQVEsR0FBVyxFQUFFLENBQUE7SUFFTCxDQUFDO0lBRWpCLFFBQVE7UUFFTixJQUFHLElBQUksQ0FBQyxVQUFVLElBQUksRUFBRSxFQUFDO1lBRXZCLFFBQVEsSUFBSSxDQUFDLEtBQUssRUFBRTtnQkFDbEIsS0FBSyxTQUFTO29CQUNaLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFBO29CQUN6QixNQUFNO2dCQUNOLEtBQUssS0FBSztvQkFDTixJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQTtvQkFDM0IsTUFBTTtnQkFDTixLQUFLLE9BQU87b0JBQ1osSUFBSSxDQUFDLFFBQVEsR0FBRyxjQUFjLENBQUE7b0JBQzlCLE1BQU07Z0JBQ04sS0FBSyxRQUFRO29CQUNULElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFBO29CQUMxQixNQUFNO2dCQUVOO29CQUNFLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFBO29CQUN6QixNQUFNO2FBQ1A7U0FFRjthQUFJO1lBQ0gsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFBO1NBQ2hDO0lBRUgsQ0FBQzs7MEdBdkNVLGFBQWE7OEZBQWIsYUFBYSx5SUNSMUIsb01BR1E7MkZES0ssYUFBYTtrQkFOekIsU0FBUzsrQkFDRSxpQkFBaUIsaUJBR1osaUJBQWlCLENBQUMsSUFBSTswRUFJNUIsS0FBSztzQkFBYixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAncy1lcnJvci1jb250cm9sJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcy1lcnJvci1jb250cm9sLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9zLWVycm9yLWNvbnRyb2wuY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU0Vycm9yQ29udHJvbCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpIHRoZW1lOiAnZGVmYXVsdCcgfCAncmVkJyB8ICdncmVlbicgfCAneWVsbG93JyA9IFwiZGVmYXVsdFwiOyAgLy9kZWZhdWx0ICwgcmVkICwgZ3JlZW4gLCB5ZWxsb3dcclxuICBASW5wdXQoKSBpY29uOmJvb2xlYW4gPSBmYWxzZTsgIFxyXG4gIEBJbnB1dCgpIGljb25DdXN0b206c3RyaW5nID0gXCJcIjtcclxuICBASW5wdXQoKSBzaXplOiAnc20nIHwgJ20nID0gJ20nO1xyXG5cclxuXHJcbiAgaWNvbk5hbWU6IHN0cmluZyA9ICcnXHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG5cclxuICAgIGlmKHRoaXMuaWNvbkN1c3RvbSA9PSBcIlwiKXtcclxuXHJcbiAgICAgIHN3aXRjaCAodGhpcy50aGVtZSkge1xyXG4gICAgICAgIGNhc2UgXCJkZWZhdWx0XCI6XHJcbiAgICAgICAgICB0aGlzLmljb25OYW1lID0gXCJzdGFyc1wiXHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSBcInJlZFwiOlxyXG4gICAgICAgICAgICB0aGlzLmljb25OYW1lID0gXCJlcnJvclwiXHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSBcImdyZWVuXCI6XHJcbiAgICAgICAgdGhpcy5pY29uTmFtZSA9IFwiY2hlY2tfY2lyY2xlXCJcclxuICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlIFwieWVsbG93XCI6XHJcbiAgICAgICAgICAgIHRoaXMuaWNvbk5hbWUgPSBcImluZm9cIlxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBcclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgdGhpcy5pY29uTmFtZSA9IFwic3RhcnNcIlxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcblxyXG4gICAgfWVsc2V7XHJcbiAgICAgIHRoaXMuaWNvbk5hbWUgPSB0aGlzLmljb25DdXN0b21cclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxufVxyXG4iLCI8bGFiZWwgY2xhc3M9XCJsYWJlbC1jb250ZW50IGxhYmVsLWNvbnRlbnQte3t0aGVtZX19IHt7c2l6ZX19XCI+XHJcbiAgICA8cy1pY29uLW1hdCAqbmdJZj1cImljb25cIiBjbGFzcz1cImljb24te3t0aGVtZX19XCI+e3tpY29uTmFtZX19PC9zLWljb24tbWF0PlxyXG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG48L2xhYmVsPiJdfQ==
|
|
@@ -1,317 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output, ViewChild, ViewEncapsulation, forwardRef } from '@angular/core';
|
|
2
|
-
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/common";
|
|
5
|
-
import * as i2 from "@angular/forms";
|
|
6
|
-
import * as i3 from "../../../icon-material/s-icon-material.component";
|
|
7
|
-
import * as i4 from "../../../button/components/button/s-button.component";
|
|
8
|
-
export class SInputTextComponent {
|
|
9
|
-
constructor() {
|
|
10
|
-
this.onChange = (_) => { };
|
|
11
|
-
this.onTouch = () => { };
|
|
12
|
-
this.text = '';
|
|
13
|
-
this.id = Math.floor(Math.random() * 1000);
|
|
14
|
-
this.name = '';
|
|
15
|
-
this.placeHolder = '';
|
|
16
|
-
this.disabled = false;
|
|
17
|
-
this.min = 0;
|
|
18
|
-
this.step = 1;
|
|
19
|
-
this.readOnly = false;
|
|
20
|
-
this.classAdd = '';
|
|
21
|
-
this.help = false;
|
|
22
|
-
this.size = 'md';
|
|
23
|
-
this.rangeUnity = '';
|
|
24
|
-
this.inputText = '';
|
|
25
|
-
this.inputNumber = 0;
|
|
26
|
-
this._type = 'text';
|
|
27
|
-
this._theme = 'default';
|
|
28
|
-
this.disabledstyle = '';
|
|
29
|
-
this.visibility = false;
|
|
30
|
-
this.inconSymbol = false;
|
|
31
|
-
this.tooltipValue = '';
|
|
32
|
-
this.textChangeEvent = new EventEmitter();
|
|
33
|
-
this.clickHelpIconEvent = new EventEmitter();
|
|
34
|
-
}
|
|
35
|
-
get theme() { return this._theme; }
|
|
36
|
-
set theme(val) {
|
|
37
|
-
this._theme = ['default', 'green', 'yellow', 'red'].indexOf(val) != -1 ? val : 'default';
|
|
38
|
-
}
|
|
39
|
-
;
|
|
40
|
-
get type() { return this._type; }
|
|
41
|
-
set type(val) {
|
|
42
|
-
this._type = ['text', 'password', 'email', 'phone', 'url', 'search', 'number', 'color', 'date', 'time', 'range'].indexOf(val) != -1 ? val : 'text';
|
|
43
|
-
}
|
|
44
|
-
;
|
|
45
|
-
ngOnInit() {
|
|
46
|
-
//Ajuste cuando type number viene con text y lo convierte a numero
|
|
47
|
-
if (this.text && this.type == 'number') {
|
|
48
|
-
this.inputNumber = Number(this.text);
|
|
49
|
-
}
|
|
50
|
-
//Ajuste cuando type color viene con text vacio
|
|
51
|
-
if (this._type == 'color' && this.text == '') {
|
|
52
|
-
this.text = '#000000';
|
|
53
|
-
}
|
|
54
|
-
this.inputText = this.text;
|
|
55
|
-
//Activa el estilo de disabled
|
|
56
|
-
if (this.disabled) {
|
|
57
|
-
this.disabledstyle = "disabled-active";
|
|
58
|
-
}
|
|
59
|
-
//Ajuste type color solo se deshabilita con disabled.
|
|
60
|
-
if (this.type == 'color' && this.readOnly == true) {
|
|
61
|
-
this.disabled = true;
|
|
62
|
-
}
|
|
63
|
-
this.loadTheme();
|
|
64
|
-
}
|
|
65
|
-
ngAfterViewInit() {
|
|
66
|
-
//Ajustes Type Range
|
|
67
|
-
if (this.type == 'range') {
|
|
68
|
-
this.rangeOnLoad();
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
ngOnChanges(changes) {
|
|
72
|
-
if (changes['theme']) {
|
|
73
|
-
this.loadTheme();
|
|
74
|
-
}
|
|
75
|
-
if (changes['text']) {
|
|
76
|
-
if (this.text && this.type == 'number') {
|
|
77
|
-
this.inputNumber = Number(this.text);
|
|
78
|
-
}
|
|
79
|
-
if (this._type == 'color' && this.text == '') {
|
|
80
|
-
this.text = '#000000';
|
|
81
|
-
}
|
|
82
|
-
this.inputText = this.text;
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
loadTheme() {
|
|
86
|
-
switch (this.theme) {
|
|
87
|
-
case "default":
|
|
88
|
-
this.iconName = "";
|
|
89
|
-
break;
|
|
90
|
-
case "red":
|
|
91
|
-
this.iconName = "error_outline";
|
|
92
|
-
break;
|
|
93
|
-
case "green":
|
|
94
|
-
this.iconName = "check_circle_outline";
|
|
95
|
-
break;
|
|
96
|
-
case "yellow":
|
|
97
|
-
this.inconSymbol = true;
|
|
98
|
-
this.iconName = "warning";
|
|
99
|
-
break;
|
|
100
|
-
default:
|
|
101
|
-
this.iconName = "";
|
|
102
|
-
break;
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
onTextChange() {
|
|
106
|
-
if (this.type == 'number') {
|
|
107
|
-
this.updateNumber(this.inputText);
|
|
108
|
-
}
|
|
109
|
-
this.onTouch();
|
|
110
|
-
this.onChange(this.inputText);
|
|
111
|
-
if (this.inputTimeout) {
|
|
112
|
-
clearTimeout(this.inputTimeout);
|
|
113
|
-
}
|
|
114
|
-
this.inputTimeout = setTimeout(() => {
|
|
115
|
-
this.textChangeEvent.next(this.inputText);
|
|
116
|
-
}, 500, null);
|
|
117
|
-
}
|
|
118
|
-
onTextChangeVal(val) {
|
|
119
|
-
if (this.inputTimeout) {
|
|
120
|
-
clearTimeout(this.inputTimeout);
|
|
121
|
-
}
|
|
122
|
-
this.inputTimeout = setTimeout(() => {
|
|
123
|
-
if (val) {
|
|
124
|
-
this.onTouch();
|
|
125
|
-
this.onChange(val);
|
|
126
|
-
this.textChangeEvent.next(val);
|
|
127
|
-
this.inputText = val;
|
|
128
|
-
}
|
|
129
|
-
else {
|
|
130
|
-
this.onTouch();
|
|
131
|
-
this.onChange(val);
|
|
132
|
-
this.textChangeEvent.next(this.inputText);
|
|
133
|
-
}
|
|
134
|
-
}, 500, null);
|
|
135
|
-
}
|
|
136
|
-
clickIcon() {
|
|
137
|
-
this.clickHelpIconEvent.next();
|
|
138
|
-
}
|
|
139
|
-
colorClick() {
|
|
140
|
-
document.getElementById(this.name)?.click();
|
|
141
|
-
}
|
|
142
|
-
//FUNCIONES PARA TYPE NUMBER
|
|
143
|
-
numberDecrease() {
|
|
144
|
-
if (!this.disabled && !this.readOnly) {
|
|
145
|
-
if (this.min < this.inputNumber) {
|
|
146
|
-
this.inputNumber -= this.step;
|
|
147
|
-
}
|
|
148
|
-
this.inputText = this.inputNumber.toString();
|
|
149
|
-
this.onTouch();
|
|
150
|
-
this.onChange(this.inputText);
|
|
151
|
-
this.textChangeEvent.next(this.inputText);
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
numberIncrement() {
|
|
155
|
-
if (!this.disabled && !this.readOnly) {
|
|
156
|
-
if (this.max) {
|
|
157
|
-
if (this.max > this.inputNumber) {
|
|
158
|
-
this.inputNumber += this.step;
|
|
159
|
-
}
|
|
160
|
-
else {
|
|
161
|
-
this.inputNumber = this.max;
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
if (!this.max) {
|
|
165
|
-
this.inputNumber += this.step;
|
|
166
|
-
}
|
|
167
|
-
this.inputText = this.inputNumber.toString();
|
|
168
|
-
this.onTouch();
|
|
169
|
-
this.onChange(this.inputText);
|
|
170
|
-
this.textChangeEvent.next(this.inputText);
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
updateNumber(value) {
|
|
174
|
-
let value2 = value;
|
|
175
|
-
if (this.max)
|
|
176
|
-
if (value > this.max) {
|
|
177
|
-
value2 = this.max;
|
|
178
|
-
}
|
|
179
|
-
if (value < this.min) {
|
|
180
|
-
value2 = this.min;
|
|
181
|
-
}
|
|
182
|
-
this.inputText = value2.toString();
|
|
183
|
-
this.inputNumber = Number(value2);
|
|
184
|
-
if (this.typeNumber)
|
|
185
|
-
this.typeNumber.nativeElement.value = this.inputNumber;
|
|
186
|
-
this.onTouch();
|
|
187
|
-
this.onChange(this.inputNumber);
|
|
188
|
-
this.textChangeEvent.next(this.inputText);
|
|
189
|
-
}
|
|
190
|
-
//FIN FUNCIONES PARA TYPE NUMBER
|
|
191
|
-
//FUNCIONES PARA TYPE RANGE
|
|
192
|
-
rangeOnLoad() {
|
|
193
|
-
setTimeout(() => {
|
|
194
|
-
//RANGO TOTAL
|
|
195
|
-
const rangeMax = this.max ? this.max : 100;
|
|
196
|
-
//CALCULO LA AMPLITUD PARA PODER POSICIONAR AL 50% POR DEFECTO
|
|
197
|
-
let amplitudTotal = rangeMax - this.min;
|
|
198
|
-
let porcion = (amplitudTotal * 50) / 100;
|
|
199
|
-
// INICIALIZA AL 50% CUANDO NO HAY VALOR PREDEFINIDO
|
|
200
|
-
let value = this.text == '' ? this.min + porcion : this.text;
|
|
201
|
-
value = this.inputText == '' ? this.min + porcion : this.inputText;
|
|
202
|
-
//DEFINO EL TOOTLTIP
|
|
203
|
-
this.tooltipValue = this.text + this.rangeUnity;
|
|
204
|
-
//SI ES CHROME APLICO EL FIX
|
|
205
|
-
const isChrome = /Chrome/.test(navigator.userAgent) && /Google Inc/.test(navigator.vendor);
|
|
206
|
-
if (isChrome) {
|
|
207
|
-
//CALCCULO EL % A ASIGNAR
|
|
208
|
-
let porcentaje = ((Number(value) - this.min) / (rangeMax - this.min)) * 100;
|
|
209
|
-
document.getElementById(this.id)?.style.setProperty('margin-top', '14px');
|
|
210
|
-
document.getElementById(this.id)?.style.setProperty('margin-bottom', '14px');
|
|
211
|
-
document.getElementById(this.id)?.style.setProperty('border-radius', '4px');
|
|
212
|
-
document.getElementById(this.id)?.style.setProperty('height', '8px');
|
|
213
|
-
document.getElementById(this.id)?.style.setProperty('background', 'linear-gradient(to right, var(--primary-600) 0%, var(--primary-600) ' + porcentaje + '%, var(--neutrals-1000) ' + porcentaje + '%, var(--neutrals-1000) 100%)');
|
|
214
|
-
}
|
|
215
|
-
;
|
|
216
|
-
}, 0);
|
|
217
|
-
}
|
|
218
|
-
//FUNCION PARA CHROME CUANDO SE DESLIZA EL SLIDE FUNCIONE CORRECTAMENTE
|
|
219
|
-
changeRange(value) {
|
|
220
|
-
if (this.type == 'range') {
|
|
221
|
-
const isChrome = /Chrome/.test(navigator.userAgent) && /Google Inc/.test(navigator.vendor);
|
|
222
|
-
const rangeMax = this.max ? this.max : 100;
|
|
223
|
-
if (isChrome) {
|
|
224
|
-
let porcentaje = ((value - this.min) / (rangeMax - this.min)) * 100;
|
|
225
|
-
document.getElementById(this.id)?.style.setProperty('background', 'linear-gradient(to right, var(--primary-600) 0%, var(--primary-600) ' + porcentaje + '%, var(--neutrals-1000) ' + porcentaje + '%, var(--neutrals-1000) 100%)');
|
|
226
|
-
}
|
|
227
|
-
;
|
|
228
|
-
}
|
|
229
|
-
}
|
|
230
|
-
//FUNCION QUE ACTUALIZA EL TOOLTIP CUANDO SE DESLIZA EL SLIDE
|
|
231
|
-
updateTooltip(value) {
|
|
232
|
-
if (this.tooltipContainer && this.tooltip) {
|
|
233
|
-
const rangeWidth = this.tooltipContainer.nativeElement.offsetWidth;
|
|
234
|
-
const rangeMax = this.max ? this.max : 100;
|
|
235
|
-
let porcentaje = ((Number(value) - this.min) / (rangeMax - this.min)) * 100;
|
|
236
|
-
let ajuste = porcentaje * rangeWidth / 100;
|
|
237
|
-
this.tooltip.nativeElement.style.left = `${ajuste}px`;
|
|
238
|
-
this.tooltipValue = value + this.rangeUnity;
|
|
239
|
-
}
|
|
240
|
-
}
|
|
241
|
-
//FIN FUNCIONES PARA TYPE RANGE
|
|
242
|
-
//FUNCIONES PARA QUE FUNCIONE FORM BUILDER
|
|
243
|
-
writeValue(value) {
|
|
244
|
-
if (value) {
|
|
245
|
-
this.inputText = value;
|
|
246
|
-
this.inputNumber = value;
|
|
247
|
-
}
|
|
248
|
-
}
|
|
249
|
-
registerOnChange(fn) {
|
|
250
|
-
this.onChange = fn;
|
|
251
|
-
}
|
|
252
|
-
registerOnTouched(fn) {
|
|
253
|
-
this.onTouch = fn;
|
|
254
|
-
}
|
|
255
|
-
}
|
|
256
|
-
SInputTextComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: SInputTextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
257
|
-
SInputTextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.2", type: SInputTextComponent, selector: "s-input-text", inputs: { text: "text", id: "id", name: "name", placeHolder: "placeHolder", disabled: "disabled", max: "max", min: "min", step: "step", readOnly: "readOnly", theme: "theme", type: "type", classAdd: "classAdd", help: "help", size: "size", rangeUnity: "rangeUnity" }, outputs: { textChangeEvent: "textChangeEvent", clickHelpIconEvent: "clickHelpIconEvent" }, providers: [
|
|
258
|
-
{
|
|
259
|
-
provide: NG_VALUE_ACCESSOR,
|
|
260
|
-
useExisting: forwardRef(() => SInputTextComponent),
|
|
261
|
-
multi: true
|
|
262
|
-
}
|
|
263
|
-
], viewQueries: [{ propertyName: "typeNumber", first: true, predicate: ["typeNumber"], descendants: true }, { propertyName: "tooltipContainer", first: true, predicate: ["tooltipContainer"], descendants: true }, { propertyName: "tooltip", first: true, predicate: ["tooltip"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-container [ngSwitch]=\"type\">\r\n <!-- El switch case con cada caso por input ['text', 'password', 'email' , 'phone' , 'url' , 'search']-->\r\n\r\n <!-- case text -->\r\n <ng-container *ngSwitchCase=\"'text'\">\r\n <div\r\n class=\"content-input-main-626 content-input-main-text {{size}} theme-{{theme}} {{classAdd}} {{disabledstyle}}\">\r\n <!-- <div class=\"content-left\">\r\n <s-icon-mat class=\"icon\">email</s-icon-mat>\r\n </div> -->\r\n <div class=\"content-center\">\r\n <input \r\n [readOnly]=\"readOnly\" \r\n [disabled]=\"disabled\" \r\n [type]=\"type\" \r\n [id]=\"id\" \r\n [name]=\"name\" \r\n autocomplete=\"off\"\r\n [placeholder]=\"placeHolder\"\r\n [(ngModel)]=\"inputText\"\r\n (ngModelChange)=\"onTextChange()\"\r\n >\r\n </div>\r\n <div *ngIf=\"theme != 'default'\" class=\"content-right\">\r\n <s-icon-mat [type]=\"inconSymbol?'symbol':'icon'\" class=\"icon report\">{{iconName}}</s-icon-mat>\r\n </div>\r\n\r\n <div *ngIf=\"theme == 'default' && help\" class=\"content-right\">\r\n <s-icon-mat (click)=\"clickIcon()\" class=\"icon cursor\">help_outline</s-icon-mat>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <!-- case password -->\r\n <ng-container *ngSwitchCase=\"'password'\">\r\n <div\r\n class=\"content-input-main-626 content-input-main-password {{size}} theme-{{theme}} {{classAdd}} {{disabledstyle}}\">\r\n <div class=\"content-left\">\r\n <s-icon-mat class=\"icon\">vpn_key</s-icon-mat>\r\n </div>\r\n <div class=\"content-center\">\r\n <input [readOnly]=\"readOnly\" [id]=\"id ? id : ''\" [disabled]=\"disabled\" type=\"{{visibility ? 'text' : 'password'}}\" [placeholder]=\"placeHolder\" [(ngModel)]=\"inputText\"\r\n (ngModelChange)=\"onTextChange()\">\r\n </div>\r\n <div class=\"content-right\">\r\n <s-icon-mat [type]=\"inconSymbol?'symbol':'icon'\" class=\"icon cursor\"\r\n (click)=\"visibility = !visibility\">{{visibility ? 'visibility' :\r\n 'visibility_off'}}</s-icon-mat>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <!-- case email -->\r\n <ng-container *ngSwitchCase=\"'email'\">\r\n <div\r\n class=\"content-input-main-626 content-input-main-email {{size}} theme-{{theme}} {{classAdd}} {{disabledstyle}}\">\r\n <div class=\"content-left\">\r\n <s-icon-mat class=\"icon\">mail_outline</s-icon-mat>\r\n </div>\r\n <div class=\"content-center\">\r\n <input [readOnly]=\"readOnly\" [id]=\"id ? id : ''\" [disabled]=\"disabled\" [type]=\"type\" [name]=\"name\" autocomplete=\"off\"\r\n [placeholder]=\"placeHolder\" [(ngModel)]=\"inputText\" (ngModelChange)=\"onTextChange()\">\r\n </div>\r\n <div *ngIf=\"theme != 'default'\" class=\"content-right\">\r\n <s-icon-mat [type]=\"inconSymbol?'symbol':'icon'\" class=\"icon report\">{{iconName}}</s-icon-mat>\r\n </div>\r\n\r\n <div *ngIf=\"theme == 'default' && help\" class=\"content-right\">\r\n <s-icon-mat (click)=\"clickIcon()\" class=\"icon cursor\">help_outline</s-icon-mat>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n\r\n <!-- case phone -->\r\n <ng-container *ngSwitchCase=\"'phone'\">\r\n <div\r\n class=\"content-input-main-626 content-input-main-phone {{size}} theme-{{theme}} {{classAdd}} {{disabledstyle}}\">\r\n <div class=\"content-left\">\r\n <s-icon-mat class=\"icon\">phone</s-icon-mat>\r\n </div>\r\n <div class=\"content-center\">\r\n <input [readOnly]=\"readOnly\" [id]=\"id ? id : ''\" [disabled]=\"disabled\" [type]=\"type\" [name]=\"name\" autocomplete=\"off\"\r\n [placeholder]=\"placeHolder\" [(ngModel)]=\"inputText\" (ngModelChange)=\"onTextChange()\">\r\n </div>\r\n <div *ngIf=\"theme != 'default'\" class=\"content-right\">\r\n <s-icon-mat [type]=\"inconSymbol?'symbol':'icon'\" class=\"icon report\">{{iconName}}</s-icon-mat>\r\n </div>\r\n\r\n <div *ngIf=\"theme == 'default' && help\" class=\"content-right\">\r\n <s-icon-mat (click)=\"clickIcon()\" class=\"icon cursor\">help_outline</s-icon-mat>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n\r\n <!-- case url -->\r\n <ng-container *ngSwitchCase=\"'url'\">\r\n <div\r\n class=\"content-input-main-626 content-input-main-url {{size}} theme-{{theme}} {{classAdd}} {{disabledstyle}}\">\r\n <div class=\"content-left\">\r\n http://\r\n </div>\r\n <div class=\"content-center\">\r\n <input [readOnly]=\"readOnly\" [id]=\"id ? id : ''\" [disabled]=\"disabled\" [type]=\"type\" [name]=\"name\" autocomplete=\"off\"\r\n [placeholder]=\"placeHolder\" [(ngModel)]=\"inputText\" (ngModelChange)=\"onTextChange()\">\r\n </div>\r\n <div *ngIf=\"theme != 'default'\" class=\"content-right\">\r\n <s-icon-mat [type]=\"inconSymbol?'symbol':'icon'\" class=\"icon report\">{{iconName}}</s-icon-mat>\r\n </div>\r\n\r\n <div *ngIf=\"theme == 'default' && help\" class=\"content-right\">\r\n <s-icon-mat (click)=\"clickIcon()\" class=\"icon cursor\">help_outline</s-icon-mat>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n\r\n <!-- case search -->\r\n <ng-container *ngSwitchCase=\"'search'\">\r\n <div\r\n class=\"content-input-main-626 content-input-main-search {{size}} theme-{{theme}} {{classAdd}} {{disabledstyle}}\">\r\n <div class=\"content-left\">\r\n <s-icon-mat class=\"icon\">search</s-icon-mat>\r\n </div>\r\n <div class=\"content-center\">\r\n <input [readOnly]=\"readOnly\" [id]=\"id ? id : ''\" [disabled]=\"disabled\" [type]=\"type\" [name]=\"name\" autocomplete=\"off\"\r\n [placeholder]=\"placeHolder\" [(ngModel)]=\"inputText\" (ngModelChange)=\"onTextChange()\">\r\n </div>\r\n <!-- <div class=\"content-right\">\r\n <s-icon-mat class=\"icon cursor\">help_outline</s-icon-mat>\r\n </div> -->\r\n </div>\r\n </ng-container>\r\n\r\n <!-- case color -->\r\n <ng-container *ngSwitchCase=\"'color'\">\r\n <div\r\n class=\"content-input-main-626 content-input-main-color {{size}} theme-{{theme}} {{classAdd}} {{disabledstyle}}\">\r\n <div class=\"content-left\">\r\n <input [readOnly]=\"readOnly\" #color [id]=\"name\" [name]=\"name\" type=\"color\" [disabled]=\"disabled\" [(ngModel)]=\"inputText\"\r\n (ngModelChange)=\"onTextChange()\" style=\"width: 40px; padding: 0;\">\r\n </div>\r\n <div class=\"content-center\" (click)=\"!this.readOnly ? this.color.click() : null\">\r\n <input [readOnly]=\"readOnly\" [id]=\"id ? id : ''\" [type]=\"text\" autocomplete=\"off\" [placeholder]=\"placeHolder\" [(ngModel)]=\"inputText\" [disabled]=\"disabled\">\r\n </div>\r\n <div *ngIf=\"theme != 'default'\" class=\"content-right\">\r\n <s-icon-mat [type]=\"inconSymbol?'symbol':'icon'\" class=\"icon report\">{{iconName}}</s-icon-mat>\r\n </div>\r\n\r\n <div *ngIf=\"theme == 'default' && help\" class=\"content-right\">\r\n <s-icon-mat (click)=\"clickIcon()\" class=\"icon cursor\">help_outline</s-icon-mat>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <!-- case date -->\r\n <ng-container *ngSwitchCase=\"'date'\">\r\n <div\r\n class=\"content-input-main-626 content-input-main-text {{size}} theme-{{theme}} {{classAdd}} {{disabledstyle}}\">\r\n <div class=\"content-center\">\r\n <input [readOnly]=\"readOnly\" [id]=\"id ? id : ''\" [disabled]=\"disabled\" [type]=\"type\" [name]=\"name\" autocomplete=\"off\"\r\n [placeholder]=\"placeHolder\" (ngModelChange)=\"onTextChangeVal($event)\"\r\n [ngModel]=\"inputText\">\r\n </div>\r\n <div *ngIf=\"theme != 'default'\" class=\"content-right\">\r\n <s-icon-mat [type]=\"inconSymbol?'symbol':'icon'\" class=\"icon report\">{{iconName}}</s-icon-mat>\r\n </div>\r\n <div *ngIf=\"theme == 'default' && help\" class=\"content-right\">\r\n <s-icon-mat (click)=\"clickIcon()\" class=\"icon cursor\">help_outline</s-icon-mat>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <!-- case time -->\r\n <ng-container *ngSwitchCase=\"'time'\">\r\n <div\r\n class=\"content-input-main-626 content-input-main-text {{size}} theme-{{theme}} {{classAdd}} {{disabledstyle}}\">\r\n <div class=\"content-center\">\r\n <input [id]=\"id ? id : ''\" [disabled]=\"disabled\" [type]=\"type\" [name]=\"name\" autocomplete=\"off\"\r\n [placeholder]=\"placeHolder\" (ngModelChange)=\"onTextChangeVal($event)\"\r\n [ngModel]=\"inputText\">\r\n </div>\r\n <div *ngIf=\"theme != 'default'\" class=\"content-right\">\r\n <s-icon-mat [type]=\"inconSymbol?'symbol':'icon'\" class=\"icon report\">{{iconName}}</s-icon-mat>\r\n </div>\r\n <div *ngIf=\"theme == 'default' && help\" class=\"content-right\">\r\n <s-icon-mat (click)=\"clickIcon()\" class=\"icon cursor\">help_outline</s-icon-mat>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <!-- case number -->\r\n <ng-container *ngSwitchCase=\"'number'\">\r\n <div class=\"d-flex align-center\">\r\n <div class=\"content-left mr-1\">\r\n <s-button [disabled]=\"disabled\" (click)=\"numberDecrease()\" [size]=\"size\" [pill]=\"true\" [invert]=\"true\" class=\"button-input-626\"><s-icon-mat>remove</s-icon-mat></s-button>\r\n </div>\r\n <div class=\"content-input-main-626 content-input-main-text content-input-main-number {{size}} theme-{{theme}} {{classAdd}} {{disabledstyle}} w-100\">\r\n <div class=\"content-center\">\r\n <input [readOnly]=\"readOnly\" [id]=\"id ? id : ''\" #typeNumber [disabled]=\"disabled\" [type]=\"type\" [name]=\"name\" autocomplete=\"off\"\r\n [placeholder]=\"placeHolder\" [(ngModel)]=\"inputText\" (ngModelChange)=\"onTextChange()\"\r\n [max]=\"max\"\r\n [min]=\"min\"\r\n [step]=\"step\"\r\n >\r\n </div>\r\n\r\n <div *ngIf=\"theme != 'default'\" class=\"content-right\">\r\n <s-icon-mat [type]=\"inconSymbol?'symbol':'icon'\" class=\"icon report\">{{iconName}}</s-icon-mat>\r\n </div>\r\n\r\n <div *ngIf=\"theme == 'default' && help\" class=\"content-right\">\r\n <s-icon-mat (click)=\"clickIcon()\" class=\"icon cursor\">help_outline</s-icon-mat>\r\n </div>\r\n </div>\r\n <div class=\"content-left ml-1\">\r\n <s-button [disabled]=\"disabled\" (click)=\"numberIncrement()\" [size]=\"size\" [pill]=\"true\" [invert]=\"true\" class=\"button-input-626\"><s-icon-mat>add</s-icon-mat></s-button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <!-- case range -->\r\n <ng-container *ngSwitchCase=\"'range'\">\r\n <div class=\"content-input-main-range {{size}} theme-{{theme}} {{classAdd}} {{disabledstyle}}\">\r\n <div class=\"tooltip tooltip-{{disabled}}\" #tooltipContainer>\r\n <input\r\n #rangeField\r\n [readOnly]=\"readOnly\" \r\n [disabled]=\"disabled\" \r\n [type]=\"type\" \r\n [id]=\"id\" \r\n [name]=\"name\" \r\n autocomplete=\"off\"\r\n [placeholder]=\"placeHolder\"\r\n [(ngModel)]=\"inputText\"\r\n [min]=\"min\"\r\n [max]=\"max\"\r\n [step]=\"step\"\r\n (mousemove)=\"changeRange(rangeField.value)\"\r\n (ngModelChange)=\"onTextChange()\"\r\n (input)=\"updateTooltip(rangeField.value)\"\r\n >\r\n <span class=\"tooltiptext\" #tooltip>{{ tooltipValue }}</span>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <!-- case default -->\r\n <ng-container *ngSwitchDefault>\r\n <div\r\n class=\"content-input-main-626 content-input-main-text {{size}} theme-{{theme}} {{classAdd}} {{disabledstyle}}\">\r\n <!-- <div class=\"content-left\">\r\n <s-icon-mat class=\"icon\">email</s-icon-mat>\r\n </div> -->\r\n <div class=\"content-center\">\r\n <input [readOnly]=\"readOnly\" [id]=\"id ? id : 'generic'\" [disabled]=\"disabled\" [type]=\"type\" [name]=\"name\" autocomplete=\"off\"\r\n [placeholder]=\"placeHolder\" [(ngModel)]=\"inputText\" (ngModelChange)=\"onTextChange()\">\r\n </div>\r\n <div *ngIf=\"theme != 'default'\" class=\"content-right\">\r\n <s-icon-mat [type]=\"inconSymbol?'symbol':'icon'\" class=\"icon report\">{{iconName}}</s-icon-mat>\r\n </div>\r\n\r\n <div *ngIf=\"theme == 'default' && help\" class=\"content-right\">\r\n <s-icon-mat (click)=\"clickIcon()\" class=\"icon cursor\">help_outline</s-icon-mat>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n</ng-container>", styles: [".content-input-main-626:has(input:focus){border:1px solid var(--primary-600);box-shadow:0 0 0 4px #0091fe26,0 1px 2px #1018280d}.content-input-main-626.theme-green:has(input:focus){border:1px solid var(--green-500);box-shadow:0 0 0 4px #36b37e26,0 1px 2px #1018280d}.content-input-main-626.theme-yellow:has(input:focus){border:1px solid var(--yellow-500);box-shadow:0 0 0 4px #ffab0026,0 1px 2px #1018280d}.content-input-main-626.theme-red:has(input:focus){border:1px solid var(--red-500);box-shadow:0 0 0 4px #ff563026,0 1px 2px #1018280d}.content-input-main-626.sm input{height:22px;font-size:.75rem}.content-input-main-626.sm .icon{width:20px;cursor:default}.content-input-main-626.sm .icon span{font-size:1.2em;display:flex}.content-input-main-626{display:flex;border:1px solid var(--primary-500);border-radius:4px;padding:0 8px;margin:3px 0;background-color:var(--neutrals-1200)}.content-input-main-626 input{width:100%;border:0px;color:var(--secondary-600);writing-mode:unset;height:36px;font-size:inherit;background-color:var(--neutrals-1200)}.content-input-main-626 input:focus,.content-input-main-626 input:focus-visible{outline:none}.content-input-main-626 .icon{width:20px;cursor:default}.content-input-main-626 .icon span{display:flex}.content-input-main-626 .content-center{width:100%;background-color:var(--neutrals-1200)}.content-input-main-626 .content-left{display:flex;align-items:center;justify-content:space-evenly;margin-right:8px;color:var(--primary-600)}.content-input-main-626 .content-right{display:flex;align-items:center;justify-content:space-evenly;margin-left:8px;color:var(--secondary-600)}.content-input-main-626.disabled-active{background-color:var(--neutrals-1100);border-color:var(--neutrals-900);color:var(--neutrals-800)}.content-input-main-626.disabled-active input{background-color:var(--neutrals-1100);color:var(--neutrals-800)}.content-input-main-626.disabled-active .content-left{color:var(--neutrals-800)!important}.content-input-main-626.disabled-active .content-right s-icon-mat span{color:var(--neutrals-800)!important}.content-input-main-626.disabled-active.content-input-main-url .content-left,.content-input-main-626.disabled-active.content-input-main-color .content-left{color:var(--neutrals-800)!important;border-right:1px solid var(--neutrals-900)}.content-input-main-626.theme-red{border:1px solid var(--red-500)}.content-input-main-626.theme-red .icon.report span{color:var(--red-600)}.content-input-main-626.theme-green{border:1px solid var(--green-500)}.content-input-main-626.theme-green .icon.report span{color:var(--green-600)}.content-input-main-626.theme-yellow{border:1px solid var(--yellow-500)}.content-input-main-626.theme-yellow .icon.report span{color:var(--yellow-600)}.content-input-main-626.content-input-main-password .content-right .icon span{color:var(--secondary-500)}.content-input-main-url .content-left,.content-input-main-color .content-left{border-right:1px solid var(--secondary-500);padding-right:8px;color:var(--secondary-500);font-size:.9rem;padding-left:8px}.content-input-main-url,.content-input-main-color{padding-left:0}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px var(--neutrals-1200) inset!important}.content-input-main-626.content-input-main-number input::-webkit-outer-spin-button,.content-input-main-626.content-input-main-number input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.content-input-main-626.content-input-main-number input[type=number]{-moz-appearance:textfield}.button-input-626{font-size:15px;font-weight:700}.content-input-main-range input{width:100%;height:36px;margin:0;-webkit-appearance:none}.content-input-main-range input[type=range]::-webkit-slider-runnable-track{border-radius:4px;height:8px}.content-input-main-range input[type=range]::-moz-range-track{appearance:none;background-color:var(--neutrals-1000)!important;height:8px;border-radius:4px}.content-input-main-range input[type=range]::-ms-track{appearance:none;background-color:var(--neutrals-1000)!important;height:8px;border-radius:4px}.content-input-main-range input[type=range]::-moz-range-progress{appearance:none;background-color:var(--primary-600)!important;height:8px;border-radius:4px}.content-input-main-range input[type=range]::-ms-fill-upper{appearance:none;background-color:var(--primary-600)!important;height:8px;border-radius:4px}.content-input-main-range input[type=range]::-webkit-slider-thumb{box-sizing:border-box;-webkit-appearance:none;border:unset;outline:unset;box-shadow:unset;width:24px;height:24px;border-radius:50%;border:3px solid var(--primary-600);background:var(--neutrals-1200);margin-top:-8px}.content-input-main-range input[type=range]::-moz-range-thumb{box-sizing:border-box;-webkit-appearance:none;border:unset;outline:unset;box-shadow:unset;width:24px;height:24px;border-radius:50%;border:3px solid var(--primary-600);background:var(--neutrals-1200)}.content-input-main-range input[type=range]::-ms-thumb{box-sizing:border-box;-webkit-appearance:none;border:unset;outline:unset;box-shadow:unset;width:24px;height:24px;border-radius:50%;border:3px solid var(--primary-600);background:var(--neutrals-1200)}.content-input-main-range input[type=range]::-webkit-slider-thumb:hover{border:3px solid var(--primary-600);background:var(--primary-200)}.content-input-main-range input[type=range]::-moz-range-thumb:hover{border:3px solid var(--primary-600);background:var(--primary-200)}.content-input-main-range input[type=range]::-ms-thumb:hover{border:3px solid var(--primary-600);background:var(--primary-200)}.content-input-main-range input[type=range]::-webkit-slider-thumb:active{border:3px solid var(--primary-600);background:var(--primary-600);box-shadow:0 1px 2px #1018280d,0 0 0 4px #0091fe26}.content-input-main-range input[type=range]::-moz-range-thumb:active{border:3px solid var(--primary-600);background:var(--primary-600);box-shadow:0 1px 2px #1018280d,0 0 0 4px #0091fe26}.content-input-main-range input[type=range]::-ms-thumb:active{border:3px solid var(--primary-600);background:var(--primary-600);box-shadow:0 1px 2px #1018280d,0 0 0 4px #0091fe26}.content-input-main-range input[type=range]:disabled{filter:grayscale(1);opacity:.3;cursor:not-allowed}.tooltip{position:relative;display:inline-block;cursor:pointer;width:100%}.tooltip .tooltiptext{visibility:hidden;width:40px;background-color:var(--neutrals-1200);color:var(--secondary-600);font-weight:700;font-size:12px;text-align:center;border-radius:4px;padding:5px;position:absolute;z-index:1;bottom:100%;left:550%;transform:translate(-50%);box-shadow:0 0 16px #17386129}.tooltip-false:hover .tooltiptext{visibility:visible}.tooltip .tooltiptext:before{content:\"\";position:absolute!important;transform:rotate(45deg);height:10px;width:10px;bottom:-5px;background-color:var(--neutrals-1200);box-shadow:0 0 16px #17386129;left:40%}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.SIconMaterialComponent, selector: "s-icon-mat", inputs: ["size", "color", "fill", "weight", "grade", "opticalSize", "style", "type"] }, { kind: "component", type: i4.SButtonComponent, selector: "s-button", inputs: ["disabled", "class", "rounded", "pill", "size", "invert", "selected", "type", "border", "loading", "position", "theme"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
264
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: SInputTextComponent, decorators: [{
|
|
265
|
-
type: Component,
|
|
266
|
-
args: [{ selector: 's-input-text', encapsulation: ViewEncapsulation.None, providers: [
|
|
267
|
-
{
|
|
268
|
-
provide: NG_VALUE_ACCESSOR,
|
|
269
|
-
useExisting: forwardRef(() => SInputTextComponent),
|
|
270
|
-
multi: true
|
|
271
|
-
}
|
|
272
|
-
], template: "<ng-container [ngSwitch]=\"type\">\r\n <!-- El switch case con cada caso por input ['text', 'password', 'email' , 'phone' , 'url' , 'search']-->\r\n\r\n <!-- case text -->\r\n <ng-container *ngSwitchCase=\"'text'\">\r\n <div\r\n class=\"content-input-main-626 content-input-main-text {{size}} theme-{{theme}} {{classAdd}} {{disabledstyle}}\">\r\n <!-- <div class=\"content-left\">\r\n <s-icon-mat class=\"icon\">email</s-icon-mat>\r\n </div> -->\r\n <div class=\"content-center\">\r\n <input \r\n [readOnly]=\"readOnly\" \r\n [disabled]=\"disabled\" \r\n [type]=\"type\" \r\n [id]=\"id\" \r\n [name]=\"name\" \r\n autocomplete=\"off\"\r\n [placeholder]=\"placeHolder\"\r\n [(ngModel)]=\"inputText\"\r\n (ngModelChange)=\"onTextChange()\"\r\n >\r\n </div>\r\n <div *ngIf=\"theme != 'default'\" class=\"content-right\">\r\n <s-icon-mat [type]=\"inconSymbol?'symbol':'icon'\" class=\"icon report\">{{iconName}}</s-icon-mat>\r\n </div>\r\n\r\n <div *ngIf=\"theme == 'default' && help\" class=\"content-right\">\r\n <s-icon-mat (click)=\"clickIcon()\" class=\"icon cursor\">help_outline</s-icon-mat>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <!-- case password -->\r\n <ng-container *ngSwitchCase=\"'password'\">\r\n <div\r\n class=\"content-input-main-626 content-input-main-password {{size}} theme-{{theme}} {{classAdd}} {{disabledstyle}}\">\r\n <div class=\"content-left\">\r\n <s-icon-mat class=\"icon\">vpn_key</s-icon-mat>\r\n </div>\r\n <div class=\"content-center\">\r\n <input [readOnly]=\"readOnly\" [id]=\"id ? id : ''\" [disabled]=\"disabled\" type=\"{{visibility ? 'text' : 'password'}}\" [placeholder]=\"placeHolder\" [(ngModel)]=\"inputText\"\r\n (ngModelChange)=\"onTextChange()\">\r\n </div>\r\n <div class=\"content-right\">\r\n <s-icon-mat [type]=\"inconSymbol?'symbol':'icon'\" class=\"icon cursor\"\r\n (click)=\"visibility = !visibility\">{{visibility ? 'visibility' :\r\n 'visibility_off'}}</s-icon-mat>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <!-- case email -->\r\n <ng-container *ngSwitchCase=\"'email'\">\r\n <div\r\n class=\"content-input-main-626 content-input-main-email {{size}} theme-{{theme}} {{classAdd}} {{disabledstyle}}\">\r\n <div class=\"content-left\">\r\n <s-icon-mat class=\"icon\">mail_outline</s-icon-mat>\r\n </div>\r\n <div class=\"content-center\">\r\n <input [readOnly]=\"readOnly\" [id]=\"id ? id : ''\" [disabled]=\"disabled\" [type]=\"type\" [name]=\"name\" autocomplete=\"off\"\r\n [placeholder]=\"placeHolder\" [(ngModel)]=\"inputText\" (ngModelChange)=\"onTextChange()\">\r\n </div>\r\n <div *ngIf=\"theme != 'default'\" class=\"content-right\">\r\n <s-icon-mat [type]=\"inconSymbol?'symbol':'icon'\" class=\"icon report\">{{iconName}}</s-icon-mat>\r\n </div>\r\n\r\n <div *ngIf=\"theme == 'default' && help\" class=\"content-right\">\r\n <s-icon-mat (click)=\"clickIcon()\" class=\"icon cursor\">help_outline</s-icon-mat>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n\r\n <!-- case phone -->\r\n <ng-container *ngSwitchCase=\"'phone'\">\r\n <div\r\n class=\"content-input-main-626 content-input-main-phone {{size}} theme-{{theme}} {{classAdd}} {{disabledstyle}}\">\r\n <div class=\"content-left\">\r\n <s-icon-mat class=\"icon\">phone</s-icon-mat>\r\n </div>\r\n <div class=\"content-center\">\r\n <input [readOnly]=\"readOnly\" [id]=\"id ? id : ''\" [disabled]=\"disabled\" [type]=\"type\" [name]=\"name\" autocomplete=\"off\"\r\n [placeholder]=\"placeHolder\" [(ngModel)]=\"inputText\" (ngModelChange)=\"onTextChange()\">\r\n </div>\r\n <div *ngIf=\"theme != 'default'\" class=\"content-right\">\r\n <s-icon-mat [type]=\"inconSymbol?'symbol':'icon'\" class=\"icon report\">{{iconName}}</s-icon-mat>\r\n </div>\r\n\r\n <div *ngIf=\"theme == 'default' && help\" class=\"content-right\">\r\n <s-icon-mat (click)=\"clickIcon()\" class=\"icon cursor\">help_outline</s-icon-mat>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n\r\n <!-- case url -->\r\n <ng-container *ngSwitchCase=\"'url'\">\r\n <div\r\n class=\"content-input-main-626 content-input-main-url {{size}} theme-{{theme}} {{classAdd}} {{disabledstyle}}\">\r\n <div class=\"content-left\">\r\n http://\r\n </div>\r\n <div class=\"content-center\">\r\n <input [readOnly]=\"readOnly\" [id]=\"id ? id : ''\" [disabled]=\"disabled\" [type]=\"type\" [name]=\"name\" autocomplete=\"off\"\r\n [placeholder]=\"placeHolder\" [(ngModel)]=\"inputText\" (ngModelChange)=\"onTextChange()\">\r\n </div>\r\n <div *ngIf=\"theme != 'default'\" class=\"content-right\">\r\n <s-icon-mat [type]=\"inconSymbol?'symbol':'icon'\" class=\"icon report\">{{iconName}}</s-icon-mat>\r\n </div>\r\n\r\n <div *ngIf=\"theme == 'default' && help\" class=\"content-right\">\r\n <s-icon-mat (click)=\"clickIcon()\" class=\"icon cursor\">help_outline</s-icon-mat>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n\r\n <!-- case search -->\r\n <ng-container *ngSwitchCase=\"'search'\">\r\n <div\r\n class=\"content-input-main-626 content-input-main-search {{size}} theme-{{theme}} {{classAdd}} {{disabledstyle}}\">\r\n <div class=\"content-left\">\r\n <s-icon-mat class=\"icon\">search</s-icon-mat>\r\n </div>\r\n <div class=\"content-center\">\r\n <input [readOnly]=\"readOnly\" [id]=\"id ? id : ''\" [disabled]=\"disabled\" [type]=\"type\" [name]=\"name\" autocomplete=\"off\"\r\n [placeholder]=\"placeHolder\" [(ngModel)]=\"inputText\" (ngModelChange)=\"onTextChange()\">\r\n </div>\r\n <!-- <div class=\"content-right\">\r\n <s-icon-mat class=\"icon cursor\">help_outline</s-icon-mat>\r\n </div> -->\r\n </div>\r\n </ng-container>\r\n\r\n <!-- case color -->\r\n <ng-container *ngSwitchCase=\"'color'\">\r\n <div\r\n class=\"content-input-main-626 content-input-main-color {{size}} theme-{{theme}} {{classAdd}} {{disabledstyle}}\">\r\n <div class=\"content-left\">\r\n <input [readOnly]=\"readOnly\" #color [id]=\"name\" [name]=\"name\" type=\"color\" [disabled]=\"disabled\" [(ngModel)]=\"inputText\"\r\n (ngModelChange)=\"onTextChange()\" style=\"width: 40px; padding: 0;\">\r\n </div>\r\n <div class=\"content-center\" (click)=\"!this.readOnly ? this.color.click() : null\">\r\n <input [readOnly]=\"readOnly\" [id]=\"id ? id : ''\" [type]=\"text\" autocomplete=\"off\" [placeholder]=\"placeHolder\" [(ngModel)]=\"inputText\" [disabled]=\"disabled\">\r\n </div>\r\n <div *ngIf=\"theme != 'default'\" class=\"content-right\">\r\n <s-icon-mat [type]=\"inconSymbol?'symbol':'icon'\" class=\"icon report\">{{iconName}}</s-icon-mat>\r\n </div>\r\n\r\n <div *ngIf=\"theme == 'default' && help\" class=\"content-right\">\r\n <s-icon-mat (click)=\"clickIcon()\" class=\"icon cursor\">help_outline</s-icon-mat>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <!-- case date -->\r\n <ng-container *ngSwitchCase=\"'date'\">\r\n <div\r\n class=\"content-input-main-626 content-input-main-text {{size}} theme-{{theme}} {{classAdd}} {{disabledstyle}}\">\r\n <div class=\"content-center\">\r\n <input [readOnly]=\"readOnly\" [id]=\"id ? id : ''\" [disabled]=\"disabled\" [type]=\"type\" [name]=\"name\" autocomplete=\"off\"\r\n [placeholder]=\"placeHolder\" (ngModelChange)=\"onTextChangeVal($event)\"\r\n [ngModel]=\"inputText\">\r\n </div>\r\n <div *ngIf=\"theme != 'default'\" class=\"content-right\">\r\n <s-icon-mat [type]=\"inconSymbol?'symbol':'icon'\" class=\"icon report\">{{iconName}}</s-icon-mat>\r\n </div>\r\n <div *ngIf=\"theme == 'default' && help\" class=\"content-right\">\r\n <s-icon-mat (click)=\"clickIcon()\" class=\"icon cursor\">help_outline</s-icon-mat>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <!-- case time -->\r\n <ng-container *ngSwitchCase=\"'time'\">\r\n <div\r\n class=\"content-input-main-626 content-input-main-text {{size}} theme-{{theme}} {{classAdd}} {{disabledstyle}}\">\r\n <div class=\"content-center\">\r\n <input [id]=\"id ? id : ''\" [disabled]=\"disabled\" [type]=\"type\" [name]=\"name\" autocomplete=\"off\"\r\n [placeholder]=\"placeHolder\" (ngModelChange)=\"onTextChangeVal($event)\"\r\n [ngModel]=\"inputText\">\r\n </div>\r\n <div *ngIf=\"theme != 'default'\" class=\"content-right\">\r\n <s-icon-mat [type]=\"inconSymbol?'symbol':'icon'\" class=\"icon report\">{{iconName}}</s-icon-mat>\r\n </div>\r\n <div *ngIf=\"theme == 'default' && help\" class=\"content-right\">\r\n <s-icon-mat (click)=\"clickIcon()\" class=\"icon cursor\">help_outline</s-icon-mat>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <!-- case number -->\r\n <ng-container *ngSwitchCase=\"'number'\">\r\n <div class=\"d-flex align-center\">\r\n <div class=\"content-left mr-1\">\r\n <s-button [disabled]=\"disabled\" (click)=\"numberDecrease()\" [size]=\"size\" [pill]=\"true\" [invert]=\"true\" class=\"button-input-626\"><s-icon-mat>remove</s-icon-mat></s-button>\r\n </div>\r\n <div class=\"content-input-main-626 content-input-main-text content-input-main-number {{size}} theme-{{theme}} {{classAdd}} {{disabledstyle}} w-100\">\r\n <div class=\"content-center\">\r\n <input [readOnly]=\"readOnly\" [id]=\"id ? id : ''\" #typeNumber [disabled]=\"disabled\" [type]=\"type\" [name]=\"name\" autocomplete=\"off\"\r\n [placeholder]=\"placeHolder\" [(ngModel)]=\"inputText\" (ngModelChange)=\"onTextChange()\"\r\n [max]=\"max\"\r\n [min]=\"min\"\r\n [step]=\"step\"\r\n >\r\n </div>\r\n\r\n <div *ngIf=\"theme != 'default'\" class=\"content-right\">\r\n <s-icon-mat [type]=\"inconSymbol?'symbol':'icon'\" class=\"icon report\">{{iconName}}</s-icon-mat>\r\n </div>\r\n\r\n <div *ngIf=\"theme == 'default' && help\" class=\"content-right\">\r\n <s-icon-mat (click)=\"clickIcon()\" class=\"icon cursor\">help_outline</s-icon-mat>\r\n </div>\r\n </div>\r\n <div class=\"content-left ml-1\">\r\n <s-button [disabled]=\"disabled\" (click)=\"numberIncrement()\" [size]=\"size\" [pill]=\"true\" [invert]=\"true\" class=\"button-input-626\"><s-icon-mat>add</s-icon-mat></s-button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <!-- case range -->\r\n <ng-container *ngSwitchCase=\"'range'\">\r\n <div class=\"content-input-main-range {{size}} theme-{{theme}} {{classAdd}} {{disabledstyle}}\">\r\n <div class=\"tooltip tooltip-{{disabled}}\" #tooltipContainer>\r\n <input\r\n #rangeField\r\n [readOnly]=\"readOnly\" \r\n [disabled]=\"disabled\" \r\n [type]=\"type\" \r\n [id]=\"id\" \r\n [name]=\"name\" \r\n autocomplete=\"off\"\r\n [placeholder]=\"placeHolder\"\r\n [(ngModel)]=\"inputText\"\r\n [min]=\"min\"\r\n [max]=\"max\"\r\n [step]=\"step\"\r\n (mousemove)=\"changeRange(rangeField.value)\"\r\n (ngModelChange)=\"onTextChange()\"\r\n (input)=\"updateTooltip(rangeField.value)\"\r\n >\r\n <span class=\"tooltiptext\" #tooltip>{{ tooltipValue }}</span>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <!-- case default -->\r\n <ng-container *ngSwitchDefault>\r\n <div\r\n class=\"content-input-main-626 content-input-main-text {{size}} theme-{{theme}} {{classAdd}} {{disabledstyle}}\">\r\n <!-- <div class=\"content-left\">\r\n <s-icon-mat class=\"icon\">email</s-icon-mat>\r\n </div> -->\r\n <div class=\"content-center\">\r\n <input [readOnly]=\"readOnly\" [id]=\"id ? id : 'generic'\" [disabled]=\"disabled\" [type]=\"type\" [name]=\"name\" autocomplete=\"off\"\r\n [placeholder]=\"placeHolder\" [(ngModel)]=\"inputText\" (ngModelChange)=\"onTextChange()\">\r\n </div>\r\n <div *ngIf=\"theme != 'default'\" class=\"content-right\">\r\n <s-icon-mat [type]=\"inconSymbol?'symbol':'icon'\" class=\"icon report\">{{iconName}}</s-icon-mat>\r\n </div>\r\n\r\n <div *ngIf=\"theme == 'default' && help\" class=\"content-right\">\r\n <s-icon-mat (click)=\"clickIcon()\" class=\"icon cursor\">help_outline</s-icon-mat>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n</ng-container>", styles: [".content-input-main-626:has(input:focus){border:1px solid var(--primary-600);box-shadow:0 0 0 4px #0091fe26,0 1px 2px #1018280d}.content-input-main-626.theme-green:has(input:focus){border:1px solid var(--green-500);box-shadow:0 0 0 4px #36b37e26,0 1px 2px #1018280d}.content-input-main-626.theme-yellow:has(input:focus){border:1px solid var(--yellow-500);box-shadow:0 0 0 4px #ffab0026,0 1px 2px #1018280d}.content-input-main-626.theme-red:has(input:focus){border:1px solid var(--red-500);box-shadow:0 0 0 4px #ff563026,0 1px 2px #1018280d}.content-input-main-626.sm input{height:22px;font-size:.75rem}.content-input-main-626.sm .icon{width:20px;cursor:default}.content-input-main-626.sm .icon span{font-size:1.2em;display:flex}.content-input-main-626{display:flex;border:1px solid var(--primary-500);border-radius:4px;padding:0 8px;margin:3px 0;background-color:var(--neutrals-1200)}.content-input-main-626 input{width:100%;border:0px;color:var(--secondary-600);writing-mode:unset;height:36px;font-size:inherit;background-color:var(--neutrals-1200)}.content-input-main-626 input:focus,.content-input-main-626 input:focus-visible{outline:none}.content-input-main-626 .icon{width:20px;cursor:default}.content-input-main-626 .icon span{display:flex}.content-input-main-626 .content-center{width:100%;background-color:var(--neutrals-1200)}.content-input-main-626 .content-left{display:flex;align-items:center;justify-content:space-evenly;margin-right:8px;color:var(--primary-600)}.content-input-main-626 .content-right{display:flex;align-items:center;justify-content:space-evenly;margin-left:8px;color:var(--secondary-600)}.content-input-main-626.disabled-active{background-color:var(--neutrals-1100);border-color:var(--neutrals-900);color:var(--neutrals-800)}.content-input-main-626.disabled-active input{background-color:var(--neutrals-1100);color:var(--neutrals-800)}.content-input-main-626.disabled-active .content-left{color:var(--neutrals-800)!important}.content-input-main-626.disabled-active .content-right s-icon-mat span{color:var(--neutrals-800)!important}.content-input-main-626.disabled-active.content-input-main-url .content-left,.content-input-main-626.disabled-active.content-input-main-color .content-left{color:var(--neutrals-800)!important;border-right:1px solid var(--neutrals-900)}.content-input-main-626.theme-red{border:1px solid var(--red-500)}.content-input-main-626.theme-red .icon.report span{color:var(--red-600)}.content-input-main-626.theme-green{border:1px solid var(--green-500)}.content-input-main-626.theme-green .icon.report span{color:var(--green-600)}.content-input-main-626.theme-yellow{border:1px solid var(--yellow-500)}.content-input-main-626.theme-yellow .icon.report span{color:var(--yellow-600)}.content-input-main-626.content-input-main-password .content-right .icon span{color:var(--secondary-500)}.content-input-main-url .content-left,.content-input-main-color .content-left{border-right:1px solid var(--secondary-500);padding-right:8px;color:var(--secondary-500);font-size:.9rem;padding-left:8px}.content-input-main-url,.content-input-main-color{padding-left:0}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px var(--neutrals-1200) inset!important}.content-input-main-626.content-input-main-number input::-webkit-outer-spin-button,.content-input-main-626.content-input-main-number input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.content-input-main-626.content-input-main-number input[type=number]{-moz-appearance:textfield}.button-input-626{font-size:15px;font-weight:700}.content-input-main-range input{width:100%;height:36px;margin:0;-webkit-appearance:none}.content-input-main-range input[type=range]::-webkit-slider-runnable-track{border-radius:4px;height:8px}.content-input-main-range input[type=range]::-moz-range-track{appearance:none;background-color:var(--neutrals-1000)!important;height:8px;border-radius:4px}.content-input-main-range input[type=range]::-ms-track{appearance:none;background-color:var(--neutrals-1000)!important;height:8px;border-radius:4px}.content-input-main-range input[type=range]::-moz-range-progress{appearance:none;background-color:var(--primary-600)!important;height:8px;border-radius:4px}.content-input-main-range input[type=range]::-ms-fill-upper{appearance:none;background-color:var(--primary-600)!important;height:8px;border-radius:4px}.content-input-main-range input[type=range]::-webkit-slider-thumb{box-sizing:border-box;-webkit-appearance:none;border:unset;outline:unset;box-shadow:unset;width:24px;height:24px;border-radius:50%;border:3px solid var(--primary-600);background:var(--neutrals-1200);margin-top:-8px}.content-input-main-range input[type=range]::-moz-range-thumb{box-sizing:border-box;-webkit-appearance:none;border:unset;outline:unset;box-shadow:unset;width:24px;height:24px;border-radius:50%;border:3px solid var(--primary-600);background:var(--neutrals-1200)}.content-input-main-range input[type=range]::-ms-thumb{box-sizing:border-box;-webkit-appearance:none;border:unset;outline:unset;box-shadow:unset;width:24px;height:24px;border-radius:50%;border:3px solid var(--primary-600);background:var(--neutrals-1200)}.content-input-main-range input[type=range]::-webkit-slider-thumb:hover{border:3px solid var(--primary-600);background:var(--primary-200)}.content-input-main-range input[type=range]::-moz-range-thumb:hover{border:3px solid var(--primary-600);background:var(--primary-200)}.content-input-main-range input[type=range]::-ms-thumb:hover{border:3px solid var(--primary-600);background:var(--primary-200)}.content-input-main-range input[type=range]::-webkit-slider-thumb:active{border:3px solid var(--primary-600);background:var(--primary-600);box-shadow:0 1px 2px #1018280d,0 0 0 4px #0091fe26}.content-input-main-range input[type=range]::-moz-range-thumb:active{border:3px solid var(--primary-600);background:var(--primary-600);box-shadow:0 1px 2px #1018280d,0 0 0 4px #0091fe26}.content-input-main-range input[type=range]::-ms-thumb:active{border:3px solid var(--primary-600);background:var(--primary-600);box-shadow:0 1px 2px #1018280d,0 0 0 4px #0091fe26}.content-input-main-range input[type=range]:disabled{filter:grayscale(1);opacity:.3;cursor:not-allowed}.tooltip{position:relative;display:inline-block;cursor:pointer;width:100%}.tooltip .tooltiptext{visibility:hidden;width:40px;background-color:var(--neutrals-1200);color:var(--secondary-600);font-weight:700;font-size:12px;text-align:center;border-radius:4px;padding:5px;position:absolute;z-index:1;bottom:100%;left:550%;transform:translate(-50%);box-shadow:0 0 16px #17386129}.tooltip-false:hover .tooltiptext{visibility:visible}.tooltip .tooltiptext:before{content:\"\";position:absolute!important;transform:rotate(45deg);height:10px;width:10px;bottom:-5px;background-color:var(--neutrals-1200);box-shadow:0 0 16px #17386129;left:40%}\n"] }]
|
|
273
|
-
}], ctorParameters: function () { return []; }, propDecorators: { typeNumber: [{
|
|
274
|
-
type: ViewChild,
|
|
275
|
-
args: ['typeNumber']
|
|
276
|
-
}], tooltipContainer: [{
|
|
277
|
-
type: ViewChild,
|
|
278
|
-
args: ['tooltipContainer', { static: false }]
|
|
279
|
-
}], tooltip: [{
|
|
280
|
-
type: ViewChild,
|
|
281
|
-
args: ['tooltip', { static: false }]
|
|
282
|
-
}], text: [{
|
|
283
|
-
type: Input
|
|
284
|
-
}], id: [{
|
|
285
|
-
type: Input
|
|
286
|
-
}], name: [{
|
|
287
|
-
type: Input
|
|
288
|
-
}], placeHolder: [{
|
|
289
|
-
type: Input
|
|
290
|
-
}], disabled: [{
|
|
291
|
-
type: Input
|
|
292
|
-
}], max: [{
|
|
293
|
-
type: Input
|
|
294
|
-
}], min: [{
|
|
295
|
-
type: Input
|
|
296
|
-
}], step: [{
|
|
297
|
-
type: Input
|
|
298
|
-
}], readOnly: [{
|
|
299
|
-
type: Input
|
|
300
|
-
}], theme: [{
|
|
301
|
-
type: Input
|
|
302
|
-
}], type: [{
|
|
303
|
-
type: Input
|
|
304
|
-
}], classAdd: [{
|
|
305
|
-
type: Input
|
|
306
|
-
}], help: [{
|
|
307
|
-
type: Input
|
|
308
|
-
}], size: [{
|
|
309
|
-
type: Input
|
|
310
|
-
}], rangeUnity: [{
|
|
311
|
-
type: Input
|
|
312
|
-
}], textChangeEvent: [{
|
|
313
|
-
type: Output
|
|
314
|
-
}], clickHelpIconEvent: [{
|
|
315
|
-
type: Output
|
|
316
|
-
}] } });
|
|
317
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicy1pbnB1dC10ZXh0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpZGVzeXMtZ2VuZXJpYy11aS9zcmMvbGliL2lucHV0L2NvbXBvbmVudHMvaW5wdXQtdGV4dC9zLWlucHV0LXRleHQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2lkZXN5cy1nZW5lcmljLXVpL3NyYy9saWIvaW5wdXQvY29tcG9uZW50cy9pbnB1dC10ZXh0L3MtaW5wdXQtdGV4dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWlCLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUssT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7QUFlekUsTUFBTSxPQUFPLG1CQUFtQjtJQWtEOUI7UUFoREEsYUFBUSxHQUFHLENBQUMsQ0FBTSxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDM0IsWUFBTyxHQUFHLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQVNYLFNBQUksR0FBVyxFQUFFLENBQUM7UUFDbEIsT0FBRSxHQUFTLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDO1FBQzVDLFNBQUksR0FBVyxFQUFFLENBQUM7UUFDbEIsZ0JBQVcsR0FBWSxFQUFFLENBQUM7UUFDMUIsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUUxQixRQUFHLEdBQVcsQ0FBQyxDQUFDO1FBQ2hCLFNBQUksR0FBVyxDQUFDLENBQUM7UUFDakIsYUFBUSxHQUFZLEtBQUssQ0FBQztRQVcxQixhQUFRLEdBQVcsRUFBRSxDQUFDO1FBQ3RCLFNBQUks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dCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMsIFZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb24sIGZvcndhcmRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzLWlucHV0LXRleHQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zLWlucHV0LXRleHQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3MtaW5wdXQtdGV4dC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBTSW5wdXRUZXh0Q29tcG9uZW50KSxcclxuICAgICAgbXVsdGk6IHRydWVcclxuICAgIH1cclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTSW5wdXRUZXh0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIENvbnRyb2xWYWx1ZUFjY2Vzc29yICwgQWZ0ZXJWaWV3SW5pdCAge1xyXG4gIFxyXG4gIG9uQ2hhbmdlID0gKF86IGFueSkgPT4geyB9O1xyXG4gIG9uVG91Y2ggPSAoKSA9PiB7IH07XHJcblxyXG4gIC8vUkVGIFBBUkEgVFlQRSBOVU1CRVJcclxuICBAVmlld0NoaWxkKCd0eXBlTnVtYmVyJykgdHlwZU51bWJlcjogRWxlbWVudFJlZiB8IHVuZGVmaW5lZCA7XHJcbiAgLy9SRUYgUEFSQSBUWVBFIFJBTkdFXHJcbiAgQFZpZXdDaGlsZCgndG9vbHRpcENvbnRhaW5lcicsIHsgc3RhdGljOiBmYWxzZSB9KSB0b29sdGlwQ29udGFpbmVyOiBFbGVtZW50UmVmIHwgdW5kZWZpbmVkO1xyXG4gIEBWaWV3Q2hpbGQoJ3Rvb2x0aXAnLCB7IHN0YXRpYzogZmFsc2UgfSkgdG9vbHRpcDogRWxlbWVudFJlZiB8IHVuZGVmaW5lZDtcclxuXHJcblxyXG4gIEBJbnB1dCgpIHRleHQ6IHN0cmluZyA9ICcnO1xyXG4gIEBJbnB1dCgpIGlkOiBhbnkgPSAgTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogMTAwMCk7XHJcbiAgQElucHV0KCkgbmFtZTogc3RyaW5nID0gJyc7XHJcbiAgQElucHV0KCkgcGxhY2VIb2xkZXI/OiBzdHJpbmcgPSAnJztcclxuICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIG1heD86IG51bWJlciA7XHJcbiAgQElucHV0KCkgbWluOiBudW1iZXIgPSAwO1xyXG4gIEBJbnB1dCgpIHN0ZXA6IG51bWJlciA9IDE7XHJcbiAgQElucHV0KCkgcmVhZE9ubHk6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKVxyXG4gIGdldCB0aGVtZSgpOiBzdHJpbmcgeyByZXR1cm4gdGhpcy5fdGhlbWU7IH1cclxuICBzZXQgdGhlbWUodmFsOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX3RoZW1lID0gWydkZWZhdWx0JywgJ2dyZWVuJywgJ3llbGxvdycsICdyZWQnXS5pbmRleE9mKHZhbCkgIT0gLTEgPyB2YWwgOiAnZGVmYXVsdCc7XHJcbiAgfTtcclxuICBASW5wdXQoKVxyXG4gIGdldCB0eXBlKCk6IHN0cmluZyB7IHJldHVybiB0aGlzLl90eXBlOyB9XHJcbiAgc2V0IHR5cGUodmFsOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX3R5cGUgPSBbJ3RleHQnLCAncGFzc3dvcmQnLCAnZW1haWwnLCAncGhvbmUnLCAndXJsJywgJ3NlYXJjaCcsICdudW1iZXInLCAnY29sb3InLCAnZGF0ZScsICd0aW1lJyAsICdyYW5nZSddLmluZGV4T2YodmFsKSAhPSAtMSA/IHZhbCA6ICd0ZXh0JztcclxuICB9O1xyXG4gIEBJbnB1dCgpIGNsYXNzQWRkOiBzdHJpbmcgPSAnJztcclxuICBASW5wdXQoKSBoZWxwOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc2l6ZTogJ3NtJyB8ICdtZCcgPSAnbWQnO1xyXG4gIEBJbnB1dCgpIHJhbmdlVW5pdHk6IHN0cmluZyA9ICcnO1xyXG5cclxuICBpbnB1dFRpbWVvdXQ/OiBhbnk7XHJcbiAgaW5wdXRUZXh0OiBzdHJpbmcgPSAnJztcclxuICBpbnB1dE51bWJlcjogbnVtYmVyID0gMDtcclxuICBfdHlwZTogc3RyaW5nID0gJ3RleHQnO1xyXG4gIF90aGVtZTogc3RyaW5nID0gJ2RlZmF1bHQnO1xyXG4gIGRpc2FibGVkc3R5bGU6IHN0cmluZyA9ICcnO1xyXG4gIHZpc2liaWxpdHkgPSBmYWxzZTtcclxuICBpY29uTmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG4gIGluY29uU3ltYm9sOiBib29sZWFuID0gZmFsc2U7XHJcbiAgdG9vbHRpcFZhbHVlOiBzdHJpbmcgPSAnJztcclxuXHJcbiAgQE91dHB1dCgpIHRleHRDaGFuZ2VFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG4gIEBPdXRwdXQoKSBjbGlja0hlbHBJY29uRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyBcclxuICAgIFxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcblxyXG4gICAgLy9BanVzdGUgY3VhbmRvIHR5cGUgbnVtYmVyIHZpZW5lIGNvbiB0ZXh0IHkgbG8gY29udmllcnRlIGEgbnVtZXJvXHJcbiAgICBpZih0aGlzLnRleHQgJiYgdGhpcy50eXBlID09ICdudW1iZXInKXtcclxuICAgICAgICB0aGlzLmlucHV0TnVtYmVyID0gTnVtYmVyKHRoaXMudGV4dClcclxuICAgIH1cclxuXHJcbiAgICAvL0FqdXN0ZSBjdWFuZG8gdHlwZSBjb2xvciB2aWVuZSBjb24gdGV4dCB2YWNpb1xyXG4gICAgaWYgKHRoaXMuX3R5cGUgPT0gJ2NvbG9yJyAmJiB0aGlzLnRleHQgPT0gJycpIHtcclxuICAgICAgdGhpcy50ZXh0ID0gJyMwMDAwMDAnXHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5pbnB1dFRleHQgPSB0aGlzLnRleHQ7XHJcbiAgICBcclxuICAgIC8vQWN0aXZhIGVsIGVzdGlsbyBkZSBkaXNhYmxlZCBcclxuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XHJcbiAgICAgIHRoaXMuZGlzYWJsZWRzdHlsZSA9IFwiZGlzYWJsZWQtYWN0aXZlXCJcclxuICAgIH1cclxuXHJcbiAgICAvL0FqdXN0ZSB0eXBlIGNvbG9yIHNvbG8gc2UgZGVzaGFiaWxpdGEgY29uIGRpc2FibGVkLlxyXG4gICAgaWYodGhpcy50eXBlID09ICdjb2xvcicgJiYgdGhpcy5yZWFkT25seSA9PSB0cnVlKXtcclxuICAgICAgdGhpcy5kaXNhYmxlZCA9IHRydWVcclxuICAgIH1cclxuXHJcblxyXG4gICAgdGhpcy5sb2FkVGhlbWUoKTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIC8vQWp1c3RlcyBUeXBlIFJhbmdlXHJcbiAgICBpZih0aGlzLnR5cGUgPT0gJ3JhbmdlJyl7XHJcbiAgICAgIHRoaXMucmFuZ2VPbkxvYWQoKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgaWYgKGNoYW5nZXNbJ3RoZW1lJ10pIHtcclxuICAgICAgdGhpcy5sb2FkVGhlbWUoKTtcclxuICAgIH1cclxuXHJcbiAgICBpZihjaGFuZ2VzWyd0ZXh0J10pe1xyXG4gICAgICBpZih0aGlzLnRleHQgJiYgdGhpcy50eXBlID09ICdudW1iZXInKXtcclxuICAgICAgICAgIHRoaXMuaW5wdXROdW1iZXIgPSBOdW1iZXIodGhpcy50ZXh0KVxyXG4gICAgICB9XHJcbiAgXHJcbiAgICAgIGlmICh0aGlzLl90eXBlID09ICdjb2xvcicgJiYgdGhpcy50ZXh0ID09ICcnKSB7XHJcbiAgICAgICAgdGhpcy50ZXh0ID0gJyMwMDAwMDAnXHJcbiAgICAgIH1cclxuICBcclxuICAgICAgdGhpcy5pbnB1dFRleHQgPSB0aGlzLnRleHQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGxvYWRUaGVtZSgpIHtcclxuICAgIHN3aXRjaCAodGhpcy50aGVtZSkge1xyXG4gICAgICBjYXNlIFwiZGVmYXVsdFwiOlxyXG4gICAgICAgIHRoaXMuaWNvbk5hbWUgPSBcIlwiXHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgXCJyZWRcIjpcclxuICAgICAgICB0aGlzLmljb25OYW1lID0gXCJlcnJvcl9vdXRsaW5lXCJcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBcImdyZWVuXCI6XHJcbiAgICAgICAgdGhpcy5pY29uTmFtZSA9IFwiY2hlY2tfY2lyY2xlX291dGxpbmVcIlxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlIFwieWVsbG93XCI6XHJcbiAgICAgICAgdGhpcy5pbmNvblN5bWJvbCA9IHRydWVcclxuICAgICAgICB0aGlzLmljb25OYW1lID0gXCJ3YXJuaW5nXCJcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgdGhpcy5pY29uTmFtZSA9IFwiXCJcclxuICAgICAgICBicmVhaztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uVGV4dENoYW5nZSgpIHtcclxuICAgIGlmKHRoaXMudHlwZSA9PSAnbnVtYmVyJyl7XHJcbiAgICAgIHRoaXMudXBkYXRlTnVtYmVyKHRoaXMuaW5wdXRUZXh0KVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMub25Ub3VjaCgpO1xyXG4gICAgdGhpcy5vbkNoYW5nZSh0aGlzLmlucHV0VGV4dCk7XHJcblxyXG4gICAgaWYgKHRoaXMuaW5wdXRUaW1lb3V0KSB7XHJcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLmlucHV0VGltZW91dCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5pbnB1dFRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy50ZXh0Q2hhbmdlRXZlbnQubmV4dCh0aGlzLmlucHV0VGV4dCk7XHJcbiAgICB9LCA1MDAsIG51bGwpO1xyXG4gIH1cclxuXHJcbiAgb25UZXh0Q2hhbmdlVmFsKHZhbDogc3RyaW5nKSB7XHJcbiAgICBpZiAodGhpcy5pbnB1dFRpbWVvdXQpIHtcclxuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuaW5wdXRUaW1lb3V0KTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmlucHV0VGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICBpZiAodmFsKSB7XHJcbiAgICAgICAgdGhpcy5vblRvdWNoKCk7XHJcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh2YWwpO1xyXG4gICAgICAgIHRoaXMudGV4dENoYW5nZUV2ZW50Lm5leHQodmFsKTtcclxuICAgICAgICB0aGlzLmlucHV0VGV4dCA9IHZhbDtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIHtcclxuICAgICAgICB0aGlzLm9uVG91Y2goKTtcclxuICAgICAgICB0aGlzLm9uQ2hhbmdlKHZhbCk7XHJcbiAgICAgICAgdGhpcy50ZXh0Q2hhbmdlRXZlbnQubmV4dCh0aGlzLmlucHV0VGV4dCk7XHJcbiAgICAgIH1cclxuICAgIH0sIDUwMCwgbnVsbCk7XHJcbiAgfVxyXG5cclxuICBjbGlja0ljb24oKSB7XHJcbiAgICB0aGlzLmNsaWNrSGVscEljb25FdmVudC5uZXh0KCk7XHJcbiAgfVxyXG5cclxuICBjb2xvckNsaWNrKCkge1xyXG4gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGhpcy5uYW1lKT8uY2xpY2soKTtcclxuICB9XHJcblxyXG4gIC8vRlVOQ0lPTkVTIFBBUkEgVFlQRSBOVU1CRVIgXHJcbiAgbnVtYmVyRGVjcmVhc2UoKXtcclxuICAgIGlmKCF0aGlzLmRpc2FibGVkICYmICF0aGlzLnJlYWRPbmx5KXtcclxuICAgICAgaWYodGhpcy5taW4gPCB0aGlzLmlucHV0TnVtYmVyKXtcclxuICAgICAgICB0aGlzLmlucHV0TnVtYmVyLT10aGlzLnN0ZXBcclxuICAgICAgfVxyXG4gICAgICB0aGlzLmlucHV0VGV4dCA9IHRoaXMuaW5wdXROdW1iZXIudG9TdHJpbmcoKVxyXG4gICAgICB0aGlzLm9uVG91Y2goKTtcclxuICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLmlucHV0VGV4dCk7XHJcbiAgICAgIHRoaXMudGV4dENoYW5nZUV2ZW50Lm5leHQodGhpcy5pbnB1dFRleHQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbnVtYmVySW5jcmVtZW50KCl7XHJcbiAgICBpZighdGhpcy5kaXNhYmxlZCAmJiAhdGhpcy5yZWFkT25seSl7XHJcbiAgICAgIGlmKHRoaXMubWF4KXtcclxuICAgICAgICBpZih0aGlzLm1heCA+IHRoaXMuaW5wdXROdW1iZXIpe1xyXG4gICAgICAgICAgdGhpcy5pbnB1dE51bWJlcis9dGhpcy5zdGVwXHJcbiAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICB0aGlzLmlucHV0TnVtYmVyID0gdGhpcy5tYXhcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYoIXRoaXMubWF4KXtcclxuICAgICAgICB0aGlzLmlucHV0TnVtYmVyKz10aGlzLnN0ZXBcclxuICAgICAgfVxyXG4gICAgICB0aGlzLmlucHV0VGV4dCA9IHRoaXMuaW5wdXROdW1iZXIudG9TdHJpbmcoKVxyXG4gICAgICB0aGlzLm9uVG91Y2goKTtcclxuICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLmlucHV0VGV4dCk7XHJcbiAgICAgIHRoaXMudGV4dENoYW5nZUV2ZW50Lm5leHQodGhpcy5pbnB1dFRleHQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdXBkYXRlTnVtYmVyKHZhbHVlOmFueSl7XHJcbiAgICBsZXQgdmFsdWUyID0gdmFsdWVcclxuICAgIGlmKHRoaXMubWF4KVxyXG4gICAgaWYodmFsdWUgPiB0aGlzLm1heCl7XHJcbiAgICAgIHZhbHVlMiA9IHRoaXMubWF4XHJcbiAgICB9XHJcbiAgICBpZih2YWx1ZSA8IHRoaXMubWluKXtcclxuICAgICAgdmFsdWUyID0gdGhpcy5taW5cclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmlucHV0VGV4dCA9IHZhbHVlMi50b1N0cmluZygpXHJcbiAgICB0aGlzLmlucHV0TnVtYmVyID0gTnVtYmVyKHZhbHVlMik7XHJcbiAgICBpZih0aGlzLnR5cGVOdW1iZXIpXHJcbiAgICB0aGlzLnR5cGVOdW1iZXIubmF0aXZlRWxlbWVudC52YWx1ZSA9IHRoaXMuaW5wdXROdW1iZXJcclxuICAgIHRoaXMub25Ub3VjaCgpO1xyXG4gICAgdGhpcy5vbkNoYW5nZSh0aGlzLmlucHV0TnVtYmVyKTtcclxuICAgIHRoaXMudGV4dENoYW5nZUV2ZW50Lm5leHQodGhpcy5pbnB1dFRleHQpO1xyXG4gICAgXHJcbiAgfSBcclxuICAvL0ZJTiBGVU5DSU9ORVMgUEFSQSBUWVBFIE5VTUJFUiBcclxuICBcclxuICAvL0ZVTkNJT05FUyBQQVJBIFRZUEUgUkFOR0UgXHJcbiAgcmFuZ2VPbkxvYWQoKXtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAvL1JBTkdPIFRPVEFMXHJcbiAgICAgIGNvbnN0IHJhbmdlTWF4ID0gdGhpcy5tYXggPyB0aGlzLm1heCA6IDEwMDtcclxuICAgICAgLy9DQUxDVUxPIExBIEFNUExJVFVEIFBBUkEgUE9ERVIgUE9TSUNJT05BUiBBTCA1MCUgUE9SIERFRkVDVE9cclxuICAgICAgbGV0IGFtcGxpdHVkVG90YWwgPSByYW5nZU1heCAtIHRoaXMubWluXHJcbiAgICAgIGxldCBwb3JjaW9uID0gKGFtcGxpdHVkVG90YWwgKiA1MCkgLyAxMDAgXHJcbiAgICAgIC8vIElOSUNJQUxJWkEgQUwgNTAlIENVQU5ETyBOTyBIQVkgVkFMT1IgUFJFREVGSU5JRE9cclxuICAgICAgbGV0IHZhbHVlID0gdGhpcy50ZXh0ID09ICcnID8gdGhpcy5taW4gKyBwb3JjaW9uIDogdGhpcy50ZXh0XHJcbiAgICAgIHZhbHVlID0gdGhpcy5pbnB1dFRleHQgPT0gJycgPyB0aGlzLm1pbiArIHBvcmNpb24gOiB0aGlzLmlucHV0VGV4dFxyXG4gICAgICAvL0RFRklOTyBFTCBUT09UTFRJUFxyXG4gICAgICB0aGlzLnRvb2x0aXBWYWx1ZSA9IHRoaXMudGV4dCArIHRoaXMucmFuZ2VVbml0eTtcclxuICAgICAgLy9TSSBFUyBDSFJPTUUgQVBMSUNPIEVMIEZJWFxyXG4gICAgICBjb25zdCBpc0Nocm9tZSA9IC9DaHJvbWUvLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCkgJiYgL0dvb2dsZSBJbmMvLnRlc3QobmF2aWdhdG9yLnZlbmRvcik7XHJcbiAgICAgIGlmKGlzQ2hyb21lKSB7XHJcbiAgICAgICAgLy9DQUxDQ1VMTyBFTCAlIEEgQVNJR05BUlxyXG4gICAgICAgIGxldCBwb3JjZW50YWplID0gKChOdW1iZXIodmFsdWUpIC0gdGhpcy5taW4pIC8gKHJhbmdlTWF4IC0gdGhpcy5taW4pKSAqIDEwMFxyXG4gICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMuaWQpPy5zdHlsZS5zZXRQcm9wZXJ0eSgnbWFyZ2luLXRvcCcgLCAnMTRweCcpO1xyXG4gICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMuaWQpPy5zdHlsZS5zZXRQcm9wZXJ0eSgnbWFyZ2luLWJvdHRvbScgLCAnMTRweCcpO1xyXG4gICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMuaWQpPy5zdHlsZS5zZXRQcm9wZXJ0eSgnYm9yZGVyLXJhZGl1cycgLCAnNHB4Jyk7XHJcbiAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGhpcy5pZCk/LnN0eWxlLnNldFByb3BlcnR5KCdoZWlnaHQnICwgJzhweCcpO1xyXG4gICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMuaWQpPy5zdHlsZS5zZXRQcm9wZXJ0eSgnYmFja2dyb3VuZCcgLCAnbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS1wcmltYXJ5LTYwMCkgMCUsIHZhcigtLXByaW1hcnktNjAwKSAnK3BvcmNlbnRhamUrJyUsIHZhcigtLW5ldXRyYWxzLTEwMDApICcrcG9yY2VudGFqZSsnJSwgdmFyKC0tbmV1dHJhbHMtMTAwMCkgMTAwJSknKTtcclxuICAgICAgfTtcclxuICAgIH0sIDApO1xyXG4gIH1cclxuXHJcbiAgLy9GVU5DSU9OIFBBUkEgQ0hST01FIENVQU5ETyBTRSBERVNMSVpBIEVMIFNMSURFIEZVTkNJT05FIENPUlJFQ1RBTUVOVEVcclxuICBjaGFuZ2VSYW5nZSh2YWx1ZTphbnkpe1xyXG4gICAgaWYodGhpcy50eXBlID09ICdyYW5nZScpe1xyXG4gICAgICBjb25zdCBpc0Nocm9tZSA9IC9DaHJvbWUvLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCkgJiYgL0dvb2dsZSBJbmMvLnRlc3QobmF2aWdhdG9yLnZlbmRvcik7XHJcbiAgICAgIGNvbnN0IHJhbmdlTWF4ID0gdGhpcy5tYXggPyB0aGlzLm1heCA6IDEwMDtcclxuICAgICAgaWYoaXNDaHJvbWUpIHtcclxuICAgICAgICBsZXQgcG9yY2VudGFqZSA9ICgodmFsdWUgLSB0aGlzLm1pbikgLyAocmFuZ2VNYXggLSB0aGlzLm1pbikpICogMTAwXHJcbiAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGhpcy5pZCk/LnN0eWxlLnNldFByb3BlcnR5KCdiYWNrZ3JvdW5kJyAsICdsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXByaW1hcnktNjAwKSAwJSwgdmFyKC0tcHJpbWFyeS02MDApICcrcG9yY2VudGFqZSsnJSwgdmFyKC0tbmV1dHJhbHMtMTAwMCkgJytwb3JjZW50YWplKyclLCB2YXIoLS1uZXV0cmFscy0xMDAwKSAxMDAlKScpO1xyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy9GVU5DSU9OIFFVRSBBQ1RVQUxJWkEgRUwgVE9PTFRJUCBDVUFORE8gU0UgREVTTElaQSBFTCBTTElERVxyXG4gIHVwZGF0ZVRvb2x0aXAodmFsdWU6IHN0cmluZykge1xyXG4gICAgaWYodGhpcy50b29sdGlwQ29udGFpbmVyICYmIHRoaXMudG9vbHRpcCl7XHJcbiAgICAgIGNvbnN0IHJhbmdlV2lkdGggPSB0aGlzLnRvb2x0aXBDb250YWluZXIubmF0aXZlRWxlbWVudC5vZmZzZXRXaWR0aDtcclxuICAgICAgY29uc3QgcmFuZ2VNYXggPSB0aGlzLm1heCA/IHRoaXMubWF4IDogMTAwO1xyXG4gICAgICBsZXQgcG9yY2VudGFqZSA9ICgoTnVtYmVyKHZhbHVlKSAtIHRoaXMubWluKSAvIChyYW5nZU1heCAtIHRoaXMubWluKSkgKiAxMDBcclxuICAgICAgbGV0IGFqdXN0ZSA9IHBvcmNlbnRhamUgKiByYW5nZVdpZHRoIC8gMTAwO1xyXG4gICAgICB0aGlzLnRvb2x0aXAubmF0aXZlRWxlbWVudC5zdHlsZS5sZWZ0ID0gYCR7YWp1c3RlfXB4YDtcclxuICAgICAgdGhpcy50b29sdGlwVmFsdWUgPSB2YWx1ZSArIHRoaXMucmFuZ2VVbml0eTtcclxuICAgIH1cclxuICB9XHJcbiAgLy9GSU4gRlVOQ0lPTkVTIFBBUkEgVFlQRSBSQU5HRVxyXG5cclxuICAvL0ZVTkNJT05FUyBQQVJBIFFVRSBGVU5DSU9ORSBGT1JNIEJVSUxERVJcclxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkIHtcclxuICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICB0aGlzLmlucHV0VGV4dCA9IHZhbHVlO1xyXG4gICAgICB0aGlzLmlucHV0TnVtYmVyID0gdmFsdWVcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5vblRvdWNoID0gZm47XHJcbiAgfVxyXG59XHJcbiIsIjxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cInR5cGVcIj5cclxuICAgIDwhLS0gRWwgc3dpdGNoIGNhc2UgY29uIGNhZGEgY2FzbyBwb3IgaW5wdXQgIFsndGV4dCcsICdwYXNzd29yZCcsICdlbWFpbCcgLCAncGhvbmUnICwgJ3VybCcgLCAnc2VhcmNoJ10tLT5cclxuXHJcbiAgICA8IS0tIGNhc2UgdGV4dCAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIid0ZXh0J1wiPlxyXG4gICAgICAgIDxkaXZcclxuICAgICAgICAgICAgY2xhc3M9XCJjb250ZW50LWlucHV0LW1haW4tNjI2IGNvbnRlbnQtaW5wdXQtbWFpbi10ZXh0IHt7c2l6ZX19IHRoZW1lLXt7dGhlbWV9fSB7e2NsYXNzQWRkfX0ge3tkaXNhYmxlZHN0eWxlfX1cIj5cclxuICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwiY29udGVudC1sZWZ0XCI+XHJcbiAgICAgICAgICAgICAgICA8cy1pY29uLW1hdCBjbGFzcz1cImljb25cIj5lbWFpbDwvcy1pY29uLW1hdD5cclxuICAgICAgICAgICAgPC9kaXY+IC0tPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGVudC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxpbnB1dCBcclxuICAgICAgICAgICAgICAgIFtyZWFkT25seV09XCJyZWFkT25seVwiIFxyXG4gICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCIgXHJcbiAgICAgICAgICAgICAgICBbdHlwZV09XCJ0eXBlXCIgXHJcbiAgICAgICAgICAgICAgICBbaWRdPVwiaWRcIiBcclxuICAgICAgICAgICAgICAgIFtuYW1lXT1cIm5hbWVcIiBcclxuICAgICAgICAgICAgICAgIGF1dG9jb21wbGV0ZT1cIm9mZlwiXHJcbiAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2VIb2xkZXJcIlxyXG4gICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJpbnB1dFRleHRcIlxyXG4gICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25UZXh0Q2hhbmdlKClcIlxyXG4gICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cInRoZW1lICE9ICdkZWZhdWx0J1wiIGNsYXNzPVwiY29udGVudC1yaWdodFwiPlxyXG4gICAgICAgICAgICAgICAgPHMtaWNvbi1tYXQgW3R5cGVdPVwiaW5jb25TeW1ib2w/J3N5bWJvbCc6J2ljb24nXCIgY2xhc3M9XCJpY29uIHJlcG9ydFwiPnt7aWNvbk5hbWV9fTwvcy1pY29uLW1hdD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwidGhlbWUgPT0gJ2RlZmF1bHQnICYmIGhlbHBcIiBjbGFzcz1cImNvbnRlbnQtcmlnaHRcIj5cclxuICAgICAgICAgICAgICAgIDxzLWljb24tbWF0IChjbGljayk9XCJjbGlja0ljb24oKVwiIGNsYXNzPVwiaWNvbiBjdXJzb3JcIj5oZWxwX291dGxpbmU8L3MtaWNvbi1tYXQ+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPCEtLSBjYXNlIHBhc3N3b3JkIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ3Bhc3N3b3JkJ1wiPlxyXG4gICAgICAgIDxkaXZcclxuICAgICAgICAgICAgY2xhc3M9XCJjb250ZW50LWlucHV0LW1haW4tNjI2IGNvbnRlbnQtaW5wdXQtbWFpbi1wYXNzd29yZCB7e3NpemV9fSB0aGVtZS17e3RoZW1lfX0ge3tjbGFzc0FkZH19IHt7ZGlzYWJsZWRzdHlsZX19XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb250ZW50LWxlZnRcIj5cclxuICAgICAgICAgICAgICAgIDxzLWljb24tbWF0IGNsYXNzPVwiaWNvblwiPnZwbl9rZXk8L3MtaWNvbi1tYXQ+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGVudC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxpbnB1dCBbcmVhZE9ubHldPVwicmVhZE9ubHlcIiBbaWRdPVwiaWQgPyBpZCA6ICcnXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCIgdHlwZT1cInt7dmlzaWJpbGl0eSA/ICd0ZXh0JyA6ICdwYXNzd29yZCd9fVwiIFtwbGFjZWhvbGRlcl09XCJwbGFjZUhvbGRlclwiIFsobmdNb2RlbCldPVwiaW5wdXRUZXh0XCJcclxuICAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvblRleHRDaGFuZ2UoKVwiPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRlbnQtcmlnaHRcIj5cclxuICAgICAgICAgICAgICAgIDxzLWljb24tbWF0IFt0eXBlXT1cImluY29uU3ltYm9sPydzeW1ib2wnOidpY29uJ1wiIGNsYXNzPVwiaWNvbiBjdXJzb3JcIlxyXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJ2aXNpYmlsaXR5ID0gIXZpc2liaWxpdHlcIj57e3Zpc2liaWxpdHkgPyAndmlzaWJpbGl0eScgOlxyXG4gICAgICAgICAgICAgICAgICAgICd2aXNpYmlsaXR5X29mZid9fTwvcy1pY29uLW1hdD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIGNhc2UgZW1haWwgLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInZW1haWwnXCI+XHJcbiAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICBjbGFzcz1cImNvbnRlbnQtaW5wdXQtbWFpbi02MjYgY29udGVudC1pbnB1dC1tYWluLWVtYWlsIHt7c2l6ZX19IHRoZW1lLXt7dGhlbWV9fSB7e2NsYXNzQWRkfX0ge3tkaXNhYmxlZHN0eWxlfX1cIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRlbnQtbGVmdFwiPlxyXG4gICAgICAgICAgICAgICAgPHMtaWNvbi1tYXQgY2xhc3M9XCJpY29uXCI+bWFpbF9vdXRsaW5lPC9zLWljb24tbWF0PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRlbnQtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8aW5wdXQgW3JlYWRPbmx5XT1cInJlYWRPbmx5XCIgIFtpZF09XCJpZCA/IGlkIDogJydcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBbdHlwZV09XCJ0eXBlXCIgW25hbWVdPVwibmFtZVwiIGF1dG9jb21wbGV0ZT1cIm9mZlwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlSG9sZGVyXCIgWyhuZ01vZGVsKV09XCJpbnB1dFRleHRcIiAobmdNb2RlbENoYW5nZSk9XCJvblRleHRDaGFuZ2UoKVwiPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cInRoZW1lICE9ICdkZWZhdWx0J1wiIGNsYXNzPVwiY29udGVudC1yaWdodFwiPlxyXG4gICAgICAgICAgICAgICAgPHMtaWNvbi1tYXQgW3R5cGVdPVwiaW5jb25TeW1ib2w/J3N5bWJvbCc6J2ljb24nXCIgY2xhc3M9XCJpY29uIHJlcG9ydFwiPnt7aWNvbk5hbWV9fTwvcy1pY29uLW1hdD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwidGhlbWUgPT0gJ2RlZmF1bHQnICYmIGhlbHBcIiBjbGFzcz1cImNvbnRlbnQtcmlnaHRcIj5cclxuICAgICAgICAgICAgICAgIDxzLWljb24tbWF0IChjbGljayk9XCJjbGlja0ljb24oKVwiIGNsYXNzPVwiaWNvbiBjdXJzb3JcIj5oZWxwX291dGxpbmU8L3MtaWNvbi1tYXQ+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG5cclxuICAgIDwhLS0gY2FzZSBwaG9uZSAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidwaG9uZSdcIj5cclxuICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgIGNsYXNzPVwiY29udGVudC1pbnB1dC1tYWluLTYyNiBjb250ZW50LWlucHV0LW1haW4tcGhvbmUge3tzaXplfX0gdGhlbWUte3t0aGVtZX19IHt7Y2xhc3NBZGR9fSB7e2Rpc2FibGVkc3R5bGV9fVwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGVudC1sZWZ0XCI+XHJcbiAgICAgICAgICAgICAgICA8cy1pY29uLW1hdCBjbGFzcz1cImljb25cIj5waG9uZTwvcy1pY29uLW1hdD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb250ZW50LWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGlucHV0IFtyZWFkT25seV09XCJyZWFkT25seVwiICBbaWRdPVwiaWQgPyBpZCA6ICcnXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCIgW3R5cGVdPVwidHlwZVwiIFtuYW1lXT1cIm5hbWVcIiBhdXRvY29tcGxldGU9XCJvZmZcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZUhvbGRlclwiIFsobmdNb2RlbCldPVwiaW5wdXRUZXh0XCIgKG5nTW9kZWxDaGFuZ2UpPVwib25UZXh0Q2hhbmdlKClcIj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJ0aGVtZSAhPSAnZGVmYXVsdCdcIiBjbGFzcz1cImNvbnRlbnQtcmlnaHRcIj5cclxuICAgICAgICAgICAgICAgIDxzLWljb24tbWF0IFt0eXBlXT1cImluY29uU3ltYm9sPydzeW1ib2wnOidpY29uJ1wiIGNsYXNzPVwiaWNvbiByZXBvcnRcIj57e2ljb25OYW1lfX08L3MtaWNvbi1tYXQ+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cInRoZW1lID09ICdkZWZhdWx0JyAmJiBoZWxwXCIgY2xhc3M9XCJjb250ZW50LXJpZ2h0XCI+XHJcbiAgICAgICAgICAgICAgICA8cy1pY29uLW1hdCAoY2xpY2spPVwiY2xpY2tJY29uKClcIiBjbGFzcz1cImljb24gY3Vyc29yXCI+aGVscF9vdXRsaW5lPC9zLWljb24tbWF0PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuXHJcbiAgICA8IS0tIGNhc2UgdXJsIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ3VybCdcIj5cclxuICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgIGNsYXNzPVwiY29udGVudC1pbnB1dC1tYWluLTYyNiBjb250ZW50LWlucHV0LW1haW4tdXJsIHt7c2l6ZX19IHRoZW1lLXt7dGhlbWV9fSB7e2NsYXNzQWRkfX0ge3tkaXNhYmxlZHN0eWxlfX1cIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRlbnQtbGVmdFwiPlxyXG4gICAgICAgICAgICAgICAgaHR0cDovL1xyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRlbnQtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8aW5wdXQgW3JlYWRPbmx5XT1cInJlYWRPbmx5XCIgIFtpZF09XCJpZCA/IGlkIDogJydcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBbdHlwZV09XCJ0eXBlXCIgW25hbWVdPVwibmFtZVwiIGF1dG9jb21wbGV0ZT1cIm9mZlwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlSG9sZGVyXCIgWyhuZ01vZGVsKV09XCJpbnB1dFRleHRcIiAobmdNb2RlbENoYW5nZSk9XCJvblRleHRDaGFuZ2UoKVwiPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cInRoZW1lICE9ICdkZWZhdWx0J1wiIGNsYXNzPVwiY29udGVudC1yaWdodFwiPlxyXG4gICAgICAgICAgICAgICAgPHMtaWNvbi1tYXQgW3R5cGVdPVwiaW5jb25TeW1ib2w/J3N5bWJvbCc6J2ljb24nXCIgY2xhc3M9XCJpY29uIHJlcG9ydFwiPnt7aWNvbk5hbWV9fTwvcy1pY29uLW1hdD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwidGhlbWUgPT0gJ2RlZmF1bHQnICYmIGhlbHBcIiBjbGFzcz1cImNvbnRlbnQtcmlnaHRcIj5cclxuICAgICAgICAgICAgICAgIDxzLWljb24tbWF0IChjbGljayk9XCJjbGlja0ljb24oKVwiIGNsYXNzPVwiaWNvbiBjdXJzb3JcIj5oZWxwX291dGxpbmU8L3MtaWNvbi1tYXQ+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG5cclxuICAgIDwhLS0gY2FzZSBzZWFyY2ggLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInc2VhcmNoJ1wiPlxyXG4gICAgICAgIDxkaXZcclxuICAgICAgICAgICAgY2xhc3M9XCJjb250ZW50LWlucHV0LW1haW4tNjI2IGNvbnRlbnQtaW5wdXQtbWFpbi1zZWFyY2gge3tzaXplfX0gdGhlbWUte3t0aGVtZX19IHt7Y2xhc3NBZGR9fSB7e2Rpc2FibGVkc3R5bGV9fVwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGVudC1sZWZ0XCI+XHJcbiAgICAgICAgICAgICAgICA8cy1pY29uLW1hdCBjbGFzcz1cImljb25cIj5zZWFyY2g8L3MtaWNvbi1tYXQ+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGVudC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxpbnB1dCBbcmVhZE9ubHldPVwicmVhZE9ubHlcIiAgW2lkXT1cImlkID8gaWQgOiAnJ1wiIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiIFt0eXBlXT1cInR5cGVcIiBbbmFtZV09XCJuYW1lXCIgYXV0b2NvbXBsZXRlPVwib2ZmXCJcclxuICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2VIb2xkZXJcIiBbKG5nTW9kZWwpXT1cImlucHV0VGV4dFwiIChuZ01vZGVsQ2hhbmdlKT1cIm9uVGV4dENoYW5nZSgpXCI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJjb250ZW50LXJpZ2h0XCI+XHJcbiAgICAgICAgICAgICAgICA8cy1pY29uLW1hdCBjbGFzcz1cImljb24gY3Vyc29yXCI+aGVscF9vdXRsaW5lPC9zLWljb24tbWF0PlxyXG4gICAgICAgICAgICA8L2Rpdj4gLS0+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIGNhc2UgY29sb3IgLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInY29sb3InXCI+XHJcbiAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICBjbGFzcz1cImNvbnRlbnQtaW5wdXQtbWFpbi02MjYgY29udGVudC1pbnB1dC1tYWluLWNvbG9yIHt7c2l6ZX19IHRoZW1lLXt7dGhlbWV9fSB7e2NsYXNzQWRkfX0ge3tkaXNhYmxlZHN0eWxlfX1cIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRlbnQtbGVmdFwiPlxyXG4gICAgICAgICAgICAgICAgPGlucHV0IFtyZWFkT25seV09XCJyZWFkT25seVwiICNjb2xvciBbaWRdPVwibmFtZVwiIFtuYW1lXT1cIm5hbWVcIiB0eXBlPVwiY29sb3JcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBbKG5nTW9kZWwpXT1cImlucHV0VGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25UZXh0Q2hhbmdlKClcIiBzdHlsZT1cIndpZHRoOiA0MHB4OyBwYWRkaW5nOiAwO1wiPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRlbnQtY2VudGVyXCIgKGNsaWNrKT1cIiF0aGlzLnJlYWRPbmx5ID8gdGhpcy5jb2xvci5jbGljaygpIDogbnVsbFwiPlxyXG4gICAgICAgICAgICAgICAgPGlucHV0IFtyZWFkT25seV09XCJyZWFkT25seVwiIFtpZF09XCJpZCA/IGlkIDogJydcIiBbdHlwZV09XCJ0ZXh0XCIgYXV0b2NvbXBsZXRlPVwib2ZmXCIgW3BsYWNlaG9sZGVyXT1cInBsYWNlSG9sZGVyXCIgWyhuZ01vZGVsKV09XCJpbnB1dFRleHRcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJ0aGVtZSAhPSAnZGVmYXVsdCdcIiBjbGFzcz1cImNvbnRlbnQtcmlnaHRcIj5cclxuICAgICAgICAgICAgICAgIDxzLWljb24tbWF0IFt0eXBlXT1cImluY29uU3ltYm9sPydzeW1ib2wnOidpY29uJ1wiIGNsYXNzPVwiaWNvbiByZXBvcnRcIj57e2ljb25OYW1lfX08L3MtaWNvbi1tYXQ+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cInRoZW1lID09ICdkZWZhdWx0JyAmJiBoZWxwXCIgY2xhc3M9XCJjb250ZW50LXJpZ2h0XCI+XHJcbiAgICAgICAgICAgICAgICA8cy1pY29uLW1hdCAoY2xpY2spPVwiY2xpY2tJY29uKClcIiBjbGFzcz1cImljb24gY3Vyc29yXCI+aGVscF9vdXRsaW5lPC9zLWljb24tbWF0PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gY2FzZSBkYXRlIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2RhdGUnXCI+XHJcbiAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICBjbGFzcz1cImNvbnRlbnQtaW5wdXQtbWFpbi02MjYgY29udGVudC1pbnB1dC1tYWluLXRleHQge3tzaXplfX0gdGhlbWUte3t0aGVtZX19IHt7Y2xhc3NBZGR9fSB7e2Rpc2FibGVkc3R5bGV9fVwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGVudC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxpbnB1dCBbcmVhZE9ubHldPVwicmVhZE9ubHlcIiAgW2lkXT1cImlkID8gaWQgOiAnJ1wiIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiIFt0eXBlXT1cInR5cGVcIiBbbmFtZV09XCJuYW1lXCIgYXV0b2NvbXBsZXRlPVwib2ZmXCJcclxuICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2VIb2xkZXJcIiAobmdNb2RlbENoYW5nZSk9XCJvblRleHRDaGFuZ2VWYWwoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW25nTW9kZWxdPVwiaW5wdXRUZXh0XCI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwidGhlbWUgIT0gJ2RlZmF1bHQnXCIgY2xhc3M9XCJjb250ZW50LXJpZ2h0XCI+XHJcbiAgICAgICAgICAgICAgICA8cy1pY29uLW1hdCBbdHlwZV09XCJpbmNvblN5bWJvbD8nc3ltYm9sJzonaWNvbidcIiBjbGFzcz1cImljb24gcmVwb3J0XCI+e3tpY29uTmFtZX19PC9zLWljb24tbWF0PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cInRoZW1lID09ICdkZWZhdWx0JyAmJiBoZWxwXCIgY2xhc3M9XCJjb250ZW50LXJpZ2h0XCI+XHJcbiAgICAgICAgICAgICAgICA8cy1pY29uLW1hdCAoY2xpY2spPVwiY2xpY2tJY29uKClcIiBjbGFzcz1cImljb24gY3Vyc29yXCI+aGVscF9vdXRsaW5lPC9zLWljb24tbWF0PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gY2FzZSB0aW1lIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ3RpbWUnXCI+XHJcbiAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICBjbGFzcz1cImNvbnRlbnQtaW5wdXQtbWFpbi02MjYgY29udGVudC1pbnB1dC1tYWluLXRleHQge3tzaXplfX0gdGhlbWUte3t0aGVtZX19IHt7Y2xhc3NBZGR9fSB7e2Rpc2FibGVkc3R5bGV9fVwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGVudC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxpbnB1dCBbaWRdPVwiaWQgPyBpZCA6ICcnXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCIgW3R5cGVdPVwidHlwZVwiIFtuYW1lXT1cIm5hbWVcIiBhdXRvY29tcGxldGU9XCJvZmZcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZUhvbGRlclwiIChuZ01vZGVsQ2hhbmdlKT1cIm9uVGV4dENoYW5nZVZhbCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJpbnB1dFRleHRcIj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJ0aGVtZSAhPSAnZGVmYXVsdCdcIiBjbGFzcz1cImNvbnRlbnQtcmlnaHRcIj5cclxuICAgICAgICAgICAgICAgIDxzLWljb24tbWF0IFt0eXBlXT1cImluY29uU3ltYm9sPydzeW1ib2wnOidpY29uJ1wiIGNsYXNzPVwiaWNvbiByZXBvcnRcIj57e2ljb25OYW1lfX08L3MtaWNvbi1tYXQ+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwidGhlbWUgPT0gJ2RlZmF1bHQnICYmIGhlbHBcIiBjbGFzcz1cImNvbnRlbnQtcmlnaHRcIj5cclxuICAgICAgICAgICAgICAgIDxzLWljb24tbWF0IChjbGljayk9XCJjbGlja0ljb24oKVwiIGNsYXNzPVwiaWNvbiBjdXJzb3JcIj5oZWxwX291dGxpbmU8L3MtaWNvbi1tYXQ+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPCEtLSBjYXNlIG51bWJlciAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidudW1iZXInXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1jZW50ZXJcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRlbnQtbGVmdCBtci0xXCI+XHJcbiAgICAgICAgICAgICAgICA8cy1idXR0b24gW2Rpc2FibGVkXT1cImRpc2FibGVkXCIgKGNsaWNrKT1cIm51bWJlckRlY3JlYXNlKClcIiBbc2l6ZV09XCJzaXplXCIgW3BpbGxdPVwidHJ1ZVwiIFtpbnZlcnRdPVwidHJ1ZVwiIGNsYXNzPVwiYnV0dG9uLWlucHV0LTYyNlwiPjxzLWljb24tbWF0PnJlbW92ZTwvcy1pY29uLW1hdD48L3MtYnV0dG9uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRlbnQtaW5wdXQtbWFpbi02MjYgY29udGVudC1pbnB1dC1tYWluLXRleHQgY29udGVudC1pbnB1dC1tYWluLW51bWJlciB7e3NpemV9fSB0aGVtZS17e3RoZW1lfX0ge3tjbGFzc0FkZH19IHt7ZGlzYWJsZWRzdHlsZX19IHctMTAwXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGVudC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgW3JlYWRPbmx5XT1cInJlYWRPbmx5XCIgIFtpZF09XCJpZCA/IGlkIDogJydcIiAjdHlwZU51bWJlciBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBbdHlwZV09XCJ0eXBlXCIgW25hbWVdPVwibmFtZVwiIGF1dG9jb21wbGV0ZT1cIm9mZlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZUhvbGRlclwiIFsobmdNb2RlbCldPVwiaW5wdXRUZXh0XCIgKG5nTW9kZWxDaGFuZ2UpPVwib25UZXh0Q2hhbmdlKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbbWF4XT1cIm1heFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFttaW5dPVwibWluXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3N0ZXBdPVwic3RlcFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJ0aGVtZSAhPSAnZGVmYXVsdCdcIiBjbGFzcz1cImNvbnRlbnQtcmlnaHRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8cy1pY29uLW1hdCBbdHlwZV09XCJpbmNvblN5bWJvbD8nc3ltYm9sJzonaWNvbidcIiBjbGFzcz1cImljb24gcmVwb3J0XCI+e3tpY29uTmFtZX19PC9zLWljb24tbWF0PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInRoZW1lID09ICdkZWZhdWx0JyAmJiBoZWxwXCIgY2xhc3M9XCJjb250ZW50LXJpZ2h0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHMtaWNvbi1tYXQgKGNsaWNrKT1cImNsaWNrSWNvbigpXCIgY2xhc3M9XCJpY29uIGN1cnNvclwiPmhlbHBfb3V0bGluZTwvcy1pY29uLW1hdD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRlbnQtbGVmdCBtbC0xXCI+XHJcbiAgICAgICAgICAgICAgICA8cy1idXR0b24gW2Rpc2FibGVkXT1cImRpc2FibGVkXCIgKGNsaWNrKT1cIm51bWJlckluY3JlbWVudCgpXCIgW3NpemVdPVwic2l6ZVwiIFtwaWxsXT1cInRydWVcIiBbaW52ZXJ0XT1cInRydWVcIiBjbGFzcz1cImJ1dHRvbi1pbnB1dC02MjZcIj48cy1pY29uLW1hdD5hZGQ8L3MtaWNvbi1tYXQ+PC9zLWJ1dHRvbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIGNhc2UgcmFuZ2UgLS0+XHJcbiAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ3JhbmdlJ1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb250ZW50LWlucHV0LW1haW4tcmFuZ2Uge3tzaXplfX0gdGhlbWUte3t0aGVtZX19IHt7Y2xhc3NBZGR9fSB7e2Rpc2FibGVkc3R5bGV9fVwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidG9vbHRpcCB0b29sdGlwLXt7ZGlzYWJsZWR9fVwiICN0b29sdGlwQ29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICAgICAgICAgICAgI3JhbmdlRmllbGRcclxuICAgICAgICAgICAgICAgICAgICBbcmVhZE9ubHldPVwicmVhZE9ubHlcIiBcclxuICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBcclxuICAgICAgICAgICAgICAgICAgICBbdHlwZV09XCJ0eXBlXCIgXHJcbiAgICAgICAgICAgICAgICAgICAgW2lkXT1cImlkXCIgXHJcbiAgICAgICAgICAgICAgICAgICAgW25hbWVdPVwibmFtZVwiIFxyXG4gICAgICAgICAgICAgICAgICAgIGF1dG9jb21wbGV0ZT1cIm9mZlwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlSG9sZGVyXCJcclxuICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImlucHV0VGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW21pbl09XCJtaW5cIlxyXG4gICAgICAgICAgICAgICAgICAgIFttYXhdPVwibWF4XCJcclxuICAgICAgICAgICAgICAgICAgICBbc3RlcF09XCJzdGVwXCJcclxuICAgICAgICAgICAgICAgICAgICAobW91c2Vtb3ZlKT1cImNoYW5nZVJhbmdlKHJhbmdlRmllbGQudmFsdWUpXCJcclxuICAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvblRleHRDaGFuZ2UoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKGlucHV0KT1cInVwZGF0ZVRvb2x0aXAocmFuZ2VGaWVsZC52YWx1ZSlcIlxyXG4gICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRvb2x0aXB0ZXh0XCIgI3Rvb2x0aXA+e3sgdG9vbHRpcFZhbHVlIH19PC9zcGFuPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gY2FzZSBkZWZhdWx0IC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hEZWZhdWx0PlxyXG4gICAgICAgIDxkaXZcclxuICAgICAgICAgICAgY2xhc3M9XCJjb250ZW50LWlucHV0LW1haW4tNjI2IGNvbnRlbnQtaW5wdXQtbWFpbi10ZXh0IHt7c2l6ZX19IHRoZW1lLXt7dGhlbWV9fSB7e2NsYXNzQWRkfX0ge3tkaXNhYmxlZHN0eWxlfX1cIj5cclxuICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwiY29udGVudC1sZWZ0XCI+XHJcbiAgICAgICAgICAgICAgICA8cy1pY29uLW1hdCBjbGFzcz1cImljb25cIj5lbWFpbDwvcy1pY29uLW1hdD5cclxuICAgICAgICAgICAgPC9kaXY+IC0tPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGVudC1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxpbnB1dCBbcmVhZE9ubHldPVwicmVhZE9ubHlcIiBbaWRdPVwiaWQgPyBpZCA6ICdnZW5lcmljJ1wiIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiIFt0eXBlXT1cInR5cGVcIiBbbmFtZV09XCJuYW1lXCIgYXV0b2NvbXBsZXRlPVwib2ZmXCJcclxuICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2VIb2xkZXJcIiBbKG5nTW9kZWwpXT1cImlucHV0VGV4dFwiIChuZ01vZGVsQ2hhbmdlKT1cIm9uVGV4dENoYW5nZSgpXCI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwidGhlbWUgIT0gJ2RlZmF1bHQnXCIgY2xhc3M9XCJjb250ZW50LXJpZ2h0XCI+XHJcbiAgICAgICAgICAgICAgICA8cy1pY29uLW1hdCBbdHlwZV09XCJpbmNvblN5bWJvbD8nc3ltYm9sJzonaWNvbidcIiBjbGFzcz1cImljb24gcmVwb3J0XCI+e3tpY29uTmFtZX19PC9zLWljb24tbWF0PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJ0aGVtZSA9PSAnZGVmYXVsdCcgJiYgaGVscFwiIGNsYXNzPVwiY29udGVudC1yaWdodFwiPlxyXG4gICAgICAgICAgICAgICAgPHMtaWNvbi1tYXQgKGNsaWNrKT1cImNsaWNrSWNvbigpXCIgY2xhc3M9XCJpY29uIGN1cnNvclwiPmhlbHBfb3V0bGluZTwvcy1pY29uLW1hdD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbjwvbmctY29udGFpbmVyPiJdfQ==
|