@aquera/nile-elements 1.0.1-beta-1.2 → 1.0.1-beta-1.4
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 +8 -0
- package/demo/index.html +23 -8
- package/demo/nxtgen.css +40 -3
- package/demo/variables.css +45 -0
- package/dist/index.cjs.js +1 -1
- package/dist/index.esm.js +1 -1
- package/dist/index.js +229 -167
- package/dist/nile-accordion/nile-accordion.cjs.js +1 -1
- package/dist/nile-accordion/nile-accordion.cjs.js.map +1 -1
- package/dist/nile-accordion/nile-accordion.esm.js +4 -4
- package/dist/nile-auto-complete/nile-auto-complete.cjs.js +1 -1
- package/dist/nile-auto-complete/nile-auto-complete.cjs.js.map +1 -1
- package/dist/nile-auto-complete/nile-auto-complete.esm.js +4 -4
- package/dist/nile-avatar/nile-avatar.cjs.js +1 -1
- package/dist/nile-avatar/nile-avatar.cjs.js.map +1 -1
- package/dist/nile-avatar/nile-avatar.esm.js +5 -4
- package/dist/nile-avatar/nile-avatar.test.cjs.js +1 -1
- package/dist/nile-avatar/nile-avatar.test.cjs.js.map +1 -1
- package/dist/nile-avatar/nile-avatar.test.esm.js +1 -1
- package/dist/nile-badge/index.cjs.js +1 -1
- package/dist/nile-badge/index.esm.js +1 -1
- package/dist/nile-badge/nile-badge.cjs.js +1 -1
- package/dist/nile-badge/nile-badge.cjs.js.map +1 -1
- package/dist/nile-badge/nile-badge.esm.js +1 -1
- package/dist/nile-badge/nile-badge.test.cjs.js +1 -1
- package/dist/nile-badge/nile-badge.test.cjs.js.map +1 -1
- package/dist/nile-badge/nile-badge.test.esm.js +1 -1
- package/dist/nile-breadcrumb-item/nile-breadcrumb-item.cjs.js +1 -1
- package/dist/nile-breadcrumb-item/nile-breadcrumb-item.cjs.js.map +1 -1
- package/dist/nile-breadcrumb-item/nile-breadcrumb-item.esm.js +5 -4
- package/dist/nile-button/index.cjs.js +1 -1
- package/dist/nile-button/index.esm.js +1 -1
- package/dist/nile-button/nile-button.cjs.js +1 -1
- package/dist/nile-button/nile-button.cjs.js.map +1 -1
- package/dist/nile-button/nile-button.esm.js +5 -3
- package/dist/nile-button/nile-button.test.cjs.js +1 -1
- package/dist/nile-button/nile-button.test.cjs.js.map +1 -1
- package/dist/nile-button/nile-button.test.esm.js +1 -1
- package/dist/nile-button-filter/nile-button-filter.cjs.js +1 -1
- package/dist/nile-button-filter/nile-button-filter.cjs.js.map +1 -1
- package/dist/nile-button-filter/nile-button-filter.esm.js +12 -10
- package/dist/nile-calendar/nile-calendar.cjs.js +1 -1
- package/dist/nile-calendar/nile-calendar.cjs.js.map +1 -1
- package/dist/nile-calendar/nile-calendar.esm.js +7 -5
- package/dist/nile-calendar/nile-calendar.test.cjs.js +1 -1
- package/dist/nile-calendar/nile-calendar.test.cjs.js.map +1 -1
- package/dist/nile-calendar/nile-calendar.test.esm.js +1 -1
- package/dist/nile-checkbox/nile-checkbox.cjs.js +1 -1
- package/dist/nile-checkbox/nile-checkbox.cjs.js.map +1 -1
- package/dist/nile-checkbox/nile-checkbox.css.cjs.js +1 -1
- package/dist/nile-checkbox/nile-checkbox.css.cjs.js.map +1 -1
- package/dist/nile-checkbox/nile-checkbox.css.esm.js +3 -0
- package/dist/nile-checkbox/nile-checkbox.esm.js +9 -7
- package/dist/nile-chip/nile-chip.test.cjs.js +1 -1
- package/dist/nile-chip/nile-chip.test.cjs.js.map +1 -1
- package/dist/nile-chip/nile-chip.test.esm.js +1 -1
- package/dist/nile-code-editor/nile-code-editor.cjs.js +2 -2
- package/dist/nile-code-editor/nile-code-editor.cjs.js.map +1 -1
- package/dist/nile-code-editor/nile-code-editor.esm.js +3 -2
- package/dist/nile-dialog/index.cjs.js +1 -1
- package/dist/nile-dialog/index.esm.js +1 -1
- package/dist/nile-dialog/nile-dialog.cjs.js +1 -1
- package/dist/nile-dialog/nile-dialog.cjs.js.map +1 -1
- package/dist/nile-dialog/nile-dialog.esm.js +8 -7
- package/dist/nile-dialog/nile-dialog.test.cjs.js +1 -1
- package/dist/nile-dialog/nile-dialog.test.cjs.js.map +1 -1
- package/dist/nile-dialog/nile-dialog.test.esm.js +1 -1
- package/dist/nile-drawer/index.cjs.js +1 -1
- package/dist/nile-drawer/index.esm.js +1 -1
- package/dist/nile-drawer/nile-drawer.cjs.js +1 -1
- package/dist/nile-drawer/nile-drawer.cjs.js.map +1 -1
- package/dist/nile-drawer/nile-drawer.esm.js +3 -2
- package/dist/nile-drawer/nile-drawer.test.cjs.js +1 -1
- package/dist/nile-drawer/nile-drawer.test.cjs.js.map +1 -1
- package/dist/nile-drawer/nile-drawer.test.esm.js +1 -1
- package/dist/nile-empty-state/nile-empty-state.cjs.js +1 -1
- package/dist/nile-empty-state/nile-empty-state.cjs.js.map +1 -1
- package/dist/nile-empty-state/nile-empty-state.esm.js +8 -8
- package/dist/nile-error-message/nile-error-message.cjs.js +1 -1
- package/dist/nile-error-message/nile-error-message.cjs.js.map +1 -1
- package/dist/nile-error-message/nile-error-message.esm.js +7 -6
- package/dist/nile-error-notification/nile-error-notification.cjs.js +1 -1
- package/dist/nile-error-notification/nile-error-notification.cjs.js.map +1 -1
- package/dist/nile-error-notification/nile-error-notification.esm.js +2 -1
- package/dist/nile-file-preview/nile-file-preview.template.cjs.js +1 -1
- package/dist/nile-file-preview/nile-file-preview.template.cjs.js.map +1 -1
- package/dist/nile-file-preview/nile-file-preview.template.esm.js +49 -41
- package/dist/nile-file-upload/nile-file-upload.template.cjs.js +3 -3
- package/dist/nile-file-upload/nile-file-upload.template.cjs.js.map +1 -1
- package/dist/nile-file-upload/nile-file-upload.template.esm.js +35 -31
- package/dist/nile-filter-chip/nile-filter-chip.cjs.js +1 -1
- package/dist/nile-filter-chip/nile-filter-chip.cjs.js.map +1 -1
- package/dist/nile-filter-chip/nile-filter-chip.esm.js +3 -3
- package/dist/nile-form-error-message/nile-form-error-message.cjs.js +1 -1
- package/dist/nile-form-error-message/nile-form-error-message.cjs.js.map +1 -1
- package/dist/nile-form-error-message/nile-form-error-message.esm.js +3 -3
- package/dist/nile-form-help-text/nile-form-help-text.cjs.js +1 -1
- package/dist/nile-form-help-text/nile-form-help-text.cjs.js.map +1 -1
- package/dist/nile-form-help-text/nile-form-help-text.esm.js +5 -5
- package/dist/nile-hero/nile-hero.cjs.js +1 -1
- package/dist/nile-hero/nile-hero.cjs.js.map +1 -1
- package/dist/nile-hero/nile-hero.esm.js +4 -4
- package/dist/nile-hero-header/nile-hero-header.cjs.js +1 -1
- package/dist/nile-hero-header/nile-hero-header.cjs.js.map +1 -1
- package/dist/nile-hero-header/nile-hero-header.esm.js +2 -2
- package/dist/nile-icon/icons/svg/index.cjs.js +1 -1
- package/dist/nile-icon/icons/svg/index.esm.js +1 -1
- package/dist/nile-icon/icons/svg/ng-action.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-action.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-action.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-alert-circle.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-alert-circle.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-alert-circle.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-arrow-narrow-right.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-arrow-narrow-right.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-arrow-narrow-right.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-button-loading-blue-animated.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-button-loading-blue-animated.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-button-loading-blue-animated.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-button-loading-blue.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-button-loading-blue.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-button-loading-blue.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-check-circle-broken.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-check-circle-broken.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-check-circle-broken.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-check.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-check.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-check.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-file-06.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-file-06.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-file-06.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-image-03.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-image-03.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-image-03.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-minus.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-minus.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-minus.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-x-circle.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-x-circle.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-x-circle.esm.js +1 -0
- package/dist/nile-icon/index.cjs.js +1 -1
- package/dist/nile-icon/index.cjs.js.map +1 -1
- package/dist/nile-icon/index.esm.js +3 -3
- package/dist/nile-icon/nile-icon.test.cjs.js +1 -1
- package/dist/nile-icon/nile-icon.test.cjs.js.map +1 -1
- package/dist/nile-icon/nile-icon.test.esm.js +1 -1
- package/dist/nile-icon-button/index.cjs.js +1 -1
- package/dist/nile-icon-button/index.esm.js +1 -1
- package/dist/nile-icon-button/nile-icon-button.cjs.js +1 -1
- package/dist/nile-icon-button/nile-icon-button.cjs.js.map +1 -1
- package/dist/nile-icon-button/nile-icon-button.esm.js +6 -4
- package/dist/nile-input/index.cjs.js +1 -1
- package/dist/nile-input/index.esm.js +1 -1
- package/dist/nile-input/nile-input.cjs.js +1 -1
- package/dist/nile-input/nile-input.cjs.js.map +1 -1
- package/dist/nile-input/nile-input.esm.js +10 -8
- package/dist/nile-input/nile-input.test.cjs.js +1 -1
- package/dist/nile-input/nile-input.test.cjs.js.map +1 -1
- package/dist/nile-input/nile-input.test.esm.js +1 -1
- package/dist/nile-list-item/nile-list-item.cjs.js +1 -1
- package/dist/nile-list-item/nile-list-item.cjs.js.map +1 -1
- package/dist/nile-list-item/nile-list-item.esm.js +3 -2
- package/dist/nile-menu/nile-menu.cjs.js +1 -1
- package/dist/nile-menu/nile-menu.cjs.js.map +1 -1
- package/dist/nile-menu/nile-menu.esm.js +1 -1
- package/dist/nile-menu-item/index.cjs.js +1 -1
- package/dist/nile-menu-item/index.esm.js +1 -1
- package/dist/nile-menu-item/nile-menu-item.cjs.js +1 -1
- package/dist/nile-menu-item/nile-menu-item.cjs.js.map +1 -1
- package/dist/nile-menu-item/nile-menu-item.esm.js +5 -3
- package/dist/nile-option/index.cjs.js +1 -1
- package/dist/nile-option/index.esm.js +1 -1
- package/dist/nile-option/nile-option.cjs.js +1 -1
- package/dist/nile-option/nile-option.cjs.js.map +1 -1
- package/dist/nile-option/nile-option.esm.js +1 -1
- package/dist/nile-pagination/nile-pagination.cjs.js +1 -1
- package/dist/nile-pagination/nile-pagination.cjs.js.map +1 -1
- package/dist/nile-pagination/nile-pagination.esm.js +24 -21
- package/dist/nile-section-message/nile-section-message.cjs.js +1 -1
- package/dist/nile-section-message/nile-section-message.cjs.js.map +1 -1
- package/dist/nile-section-message/nile-section-message.esm.js +4 -4
- package/dist/nile-select/index.cjs.js +1 -1
- package/dist/nile-select/index.esm.js +1 -1
- package/dist/nile-select/nile-select.cjs.js +1 -1
- package/dist/nile-select/nile-select.cjs.js.map +1 -1
- package/dist/nile-select/nile-select.esm.js +6 -5
- package/dist/nile-select/nile-select.test.cjs.js +1 -1
- package/dist/nile-select/nile-select.test.cjs.js.map +1 -1
- package/dist/nile-select/nile-select.test.esm.js +12 -12
- package/dist/nile-sidebar-menu-items/nile-sidebar-menu-items.cjs.js +1 -1
- package/dist/nile-sidebar-menu-items/nile-sidebar-menu-items.cjs.js.map +1 -1
- package/dist/nile-sidebar-menu-items/nile-sidebar-menu-items.esm.js +1 -0
- package/dist/nile-slide-toggle/nile-slide-toggle.css.cjs.js +1 -1
- package/dist/nile-slide-toggle/nile-slide-toggle.css.cjs.js.map +1 -1
- package/dist/nile-slide-toggle/nile-slide-toggle.css.esm.js +7 -1
- package/dist/nile-switcher/nile-switcher.cjs.js +1 -1
- package/dist/nile-switcher/nile-switcher.cjs.js.map +1 -1
- package/dist/nile-switcher/nile-switcher.esm.js +3 -1
- package/dist/nile-tab/index.cjs.js +1 -1
- package/dist/nile-tab/index.esm.js +1 -1
- package/dist/nile-tab/nile-tab.cjs.js +1 -1
- package/dist/nile-tab/nile-tab.cjs.js.map +1 -1
- package/dist/nile-tab/nile-tab.esm.js +3 -3
- package/dist/nile-tab-group/index.cjs.js +1 -1
- package/dist/nile-tab-group/index.esm.js +1 -1
- package/dist/nile-tab-group/nile-tab-group.cjs.js +1 -1
- package/dist/nile-tab-group/nile-tab-group.cjs.js.map +1 -1
- package/dist/nile-tab-group/nile-tab-group.esm.js +3 -3
- package/dist/nile-tab-group/nile-tab-group.test.cjs.js +1 -1
- package/dist/nile-tab-group/nile-tab-group.test.cjs.js.map +1 -1
- package/dist/nile-tab-group/nile-tab-group.test.esm.js +1 -1
- package/dist/nile-table-header-item/nile-table-header-item.cjs.js +1 -1
- package/dist/nile-table-header-item/nile-table-header-item.cjs.js.map +1 -1
- package/dist/nile-table-header-item/nile-table-header-item.css.cjs.js +1 -1
- package/dist/nile-table-header-item/nile-table-header-item.css.cjs.js.map +1 -1
- package/dist/nile-table-header-item/nile-table-header-item.css.esm.js +11 -5
- package/dist/nile-table-header-item/nile-table-header-item.esm.js +15 -10
- package/dist/nile-tag/index.cjs.js +1 -1
- package/dist/nile-tag/index.esm.js +1 -1
- package/dist/nile-tag/nile-tag.cjs.js +1 -1
- package/dist/nile-tag/nile-tag.cjs.js.map +1 -1
- package/dist/nile-tag/nile-tag.esm.js +2 -2
- package/dist/nile-toast/index.cjs.js +1 -1
- package/dist/nile-toast/index.esm.js +1 -1
- package/dist/nile-toast/nile-toast.cjs.js +1 -1
- package/dist/nile-toast/nile-toast.cjs.js.map +1 -1
- package/dist/nile-toast/nile-toast.esm.js +11 -11
- package/dist/nile-tree/index.cjs.js +1 -1
- package/dist/nile-tree/index.esm.js +1 -1
- package/dist/nile-tree/nile-tree.cjs.js +1 -1
- package/dist/nile-tree/nile-tree.cjs.js.map +1 -1
- package/dist/nile-tree/nile-tree.esm.js +1 -1
- package/dist/nile-tree-item/index.cjs.js +1 -1
- package/dist/nile-tree-item/index.esm.js +1 -1
- package/dist/nile-tree-item/nile-tree-item.cjs.js +1 -1
- package/dist/nile-tree-item/nile-tree-item.cjs.js.map +1 -1
- package/dist/nile-tree-item/nile-tree-item.esm.js +3 -3
- package/dist/nile-virtual-select/index.cjs.js +1 -1
- package/dist/nile-virtual-select/index.esm.js +1 -1
- package/dist/nile-virtual-select/nile-virtual-select.cjs.js +1 -1
- package/dist/nile-virtual-select/nile-virtual-select.cjs.js.map +1 -1
- package/dist/nile-virtual-select/nile-virtual-select.esm.js +8 -7
- package/dist/src/nile-accordion/nile-accordion.js +2 -2
- package/dist/src/nile-accordion/nile-accordion.js.map +1 -1
- package/dist/src/nile-auto-complete/nile-auto-complete.js +1 -1
- package/dist/src/nile-auto-complete/nile-auto-complete.js.map +1 -1
- package/dist/src/nile-avatar/nile-avatar.js +5 -4
- package/dist/src/nile-avatar/nile-avatar.js.map +1 -1
- package/dist/src/nile-breadcrumb-item/nile-breadcrumb-item.js +2 -1
- package/dist/src/nile-breadcrumb-item/nile-breadcrumb-item.js.map +1 -1
- package/dist/src/nile-button/nile-button.js +4 -2
- package/dist/src/nile-button/nile-button.js.map +1 -1
- package/dist/src/nile-button-filter/nile-button-filter.js +5 -3
- package/dist/src/nile-button-filter/nile-button-filter.js.map +1 -1
- package/dist/src/nile-calendar/nile-calendar.js +4 -2
- package/dist/src/nile-calendar/nile-calendar.js.map +1 -1
- package/dist/src/nile-checkbox/nile-checkbox.css.js +3 -0
- package/dist/src/nile-checkbox/nile-checkbox.css.js.map +1 -1
- package/dist/src/nile-checkbox/nile-checkbox.js +4 -2
- package/dist/src/nile-checkbox/nile-checkbox.js.map +1 -1
- package/dist/src/nile-code-editor/nile-code-editor.js +2 -1
- package/dist/src/nile-code-editor/nile-code-editor.js.map +1 -1
- package/dist/src/nile-dialog/nile-dialog.js +2 -1
- package/dist/src/nile-dialog/nile-dialog.js.map +1 -1
- package/dist/src/nile-drawer/nile-drawer.js +2 -1
- package/dist/src/nile-drawer/nile-drawer.js.map +1 -1
- package/dist/src/nile-empty-state/nile-empty-state.js +7 -7
- package/dist/src/nile-empty-state/nile-empty-state.js.map +1 -1
- package/dist/src/nile-error-message/nile-error-message.js +4 -3
- package/dist/src/nile-error-message/nile-error-message.js.map +1 -1
- package/dist/src/nile-error-notification/nile-error-notification.js +2 -1
- package/dist/src/nile-error-notification/nile-error-notification.js.map +1 -1
- package/dist/src/nile-file-preview/nile-file-preview.template.js +20 -12
- package/dist/src/nile-file-preview/nile-file-preview.template.js.map +1 -1
- package/dist/src/nile-file-upload/nile-file-upload.template.js +14 -10
- package/dist/src/nile-file-upload/nile-file-upload.template.js.map +1 -1
- package/dist/src/nile-filter-chip/nile-filter-chip.js +1 -1
- package/dist/src/nile-filter-chip/nile-filter-chip.js.map +1 -1
- package/dist/src/nile-form-error-message/nile-form-error-message.js +1 -1
- package/dist/src/nile-form-error-message/nile-form-error-message.js.map +1 -1
- package/dist/src/nile-form-help-text/nile-form-help-text.js +2 -2
- package/dist/src/nile-form-help-text/nile-form-help-text.js.map +1 -1
- package/dist/src/nile-hero/nile-hero.js +2 -2
- package/dist/src/nile-hero/nile-hero.js.map +1 -1
- package/dist/src/nile-hero-header/nile-hero-header.js +2 -2
- package/dist/src/nile-hero-header/nile-hero-header.js.map +1 -1
- package/dist/src/nile-icon/icons/svg/index.d.ts +11 -0
- package/dist/src/nile-icon/icons/svg/index.js +11 -0
- package/dist/src/nile-icon/icons/svg/index.js.map +1 -1
- package/dist/src/nile-icon/icons/svg/ng-action.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-action.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-action.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-alert-circle.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-alert-circle.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-alert-circle.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-right.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-right.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-right.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-button-loading-blue-animated.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-button-loading-blue-animated.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-button-loading-blue-animated.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-button-loading-blue.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-button-loading-blue.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-button-loading-blue.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-check-circle-broken.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-check-circle-broken.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-check-circle-broken.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-check.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-check.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-check.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-file-06.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-file-06.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-file-06.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-image-03.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-image-03.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-image-03.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-minus.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-minus.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-minus.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-x-circle.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-x-circle.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-x-circle.js.map +1 -0
- package/dist/src/nile-icon/index.d.ts +1 -0
- package/dist/src/nile-icon/index.js +36 -0
- package/dist/src/nile-icon/index.js.map +1 -1
- package/dist/src/nile-icon-button/nile-icon-button.d.ts +0 -1
- package/dist/src/nile-icon-button/nile-icon-button.js +4 -10
- package/dist/src/nile-icon-button/nile-icon-button.js.map +1 -1
- package/dist/src/nile-input/nile-input.js +5 -3
- package/dist/src/nile-input/nile-input.js.map +1 -1
- package/dist/src/nile-list-item/nile-list-item.js +1 -0
- package/dist/src/nile-list-item/nile-list-item.js.map +1 -1
- package/dist/src/nile-menu/nile-menu.js +1 -1
- package/dist/src/nile-menu/nile-menu.js.map +1 -1
- package/dist/src/nile-menu-item/nile-menu-item.js +4 -2
- package/dist/src/nile-menu-item/nile-menu-item.js.map +1 -1
- package/dist/src/nile-pagination/nile-pagination.js +8 -5
- package/dist/src/nile-pagination/nile-pagination.js.map +1 -1
- package/dist/src/nile-section-message/nile-section-message.js +6 -6
- package/dist/src/nile-section-message/nile-section-message.js.map +1 -1
- package/dist/src/nile-select/nile-select.js +5 -4
- package/dist/src/nile-select/nile-select.js.map +1 -1
- package/dist/src/nile-sidebar-menu-items/nile-sidebar-menu-items.js +1 -0
- package/dist/src/nile-sidebar-menu-items/nile-sidebar-menu-items.js.map +1 -1
- package/dist/src/nile-slide-toggle/nile-slide-toggle.css.js +7 -1
- package/dist/src/nile-slide-toggle/nile-slide-toggle.css.js.map +1 -1
- package/dist/src/nile-switcher/nile-switcher.js +3 -1
- package/dist/src/nile-switcher/nile-switcher.js.map +1 -1
- package/dist/src/nile-tab/nile-tab.js +1 -1
- package/dist/src/nile-tab/nile-tab.js.map +1 -1
- package/dist/src/nile-tab-group/nile-tab-group.js +3 -3
- package/dist/src/nile-tab-group/nile-tab-group.js.map +1 -1
- package/dist/src/nile-table-header-item/nile-table-header-item.css.js +8 -2
- package/dist/src/nile-table-header-item/nile-table-header-item.css.js.map +1 -1
- package/dist/src/nile-table-header-item/nile-table-header-item.js +13 -8
- package/dist/src/nile-table-header-item/nile-table-header-item.js.map +1 -1
- package/dist/src/nile-tag/nile-tag.js +1 -1
- package/dist/src/nile-tag/nile-tag.js.map +1 -1
- package/dist/src/nile-toast/nile-toast.d.ts +1 -1
- package/dist/src/nile-toast/nile-toast.js +8 -8
- package/dist/src/nile-toast/nile-toast.js.map +1 -1
- package/dist/src/nile-tree-item/nile-tree-item.js +2 -2
- package/dist/src/nile-tree-item/nile-tree-item.js.map +1 -1
- package/dist/src/nile-virtual-select/nile-virtual-select.d.ts +5 -5
- package/dist/src/nile-virtual-select/nile-virtual-select.js +10 -9
- package/dist/src/nile-virtual-select/nile-virtual-select.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/nile-accordion/nile-accordion.ts +2 -2
- package/src/nile-auto-complete/nile-auto-complete.ts +1 -1
- package/src/nile-avatar/nile-avatar.ts +5 -4
- package/src/nile-breadcrumb-item/nile-breadcrumb-item.ts +2 -1
- package/src/nile-button/nile-button.ts +4 -2
- package/src/nile-button-filter/nile-button-filter.ts +5 -3
- package/src/nile-calendar/nile-calendar.ts +4 -2
- package/src/nile-checkbox/nile-checkbox.css.ts +3 -0
- package/src/nile-checkbox/nile-checkbox.ts +4 -2
- package/src/nile-code-editor/nile-code-editor.ts +2 -1
- package/src/nile-dialog/nile-dialog.ts +2 -1
- package/src/nile-drawer/nile-drawer.ts +2 -1
- package/src/nile-empty-state/nile-empty-state.ts +7 -7
- package/src/nile-error-message/nile-error-message.ts +4 -3
- package/src/nile-error-notification/nile-error-notification.ts +2 -1
- package/src/nile-file-preview/nile-file-preview.template.ts +20 -12
- package/src/nile-file-upload/nile-file-upload.template.ts +14 -10
- package/src/nile-filter-chip/nile-filter-chip.ts +1 -1
- package/src/nile-form-error-message/nile-form-error-message.ts +1 -1
- package/src/nile-form-help-text/nile-form-help-text.ts +2 -2
- package/src/nile-hero/nile-hero.ts +2 -2
- package/src/nile-hero-header/nile-hero-header.ts +2 -2
- package/src/nile-icon/icons/svg/index.ts +11 -0
- package/src/nile-icon/icons/svg/ng-action.ts +5 -0
- package/src/nile-icon/icons/svg/ng-alert-circle.ts +5 -0
- package/src/nile-icon/icons/svg/ng-arrow-narrow-right.ts +5 -0
- package/src/nile-icon/icons/svg/ng-button-loading-blue-animated.ts +5 -0
- package/src/nile-icon/icons/svg/ng-button-loading-blue.ts +5 -0
- package/src/nile-icon/icons/svg/ng-check-circle-broken.ts +5 -0
- package/src/nile-icon/icons/svg/ng-check.ts +5 -0
- package/src/nile-icon/icons/svg/ng-file-06.ts +5 -0
- package/src/nile-icon/icons/svg/ng-image-03.ts +5 -0
- package/src/nile-icon/icons/svg/ng-minus.ts +5 -0
- package/src/nile-icon/icons/svg/ng-x-circle.ts +5 -0
- package/src/nile-icon/index.ts +38 -0
- package/src/nile-icon-button/nile-icon-button.ts +4 -12
- package/src/nile-input/nile-input.ts +5 -3
- package/src/nile-list-item/nile-list-item.ts +1 -0
- package/src/nile-menu/nile-menu.ts +1 -1
- package/src/nile-menu-item/nile-menu-item.ts +4 -2
- package/src/nile-pagination/nile-pagination.ts +8 -5
- package/src/nile-section-message/nile-section-message.ts +6 -6
- package/src/nile-select/nile-select.ts +5 -4
- package/src/nile-sidebar-menu-items/nile-sidebar-menu-items.ts +1 -0
- package/src/nile-slide-toggle/nile-slide-toggle.css.ts +7 -1
- package/src/nile-switcher/nile-switcher.ts +3 -1
- package/src/nile-tab/nile-tab.ts +1 -1
- package/src/nile-tab-group/nile-tab-group.ts +3 -3
- package/src/nile-table-header-item/nile-table-header-item.css.ts +8 -2
- package/src/nile-table-header-item/nile-table-header-item.ts +13 -8
- package/src/nile-tag/nile-tag.ts +1 -1
- package/src/nile-toast/nile-toast.ts +8 -8
- package/src/nile-tree-item/nile-tree-item.ts +2 -2
- package/src/nile-virtual-select/nile-virtual-select.ts +6 -5
- package/vscode-html-custom-data.json +7 -7
@@ -0,0 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Do not edit directly
|
3
|
+
*/
|
4
|
+
declare const _default: "PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIiBmaWxsPSJub25lIj48cGF0aCBkPSJNMTYuNjY2NyA1TDcuNDk5OTkgMTQuMTY2N0wzLjMzMzMzIDEwIiBzdHJva2U9IiMxODFEMjciIHN0cm9rZS13aWR0aD0iMS42NyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9zdmc+";
|
5
|
+
export default _default;
|
@@ -0,0 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Do not edit directly
|
3
|
+
*/
|
4
|
+
export default "PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIiBmaWxsPSJub25lIj48cGF0aCBkPSJNMTYuNjY2NyA1TDcuNDk5OTkgMTQuMTY2N0wzLjMzMzMzIDEwIiBzdHJva2U9IiMxODFEMjciIHN0cm9rZS13aWR0aD0iMS42NyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9zdmc+";
|
5
|
+
//# sourceMappingURL=ng-check.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"ng-check.js","sourceRoot":"","sources":["../../../../../src/nile-icon/icons/svg/ng-check.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAe,0TAA0T,CAAC","sourcesContent":["/**\n * Do not edit directly\n */\n\nexport default \"PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIiBmaWxsPSJub25lIj48cGF0aCBkPSJNMTYuNjY2NyA1TDcuNDk5OTkgMTQuMTY2N0wzLjMzMzMzIDEwIiBzdHJva2U9IiMxODFEMjciIHN0cm9rZS13aWR0aD0iMS42NyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9zdmc+\";"]}
|
@@ -0,0 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Do not edit directly
|
3
|
+
*/
|
4
|
+
declare const _default: "PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIiBmaWxsPSJub25lIj48cGF0aCBkPSJNMTEuNjY2NyAxLjg5MTExVjUuMzMzMjNDMTEuNjY2NyA1Ljc5OTk0IDExLjY2NjcgNi4wMzMzIDExLjc1NzUgNi4yMTE1NkMxMS44Mzc0IDYuMzY4MzYgMTEuOTY0OSA2LjQ5NTg0IDEyLjEyMTcgNi41NzU3NEMxMi4yOTk5IDYuNjY2NTYgMTIuNTMzMyA2LjY2NjU2IDEzIDYuNjY2NTZIMTYuNDQyMU0xMy4zMzMzIDEwLjgzMzJINi42NjY2OE0xMy4zMzMzIDE0LjE2NjVINi42NjY2OE04LjMzMzM0IDcuNDk5ODRINi42NjY2OE0xMS42NjY3IDEuNjY2NUg3LjMzMzM0QzUuOTMzMjEgMS42NjY1IDUuMjMzMTUgMS42NjY1IDQuNjk4MzcgMS45Mzg5OUM0LjIyNzk2IDIuMTc4NjcgMy44NDU1MSAyLjU2MTEyIDMuNjA1ODMgMy4wMzE1M0MzLjMzMzM0IDMuNTY2MzEgMy4zMzMzNCA0LjI2NjM3IDMuMzMzMzQgNS42NjY1VjE0LjMzMzJDMy4zMzMzNCAxNS43MzMzIDMuMzMzMzQgMTYuNDMzNCAzLjYwNTgzIDE2Ljk2ODFDMy44NDU1MSAxNy40Mzg2IDQuMjI3OTYgMTcuODIxIDQuNjk4MzcgMTguMDYwN0M1LjIzMzE1IDE4LjMzMzIgNS45MzMyMSAxOC4zMzMyIDcuMzMzMzQgMTguMzMzMkgxMi42NjY3QzE0LjA2NjggMTguMzMzMiAxNC43NjY5IDE4LjMzMzIgMTUuMzAxNyAxOC4wNjA3QzE1Ljc3MjEgMTcuODIxIDE2LjE1NDUgMTcuNDM4NiAxNi4zOTQyIDE2Ljk2ODFDMTYuNjY2NyAxNi40MzM0IDE2LjY2NjcgMTUuNzMzMyAxNi42NjY3IDE0LjMzMzJWNi42NjY1TDExLjY2NjcgMS42NjY1WiIgc3Ryb2tlPSIjMTgxRDI3IiBzdHJva2Utd2lkdGg9IjEuNjciIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjwvc3ZnPg==";
|
5
|
+
export default _default;
|
@@ -0,0 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Do not edit directly
|
3
|
+
*/
|
4
|
+
export default "PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIiBmaWxsPSJub25lIj48cGF0aCBkPSJNMTEuNjY2NyAxLjg5MTExVjUuMzMzMjNDMTEuNjY2NyA1Ljc5OTk0IDExLjY2NjcgNi4wMzMzIDExLjc1NzUgNi4yMTE1NkMxMS44Mzc0IDYuMzY4MzYgMTEuOTY0OSA2LjQ5NTg0IDEyLjEyMTcgNi41NzU3NEMxMi4yOTk5IDYuNjY2NTYgMTIuNTMzMyA2LjY2NjU2IDEzIDYuNjY2NTZIMTYuNDQyMU0xMy4zMzMzIDEwLjgzMzJINi42NjY2OE0xMy4zMzMzIDE0LjE2NjVINi42NjY2OE04LjMzMzM0IDcuNDk5ODRINi42NjY2OE0xMS42NjY3IDEuNjY2NUg3LjMzMzM0QzUuOTMzMjEgMS42NjY1IDUuMjMzMTUgMS42NjY1IDQuNjk4MzcgMS45Mzg5OUM0LjIyNzk2IDIuMTc4NjcgMy44NDU1MSAyLjU2MTEyIDMuNjA1ODMgMy4wMzE1M0MzLjMzMzM0IDMuNTY2MzEgMy4zMzMzNCA0LjI2NjM3IDMuMzMzMzQgNS42NjY1VjE0LjMzMzJDMy4zMzMzNCAxNS43MzMzIDMuMzMzMzQgMTYuNDMzNCAzLjYwNTgzIDE2Ljk2ODFDMy44NDU1MSAxNy40Mzg2IDQuMjI3OTYgMTcuODIxIDQuNjk4MzcgMTguMDYwN0M1LjIzMzE1IDE4LjMzMzIgNS45MzMyMSAxOC4zMzMyIDcuMzMzMzQgMTguMzMzMkgxMi42NjY3QzE0LjA2NjggMTguMzMzMiAxNC43NjY5IDE4LjMzMzIgMTUuMzAxNyAxOC4wNjA3QzE1Ljc3MjEgMTcuODIxIDE2LjE1NDUgMTcuNDM4NiAxNi4zOTQyIDE2Ljk2ODFDMTYuNjY2NyAxNi40MzM0IDE2LjY2NjcgMTUuNzMzMyAxNi42NjY3IDE0LjMzMzJWNi42NjY1TDExLjY2NjcgMS42NjY1WiIgc3Ryb2tlPSIjMTgxRDI3IiBzdHJva2Utd2lkdGg9IjEuNjciIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjwvc3ZnPg==";
|
5
|
+
//# sourceMappingURL=ng-file-06.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"ng-file-06.js","sourceRoot":"","sources":["../../../../../src/nile-icon/icons/svg/ng-file-06.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAe,0tCAA0tC,CAAC","sourcesContent":["/**\n * Do not edit directly\n */\n\nexport default \"PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIiBmaWxsPSJub25lIj48cGF0aCBkPSJNMTEuNjY2NyAxLjg5MTExVjUuMzMzMjNDMTEuNjY2NyA1Ljc5OTk0IDExLjY2NjcgNi4wMzMzIDExLjc1NzUgNi4yMTE1NkMxMS44Mzc0IDYuMzY4MzYgMTEuOTY0OSA2LjQ5NTg0IDEyLjEyMTcgNi41NzU3NEMxMi4yOTk5IDYuNjY2NTYgMTIuNTMzMyA2LjY2NjU2IDEzIDYuNjY2NTZIMTYuNDQyMU0xMy4zMzMzIDEwLjgzMzJINi42NjY2OE0xMy4zMzMzIDE0LjE2NjVINi42NjY2OE04LjMzMzM0IDcuNDk5ODRINi42NjY2OE0xMS42NjY3IDEuNjY2NUg3LjMzMzM0QzUuOTMzMjEgMS42NjY1IDUuMjMzMTUgMS42NjY1IDQuNjk4MzcgMS45Mzg5OUM0LjIyNzk2IDIuMTc4NjcgMy44NDU1MSAyLjU2MTEyIDMuNjA1ODMgMy4wMzE1M0MzLjMzMzM0IDMuNTY2MzEgMy4zMzMzNCA0LjI2NjM3IDMuMzMzMzQgNS42NjY1VjE0LjMzMzJDMy4zMzMzNCAxNS43MzMzIDMuMzMzMzQgMTYuNDMzNCAzLjYwNTgzIDE2Ljk2ODFDMy44NDU1MSAxNy40Mzg2IDQuMjI3OTYgMTcuODIxIDQuNjk4MzcgMTguMDYwN0M1LjIzMzE1IDE4LjMzMzIgNS45MzMyMSAxOC4zMzMyIDcuMzMzMzQgMTguMzMzMkgxMi42NjY3QzE0LjA2NjggMTguMzMzMiAxNC43NjY5IDE4LjMzMzIgMTUuMzAxNyAxOC4wNjA3QzE1Ljc3MjEgMTcuODIxIDE2LjE1NDUgMTcuNDM4NiAxNi4zOTQyIDE2Ljk2ODFDMTYuNjY2NyAxNi40MzM0IDE2LjY2NjcgMTUuNzMzMyAxNi42NjY3IDE0LjMzMzJWNi42NjY1TDExLjY2NjcgMS42NjY1WiIgc3Ryb2tlPSIjMTgxRDI3IiBzdHJva2Utd2lkdGg9IjEuNjciIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjwvc3ZnPg==\";"]}
|
@@ -0,0 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Do not edit directly
|
3
|
+
*/
|
4
|
+
declare const _default: "PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIiBmaWxsPSJub25lIj48cGF0aCBkPSJNMy41NjAwNyAxNy4yNzMzTDkuMDU3MTggMTEuNzc2MUM5LjM4NzIgMTEuNDQ2MSA5LjU1MjIgMTEuMjgxMSA5Ljc0MjQ4IDExLjIxOTNDOS45MDk4NSAxMS4xNjQ5IDEwLjA5MDEgMTEuMTY0OSAxMC4yNTc1IDExLjIxOTNDMTAuNDQ3OCAxMS4yODExIDEwLjYxMjggMTEuNDQ2MSAxMC45NDI4IDExLjc3NjFMMTYuNDAzMyAxNy4yMzY2TTExLjY2NjcgMTIuNUwxNC4wNTcyIDEwLjEwOTVDMTQuMzg3MiA5Ljc3OTQ2IDE0LjU1MjIgOS42MTQ0NSAxNC43NDI1IDkuNTUyNjNDMTQuOTA5OCA5LjQ5ODI1IDE1LjA5MDEgOS40OTgyNSAxNS4yNTc1IDkuNTUyNjNDMTUuNDQ3OCA5LjYxNDQ1IDE1LjYxMjggOS43Nzk0NiAxNS45NDI4IDEwLjEwOTVMMTguMzMzMyAxMi41TTguMzMzMzIgNy41QzguMzMzMzIgOC40MjA0NyA3LjU4NzEzIDkuMTY2NjcgNi42NjY2NiA5LjE2NjY3QzUuNzQ2MTggOS4xNjY2NyA0Ljk5OTk5IDguNDIwNDcgNC45OTk5OSA3LjVDNC45OTk5OSA2LjU3OTUzIDUuNzQ2MTggNS44MzMzMyA2LjY2NjY2IDUuODMzMzNDNy41ODcxMyA1LjgzMzMzIDguMzMzMzIgNi41Nzk1MyA4LjMzMzMyIDcuNVpNNS42NjY2NiAxNy41SDE0LjMzMzNDMTUuNzMzNSAxNy41IDE2LjQzMzUgMTcuNSAxNi45NjgzIDE3LjIyNzVDMTcuNDM4NyAxNi45ODc4IDE3LjgyMTIgMTYuNjA1NCAxOC4wNjA4IDE2LjEzNUMxOC4zMzMzIDE1LjYwMDIgMTguMzMzMyAxNC45MDAxIDE4LjMzMzMgMTMuNVY2LjVDMTguMzMzMyA1LjA5OTg3IDE4LjMzMzMgNC4zOTk4IDE4LjA2MDggMy44NjUwMkMxNy44MjEyIDMuMzk0NjIgMTcuNDM4NyAzLjAxMjE3IDE2Ljk2ODMgMi43NzI0OEMxNi40MzM1IDIuNSAxNS43MzM1IDIuNSAxNC4zMzMzIDIuNUg1LjY2NjY2QzQuMjY2NTMgMi41IDMuNTY2NDYgMi41IDMuMDMxNjggMi43NzI0OEMyLjU2MTI4IDMuMDEyMTcgMi4xNzg4MiAzLjM5NDYyIDEuOTM5MTQgMy44NjUwMkMxLjY2NjY2IDQuMzk5OCAxLjY2NjY2IDUuMDk5ODcgMS42NjY2NiA2LjVWMTMuNUMxLjY2NjY2IDE0LjkwMDEgMS42NjY2NiAxNS42MDAyIDEuOTM5MTQgMTYuMTM1QzIuMTc4ODIgMTYuNjA1NCAyLjU2MTI4IDE2Ljk4NzggMy4wMzE2OCAxNy4yMjc1QzMuNTY2NDYgMTcuNSA0LjI2NjUzIDE3LjUgNS42NjY2NiAxNy41WiIgc3Ryb2tlPSIjMTgxRDI3IiBzdHJva2Utd2lkdGg9IjEuNjciIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjwvc3ZnPg==";
|
5
|
+
export default _default;
|
@@ -0,0 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Do not edit directly
|
3
|
+
*/
|
4
|
+
export default "PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIiBmaWxsPSJub25lIj48cGF0aCBkPSJNMy41NjAwNyAxNy4yNzMzTDkuMDU3MTggMTEuNzc2MUM5LjM4NzIgMTEuNDQ2MSA5LjU1MjIgMTEuMjgxMSA5Ljc0MjQ4IDExLjIxOTNDOS45MDk4NSAxMS4xNjQ5IDEwLjA5MDEgMTEuMTY0OSAxMC4yNTc1IDExLjIxOTNDMTAuNDQ3OCAxMS4yODExIDEwLjYxMjggMTEuNDQ2MSAxMC45NDI4IDExLjc3NjFMMTYuNDAzMyAxNy4yMzY2TTExLjY2NjcgMTIuNUwxNC4wNTcyIDEwLjEwOTVDMTQuMzg3MiA5Ljc3OTQ2IDE0LjU1MjIgOS42MTQ0NSAxNC43NDI1IDkuNTUyNjNDMTQuOTA5OCA5LjQ5ODI1IDE1LjA5MDEgOS40OTgyNSAxNS4yNTc1IDkuNTUyNjNDMTUuNDQ3OCA5LjYxNDQ1IDE1LjYxMjggOS43Nzk0NiAxNS45NDI4IDEwLjEwOTVMMTguMzMzMyAxMi41TTguMzMzMzIgNy41QzguMzMzMzIgOC40MjA0NyA3LjU4NzEzIDkuMTY2NjcgNi42NjY2NiA5LjE2NjY3QzUuNzQ2MTggOS4xNjY2NyA0Ljk5OTk5IDguNDIwNDcgNC45OTk5OSA3LjVDNC45OTk5OSA2LjU3OTUzIDUuNzQ2MTggNS44MzMzMyA2LjY2NjY2IDUuODMzMzNDNy41ODcxMyA1LjgzMzMzIDguMzMzMzIgNi41Nzk1MyA4LjMzMzMyIDcuNVpNNS42NjY2NiAxNy41SDE0LjMzMzNDMTUuNzMzNSAxNy41IDE2LjQzMzUgMTcuNSAxNi45NjgzIDE3LjIyNzVDMTcuNDM4NyAxNi45ODc4IDE3LjgyMTIgMTYuNjA1NCAxOC4wNjA4IDE2LjEzNUMxOC4zMzMzIDE1LjYwMDIgMTguMzMzMyAxNC45MDAxIDE4LjMzMzMgMTMuNVY2LjVDMTguMzMzMyA1LjA5OTg3IDE4LjMzMzMgNC4zOTk4IDE4LjA2MDggMy44NjUwMkMxNy44MjEyIDMuMzk0NjIgMTcuNDM4NyAzLjAxMjE3IDE2Ljk2ODMgMi43NzI0OEMxNi40MzM1IDIuNSAxNS43MzM1IDIuNSAxNC4zMzMzIDIuNUg1LjY2NjY2QzQuMjY2NTMgMi41IDMuNTY2NDYgMi41IDMuMDMxNjggMi43NzI0OEMyLjU2MTI4IDMuMDEyMTcgMi4xNzg4MiAzLjM5NDYyIDEuOTM5MTQgMy44NjUwMkMxLjY2NjY2IDQuMzk5OCAxLjY2NjY2IDUuMDk5ODcgMS42NjY2NiA2LjVWMTMuNUMxLjY2NjY2IDE0LjkwMDEgMS42NjY2NiAxNS42MDAyIDEuOTM5MTQgMTYuMTM1QzIuMTc4ODIgMTYuNjA1NCAyLjU2MTI4IDE2Ljk4NzggMy4wMzE2OCAxNy4yMjc1QzMuNTY2NDYgMTcuNSA0LjI2NjUzIDE3LjUgNS42NjY2NiAxNy41WiIgc3Ryb2tlPSIjMTgxRDI3IiBzdHJva2Utd2lkdGg9IjEuNjciIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjwvc3ZnPg==";
|
5
|
+
//# sourceMappingURL=ng-image-03.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"ng-image-03.js","sourceRoot":"","sources":["../../../../../src/nile-icon/icons/svg/ng-image-03.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAe,8vDAA8vD,CAAC","sourcesContent":["/**\n * Do not edit directly\n */\n\nexport default \"PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIiBmaWxsPSJub25lIj48cGF0aCBkPSJNMy41NjAwNyAxNy4yNzMzTDkuMDU3MTggMTEuNzc2MUM5LjM4NzIgMTEuNDQ2MSA5LjU1MjIgMTEuMjgxMSA5Ljc0MjQ4IDExLjIxOTNDOS45MDk4NSAxMS4xNjQ5IDEwLjA5MDEgMTEuMTY0OSAxMC4yNTc1IDExLjIxOTNDMTAuNDQ3OCAxMS4yODExIDEwLjYxMjggMTEuNDQ2MSAxMC45NDI4IDExLjc3NjFMMTYuNDAzMyAxNy4yMzY2TTExLjY2NjcgMTIuNUwxNC4wNTcyIDEwLjEwOTVDMTQuMzg3MiA5Ljc3OTQ2IDE0LjU1MjIgOS42MTQ0NSAxNC43NDI1IDkuNTUyNjNDMTQuOTA5OCA5LjQ5ODI1IDE1LjA5MDEgOS40OTgyNSAxNS4yNTc1IDkuNTUyNjNDMTUuNDQ3OCA5LjYxNDQ1IDE1LjYxMjggOS43Nzk0NiAxNS45NDI4IDEwLjEwOTVMMTguMzMzMyAxMi41TTguMzMzMzIgNy41QzguMzMzMzIgOC40MjA0NyA3LjU4NzEzIDkuMTY2NjcgNi42NjY2NiA5LjE2NjY3QzUuNzQ2MTggOS4xNjY2NyA0Ljk5OTk5IDguNDIwNDcgNC45OTk5OSA3LjVDNC45OTk5OSA2LjU3OTUzIDUuNzQ2MTggNS44MzMzMyA2LjY2NjY2IDUuODMzMzNDNy41ODcxMyA1LjgzMzMzIDguMzMzMzIgNi41Nzk1MyA4LjMzMzMyIDcuNVpNNS42NjY2NiAxNy41SDE0LjMzMzNDMTUuNzMzNSAxNy41IDE2LjQzMzUgMTcuNSAxNi45NjgzIDE3LjIyNzVDMTcuNDM4NyAxNi45ODc4IDE3LjgyMTIgMTYuNjA1NCAxOC4wNjA4IDE2LjEzNUMxOC4zMzMzIDE1LjYwMDIgMTguMzMzMyAxNC45MDAxIDE4LjMzMzMgMTMuNVY2LjVDMTguMzMzMyA1LjA5OTg3IDE4LjMzMzMgNC4zOTk4IDE4LjA2MDggMy44NjUwMkMxNy44MjEyIDMuMzk0NjIgMTcuNDM4NyAzLjAxMjE3IDE2Ljk2ODMgMi43NzI0OEMxNi40MzM1IDIuNSAxNS43MzM1IDIuNSAxNC4zMzMzIDIuNUg1LjY2NjY2QzQuMjY2NTMgMi41IDMuNTY2NDYgMi41IDMuMDMxNjggMi43NzI0OEMyLjU2MTI4IDMuMDEyMTcgMi4xNzg4MiAzLjM5NDYyIDEuOTM5MTQgMy44NjUwMkMxLjY2NjY2IDQuMzk5OCAxLjY2NjY2IDUuMDk5ODcgMS42NjY2NiA2LjVWMTMuNUMxLjY2NjY2IDE0LjkwMDEgMS42NjY2NiAxNS42MDAyIDEuOTM5MTQgMTYuMTM1QzIuMTc4ODIgMTYuNjA1NCAyLjU2MTI4IDE2Ljk4NzggMy4wMzE2OCAxNy4yMjc1QzMuNTY2NDYgMTcuNSA0LjI2NjUzIDE3LjUgNS42NjY2NiAxNy41WiIgc3Ryb2tlPSIjMTgxRDI3IiBzdHJva2Utd2lkdGg9IjEuNjciIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjwvc3ZnPg==\";"]}
|
@@ -0,0 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Do not edit directly
|
3
|
+
*/
|
4
|
+
declare const _default: "PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIiBmaWxsPSJub25lIj48cGF0aCBkPSJNNC4xNjY2NyAxMEgxNS44MzMzIiBzdHJva2U9IiMxODFEMjciIHN0cm9rZS13aWR0aD0iMS42NyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9zdmc+";
|
5
|
+
export default _default;
|
@@ -0,0 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Do not edit directly
|
3
|
+
*/
|
4
|
+
export default "PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIiBmaWxsPSJub25lIj48cGF0aCBkPSJNNC4xNjY2NyAxMEgxNS44MzMzIiBzdHJva2U9IiMxODFEMjciIHN0cm9rZS13aWR0aD0iMS42NyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9zdmc+";
|
5
|
+
//# sourceMappingURL=ng-minus.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"ng-minus.js","sourceRoot":"","sources":["../../../../../src/nile-icon/icons/svg/ng-minus.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAe,kSAAkS,CAAC","sourcesContent":["/**\n * Do not edit directly\n */\n\nexport default \"PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIiBmaWxsPSJub25lIj48cGF0aCBkPSJNNC4xNjY2NyAxMEgxNS44MzMzIiBzdHJva2U9IiMxODFEMjciIHN0cm9rZS13aWR0aD0iMS42NyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9zdmc+\";"]}
|
@@ -0,0 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Do not edit directly
|
3
|
+
*/
|
4
|
+
declare const _default: "PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIiBmaWxsPSJub25lIj48ZyBjbGlwLXBhdGg9InVybCgjY2xpcDBfMjE1NjBfMzMwNDcpIj48cGF0aCBkPSJNMTIuNSA3LjQ5OTg0TDcuNDk5OTkgMTIuNDk5OE03LjQ5OTk5IDcuNDk5ODRMMTIuNSAxMi40OTk4TTE4LjMzMzMgOS45OTk4NEMxOC4zMzMzIDE0LjYwMjIgMTQuNjAyNCAxOC4zMzMyIDkuOTk5OTkgMTguMzMzMkM1LjM5NzYyIDE4LjMzMzIgMS42NjY2NiAxNC42MDIyIDEuNjY2NjYgOS45OTk4NEMxLjY2NjY2IDUuMzk3NDYgNS4zOTc2MiAxLjY2NjUgOS45OTk5OSAxLjY2NjVDMTQuNjAyNCAxLjY2NjUgMTguMzMzMyA1LjM5NzQ2IDE4LjMzMzMgOS45OTk4NFoiIHN0cm9rZT0iYmxhY2siIHN0cm9rZS13aWR0aD0iMS42NyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9nPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDBfMjE1NjBfMzMwNDciPjxyZWN0IHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgZmlsbD0id2hpdGUiLz48L2NsaXBQYXRoPjwvZGVmcz48L3N2Zz4=";
|
5
|
+
export default _default;
|
@@ -0,0 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Do not edit directly
|
3
|
+
*/
|
4
|
+
export default "PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIiBmaWxsPSJub25lIj48ZyBjbGlwLXBhdGg9InVybCgjY2xpcDBfMjE1NjBfMzMwNDcpIj48cGF0aCBkPSJNMTIuNSA3LjQ5OTg0TDcuNDk5OTkgMTIuNDk5OE03LjQ5OTk5IDcuNDk5ODRMMTIuNSAxMi40OTk4TTE4LjMzMzMgOS45OTk4NEMxOC4zMzMzIDE0LjYwMjIgMTQuNjAyNCAxOC4zMzMyIDkuOTk5OTkgMTguMzMzMkM1LjM5NzYyIDE4LjMzMzIgMS42NjY2NiAxNC42MDIyIDEuNjY2NjYgOS45OTk4NEMxLjY2NjY2IDUuMzk3NDYgNS4zOTc2MiAxLjY2NjUgOS45OTk5OSAxLjY2NjVDMTQuNjAyNCAxLjY2NjUgMTguMzMzMyA1LjM5NzQ2IDE4LjMzMzMgOS45OTk4NFoiIHN0cm9rZT0iYmxhY2siIHN0cm9rZS13aWR0aD0iMS42NyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9nPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDBfMjE1NjBfMzMwNDciPjxyZWN0IHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgZmlsbD0id2hpdGUiLz48L2NsaXBQYXRoPjwvZGVmcz48L3N2Zz4=";
|
5
|
+
//# sourceMappingURL=ng-x-circle.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"ng-x-circle.js","sourceRoot":"","sources":["../../../../../src/nile-icon/icons/svg/ng-x-circle.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAe,syBAAsyB,CAAC","sourcesContent":["/**\n * Do not edit directly\n */\n\nexport default \"PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIiBmaWxsPSJub25lIj48ZyBjbGlwLXBhdGg9InVybCgjY2xpcDBfMjE1NjBfMzMwNDcpIj48cGF0aCBkPSJNMTIuNSA3LjQ5OTg0TDcuNDk5OTkgMTIuNDk5OE03LjQ5OTk5IDcuNDk5ODRMMTIuNSAxMi40OTk4TTE4LjMzMzMgOS45OTk4NEMxOC4zMzMzIDE0LjYwMjIgMTQuNjAyNCAxOC4zMzMyIDkuOTk5OTkgMTguMzMzMkM1LjM5NzYyIDE4LjMzMzIgMS42NjY2NiAxNC42MDIyIDEuNjY2NjYgOS45OTk4NEMxLjY2NjY2IDUuMzk3NDYgNS4zOTc2MiAxLjY2NjUgOS45OTk5OSAxLjY2NjVDMTQuNjAyNCAxLjY2NjUgMTguMzMzMyA1LjM5NzQ2IDE4LjMzMzMgOS45OTk4NFoiIHN0cm9rZT0iYmxhY2siIHN0cm9rZS13aWR0aD0iMS42NyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9nPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDBfMjE1NjBfMzMwNDciPjxyZWN0IHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgZmlsbD0id2hpdGUiLz48L2NsaXBQYXRoPjwvZGVmcz48L3N2Zz4=\";"]}
|
@@ -53,6 +53,7 @@ export declare class NileIcon extends LitElement {
|
|
53
53
|
static styles: import("lit").CSSResult;
|
54
54
|
private _getIconSize;
|
55
55
|
protected updated(changedProperties: PropertyValues): Promise<void>;
|
56
|
+
resolveCssVarExpression(expression: string): string | null;
|
56
57
|
private addAttributesToSvg;
|
57
58
|
private fetchSvg;
|
58
59
|
private removeHyphens;
|
@@ -44,12 +44,24 @@ let NileIcon = class NileIcon extends LitElement {
|
|
44
44
|
}
|
45
45
|
async updated(changedProperties) {
|
46
46
|
if (changedProperties.has('size')) {
|
47
|
+
const resolved = this.resolveCssVarExpression(`${this.size}`);
|
48
|
+
if (resolved) {
|
49
|
+
const numeric = parseInt(resolved.replace(/px$/, '').trim(), 10);
|
50
|
+
if (!isNaN(numeric)) {
|
51
|
+
this.size = numeric;
|
52
|
+
}
|
53
|
+
}
|
47
54
|
this.style.setProperty('--nile-svg-height', `${this.size}px`);
|
48
55
|
this.style.setProperty('--nile-svg-width', `${this.size}px`);
|
49
56
|
}
|
50
57
|
if (changedProperties.has('color')) {
|
51
58
|
this.style.setProperty('--nile-svg-fill', `${this.color}`);
|
52
59
|
}
|
60
|
+
if (changedProperties.has('method')) {
|
61
|
+
const resolved = this.resolveCssVarExpression(this.method);
|
62
|
+
if (resolved)
|
63
|
+
this.method = resolved.trim();
|
64
|
+
}
|
53
65
|
if (changedProperties.has('name') || changedProperties.has('customSvgPath')) {
|
54
66
|
const raw = this.name?.replace(/-/g, '') ?? '';
|
55
67
|
const iconName = aliasMap[raw] || raw;
|
@@ -61,10 +73,34 @@ let NileIcon = class NileIcon extends LitElement {
|
|
61
73
|
}
|
62
74
|
else {
|
63
75
|
// throw new Error(`No icon named "${this.name}"`);
|
76
|
+
const a = this.resolveCssVarExpression(this.name);
|
77
|
+
this.name = a;
|
64
78
|
}
|
65
79
|
}
|
66
80
|
this.addAttributesToSvg();
|
67
81
|
}
|
82
|
+
resolveCssVarExpression(expression) {
|
83
|
+
const regex = /var\((--[^,\s)]+)(?:,\s*(.+))?\)/;
|
84
|
+
let match = expression.trim();
|
85
|
+
let attempts = 0;
|
86
|
+
while (match.startsWith("var(") && attempts++ < 10) {
|
87
|
+
const parts = match.match(regex);
|
88
|
+
if (!parts)
|
89
|
+
break;
|
90
|
+
const [, varName, fallback] = parts;
|
91
|
+
const value = getComputedStyle(document.documentElement).getPropertyValue(varName).trim();
|
92
|
+
if (value) {
|
93
|
+
return value;
|
94
|
+
}
|
95
|
+
else if (fallback) {
|
96
|
+
match = fallback.trim();
|
97
|
+
}
|
98
|
+
else {
|
99
|
+
return null;
|
100
|
+
}
|
101
|
+
}
|
102
|
+
return match || null;
|
103
|
+
}
|
68
104
|
addAttributesToSvg() {
|
69
105
|
const svg = this.renderRoot.querySelector('#svg');
|
70
106
|
const attrs = svg?.attributes;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/nile-icon/index.ts"],"names":[],"mappings":"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","sourcesContent":["import { LitElement, html, css, PropertyValues } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport type { TemplateResult } from 'lit';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { unsafeSVG } from 'lit/directives/unsafe-svg.js';\nimport { unsafeHTML } from 'lit/directives/unsafe-html.js';\nimport * as Icons from './icons/svg';\nimport { aliasMap } from './aliasmap';\n\ninterface IconPaths {\n [key: string]: string;\n}\n\ninterface ButtonClassMap {\n [key:string]: boolean;\n}\n\nconst iconPaths: IconPaths = Icons as IconPaths;\n\nconst SMALL_ICON_SIZE = 16;\nconst LARGE_ICON_SIZE = 24;\n\n/**\n * Nile icon component.\n *\n * @tag nile-icon\n *\n */\n@customElement('nile-icon')\nexport class NileIcon extends LitElement {\n /**\n * The name of the icon set\n * @attr icon set\n * @type {IconName | undefined}\n */\n @property({ type: String, reflect: true })\n public set?: string = 'local';\n\n /**\n * The name of the icon\n * @attr name\n * @type {IconName | undefined}\n */\n @property({ type: String, reflect: true })\n public name?: string;\n\n /**\n * A description of what the icon represents\n * @attr description\n */\n @property({ type: String, reflect: true })\n public description = '';\n\n @property({ type: String, reflect: true })\n public method = 'fill';\n\n /**\n * A path to a custom SVG file to display as the icon\n * @attr customSvgPath\n */\n @property({ type: String })\n public customSvgPath?: string;\n\n /**\n * A size of what the icon represents\n * @attr size\n */\n @property({ type: String, reflect: true })\n public size = SMALL_ICON_SIZE;\n\n @state()\n private _svg = '';\n\n @property({ type: String }) override title = 'agents';\n\n /**\n * Color\n */\n @property({ reflect: true }) color: any ;\n\n @property({ type: Boolean })\n public push = false;\n\n @property({ type: Boolean })\n public noFill = false;\n\n /**\n * Retain Viewbox\n */\n\n @property({ reflect: true }) frame: any;\n\n static override styles = css`\n :host {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n contain: content;\n --nile-svg-stroke-width: 1.3;\n -webkit-font-smoothing: var(--nile-webkit-font-smoothing, var(--ng-webkit-font-smoothing));\n -moz-osx-font-smoothing: var(--nile-moz-osx-font-smoothing, var(--ng-moz-osx-font-smoothing));\n text-rendering: var(--nile-text-rendering, var(--ng-text-rendering));\n }\n\n .nds-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n .nds-icon svg {\n height: var(--nile-svg-height);\n width: var(--nile-svg-width);\n stroke: var(--nile-svg-stroke);\n }\n\n .nds-icon svg path {\n fill: var(--nile-svg-fill);\n }\n\n .nds-icon.no-fill svg path {\n fill: revert-layer;\n }\n\n .stroke svg path {\n fill: none !important;\n stroke: var(--nile-svg-fill) !important;\n stroke-width: var(--nile-svg-stroke-width);\n }\n\n .nds-icon--push {\n margin-right: var(--nile-spacing-lg);\n }\n `;\n\n private _getIconSize(): number {\n return this.name?.endsWith('-small') ? SMALL_ICON_SIZE : LARGE_ICON_SIZE;\n }\n\n protected override async updated(\n changedProperties: PropertyValues\n ): Promise<void> {\n\n if (changedProperties.has('size')) {\n this.style.setProperty('--nile-svg-height', `${this.size}px`);\n this.style.setProperty('--nile-svg-width', `${this.size}px`);\n }\n \n if (changedProperties.has('color')) {\n this.style.setProperty('--nile-svg-fill', `${this.color}`);\n }\n if (changedProperties.has('name') || changedProperties.has('customSvgPath')) {\n const raw = this.name?.replace(/-/g, '') ?? '';\n const iconName = aliasMap[raw] || raw;\n if (iconName && iconPaths[iconName]) {\n this._svg = atob(iconPaths[iconName]);\n } else if (this.customSvgPath) {\n this._svg = await this.fetchSvg(this.customSvgPath);\n } else {\n // throw new Error(`No icon named \"${this.name}\"`);\n }\n }\n this.addAttributesToSvg();\n }\n\n private addAttributesToSvg(){\n const svg = this.renderRoot.querySelector('#svg')\n const attrs = svg?.attributes\n if(!attrs?.getNamedItem('xmlns')){\n svg?.setAttribute('xmlns',\"http://www.w3.org/2000/svg\");\n }\n if(!attrs?.getNamedItem('version')){\n svg?.setAttribute(\"version\",\"1.1\")\n }\n if(this.frame){\n svg?.setAttribute('viewBox',`0 0 ${this.frame} ${this.frame}`)\n }\n else if(!attrs?.getNamedItem('viewBox')){\n const viewboxLogic = this.frame\n ? `0 0 ${this.frame} ${this.frame}`\n : '0 0 16 16';\n svg?.setAttribute('viewBox',viewboxLogic)\n }\n\n if(!attrs?.getNamedItem('height')){\n svg?.setAttribute('height',String(this.size));\n svg?.setAttribute('width',String(this.size));\n }\n\n svg?.setAttribute('aria-hidden',`${this.description === ''}`);\n svg?.setAttribute('aria-label',this.description || '');\n\n const additionalClasses = Object.keys(this.buttonClassMap).filter((key:string)=> this.buttonClassMap[key])\n\n svg?.classList.add('nds-icon',...additionalClasses)\n }\n\n private async fetchSvg(path: string): Promise<string> {\n const response = await fetch(path);\n if (!response.ok) {\n throw new Error(`HTTP error! status: ${response.status}`);\n }\n\n return await response.text();\n }\n\n private removeHyphens(iconName: string) {\n return iconName.replace(/-/g, '');\n }\n\n private getSvgTemplate(){\n const svgTagRegexPattern =/<svg\\s[^>]*>/;\n const regexToGetSVGAttrs = this._svg.match(svgTagRegexPattern);\n const svgAttrs = regexToGetSVGAttrs?.[0].replace('<svg','').replace('>','')\n const svgBody = this._svg.replace(\n svgTagRegexPattern,\n ''\n )\n .replace('</svg>', '')\n return `<svg\n id='svg'\n focusable='true'\n role='img'\n ${svgAttrs}\n >\n ${svgBody}\n </svg>`\n }\n\n get buttonClassMap() {\n return {\n 'stroke': this.method != 'fill' ,\n 'nds-icon--push': this.push,\n 'no-fill': this.noFill,\n } as ButtonClassMap;\n }\n\n protected override render(): TemplateResult {\n const size = this.size;\n const color = this.color;\n\n /**\n * When icons are outside frame\n */\n const viewboxLogic = this.frame\n ? `0 0 ${this.frame} ${this.frame}`\n : '0 0 16 16';\n\n\n if (\n (!this._svg.includes('fill=') || this._svg.includes('fill=\"inherit\"')) &&\n !this.color\n ) {\n // Case 1: _svg does not have fill color or has fill=\"inherit\" and this.color is not mentioned\n this.style.setProperty('--nile-svg-fill', `var(--nile-colors-dark-500,var(--ng-colors-fg-secondary-700))`);\n\n } else if (this.color) {\n // Case 2: If this.color is mentioned, use it as fill, regardless of _svg color\n this.style.setProperty('--nile-svg-fill', `${this.color}`);\n }\n\n return html`\n <span class=\"nds-icon ${classMap(this.buttonClassMap)}\">\n ${unsafeSVG(this.getSvgTemplate())}\n </span>\n `\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-icon': NileIcon;\n }\n}\n"]}
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/nile-icon/index.ts"],"names":[],"mappings":"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","sourcesContent":["import { LitElement, html, css, PropertyValues } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport type { TemplateResult } from 'lit';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { unsafeSVG } from 'lit/directives/unsafe-svg.js';\nimport { unsafeHTML } from 'lit/directives/unsafe-html.js';\nimport * as Icons from './icons/svg';\nimport { aliasMap } from './aliasmap';\n\ninterface IconPaths {\n [key: string]: string;\n}\n\ninterface ButtonClassMap {\n [key:string]: boolean;\n}\n\nconst iconPaths: IconPaths = Icons as IconPaths;\n\nconst SMALL_ICON_SIZE = 16;\nconst LARGE_ICON_SIZE = 24;\n\n/**\n * Nile icon component.\n *\n * @tag nile-icon\n *\n */\n@customElement('nile-icon')\nexport class NileIcon extends LitElement {\n /**\n * The name of the icon set\n * @attr icon set\n * @type {IconName | undefined}\n */\n @property({ type: String, reflect: true })\n public set?: string = 'local';\n\n /**\n * The name of the icon\n * @attr name\n * @type {IconName | undefined}\n */\n @property({ type: String, reflect: true })\n public name?: string;\n\n /**\n * A description of what the icon represents\n * @attr description\n */\n @property({ type: String, reflect: true })\n public description = '';\n\n @property({ type: String, reflect: true })\n public method = 'fill';\n\n /**\n * A path to a custom SVG file to display as the icon\n * @attr customSvgPath\n */\n @property({ type: String })\n public customSvgPath?: string;\n\n /**\n * A size of what the icon represents\n * @attr size\n */\n @property({ type: String, reflect: true })\n public size = SMALL_ICON_SIZE;\n\n @state()\n private _svg = '';\n\n @property({ type: String }) override title = 'agents';\n\n /**\n * Color\n */\n @property({ reflect: true }) color: any ;\n\n @property({ type: Boolean })\n public push = false;\n\n @property({ type: Boolean })\n public noFill = false;\n\n /**\n * Retain Viewbox\n */\n\n @property({ reflect: true }) frame: any;\n\n static override styles = css`\n :host {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n contain: content;\n --nile-svg-stroke-width: 1.3;\n -webkit-font-smoothing: var(--nile-webkit-font-smoothing, var(--ng-webkit-font-smoothing));\n -moz-osx-font-smoothing: var(--nile-moz-osx-font-smoothing, var(--ng-moz-osx-font-smoothing));\n text-rendering: var(--nile-text-rendering, var(--ng-text-rendering));\n }\n\n .nds-icon {\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n .nds-icon svg {\n height: var(--nile-svg-height);\n width: var(--nile-svg-width);\n stroke: var(--nile-svg-stroke);\n }\n\n .nds-icon svg path {\n fill: var(--nile-svg-fill);\n }\n\n .nds-icon.no-fill svg path {\n fill: revert-layer;\n }\n\n .stroke svg path {\n fill: none !important;\n stroke: var(--nile-svg-fill) !important;\n stroke-width: var(--nile-svg-stroke-width);\n }\n\n .nds-icon--push {\n margin-right: var(--nile-spacing-lg);\n }\n `;\n\n private _getIconSize(): number {\n return this.name?.endsWith('-small') ? SMALL_ICON_SIZE : LARGE_ICON_SIZE;\n }\n\n protected override async updated(\n changedProperties: PropertyValues\n ): Promise<void> {\n\n if (changedProperties.has('size')) {\n const resolved = this.resolveCssVarExpression(`${this.size}`);\n if (resolved) {\n const numeric = parseInt(resolved.replace(/px$/, '').trim(), 10);\n if (!isNaN(numeric)) {\n this.size = numeric; \n }\n }\n this.style.setProperty('--nile-svg-height', `${this.size}px`);\n this.style.setProperty('--nile-svg-width', `${this.size}px`);\n }\n \n if (changedProperties.has('color')) {\n this.style.setProperty('--nile-svg-fill', `${this.color}`);\n }\n\n if (changedProperties.has('method')) {\n const resolved = this.resolveCssVarExpression(this.method);\n if (resolved) this.method = resolved.trim();\n }\n\n if (changedProperties.has('name') || changedProperties.has('customSvgPath')) {\n const raw = this.name?.replace(/-/g, '') ?? '';\n const iconName = aliasMap[raw] || raw;\n if (iconName && iconPaths[iconName]) {\n this._svg = atob(iconPaths[iconName]);\n } else if (this.customSvgPath) {\n this._svg = await this.fetchSvg(this.customSvgPath);\n } else {\n // throw new Error(`No icon named \"${this.name}\"`);\n const a = this.resolveCssVarExpression(this.name!)\n this.name = a!;\n }\n }\n this.addAttributesToSvg();\n }\n\n resolveCssVarExpression(expression: string): string | null {\n const regex = /var\\((--[^,\\s)]+)(?:,\\s*(.+))?\\)/;\n \n let match = expression.trim();\n let attempts = 0;\n \n while (match.startsWith(\"var(\") && attempts++ < 10) {\n const parts = match.match(regex);\n if (!parts) break;\n \n const [, varName, fallback] = parts;\n const value = getComputedStyle(document.documentElement).getPropertyValue(varName).trim();\n if (value) {\n return value;\n } else if (fallback) {\n match = fallback.trim();\n } else {\n return null;\n }\n }\n return match || null;\n }\n\n private addAttributesToSvg(){\n const svg = this.renderRoot.querySelector('#svg')\n const attrs = svg?.attributes\n if(!attrs?.getNamedItem('xmlns')){\n svg?.setAttribute('xmlns',\"http://www.w3.org/2000/svg\");\n }\n if(!attrs?.getNamedItem('version')){\n svg?.setAttribute(\"version\",\"1.1\")\n }\n if(this.frame){\n svg?.setAttribute('viewBox',`0 0 ${this.frame} ${this.frame}`)\n }\n else if(!attrs?.getNamedItem('viewBox')){\n const viewboxLogic = this.frame\n ? `0 0 ${this.frame} ${this.frame}`\n : '0 0 16 16';\n svg?.setAttribute('viewBox',viewboxLogic)\n }\n\n if(!attrs?.getNamedItem('height')){\n svg?.setAttribute('height',String(this.size));\n svg?.setAttribute('width',String(this.size));\n }\n\n svg?.setAttribute('aria-hidden',`${this.description === ''}`);\n svg?.setAttribute('aria-label',this.description || '');\n\n const additionalClasses = Object.keys(this.buttonClassMap).filter((key:string)=> this.buttonClassMap[key])\n\n svg?.classList.add('nds-icon',...additionalClasses)\n }\n\n private async fetchSvg(path: string): Promise<string> {\n const response = await fetch(path);\n if (!response.ok) {\n throw new Error(`HTTP error! status: ${response.status}`);\n }\n\n return await response.text();\n }\n\n private removeHyphens(iconName: string) {\n return iconName.replace(/-/g, '');\n }\n\n private getSvgTemplate(){\n const svgTagRegexPattern =/<svg\\s[^>]*>/;\n const regexToGetSVGAttrs = this._svg.match(svgTagRegexPattern);\n const svgAttrs = regexToGetSVGAttrs?.[0].replace('<svg','').replace('>','')\n const svgBody = this._svg.replace(\n svgTagRegexPattern,\n ''\n )\n .replace('</svg>', '')\n return `<svg\n id='svg'\n focusable='true'\n role='img'\n ${svgAttrs}\n >\n ${svgBody}\n </svg>`\n }\n\n get buttonClassMap() {\n return {\n 'stroke': this.method != 'fill' ,\n 'nds-icon--push': this.push,\n 'no-fill': this.noFill,\n } as ButtonClassMap;\n }\n\n protected override render(): TemplateResult {\n const size = this.size;\n const color = this.color;\n\n /**\n * When icons are outside frame\n */\n const viewboxLogic = this.frame\n ? `0 0 ${this.frame} ${this.frame}`\n : '0 0 16 16';\n\n\n if (\n (!this._svg.includes('fill=') || this._svg.includes('fill=\"inherit\"')) &&\n !this.color\n ) {\n // Case 1: _svg does not have fill color or has fill=\"inherit\" and this.color is not mentioned\n this.style.setProperty('--nile-svg-fill', `var(--nile-colors-dark-500,var(--ng-colors-fg-secondary-700))`);\n\n } else if (this.color) {\n // Case 2: If this.color is mentioned, use it as fill, regardless of _svg color\n this.style.setProperty('--nile-svg-fill', `${this.color}`);\n }\n\n return html`\n <span class=\"nds-icon ${classMap(this.buttonClassMap)}\">\n ${unsafeSVG(this.getSvgTemplate())}\n </span>\n `\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-icon': NileIcon;\n }\n}\n"]}
|
@@ -77,14 +77,6 @@ let NileIconButton = class NileIconButton extends NileElement {
|
|
77
77
|
handleMouseLeave(e) {
|
78
78
|
this.ishovered = false;
|
79
79
|
}
|
80
|
-
getTokenValueResolved() {
|
81
|
-
const thisValue = this;
|
82
|
-
const value = Number(getComputedStyle(thisValue).getPropertyValue('--nile-width-14px').trim().split('px')[0]);
|
83
|
-
if (!value) {
|
84
|
-
return Number(getComputedStyle(thisValue).getPropertyValue('--ng-height-12px').trim().split('px')[0]);
|
85
|
-
}
|
86
|
-
return value;
|
87
|
-
}
|
88
80
|
render() {
|
89
81
|
const isLink = this.href ? true : false;
|
90
82
|
const tag = isLink ? literal `a` : literal `button`;
|
@@ -122,7 +114,8 @@ let NileIconButton = class NileIconButton extends NileElement {
|
|
122
114
|
src=${ifDefined(this.src)}
|
123
115
|
.color=${this.color}
|
124
116
|
aria-hidden="true"
|
125
|
-
size="
|
117
|
+
size="var(--nile-icon-size-14, var(--ng-icon-size-12))"
|
118
|
+
method="var(--nile-svg-method-fill, var(--ng-svg-method-stroke))"
|
126
119
|
></nile-icon>
|
127
120
|
</a>
|
128
121
|
`;
|
@@ -160,7 +153,8 @@ let NileIconButton = class NileIconButton extends NileElement {
|
|
160
153
|
src=${ifDefined(this.src)}
|
161
154
|
.color=${this.color}
|
162
155
|
aria-hidden="true"
|
163
|
-
size="
|
156
|
+
size="var(--nile-icon-size-14, var(--ng-icon-size-12))"
|
157
|
+
method="var(--nile-svg-method-fill, var(--ng-svg-method-stroke))"
|
164
158
|
></nile-icon>
|
165
159
|
</button>
|
166
160
|
`;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"nile-icon-button.js","sourceRoot":"","sources":["../../../src/nile-icon-button/nile-icon-button.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n LitElement,\n CSSResultArray,\n TemplateResult,\n html,\n} from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { styles } from './nile-icon-button.css';\n\nimport '../nile-icon';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { query, state } from 'lit/decorators.js';\nimport { literal } from 'lit/static-html.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport type { CSSResultGroup } from 'lit';\nimport NileElement from '../internal/nile-element';\n\n/**\n * @summary Icons buttons are simple, icon-only buttons that can be used for actions and in toolbars.\n * @status stable\n * @since 2.0\n *\n * @dependency nile-icon\n *\n * @event nile-blur - Emitted when the icon button loses focus.\n * @event nile-focus - Emitted when the icon button gains focus.\n *\n * @csspart base - The component's base wrapper.\n */\n/**\n * Nile icon component.\n *\n * @tag nile-icon-button\n *\n */\n@customElement('nile-icon-button')\nexport class NileIconButton extends NileElement {\n static styles: CSSResultGroup = styles;\n\n @query('.icon-button') button: HTMLButtonElement | HTMLLinkElement;\n\n @state() private hasFocus = false;\n\n /** The name of the icon to draw. Available names depend on the icon library being used. */\n @property() name?: string;\n\n /** The name of a registered custom icon library. */\n @property() library?: string;\n\n /**\n * An external URL of an SVG file. Be sure you trust the content you are including, as it will be executed as code and\n * can result in XSS attacks.\n */\n @property() src?: string;\n\n /** When set, the underlying button will be rendered as an `<a>` with this `href` instead of a `<button>`. */\n @property() href?: string;\n\n /** Tells the browser where to open the link. Only used when `href` is set. */\n @property() target?: '_blank' | '_parent' | '_self' | '_top';\n\n /** Tells the browser to download the linked file as this filename. Only used when `href` is set. */\n @property() download?: string;\n\n /**\n * A description that gets read by assistive devices. For optimal accessibility, you should always include a label\n * that describes what the icon button does.\n */\n @property() label = '';\n\n /** Disables the button. */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n /**Default color to icon */\n @property({ type: String, reflect: true }) color?: string;\n\n @property({ type: Boolean, reflect: true }) ishovered: boolean = false;\n\n private handleBlur() {\n this.hasFocus = false;\n this.emit('nile-blur');\n }\n\n private handleFocus() {\n this.hasFocus = true;\n this.emit('nile-focus');\n }\n\n private handleClick(event: MouseEvent) {\n if (this.disabled) {\n event.preventDefault();\n event.stopPropagation();\n }\n }\n\n /** Simulates a click on the icon button. */\n click() {\n this.button.click();\n }\n\n /** Sets focus on the icon button. */\n focus(options?: FocusOptions) {\n this.button.focus(options);\n }\n\n /** Removes focus from the icon button. */\n blur() {\n this.button.blur();\n }\n\n private handleMouseOver(e: any) {\n this.ishovered = true;\n }\n private handleMouseLeave(e: any) {\n this.ishovered = false;\n }\n\n private getTokenValueResolved(): any {\n const thisValue = this; \n \n const value = Number(getComputedStyle(thisValue).getPropertyValue('--nile-width-14px').trim().split('px')[0]);\n if (!value) {\n return Number(getComputedStyle(thisValue).getPropertyValue('--ng-height-12px').trim().split('px')[0]);\n }\n return value;\n }\n\n render(): TemplateResult {\n const isLink = this.href ? true : false;\n const tag = isLink ? literal`a` : literal`button`;\n /* eslint-disable lit/binding-positions, lit/no-invalid-html */\n if(isLink){\n return html`\n <a\n part=\"base\"\n class=${classMap({\n 'icon-button': true,\n 'icon-button--disabled': !isLink && this.disabled,\n 'icon-button--focused': this.hasFocus,\n })}\n .disabled=${isLink}\n type=${ifDefined(isLink ? undefined : 'button')}\n href=${ifDefined(isLink ? this.href : undefined)}\n target=${ifDefined(isLink ? this.target : undefined)}\n download=${ifDefined(isLink ? this.download : undefined)}\n rel=${ifDefined(\n isLink && this.target ? 'noreferrer noopener' : undefined\n )}\n role=${ifDefined(isLink ? undefined : 'button')}\n aria-disabled=${this.disabled ? 'true' : 'false'}\n aria-label=\"${this.label}\"\n tabindex=${this.disabled ? '-1' : '0'}\n @blur=${this.handleBlur}\n @focus=${this.handleFocus}\n @click=${this.handleClick}\n @mouseover=${this.handleMouseOver}\n @mouseleave=${this.handleMouseLeave}\n >\n \n <nile-icon\n class=\"icon-button__icon\"\n name=${ifDefined(this.name)}\n library=${ifDefined(this.library)}\n src=${ifDefined(this.src)}\n .color=${this.color}\n aria-hidden=\"true\"\n size=\"${this.getTokenValueResolved()}\"\n ></nile-icon>\n </a>\n `;\n }\n else{\n return html`\n <button\n part=\"base\"\n class=${classMap({\n 'icon-button': true,\n 'icon-button--disabled': !isLink && this.disabled,\n 'icon-button--focused': this.hasFocus,\n })}\n .disabled=${isLink}\n type=${ifDefined(isLink ? undefined : 'button')}\n href=${ifDefined(isLink ? this.href : undefined)}\n target=${ifDefined(isLink ? this.target : undefined)}\n download=${ifDefined(isLink ? this.download : undefined)}\n rel=${ifDefined(\n isLink && this.target ? 'noreferrer noopener' : undefined\n )}\n role=${ifDefined(isLink ? undefined : 'button')}\n aria-disabled=${this.disabled ? 'true' : 'false'}\n aria-label=\"${this.label}\"\n tabindex=${this.disabled ? '-1' : '0'}\n @blur=${this.handleBlur}\n @focus=${this.handleFocus}\n @click=${this.handleClick}\n @mouseover=${this.handleMouseOver}\n @mouseleave=${this.handleMouseLeave}\n >\n \n <nile-icon\n class=\"icon-button__icon\"\n name=${ifDefined(this.name)}\n library=${ifDefined(this.library)}\n src=${ifDefined(this.src)}\n .color=${this.color}\n aria-hidden=\"true\"\n size=\"${this.getTokenValueResolved()}\"\n ></nile-icon>\n </button>\n `;\n }\n }\n}\n\nexport default NileIconButton;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-icon-button': NileIconButton;\n }\n}\n"]}
|
1
|
+
{"version":3,"file":"nile-icon-button.js","sourceRoot":"","sources":["../../../src/nile-icon-button/nile-icon-button.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;;AAEH,OAAO,EAIL,IAAI,GACL,MAAM,KAAK,CAAC;AACb,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAEhD,OAAO,cAAc,CAAC;AACtB,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAEzD,OAAO,WAAW,MAAM,0BAA0B,CAAC;AAEnD;;;;;;;;;;;GAWG;AACH;;;;;GAKG;AAEI,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,WAAW;IAAxC;;QAKY,aAAQ,GAAG,KAAK,CAAC;QAuBlC;;;WAGG;QACS,UAAK,GAAG,EAAE,CAAC;QAEvB,2BAA2B;QACiB,aAAQ,GAAG,KAAK,CAAC;QAKjB,cAAS,GAAY,KAAK,CAAC;IAgIzE,CAAC;IA9HS,UAAU;QAChB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACzB,CAAC;IAEO,WAAW;QACjB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC1B,CAAC;IAEO,WAAW,CAAC,KAAiB;QACnC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,KAAK,CAAC,eAAe,EAAE,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,4CAA4C;IAC5C,KAAK;QACH,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IAED,qCAAqC;IACrC,KAAK,CAAC,OAAsB;QAC1B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED,0CAA0C;IAC1C,IAAI;QACF,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IACrB,CAAC;IAEO,eAAe,CAAC,CAAM;QAC5B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IACxB,CAAC;IACO,gBAAgB,CAAC,CAAM;QAC7B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;IACzB,CAAC;IAED,MAAM;QACJ,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QACxC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,CAAA,GAAG,CAAC,CAAC,CAAC,OAAO,CAAA,QAAQ,CAAC;QAClD,+DAA+D;QAC/D,IAAG,MAAM,EAAC,CAAC;YACT,OAAO,IAAI,CAAA;;;kBAGC,QAAQ,CAAC;gBACf,aAAa,EAAE,IAAI;gBACnB,uBAAuB,EAAE,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ;gBACjD,sBAAsB,EAAE,IAAI,CAAC,QAAQ;aACtC,CAAC;sBACU,MAAM;iBACX,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;iBACxC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;mBACvC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;qBACzC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;gBAClD,SAAS,CACb,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAC1D;iBACM,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;0BAC/B,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;wBAClC,IAAI,CAAC,KAAK;qBACb,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG;kBAC7B,IAAI,CAAC,UAAU;mBACd,IAAI,CAAC,WAAW;mBAChB,IAAI,CAAC,WAAW;uBACZ,IAAI,CAAC,eAAe;wBACnB,IAAI,CAAC,gBAAgB;;;;;mBAK1B,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;sBACjB,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC;kBAC3B,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC;qBAChB,IAAI,CAAC,KAAK;;;;;;OAMxB,CAAC;QACJ,CAAC;aACG,CAAC;YACH,OAAO,IAAI,CAAA;;;kBAGC,QAAQ,CAAC;gBACf,aAAa,EAAE,IAAI;gBACnB,uBAAuB,EAAE,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ;gBACjD,sBAAsB,EAAE,IAAI,CAAC,QAAQ;aACtC,CAAC;sBACU,MAAM;iBACX,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;iBACxC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;mBACvC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;qBACzC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;gBAClD,SAAS,CACb,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAC1D;iBACM,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;0BAC/B,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;wBAClC,IAAI,CAAC,KAAK;qBACb,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG;kBAC7B,IAAI,CAAC,UAAU;mBACd,IAAI,CAAC,WAAW;mBAChB,IAAI,CAAC,WAAW;uBACZ,IAAI,CAAC,eAAe;wBACnB,IAAI,CAAC,gBAAgB;;;;;mBAK1B,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;sBACjB,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC;kBAC3B,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC;qBAChB,IAAI,CAAC,KAAK;;;;;;OAMxB,CAAC;QACJ,CAAC;IACH,CAAC;;AAtKM,qBAAM,GAAmB,MAAM,AAAzB,CAA0B;AAEhB;IAAtB,KAAK,CAAC,cAAc,CAAC;8CAA6C;AAElD;IAAhB,KAAK,EAAE;gDAA0B;AAGtB;IAAX,QAAQ,EAAE;4CAAe;AAGd;IAAX,QAAQ,EAAE;+CAAkB;AAMjB;IAAX,QAAQ,EAAE;2CAAc;AAGb;IAAX,QAAQ,EAAE;4CAAe;AAGd;IAAX,QAAQ,EAAE;8CAAkD;AAGjD;IAAX,QAAQ,EAAE;gDAAmB;AAMlB;IAAX,QAAQ,EAAE;6CAAY;AAGqB;IAA3C,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;gDAAkB;AAGlB;IAA1C,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;6CAAgB;AAEd;IAA3C,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;iDAA4B;AAxC5D,cAAc;IAD1B,aAAa,CAAC,kBAAkB,CAAC;GACrB,cAAc,CAwK1B;;AAED,eAAe,cAAc,CAAC","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n LitElement,\n CSSResultArray,\n TemplateResult,\n html,\n} from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { styles } from './nile-icon-button.css';\n\nimport '../nile-icon';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { query, state } from 'lit/decorators.js';\nimport { literal } from 'lit/static-html.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport type { CSSResultGroup } from 'lit';\nimport NileElement from '../internal/nile-element';\n\n/**\n * @summary Icons buttons are simple, icon-only buttons that can be used for actions and in toolbars.\n * @status stable\n * @since 2.0\n *\n * @dependency nile-icon\n *\n * @event nile-blur - Emitted when the icon button loses focus.\n * @event nile-focus - Emitted when the icon button gains focus.\n *\n * @csspart base - The component's base wrapper.\n */\n/**\n * Nile icon component.\n *\n * @tag nile-icon-button\n *\n */\n@customElement('nile-icon-button')\nexport class NileIconButton extends NileElement {\n static styles: CSSResultGroup = styles;\n\n @query('.icon-button') button: HTMLButtonElement | HTMLLinkElement;\n\n @state() private hasFocus = false;\n\n /** The name of the icon to draw. Available names depend on the icon library being used. */\n @property() name?: string;\n\n /** The name of a registered custom icon library. */\n @property() library?: string;\n\n /**\n * An external URL of an SVG file. Be sure you trust the content you are including, as it will be executed as code and\n * can result in XSS attacks.\n */\n @property() src?: string;\n\n /** When set, the underlying button will be rendered as an `<a>` with this `href` instead of a `<button>`. */\n @property() href?: string;\n\n /** Tells the browser where to open the link. Only used when `href` is set. */\n @property() target?: '_blank' | '_parent' | '_self' | '_top';\n\n /** Tells the browser to download the linked file as this filename. Only used when `href` is set. */\n @property() download?: string;\n\n /**\n * A description that gets read by assistive devices. For optimal accessibility, you should always include a label\n * that describes what the icon button does.\n */\n @property() label = '';\n\n /** Disables the button. */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n /**Default color to icon */\n @property({ type: String, reflect: true }) color?: string;\n\n @property({ type: Boolean, reflect: true }) ishovered: boolean = false;\n\n private handleBlur() {\n this.hasFocus = false;\n this.emit('nile-blur');\n }\n\n private handleFocus() {\n this.hasFocus = true;\n this.emit('nile-focus');\n }\n\n private handleClick(event: MouseEvent) {\n if (this.disabled) {\n event.preventDefault();\n event.stopPropagation();\n }\n }\n\n /** Simulates a click on the icon button. */\n click() {\n this.button.click();\n }\n\n /** Sets focus on the icon button. */\n focus(options?: FocusOptions) {\n this.button.focus(options);\n }\n\n /** Removes focus from the icon button. */\n blur() {\n this.button.blur();\n }\n\n private handleMouseOver(e: any) {\n this.ishovered = true;\n }\n private handleMouseLeave(e: any) {\n this.ishovered = false;\n }\n\n render(): TemplateResult {\n const isLink = this.href ? true : false;\n const tag = isLink ? literal`a` : literal`button`;\n /* eslint-disable lit/binding-positions, lit/no-invalid-html */\n if(isLink){\n return html`\n <a\n part=\"base\"\n class=${classMap({\n 'icon-button': true,\n 'icon-button--disabled': !isLink && this.disabled,\n 'icon-button--focused': this.hasFocus,\n })}\n .disabled=${isLink}\n type=${ifDefined(isLink ? undefined : 'button')}\n href=${ifDefined(isLink ? this.href : undefined)}\n target=${ifDefined(isLink ? this.target : undefined)}\n download=${ifDefined(isLink ? this.download : undefined)}\n rel=${ifDefined(\n isLink && this.target ? 'noreferrer noopener' : undefined\n )}\n role=${ifDefined(isLink ? undefined : 'button')}\n aria-disabled=${this.disabled ? 'true' : 'false'}\n aria-label=\"${this.label}\"\n tabindex=${this.disabled ? '-1' : '0'}\n @blur=${this.handleBlur}\n @focus=${this.handleFocus}\n @click=${this.handleClick}\n @mouseover=${this.handleMouseOver}\n @mouseleave=${this.handleMouseLeave}\n >\n \n <nile-icon\n class=\"icon-button__icon\"\n name=${ifDefined(this.name)}\n library=${ifDefined(this.library)}\n src=${ifDefined(this.src)}\n .color=${this.color}\n aria-hidden=\"true\"\n size=\"var(--nile-icon-size-14, var(--ng-icon-size-12))\"\n method=\"var(--nile-svg-method-fill, var(--ng-svg-method-stroke))\"\n ></nile-icon>\n </a>\n `;\n }\n else{\n return html`\n <button\n part=\"base\"\n class=${classMap({\n 'icon-button': true,\n 'icon-button--disabled': !isLink && this.disabled,\n 'icon-button--focused': this.hasFocus,\n })}\n .disabled=${isLink}\n type=${ifDefined(isLink ? undefined : 'button')}\n href=${ifDefined(isLink ? this.href : undefined)}\n target=${ifDefined(isLink ? this.target : undefined)}\n download=${ifDefined(isLink ? this.download : undefined)}\n rel=${ifDefined(\n isLink && this.target ? 'noreferrer noopener' : undefined\n )}\n role=${ifDefined(isLink ? undefined : 'button')}\n aria-disabled=${this.disabled ? 'true' : 'false'}\n aria-label=\"${this.label}\"\n tabindex=${this.disabled ? '-1' : '0'}\n @blur=${this.handleBlur}\n @focus=${this.handleFocus}\n @click=${this.handleClick}\n @mouseover=${this.handleMouseOver}\n @mouseleave=${this.handleMouseLeave}\n >\n \n <nile-icon\n class=\"icon-button__icon\"\n name=${ifDefined(this.name)}\n library=${ifDefined(this.library)}\n src=${ifDefined(this.src)}\n .color=${this.color}\n aria-hidden=\"true\"\n size=\"var(--nile-icon-size-14, var(--ng-icon-size-12))\"\n method=\"var(--nile-svg-method-fill, var(--ng-svg-method-stroke))\"\n ></nile-icon>\n </button>\n `;\n }\n }\n}\n\nexport default NileIconButton;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-icon-button': NileIconButton;\n }\n}\n"]}
|
@@ -426,7 +426,7 @@ let NileInput = class NileInput extends NileElement {
|
|
426
426
|
tabindex="-1"
|
427
427
|
>
|
428
428
|
<slot name="clear-icon">
|
429
|
-
<nile-icon name="error" library="system"></nile-icon>
|
429
|
+
<nile-icon name="var(--nile-icon-error, var(--ng-icon-x-circle))" method="var(--nile-svg-method-fill, var(--ng-svg-method-stroke))" library="system"></nile-icon>
|
430
430
|
</slot>
|
431
431
|
</button>
|
432
432
|
`
|
@@ -447,7 +447,8 @@ let NileInput = class NileInput extends NileElement {
|
|
447
447
|
? html `
|
448
448
|
<slot name="show-password-icon">
|
449
449
|
<nile-icon
|
450
|
-
name="eye"
|
450
|
+
name="var(--nile-icon-eye, var(--ng-icon-eye))"
|
451
|
+
method="var(--nile-svg-method-fill, var(--ng-svg-method-stroke))"
|
451
452
|
library="system"
|
452
453
|
></nile-icon>
|
453
454
|
</slot>
|
@@ -455,7 +456,8 @@ let NileInput = class NileInput extends NileElement {
|
|
455
456
|
: html `
|
456
457
|
<slot name="hide-password-icon">
|
457
458
|
<nile-icon
|
458
|
-
name="eye"
|
459
|
+
name="var(--nile-icon-eye, var(--ng-icon-eye))"
|
460
|
+
method="var(--nile-svg-method-fill, var(--ng-svg-method-stroke))"
|
459
461
|
library="system"
|
460
462
|
></nile-icon>
|
461
463
|
</slot>
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"nile-input.js","sourceRoot":"","sources":["../../../src/nile-input/nile-input.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n LitElement,\n html,\n CSSResultArray,\n TemplateResult,\n} from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { styles } from './nile-input.css';\nimport '../nile-icon';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { query, state } from 'lit/decorators.js';\nimport { defaultValue } from '../internal/default-value';\nimport { FormControlController } from '../internal/form';\nimport { HasSlotController } from '../internal/slot';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { live } from 'lit/directives/live.js';\nimport { watch } from '../internal/watch';\nimport type { CSSResultGroup } from 'lit';\nimport NileElement, { NileFormControl } from '../internal/nile-element';\nimport { unsafeHTML } from 'lit/directives/unsafe-html.js';\n\n/**\n * Nile icon component.\n *\n * @tag nile-input\n *\n */\n@customElement('nile-input')\nexport class NileInput extends NileElement implements NileFormControl {\n static styles: CSSResultGroup = styles;\n\n private readonly formControlController = new FormControlController(this, {\n assumeInteractionOn: ['nile-blur', 'nile-input'],\n });\n private readonly hasSlotController = new HasSlotController(\n this,\n 'help-text',\n 'label'\n );\n\n @query('.input__control') input: HTMLInputElement;\n\n @state() private hasFocus = false;\n @property() title = ''; // make reactive to pass through\n\n /**\n * The type of input. Works the same as a native `<input>` element, but only a subset of types are supported. Defaults\n * to `text`.\n */\n @property({ reflect: true }) type:\n | 'date'\n | 'datetime-local'\n | 'email'\n | 'number'\n | 'password'\n | 'search'\n | 'tel'\n | 'text'\n | 'time'\n | 'url' = 'text';\n\n /** The name of the input, submitted as a name/value pair with form data. */\n @property() name = '';\n\n /** The current value of the input, submitted as a name/value pair with form data. */\n @property() value = '';\n\n @property({ type: Boolean }) checkNonPrintableChar: boolean = false;\n\n /** The default value of the form control. Primarily used for resetting the form control. */\n @defaultValue() defaultValue = '';\n\n /** The input's size. */\n @property({ reflect: true }) size: 'small' | 'medium' | 'large' = 'medium';\n\n /** Draws a filled input. */\n @property({ type: Boolean, reflect: true }) filled = false;\n\n /** Sets the input to a warning state, changing its visual appearance. */\n @property({ type: Boolean }) warning = false;\n\n /** Sets the input to an error state, changing its visual appearance. */\n @property({ type: Boolean }) error = false;\n\n /** Sets the input to a success state, changing its visual appearance. */\n @property({ type: Boolean }) success = false;\n\n /** Sets the input to a Destructive state, changing its visual appearance. */\n @property({ type: Boolean }) destructive = false;\n\n /** Draws a pill-style input with rounded edges. */\n @property({ type: Boolean, reflect: true }) pill = false;\n\n /** The input's label. If you need to display HTML, use the `label` slot instead. */\n @property() label = '';\n\n @property({ attribute: 'help-text', reflect: true }) helpText = '';\n\n @property({ attribute: 'error-message', reflect: true }) errorMessage = '';\n\n /** Adds a clear button when the input is not empty. */\n @property({ type: Boolean }) clearable = false;\n\n /** Disables the input. */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n /** Placeholder text to show as a hint when the input is empty. */\n @property() placeholder = '';\n\n /** Makes the input readonly. */\n @property({ type: Boolean, reflect: true }) readonly = false;\n\n /** Adds a button to toggle the password's visibility. Only applies to password types. */\n @property({ attribute: 'password-toggle', type: Boolean }) passwordToggle =\n false;\n\n /** Determines whether or not the password is currently visible. Only applies to password input types. */\n @property({ attribute: 'password-visible', type: Boolean }) passwordVisible =\n false;\n\n /** Hides the browser's built-in increment/decrement spin buttons for number inputs. */\n @property({ attribute: 'no-spin-buttons', type: Boolean }) noSpinButtons =\n false;\n\n /**\n * By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you\n * to place the form control outside of a form and associate it with the form that has this `id`. The form must be in\n * the same document or shadow root for this to work.\n */\n @property({ reflect: true }) form = '';\n\n /** Makes the input a required field. */\n @property({ type: Boolean, reflect: true }) required = false;\n\n /** A regular expression pattern to validate input against. */\n @property() pattern: string;\n\n /** The minimum length of input that will be considered valid. */\n @property({ type: Number }) minlength: number;\n\n /** The maximum length of input that will be considered valid. */\n @property({ type: Number }) maxlength: number;\n\n /** The input's minimum value. Only applies to date and number input types. */\n @property() min: number | string;\n\n /** The input's maximum value. Only applies to date and number input types. */\n @property() max: number | string;\n\n /**\n * Specifies the granularity that the value must adhere to, or the special value `any` which means no stepping is\n * implied, allowing any numeric value. Only applies to date and number input types.\n */\n @property() step: number | 'any';\n\n /** Controls whether and how text input is automatically capitalized as it is entered by the user. */\n @property() autocapitalize:\n | 'off'\n | 'none'\n | 'on'\n | 'sentences'\n | 'words'\n | 'characters';\n\n /** Indicates whether the browser's autocorrect feature is on or off. */\n @property() autocorrect: 'off' | 'on';\n\n /**\n * Specifies what permission the browser has to provide assistance in filling out form field values. Refer to\n * [this page on MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) for available values.\n */\n @property() autocomplete: string = 'off';\n\n /** Indicates that the input should receive focus on page load. */\n @property({ type: Boolean }) autofocus: boolean;\n\n /** Used to customize the label or icon of the Enter key on virtual keyboards. */\n @property() enterkeyhint:\n | 'enter'\n | 'done'\n | 'go'\n | 'next'\n | 'previous'\n | 'search'\n | 'send';\n\n /** Enables spell checking on the input. */\n @property({\n type: Boolean,\n converter: {\n // Allow \"true|false\" attribute values but keep the property boolean\n fromAttribute: value => (!value || value === 'false' ? false : true),\n toAttribute: value => (value ? 'true' : 'false'),\n },\n })\n spellcheck = true;\n\n @property({ type: Boolean, reflect: true }) canSavePassword = false;\n\n /**\n * Tells the browser what type of data will be entered by the user, allowing it to display the appropriate virtual\n * keyboard on supportive devices.\n */\n @property() inputmode:\n | 'none'\n | 'text'\n | 'decimal'\n | 'numeric'\n | 'tel'\n | 'search'\n | 'email'\n | 'url';\n\n //\n // NOTE: We use an in-memory input for these getters/setters instead of the one in the template because the properties\n // can be set before the component is rendered.\n //\n\n @state() hasPrintableCharacters: boolean = false;\n\n @state() markedValue: string;\n\n @property() noOutline: any = false;\n\n @property() noPadding: any = false;\n\n connectedCallback() {\n super.connectedCallback();\n this.emit('nile-init');\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.emit('nile-destroy');\n }\n\n /** Gets or sets the current value as a `Date` object. Returns `null` if the value can't be converted. */\n get valueAsDate() {\n const input = document.createElement('input');\n input.type = 'date';\n input.value = this.value;\n return input.valueAsDate;\n }\n\n set valueAsDate(newValue: Date | null) {\n const input = document.createElement('input');\n input.type = 'date';\n input.valueAsDate = newValue;\n this.value = input.value;\n }\n\n /** Gets or sets the current value as a number. Returns `NaN` if the value can't be converted. */\n get valueAsNumber() {\n const input = document.createElement('input');\n input.type = 'number';\n input.value = this.value;\n return input.valueAsNumber;\n }\n\n set valueAsNumber(newValue: number) {\n const input = document.createElement('input');\n input.type = 'number';\n input.valueAsNumber = newValue;\n this.value = input.value;\n }\n\n /** Gets the validity state object */\n get validity() {\n return this.input.validity;\n }\n\n /** Gets the validation message */\n get validationMessage() {\n return this.input.validationMessage;\n }\n\n firstUpdated() {\n this.emit('nile-after-init');\n this.formControlController.updateValidity();\n }\n\n private handleBlur() {\n this.hasFocus = false;\n this.emit('nile-blur', { value: this.value });\n }\n\n private handleChange() {\n this.value = this.input.value;\n this.emit('nile-change', { value: this.value });\n }\n\n private handleClearClick(event: MouseEvent) {\n this.value = '';\n this.emit('nile-clear', { value: this.value });\n this.emit('nile-input', { value: this.value });\n this.emit('nile-change', { value: this.value });\n this.input.focus();\n\n event.stopPropagation();\n }\n\n private handleFocus() {\n this.hasFocus = true;\n this.emit('nile-focus', { value: this.value });\n\n if (this.checkNonPrintableChar) {\n this.markNonPrintableCharacters();\n }\n }\n\n private handleInput() {\n this.value = this.input.value;\n this.formControlController.updateValidity();\n this.emit('nile-input', { value: this.value });\n }\n\n private handleInvalid(event: Event) {\n this.formControlController.setValidity(false);\n this.formControlController.emitInvalidEvent(event);\n }\n\n private handleKeyDown(event: KeyboardEvent) {\n const hasModifier =\n event.metaKey || event.ctrlKey || event.shiftKey || event.altKey;\n\n // Pressing enter when focused on an input should submit the form like a native input, but we wait a tick before\n // submitting to allow users to cancel the keydown event if they need to\n if (event.key === 'Enter' && !hasModifier) {\n setTimeout(() => {\n //\n // When using an Input Method Editor (IME), pressing enter will cause the form to submit unexpectedly. One way\n // to check for this is to look at event.isComposing, which will be true when the IME is open.\n //\n\n //\n if (!event.defaultPrevented && !event.isComposing) {\n this.formControlController.submit();\n }\n });\n }\n }\n\n private handlePasswordToggle() {\n this.passwordVisible = !this.passwordVisible;\n }\n\n @watch('disabled', { waitUntilFirstUpdate: true })\n handleDisabledChange() {\n // Disabled form controls are always valid\n this.formControlController.setValidity(this.disabled);\n }\n\n @watch('step', { waitUntilFirstUpdate: true })\n handleStepChange() {\n // If step changes, the value may become invalid so we need to recheck after the update. We set the new step\n // imperatively so we don't have to wait for the next render to report the updated validity.\n this.input.step = String(this.step);\n }\n\n @watch('value', { waitUntilFirstUpdate: true })\n async handleValueChange() {\n await this.updateComplete;\n\n if (this.checkNonPrintableChar) {\n this.markNonPrintableCharacters();\n }\n }\n\n /** checks non printable characters in the value. */\n markNonPrintableCharacters() {\n let markedValue = '';\n this.hasPrintableCharacters = false;\n if (this.value) {\n for (let i = 0, n = this.value.length; i < n; i++) {\n const charCode = this.value.charCodeAt(i);\n\n if (charCode > 127) {\n markedValue += `<span class=\"input__srtiked-text\">${this.value.charAt(\n i\n )}</span>`;\n this.hasPrintableCharacters = true;\n } else {\n markedValue += this.value.charAt(i);\n }\n }\n }\n\n this.markedValue = markedValue;\n this.emit('nile-value-marked', {\n value: this.markedValue,\n hasNonPrintableCharacters: this.hasPrintableCharacters,\n });\n }\n\n /** Removes all non printable characters from the value. */\n removeAllNonPrintableCharacters() {\n let cleanedValue = '';\n\n if (this.value) {\n for (let i = 0, n = this.value.length; i < n; i++) {\n const charCode = this.value.charCodeAt(i);\n\n // Consider a character printable if it's not in the specified non-printable ranges\n if (charCode < 128) {\n cleanedValue += this.value.charAt(i);\n }\n }\n }\n\n this.value = cleanedValue;\n this.emit('nile-npchar-removed', { value: this.value });\n }\n\n /** Sets focus on the input. */\n focus(options?: FocusOptions) {\n this.input.focus(options);\n }\n\n /** Removes focus from the input. */\n blur() {\n this.input.blur();\n }\n\n /** Selects all the text in the input. */\n select() {\n this.input.select();\n }\n\n /** Sets the start and end positions of the text selection (0-based). */\n setSelectionRange(\n selectionStart: number,\n selectionEnd: number,\n selectionDirection: 'forward' | 'backward' | 'none' = 'none'\n ) {\n this.input.setSelectionRange(\n selectionStart,\n selectionEnd,\n selectionDirection\n );\n }\n\n /** Replaces a range of text with a new string. */\n setRangeText(\n replacement: string,\n start?: number,\n end?: number,\n selectMode?: 'select' | 'start' | 'end' | 'preserve'\n ) {\n // @ts-expect-error - start, end, and selectMode are optional\n this.input.setRangeText(replacement, start, end, selectMode);\n\n if (this.value !== this.input.value) {\n this.value = this.input.value;\n }\n }\n\n // /** Displays the browser picker for an input element (only works if the browser supports it for the input type). */\n // showPicker() {\n // if ('showPicker' in HTMLInputElement.prototype) {\n // this.input.showPicker();\n // }\n // }\n\n /** Increments the value of a numeric input type by the value of the step attribute. */\n stepUp() {\n this.input.stepUp();\n if (this.value !== this.input.value) {\n this.value = this.input.value;\n }\n }\n\n /** Decrements the value of a numeric input type by the value of the step attribute. */\n stepDown() {\n this.input.stepDown();\n if (this.value !== this.input.value) {\n this.value = this.input.value;\n }\n }\n\n /** Checks for validity but does not show a validation message. Returns `true` when valid and `false` when invalid. */\n checkValidity() {\n return this.input.checkValidity();\n }\n\n /** Gets the associated form, if one exists. */\n getForm(): HTMLFormElement | null {\n return this.formControlController.getForm();\n }\n\n /** Checks for validity and shows the browser's validation message if the control is invalid. */\n reportValidity() {\n return this.input.reportValidity();\n }\n\n /** Sets a custom validation message. Pass an empty string to restore validity. */\n setCustomValidity(message: string) {\n this.input.setCustomValidity(message);\n this.formControlController.updateValidity();\n }\n\n render() {\n const hasLabelSlot = this.hasSlotController.test('label');\n const hasHelpTextSlot = this.hasSlotController.test('help-text');\n const hasLabel = this.label ? true : !!hasLabelSlot;\n const hasLabelSuffixSlot = this.hasSlotController.test('label-suffix');\n const hasHelpText = this.helpText ? true : false;\n const hasErrorMessage = this.errorMessage ? true : false;\n const hasClearIcon =\n this.clearable &&\n !this.disabled &&\n !this.readonly &&\n (typeof this.value === 'number' || this.value.length > 0);\n\n return html`\n <div\n part=\"form-control\"\n class=${classMap({\n 'form-control': true,\n 'form-control--small': this.size === 'small',\n 'form-control--medium': this.size === 'medium',\n 'form-control--large': this.size === 'large',\n 'form-control--has-label': hasLabel,\n 'form-control--has-help-text': hasHelpText,\n })}\n >\n <label\n part=\"form-control-label\"\n class=\"form-control__label\"\n for=\"input\"\n aria-hidden=${hasLabel ? 'false' : 'true'}\n >\n <slot name=\"label\">${this.label}</slot>\n </label>\n\n ${hasLabelSuffixSlot ? html` <slot name=\"label-suffix\"></slot> ` : ``}\n\n <div part=\"form-control-input\" class=\"form-control-input\">\n <nile-popup ?active=${this.hasPrintableCharacters}\n placement=\"bottom-start\"\n distance=\"5\"\n exportparts=\"input\"\n strategy=\"fixed\"\n >\n <div\n slot=\"anchor\"\n part=\"base\"\n class=${classMap({\n input: true,\n\n // Sizes\n 'input--small': this.size === 'small',\n 'input--medium': this.size === 'medium',\n 'input--large': this.size === 'large',\n\n // States\n 'input--pill': this.pill,\n 'input--standard': !this.filled,\n 'input--warning': this.warning,\n 'input--error': this.error,\n 'input--success': this.success,\n 'input--destructive': this.destructive,\n 'input--filled': this.filled,\n 'input--disabled': this.disabled,\n 'input--focused': this.hasFocus,\n 'input--empty': !this.value,\n 'input--no-spin-buttons': this.noSpinButtons,\n })}\n >\n <slot name=\"prefix\" part=\"prefix\" class=\"input__prefix\"></slot>\n <input\n part=\"input\"\n id=\"input\"\n class=\"input__control ${\n this.type === 'password' && !this.passwordVisible\n ? 'input__password'\n : ''\n }\"\n type=${this.type === 'password' && !this.canSavePassword ? 'text' : this.type}\n title=${\n this\n .title /* An empty title prevents browser validation tooltips from appearing on hover */\n }\n name=${ifDefined(this.name)}\n ?disabled=${this.disabled}\n ?readonly=${this.readonly}\n ?required=${this.required}\n placeholder=${ifDefined(this.placeholder)}\n minlength=${ifDefined(this.minlength)}\n maxlength=${ifDefined(this.maxlength)}\n min=${ifDefined(this.min)}\n max=${ifDefined(this.max)}\n step=${ifDefined(this.step as number)}\n .value=${live(this.value)}\n autocapitalize=${ifDefined(this.autocapitalize)}\n autocomplete=${ifDefined(this.autocomplete as any)}\n autocorrect=${ifDefined(this.autocorrect)}\n ?autofocus=${this.autofocus}\n spellcheck=${this.spellcheck}\n pattern=${ifDefined(this.pattern)}\n enterkeyhint=${ifDefined(this.enterkeyhint)}\n inputmode=${ifDefined(this.inputmode)}\n aria-describedby=\"help-text\"\n @change=${this.handleChange}\n @input=${this.handleInput}\n @invalid=${this.handleInvalid}\n @keydown=${this.handleKeyDown}\n @focus=${this.handleFocus}\n @blur=${this.handleBlur}\n />\n\n ${\n hasClearIcon\n ? html`\n <button\n part=\"clear-button\"\n class=\"input__clear\"\n type=\"button\"\n aria-label=\"clearEntry\"\n @click=${this.handleClearClick}\n tabindex=\"-1\"\n >\n <slot name=\"clear-icon\">\n <nile-icon name=\"error\" library=\"system\"></nile-icon>\n </slot>\n </button>\n `\n : ''\n }\n ${\n this.passwordToggle && !this.disabled\n ? html`\n <button\n part=\"password-toggle-button\"\n class=\"input__password-toggle\"\n type=\"button\"\n aria-label=${this.passwordVisible\n ? 'hidePassword'\n : 'showPassword'}\n @click=${this.handlePasswordToggle}\n tabindex=\"-1\"\n >\n ${this.passwordVisible\n ? html`\n <slot name=\"show-password-icon\">\n <nile-icon\n name=\"eye\"\n library=\"system\"\n ></nile-icon>\n </slot>\n `\n : html`\n <slot name=\"hide-password-icon\">\n <nile-icon\n name=\"eye\"\n library=\"system\"\n ></nile-icon>\n </slot>\n `}\n </button>\n `\n : ''\n }\n\n <slot name=\"suffix\" part=\"suffix\" class=\"input__suffix\"></slot>\n </div>\n\n <div class=\"input__non-printable\">\n Non-printable character detected.\n <nile-badge variant=\"error\" @click=${\n this.removeAllNonPrintableCharacters\n } class=\"input__remove-non-printable\" >\n Remove All\n </nile-badge>\n\n <div class=\"input__srtiked-text-container\"> ${unsafeHTML(\n this.markedValue\n )} </div>\n\n </div>\n </nile-popup>\n </div>\n\n ${\n hasHelpText\n ? html`\n <nile-form-help-text>${this.helpText}</nile-form-help-text>\n `\n : ``\n }\n\n ${\n hasErrorMessage\n ? html`\n <nile-form-error-message\n >${this.errorMessage}</nile-form-error-message\n >\n `\n : ``\n }\n </div>\n </div>\n `;\n }\n}\n\nexport default NileInput;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-input': NileInput;\n }\n}\n"]}
|
1
|
+
{"version":3,"file":"nile-input.js","sourceRoot":"","sources":["../../../src/nile-input/nile-input.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n LitElement,\n html,\n CSSResultArray,\n TemplateResult,\n} from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { styles } from './nile-input.css';\nimport '../nile-icon';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { query, state } from 'lit/decorators.js';\nimport { defaultValue } from '../internal/default-value';\nimport { FormControlController } from '../internal/form';\nimport { HasSlotController } from '../internal/slot';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { live } from 'lit/directives/live.js';\nimport { watch } from '../internal/watch';\nimport type { CSSResultGroup } from 'lit';\nimport NileElement, { NileFormControl } from '../internal/nile-element';\nimport { unsafeHTML } from 'lit/directives/unsafe-html.js';\n\n/**\n * Nile icon component.\n *\n * @tag nile-input\n *\n */\n@customElement('nile-input')\nexport class NileInput extends NileElement implements NileFormControl {\n static styles: CSSResultGroup = styles;\n\n private readonly formControlController = new FormControlController(this, {\n assumeInteractionOn: ['nile-blur', 'nile-input'],\n });\n private readonly hasSlotController = new HasSlotController(\n this,\n 'help-text',\n 'label'\n );\n\n @query('.input__control') input: HTMLInputElement;\n\n @state() private hasFocus = false;\n @property() title = ''; // make reactive to pass through\n\n /**\n * The type of input. Works the same as a native `<input>` element, but only a subset of types are supported. Defaults\n * to `text`.\n */\n @property({ reflect: true }) type:\n | 'date'\n | 'datetime-local'\n | 'email'\n | 'number'\n | 'password'\n | 'search'\n | 'tel'\n | 'text'\n | 'time'\n | 'url' = 'text';\n\n /** The name of the input, submitted as a name/value pair with form data. */\n @property() name = '';\n\n /** The current value of the input, submitted as a name/value pair with form data. */\n @property() value = '';\n\n @property({ type: Boolean }) checkNonPrintableChar: boolean = false;\n\n /** The default value of the form control. Primarily used for resetting the form control. */\n @defaultValue() defaultValue = '';\n\n /** The input's size. */\n @property({ reflect: true }) size: 'small' | 'medium' | 'large' = 'medium';\n\n /** Draws a filled input. */\n @property({ type: Boolean, reflect: true }) filled = false;\n\n /** Sets the input to a warning state, changing its visual appearance. */\n @property({ type: Boolean }) warning = false;\n\n /** Sets the input to an error state, changing its visual appearance. */\n @property({ type: Boolean }) error = false;\n\n /** Sets the input to a success state, changing its visual appearance. */\n @property({ type: Boolean }) success = false;\n\n /** Sets the input to a Destructive state, changing its visual appearance. */\n @property({ type: Boolean }) destructive = false;\n\n /** Draws a pill-style input with rounded edges. */\n @property({ type: Boolean, reflect: true }) pill = false;\n\n /** The input's label. If you need to display HTML, use the `label` slot instead. */\n @property() label = '';\n\n @property({ attribute: 'help-text', reflect: true }) helpText = '';\n\n @property({ attribute: 'error-message', reflect: true }) errorMessage = '';\n\n /** Adds a clear button when the input is not empty. */\n @property({ type: Boolean }) clearable = false;\n\n /** Disables the input. */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n /** Placeholder text to show as a hint when the input is empty. */\n @property() placeholder = '';\n\n /** Makes the input readonly. */\n @property({ type: Boolean, reflect: true }) readonly = false;\n\n /** Adds a button to toggle the password's visibility. Only applies to password types. */\n @property({ attribute: 'password-toggle', type: Boolean }) passwordToggle =\n false;\n\n /** Determines whether or not the password is currently visible. Only applies to password input types. */\n @property({ attribute: 'password-visible', type: Boolean }) passwordVisible =\n false;\n\n /** Hides the browser's built-in increment/decrement spin buttons for number inputs. */\n @property({ attribute: 'no-spin-buttons', type: Boolean }) noSpinButtons =\n false;\n\n /**\n * By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you\n * to place the form control outside of a form and associate it with the form that has this `id`. The form must be in\n * the same document or shadow root for this to work.\n */\n @property({ reflect: true }) form = '';\n\n /** Makes the input a required field. */\n @property({ type: Boolean, reflect: true }) required = false;\n\n /** A regular expression pattern to validate input against. */\n @property() pattern: string;\n\n /** The minimum length of input that will be considered valid. */\n @property({ type: Number }) minlength: number;\n\n /** The maximum length of input that will be considered valid. */\n @property({ type: Number }) maxlength: number;\n\n /** The input's minimum value. Only applies to date and number input types. */\n @property() min: number | string;\n\n /** The input's maximum value. Only applies to date and number input types. */\n @property() max: number | string;\n\n /**\n * Specifies the granularity that the value must adhere to, or the special value `any` which means no stepping is\n * implied, allowing any numeric value. Only applies to date and number input types.\n */\n @property() step: number | 'any';\n\n /** Controls whether and how text input is automatically capitalized as it is entered by the user. */\n @property() autocapitalize:\n | 'off'\n | 'none'\n | 'on'\n | 'sentences'\n | 'words'\n | 'characters';\n\n /** Indicates whether the browser's autocorrect feature is on or off. */\n @property() autocorrect: 'off' | 'on';\n\n /**\n * Specifies what permission the browser has to provide assistance in filling out form field values. Refer to\n * [this page on MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) for available values.\n */\n @property() autocomplete: string = 'off';\n\n /** Indicates that the input should receive focus on page load. */\n @property({ type: Boolean }) autofocus: boolean;\n\n /** Used to customize the label or icon of the Enter key on virtual keyboards. */\n @property() enterkeyhint:\n | 'enter'\n | 'done'\n | 'go'\n | 'next'\n | 'previous'\n | 'search'\n | 'send';\n\n /** Enables spell checking on the input. */\n @property({\n type: Boolean,\n converter: {\n // Allow \"true|false\" attribute values but keep the property boolean\n fromAttribute: value => (!value || value === 'false' ? false : true),\n toAttribute: value => (value ? 'true' : 'false'),\n },\n })\n spellcheck = true;\n\n @property({ type: Boolean, reflect: true }) canSavePassword = false;\n\n /**\n * Tells the browser what type of data will be entered by the user, allowing it to display the appropriate virtual\n * keyboard on supportive devices.\n */\n @property() inputmode:\n | 'none'\n | 'text'\n | 'decimal'\n | 'numeric'\n | 'tel'\n | 'search'\n | 'email'\n | 'url';\n\n //\n // NOTE: We use an in-memory input for these getters/setters instead of the one in the template because the properties\n // can be set before the component is rendered.\n //\n\n @state() hasPrintableCharacters: boolean = false;\n\n @state() markedValue: string;\n\n @property() noOutline: any = false;\n\n @property() noPadding: any = false;\n\n connectedCallback() {\n super.connectedCallback();\n this.emit('nile-init');\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.emit('nile-destroy');\n }\n\n /** Gets or sets the current value as a `Date` object. Returns `null` if the value can't be converted. */\n get valueAsDate() {\n const input = document.createElement('input');\n input.type = 'date';\n input.value = this.value;\n return input.valueAsDate;\n }\n\n set valueAsDate(newValue: Date | null) {\n const input = document.createElement('input');\n input.type = 'date';\n input.valueAsDate = newValue;\n this.value = input.value;\n }\n\n /** Gets or sets the current value as a number. Returns `NaN` if the value can't be converted. */\n get valueAsNumber() {\n const input = document.createElement('input');\n input.type = 'number';\n input.value = this.value;\n return input.valueAsNumber;\n }\n\n set valueAsNumber(newValue: number) {\n const input = document.createElement('input');\n input.type = 'number';\n input.valueAsNumber = newValue;\n this.value = input.value;\n }\n\n /** Gets the validity state object */\n get validity() {\n return this.input.validity;\n }\n\n /** Gets the validation message */\n get validationMessage() {\n return this.input.validationMessage;\n }\n\n firstUpdated() {\n this.emit('nile-after-init');\n this.formControlController.updateValidity();\n }\n\n private handleBlur() {\n this.hasFocus = false;\n this.emit('nile-blur', { value: this.value });\n }\n\n private handleChange() {\n this.value = this.input.value;\n this.emit('nile-change', { value: this.value });\n }\n\n private handleClearClick(event: MouseEvent) {\n this.value = '';\n this.emit('nile-clear', { value: this.value });\n this.emit('nile-input', { value: this.value });\n this.emit('nile-change', { value: this.value });\n this.input.focus();\n\n event.stopPropagation();\n }\n\n private handleFocus() {\n this.hasFocus = true;\n this.emit('nile-focus', { value: this.value });\n\n if (this.checkNonPrintableChar) {\n this.markNonPrintableCharacters();\n }\n }\n\n private handleInput() {\n this.value = this.input.value;\n this.formControlController.updateValidity();\n this.emit('nile-input', { value: this.value });\n }\n\n private handleInvalid(event: Event) {\n this.formControlController.setValidity(false);\n this.formControlController.emitInvalidEvent(event);\n }\n\n private handleKeyDown(event: KeyboardEvent) {\n const hasModifier =\n event.metaKey || event.ctrlKey || event.shiftKey || event.altKey;\n\n // Pressing enter when focused on an input should submit the form like a native input, but we wait a tick before\n // submitting to allow users to cancel the keydown event if they need to\n if (event.key === 'Enter' && !hasModifier) {\n setTimeout(() => {\n //\n // When using an Input Method Editor (IME), pressing enter will cause the form to submit unexpectedly. One way\n // to check for this is to look at event.isComposing, which will be true when the IME is open.\n //\n\n //\n if (!event.defaultPrevented && !event.isComposing) {\n this.formControlController.submit();\n }\n });\n }\n }\n\n private handlePasswordToggle() {\n this.passwordVisible = !this.passwordVisible;\n }\n\n @watch('disabled', { waitUntilFirstUpdate: true })\n handleDisabledChange() {\n // Disabled form controls are always valid\n this.formControlController.setValidity(this.disabled);\n }\n\n @watch('step', { waitUntilFirstUpdate: true })\n handleStepChange() {\n // If step changes, the value may become invalid so we need to recheck after the update. We set the new step\n // imperatively so we don't have to wait for the next render to report the updated validity.\n this.input.step = String(this.step);\n }\n\n @watch('value', { waitUntilFirstUpdate: true })\n async handleValueChange() {\n await this.updateComplete;\n\n if (this.checkNonPrintableChar) {\n this.markNonPrintableCharacters();\n }\n }\n\n /** checks non printable characters in the value. */\n markNonPrintableCharacters() {\n let markedValue = '';\n this.hasPrintableCharacters = false;\n if (this.value) {\n for (let i = 0, n = this.value.length; i < n; i++) {\n const charCode = this.value.charCodeAt(i);\n\n if (charCode > 127) {\n markedValue += `<span class=\"input__srtiked-text\">${this.value.charAt(\n i\n )}</span>`;\n this.hasPrintableCharacters = true;\n } else {\n markedValue += this.value.charAt(i);\n }\n }\n }\n\n this.markedValue = markedValue;\n this.emit('nile-value-marked', {\n value: this.markedValue,\n hasNonPrintableCharacters: this.hasPrintableCharacters,\n });\n }\n\n /** Removes all non printable characters from the value. */\n removeAllNonPrintableCharacters() {\n let cleanedValue = '';\n\n if (this.value) {\n for (let i = 0, n = this.value.length; i < n; i++) {\n const charCode = this.value.charCodeAt(i);\n\n // Consider a character printable if it's not in the specified non-printable ranges\n if (charCode < 128) {\n cleanedValue += this.value.charAt(i);\n }\n }\n }\n\n this.value = cleanedValue;\n this.emit('nile-npchar-removed', { value: this.value });\n }\n\n /** Sets focus on the input. */\n focus(options?: FocusOptions) {\n this.input.focus(options);\n }\n\n /** Removes focus from the input. */\n blur() {\n this.input.blur();\n }\n\n /** Selects all the text in the input. */\n select() {\n this.input.select();\n }\n\n /** Sets the start and end positions of the text selection (0-based). */\n setSelectionRange(\n selectionStart: number,\n selectionEnd: number,\n selectionDirection: 'forward' | 'backward' | 'none' = 'none'\n ) {\n this.input.setSelectionRange(\n selectionStart,\n selectionEnd,\n selectionDirection\n );\n }\n\n /** Replaces a range of text with a new string. */\n setRangeText(\n replacement: string,\n start?: number,\n end?: number,\n selectMode?: 'select' | 'start' | 'end' | 'preserve'\n ) {\n // @ts-expect-error - start, end, and selectMode are optional\n this.input.setRangeText(replacement, start, end, selectMode);\n\n if (this.value !== this.input.value) {\n this.value = this.input.value;\n }\n }\n\n // /** Displays the browser picker for an input element (only works if the browser supports it for the input type). */\n // showPicker() {\n // if ('showPicker' in HTMLInputElement.prototype) {\n // this.input.showPicker();\n // }\n // }\n\n /** Increments the value of a numeric input type by the value of the step attribute. */\n stepUp() {\n this.input.stepUp();\n if (this.value !== this.input.value) {\n this.value = this.input.value;\n }\n }\n\n /** Decrements the value of a numeric input type by the value of the step attribute. */\n stepDown() {\n this.input.stepDown();\n if (this.value !== this.input.value) {\n this.value = this.input.value;\n }\n }\n\n /** Checks for validity but does not show a validation message. Returns `true` when valid and `false` when invalid. */\n checkValidity() {\n return this.input.checkValidity();\n }\n\n /** Gets the associated form, if one exists. */\n getForm(): HTMLFormElement | null {\n return this.formControlController.getForm();\n }\n\n /** Checks for validity and shows the browser's validation message if the control is invalid. */\n reportValidity() {\n return this.input.reportValidity();\n }\n\n /** Sets a custom validation message. Pass an empty string to restore validity. */\n setCustomValidity(message: string) {\n this.input.setCustomValidity(message);\n this.formControlController.updateValidity();\n }\n\n render() {\n const hasLabelSlot = this.hasSlotController.test('label');\n const hasHelpTextSlot = this.hasSlotController.test('help-text');\n const hasLabel = this.label ? true : !!hasLabelSlot;\n const hasLabelSuffixSlot = this.hasSlotController.test('label-suffix');\n const hasHelpText = this.helpText ? true : false;\n const hasErrorMessage = this.errorMessage ? true : false;\n const hasClearIcon =\n this.clearable &&\n !this.disabled &&\n !this.readonly &&\n (typeof this.value === 'number' || this.value.length > 0);\n\n return html`\n <div\n part=\"form-control\"\n class=${classMap({\n 'form-control': true,\n 'form-control--small': this.size === 'small',\n 'form-control--medium': this.size === 'medium',\n 'form-control--large': this.size === 'large',\n 'form-control--has-label': hasLabel,\n 'form-control--has-help-text': hasHelpText,\n })}\n >\n <label\n part=\"form-control-label\"\n class=\"form-control__label\"\n for=\"input\"\n aria-hidden=${hasLabel ? 'false' : 'true'}\n >\n <slot name=\"label\">${this.label}</slot>\n </label>\n\n ${hasLabelSuffixSlot ? html` <slot name=\"label-suffix\"></slot> ` : ``}\n\n <div part=\"form-control-input\" class=\"form-control-input\">\n <nile-popup ?active=${this.hasPrintableCharacters}\n placement=\"bottom-start\"\n distance=\"5\"\n exportparts=\"input\"\n strategy=\"fixed\"\n >\n <div\n slot=\"anchor\"\n part=\"base\"\n class=${classMap({\n input: true,\n\n // Sizes\n 'input--small': this.size === 'small',\n 'input--medium': this.size === 'medium',\n 'input--large': this.size === 'large',\n\n // States\n 'input--pill': this.pill,\n 'input--standard': !this.filled,\n 'input--warning': this.warning,\n 'input--error': this.error,\n 'input--success': this.success,\n 'input--destructive': this.destructive,\n 'input--filled': this.filled,\n 'input--disabled': this.disabled,\n 'input--focused': this.hasFocus,\n 'input--empty': !this.value,\n 'input--no-spin-buttons': this.noSpinButtons,\n })}\n >\n <slot name=\"prefix\" part=\"prefix\" class=\"input__prefix\"></slot>\n <input\n part=\"input\"\n id=\"input\"\n class=\"input__control ${\n this.type === 'password' && !this.passwordVisible\n ? 'input__password'\n : ''\n }\"\n type=${this.type === 'password' && !this.canSavePassword ? 'text' : this.type}\n title=${\n this\n .title /* An empty title prevents browser validation tooltips from appearing on hover */\n }\n name=${ifDefined(this.name)}\n ?disabled=${this.disabled}\n ?readonly=${this.readonly}\n ?required=${this.required}\n placeholder=${ifDefined(this.placeholder)}\n minlength=${ifDefined(this.minlength)}\n maxlength=${ifDefined(this.maxlength)}\n min=${ifDefined(this.min)}\n max=${ifDefined(this.max)}\n step=${ifDefined(this.step as number)}\n .value=${live(this.value)}\n autocapitalize=${ifDefined(this.autocapitalize)}\n autocomplete=${ifDefined(this.autocomplete as any)}\n autocorrect=${ifDefined(this.autocorrect)}\n ?autofocus=${this.autofocus}\n spellcheck=${this.spellcheck}\n pattern=${ifDefined(this.pattern)}\n enterkeyhint=${ifDefined(this.enterkeyhint)}\n inputmode=${ifDefined(this.inputmode)}\n aria-describedby=\"help-text\"\n @change=${this.handleChange}\n @input=${this.handleInput}\n @invalid=${this.handleInvalid}\n @keydown=${this.handleKeyDown}\n @focus=${this.handleFocus}\n @blur=${this.handleBlur}\n />\n\n ${\n hasClearIcon\n ? html`\n <button\n part=\"clear-button\"\n class=\"input__clear\"\n type=\"button\"\n aria-label=\"clearEntry\"\n @click=${this.handleClearClick}\n tabindex=\"-1\"\n >\n <slot name=\"clear-icon\">\n <nile-icon name=\"var(--nile-icon-error, var(--ng-icon-x-circle))\" method=\"var(--nile-svg-method-fill, var(--ng-svg-method-stroke))\" library=\"system\"></nile-icon>\n </slot>\n </button>\n `\n : ''\n }\n ${\n this.passwordToggle && !this.disabled\n ? html`\n <button\n part=\"password-toggle-button\"\n class=\"input__password-toggle\"\n type=\"button\"\n aria-label=${this.passwordVisible\n ? 'hidePassword'\n : 'showPassword'}\n @click=${this.handlePasswordToggle}\n tabindex=\"-1\"\n >\n ${this.passwordVisible\n ? html`\n <slot name=\"show-password-icon\">\n <nile-icon\n name=\"var(--nile-icon-eye, var(--ng-icon-eye))\"\n method=\"var(--nile-svg-method-fill, var(--ng-svg-method-stroke))\"\n library=\"system\"\n ></nile-icon>\n </slot>\n `\n : html`\n <slot name=\"hide-password-icon\">\n <nile-icon\n name=\"var(--nile-icon-eye, var(--ng-icon-eye))\"\n method=\"var(--nile-svg-method-fill, var(--ng-svg-method-stroke))\"\n library=\"system\"\n ></nile-icon>\n </slot>\n `}\n </button>\n `\n : ''\n }\n\n <slot name=\"suffix\" part=\"suffix\" class=\"input__suffix\"></slot>\n </div>\n\n <div class=\"input__non-printable\">\n Non-printable character detected.\n <nile-badge variant=\"error\" @click=${\n this.removeAllNonPrintableCharacters\n } class=\"input__remove-non-printable\" >\n Remove All\n </nile-badge>\n\n <div class=\"input__srtiked-text-container\"> ${unsafeHTML(\n this.markedValue\n )} </div>\n\n </div>\n </nile-popup>\n </div>\n\n ${\n hasHelpText\n ? html`\n <nile-form-help-text>${this.helpText}</nile-form-help-text>\n `\n : ``\n }\n\n ${\n hasErrorMessage\n ? html`\n <nile-form-error-message\n >${this.errorMessage}</nile-form-error-message\n >\n `\n : ``\n }\n </div>\n </div>\n `;\n }\n}\n\nexport default NileInput;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-input': NileInput;\n }\n}\n"]}
|