@progressio_resources/gravity-design-system 3.9.3 → 4.0.1
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/README.md +1 -1
- package/fesm2022/progressio_resources-gravity-design-system.mjs +1289 -1169
- package/fesm2022/progressio_resources-gravity-design-system.mjs.map +1 -1
- package/package.json +10 -12
- package/src/lib/styles/_functions.scss +4 -2
- package/src/lib/styles/_responsive.scss +12 -11
- package/src/lib/styles/components/_card_highlight.scss +5 -5
- package/src/lib/styles/components/_datepicker-v2.scss +2 -2
- package/src/lib/styles/components/_datepicker.scss +16 -15
- package/src/lib/styles/components/_offcanvas.scss +4 -4
- package/src/lib/styles/components/_tables.scss +9 -9
- package/src/lib/styles/foundations/colors/themes/_hero.theme.scss +1 -1
- package/src/lib/styles/foundations/colors/tokens/_hero.tokens.scss +3 -3
- package/src/lib/styles/foundations/spacing/_spacing.scss +3 -1
- package/src/lib/styles/gravity-design-system.scss +17 -17
- package/src/lib/styles/overwrite/bootstrap/_bootstrap-export.scss +2 -2
- package/src/lib/styles/overwrite/bootstrap/_modal.scss +5 -5
- package/src/lib/styles/themes/_hero.scss +4 -4
- package/src/lib/vendor/gravity-tooltip/gravity-tooltip.component.html +10 -7
- package/src/lib/vendor/gravity-tooltip/gravity-tooltip.component.sass +92 -52
- package/src/lib/vendor/gravity-tooltip/gravity-tooltip.component.ts +7 -3
- package/src/lib/vendor/gravity-tooltip/gravity-tooltip.directive.ts +46 -17
- package/src/lib/vendor/gravity-tooltip/gravity-tooltip.module.ts +7 -12
- package/types/progressio_resources-gravity-design-system.d.ts +2671 -0
- package/esm2022/lib/components/gravity-attach-file/gravity-attach-file.component.mjs +0 -82
- package/esm2022/lib/components/gravity-avatar-stack/gravity-avatar-stack.component.mjs +0 -86
- package/esm2022/lib/components/gravity-backdrop/gravity-backdrop.component.mjs +0 -17
- package/esm2022/lib/components/gravity-badge/gravity-badge.component.mjs +0 -36
- package/esm2022/lib/components/gravity-button/gravity-button.component.mjs +0 -58
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/base/bs-datepicker-container.mjs +0 -77
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/bs-datepicker-inline.component.mjs +0 -129
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/bs-datepicker-inline.config.mjs +0 -14
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/bs-datepicker.callbacks.mjs +0 -13
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/bs-datepicker.component.mjs +0 -211
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/bs-datepicker.config.mjs +0 -46
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/bs-daterangepicker-inline.component.mjs +0 -130
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/bs-daterangepicker-inline.config.mjs +0 -18
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/bs-daterangepicker.component.mjs +0 -218
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/bs-daterangepicker.config.mjs +0 -18
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/components/bs-datepicker-container.component.mjs +0 -137
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/components/bs-datepicker-inline-container.component.mjs +0 -35
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/components/bs-datepicker-navigation-view/bs-datepicker-navigation-view.component.mjs +0 -69
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/components/bs-daterangepicker-container.component.mjs +0 -193
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/components/bs-daterangepicker-inline-container.component.mjs +0 -35
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/components/bs-days-calendar-view/bs-datepicker-day-decorator.directive.mjs +0 -30
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/components/bs-days-calendar-view/bs-days-calendar-view.component.mjs +0 -57
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/components/bs-months-calendar-view/bs-months-calendar-view.component.mjs +0 -57
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/components/bs-years-calendar-view/bs-years-calendar-view.component.mjs +0 -57
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/datepicker-animations.mjs +0 -16
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/engine/calc-days-calendar.mjs +0 -16
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/engine/flag-days-calendar.mjs +0 -53
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/engine/flag-months-calendar.mjs +0 -39
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/engine/flag-years-calendar.mjs +0 -36
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/engine/format-days-calendar.mjs +0 -23
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/engine/format-months-calendar.mjs +0 -23
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/engine/format-years-calendar.mjs +0 -43
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/engine/view-mode.mjs +0 -4
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/models/index.mjs +0 -7
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/reducer/_defaults.mjs +0 -6
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/reducer/bs-datepicker.actions.mjs +0 -64
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/reducer/bs-datepicker.effects.mjs +0 -128
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/reducer/bs-datepicker.reducer.mjs +0 -301
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/reducer/bs-datepicker.state.mjs +0 -16
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/reducer/bs-datepicker.store.mjs +0 -20
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/services/header-type.service.mjs +0 -28
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/utils/bs-calendar-utils.mjs +0 -74
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/utils/date-abbreviation.pipe.mjs +0 -74
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/utils/matrix-utils.mjs +0 -14
- package/esm2022/lib/components/gravity-calendar-v2/gravity-calendar-v2.component.mjs +0 -259
- package/esm2022/lib/components/gravity-card-button/gravity-card-button.component.mjs +0 -41
- package/esm2022/lib/components/gravity-checkbox/gravity-checkbox.component.mjs +0 -52
- package/esm2022/lib/components/gravity-chip-group/gravity-chip-group.component.mjs +0 -45
- package/esm2022/lib/components/gravity-currency/gravity-currency.component.mjs +0 -26
- package/esm2022/lib/components/gravity-currency-display-v2/gravity-currency-display-v2.component.mjs +0 -26
- package/esm2022/lib/components/gravity-currency-dropdown-short/gravity-currency-dropdown-short.component.mjs +0 -79
- package/esm2022/lib/components/gravity-data-views-v2/gravity-data-views-v2.component.mjs +0 -48
- package/esm2022/lib/components/gravity-date-picker/components/day-calendar/day-calendar.component.mjs +0 -273
- package/esm2022/lib/components/gravity-date-picker/components/day-calendar/range-days-calendar.utils.mjs +0 -241
- package/esm2022/lib/components/gravity-date-picker/components/month-calendar/month-calendar.component.mjs +0 -109
- package/esm2022/lib/components/gravity-date-picker/components/year-calendar/year-calendar.component.mjs +0 -105
- package/esm2022/lib/components/gravity-date-picker/gravity-date-picker.component.mjs +0 -84
- package/esm2022/lib/components/gravity-date-picker/shared/date-picker.constants.mjs +0 -61
- package/esm2022/lib/components/gravity-date-picker/shared/date-picker.modal.mjs +0 -2
- package/esm2022/lib/components/gravity-date-picker/shared/date-picker.utils.mjs +0 -110
- package/esm2022/lib/components/gravity-detail-container/gravity-detail-container.component.mjs +0 -93
- package/esm2022/lib/components/gravity-dialog/gravity-dialog.component.mjs +0 -26
- package/esm2022/lib/components/gravity-dropdown-label/gravity-dropdown-label.component.mjs +0 -65
- package/esm2022/lib/components/gravity-dropdown-list/filter-by.pipe.mjs +0 -44
- package/esm2022/lib/components/gravity-dropdown-list/gravity-dropdown-list.component.mjs +0 -542
- package/esm2022/lib/components/gravity-dropdown-list-display/display-currency-items.mjs +0 -2
- package/esm2022/lib/components/gravity-dropdown-list-display/gravity-dropdown-list-display.component.mjs +0 -203
- package/esm2022/lib/components/gravity-editable-input/gravity-editable-input.component.mjs +0 -52
- package/esm2022/lib/components/gravity-generic-avatar/gravity-generic-avatar.component.mjs +0 -33
- package/esm2022/lib/components/gravity-generic-avatar-secondary/gravity-generic-avatar-secondary.component.mjs +0 -28
- package/esm2022/lib/components/gravity-icon/gravity-icon.component.mjs +0 -120
- package/esm2022/lib/components/gravity-icon-button/gravity-icon-button.component.mjs +0 -54
- package/esm2022/lib/components/gravity-link/gravity-link.component.mjs +0 -39
- package/esm2022/lib/components/gravity-modal/gravity-modal.component.mjs +0 -44
- package/esm2022/lib/components/gravity-modal/gravity-modal.model.mjs +0 -2
- package/esm2022/lib/components/gravity-multi-language/gravity-multi-language.component.mjs +0 -31
- package/esm2022/lib/components/gravity-navigation-card/gravity-navigation-card.component.mjs +0 -54
- package/esm2022/lib/components/gravity-network-pill/gravity-network-pill.component.mjs +0 -33
- package/esm2022/lib/components/gravity-notification/gravity-notification-content.interface.mjs +0 -2
- package/esm2022/lib/components/gravity-notification/gravity-notification.component.mjs +0 -33
- package/esm2022/lib/components/gravity-notification-instant/gravity-notification-instant-container.component.mjs +0 -32
- package/esm2022/lib/components/gravity-pagination/gravity-pagination.component.mjs +0 -113
- package/esm2022/lib/components/gravity-push-notifications/gravity-push-notifications.component.mjs +0 -55
- package/esm2022/lib/components/gravity-radio-button/gravity-radio-button.component.mjs +0 -34
- package/esm2022/lib/components/gravity-segmented-button/gravity-segmented-button.component.mjs +0 -85
- package/esm2022/lib/components/gravity-status-indicator/gravity-status-indicator.component.mjs +0 -38
- package/esm2022/lib/components/gravity-stepper/gravity-stepper.component.mjs +0 -37
- package/esm2022/lib/components/gravity-switch/gravity-switch.component.mjs +0 -56
- package/esm2022/lib/components/gravity-tab-primary/gravity-tab-primary.component.mjs +0 -34
- package/esm2022/lib/components/gravity-tab-secondary/gravity-tab-secondary.component.mjs +0 -36
- package/esm2022/lib/components/gravity-table/gravity-table.component.mjs +0 -212
- package/esm2022/lib/components/gravity-tables-v2/gravity-tables-v2.component.mjs +0 -18
- package/esm2022/lib/components/gravity-text-field/gravity-text-field.component.mjs +0 -294
- package/esm2022/lib/components/gravity-text-field-amount-only/gravity-text-field-amount-only.component.mjs +0 -160
- package/esm2022/lib/components/gravity-text-field-number-only/gravity-text-field-number-only.component.mjs +0 -126
- package/esm2022/lib/components/gravity-tooltip-container/gravity-tooltip-container.component.mjs +0 -44
- package/esm2022/lib/components/gravity-tree-view/gravity-tree-view.component.mjs +0 -69
- package/esm2022/lib/components/gravity-tree-view/models/node-item.mjs +0 -2
- package/esm2022/lib/components/gravity-tree-view/models/node-selected-state.mjs +0 -7
- package/esm2022/lib/components/gravity-tree-view/models/node-state.mjs +0 -2
- package/esm2022/lib/components/gravity-tree-view/models/tree-callbacks.mjs +0 -2
- package/esm2022/lib/components/gravity-tree-view/node/node-checkbox/node-checkbox.component.mjs +0 -26
- package/esm2022/lib/components/gravity-tree-view/node/node-name/node-name.component.mjs +0 -13
- package/esm2022/lib/components/gravity-tree-view/node/node-toggle/node-toggle.component.mjs +0 -15
- package/esm2022/lib/components/gravity-tree-view/node/node.component.mjs +0 -17
- package/esm2022/lib/components/gravity-tree-view/service/tree-service.mjs +0 -242
- package/esm2022/lib/gravity-design-system.module.mjs +0 -370
- package/esm2022/lib/layout/gravity-header/gravity-header.component.mjs +0 -72
- package/esm2022/lib/layout/gravity-menu/gravity-menu.component.mjs +0 -232
- package/esm2022/lib/model/gravity-menu-items.model.mjs +0 -5
- package/esm2022/lib/model/gravity-push-notifications.model.mjs +0 -2
- package/esm2022/lib/services/gravity-dialog-manager.service.mjs +0 -48
- package/esm2022/lib/services/gravity-dropdown-manager.service.mjs +0 -21
- package/esm2022/lib/services/gravity-instant-notifications.service.mjs +0 -23
- package/esm2022/lib/services/gravity-push-notifications-service.service.mjs +0 -70
- package/esm2022/lib/services/gravity-responsive.service.mjs +0 -47
- package/esm2022/lib/vendor/gravity-tooltip/gravity-tooltip.component.mjs +0 -249
- package/esm2022/lib/vendor/gravity-tooltip/gravity-tooltip.directive.mjs +0 -494
- package/esm2022/lib/vendor/gravity-tooltip/gravity-tooltip.module.mjs +0 -41
- package/esm2022/lib/vendor/gravity-tooltip/index.mjs +0 -4
- package/esm2022/lib/vendor/gravity-tooltip/options.interface.mjs +0 -2
- package/esm2022/lib/vendor/gravity-tooltip/options.mjs +0 -38
- package/esm2022/lib/vendor/gravity-tooltip/options.service.mjs +0 -7
- package/esm2022/progressio_resources-gravity-design-system.mjs +0 -5
- package/esm2022/public-api.mjs +0 -62
- package/index.d.ts +0 -5
- package/lib/components/gravity-attach-file/gravity-attach-file.component.d.ts +0 -22
- package/lib/components/gravity-avatar-stack/gravity-avatar-stack.component.d.ts +0 -22
- package/lib/components/gravity-backdrop/gravity-backdrop.component.d.ts +0 -6
- package/lib/components/gravity-badge/gravity-badge.component.d.ts +0 -12
- package/lib/components/gravity-button/gravity-button.component.d.ts +0 -17
- package/lib/components/gravity-calendar-v2/datepicker/base/bs-datepicker-container.d.ts +0 -42
- package/lib/components/gravity-calendar-v2/datepicker/bs-datepicker-inline.component.d.ts +0 -40
- package/lib/components/gravity-calendar-v2/datepicker/bs-datepicker-inline.config.d.ts +0 -6
- package/lib/components/gravity-calendar-v2/datepicker/bs-datepicker.callbacks.d.ts +0 -6
- package/lib/components/gravity-calendar-v2/datepicker/bs-datepicker.component.d.ts +0 -66
- package/lib/components/gravity-calendar-v2/datepicker/bs-datepicker.config.d.ts +0 -53
- package/lib/components/gravity-calendar-v2/datepicker/bs-daterangepicker-inline.component.d.ts +0 -37
- package/lib/components/gravity-calendar-v2/datepicker/bs-daterangepicker-inline.config.d.ts +0 -7
- package/lib/components/gravity-calendar-v2/datepicker/bs-daterangepicker.component.d.ts +0 -61
- package/lib/components/gravity-calendar-v2/datepicker/bs-daterangepicker.config.d.ts +0 -7
- package/lib/components/gravity-calendar-v2/datepicker/components/bs-datepicker-container.component.d.ts +0 -36
- package/lib/components/gravity-calendar-v2/datepicker/components/bs-datepicker-inline-container.component.d.ts +0 -15
- package/lib/components/gravity-calendar-v2/datepicker/components/bs-datepicker-navigation-view/bs-datepicker-navigation-view.component.d.ts +0 -26
- package/lib/components/gravity-calendar-v2/datepicker/components/bs-daterangepicker-container.component.d.ts +0 -42
- package/lib/components/gravity-calendar-v2/datepicker/components/bs-daterangepicker-inline-container.component.d.ts +0 -15
- package/lib/components/gravity-calendar-v2/datepicker/components/bs-days-calendar-view/bs-datepicker-day-decorator.directive.d.ts +0 -7
- package/lib/components/gravity-calendar-v2/datepicker/components/bs-days-calendar-view/bs-days-calendar-view.component.d.ts +0 -25
- package/lib/components/gravity-calendar-v2/datepicker/components/bs-months-calendar-view/bs-months-calendar-view.component.d.ts +0 -23
- package/lib/components/gravity-calendar-v2/datepicker/components/bs-years-calendar-view/bs-years-calendar-view.component.d.ts +0 -22
- package/lib/components/gravity-calendar-v2/datepicker/datepicker-animations.d.ts +0 -3
- package/lib/components/gravity-calendar-v2/datepicker/engine/calc-days-calendar.d.ts +0 -2
- package/lib/components/gravity-calendar-v2/datepicker/engine/flag-days-calendar.d.ts +0 -12
- package/lib/components/gravity-calendar-v2/datepicker/engine/flag-months-calendar.d.ts +0 -12
- package/lib/components/gravity-calendar-v2/datepicker/engine/flag-years-calendar.d.ts +0 -13
- package/lib/components/gravity-calendar-v2/datepicker/engine/format-days-calendar.d.ts +0 -2
- package/lib/components/gravity-calendar-v2/datepicker/engine/format-months-calendar.d.ts +0 -2
- package/lib/components/gravity-calendar-v2/datepicker/engine/format-years-calendar.d.ts +0 -4
- package/lib/components/gravity-calendar-v2/datepicker/engine/view-mode.d.ts +0 -2
- package/lib/components/gravity-calendar-v2/datepicker/models/index.d.ts +0 -86
- package/lib/components/gravity-calendar-v2/datepicker/reducer/_defaults.d.ts +0 -3
- package/lib/components/gravity-calendar-v2/datepicker/reducer/bs-datepicker.actions.d.ts +0 -34
- package/lib/components/gravity-calendar-v2/datepicker/reducer/bs-datepicker.effects.d.ts +0 -34
- package/lib/components/gravity-calendar-v2/datepicker/reducer/bs-datepicker.reducer.d.ts +0 -3
- package/lib/components/gravity-calendar-v2/datepicker/reducer/bs-datepicker.state.d.ts +0 -34
- package/lib/components/gravity-calendar-v2/datepicker/reducer/bs-datepicker.store.d.ts +0 -8
- package/lib/components/gravity-calendar-v2/datepicker/services/header-type.service.d.ts +0 -17
- package/lib/components/gravity-calendar-v2/datepicker/utils/bs-calendar-utils.d.ts +0 -13
- package/lib/components/gravity-calendar-v2/datepicker/utils/date-abbreviation.pipe.d.ts +0 -13
- package/lib/components/gravity-calendar-v2/datepicker/utils/matrix-utils.d.ts +0 -9
- package/lib/components/gravity-calendar-v2/gravity-calendar-v2.component.d.ts +0 -57
- package/lib/components/gravity-card-button/gravity-card-button.component.d.ts +0 -15
- package/lib/components/gravity-checkbox/gravity-checkbox.component.d.ts +0 -21
- package/lib/components/gravity-chip-group/gravity-chip-group.component.d.ts +0 -19
- package/lib/components/gravity-currency/gravity-currency.component.d.ts +0 -13
- package/lib/components/gravity-currency-display-v2/gravity-currency-display-v2.component.d.ts +0 -16
- package/lib/components/gravity-currency-dropdown-short/gravity-currency-dropdown-short.component.d.ts +0 -32
- package/lib/components/gravity-data-views-v2/gravity-data-views-v2.component.d.ts +0 -22
- package/lib/components/gravity-date-picker/components/day-calendar/day-calendar.component.d.ts +0 -105
- package/lib/components/gravity-date-picker/components/day-calendar/range-days-calendar.utils.d.ts +0 -12
- package/lib/components/gravity-date-picker/components/month-calendar/month-calendar.component.d.ts +0 -71
- package/lib/components/gravity-date-picker/components/year-calendar/year-calendar.component.d.ts +0 -70
- package/lib/components/gravity-date-picker/gravity-date-picker.component.d.ts +0 -64
- package/lib/components/gravity-date-picker/shared/date-picker.constants.d.ts +0 -52
- package/lib/components/gravity-date-picker/shared/date-picker.modal.d.ts +0 -25
- package/lib/components/gravity-date-picker/shared/date-picker.utils.d.ts +0 -10
- package/lib/components/gravity-detail-container/gravity-detail-container.component.d.ts +0 -28
- package/lib/components/gravity-dialog/gravity-dialog.component.d.ts +0 -22
- package/lib/components/gravity-dropdown-label/gravity-dropdown-label.component.d.ts +0 -19
- package/lib/components/gravity-dropdown-list/filter-by.pipe.d.ts +0 -10
- package/lib/components/gravity-dropdown-list/gravity-dropdown-list.component.d.ts +0 -84
- package/lib/components/gravity-dropdown-list-display/display-currency-items.d.ts +0 -12
- package/lib/components/gravity-dropdown-list-display/gravity-dropdown-list-display.component.d.ts +0 -52
- package/lib/components/gravity-editable-input/gravity-editable-input.component.d.ts +0 -19
- package/lib/components/gravity-generic-avatar/gravity-generic-avatar.component.d.ts +0 -11
- package/lib/components/gravity-generic-avatar-secondary/gravity-generic-avatar-secondary.component.d.ts +0 -11
- package/lib/components/gravity-icon/gravity-icon.component.d.ts +0 -85
- package/lib/components/gravity-icon-button/gravity-icon-button.component.d.ts +0 -22
- package/lib/components/gravity-link/gravity-link.component.d.ts +0 -14
- package/lib/components/gravity-modal/gravity-modal.component.d.ts +0 -19
- package/lib/components/gravity-modal/gravity-modal.model.d.ts +0 -17
- package/lib/components/gravity-multi-language/gravity-multi-language.component.d.ts +0 -12
- package/lib/components/gravity-navigation-card/gravity-navigation-card.component.d.ts +0 -24
- package/lib/components/gravity-network-pill/gravity-network-pill.component.d.ts +0 -14
- package/lib/components/gravity-notification/gravity-notification-content.interface.d.ts +0 -7
- package/lib/components/gravity-notification/gravity-notification.component.d.ts +0 -12
- package/lib/components/gravity-notification-instant/gravity-notification-instant-container.component.d.ts +0 -10
- package/lib/components/gravity-pagination/gravity-pagination.component.d.ts +0 -24
- package/lib/components/gravity-push-notifications/gravity-push-notifications.component.d.ts +0 -21
- package/lib/components/gravity-radio-button/gravity-radio-button.component.d.ts +0 -14
- package/lib/components/gravity-segmented-button/gravity-segmented-button.component.d.ts +0 -33
- package/lib/components/gravity-status-indicator/gravity-status-indicator.component.d.ts +0 -14
- package/lib/components/gravity-stepper/gravity-stepper.component.d.ts +0 -13
- package/lib/components/gravity-switch/gravity-switch.component.d.ts +0 -24
- package/lib/components/gravity-tab-primary/gravity-tab-primary.component.d.ts +0 -16
- package/lib/components/gravity-tab-secondary/gravity-tab-secondary.component.d.ts +0 -17
- package/lib/components/gravity-table/gravity-table.component.d.ts +0 -25
- package/lib/components/gravity-tables-v2/gravity-tables-v2.component.d.ts +0 -7
- package/lib/components/gravity-text-field/gravity-text-field.component.d.ts +0 -62
- package/lib/components/gravity-text-field-amount-only/gravity-text-field-amount-only.component.d.ts +0 -43
- package/lib/components/gravity-text-field-number-only/gravity-text-field-number-only.component.d.ts +0 -30
- package/lib/components/gravity-tooltip-container/gravity-tooltip-container.component.d.ts +0 -40
- package/lib/components/gravity-tree-view/gravity-tree-view.component.d.ts +0 -21
- package/lib/components/gravity-tree-view/models/node-item.d.ts +0 -10
- package/lib/components/gravity-tree-view/models/node-selected-state.d.ts +0 -5
- package/lib/components/gravity-tree-view/models/node-state.d.ts +0 -14
- package/lib/components/gravity-tree-view/models/tree-callbacks.d.ts +0 -9
- package/lib/components/gravity-tree-view/node/node-checkbox/node-checkbox.component.d.ts +0 -11
- package/lib/components/gravity-tree-view/node/node-name/node-name.component.d.ts +0 -7
- package/lib/components/gravity-tree-view/node/node-toggle/node-toggle.component.d.ts +0 -7
- package/lib/components/gravity-tree-view/node/node.component.d.ts +0 -7
- package/lib/components/gravity-tree-view/service/tree-service.d.ts +0 -42
- package/lib/gravity-design-system.module.d.ts +0 -85
- package/lib/layout/gravity-header/gravity-header.component.d.ts +0 -36
- package/lib/layout/gravity-menu/gravity-menu.component.d.ts +0 -53
- package/lib/model/gravity-menu-items.model.d.ts +0 -31
- package/lib/model/gravity-push-notifications.model.d.ts +0 -22
- package/lib/services/gravity-dialog-manager.service.d.ts +0 -17
- package/lib/services/gravity-dropdown-manager.service.d.ts +0 -12
- package/lib/services/gravity-instant-notifications.service.d.ts +0 -10
- package/lib/services/gravity-push-notifications-service.service.d.ts +0 -14
- package/lib/services/gravity-responsive.service.d.ts +0 -11
- package/lib/vendor/gravity-tooltip/gravity-tooltip.component.d.ts +0 -44
- package/lib/vendor/gravity-tooltip/gravity-tooltip.directive.d.ts +0 -113
- package/lib/vendor/gravity-tooltip/gravity-tooltip.module.d.ts +0 -12
- package/lib/vendor/gravity-tooltip/index.d.ts +0 -3
- package/lib/vendor/gravity-tooltip/options.d.ts +0 -24
- package/lib/vendor/gravity-tooltip/options.interface.d.ts +0 -42
- package/lib/vendor/gravity-tooltip/options.service.d.ts +0 -7
- package/public-api.d.ts +0 -53
|
@@ -1,294 +0,0 @@
|
|
|
1
|
-
import { GravityIconComponent } from "../gravity-icon/gravity-icon.component";
|
|
2
|
-
import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/common";
|
|
5
|
-
import * as i2 from "../gravity-icon/gravity-icon.component";
|
|
6
|
-
export class GravityTextFieldComponent {
|
|
7
|
-
constructor() {
|
|
8
|
-
this.leftIconResponse = new EventEmitter();
|
|
9
|
-
this.rightIconResponse = new EventEmitter();
|
|
10
|
-
this.textFieldValueResponse = new EventEmitter();
|
|
11
|
-
// Component
|
|
12
|
-
this.currentLang = 'en';
|
|
13
|
-
this.customState = 'default';
|
|
14
|
-
this.prefix = "";
|
|
15
|
-
this.textFieldType = "input";
|
|
16
|
-
// Icons
|
|
17
|
-
this.clickOnLeftIcon = false;
|
|
18
|
-
this.clickOnRightIcon = false;
|
|
19
|
-
// Input | Textarea
|
|
20
|
-
this.autocomplete = 'off';
|
|
21
|
-
this.inputContentType = "text";
|
|
22
|
-
// Sizes
|
|
23
|
-
this.size = 'md';
|
|
24
|
-
this.width = 'short';
|
|
25
|
-
this.characterCounter = false;
|
|
26
|
-
this.passwordRequirements = [];
|
|
27
|
-
this.supportTextIcon = '';
|
|
28
|
-
this.focusInput = false;
|
|
29
|
-
this.hasUserTyped = false;
|
|
30
|
-
this.isPasswordField = false;
|
|
31
|
-
this.characterLimit = false;
|
|
32
|
-
this.allPasswordRequirementsValid = false;
|
|
33
|
-
this.inputValue = '';
|
|
34
|
-
}
|
|
35
|
-
ngOnInit() {
|
|
36
|
-
this.inputValue = this.customInputValue ? this.customInputValue : '';
|
|
37
|
-
}
|
|
38
|
-
ngOnChanges(changes) {
|
|
39
|
-
if (changes['customInputValue']) {
|
|
40
|
-
this.inputValue = changes['customInputValue'].currentValue ? changes['customInputValue'].currentValue : '';
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
focus() {
|
|
44
|
-
this.inputElement.nativeElement.focus();
|
|
45
|
-
}
|
|
46
|
-
isFocused() {
|
|
47
|
-
return document.activeElement === this.inputElement.nativeElement;
|
|
48
|
-
}
|
|
49
|
-
getPlaceholder() {
|
|
50
|
-
if (this.placeholder && this.placeholder != '') {
|
|
51
|
-
return this.placeholder;
|
|
52
|
-
}
|
|
53
|
-
else {
|
|
54
|
-
return this.label;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
clearInput() {
|
|
58
|
-
this.changeInputValue(true);
|
|
59
|
-
}
|
|
60
|
-
changeInputValue(clearInput = false) {
|
|
61
|
-
this.hasUserTyped = true;
|
|
62
|
-
if (clearInput) {
|
|
63
|
-
this.inputValue = '';
|
|
64
|
-
}
|
|
65
|
-
else if (this.textFieldType == 'input') {
|
|
66
|
-
this.inputValue = this.inputElement.nativeElement.value;
|
|
67
|
-
}
|
|
68
|
-
else {
|
|
69
|
-
this.inputValue = this.textAreaElement.nativeElement.value;
|
|
70
|
-
}
|
|
71
|
-
if (this.inputValue == '') {
|
|
72
|
-
this.textFieldValueResponse.emit('');
|
|
73
|
-
}
|
|
74
|
-
else {
|
|
75
|
-
this.textFieldValueResponse.emit(this.prefix + this.inputValue);
|
|
76
|
-
}
|
|
77
|
-
if (this.inputValue.length == this.validations?.maxLength || this.inputValue.length == 200) {
|
|
78
|
-
this.supportText = this.currentLang == 'en' ? 'Character limit reached' : 'Límite de caracteres alcanzado';
|
|
79
|
-
this.characterLimit = true;
|
|
80
|
-
}
|
|
81
|
-
else if (this.characterLimit) {
|
|
82
|
-
this.supportText = '';
|
|
83
|
-
this.characterLimit = false;
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
handleIconClick(iconPosition) {
|
|
87
|
-
if (iconPosition == 'left' && this.clickOnLeftIcon) {
|
|
88
|
-
this.leftIconResponse.emit();
|
|
89
|
-
}
|
|
90
|
-
if (iconPosition == 'right' && this.clickOnRightIcon) {
|
|
91
|
-
this.rightIconResponse.emit();
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
getTextFieldStatus() {
|
|
95
|
-
if (this.customState == 'default') {
|
|
96
|
-
if (!this.focusInput && !this.inputValue) {
|
|
97
|
-
return 'active';
|
|
98
|
-
}
|
|
99
|
-
else if (!this.focusInput && this.inputValue) {
|
|
100
|
-
return 'typed';
|
|
101
|
-
}
|
|
102
|
-
else {
|
|
103
|
-
return 'typing';
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
else {
|
|
107
|
-
return this.customState;
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
getTextFieldInputFontSize() {
|
|
111
|
-
return 'hr-label ' + this.size + '-regular';
|
|
112
|
-
}
|
|
113
|
-
isNewIcon(iconPosition) {
|
|
114
|
-
if (iconPosition == 'left') {
|
|
115
|
-
return GravityIconComponent.isNewIcon(this.iconLeft);
|
|
116
|
-
}
|
|
117
|
-
else {
|
|
118
|
-
return GravityIconComponent.isNewIcon(this.iconRight);
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
get hasInvalidPasswordRequirements() {
|
|
122
|
-
if (this.passwordRequirements.length > 0) {
|
|
123
|
-
this.isPasswordField = true;
|
|
124
|
-
const hasInvalid = this.passwordRequirements?.some(r => !r.isValid);
|
|
125
|
-
if (this.hasUserTyped) {
|
|
126
|
-
//Requirements invalid
|
|
127
|
-
if (hasInvalid) {
|
|
128
|
-
if (!this.focusInput || this.allPasswordRequirementsValid) {
|
|
129
|
-
this.customState = 'typed-error';
|
|
130
|
-
this.supportText = this.currentLang === 'en' ? 'Must meet password requirements' : 'Debe cumplir con los requisitos de contraseña';
|
|
131
|
-
this.allPasswordRequirementsValid = false;
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
//Requirements valid
|
|
135
|
-
else {
|
|
136
|
-
this.customState = 'typed-positive';
|
|
137
|
-
this.supportText = this.currentLang === 'en' ? 'Requirements applied' : 'Requisitos aplicados';
|
|
138
|
-
this.allPasswordRequirementsValid = true;
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
return hasInvalid;
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
onKeyDownEvent($event) {
|
|
145
|
-
if (this.inputContentType == 'number') {
|
|
146
|
-
let navigationKeys = ['Backspace', 'Delete', 'Tab', 'Escape', 'Enter', 'Home', 'End', 'ArrowLeft', 'ArrowRight', 'Clear', 'Copy', 'Paste'];
|
|
147
|
-
if (navigationKeys.indexOf($event.key) > -1 || // Allow: navigation keys: backspace, delete, arrows etc.
|
|
148
|
-
($event.key === 'a' && $event.ctrlKey === true) || // Allow: Ctrl+A
|
|
149
|
-
($event.key === 'c' && $event.ctrlKey === true) || // Allow: Ctrl+C
|
|
150
|
-
($event.key === 'v' && $event.ctrlKey === true) || // Allow: Ctrl+V
|
|
151
|
-
($event.key === 'x' && $event.ctrlKey === true) || // Allow: Ctrl+X
|
|
152
|
-
($event.key === 'a' && $event.metaKey === true) || // Allow: Cmd+A (Mac)
|
|
153
|
-
($event.key === 'c' && $event.metaKey === true) || // Allow: Cmd+C (Mac)
|
|
154
|
-
($event.key === 'v' && $event.metaKey === true) || // Allow: Cmd+V (Mac)
|
|
155
|
-
($event.key === 'x' && $event.metaKey === true) || // Allow: Cmd+X (Mac)
|
|
156
|
-
($event.key === '.') || ($event.key === ',') // Allow: dot and comma for decimal
|
|
157
|
-
) {
|
|
158
|
-
// let it happen, don't do anything
|
|
159
|
-
return;
|
|
160
|
-
}
|
|
161
|
-
// Ensure that it is a number and stop the keypress
|
|
162
|
-
if (($event.shiftKey || ($event.keyCode < 48 || $event.keyCode > 57)) &&
|
|
163
|
-
($event.keyCode < 96 || $event.keyCode > 105)) {
|
|
164
|
-
$event.preventDefault();
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
if (this.inputContentType == 'date') {
|
|
168
|
-
const allowedKeys = [
|
|
169
|
-
'Backspace', 'Delete', 'Tab', 'Escape', 'Enter',
|
|
170
|
-
'ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown'
|
|
171
|
-
];
|
|
172
|
-
if (allowedKeys.includes($event.key) || $event.metaKey || $event.ctrlKey) {
|
|
173
|
-
return;
|
|
174
|
-
}
|
|
175
|
-
if (/\D/.test($event.key) && $event.key !== '/') {
|
|
176
|
-
$event.preventDefault();
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
formatDateInput(event) {
|
|
181
|
-
const el = event.target;
|
|
182
|
-
let value = el.value;
|
|
183
|
-
let formatted = '';
|
|
184
|
-
let cursorPosition = el.selectionStart || 0;
|
|
185
|
-
const isDeleting = event.inputType === 'deleteContentBackward' ||
|
|
186
|
-
event.inputType === 'deleteContentForward';
|
|
187
|
-
if ((value.length === 3 && value[2] === '/') ||
|
|
188
|
-
(value.length === 6 && value[5] === '/')) {
|
|
189
|
-
formatted = value;
|
|
190
|
-
}
|
|
191
|
-
else if (/\D/.test(value[value.length - 1])) {
|
|
192
|
-
formatted = value.slice(0, -1);
|
|
193
|
-
cursorPosition = Math.max(0, cursorPosition - 1);
|
|
194
|
-
if (formatted.length === 1 || formatted.length === 4) {
|
|
195
|
-
cursorPosition++;
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
else {
|
|
199
|
-
const numbers = value.replace(/\//g, '');
|
|
200
|
-
let day = numbers.slice(0, 2);
|
|
201
|
-
let month = numbers.slice(2, 4);
|
|
202
|
-
let year = numbers.slice(4, 8);
|
|
203
|
-
if (day.length > 0)
|
|
204
|
-
formatted += day;
|
|
205
|
-
if (day.length === 2 && month.length > 0)
|
|
206
|
-
formatted += '/';
|
|
207
|
-
if (month.length > 0)
|
|
208
|
-
formatted += month;
|
|
209
|
-
if (month.length === 2 && year.length > 0)
|
|
210
|
-
formatted += '/';
|
|
211
|
-
if (year.length > 0)
|
|
212
|
-
formatted += year;
|
|
213
|
-
const currentLength = value.length;
|
|
214
|
-
const newLength = formatted.length;
|
|
215
|
-
if (newLength > currentLength && !isDeleting) {
|
|
216
|
-
cursorPosition++;
|
|
217
|
-
}
|
|
218
|
-
}
|
|
219
|
-
el.value = formatted;
|
|
220
|
-
this.inputValue = formatted;
|
|
221
|
-
el.setSelectionRange(cursorPosition, cursorPosition);
|
|
222
|
-
this.changeInputValue();
|
|
223
|
-
}
|
|
224
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GravityTextFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
225
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GravityTextFieldComponent, selector: "gravity-text-field", inputs: { currentLang: "currentLang", customInputValue: "customInputValue", customState: "customState", cypressTag: "cypressTag", label: "label", prefix: "prefix", required: "required", supportText: "supportText", textFieldType: "textFieldType", clickOnLeftIcon: "clickOnLeftIcon", clickOnRightIcon: "clickOnRightIcon", iconColor: "iconColor", iconLeft: "iconLeft", iconRight: "iconRight", autocomplete: "autocomplete", inputContentType: "inputContentType", placeholder: "placeholder", validations: "validations", size: "size", width: "width", labelExtraText: "labelExtraText", characterCounter: "characterCounter", passwordRequirements: "passwordRequirements", supportTextIcon: "supportTextIcon" }, outputs: { leftIconResponse: "clickIconLeft", rightIconResponse: "clickIconRight", textFieldValueResponse: "response" }, viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["inputElement"], descendants: true }, { propertyName: "textAreaElement", first: true, predicate: ["textAreaElement"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<label class=\"hr-label sm-bold {{getTextFieldStatus()}}\" [class.custom-label-size]=\"size == 'sm'\" *ngIf=\"label\">\n {{ label }}\n <span *ngIf=\"required || getTextFieldStatus() == 'typed-error'\">* </span>\n <span [class.extra-text]=\"labelExtraText\" *ngIf=\"labelExtraText\">{{ labelExtraText }}</span>\n</label>\n<div class=\"gravity-input-field {{textFieldType}} {{size}} {{width}}-width {{getTextFieldStatus()}}\">\n <ng-container *ngIf=\"iconLeft\">\n <ng-container [ngTemplateOutlet]=\"icons\" [ngTemplateOutletContext]=\"{iconPosition: 'left'}\"></ng-container>\n </ng-container>\n <span class=\"{{getTextFieldInputFontSize()}} prefix\">{{ prefix }}</span>\n <input [attr.data-cy]=\"cypressTag ? 'textField_' + cypressTag : null\"\n [attr.disabled]=\"customState == 'disabled' ? true : null\"\n [attr.readonly]=\"customState == 'readonly' ? true : null\"\n [autocomplete]=\"autocomplete\"\n [maxLength]=\"inputContentType === 'date' ? 10 : (validations?.maxLength || 100)\"\n [minLength]=\"validations?.minLength ? validations?.minLength : 0\"\n [placeholder]=\"getPlaceholder()\"\n [type]=\"inputContentType === 'date' ? 'text' : (inputContentType !== 'number' ? inputContentType : 'text')\"\n [value]=\"inputValue\"\n\n (blur)=\"focusInput = false\"\n (change)=\"changeInputValue()\"\n (focus)=\"focusInput = true\"\n (keydown)=\" onKeyDownEvent($event)\"\n (keyup)=\"inputContentType === 'date' ?\n formatDateInput($event) : changeInputValue()\"\n\n class=\"{{getTextFieldInputFontSize()}}\"\n #inputElement\n *ngIf=\"textFieldType == 'input'\">\n\n <textarea [attr.data-cy]=\"cypressTag ? 'textField_' + cypressTag : null\"\n [attr.disabled]=\"customState == 'disabled' ? true : null\"\n [attr.readonly]=\"customState == 'readonly' ? true : null\"\n [maxLength]=\"validations?.maxLength ? validations?.maxLength : 200\"\n [minLength]=\"validations?.minLength ? validations?.minLength : 0\"\n [placeholder]=\"getPlaceholder()\"\n [value]=\"inputValue\"\n\n (blur)=\"focusInput = false\"\n (change)=\"changeInputValue()\"\n (focus)=\"focusInput = true\"\n (keydown)=\"onKeyDownEvent($event)\"\n (keyup)=\"changeInputValue()\"\n\n class=\"{{getTextFieldInputFontSize()}}\"\n rows=\"1\"\n\n #textAreaElement\n\n *ngIf=\"textFieldType == 'textarea'\"></textarea>\n <ng-container *ngIf=\"iconRight\">\n <ng-container [ngTemplateOutlet]=\"icons\" [ngTemplateOutletContext]=\"{iconPosition: 'right'}\"></ng-container>\n </ng-container>\n</div>\n<div class=\"support-text-container {{size}} {{width}}-width\">\n <p class=\"hr-label sm-regular supporting-text {{getTextFieldStatus()}} {{size}}\"\n [class.custom-label-size]=\"size == 'sm'\" *ngIf=\"supportText\">\n <gravity-icon [class.negative]=\"getTextFieldStatus() == 'typed-error'\" [iconName]=\"'question-circle'\"\n *ngIf=\"getTextFieldStatus() == 'typed-error' || characterLimit\"\n [iconSize]=\"'md-16'\"></gravity-icon>\n <gravity-icon class=\"positive\" [iconName]=\"'check'\" *ngIf=\"!hasInvalidPasswordRequirements && isPasswordField\"\n [iconSize]=\"'md-16'\"></gravity-icon>\n <gravity-icon [ngClass]=\"{negative: getTextFieldStatus() === 'typed-error',positive: getTextFieldStatus() === 'typed-positive'}\"\n [iconName]=\"supportTextIcon\" *ngIf=\"supportTextIcon\" [iconSize]=\"'md-16'\"></gravity-icon>\n {{ supportText }}\n </p>\n <p class=\"hr-label sm-regular character-counter {{getTextFieldStatus()}}\"\n *ngIf=\"characterCounter\">{{ inputValue.length }}/200</p>\n</div>\n\n\n<div class=\"password-requirements\" *ngIf=\"passwordRequirements.length> 0 && hasInvalidPasswordRequirements\">\n <p class=\"hr-label sm-bold\">{{ currentLang == 'en' ? 'Password requirements:' : 'Requisitos de contrase\u00F1a:' }}</p>\n <ul class=\"requirements\">\n <li class=\"hr-label sm-regular\" *ngFor=\"let requirement of passwordRequirements\"\n [ngClass]=\"{valid: hasUserTyped && requirement.isValid, invalid: hasUserTyped && !focusInput && !requirement.isValid}\">\n {{ requirement.label }}\n </li>\n </ul>\n</div>\n\n<ng-template #icons let-iconPosition=\"iconPosition\">\n <gravity-icon (click)=\"$event.stopPropagation(); handleIconClick(iconPosition)\" class=\"{{iconPosition}}\"\n [class.pointer]=\"(iconPosition == 'left' && clickOnLeftIcon) || (iconPosition == 'right' && clickOnRightIcon)\"\n [iconName]=\"iconPosition == 'left' ? iconLeft : iconRight\" [style.--icon-color]=\"iconColor\"\n [iconSize]=\"isNewIcon(iconPosition) ? 'md-16' : null\" [attr.data-cy]=\"'textField_icon'\"></gravity-icon>\n</ng-template>\n", styles: [".border-radius-none{border-radius:0}.border-radius-xs{border-radius:.0625rem}.border-radius-sm{border-radius:.3125rem}.border-radius-md{border-radius:.625rem}.border-radius-lg{border-radius:.9375rem}.border-radius-xl{border-radius:1.25rem}.border-radius-xxl{border-radius:2rem}.border-radius-rounded{border-radius:6.25rem}.text-negative{color:var(--negative-primary)}.text-neutro{color:var(--text-primary)}.text-positive{color:var(--positive-primary)}.support-text{margin-left:0;margin-top:.3125rem;padding-inline:1rem}.scrollbar-sm::-webkit-scrollbar,.gravity-input-field textarea::-webkit-scrollbar{width:4px;height:4px}.scrollbar-sm::-webkit-scrollbar-track,.gravity-input-field textarea::-webkit-scrollbar-track{background-color:var(--surface-primary);border-radius:5px}.scrollbar-sm::-webkit-scrollbar-thumb,.gravity-input-field textarea::-webkit-scrollbar-thumb{background-color:var(--placeholder-empty-enabled-primary);border-radius:5px}.scrollbar-sm::-webkit-scrollbar-thumb:hover,.gravity-input-field textarea::-webkit-scrollbar-thumb:hover{background-color:var(--line-empty-enabled-primary)}.scrollbar-md::-webkit-scrollbar{width:8px;height:8px}.scrollbar-md::-webkit-scrollbar-track{background-color:var(--surface-primary);border-radius:5px}.scrollbar-md::-webkit-scrollbar-thumb{background-color:var(--placeholder-empty-enabled-primary);border-radius:5px}.scrollbar-md::-webkit-scrollbar-thumb:hover{background-color:var(--line-empty-enabled-primary)}:host{display:block}label{color:var(--text-field-label-color);display:block;margin:0 12px 5px}label.active,label.hover,label.autofill{--text-field-label-color: var(--label-text-empty-enabled-primary)}label.typing{--text-field-label-color: var(--label-text-full-enabled-pressed-primary)}label.typed,label.typed-error{--text-field-label-color: var(--label-text-full-enabled-primary)}label.typed-error span{color:var(--negative-primary)}label.typed-positive{--text-field-label-color: var(--label-text-full-enabled-primary)}label.disabled{--text-field-label-color: var(--on-bg-disabled)}label.readonly{--text-field-label-color: var(--label-text-full-read-only-primary)}label .extra-text{font-weight:343!important;color:var(--placeholder-empty-enabled-primary)!important}.hr-label.sm-bold.custom-label-size,.hr-label.sm-regular.custom-label-size{font-size:10px;letter-spacing:.25px}.gravity-input-field{align-items:center;background-color:var(--text-field-input-field-background-color);border:var(--text-field-input-field-border-width) solid var(--text-field-input-field-border-color);border-radius:.3125rem;color:var(--text-field-input-field-content-color);display:flex;height:var(--text-field-input-field-height);padding:10px 12px;--text-field-input-field-border-width: .5px;width:var(--text-field-input-field-width)}.gravity-input-field gravity-icon{--icon-color: var(--text-field-input-field-icon-color);--icon-height: var(--text-field-input-field-content);--icon-width: var(--text-field-input-field-content)}.gravity-input-field gravity-icon.pointer{cursor:pointer}.gravity-input-field gravity-icon.left{margin-right:5px}.gravity-input-field gravity-icon.right{margin-left:5px}.gravity-input-field .prefix{color:var(--text-field-input-field-content-color)}.gravity-input-field input,.gravity-input-field textarea{background-color:transparent;border:none;box-shadow:none;color:var(--text-field-input-field-content-color);height:var(--text-field-input-field-input);line-height:1;outline:none;padding:0;resize:none;width:100%}.gravity-input-field input::placeholder,.gravity-input-field textarea::placeholder{color:var(--text-field-input-field-placeholder-color)}.gravity-input-field input:-webkit-autofill,.gravity-input-field textarea:-webkit-autofill{-webkit-box-shadow:0 0 0 30px var(--bg-field-autofill) inset!important;-webkit-text-fill-color:var(--label-text-full-enabled-primary)!important}.gravity-input-field.sm,.support-text-container.sm{--text-field-input-field-content: 9px}.gravity-input-field.sm.input,.support-text-container.sm.input{--text-field-input-field-height: 29px;--text-field-input-field-input: 13px}.gravity-input-field.sm.textarea,.support-text-container.sm.textarea{--text-field-input-field-height: 64px;--text-field-input-field-input: 44px}.gravity-input-field.sm.short-width,.support-text-container.sm.short-width{--text-field-input-field-width: 195px}.gravity-input-field.sm.medium-width,.support-text-container.sm.medium-width{--text-field-input-field-width: 276px}.gravity-input-field.sm.full-width,.support-text-container.sm.full-width,.gravity-input-field.sm.fit-width,.support-text-container.sm.fit-width{--text-field-input-field-width: 100%}.gravity-input-field.md,.support-text-container.md{--text-field-input-field-content: 15px}.gravity-input-field.md.input,.support-text-container.md.input{--text-field-input-field-height: 35px;--text-field-input-field-input: 18px}.gravity-input-field.md.textarea,.support-text-container.md.textarea{--text-field-input-field-height: 80px;--text-field-input-field-input: 60px}.gravity-input-field.md.short-width,.support-text-container.md.short-width{--text-field-input-field-width: 242px}.gravity-input-field.md.medium-width,.support-text-container.md.medium-width{--text-field-input-field-width: 329px}.gravity-input-field.md.full-width,.support-text-container.md.full-width,.gravity-input-field.md.fit-width,.support-text-container.md.fit-width{--text-field-input-field-width: 100%}.gravity-input-field.active{--text-field-input-field-background-color: var(--bg-field-empty-enabled-primary);--text-field-input-field-border-color: var(--outline-field-empty-enabled-primary);--text-field-input-field-content-color: var(--placeholder-empty-enabled-primary);--text-field-input-field-icon-color: var(--label-text-empty-enabled-primary);--text-field-input-field-placeholder-color: var(--placeholder-empty-enabled-primary)}.gravity-input-field.active:hover{--text-field-input-field-border-width: 1px}.gravity-input-field.hover{--text-field-input-field-background-color: var(--bg-field-empty-enabled-primary);--text-field-input-field-border-color: var(--outline-field-empty-enabled-primary);--text-field-input-field-border-width: 1px;--text-field-input-field-content-color: var(--placeholder-empty-enabled-primary);--text-field-input-field-icon-color: var(--label-text-empty-enabled-primary);--text-field-input-field-placeholder-color: var(--placeholder-empty-enabled-primary)}.gravity-input-field.autofill{--text-field-input-field-background-color: var(--bg-field-empty-enabled-primary);--text-field-input-field-border-color: var(--outline-field-empty-enabled-primary);--text-field-input-field-content-color: var(--placeholder-empty-enabled-primary);--text-field-input-field-icon-color: var(--label-text-empty-enabled-primary);--text-field-input-field-placeholder-color: var(--placeholder-empty-enabled-primary)}.gravity-input-field.autofill:hover{--text-field-input-field-border-width: 1px}.gravity-input-field.autofill input,.gravity-input-field.autofill textarea{background-color:var(--bg-field-autofill);color:var(--label-text-full-enabled-primary)}.gravity-input-field.typing{--text-field-input-field-background-color: var(--bg-field-empty-enabled-primary);--text-field-input-field-border-color: var(--outline-field-full-enabled-pressed-primary);--text-field-input-field-border-width: 1px;--text-field-input-field-content-color: var(--placeholder-full-enabled-pressed-primary);--text-field-input-field-icon-color: var(--label-text-full-enabled-pressed-primary);--text-field-input-field-placeholder-color: var(--placeholder-full-enabled-pressed-primary)}.gravity-input-field.typing:hover{--text-field-input-field-border-width: 1px}.gravity-input-field.typed{--text-field-input-field-background-color: var(--bg-field-full-enabled-primary);--text-field-input-field-border-color: var(--outline-field-full-enabled-pressed-primary);--text-field-input-field-content-color: var(--label-text-full-enabled-primary);--text-field-input-field-icon-color: var(--label-text-full-enabled-primary);--text-field-input-field-placeholder-color: var(--label-text-full-enabled-primary)}.gravity-input-field.typed:hover{--text-field-input-field-border-width: 1px}.gravity-input-field.typed-error{--text-field-input-field-background-color: var(--bg-field-full-enabled-primary);--text-field-input-field-border-color: var(--negative-primary);--text-field-input-field-content-color: var(--label-text-full-enabled-primary);--text-field-input-field-icon-color: var(--label-text-full-enabled-primary);--text-field-input-field-placeholder-color: var(--label-text-full-enabled-primary)}.gravity-input-field.typed-error:hover{--text-field-input-field-border-width: 1px}.gravity-input-field.typed-positive{--text-field-input-field-background-color: var(--bg-field-full-enabled-primary);--text-field-input-field-border-color: var(--positive-primary);--text-field-input-field-content-color: var(--label-text-full-enabled-primary);--text-field-input-field-icon-color: var(--label-text-full-enabled-primary);--text-field-input-field-placeholder-color: var(--label-text-full-enabled-primary)}.gravity-input-field.typed-positive:hover{--text-field-input-field-border-width: 1px}.gravity-input-field.disabled{--text-field-input-field-background-color: var(--bg-field-empty-disabled-primary);--text-field-input-field-border-color: var(--outline-disabled);--text-field-input-field-content-color: var(--on-bg-disabled);--text-field-input-field-icon-color: var(--on-bg-disabled);--text-field-input-field-placeholder-color: var(--on-bg-disabled)}.gravity-input-field.readonly{--text-field-input-field-background-color: var(--bg-field-full-read-only-primary);--text-field-input-field-border-color: var(--bg-field-full-read-only-primary);--text-field-input-field-content-color: var(--input-text-full-read-only-primary);--text-field-input-field-icon-color: var(--input-text-full-read-only-primary);--text-field-input-field-placeholder-color: var(--input-text-full-read-only-primary)}.support-text-container{display:flex;justify-content:space-between;width:var(--text-field-input-field-width)}.supporting-text{align-items:center;color:var(--text-field-supporting-text-color);display:flex;margin:5px 12px 0}.supporting-text.active,.supporting-text.hover,.supporting-text.autofill{--text-field-supporting-text-color: var(--label-text-empty-enabled-primary)}.supporting-text.typing{--text-field-supporting-text-color: var(--label-text-full-enabled-pressed-primary)}.supporting-text.typed{--text-field-supporting-text-color: var(--label-text-full-enabled-primary)}.supporting-text.typed-error{--text-field-supporting-text-color: var(--negative-primary)}.supporting-text.typed-positive{--text-field-supporting-text-color: var(--positive-primary)}.supporting-text.disabled{--text-field-supporting-text-color: var(--on-bg-disabled)}.supporting-text.readonly{--text-field-supporting-text-color: var(--label-text-full-read-only-primary)}.supporting-text.sm{--text-field-supporting-text-icon-size: 9px}.supporting-text.md{--text-field-supporting-text-icon-size: 15px}.supporting-text gravity-icon{--icon-height: var(--text-field-supporting-text-icon-size);--icon-width: var(--text-field-supporting-text-icon-size);margin-right:5px}.supporting-text gravity-icon.negative{--icon-color: var(--negative-primary)}.supporting-text gravity-icon.positive{--icon-color: var(--positive-primary)}.password-requirements{display:flex;padding-left:12px;flex-direction:column;align-items:flex-start;gap:8px;margin-top:16px}.password-requirements .requirements{padding-left:12px;margin:0!important}.password-requirements .requirements li.valid{color:var(--positive-primary)}.password-requirements .requirements li.invalid{color:var(--negative-primary)}.character-counter{margin-left:auto;margin-top:5px}.character-counter.disabled{color:var(--on-bg-disabled)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.GravityIconComponent, selector: "gravity-icon", inputs: ["customIconColorVariable", "iconName", "iconSize", "hoverIcon", "size", "isCoin"] }] }); }
|
|
226
|
-
}
|
|
227
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GravityTextFieldComponent, decorators: [{
|
|
228
|
-
type: Component,
|
|
229
|
-
args: [{ selector: 'gravity-text-field', template: "<label class=\"hr-label sm-bold {{getTextFieldStatus()}}\" [class.custom-label-size]=\"size == 'sm'\" *ngIf=\"label\">\n {{ label }}\n <span *ngIf=\"required || getTextFieldStatus() == 'typed-error'\">* </span>\n <span [class.extra-text]=\"labelExtraText\" *ngIf=\"labelExtraText\">{{ labelExtraText }}</span>\n</label>\n<div class=\"gravity-input-field {{textFieldType}} {{size}} {{width}}-width {{getTextFieldStatus()}}\">\n <ng-container *ngIf=\"iconLeft\">\n <ng-container [ngTemplateOutlet]=\"icons\" [ngTemplateOutletContext]=\"{iconPosition: 'left'}\"></ng-container>\n </ng-container>\n <span class=\"{{getTextFieldInputFontSize()}} prefix\">{{ prefix }}</span>\n <input [attr.data-cy]=\"cypressTag ? 'textField_' + cypressTag : null\"\n [attr.disabled]=\"customState == 'disabled' ? true : null\"\n [attr.readonly]=\"customState == 'readonly' ? true : null\"\n [autocomplete]=\"autocomplete\"\n [maxLength]=\"inputContentType === 'date' ? 10 : (validations?.maxLength || 100)\"\n [minLength]=\"validations?.minLength ? validations?.minLength : 0\"\n [placeholder]=\"getPlaceholder()\"\n [type]=\"inputContentType === 'date' ? 'text' : (inputContentType !== 'number' ? inputContentType : 'text')\"\n [value]=\"inputValue\"\n\n (blur)=\"focusInput = false\"\n (change)=\"changeInputValue()\"\n (focus)=\"focusInput = true\"\n (keydown)=\" onKeyDownEvent($event)\"\n (keyup)=\"inputContentType === 'date' ?\n formatDateInput($event) : changeInputValue()\"\n\n class=\"{{getTextFieldInputFontSize()}}\"\n #inputElement\n *ngIf=\"textFieldType == 'input'\">\n\n <textarea [attr.data-cy]=\"cypressTag ? 'textField_' + cypressTag : null\"\n [attr.disabled]=\"customState == 'disabled' ? true : null\"\n [attr.readonly]=\"customState == 'readonly' ? true : null\"\n [maxLength]=\"validations?.maxLength ? validations?.maxLength : 200\"\n [minLength]=\"validations?.minLength ? validations?.minLength : 0\"\n [placeholder]=\"getPlaceholder()\"\n [value]=\"inputValue\"\n\n (blur)=\"focusInput = false\"\n (change)=\"changeInputValue()\"\n (focus)=\"focusInput = true\"\n (keydown)=\"onKeyDownEvent($event)\"\n (keyup)=\"changeInputValue()\"\n\n class=\"{{getTextFieldInputFontSize()}}\"\n rows=\"1\"\n\n #textAreaElement\n\n *ngIf=\"textFieldType == 'textarea'\"></textarea>\n <ng-container *ngIf=\"iconRight\">\n <ng-container [ngTemplateOutlet]=\"icons\" [ngTemplateOutletContext]=\"{iconPosition: 'right'}\"></ng-container>\n </ng-container>\n</div>\n<div class=\"support-text-container {{size}} {{width}}-width\">\n <p class=\"hr-label sm-regular supporting-text {{getTextFieldStatus()}} {{size}}\"\n [class.custom-label-size]=\"size == 'sm'\" *ngIf=\"supportText\">\n <gravity-icon [class.negative]=\"getTextFieldStatus() == 'typed-error'\" [iconName]=\"'question-circle'\"\n *ngIf=\"getTextFieldStatus() == 'typed-error' || characterLimit\"\n [iconSize]=\"'md-16'\"></gravity-icon>\n <gravity-icon class=\"positive\" [iconName]=\"'check'\" *ngIf=\"!hasInvalidPasswordRequirements && isPasswordField\"\n [iconSize]=\"'md-16'\"></gravity-icon>\n <gravity-icon [ngClass]=\"{negative: getTextFieldStatus() === 'typed-error',positive: getTextFieldStatus() === 'typed-positive'}\"\n [iconName]=\"supportTextIcon\" *ngIf=\"supportTextIcon\" [iconSize]=\"'md-16'\"></gravity-icon>\n {{ supportText }}\n </p>\n <p class=\"hr-label sm-regular character-counter {{getTextFieldStatus()}}\"\n *ngIf=\"characterCounter\">{{ inputValue.length }}/200</p>\n</div>\n\n\n<div class=\"password-requirements\" *ngIf=\"passwordRequirements.length> 0 && hasInvalidPasswordRequirements\">\n <p class=\"hr-label sm-bold\">{{ currentLang == 'en' ? 'Password requirements:' : 'Requisitos de contrase\u00F1a:' }}</p>\n <ul class=\"requirements\">\n <li class=\"hr-label sm-regular\" *ngFor=\"let requirement of passwordRequirements\"\n [ngClass]=\"{valid: hasUserTyped && requirement.isValid, invalid: hasUserTyped && !focusInput && !requirement.isValid}\">\n {{ requirement.label }}\n </li>\n </ul>\n</div>\n\n<ng-template #icons let-iconPosition=\"iconPosition\">\n <gravity-icon (click)=\"$event.stopPropagation(); handleIconClick(iconPosition)\" class=\"{{iconPosition}}\"\n [class.pointer]=\"(iconPosition == 'left' && clickOnLeftIcon) || (iconPosition == 'right' && clickOnRightIcon)\"\n [iconName]=\"iconPosition == 'left' ? iconLeft : iconRight\" [style.--icon-color]=\"iconColor\"\n [iconSize]=\"isNewIcon(iconPosition) ? 'md-16' : null\" [attr.data-cy]=\"'textField_icon'\"></gravity-icon>\n</ng-template>\n", styles: [".border-radius-none{border-radius:0}.border-radius-xs{border-radius:.0625rem}.border-radius-sm{border-radius:.3125rem}.border-radius-md{border-radius:.625rem}.border-radius-lg{border-radius:.9375rem}.border-radius-xl{border-radius:1.25rem}.border-radius-xxl{border-radius:2rem}.border-radius-rounded{border-radius:6.25rem}.text-negative{color:var(--negative-primary)}.text-neutro{color:var(--text-primary)}.text-positive{color:var(--positive-primary)}.support-text{margin-left:0;margin-top:.3125rem;padding-inline:1rem}.scrollbar-sm::-webkit-scrollbar,.gravity-input-field textarea::-webkit-scrollbar{width:4px;height:4px}.scrollbar-sm::-webkit-scrollbar-track,.gravity-input-field textarea::-webkit-scrollbar-track{background-color:var(--surface-primary);border-radius:5px}.scrollbar-sm::-webkit-scrollbar-thumb,.gravity-input-field textarea::-webkit-scrollbar-thumb{background-color:var(--placeholder-empty-enabled-primary);border-radius:5px}.scrollbar-sm::-webkit-scrollbar-thumb:hover,.gravity-input-field textarea::-webkit-scrollbar-thumb:hover{background-color:var(--line-empty-enabled-primary)}.scrollbar-md::-webkit-scrollbar{width:8px;height:8px}.scrollbar-md::-webkit-scrollbar-track{background-color:var(--surface-primary);border-radius:5px}.scrollbar-md::-webkit-scrollbar-thumb{background-color:var(--placeholder-empty-enabled-primary);border-radius:5px}.scrollbar-md::-webkit-scrollbar-thumb:hover{background-color:var(--line-empty-enabled-primary)}:host{display:block}label{color:var(--text-field-label-color);display:block;margin:0 12px 5px}label.active,label.hover,label.autofill{--text-field-label-color: var(--label-text-empty-enabled-primary)}label.typing{--text-field-label-color: var(--label-text-full-enabled-pressed-primary)}label.typed,label.typed-error{--text-field-label-color: var(--label-text-full-enabled-primary)}label.typed-error span{color:var(--negative-primary)}label.typed-positive{--text-field-label-color: var(--label-text-full-enabled-primary)}label.disabled{--text-field-label-color: var(--on-bg-disabled)}label.readonly{--text-field-label-color: var(--label-text-full-read-only-primary)}label .extra-text{font-weight:343!important;color:var(--placeholder-empty-enabled-primary)!important}.hr-label.sm-bold.custom-label-size,.hr-label.sm-regular.custom-label-size{font-size:10px;letter-spacing:.25px}.gravity-input-field{align-items:center;background-color:var(--text-field-input-field-background-color);border:var(--text-field-input-field-border-width) solid var(--text-field-input-field-border-color);border-radius:.3125rem;color:var(--text-field-input-field-content-color);display:flex;height:var(--text-field-input-field-height);padding:10px 12px;--text-field-input-field-border-width: .5px;width:var(--text-field-input-field-width)}.gravity-input-field gravity-icon{--icon-color: var(--text-field-input-field-icon-color);--icon-height: var(--text-field-input-field-content);--icon-width: var(--text-field-input-field-content)}.gravity-input-field gravity-icon.pointer{cursor:pointer}.gravity-input-field gravity-icon.left{margin-right:5px}.gravity-input-field gravity-icon.right{margin-left:5px}.gravity-input-field .prefix{color:var(--text-field-input-field-content-color)}.gravity-input-field input,.gravity-input-field textarea{background-color:transparent;border:none;box-shadow:none;color:var(--text-field-input-field-content-color);height:var(--text-field-input-field-input);line-height:1;outline:none;padding:0;resize:none;width:100%}.gravity-input-field input::placeholder,.gravity-input-field textarea::placeholder{color:var(--text-field-input-field-placeholder-color)}.gravity-input-field input:-webkit-autofill,.gravity-input-field textarea:-webkit-autofill{-webkit-box-shadow:0 0 0 30px var(--bg-field-autofill) inset!important;-webkit-text-fill-color:var(--label-text-full-enabled-primary)!important}.gravity-input-field.sm,.support-text-container.sm{--text-field-input-field-content: 9px}.gravity-input-field.sm.input,.support-text-container.sm.input{--text-field-input-field-height: 29px;--text-field-input-field-input: 13px}.gravity-input-field.sm.textarea,.support-text-container.sm.textarea{--text-field-input-field-height: 64px;--text-field-input-field-input: 44px}.gravity-input-field.sm.short-width,.support-text-container.sm.short-width{--text-field-input-field-width: 195px}.gravity-input-field.sm.medium-width,.support-text-container.sm.medium-width{--text-field-input-field-width: 276px}.gravity-input-field.sm.full-width,.support-text-container.sm.full-width,.gravity-input-field.sm.fit-width,.support-text-container.sm.fit-width{--text-field-input-field-width: 100%}.gravity-input-field.md,.support-text-container.md{--text-field-input-field-content: 15px}.gravity-input-field.md.input,.support-text-container.md.input{--text-field-input-field-height: 35px;--text-field-input-field-input: 18px}.gravity-input-field.md.textarea,.support-text-container.md.textarea{--text-field-input-field-height: 80px;--text-field-input-field-input: 60px}.gravity-input-field.md.short-width,.support-text-container.md.short-width{--text-field-input-field-width: 242px}.gravity-input-field.md.medium-width,.support-text-container.md.medium-width{--text-field-input-field-width: 329px}.gravity-input-field.md.full-width,.support-text-container.md.full-width,.gravity-input-field.md.fit-width,.support-text-container.md.fit-width{--text-field-input-field-width: 100%}.gravity-input-field.active{--text-field-input-field-background-color: var(--bg-field-empty-enabled-primary);--text-field-input-field-border-color: var(--outline-field-empty-enabled-primary);--text-field-input-field-content-color: var(--placeholder-empty-enabled-primary);--text-field-input-field-icon-color: var(--label-text-empty-enabled-primary);--text-field-input-field-placeholder-color: var(--placeholder-empty-enabled-primary)}.gravity-input-field.active:hover{--text-field-input-field-border-width: 1px}.gravity-input-field.hover{--text-field-input-field-background-color: var(--bg-field-empty-enabled-primary);--text-field-input-field-border-color: var(--outline-field-empty-enabled-primary);--text-field-input-field-border-width: 1px;--text-field-input-field-content-color: var(--placeholder-empty-enabled-primary);--text-field-input-field-icon-color: var(--label-text-empty-enabled-primary);--text-field-input-field-placeholder-color: var(--placeholder-empty-enabled-primary)}.gravity-input-field.autofill{--text-field-input-field-background-color: var(--bg-field-empty-enabled-primary);--text-field-input-field-border-color: var(--outline-field-empty-enabled-primary);--text-field-input-field-content-color: var(--placeholder-empty-enabled-primary);--text-field-input-field-icon-color: var(--label-text-empty-enabled-primary);--text-field-input-field-placeholder-color: var(--placeholder-empty-enabled-primary)}.gravity-input-field.autofill:hover{--text-field-input-field-border-width: 1px}.gravity-input-field.autofill input,.gravity-input-field.autofill textarea{background-color:var(--bg-field-autofill);color:var(--label-text-full-enabled-primary)}.gravity-input-field.typing{--text-field-input-field-background-color: var(--bg-field-empty-enabled-primary);--text-field-input-field-border-color: var(--outline-field-full-enabled-pressed-primary);--text-field-input-field-border-width: 1px;--text-field-input-field-content-color: var(--placeholder-full-enabled-pressed-primary);--text-field-input-field-icon-color: var(--label-text-full-enabled-pressed-primary);--text-field-input-field-placeholder-color: var(--placeholder-full-enabled-pressed-primary)}.gravity-input-field.typing:hover{--text-field-input-field-border-width: 1px}.gravity-input-field.typed{--text-field-input-field-background-color: var(--bg-field-full-enabled-primary);--text-field-input-field-border-color: var(--outline-field-full-enabled-pressed-primary);--text-field-input-field-content-color: var(--label-text-full-enabled-primary);--text-field-input-field-icon-color: var(--label-text-full-enabled-primary);--text-field-input-field-placeholder-color: var(--label-text-full-enabled-primary)}.gravity-input-field.typed:hover{--text-field-input-field-border-width: 1px}.gravity-input-field.typed-error{--text-field-input-field-background-color: var(--bg-field-full-enabled-primary);--text-field-input-field-border-color: var(--negative-primary);--text-field-input-field-content-color: var(--label-text-full-enabled-primary);--text-field-input-field-icon-color: var(--label-text-full-enabled-primary);--text-field-input-field-placeholder-color: var(--label-text-full-enabled-primary)}.gravity-input-field.typed-error:hover{--text-field-input-field-border-width: 1px}.gravity-input-field.typed-positive{--text-field-input-field-background-color: var(--bg-field-full-enabled-primary);--text-field-input-field-border-color: var(--positive-primary);--text-field-input-field-content-color: var(--label-text-full-enabled-primary);--text-field-input-field-icon-color: var(--label-text-full-enabled-primary);--text-field-input-field-placeholder-color: var(--label-text-full-enabled-primary)}.gravity-input-field.typed-positive:hover{--text-field-input-field-border-width: 1px}.gravity-input-field.disabled{--text-field-input-field-background-color: var(--bg-field-empty-disabled-primary);--text-field-input-field-border-color: var(--outline-disabled);--text-field-input-field-content-color: var(--on-bg-disabled);--text-field-input-field-icon-color: var(--on-bg-disabled);--text-field-input-field-placeholder-color: var(--on-bg-disabled)}.gravity-input-field.readonly{--text-field-input-field-background-color: var(--bg-field-full-read-only-primary);--text-field-input-field-border-color: var(--bg-field-full-read-only-primary);--text-field-input-field-content-color: var(--input-text-full-read-only-primary);--text-field-input-field-icon-color: var(--input-text-full-read-only-primary);--text-field-input-field-placeholder-color: var(--input-text-full-read-only-primary)}.support-text-container{display:flex;justify-content:space-between;width:var(--text-field-input-field-width)}.supporting-text{align-items:center;color:var(--text-field-supporting-text-color);display:flex;margin:5px 12px 0}.supporting-text.active,.supporting-text.hover,.supporting-text.autofill{--text-field-supporting-text-color: var(--label-text-empty-enabled-primary)}.supporting-text.typing{--text-field-supporting-text-color: var(--label-text-full-enabled-pressed-primary)}.supporting-text.typed{--text-field-supporting-text-color: var(--label-text-full-enabled-primary)}.supporting-text.typed-error{--text-field-supporting-text-color: var(--negative-primary)}.supporting-text.typed-positive{--text-field-supporting-text-color: var(--positive-primary)}.supporting-text.disabled{--text-field-supporting-text-color: var(--on-bg-disabled)}.supporting-text.readonly{--text-field-supporting-text-color: var(--label-text-full-read-only-primary)}.supporting-text.sm{--text-field-supporting-text-icon-size: 9px}.supporting-text.md{--text-field-supporting-text-icon-size: 15px}.supporting-text gravity-icon{--icon-height: var(--text-field-supporting-text-icon-size);--icon-width: var(--text-field-supporting-text-icon-size);margin-right:5px}.supporting-text gravity-icon.negative{--icon-color: var(--negative-primary)}.supporting-text gravity-icon.positive{--icon-color: var(--positive-primary)}.password-requirements{display:flex;padding-left:12px;flex-direction:column;align-items:flex-start;gap:8px;margin-top:16px}.password-requirements .requirements{padding-left:12px;margin:0!important}.password-requirements .requirements li.valid{color:var(--positive-primary)}.password-requirements .requirements li.invalid{color:var(--negative-primary)}.character-counter{margin-left:auto;margin-top:5px}.character-counter.disabled{color:var(--on-bg-disabled)}\n"] }]
|
|
230
|
-
}], propDecorators: { leftIconResponse: [{
|
|
231
|
-
type: Output,
|
|
232
|
-
args: ['clickIconLeft']
|
|
233
|
-
}], rightIconResponse: [{
|
|
234
|
-
type: Output,
|
|
235
|
-
args: ['clickIconRight']
|
|
236
|
-
}], textFieldValueResponse: [{
|
|
237
|
-
type: Output,
|
|
238
|
-
args: ['response']
|
|
239
|
-
}], inputElement: [{
|
|
240
|
-
type: ViewChild,
|
|
241
|
-
args: ['inputElement', { static: false }]
|
|
242
|
-
}], textAreaElement: [{
|
|
243
|
-
type: ViewChild,
|
|
244
|
-
args: ['textAreaElement', { static: false }]
|
|
245
|
-
}], currentLang: [{
|
|
246
|
-
type: Input
|
|
247
|
-
}], customInputValue: [{
|
|
248
|
-
type: Input
|
|
249
|
-
}], customState: [{
|
|
250
|
-
type: Input
|
|
251
|
-
}], cypressTag: [{
|
|
252
|
-
type: Input
|
|
253
|
-
}], label: [{
|
|
254
|
-
type: Input
|
|
255
|
-
}], prefix: [{
|
|
256
|
-
type: Input
|
|
257
|
-
}], required: [{
|
|
258
|
-
type: Input
|
|
259
|
-
}], supportText: [{
|
|
260
|
-
type: Input
|
|
261
|
-
}], textFieldType: [{
|
|
262
|
-
type: Input
|
|
263
|
-
}], clickOnLeftIcon: [{
|
|
264
|
-
type: Input
|
|
265
|
-
}], clickOnRightIcon: [{
|
|
266
|
-
type: Input
|
|
267
|
-
}], iconColor: [{
|
|
268
|
-
type: Input
|
|
269
|
-
}], iconLeft: [{
|
|
270
|
-
type: Input
|
|
271
|
-
}], iconRight: [{
|
|
272
|
-
type: Input
|
|
273
|
-
}], autocomplete: [{
|
|
274
|
-
type: Input
|
|
275
|
-
}], inputContentType: [{
|
|
276
|
-
type: Input
|
|
277
|
-
}], placeholder: [{
|
|
278
|
-
type: Input
|
|
279
|
-
}], validations: [{
|
|
280
|
-
type: Input
|
|
281
|
-
}], size: [{
|
|
282
|
-
type: Input
|
|
283
|
-
}], width: [{
|
|
284
|
-
type: Input
|
|
285
|
-
}], labelExtraText: [{
|
|
286
|
-
type: Input
|
|
287
|
-
}], characterCounter: [{
|
|
288
|
-
type: Input
|
|
289
|
-
}], passwordRequirements: [{
|
|
290
|
-
type: Input
|
|
291
|
-
}], supportTextIcon: [{
|
|
292
|
-
type: Input
|
|
293
|
-
}] } });
|
|
294
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3Jhdml0eS10ZXh0LWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2dyYXZpdHktZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvbXBvbmVudHMvZ3Jhdml0eS10ZXh0LWZpZWxkL2dyYXZpdHktdGV4dC1maWVsZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2dyYXZpdHktdGV4dC1maWVsZC9ncmF2aXR5LXRleHQtZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFDNUUsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFFTixTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7Ozs7QUFPdkIsTUFBTSxPQUFPLHlCQUF5QjtJQUx0QztRQU1rQyxxQkFBZ0IsR0FBdUIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN6RCxzQkFBaUIsR0FBdUIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNqRSwyQkFBc0IsR0FBeUIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUs3RixZQUFZO1FBQ0ksZ0JBQVcsR0FBVyxJQUFJLENBQUM7UUFFM0IsZ0JBQVcsR0FBa0ksU0FBUyxDQUFDO1FBR3ZKLFdBQU0sR0FBVyxFQUFFLENBQUM7UUFHcEIsa0JBQWEsR0FBeUIsT0FBTyxDQUFDO1FBRTlELFFBQVE7UUFDUSxvQkFBZSxHQUFZLEtBQUssQ0FBQztRQUNqQyxxQkFBZ0IsR0FBWSxLQUFLLENBQUM7UUFLbEQsbUJBQW1CO1FBQ0gsaUJBQVksR0FBVyxLQUFLLENBQUM7UUFDN0IscUJBQWdCLEdBQThELE1BQU0sQ0FBQztRQUlyRyxRQUFRO1FBQ1EsU0FBSSxHQUFn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LEtBQUssRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFFM0ksSUFDRSxjQUFjLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSx5REFBeUQ7Z0JBQ3BHLENBQUMsTUFBTSxDQUFDLEdBQUcsS0FBSyxHQUFHLElBQUksTUFBTSxDQUFDLE9BQU8sS0FBSyxJQUFJLENBQUMsSUFBSSxnQkFBZ0I7Z0JBQ25FLENBQUMsTUFBTSxDQUFDLEdBQUcsS0FBSyxHQUFHLElBQUksTUFBTSxDQUFDLE9BQU8sS0FBSyxJQUFJLENBQUMsSUFBSSxnQkFBZ0I7Z0JBQ25FLENBQUMsTUFBTSxDQUFDLEdBQUcsS0FBSyxHQUFHLElBQUksTUFBTSxDQUFDLE9BQU8sS0FBSyxJQUFJLENBQUMsSUFBSSxnQkFBZ0I7Z0JBQ25FLENBQUMsTUFBTSxDQUFDLEdBQUcsS0FBSyxHQUFHLElBQUksTUFBTSxDQUFDLE9BQU8sS0FBSyxJQUFJLENBQUMsSUFBSSxnQkFBZ0I7Z0JBQ25FLENBQUMsTUFBTSxDQUFDLEdBQUcsS0FBSyxHQUFHLElBQUksTUFBTSxDQUFDLE9BQU8sS0FBSyxJQUFJLENBQUMsSUFBSSxxQkFBcUI7Z0JBQ3hFLENBQUMsTUFBTSxDQUFDLEdBQUcsS0FBSyxHQUFHLElBQUksTUFBTSxDQUFDLE9BQU8sS0FBSyxJQUFJLENBQUMsSUFBSSxxQkFBcUI7Z0JBQ3hFLENBQUMsTUFBTSxDQUFDLEdBQUcsS0FBSyxHQUFHLElBQUksTUFBTSxDQUFDLE9BQU8sS0FBSyxJQUFJLENBQUMsSUFBSSxxQkFBcUI7Z0JBQ3hFLENBQUMsTUFBTSxDQUFDLEdBQUcsS0FBSyxHQUFHLElBQUksTUFBTSxDQUFDLE9BQU8sS0FBSyxJQUFJLENBQUMsSUFBRyxxQkFBcUI7Z0JBQ3ZFLENBQUMsTUFBTSxDQUFDLEdBQUcsS0FBSyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEtBQUssR0FBRyxDQUFDLENB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RUFBRSxLQUFLLEVBQUM7Z0JBQ1ksZUFBZTtzQkFBcEUsU0FBUzt1QkFBQyxpQkFBaUIsRUFBRSxFQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUM7Z0JBRzdCLFdBQVc7c0JBQTFCLEtBQUs7Z0JBQ1UsZ0JBQWdCO3NCQUEvQixLQUFLO2dCQUNVLFdBQVc7c0JBQTFCLEtBQUs7Z0JBQ1UsVUFBVTtzQkFBekIsS0FBSztnQkFDVSxLQUFLO3NCQUFwQixLQUFLO2dCQUNVLE1BQU07c0JBQXJCLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFDVSxXQUFXO3NCQUExQixLQUFLO2dCQUNVLGFBQWE7c0JBQTVCLEtBQUs7Z0JBR1UsZUFBZTtzQkFBOUIsS0FBSztnQkFDVSxnQkFBZ0I7c0JBQS9CLEtBQUs7Z0JBQ1UsU0FBUztzQkFBeEIsS0FBSztnQkFDVSxRQUFRO3NCQUF2QixLQUFLO2dCQUNVLFNBQVM7c0JBQXhCLEtBQUs7Z0JBR1UsWUFBWTtzQkFBM0IsS0FBSztnQkFDVSxnQkFBZ0I7c0JBQS9CLEtBQUs7Z0JBQ1UsV0FBVztzQkFBMUIsS0FBSztnQkFDVSxXQUFXO3NCQUExQixLQUFLO2dCQUdVLElBQUk7c0JBQW5CLEtBQUs7Z0JBQ1UsS0FBSztzQkFBcEIsS0FBSztnQkFFVSxjQUFjO3NCQUE3QixLQUFLO2dCQUNVLGdCQUFnQjtzQkFBL0IsS0FBSztnQkFDVSxvQkFBb0I7c0JBQW5DLEtBQUs7Z0JBQ1UsZUFBZTtzQkFBOUIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7R3Jhdml0eUljb25Db21wb25lbnR9IGZyb20gXCIuLi9ncmF2aXR5LWljb24vZ3Jhdml0eS1pY29uLmNvbXBvbmVudFwiO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2dyYXZpdHktdGV4dC1maWVsZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9ncmF2aXR5LXRleHQtZmllbGQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9ncmF2aXR5LXRleHQtZmllbGQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBHcmF2aXR5VGV4dEZpZWxkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBAT3V0cHV0KCdjbGlja0ljb25MZWZ0JykgcHVibGljIGxlZnRJY29uUmVzcG9uc2U6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgnY2xpY2tJY29uUmlnaHQnKSBwdWJsaWMgcmlnaHRJY29uUmVzcG9uc2U6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgncmVzcG9uc2UnKSBwdWJsaWMgdGV4dEZpZWxkVmFsdWVSZXNwb25zZTogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQFZpZXdDaGlsZCgnaW5wdXRFbGVtZW50Jywge3N0YXRpYzogZmFsc2V9KSBwdWJsaWMgaW5wdXRFbGVtZW50ITogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcbiAgQFZpZXdDaGlsZCgndGV4dEFyZWFFbGVtZW50Jywge3N0YXRpYzogZmFsc2V9KSBwdWJsaWMgdGV4dEFyZWFFbGVtZW50ITogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICAvLyBDb21wb25lbnRcbiAgQElucHV0KCkgcHVibGljIGN1cnJlbnRMYW5nOiBzdHJpbmcgPSAnZW4nO1xuICBASW5wdXQoKSBwdWJsaWMgY3VzdG9tSW5wdXRWYWx1ZTogc3RyaW5nO1xuICBASW5wdXQoKSBwdWJsaWMgY3VzdG9tU3RhdGU6ICdkZWZhdWx0JyB8ICdhY3RpdmUnIHwgJ2hvdmVyJyB8ICd0eXBpbmcnIHwgJ3R5cGVkJyB8ICd0eXBlZC1lcnJvcicgfCAndHlwZWQtcG9zaXRpdmUnIHwgJ2Rpc2FibGVkJyB8ICdyZWFkb25seScgfCAnYXV0b2ZpbGwnID0gJ2RlZmF1bHQnO1xuICBASW5wdXQoKSBwdWJsaWMgY3lwcmVzc1RhZzogc3RyaW5nO1xuICBASW5wdXQoKSBwdWJsaWMgbGFiZWw6IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIHByZWZpeDogc3RyaW5nID0gXCJcIjtcbiAgQElucHV0KCkgcHVibGljIHJlcXVpcmVkOiBib29sZWFuO1xuICBASW5wdXQoKSBwdWJsaWMgc3VwcG9ydFRleHQ6IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIHRleHRGaWVsZFR5cGU6ICdpbnB1dCcgfCAndGV4dGFyZWEnID0gXCJpbnB1dFwiO1xuXG4gIC8vIEljb25zXG4gIEBJbnB1dCgpIHB1YmxpYyBjbGlja09uTGVmdEljb246IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgcHVibGljIGNsaWNrT25SaWdodEljb246IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgcHVibGljIGljb25Db2xvcjogc3RyaW5nO1xuICBASW5wdXQoKSBwdWJsaWMgaWNvbkxlZnQ6IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIGljb25SaWdodDogc3RyaW5nO1xuXG4gIC8vIElucHV0IHwgVGV4dGFyZWFcbiAgQElucHV0KCkgcHVibGljIGF1dG9jb21wbGV0ZTogc3RyaW5nID0gJ29mZic7XG4gIEBJbnB1dCgpIHB1YmxpYyBpbnB1dENvbnRlbnRUeXBlOiAnZW1haWwnIHwgJ251bWJlcicgfCAncGFzc3dvcmQnIHwgJ3RlbCcgfCAnZGF0ZScgfCAndGV4dCcgPSBcInRleHRcIjtcbiAgQElucHV0KCkgcHVibGljIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHB1YmxpYyB2YWxpZGF0aW9uczogeyBtYXhMZW5ndGg/OiBudW1iZXI7IG1pbkxlbmd0aD86IG51bWJlciB9O1xuXG4gIC8vIFNpemVzXG4gIEBJbnB1dCgpIHB1YmxpYyBzaXplOiAnc20nIHwgJ21kJyA9ICdtZCc7XG4gIEBJbnB1dCgpIHB1YmxpYyB3aWR0aDogJ3Nob3J0JyB8ICdtZWRpdW0nIHwgJ2Z1bGwnIHwgJ2ZpdCcgPSAnc2hvcnQnO1xuXG4gIEBJbnB1dCgpIHB1YmxpYyBsYWJlbEV4dHJhVGV4dDogc3RyaW5nO1xuICBASW5wdXQoKSBwdWJsaWMgY2hhcmFjdGVyQ291bnRlcjogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgcGFzc3dvcmRSZXF1aXJlbWVudHM6IHsga2V5OiBzdHJpbmc7IGxhYmVsOiBzdHJpbmc7IGlzVmFsaWQ6IGJvb2xlYW47IH1bXSA9IFtdO1xuICBASW5wdXQoKSBwdWJsaWMgc3VwcG9ydFRleHRJY29uOiBzdHJpbmcgPSAnJztcblxuICBwdWJsaWMgZm9jdXNJbnB1dDogYm9vbGVhbiA9IGZhbHNlO1xuICBwdWJsaWMgaGFzVXNlclR5cGVkOiBib29sZWFuID0gZmFsc2U7XG4gIHB1YmxpYyBpc1Bhc3N3b3JkRmllbGQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIGNoYXJhY3RlckxpbWl0OiBib29sZWFuID0gZmFsc2U7XG4gIHB1YmxpYyBhbGxQYXNzd29yZFJlcXVpcmVtZW50c1ZhbGlkOiBib29sZWFuID0gZmFsc2U7XG4gIHB1YmxpYyBpbnB1dFZhbHVlOiBzdHJpbmcgPSAnJztcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmlucHV0VmFsdWUgPSB0aGlzLmN1c3RvbUlucHV0VmFsdWUgPyB0aGlzLmN1c3RvbUlucHV0VmFsdWUgOiAnJztcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoY2hhbmdlc1snY3VzdG9tSW5wdXRWYWx1ZSddKSB7XG4gICAgICB0aGlzLmlucHV0VmFsdWUgPSBjaGFuZ2VzWydjdXN0b21JbnB1dFZhbHVlJ10uY3VycmVudFZhbHVlID8gY2hhbmdlc1snY3VzdG9tSW5wdXRWYWx1ZSddLmN1cnJlbnRWYWx1ZSA6ICcnO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBmb2N1cygpIHtcbiAgICB0aGlzLmlucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gIH1cblxuICBwdWJsaWMgaXNGb2N1c2VkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSB0aGlzLmlucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgcHVibGljIGdldFBsYWNlaG9sZGVyKCk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMucGxhY2Vob2xkZXIgJiYgdGhpcy5wbGFjZWhvbGRlciAhPSAnJykge1xuICAgICAgcmV0dXJuIHRoaXMucGxhY2Vob2xkZXI7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLmxhYmVsO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjbGVhcklucHV0KCk6IHZvaWQge1xuICAgIHRoaXMuY2hhbmdlSW5wdXRWYWx1ZSh0cnVlKTtcbiAgfVxuXG4gIHB1YmxpYyBjaGFuZ2VJbnB1dFZhbHVlKGNsZWFySW5wdXQ6IGJvb2xlYW4gPSBmYWxzZSk6IHZvaWQge1xuICAgIHRoaXMuaGFzVXNlclR5cGVkID0gdHJ1ZTtcblxuICAgIGlmIChjbGVhcklucHV0KSB7XG4gICAgICB0aGlzLmlucHV0VmFsdWUgPSAnJztcbiAgICB9IGVsc2UgaWYgKHRoaXMudGV4dEZpZWxkVHlwZSA9PSAnaW5wdXQnKSB7XG4gICAgICB0aGlzLmlucHV0VmFsdWUgPSB0aGlzLmlucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50LnZhbHVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmlucHV0VmFsdWUgPSB0aGlzLnRleHRBcmVhRWxlbWVudC5uYXRpdmVFbGVtZW50LnZhbHVlO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmlucHV0VmFsdWUgPT0gJycpIHtcbiAgICAgIHRoaXMudGV4dEZpZWxkVmFsdWVSZXNwb25zZS5lbWl0KCcnKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy50ZXh0RmllbGRWYWx1ZVJlc3BvbnNlLmVtaXQodGhpcy5wcmVmaXggKyB0aGlzLmlucHV0VmFsdWUpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmlucHV0VmFsdWUubGVuZ3RoID09IHRoaXMudmFsaWRhdGlvbnM/Lm1heExlbmd0aCB8fCB0aGlzLmlucHV0VmFsdWUubGVuZ3RoID09IDIwMCkge1xuICAgICAgdGhpcy5zdXBwb3J0VGV4dCA9IHRoaXMuY3VycmVudExhbmcgPT0gJ2VuJyA/ICdDaGFyYWN0ZXIgbGltaXQgcmVhY2hlZCcgOiAnTMOtbWl0ZSBkZSBjYXJhY3RlcmVzIGFsY2FuemFkbyc7XG4gICAgICB0aGlzLmNoYXJhY3RlckxpbWl0ID0gdHJ1ZTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuY2hhcmFjdGVyTGltaXQpIHtcbiAgICAgIHRoaXMuc3VwcG9ydFRleHQgPSAnJztcbiAgICAgIHRoaXMuY2hhcmFjdGVyTGltaXQgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlSWNvbkNsaWNrKGljb25Qb3NpdGlvbjogJ2xlZnQnIHwgJ3JpZ2h0Jyk6IHZvaWQge1xuICAgIGlmIChpY29uUG9zaXRpb24gPT0gJ2xlZnQnICYmIHRoaXMuY2xpY2tPbkxlZnRJY29uKSB7XG4gICAgICB0aGlzLmxlZnRJY29uUmVzcG9uc2UuZW1pdCgpO1xuICAgIH1cblxuICAgIGlmIChpY29uUG9zaXRpb24gPT0gJ3JpZ2h0JyAmJiB0aGlzLmNsaWNrT25SaWdodEljb24pIHtcbiAgICAgIHRoaXMucmlnaHRJY29uUmVzcG9uc2UuZW1pdCgpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXRUZXh0RmllbGRTdGF0dXMoKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5jdXN0b21TdGF0ZSA9PSAnZGVmYXVsdCcpIHtcbiAgICAgIGlmICghdGhpcy5mb2N1c0lucHV0ICYmICF0aGlzLmlucHV0VmFsdWUpIHtcbiAgICAgICAgcmV0dXJuICdhY3RpdmUnO1xuICAgICAgfSBlbHNlIGlmICghdGhpcy5mb2N1c0lucHV0ICYmIHRoaXMuaW5wdXRWYWx1ZSkge1xuICAgICAgICByZXR1cm4gJ3R5cGVkJztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiAndHlwaW5nJztcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMuY3VzdG9tU3RhdGU7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldFRleHRGaWVsZElucHV0Rm9udFNpemUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ2hyLWxhYmVsICcgKyB0aGlzLnNpemUgKyAnLXJlZ3VsYXInO1xuICB9XG5cbiAgcHVibGljIGlzTmV3SWNvbihpY29uUG9zaXRpb246ICdsZWZ0JyB8ICdyaWdodCcpOiBib29sZWFuIHtcbiAgICBpZiAoaWNvblBvc2l0aW9uID09ICdsZWZ0Jykge1xuICAgICAgcmV0dXJuIEdyYXZpdHlJY29uQ29tcG9uZW50LmlzTmV3SWNvbih0aGlzLmljb25MZWZ0KTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIEdyYXZpdHlJY29uQ29tcG9uZW50LmlzTmV3SWNvbih0aGlzLmljb25SaWdodCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCBoYXNJbnZhbGlkUGFzc3dvcmRSZXF1aXJlbWVudHMoKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMucGFzc3dvcmRSZXF1aXJlbWVudHMubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy5pc1Bhc3N3b3JkRmllbGQgPSB0cnVlO1xuICAgICAgY29uc3QgaGFzSW52YWxpZCA9IHRoaXMucGFzc3dvcmRSZXF1aXJlbWVudHM/LnNvbWUociA9PiAhci5pc1ZhbGlkKTtcblxuICAgICAgaWYgKHRoaXMuaGFzVXNlclR5cGVkKSB7XG4gICAgICAgIC8vUmVxdWlyZW1lbnRzIGludmFsaWRcbiAgICAgICAgaWYgKGhhc0ludmFsaWQpIHtcbiAgICAgICAgICBpZiAoIXRoaXMuZm9jdXNJbnB1dCB8fCB0aGlzLmFsbFBhc3N3b3JkUmVxdWlyZW1lbnRzVmFsaWQpIHtcbiAgICAgICAgICAgIHRoaXMuY3VzdG9tU3RhdGUgPSAndHlwZWQtZXJyb3InO1xuICAgICAgICAgICAgdGhpcy5zdXBwb3J0VGV4dCA9IHRoaXMuY3VycmVudExhbmcgPT09ICdlbicgPyAnTXVzdCBtZWV0IHBhc3N3b3JkIHJlcXVpcmVtZW50cycgOiAnRGViZSBjdW1wbGlyIGNvbiBsb3MgcmVxdWlzaXRvcyBkZSBjb250cmFzZcOxYSc7XG4gICAgICAgICAgICB0aGlzLmFsbFBhc3N3b3JkUmVxdWlyZW1lbnRzVmFsaWQgPSBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLy9SZXF1aXJlbWVudHMgdmFsaWRcbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgdGhpcy5jdXN0b21TdGF0ZSA9ICd0eXBlZC1wb3NpdGl2ZSc7XG4gICAgICAgICAgdGhpcy5zdXBwb3J0VGV4dCA9IHRoaXMuY3VycmVudExhbmcgPT09ICdlbicgPyAnUmVxdWlyZW1lbnRzIGFwcGxpZWQnIDogJ1JlcXVpc2l0b3MgYXBsaWNhZG9zJztcbiAgICAgICAgICB0aGlzLmFsbFBhc3N3b3JkUmVxdWlyZW1lbnRzVmFsaWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBoYXNJbnZhbGlkO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvbktleURvd25FdmVudCgkZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pbnB1dENvbnRlbnRUeXBlID09ICdudW1iZXInKSB7XG4gICAgICBsZXQgbmF2aWdhdGlvbktleXMgPSBbJ0JhY2tzcGFjZScsICdEZWxldGUnLCAnVGFiJywgJ0VzY2FwZScsICdFbnRlcicsICdIb21lJywgJ0VuZCcsICdBcnJvd0xlZnQnLCAnQXJyb3dSaWdodCcsICdDbGVhcicsICdDb3B5JywgJ1Bhc3RlJ107XG5cbiAgICAgIGlmIChcbiAgICAgICAgbmF2aWdhdGlvbktleXMuaW5kZXhPZigkZXZlbnQua2V5KSA+IC0xIHx8IC8vIEFsbG93OiBuYXZpZ2F0aW9uIGtleXM6IGJhY2tzcGFjZSwgZGVsZXRlLCBhcnJvd3MgZXRjLlxuICAgICAgICAoJGV2ZW50LmtleSA9PT0gJ2EnICYmICRldmVudC5jdHJsS2V5ID09PSB0cnVlKSB8fCAvLyBBbGxvdzogQ3RybCtBXG4gICAgICAgICgkZXZlbnQua2V5ID09PSAnYycgJiYgJGV2ZW50LmN0cmxLZXkgPT09IHRydWUpIHx8IC8vIEFsbG93OiBDdHJsK0NcbiAgICAgICAgKCRldmVudC5rZXkgPT09ICd2JyAmJiAkZXZlbnQuY3RybEtleSA9PT0gdHJ1ZSkgfHwgLy8gQWxsb3c6IEN0cmwrVlxuICAgICAgICAoJGV2ZW50LmtleSA9PT0gJ3gnICYmICRldmVudC5jdHJsS2V5ID09PSB0cnVlKSB8fCAvLyBBbGxvdzogQ3RybCtYXG4gICAgICAgICgkZXZlbnQua2V5ID09PSAnYScgJiYgJGV2ZW50Lm1ldGFLZXkgPT09IHRydWUpIHx8IC8vIEFsbG93OiBDbWQrQSAoTWFjKVxuICAgICAgICAoJGV2ZW50LmtleSA9PT0gJ2MnICYmICRldmVudC5tZXRhS2V5ID09PSB0cnVlKSB8fCAvLyBBbGxvdzogQ21kK0MgKE1hYylcbiAgICAgICAgKCRldmVudC5rZXkgPT09ICd2JyAmJiAkZXZlbnQubWV0YUtleSA9PT0gdHJ1ZSkgfHwgLy8gQWxsb3c6IENtZCtWIChNYWMpXG4gICAgICAgICgkZXZlbnQua2V5ID09PSAneCcgJiYgJGV2ZW50Lm1ldGFLZXkgPT09IHRydWUpIHx8Ly8gQWxsb3c6IENtZCtYIChNYWMpXG4gICAgICAgICgkZXZlbnQua2V5ID09PSAnLicpIHx8ICgkZXZlbnQua2V5ID09PSAnLCcpIC8vIEFsbG93OiBkb3QgYW5kIGNvbW1hIGZvciBkZWNpbWFsXG4gICAgICApIHtcbiAgICAgICAgLy8gbGV0IGl0IGhhcHBlbiwgZG9uJ3QgZG8gYW55dGhpbmdcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICAvLyBFbnN1cmUgdGhhdCBpdCBpcyBhIG51bWJlciBhbmQgc3RvcCB0aGUga2V5cHJlc3NcbiAgICAgIGlmIChcbiAgICAgICAgKCRldmVudC5zaGlmdEtleSB8fCAoJGV2ZW50LmtleUNvZGUgPCA0OCB8fCAkZXZlbnQua2V5Q29kZSA+IDU3KSkgJiZcbiAgICAgICAgKCRldmVudC5rZXlDb2RlIDwgOTYgfHwgJGV2ZW50LmtleUNvZGUgPiAxMDUpXG4gICAgICApIHtcbiAgICAgICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuaW5wdXRDb250ZW50VHlwZSA9PSAnZGF0ZScpIHtcbiAgICAgIGNvbnN0IGFsbG93ZWRLZXlzID0gW1xuICAgICAgICAnQmFja3NwYWNlJywgJ0RlbGV0ZScsICdUYWInLCAnRXNjYXBlJywgJ0VudGVyJyxcbiAgICAgICAgJ0Fycm93TGVmdCcsICdBcnJvd1JpZ2h0JywgJ0Fycm93VXAnLCAnQXJyb3dEb3duJ1xuICAgICAgXTtcblxuICAgICAgaWYgKGFsbG93ZWRLZXlzLmluY2x1ZGVzKCRldmVudC5rZXkpIHx8ICRldmVudC5tZXRhS2V5IHx8ICRldmVudC5jdHJsS2V5KSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgaWYgKC9cXEQvLnRlc3QoJGV2ZW50LmtleSkgJiYgJGV2ZW50LmtleSAhPT0gJy8nKSB7XG4gICAgICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBmb3JtYXREYXRlSW5wdXQoZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIGNvbnN0IGVsID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XG4gICAgbGV0IHZhbHVlID0gZWwudmFsdWU7XG4gICAgbGV0IGZvcm1hdHRlZCA9ICcnO1xuXG4gICAgbGV0IGN1cnNvclBvc2l0aW9uID0gZWwuc2VsZWN0aW9uU3RhcnQgfHwgMDtcbiAgICBjb25zdCBpc0RlbGV0aW5nID0gZXZlbnQuaW5wdXRUeXBlID09PSAnZGVsZXRlQ29udGVudEJhY2t3YXJkJyB8fFxuICAgICAgZXZlbnQuaW5wdXRUeXBlID09PSAnZGVsZXRlQ29udGVudEZvcndhcmQnO1xuXG4gICAgaWYgKCh2YWx1ZS5sZW5ndGggPT09IDMgJiYgdmFsdWVbMl0gPT09ICcvJykgfHxcbiAgICAgICh2YWx1ZS5sZW5ndGggPT09IDYgJiYgdmFsdWVbNV0gPT09ICcvJykpIHtcbiAgICAgIGZvcm1hdHRlZCA9IHZhbHVlO1xuICAgIH0gZWxzZSBpZiAoL1xcRC8udGVzdCh2YWx1ZVt2YWx1ZS5sZW5ndGggLSAxXSkpIHtcbiAgICAgIGZvcm1hdHRlZCA9IHZhbHVlLnNsaWNlKDAsIC0xKTtcbiAgICAgIGN1cnNvclBvc2l0aW9uID0gTWF0aC5tYXgoMCwgY3Vyc29yUG9zaXRpb24gLSAxKTtcblxuICAgICAgaWYgKGZvcm1hdHRlZC5sZW5ndGggPT09IDEgfHwgZm9ybWF0dGVkLmxlbmd0aCA9PT0gNCkge1xuICAgICAgICBjdXJzb3JQb3NpdGlvbisrO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBudW1iZXJzID0gdmFsdWUucmVwbGFjZSgvXFwvL2csICcnKTtcblxuICAgICAgbGV0IGRheSA9IG51bWJlcnMuc2xpY2UoMCwgMik7XG4gICAgICBsZXQgbW9udGggPSBudW1iZXJzLnNsaWNlKDIsIDQpO1xuICAgICAgbGV0IHllYXIgPSBudW1iZXJzLnNsaWNlKDQsIDgpO1xuXG4gICAgICBpZiAoZGF5Lmxlbmd0aCA+IDApIGZvcm1hdHRlZCArPSBkYXk7XG4gICAgICBpZiAoZGF5Lmxlbmd0aCA9PT0gMiAmJiBtb250aC5sZW5ndGggPiAwKSBmb3JtYXR0ZWQgKz0gJy8nO1xuICAgICAgaWYgKG1vbnRoLmxlbmd0aCA+IDApIGZvcm1hdHRlZCArPSBtb250aDtcbiAgICAgIGlmIChtb250aC5sZW5ndGggPT09IDIgJiYgeWVhci5sZW5ndGggPiAwKSBmb3JtYXR0ZWQgKz0gJy8nO1xuICAgICAgaWYgKHllYXIubGVuZ3RoID4gMCkgZm9ybWF0dGVkICs9IHllYXI7XG5cbiAgICAgIGNvbnN0IGN1cnJlbnRMZW5ndGggPSB2YWx1ZS5sZW5ndGg7XG4gICAgICBjb25zdCBuZXdMZW5ndGggPSBmb3JtYXR0ZWQubGVuZ3RoO1xuXG4gICAgICBpZiAobmV3TGVuZ3RoID4gY3VycmVudExlbmd0aCAmJiAhaXNEZWxldGluZykge1xuICAgICAgICBjdXJzb3JQb3NpdGlvbisrXG4gICAgICB9XG4gICAgfVxuXG4gICAgZWwudmFsdWUgPSBmb3JtYXR0ZWQ7XG4gICAgdGhpcy5pbnB1dFZhbHVlID0gZm9ybWF0dGVkO1xuICAgIGVsLnNldFNlbGVjdGlvblJhbmdlKGN1cnNvclBvc2l0aW9uLCBjdXJzb3JQb3NpdGlvbik7XG5cbiAgICB0aGlzLmNoYW5nZUlucHV0VmFsdWUoKTtcbiAgfVxufVxuIiwiPGxhYmVsIGNsYXNzPVwiaHItbGFiZWwgc20tYm9sZCB7e2dldFRleHRGaWVsZFN0YXR1cygpfX1cIiBbY2xhc3MuY3VzdG9tLWxhYmVsLXNpemVdPVwic2l6ZSA9PSAnc20nXCIgKm5nSWY9XCJsYWJlbFwiPlxuICB7eyBsYWJlbCB9fVxuICA8c3BhbiAqbmdJZj1cInJlcXVpcmVkIHx8IGdldFRleHRGaWVsZFN0YXR1cygpID09ICd0eXBlZC1lcnJvcidcIj4qIDwvc3Bhbj5cbiAgPHNwYW4gW2NsYXNzLmV4dHJhLXRleHRdPVwibGFiZWxFeHRyYVRleHRcIiAqbmdJZj1cImxhYmVsRXh0cmFUZXh0XCI+e3sgbGFiZWxFeHRyYVRleHQgfX08L3NwYW4+XG48L2xhYmVsPlxuPGRpdiBjbGFzcz1cImdyYXZpdHktaW5wdXQtZmllbGQge3t0ZXh0RmllbGRUeXBlfX0ge3tzaXplfX0ge3t3aWR0aH19LXdpZHRoIHt7Z2V0VGV4dEZpZWxkU3RhdHVzKCl9fVwiPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiaWNvbkxlZnRcIj5cbiAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImljb25zXCIgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cIntpY29uUG9zaXRpb246ICdsZWZ0J31cIj48L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxzcGFuIGNsYXNzPVwie3tnZXRUZXh0RmllbGRJbnB1dEZvbnRTaXplKCl9fSBwcmVmaXhcIj57eyBwcmVmaXggfX08L3NwYW4+XG4gIDxpbnB1dCBbYXR0ci5kYXRhLWN5XT1cImN5cHJlc3NUYWcgPyAndGV4dEZpZWxkXycgKyBjeXByZXNzVGFnIDogbnVsbFwiXG4gICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJjdXN0b21TdGF0ZSA9PSAnZGlzYWJsZWQnID8gdHJ1ZSA6IG51bGxcIlxuICAgICAgICAgW2F0dHIucmVhZG9ubHldPVwiY3VzdG9tU3RhdGUgPT0gJ3JlYWRvbmx5JyA/IHRydWUgOiBudWxsXCJcbiAgICAgICAgIFthdXRvY29tcGxldGVdPVwiYXV0b2NvbXBsZXRlXCJcbiAgICAgICAgIFttYXhMZW5ndGhdPVwiaW5wdXRDb250ZW50VHlwZSA9PT0gJ2RhdGUnID8gMTAgOiAodmFsaWRhdGlvbnM/Lm1heExlbmd0aCB8fCAxMDApXCJcbiAgICAgICAgIFttaW5MZW5ndGhdPVwidmFsaWRhdGlvbnM/Lm1pbkxlbmd0aCA/IHZhbGlkYXRpb25zPy5taW5MZW5ndGggOiAwXCJcbiAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJnZXRQbGFjZWhvbGRlcigpXCJcbiAgICAgICAgIFt0eXBlXT1cImlucHV0Q29udGVudFR5cGUgPT09ICdkYXRlJyA/ICd0ZXh0JyA6IChpbnB1dENvbnRlbnRUeXBlICE9PSAnbnVtYmVyJyA/IGlucHV0Q29udGVudFR5cGUgOiAndGV4dCcpXCJcbiAgICAgICAgIFt2YWx1ZV09XCJpbnB1dFZhbHVlXCJcblxuICAgICAgICAgKGJsdXIpPVwiZm9jdXNJbnB1dCA9IGZhbHNlXCJcbiAgICAgICAgIChjaGFuZ2UpPVwiY2hhbmdlSW5wdXRWYWx1ZSgpXCJcbiAgICAgICAgIChmb2N1cyk9XCJmb2N1c0lucHV0ID0gdHJ1ZVwiXG4gICAgICAgICAoa2V5ZG93bik9XCIgb25LZXlEb3duRXZlbnQoJGV2ZW50KVwiXG4gICAgICAgICAoa2V5dXApPVwiaW5wdXRDb250ZW50VHlwZSA9PT0gJ2RhdGUnID9cbiAgICAgICAgICBmb3JtYXREYXRlSW5wdXQoJGV2ZW50KSA6IGNoYW5nZUlucHV0VmFsdWUoKVwiXG5cbiAgICAgICAgIGNsYXNzPVwie3tnZXRUZXh0RmllbGRJbnB1dEZvbnRTaXplKCl9fVwiXG4gICAgICAgICAjaW5wdXRFbGVtZW50XG4gICAgICAgICAqbmdJZj1cInRleHRGaWVsZFR5cGUgPT0gJ2lucHV0J1wiPlxuXG4gIDx0ZXh0YXJlYSBbYXR0ci5kYXRhLWN5XT1cImN5cHJlc3NUYWcgPyAndGV4dEZpZWxkXycgKyBjeXByZXNzVGFnIDogbnVsbFwiXG4gICAgICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJjdXN0b21TdGF0ZSA9PSAnZGlzYWJsZWQnID8gdHJ1ZSA6IG51bGxcIlxuICAgICAgICAgICAgW2F0dHIucmVhZG9ubHldPVwiY3VzdG9tU3RhdGUgPT0gJ3JlYWRvbmx5JyA/IHRydWUgOiBudWxsXCJcbiAgICAgICAgICAgIFttYXhMZW5ndGhdPVwidmFsaWRhdGlvbnM/Lm1heExlbmd0aCA/IHZhbGlkYXRpb25zPy5tYXhMZW5ndGggOiAyMDBcIlxuICAgICAgICAgICAgW21pbkxlbmd0aF09XCJ2YWxpZGF0aW9ucz8ubWluTGVuZ3RoID8gdmFsaWRhdGlvbnM/Lm1pbkxlbmd0aCA6IDBcIlxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cImdldFBsYWNlaG9sZGVyKClcIlxuICAgICAgICAgICAgW3ZhbHVlXT1cImlucHV0VmFsdWVcIlxuXG4gICAgICAgICAgICAoYmx1cik9XCJmb2N1c0lucHV0ID0gZmFsc2VcIlxuICAgICAgICAgICAgKGNoYW5nZSk9XCJjaGFuZ2VJbnB1dFZhbHVlKClcIlxuICAgICAgICAgICAgKGZvY3VzKT1cImZvY3VzSW5wdXQgPSB0cnVlXCJcbiAgICAgICAgICAgIChrZXlkb3duKT1cIm9uS2V5RG93bkV2ZW50KCRldmVudClcIlxuICAgICAgICAgICAgKGtleXVwKT1cImNoYW5nZUlucHV0VmFsdWUoKVwiXG5cbiAgICAgICAgICAgIGNsYXNzPVwie3tnZXRUZXh0RmllbGRJbnB1dEZvbnRTaXplKCl9fVwiXG4gICAgICAgICAgICByb3dzPVwiMVwiXG5cbiAgICAgICAgICAgICN0ZXh0QXJlYUVsZW1lbnRcblxuICAgICAgICAgICAgKm5nSWY9XCJ0ZXh0RmllbGRUeXBlID09ICd0ZXh0YXJlYSdcIj48L3RleHRhcmVhPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiaWNvblJpZ2h0XCI+XG4gICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJpY29uc1wiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7aWNvblBvc2l0aW9uOiAncmlnaHQnfVwiPjwvbmctY29udGFpbmVyPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuPGRpdiBjbGFzcz1cInN1cHBvcnQtdGV4dC1jb250YWluZXIge3tzaXplfX0ge3t3aWR0aH19LXdpZHRoXCI+XG4gIDxwIGNsYXNzPVwiaHItbGFiZWwgc20tcmVndWxhciBzdXBwb3J0aW5nLXRleHQge3tnZXRUZXh0RmllbGRTdGF0dXMoKX19IHt7c2l6ZX19XCJcbiAgICAgW2NsYXNzLmN1c3RvbS1sYWJlbC1zaXplXT1cInNpemUgPT0gJ3NtJ1wiICpuZ0lmPVwic3VwcG9ydFRleHRcIj5cbiAgICA8Z3Jhdml0eS1pY29uIFtjbGFzcy5uZWdhdGl2ZV09XCJnZXRUZXh0RmllbGRTdGF0dXMoKSA9PSAndHlwZWQtZXJyb3InXCIgW2ljb25OYW1lXT1cIidxdWVzdGlvbi1jaXJjbGUnXCJcbiAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZ2V0VGV4dEZpZWxkU3RhdHVzKCkgPT0gJ3R5cGVkLWVycm9yJyB8fCBjaGFyYWN0ZXJMaW1pdFwiXG4gICAgICAgICAgICAgICAgICBbaWNvblNpemVdPVwiJ21kLTE2J1wiPjwvZ3Jhdml0eS1pY29uPlxuICAgIDxncmF2aXR5LWljb24gY2xhc3M9XCJwb3NpdGl2ZVwiIFtpY29uTmFtZV09XCInY2hlY2snXCIgKm5nSWY9XCIhaGFzSW52YWxpZFBhc3N3b3JkUmVxdWlyZW1lbnRzICYmIGlzUGFzc3dvcmRGaWVsZFwiXG4gICAgICAgICAgICAgICAgICBbaWNvblNpemVdPVwiJ21kLTE2J1wiPjwvZ3Jhdml0eS1pY29uPlxuICAgIDxncmF2aXR5LWljb24gW25nQ2xhc3NdPVwie25lZ2F0aXZlOiBnZXRUZXh0RmllbGRTdGF0dXMoKSA9PT0gJ3R5cGVkLWVycm9yJyxwb3NpdGl2ZTogZ2V0VGV4dEZpZWxkU3RhdHVzKCkgPT09ICd0eXBlZC1wb3NpdGl2ZSd9XCJcbiAgICAgICAgICAgICAgICAgIFtpY29uTmFtZV09XCJzdXBwb3J0VGV4dEljb25cIiAqbmdJZj1cInN1cHBvcnRUZXh0SWNvblwiIFtpY29uU2l6ZV09XCInbWQtMTYnXCI+PC9ncmF2aXR5LWljb24+XG4gICAge3sgc3VwcG9ydFRleHQgfX1cbiAgPC9wPlxuICA8cCBjbGFzcz1cImhyLWxhYmVsIHNtLXJlZ3VsYXIgY2hhcmFjdGVyLWNvdW50ZXIge3tnZXRUZXh0RmllbGRTdGF0dXMoKX19XCJcbiAgICAgKm5nSWY9XCJjaGFyYWN0ZXJDb3VudGVyXCI+e3sgaW5wdXRWYWx1ZS5sZW5ndGggfX0vMjAwPC9wPlxuPC9kaXY+XG5cblxuPGRpdiBjbGFzcz1cInBhc3N3b3JkLXJlcXVpcmVtZW50c1wiICpuZ0lmPVwicGFzc3dvcmRSZXF1aXJlbWVudHMubGVuZ3RoPiAwICYmIGhhc0ludmFsaWRQYXNzd29yZFJlcXVpcmVtZW50c1wiPlxuICA8cCBjbGFzcz1cImhyLWxhYmVsIHNtLWJvbGRcIj57eyBjdXJyZW50TGFuZyA9PSAnZW4nID8gJ1Bhc3N3b3JkIHJlcXVpcmVtZW50czonIDogJ1JlcXVpc2l0b3MgZGUgY29udHJhc2XDsWE6JyB9fTwvcD5cbiAgPHVsIGNsYXNzPVwicmVxdWlyZW1lbnRzXCI+XG4gICAgPGxpIGNsYXNzPVwiaHItbGFiZWwgc20tcmVndWxhclwiICpuZ0Zvcj1cImxldCByZXF1aXJlbWVudCBvZiBwYXNzd29yZFJlcXVpcmVtZW50c1wiXG4gICAgICAgIFtuZ0NsYXNzXT1cInt2YWxpZDogaGFzVXNlclR5cGVkICYmIHJlcXVpcmVtZW50LmlzVmFsaWQsIGludmFsaWQ6IGhhc1VzZXJUeXBlZCAmJiAhZm9jdXNJbnB1dCAmJiAhcmVxdWlyZW1lbnQuaXNWYWxpZH1cIj5cbiAgICAgIHt7IHJlcXVpcmVtZW50LmxhYmVsIH19XG4gICAgPC9saT5cbiAgPC91bD5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2ljb25zIGxldC1pY29uUG9zaXRpb249XCJpY29uUG9zaXRpb25cIj5cbiAgPGdyYXZpdHktaWNvbiAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOyBoYW5kbGVJY29uQ2xpY2soaWNvblBvc2l0aW9uKVwiIGNsYXNzPVwie3tpY29uUG9zaXRpb259fVwiXG4gICAgICAgICAgICAgICAgW2NsYXNzLnBvaW50ZXJdPVwiKGljb25Qb3NpdGlvbiA9PSAnbGVmdCcgJiYgY2xpY2tPbkxlZnRJY29uKSB8fCAoaWNvblBvc2l0aW9uID09ICdyaWdodCcgJiYgY2xpY2tPblJpZ2h0SWNvbilcIlxuICAgICAgICAgICAgICAgIFtpY29uTmFtZV09XCJpY29uUG9zaXRpb24gPT0gJ2xlZnQnID8gaWNvbkxlZnQgOiBpY29uUmlnaHRcIiBbc3R5bGUuLS1pY29uLWNvbG9yXT1cImljb25Db2xvclwiXG4gICAgICAgICAgICAgICAgW2ljb25TaXplXT1cImlzTmV3SWNvbihpY29uUG9zaXRpb24pID8gJ21kLTE2JyA6IG51bGxcIiBbYXR0ci5kYXRhLWN5XT1cIid0ZXh0RmllbGRfaWNvbidcIj48L2dyYXZpdHktaWNvbj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|