@ember-eui/core 12.0.0 → 12.0.2
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/declarations/components/common.d.ts +1 -1
- package/declarations/components/common.d.ts.map +1 -1
- package/declarations/components/eui-accordion.d.ts.map +1 -1
- package/declarations/components/eui-badge.d.ts.map +1 -1
- package/declarations/components/eui-button-group-button.d.ts.map +1 -1
- package/declarations/components/eui-combo-box/options.d.ts.map +1 -1
- package/declarations/components/eui-combo-box/trigger/input.d.ts.map +1 -1
- package/declarations/components/eui-combo-box.d.ts +2 -1
- package/declarations/components/eui-combo-box.d.ts.map +1 -1
- package/declarations/components/eui-described-form-group.d.ts +2 -0
- package/declarations/components/eui-described-form-group.d.ts.map +1 -1
- package/declarations/components/eui-dual-range.d.ts.map +1 -1
- package/declarations/components/eui-header-section-item-button.d.ts.map +1 -1
- package/declarations/components/eui-list-group-item.d.ts.map +1 -1
- package/declarations/components/eui-loading-content.d.ts.map +1 -1
- package/declarations/components/eui-markdown-editor.d.ts.map +1 -1
- package/declarations/components/eui-markdown-format.d.ts.map +1 -1
- package/declarations/components/eui-notification-event-messages.d.ts.map +1 -1
- package/declarations/components/eui-page-header-content.d.ts.map +1 -1
- package/declarations/components/eui-popover.d.ts.map +1 -1
- package/declarations/components/eui-range.d.ts.map +1 -1
- package/declarations/components/eui-super-date-picker/utils/date-utils.d.ts +1 -0
- package/declarations/components/eui-super-date-picker/utils/date-utils.d.ts.map +1 -1
- package/declarations/components/eui-super-date-picker/utils/index.d.ts +1 -0
- package/declarations/components/eui-super-date-picker/utils/index.d.ts.map +1 -1
- package/declarations/components/eui-super-date-picker/utils/pretty-duration.d.ts +1 -0
- package/declarations/components/eui-super-date-picker/utils/pretty-duration.d.ts.map +1 -1
- package/declarations/components/eui-super-date-picker/utils/quick-select.d.ts +1 -0
- package/declarations/components/eui-super-date-picker/utils/quick-select.d.ts.map +1 -1
- package/declarations/components/eui-super-date-picker/utils/time-options.d.ts +1 -0
- package/declarations/components/eui-super-date-picker/utils/time-options.d.ts.map +1 -1
- package/declarations/components/eui-tabbed-content.d.ts.map +1 -1
- package/declarations/utils/common.d.ts +42 -0
- package/declarations/utils/common.d.ts.map +1 -0
- package/dist/_rollupPluginBabelHelpers-9wjJaosZ.js +63 -0
- package/dist/_rollupPluginBabelHelpers-9wjJaosZ.js.map +1 -0
- package/dist/components/common.js +1 -19
- package/dist/components/common.js.map +1 -1
- package/dist/components/eui-accordion.js +9 -9
- package/dist/components/eui-accordion.js.map +1 -1
- package/dist/components/eui-auto-sizer.js +2 -2
- package/dist/components/eui-auto-sizer.js.map +1 -1
- package/dist/components/eui-badge.js +1 -1
- package/dist/components/eui-badge.js.map +1 -1
- package/dist/components/eui-bottom-bar.js +1 -1
- package/dist/components/eui-bottom-bar.js.map +1 -1
- package/dist/components/eui-breadcrumbs.js +2 -2
- package/dist/components/eui-breadcrumbs.js.map +1 -1
- package/dist/components/eui-button-group-button.js +7 -3
- package/dist/components/eui-button-group-button.js.map +1 -1
- package/dist/components/eui-card-select.js +1 -1
- package/dist/components/eui-card-select.js.map +1 -1
- package/dist/components/eui-card.js +2 -2
- package/dist/components/eui-card.js.map +1 -1
- package/dist/components/eui-checkbox.js +1 -1
- package/dist/components/eui-checkbox.js.map +1 -1
- package/dist/components/eui-code-block.js +7 -7
- package/dist/components/eui-code-block.js.map +1 -1
- package/dist/components/eui-code.js +2 -2
- package/dist/components/eui-code.js.map +1 -1
- package/dist/components/eui-collapsible-nav.js +1 -1
- package/dist/components/eui-collapsible-nav.js.map +1 -1
- package/dist/components/eui-combo-box/create-option.js +1 -1
- package/dist/components/eui-combo-box/create-option.js.map +1 -1
- package/dist/components/eui-combo-box/options.js +4 -20
- package/dist/components/eui-combo-box/options.js.map +1 -1
- package/dist/components/eui-combo-box/trigger/input.js +2 -4
- package/dist/components/eui-combo-box/trigger/input.js.map +1 -1
- package/dist/components/eui-combo-box/trigger.js +2 -2
- package/dist/components/eui-combo-box/trigger.js.map +1 -1
- package/dist/components/eui-combo-box-pill.js +1 -1
- package/dist/components/eui-combo-box-pill.js.map +1 -1
- package/dist/components/eui-combo-box.js +10 -11
- package/dist/components/eui-combo-box.js.map +1 -1
- package/dist/components/eui-context-menu-item.js +1 -1
- package/dist/components/eui-context-menu-item.js.map +1 -1
- package/dist/components/eui-copy.js +1 -1
- package/dist/components/eui-copy.js.map +1 -1
- package/dist/components/eui-described-form-group.js +1 -1
- package/dist/components/eui-described-form-group.js.map +1 -1
- package/dist/components/eui-dual-range.js +17 -17
- package/dist/components/eui-dual-range.js.map +1 -1
- package/dist/components/eui-field-number.js +1 -1
- package/dist/components/eui-field-number.js.map +1 -1
- package/dist/components/eui-field-password.js +1 -1
- package/dist/components/eui-field-password.js.map +1 -1
- package/dist/components/eui-field-search.js +3 -3
- package/dist/components/eui-field-search.js.map +1 -1
- package/dist/components/eui-field-text.js +1 -1
- package/dist/components/eui-field-text.js.map +1 -1
- package/dist/components/eui-file-picker.js +6 -6
- package/dist/components/eui-file-picker.js.map +1 -1
- package/dist/components/eui-flyout.js +2 -2
- package/dist/components/eui-flyout.js.map +1 -1
- package/dist/components/eui-global-toast-list.js +4 -4
- package/dist/components/eui-global-toast-list.js.map +1 -1
- package/dist/components/eui-header-links.js +1 -1
- package/dist/components/eui-header-links.js.map +1 -1
- package/dist/components/eui-header-section-item-button.js +3 -3
- package/dist/components/eui-header-section-item-button.js.map +1 -1
- package/dist/components/eui-i18n.js +1 -1
- package/dist/components/eui-i18n.js.map +1 -1
- package/dist/components/eui-icon.js +2 -2
- package/dist/components/eui-icon.js.map +1 -1
- package/dist/components/eui-image.js +2 -2
- package/dist/components/eui-image.js.map +1 -1
- package/dist/components/eui-inner-text.js +2 -2
- package/dist/components/eui-inner-text.js.map +1 -1
- package/dist/components/eui-input-popover.js +9 -9
- package/dist/components/eui-input-popover.js.map +1 -1
- package/dist/components/eui-list-group-item.js +1 -4
- package/dist/components/eui-list-group-item.js.map +1 -1
- package/dist/components/eui-loading-content.js +17 -5
- package/dist/components/eui-loading-content.js.map +1 -1
- package/dist/components/eui-markdown-editor-footer.js +2 -2
- package/dist/components/eui-markdown-editor-footer.js.map +1 -1
- package/dist/components/eui-markdown-editor.js +16 -16
- package/dist/components/eui-markdown-editor.js.map +1 -1
- package/dist/components/eui-markdown-format.js +1 -1
- package/dist/components/eui-markdown-format.js.map +1 -1
- package/dist/components/eui-modal.js +1 -1
- package/dist/components/eui-modal.js.map +1 -1
- package/dist/components/eui-notification-event-messages.js +4 -2
- package/dist/components/eui-notification-event-messages.js.map +1 -1
- package/dist/components/eui-notification-event-meta.js +2 -2
- package/dist/components/eui-notification-event-meta.js.map +1 -1
- package/dist/components/eui-notification-event.js +1 -1
- package/dist/components/eui-notification-event.js.map +1 -1
- package/dist/components/eui-overlay-mask.js +1 -1
- package/dist/components/eui-overlay-mask.js.map +1 -1
- package/dist/components/eui-page-header-content.js +4 -4
- package/dist/components/eui-page-header-content.js.map +1 -1
- package/dist/components/eui-page-template.js +3 -3
- package/dist/components/eui-page-template.js.map +1 -1
- package/dist/components/eui-popover.js +22 -22
- package/dist/components/eui-popover.js.map +1 -1
- package/dist/components/eui-portal.js +1 -1
- package/dist/components/eui-portal.js.map +1 -1
- package/dist/components/eui-radio.js +1 -1
- package/dist/components/eui-radio.js.map +1 -1
- package/dist/components/eui-range-ticks.js +1 -1
- package/dist/components/eui-range-ticks.js.map +1 -1
- package/dist/components/eui-range-track.js +1 -1
- package/dist/components/eui-range-track.js.map +1 -1
- package/dist/components/eui-range.js +15 -15
- package/dist/components/eui-range.js.map +1 -1
- package/dist/components/eui-select.js +1 -1
- package/dist/components/eui-select.js.map +1 -1
- package/dist/components/eui-show-for.js +1 -1
- package/dist/components/eui-show-for.js.map +1 -1
- package/dist/components/eui-side-nav-item.js +1 -1
- package/dist/components/eui-side-nav-item.js.map +1 -1
- package/dist/components/eui-side-nav.js +1 -1
- package/dist/components/eui-side-nav.js.map +1 -1
- package/dist/components/eui-step-horizontal.js +1 -1
- package/dist/components/eui-step-horizontal.js.map +1 -1
- package/dist/components/eui-super-date-picker/date-popover/absolute-tab.js +3 -3
- package/dist/components/eui-super-date-picker/date-popover/absolute-tab.js.map +1 -1
- package/dist/components/eui-super-date-picker/date-popover/datetime-picker.js +8 -8
- package/dist/components/eui-super-date-picker/date-popover/datetime-picker.js.map +1 -1
- package/dist/components/eui-super-date-picker/date-popover/eui-date-popover-button.js +2 -2
- package/dist/components/eui-super-date-picker/date-popover/eui-date-popover-button.js.map +1 -1
- package/dist/components/eui-super-date-picker/date-popover/eui-date-popover-content.js +2 -2
- package/dist/components/eui-super-date-picker/date-popover/eui-date-popover-content.js.map +1 -1
- package/dist/components/eui-super-date-picker/date-popover/relative-tab.js +4 -4
- package/dist/components/eui-super-date-picker/date-popover/relative-tab.js.map +1 -1
- package/dist/components/eui-super-date-picker/eui-quick-select-popover/eui-quick-select.js +4 -4
- package/dist/components/eui-super-date-picker/eui-quick-select-popover/eui-quick-select.js.map +1 -1
- package/dist/components/eui-super-date-picker/eui-quick-select-popover.js +2 -2
- package/dist/components/eui-super-date-picker/eui-quick-select-popover.js.map +1 -1
- package/dist/components/eui-super-date-picker/utils/date-utils.js +1 -1
- package/dist/components/eui-super-date-picker/utils/date-utils.js.map +1 -1
- package/dist/components/eui-super-date-picker/utils/index.js +1 -1
- package/dist/components/eui-super-date-picker/utils/index.js.map +1 -1
- package/dist/components/eui-super-date-picker/utils/pretty-duration.js +1 -1
- package/dist/components/eui-super-date-picker/utils/pretty-duration.js.map +1 -1
- package/dist/components/eui-super-date-picker/utils/quick-select.js +1 -1
- package/dist/components/eui-super-date-picker/utils/quick-select.js.map +1 -1
- package/dist/components/eui-super-date-picker/utils/time-options.js +1 -1
- package/dist/components/eui-super-date-picker/utils/time-options.js.map +1 -1
- package/dist/components/eui-super-date-picker.js +13 -13
- package/dist/components/eui-super-date-picker.js.map +1 -1
- package/dist/components/eui-tabbed-content.js +4 -4
- package/dist/components/eui-tabbed-content.js.map +1 -1
- package/dist/components/eui-text-area.js +1 -1
- package/dist/components/eui-text-area.js.map +1 -1
- package/dist/components/eui-tool-tip.js +9 -9
- package/dist/components/eui-tool-tip.js.map +1 -1
- package/dist/helpers/get-eui-config.js +1 -1
- package/dist/helpers/get-eui-config.js.map +1 -1
- package/dist/helpers/use-state.js +1 -1
- package/dist/helpers/use-state.js.map +1 -1
- package/dist/services/eui-config.js +1 -1
- package/dist/services/eui-config.js.map +1 -1
- package/dist/services/eui-toaster.js +1 -1
- package/dist/services/eui-toaster.js.map +1 -1
- package/package.json +8 -122
- package/dist/_app_/utils/accesibility/accessible-click-keys.js +0 -1
- package/dist/_app_/utils/accesibility/cascading-menu-keys.js +0 -1
- package/dist/_app_/utils/accesibility/combo-box-keys.js +0 -1
- package/dist/_app_/utils/accesibility/index.js +0 -1
- package/dist/_app_/utils/breakpoint.js +0 -1
- package/dist/_app_/utils/browser/browser.js +0 -1
- package/dist/_app_/utils/browser/index.js +0 -1
- package/dist/_app_/utils/code/utils.js +0 -1
- package/dist/_app_/utils/color/color_palette.js +0 -1
- package/dist/_app_/utils/color/eui_palettes.js +0 -1
- package/dist/_app_/utils/color/index.js +0 -1
- package/dist/_app_/utils/copy-to-clipboard.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-accordion.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-avatar.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-badge-group.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-badge.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-beta-badge.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-bottom-bar.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-button-empty.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-button-group-button.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-button-group.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-button-icon.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-button.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-call-out.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-card-select.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-card.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-code-block.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-collapsible-nav-group.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-comment-event.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-comment-timeline-icon.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-context-menu-item.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-described-form-group.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-description-list.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-empty-prompt.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-file-picker.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-flex-grid.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-flex-group.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-flex-item.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-flyout.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-form-control-layout-clear-button.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-form-row.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-global-toast-list.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-header-links.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-header-section-item.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-header-section.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-header.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-health.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-horizontal-rule.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-icon.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-image.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-link.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-list-group-item.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-list-group.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-loading-spinner.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-modal.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-notification-badge.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-page-body.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-page-content-body.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-page-content.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-page-header.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-page-side-bar.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-page.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-panel.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-popover-footer.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-popover-title.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-popover.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-progress-data.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-progress.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-range-highlight.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-range-input.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-range-levels.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-selectable-list-item.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-spacer.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-stat.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-step-number.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-tabs.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-text-align.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-text-area.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-text-color.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-text.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-title.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-toast.js +0 -1
- package/dist/_app_/utils/css-mappings/eui-tool-tip.js +0 -1
- package/dist/_app_/utils/css-mappings/index.js +0 -1
- package/dist/_app_/utils/detect-element-resize.js +0 -1
- package/dist/_app_/utils/index.js +0 -1
- package/dist/_app_/utils/keys.js +0 -1
- package/dist/_app_/utils/markdown/markdown-actions.js +0 -1
- package/dist/_app_/utils/markdown/markdown-modes.js +0 -1
- package/dist/_app_/utils/markdown/markdown-types.js +0 -1
- package/dist/_app_/utils/markdown/plugins/markdown-add-components/index.js +0 -1
- package/dist/_app_/utils/markdown/plugins/markdown-add-components/processor.js +0 -1
- package/dist/_app_/utils/markdown/plugins/markdown-checkbox/index.js +0 -1
- package/dist/_app_/utils/markdown/plugins/markdown-checkbox/parser.js +0 -1
- package/dist/_app_/utils/markdown/plugins/markdown-default-plugins/index.js +0 -1
- package/dist/_app_/utils/markdown/plugins/markdown-default-plugins/parsing-plugins.js +0 -1
- package/dist/_app_/utils/markdown/plugins/markdown-default-plugins/plugins.js +0 -1
- package/dist/_app_/utils/markdown/plugins/markdown-default-plugins/processing-plugins.js +0 -1
- package/dist/_app_/utils/markdown/plugins/markdown-default-plugins/ui-plugins.js +0 -1
- package/dist/_app_/utils/markdown/plugins/markdown-tooltip/index.js +0 -1
- package/dist/_app_/utils/markdown/plugins/markdown-tooltip/parser.js +0 -1
- package/dist/_app_/utils/markdown/plugins/markdown-tooltip/plugin.js +0 -1
- package/dist/_app_/utils/markdown/plugins/to-dom.js +0 -1
- package/dist/_app_/utils/markdown/remark/remark-prismjs.js +0 -1
- package/dist/_app_/utils/maybe-unwrap-proxy.js +0 -1
- package/dist/_app_/utils/number/index.js +0 -1
- package/dist/_app_/utils/number/number.js +0 -1
- package/dist/_app_/utils/popover/index.js +0 -1
- package/dist/_app_/utils/popover/types.js +0 -1
- package/dist/_app_/utils/predicate/common_predicates.js +0 -1
- package/dist/_app_/utils/predicate/index.js +0 -1
- package/dist/_app_/utils/predicate/lodash_predicates.js +0 -1
- package/dist/_app_/utils/range/index.js +0 -1
- package/dist/_app_/utils/timer.js +0 -1
- package/dist/_app_/utils/transition.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eui-range.js","sources":["../../src/components/eui-range.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { fn } from '@ember/helper';\nimport { on } from '@ember/modifier';\nimport { action } from '@ember/object';\nimport { guidFor } from '@ember/object/internals';\nimport { later } from '@ember/runloop';\n\nimport optional from 'ember-composable-helpers/helpers/optional';\nimport { and, eq, not } from 'ember-truth-helpers';\n\nimport argOrDefault, { argOrDefaultDecorator } from '../helpers/arg-or-default.ts';\nimport castTo from '../helpers/cast-to.ts';\nimport classNames from '../helpers/class-names.ts';\nimport { isWithinRange } from '../utils/number/index.ts';\nimport EuiInputPopover from './eui-input-popover.gts';\nimport EuiRangeHighlight from './eui-range-highlight.gts';\nimport EuiRangeInput from './eui-range-input.gts';\nimport EuiRangeLabel from './eui-range-label.gts';\nimport EuiRangeSlider from './eui-range-slider.gts';\nimport EuiRangeTooltip from './eui-range-tooltip.gts';\nimport EuiRangeTrack from './eui-range-track.gts';\nimport EuiRangeWrapper from './eui-range-wrapper.gts';\n\nimport type { EuiRangeLevel } from './eui-range-levels';\nimport type { EuiRangeTick } from './eui-range-ticks';\n\nexport interface EuiRangeArgs {\n compressed?: boolean;\n readOnly?: boolean;\n fullWidth?: boolean;\n id: string;\n /**\n * Create colored indicators for certain intervals\n */\n levels?: EuiRangeLevel[];\n step?: number;\n /**\n * Pass `true` to displays an extra input control for direct manipulation.\n * Pass `'inputWithPopover'` to only show the input but show the range in a dropdown.\n */\n showInput?: boolean | 'inputWithPopover';\n /**\n * Shows static min/max labels on the sides of the range slider\n */\n showLabels?: boolean;\n /**\n * Shows a thick line from min to value\n */\n showRange?: boolean;\n /**\n * Shows clickable tick marks and labels at the given interval (`step`/`tickInterval`)\n */\n showTicks?: boolean;\n\n min?: number;\n max?: number;\n /**\n * Shows a tooltip styled value\n */\n showValue?: boolean;\n /**\n * Specified ticks at specified values\n */\n ticks: EuiRangeTick[];\n /**\n * Modifies the number of tick marks and at what interval\n */\n tickInterval?: number;\n /**\n * Appends to the tooltip\n */\n valueAppend?: any;\n /**\n * Prepends to the tooltip\n */\n valuePrepend?: any;\n\n onChange?: (event: Event, isValid: boolean) => void;\n onBlur?: (event: Event) => void;\n onFocus?: (event: Event) => void;\n\n value?: number;\n\n disabled?: boolean;\n\n isPrependProvided?: boolean;\n isAppendProvided?: boolean;\n isFakeMaxBlock?: boolean;\n isFakeMinBlock?: boolean;\n isFakeValueBlock?: boolean;\n isFakeValueAppendBlock?: boolean;\n isFakeValuePrependBlock?: boolean;\n isInvalid?: boolean;\n name?: string;\n isLoading?: boolean;\n}\n\nexport interface EuiRangeSignature {\n Element: HTMLInputElement;\n Args: EuiRangeArgs;\n Blocks: {\n min: [min: number];\n max: [max: number];\n value: [];\n valueAppend: [];\n valuePrepend: [];\n prepend: [classes: string];\n append: [classes: string];\n input: [];\n content: [];\n };\n}\n\nexport default class EuiRangeComponent extends Component<EuiRangeSignature> {\n // Defaults\n @argOrDefaultDecorator(0) min!: number;\n @argOrDefaultDecorator(100) max!: number;\n @argOrDefaultDecorator(1) step!: number;\n @argOrDefaultDecorator(false) fullWidth!: boolean;\n @argOrDefaultDecorator(false) compressed!: boolean;\n @argOrDefaultDecorator(false) isLoading!: boolean;\n @argOrDefaultDecorator(false) showLabels!: boolean;\n @argOrDefaultDecorator(false) showInput!: boolean | string;\n @argOrDefaultDecorator(false) showRange!: boolean;\n @argOrDefaultDecorator(false) showTicks!: boolean;\n @argOrDefaultDecorator(false) showValue!: boolean;\n @argOrDefaultDecorator([]) levels!: EuiRangeLevel[];\n\n preventPopoverClose = false;\n\n //State\n @tracked id: string = this.args.id || guidFor({});\n @tracked isPopoverOpen = false;\n ///\n\n @action\n handleOnChange(e: Event): void {\n const isValid = isWithinRange(\n this.min,\n this.max,\n (e.currentTarget as HTMLInputElement).value\n );\n\n if (this.args.onChange) {\n this.args.onChange(e, isValid);\n }\n }\n\n get isValid(): boolean {\n return isWithinRange(this.min, this.max, this.args.value || '');\n }\n\n get digitTolerance(): number {\n return Math.max(String(this.min).length, String(this.max).length);\n }\n\n get showInputOnly(): boolean {\n return this.showInput === 'inputWithPopover';\n }\n\n get canShowDropdown(): boolean {\n return this.showInputOnly && !this.args.readOnly && !this.args.disabled;\n }\n\n get showRangeTooltip(): boolean {\n return (\n this.showValue &&\n !!String(this.args.value).length &&\n this.args.value !== undefined\n );\n }\n\n @action\n onInputFocus(e: Event): void {\n if (this.args.onFocus) {\n this.args.onFocus(e);\n }\n\n this.isPopoverOpen = true;\n }\n\n @action\n onInputBlur(e: Event): void {\n later(\n this,\n () => {\n // Safari does not recognize any focus-related eventing for input[type=range]\n // making it impossible to capture its state using active/focus/relatedTarget\n // Instead, a prevention flag is set on mousedown, with a waiting period here.\n // Mousedown is viable because in the popover case, it is inaccessible via keyboard (intentionally)\n if (this.preventPopoverClose) {\n this.preventPopoverClose = false;\n\n return;\n }\n\n if (this.args.onBlur) {\n this.args.onBlur(e);\n }\n\n this.closePopover();\n },\n 200\n );\n }\n\n @action\n setPreventPopover(val: boolean): void {\n this.preventPopoverClose = val;\n }\n\n @action\n closePopover(): void {\n this.preventPopoverClose = false;\n this.isPopoverOpen = false;\n }\n\n @action\n setPreventPopoverClose(bool: boolean): void {\n this.preventPopoverClose = bool;\n }\n\n <template>\n {{#let\n (and (argOrDefault @isPrependProvided true) (has-block \"prepend\"))\n (and (argOrDefault @isAppendProvided true) (has-block \"append\"))\n (and (not (argOrDefault @isFakeMaxBlock false)) (has-block \"max\"))\n (and (not (argOrDefault @isFakeMinBlock false)) (has-block \"min\"))\n (and (not (argOrDefault @isFakeValueBlock false)) (has-block \"value\"))\n (and\n (not (argOrDefault @isFakeValueAppendBlock false))\n (has-block \"valueAppend\")\n )\n (and\n (not (argOrDefault @isFakeValuePrependBlock false))\n (has-block \"valuePrepend\")\n )\n as |hasPrepend hasAppend hasMaxBlock hasMinBlock hasValueBlock hasValueAppendBlock hasValuePrependBlock|\n }}\n {{#if this.showInputOnly}}\n <EuiInputPopover\n class=\"euiRange__popover\"\n @fullWidth={{@fullWidth}}\n @isOpen={{this.isPopoverOpen}}\n @closePopover={{this.closePopover}}\n @disableFocusTrap={{true}}\n >\n <:input>\n <EuiRangeInput\n id={{this.id}}\n @min={{this.min}}\n @max={{this.max}}\n @digitTolerance={{this.digitTolerance}}\n @readOnly={{@readOnly}}\n @step={{this.step}}\n @value={{@value}}\n @disabled={{@disabled}}\n @compressed={{@compressed}}\n @name={{@name}}\n @fullWidth={{and this.showInputOnly this.fullWidth}}\n @isLoading={{and this.showInputOnly @isLoading}}\n @isInvalid={{@isInvalid}}\n @autoSize={{not this.showInputOnly}}\n @isPrependProvided={{hasPrepend}}\n @isAppendProvided={{hasAppend}}\n ...attributes\n {{on\n \"focus\"\n (if this.canShowDropdown this.onInputFocus (optional @onFocus))\n }}\n {{on\n \"blur\"\n (if this.canShowDropdown this.onInputBlur (optional @onBlur))\n }}\n {{on \"input\" this.handleOnChange}}\n >\n <:prepend as |classes|>\n {{yield classes to=\"prepend\"}}\n </:prepend>\n <:append as |classes|>\n {{yield classes to=\"append\"}}\n </:append>\n </EuiRangeInput>\n </:input>\n <:content>\n <EuiRangeWrapper\n class={{classNames\n \"euiRange\"\n (if this.showInput \"euiRange--hasInput\")\n }}\n @fullWidth={{@fullWidth}}\n @compressed={{@compressed}}\n >\n {{#if this.showLabels}}\n <EuiRangeLabel @side=\"min\" @disabled={{@disabled}}>\n {{#if hasMinBlock}}\n {{yield this.min to=\"min\"}}\n {{else}}\n {{this.min}}\n {{/if}}\n </EuiRangeLabel>\n {{/if}}\n <EuiRangeTrack\n aria-hidden={{eq this.showInput true}}\n @disabled={{@disabled}}\n @compressed={{@compressed}}\n @max={{this.max}}\n @min={{this.min}}\n @step={{this.step}}\n @showTicks={{this.showTicks}}\n @tickInterval={{@tickInterval}}\n @ticks={{@ticks}}\n @levels={{this.levels}}\n @onChange={{this.handleOnChange}}\n @value={{@value}}\n >\n {{#if (and this.showRange this.isValid)}}\n <EuiRangeHighlight\n @compressed={{@compressed}}\n @showTicks={{this.showTicks}}\n {{!@glint-expect-error}}\n @min={{castTo this.min to=\"number\"}}\n {{!@glint-expect-error}}\n @max={{castTo this.max to=\"number\"}}\n {{!@glint-expect-error}}\n @lowerValue={{castTo this.min to=\"number\"}}\n {{!@glint-expect-error}}\n @upperValue={{castTo @value to=\"number\"}}\n />\n {{/if}}\n <EuiRangeSlider\n aria-hidden={{if (eq this.showInput true) true false}}\n tabindex={{if (eq this.showInput true) \"-1\"}}\n @id={{if this.showInput undefined this.id}}\n @name={{@name}}\n @min={{this.min}}\n @max={{this.max}}\n @step={{this.step}}\n @value={{@value}}\n @disabled={{@disabled}}\n @compressed={{@compressed}}\n @showTicks={{this.showTicks}}\n @showRange={{this.showRange}}\n ...attributes\n {{on\n \"mousedown\"\n (if\n this.showInputOnly\n (fn this.setPreventPopoverClose true)\n (optional)\n )\n }}\n {{on\n \"focus\"\n (if (eq this.showInput true) (optional) (optional @onFocus))\n }}\n {{on\n \"blur\"\n (if this.showInputOnly this.onInputBlur (optional @onBlur))\n }}\n {{on \"input\" this.handleOnChange}}\n />\n {{#if this.showRangeTooltip}}\n <EuiRangeTooltip\n @compressed={{@compressed}}\n @value={{@value}}\n @max={{this.max}}\n @min={{this.min}}\n @name={{@name}}\n @showTicks={{this.showTicks}}\n >\n <:valuePrepend>\n {{#if hasValuePrependBlock}}\n {{yield to=\"valuePrepend\"}}\n {{else}}\n {{@valuePrepend}}\n {{/if}}\n </:valuePrepend>\n <:value>\n {{#if hasValueBlock}}\n {{yield to=\"value\"}}\n {{else}}\n {{@value}}\n {{/if}}\n </:value>\n <:valueAppend>\n {{#if hasValueAppendBlock}}\n {{yield to=\"valueAppend\"}}\n {{else}}\n {{@valueAppend}}\n {{/if}}\n </:valueAppend>\n </EuiRangeTooltip>\n {{/if}}\n </EuiRangeTrack>\n {{#if this.showLabels}}\n <EuiRangeLabel @side=\"max\" @disabled={{@disabled}}>\n {{#if hasMaxBlock}}\n {{yield this.max to=\"max\"}}\n {{else}}\n {{this.max}}\n {{/if}}\n </EuiRangeLabel>\n {{/if}}\n {{#if (and this.showInput (not this.showInputOnly))}}\n <div class=\"euiRange__horizontalSpacer\"></div>\n {{#if this.showInput}}\n <EuiRangeInput\n id={{this.id}}\n @min={{this.min}}\n @max={{this.max}}\n @digitTolerance={{this.digitTolerance}}\n @readOnly={{@readOnly}}\n @step={{this.step}}\n @value={{@value}}\n @disabled={{@disabled}}\n @compressed={{@compressed}}\n @name={{@name}}\n @fullWidth={{and this.showInputOnly this.fullWidth}}\n @isLoading={{and this.showInputOnly @isLoading}}\n @isInvalid={{@isInvalid}}\n @autoSize={{not this.showInputOnly}}\n @isPrependProvided={{hasPrepend}}\n @isAppendProvided={{hasAppend}}\n ...attributes\n {{on\n \"focus\"\n (if\n this.canShowDropdown\n this.onInputFocus\n (optional @onFocus)\n )\n }}\n {{on\n \"blur\"\n (if\n this.canShowDropdown this.onInputBlur (optional @onBlur)\n )\n }}\n {{on \"input\" this.handleOnChange}}\n >\n <:prepend as |classes|>\n {{yield classes to=\"prepend\"}}\n </:prepend>\n <:append as |classes|>\n {{yield classes to=\"append\"}}\n </:append>\n </EuiRangeInput>\n {{/if}}\n {{/if}}\n </EuiRangeWrapper>\n </:content>\n </EuiInputPopover>\n {{else}}\n <EuiRangeWrapper\n class={{classNames\n \"euiRange\"\n (if this.showInput \"euiRange--hasInput\")\n }}\n @fullWidth={{@fullWidth}}\n @compressed={{@compressed}}\n >\n {{#if this.showLabels}}\n <EuiRangeLabel @side=\"min\" @disabled={{@disabled}}>\n {{#if hasMinBlock}}\n {{yield this.min to=\"min\"}}\n {{else}}\n {{this.min}}\n {{/if}}\n </EuiRangeLabel>\n {{/if}}\n <EuiRangeTrack\n aria-hidden={{eq this.showInput true}}\n @disabled={{@disabled}}\n @compressed={{@compressed}}\n @max={{this.max}}\n @min={{this.min}}\n @step={{this.step}}\n @showTicks={{this.showTicks}}\n @tickInterval={{@tickInterval}}\n @ticks={{@ticks}}\n @levels={{this.levels}}\n @onChange={{this.handleOnChange}}\n @value={{@value}}\n >\n {{#if (and this.showRange this.isValid)}}\n <EuiRangeHighlight\n @compressed={{@compressed}}\n @showTicks={{this.showTicks}}\n {{!@glint-expect-error}}\n @min={{castTo this.min to=\"number\"}}\n {{!@glint-expect-error}}\n @max={{castTo this.max to=\"number\"}}\n {{!@glint-expect-error}}\n @lowerValue={{castTo this.min to=\"number\"}}\n {{!@glint-expect-error}}\n @upperValue={{castTo @value to=\"number\"}}\n />\n {{/if}}\n <EuiRangeSlider\n aria-hidden={{if (eq this.showInput true) true false}}\n tabindex={{if (eq this.showInput true) \"-1\"}}\n @id={{if this.showInput undefined this.id}}\n @name={{@name}}\n @min={{this.min}}\n @max={{this.max}}\n @step={{this.step}}\n @value={{@value}}\n @disabled={{@disabled}}\n @compressed={{@compressed}}\n @showTicks={{this.showTicks}}\n @showRange={{this.showRange}}\n ...attributes\n {{on\n \"mousedown\"\n (if\n this.showInputOnly (fn this.setPreventPopover true) (optional)\n )\n }}\n {{on\n \"focus\"\n (if (eq this.showInput true) (optional) (optional @onFocus))\n }}\n {{on\n \"blur\"\n (if this.showInputOnly this.onInputBlur (optional @onBlur))\n }}\n {{on \"input\" this.handleOnChange}}\n />\n {{#if this.showRangeTooltip}}\n <EuiRangeTooltip\n @compressed={{@compressed}}\n @value={{@value}}\n @max={{this.max}}\n @min={{this.min}}\n @name={{@name}}\n @showTicks={{this.showTicks}}\n >\n <:valuePrepend>\n {{#if hasValuePrependBlock}}\n {{yield to=\"valuePrepend\"}}\n {{else}}\n {{@valuePrepend}}\n {{/if}}\n </:valuePrepend>\n <:value>\n {{#if hasValueBlock}}\n {{yield to=\"value\"}}\n {{else}}\n {{@value}}\n {{/if}}\n </:value>\n <:valueAppend>\n {{#if hasValueAppendBlock}}\n {{yield to=\"valueAppend\"}}\n {{else}}\n {{@valueAppend}}\n {{/if}}\n </:valueAppend>\n </EuiRangeTooltip>\n {{/if}}\n </EuiRangeTrack>\n {{#if this.showLabels}}\n <EuiRangeLabel @side=\"max\" @disabled={{@disabled}}>\n {{#if hasMaxBlock}}\n {{yield this.max to=\"max\"}}\n {{else}}\n {{this.max}}\n {{/if}}\n </EuiRangeLabel>\n {{/if}}\n {{#if (and this.showInput (not this.showInputOnly))}}\n <div class=\"euiRange__horizontalSpacer\"></div>\n {{#if this.showInput}}\n <EuiRangeInput\n id={{this.id}}\n @min={{this.min}}\n @max={{this.max}}\n @digitTolerance={{this.digitTolerance}}\n @readOnly={{@readOnly}}\n @step={{this.step}}\n @value={{@value}}\n @disabled={{@disabled}}\n @compressed={{@compressed}}\n @name={{@name}}\n @fullWidth={{and this.showInputOnly this.fullWidth}}\n @isLoading={{and this.showInputOnly @isLoading}}\n @isInvalid={{@isInvalid}}\n @autoSize={{not this.showInputOnly}}\n @isPrependProvided={{hasPrepend}}\n @isAppendProvided={{hasAppend}}\n ...attributes\n {{on\n \"focus\"\n (if\n this.canShowDropdown this.onInputFocus (optional @onFocus)\n )\n }}\n {{on\n \"blur\"\n (if this.canShowDropdown this.onInputBlur (optional @onBlur))\n }}\n {{on \"input\" this.handleOnChange}}\n >\n <:prepend as |classes|>\n {{yield classes to=\"prepend\"}}\n </:prepend>\n <:append as |classes|>\n {{yield classes to=\"append\"}}\n </:append>\n </EuiRangeInput>\n {{/if}}\n {{/if}}\n </EuiRangeWrapper>\n {{/if}}\n {{/let}}\n </template>\n}\n"],"names":["EuiRangeComponent","Component","g","prototype","argOrDefaultDecorator","i","void 0","preventPopoverClose","tracked","args","id","guidFor","handleOnChange","e","isValid","isWithinRange","min","max","currentTarget","value","onChange","n","action","digitTolerance","Math","String","length","showInputOnly","showInput","canShowDropdown","readOnly","disabled","showRangeTooltip","showValue","undefined","onInputFocus","onFocus","isPopoverOpen","onInputBlur","later","onBlur","closePopover","setPreventPopover","val","setPreventPopoverClose","bool","setComponentTemplate","precompileTemplate","strictMode","scope","and","argOrDefault","not","EuiInputPopover","EuiRangeInput","on","optional","EuiRangeWrapper","classNames","EuiRangeLabel","EuiRangeTrack","eq","EuiRangeHighlight","castTo","EuiRangeSlider","fn","EuiRangeTooltip"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"eui-range.js","sources":["../../src/components/eui-range.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { fn } from '@ember/helper';\nimport { on } from '@ember/modifier';\nimport { action } from '@ember/object';\nimport { guidFor } from '@ember/object/internals';\nimport { later } from '@ember/runloop';\n\nimport optional from '@nullvoxpopuli/ember-composable-helpers/helpers/optional';\nimport { and, eq, not } from 'ember-truth-helpers';\n\nimport argOrDefault, {\n argOrDefaultDecorator\n} from '../helpers/arg-or-default.ts';\nimport castTo from '../helpers/cast-to.ts';\nimport classNames from '../helpers/class-names.ts';\nimport { isWithinRange } from '../utils/number/index.ts';\nimport EuiInputPopover from './eui-input-popover.gts';\nimport EuiRangeHighlight from './eui-range-highlight.gts';\nimport EuiRangeInput from './eui-range-input.gts';\nimport EuiRangeLabel from './eui-range-label.gts';\nimport EuiRangeSlider from './eui-range-slider.gts';\nimport EuiRangeTooltip from './eui-range-tooltip.gts';\nimport EuiRangeTrack from './eui-range-track.gts';\nimport EuiRangeWrapper from './eui-range-wrapper.gts';\n\nimport type { EuiRangeLevel } from './eui-range-levels';\nimport type { EuiRangeTick } from './eui-range-ticks';\n\nexport interface EuiRangeArgs {\n compressed?: boolean;\n readOnly?: boolean;\n fullWidth?: boolean;\n id: string;\n /**\n * Create colored indicators for certain intervals\n */\n levels?: EuiRangeLevel[];\n step?: number;\n /**\n * Pass `true` to displays an extra input control for direct manipulation.\n * Pass `'inputWithPopover'` to only show the input but show the range in a dropdown.\n */\n showInput?: boolean | 'inputWithPopover';\n /**\n * Shows static min/max labels on the sides of the range slider\n */\n showLabels?: boolean;\n /**\n * Shows a thick line from min to value\n */\n showRange?: boolean;\n /**\n * Shows clickable tick marks and labels at the given interval (`step`/`tickInterval`)\n */\n showTicks?: boolean;\n\n min?: number;\n max?: number;\n /**\n * Shows a tooltip styled value\n */\n showValue?: boolean;\n /**\n * Specified ticks at specified values\n */\n ticks: EuiRangeTick[];\n /**\n * Modifies the number of tick marks and at what interval\n */\n tickInterval?: number;\n /**\n * Appends to the tooltip\n */\n valueAppend?: any;\n /**\n * Prepends to the tooltip\n */\n valuePrepend?: any;\n\n onChange?: (event: Event, isValid: boolean) => void;\n onBlur?: (event: Event) => void;\n onFocus?: (event: Event) => void;\n\n value?: number;\n\n disabled?: boolean;\n\n isPrependProvided?: boolean;\n isAppendProvided?: boolean;\n isFakeMaxBlock?: boolean;\n isFakeMinBlock?: boolean;\n isFakeValueBlock?: boolean;\n isFakeValueAppendBlock?: boolean;\n isFakeValuePrependBlock?: boolean;\n isInvalid?: boolean;\n name?: string;\n isLoading?: boolean;\n}\n\nexport interface EuiRangeSignature {\n Element: HTMLInputElement;\n Args: EuiRangeArgs;\n Blocks: {\n min: [min: number];\n max: [max: number];\n value: [];\n valueAppend: [];\n valuePrepend: [];\n prepend: [classes: string];\n append: [classes: string];\n input: [];\n content: [];\n };\n}\n\nexport default class EuiRangeComponent extends Component<EuiRangeSignature> {\n // Defaults\n @argOrDefaultDecorator(0) min!: number;\n @argOrDefaultDecorator(100) max!: number;\n @argOrDefaultDecorator(1) step!: number;\n @argOrDefaultDecorator(false) fullWidth!: boolean;\n @argOrDefaultDecorator(false) compressed!: boolean;\n @argOrDefaultDecorator(false) isLoading!: boolean;\n @argOrDefaultDecorator(false) showLabels!: boolean;\n @argOrDefaultDecorator(false) showInput!: boolean | string;\n @argOrDefaultDecorator(false) showRange!: boolean;\n @argOrDefaultDecorator(false) showTicks!: boolean;\n @argOrDefaultDecorator(false) showValue!: boolean;\n @argOrDefaultDecorator([]) levels!: EuiRangeLevel[];\n\n preventPopoverClose = false;\n\n //State\n @tracked id: string = this.args.id || guidFor({});\n @tracked isPopoverOpen = false;\n ///\n\n @action\n handleOnChange(e: Event): void {\n const isValid = isWithinRange(\n this.min,\n this.max,\n (e.currentTarget as HTMLInputElement).value\n );\n\n if (this.args.onChange) {\n this.args.onChange(e, isValid);\n }\n }\n\n get isValid(): boolean {\n return isWithinRange(this.min, this.max, this.args.value || '');\n }\n\n get digitTolerance(): number {\n return Math.max(String(this.min).length, String(this.max).length);\n }\n\n get showInputOnly(): boolean {\n return this.showInput === 'inputWithPopover';\n }\n\n get canShowDropdown(): boolean {\n return this.showInputOnly && !this.args.readOnly && !this.args.disabled;\n }\n\n get showRangeTooltip(): boolean {\n return (\n this.showValue &&\n !!String(this.args.value).length &&\n this.args.value !== undefined\n );\n }\n\n @action\n onInputFocus(e: Event): void {\n if (this.args.onFocus) {\n this.args.onFocus(e);\n }\n\n this.isPopoverOpen = true;\n }\n\n @action\n onInputBlur(e: Event): void {\n later(\n this,\n () => {\n // Safari does not recognize any focus-related eventing for input[type=range]\n // making it impossible to capture its state using active/focus/relatedTarget\n // Instead, a prevention flag is set on mousedown, with a waiting period here.\n // Mousedown is viable because in the popover case, it is inaccessible via keyboard (intentionally)\n if (this.preventPopoverClose) {\n this.preventPopoverClose = false;\n\n return;\n }\n\n if (this.args.onBlur) {\n this.args.onBlur(e);\n }\n\n this.closePopover();\n },\n 200\n );\n }\n\n @action\n setPreventPopover(val: boolean): void {\n this.preventPopoverClose = val;\n }\n\n @action\n closePopover(): void {\n this.preventPopoverClose = false;\n this.isPopoverOpen = false;\n }\n\n @action\n setPreventPopoverClose(bool: boolean): void {\n this.preventPopoverClose = bool;\n }\n\n <template>\n {{#let\n (and (argOrDefault @isPrependProvided true) (has-block \"prepend\"))\n (and (argOrDefault @isAppendProvided true) (has-block \"append\"))\n (and (not (argOrDefault @isFakeMaxBlock false)) (has-block \"max\"))\n (and (not (argOrDefault @isFakeMinBlock false)) (has-block \"min\"))\n (and (not (argOrDefault @isFakeValueBlock false)) (has-block \"value\"))\n (and\n (not (argOrDefault @isFakeValueAppendBlock false))\n (has-block \"valueAppend\")\n )\n (and\n (not (argOrDefault @isFakeValuePrependBlock false))\n (has-block \"valuePrepend\")\n )\n as |hasPrepend hasAppend hasMaxBlock hasMinBlock hasValueBlock hasValueAppendBlock hasValuePrependBlock|\n }}\n {{#if this.showInputOnly}}\n <EuiInputPopover\n class=\"euiRange__popover\"\n @fullWidth={{@fullWidth}}\n @isOpen={{this.isPopoverOpen}}\n @closePopover={{this.closePopover}}\n @disableFocusTrap={{true}}\n >\n <:input>\n <EuiRangeInput\n id={{this.id}}\n @min={{this.min}}\n @max={{this.max}}\n @digitTolerance={{this.digitTolerance}}\n @readOnly={{@readOnly}}\n @step={{this.step}}\n @value={{@value}}\n @disabled={{@disabled}}\n @compressed={{@compressed}}\n @name={{@name}}\n @fullWidth={{and this.showInputOnly this.fullWidth}}\n @isLoading={{and this.showInputOnly @isLoading}}\n @isInvalid={{@isInvalid}}\n @autoSize={{not this.showInputOnly}}\n @isPrependProvided={{hasPrepend}}\n @isAppendProvided={{hasAppend}}\n ...attributes\n {{on\n \"focus\"\n (if this.canShowDropdown this.onInputFocus (optional @onFocus))\n }}\n {{on\n \"blur\"\n (if this.canShowDropdown this.onInputBlur (optional @onBlur))\n }}\n {{on \"input\" this.handleOnChange}}\n >\n <:prepend as |classes|>\n {{yield classes to=\"prepend\"}}\n </:prepend>\n <:append as |classes|>\n {{yield classes to=\"append\"}}\n </:append>\n </EuiRangeInput>\n </:input>\n <:content>\n <EuiRangeWrapper\n class={{classNames\n \"euiRange\"\n (if this.showInput \"euiRange--hasInput\")\n }}\n @fullWidth={{@fullWidth}}\n @compressed={{@compressed}}\n >\n {{#if this.showLabels}}\n <EuiRangeLabel @side=\"min\" @disabled={{@disabled}}>\n {{#if hasMinBlock}}\n {{yield this.min to=\"min\"}}\n {{else}}\n {{this.min}}\n {{/if}}\n </EuiRangeLabel>\n {{/if}}\n <EuiRangeTrack\n aria-hidden={{eq this.showInput true}}\n @disabled={{@disabled}}\n @compressed={{@compressed}}\n @max={{this.max}}\n @min={{this.min}}\n @step={{this.step}}\n @showTicks={{this.showTicks}}\n @tickInterval={{@tickInterval}}\n @ticks={{@ticks}}\n @levels={{this.levels}}\n @onChange={{this.handleOnChange}}\n @value={{@value}}\n >\n {{#if (and this.showRange this.isValid)}}\n <EuiRangeHighlight\n @compressed={{@compressed}}\n @showTicks={{this.showTicks}}\n {{!@glint-expect-error}}\n @min={{castTo this.min to=\"number\"}}\n {{!@glint-expect-error}}\n @max={{castTo this.max to=\"number\"}}\n {{!@glint-expect-error}}\n @lowerValue={{castTo this.min to=\"number\"}}\n {{!@glint-expect-error}}\n @upperValue={{castTo @value to=\"number\"}}\n />\n {{/if}}\n <EuiRangeSlider\n aria-hidden={{if (eq this.showInput true) true false}}\n tabindex={{if (eq this.showInput true) \"-1\"}}\n @id={{if this.showInput undefined this.id}}\n @name={{@name}}\n @min={{this.min}}\n @max={{this.max}}\n @step={{this.step}}\n @value={{@value}}\n @disabled={{@disabled}}\n @compressed={{@compressed}}\n @showTicks={{this.showTicks}}\n @showRange={{this.showRange}}\n ...attributes\n {{on\n \"mousedown\"\n (if\n this.showInputOnly\n (fn this.setPreventPopoverClose true)\n (optional)\n )\n }}\n {{on\n \"focus\"\n (if (eq this.showInput true) (optional) (optional @onFocus))\n }}\n {{on\n \"blur\"\n (if this.showInputOnly this.onInputBlur (optional @onBlur))\n }}\n {{on \"input\" this.handleOnChange}}\n />\n {{#if this.showRangeTooltip}}\n <EuiRangeTooltip\n @compressed={{@compressed}}\n @value={{@value}}\n @max={{this.max}}\n @min={{this.min}}\n @name={{@name}}\n @showTicks={{this.showTicks}}\n >\n <:valuePrepend>\n {{#if hasValuePrependBlock}}\n {{yield to=\"valuePrepend\"}}\n {{else}}\n {{@valuePrepend}}\n {{/if}}\n </:valuePrepend>\n <:value>\n {{#if hasValueBlock}}\n {{yield to=\"value\"}}\n {{else}}\n {{@value}}\n {{/if}}\n </:value>\n <:valueAppend>\n {{#if hasValueAppendBlock}}\n {{yield to=\"valueAppend\"}}\n {{else}}\n {{@valueAppend}}\n {{/if}}\n </:valueAppend>\n </EuiRangeTooltip>\n {{/if}}\n </EuiRangeTrack>\n {{#if this.showLabels}}\n <EuiRangeLabel @side=\"max\" @disabled={{@disabled}}>\n {{#if hasMaxBlock}}\n {{yield this.max to=\"max\"}}\n {{else}}\n {{this.max}}\n {{/if}}\n </EuiRangeLabel>\n {{/if}}\n {{#if (and this.showInput (not this.showInputOnly))}}\n <div class=\"euiRange__horizontalSpacer\"></div>\n {{#if this.showInput}}\n <EuiRangeInput\n id={{this.id}}\n @min={{this.min}}\n @max={{this.max}}\n @digitTolerance={{this.digitTolerance}}\n @readOnly={{@readOnly}}\n @step={{this.step}}\n @value={{@value}}\n @disabled={{@disabled}}\n @compressed={{@compressed}}\n @name={{@name}}\n @fullWidth={{and this.showInputOnly this.fullWidth}}\n @isLoading={{and this.showInputOnly @isLoading}}\n @isInvalid={{@isInvalid}}\n @autoSize={{not this.showInputOnly}}\n @isPrependProvided={{hasPrepend}}\n @isAppendProvided={{hasAppend}}\n ...attributes\n {{on\n \"focus\"\n (if\n this.canShowDropdown\n this.onInputFocus\n (optional @onFocus)\n )\n }}\n {{on\n \"blur\"\n (if\n this.canShowDropdown this.onInputBlur (optional @onBlur)\n )\n }}\n {{on \"input\" this.handleOnChange}}\n >\n <:prepend as |classes|>\n {{yield classes to=\"prepend\"}}\n </:prepend>\n <:append as |classes|>\n {{yield classes to=\"append\"}}\n </:append>\n </EuiRangeInput>\n {{/if}}\n {{/if}}\n </EuiRangeWrapper>\n </:content>\n </EuiInputPopover>\n {{else}}\n <EuiRangeWrapper\n class={{classNames\n \"euiRange\"\n (if this.showInput \"euiRange--hasInput\")\n }}\n @fullWidth={{@fullWidth}}\n @compressed={{@compressed}}\n >\n {{#if this.showLabels}}\n <EuiRangeLabel @side=\"min\" @disabled={{@disabled}}>\n {{#if hasMinBlock}}\n {{yield this.min to=\"min\"}}\n {{else}}\n {{this.min}}\n {{/if}}\n </EuiRangeLabel>\n {{/if}}\n <EuiRangeTrack\n aria-hidden={{eq this.showInput true}}\n @disabled={{@disabled}}\n @compressed={{@compressed}}\n @max={{this.max}}\n @min={{this.min}}\n @step={{this.step}}\n @showTicks={{this.showTicks}}\n @tickInterval={{@tickInterval}}\n @ticks={{@ticks}}\n @levels={{this.levels}}\n @onChange={{this.handleOnChange}}\n @value={{@value}}\n >\n {{#if (and this.showRange this.isValid)}}\n <EuiRangeHighlight\n @compressed={{@compressed}}\n @showTicks={{this.showTicks}}\n {{!@glint-expect-error}}\n @min={{castTo this.min to=\"number\"}}\n {{!@glint-expect-error}}\n @max={{castTo this.max to=\"number\"}}\n {{!@glint-expect-error}}\n @lowerValue={{castTo this.min to=\"number\"}}\n {{!@glint-expect-error}}\n @upperValue={{castTo @value to=\"number\"}}\n />\n {{/if}}\n <EuiRangeSlider\n aria-hidden={{if (eq this.showInput true) true false}}\n tabindex={{if (eq this.showInput true) \"-1\"}}\n @id={{if this.showInput undefined this.id}}\n @name={{@name}}\n @min={{this.min}}\n @max={{this.max}}\n @step={{this.step}}\n @value={{@value}}\n @disabled={{@disabled}}\n @compressed={{@compressed}}\n @showTicks={{this.showTicks}}\n @showRange={{this.showRange}}\n ...attributes\n {{on\n \"mousedown\"\n (if\n this.showInputOnly (fn this.setPreventPopover true) (optional)\n )\n }}\n {{on\n \"focus\"\n (if (eq this.showInput true) (optional) (optional @onFocus))\n }}\n {{on\n \"blur\"\n (if this.showInputOnly this.onInputBlur (optional @onBlur))\n }}\n {{on \"input\" this.handleOnChange}}\n />\n {{#if this.showRangeTooltip}}\n <EuiRangeTooltip\n @compressed={{@compressed}}\n @value={{@value}}\n @max={{this.max}}\n @min={{this.min}}\n @name={{@name}}\n @showTicks={{this.showTicks}}\n >\n <:valuePrepend>\n {{#if hasValuePrependBlock}}\n {{yield to=\"valuePrepend\"}}\n {{else}}\n {{@valuePrepend}}\n {{/if}}\n </:valuePrepend>\n <:value>\n {{#if hasValueBlock}}\n {{yield to=\"value\"}}\n {{else}}\n {{@value}}\n {{/if}}\n </:value>\n <:valueAppend>\n {{#if hasValueAppendBlock}}\n {{yield to=\"valueAppend\"}}\n {{else}}\n {{@valueAppend}}\n {{/if}}\n </:valueAppend>\n </EuiRangeTooltip>\n {{/if}}\n </EuiRangeTrack>\n {{#if this.showLabels}}\n <EuiRangeLabel @side=\"max\" @disabled={{@disabled}}>\n {{#if hasMaxBlock}}\n {{yield this.max to=\"max\"}}\n {{else}}\n {{this.max}}\n {{/if}}\n </EuiRangeLabel>\n {{/if}}\n {{#if (and this.showInput (not this.showInputOnly))}}\n <div class=\"euiRange__horizontalSpacer\"></div>\n {{#if this.showInput}}\n <EuiRangeInput\n id={{this.id}}\n @min={{this.min}}\n @max={{this.max}}\n @digitTolerance={{this.digitTolerance}}\n @readOnly={{@readOnly}}\n @step={{this.step}}\n @value={{@value}}\n @disabled={{@disabled}}\n @compressed={{@compressed}}\n @name={{@name}}\n @fullWidth={{and this.showInputOnly this.fullWidth}}\n @isLoading={{and this.showInputOnly @isLoading}}\n @isInvalid={{@isInvalid}}\n @autoSize={{not this.showInputOnly}}\n @isPrependProvided={{hasPrepend}}\n @isAppendProvided={{hasAppend}}\n ...attributes\n {{on\n \"focus\"\n (if\n this.canShowDropdown this.onInputFocus (optional @onFocus)\n )\n }}\n {{on\n \"blur\"\n (if this.canShowDropdown this.onInputBlur (optional @onBlur))\n }}\n {{on \"input\" this.handleOnChange}}\n >\n <:prepend as |classes|>\n {{yield classes to=\"prepend\"}}\n </:prepend>\n <:append as |classes|>\n {{yield classes to=\"append\"}}\n </:append>\n </EuiRangeInput>\n {{/if}}\n {{/if}}\n </EuiRangeWrapper>\n {{/if}}\n {{/let}}\n </template>\n}\n"],"names":["EuiRangeComponent","Component","g","prototype","argOrDefaultDecorator","i","void 0","preventPopoverClose","tracked","args","id","guidFor","handleOnChange","e","isValid","isWithinRange","min","max","currentTarget","value","onChange","n","action","digitTolerance","Math","String","length","showInputOnly","showInput","canShowDropdown","readOnly","disabled","showRangeTooltip","showValue","undefined","onInputFocus","onFocus","isPopoverOpen","onInputBlur","later","onBlur","closePopover","setPreventPopover","val","setPreventPopoverClose","bool","setComponentTemplate","precompileTemplate","strictMode","scope","and","argOrDefault","not","EuiInputPopover","EuiRangeInput","on","optional","EuiRangeWrapper","classNames","EuiRangeLabel","EuiRangeTrack","eq","EuiRangeHighlight","castTo","EuiRangeSlider","fn","EuiRangeTooltip"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import didInsert from '@ember/render-modifiers/modifiers/did-insert';
|
|
2
|
-
import optional from 'ember-composable-helpers/helpers/optional';
|
|
2
|
+
import optional from '@nullvoxpopuli/ember-composable-helpers/helpers/optional';
|
|
3
3
|
import { eq, or, not, and } from 'ember-truth-helpers';
|
|
4
4
|
import randomId from '../-private/random-id.js';
|
|
5
5
|
import EuiFormControlLayout from './eui-form-control-layout.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eui-select.js","sources":["../../src/components/eui-select.gts"],"sourcesContent":["import didInsert from '@ember/render-modifiers/modifiers/did-insert';\n\nimport optional from 'ember-composable-helpers/helpers/optional';\nimport { and, eq, not, or } from 'ember-truth-helpers';\n\nimport randomId from '../-private/random-id.ts';\nimport EuiFormControlLayout from '../components/eui-form-control-layout.gts';\nimport argOrDefault from '../helpers/arg-or-default.ts';\nimport classNames from '../helpers/class-names.ts';\nimport validatableControl from '../modifiers/validatable-control.ts';\n\nimport type { EuiFormControlLayoutSignature } from '../components/eui-form-control-layout';\nimport type { TemplateOnlyComponent } from '@ember/component/template-only';\n\nexport interface EuiSelectSignature {\n Element: HTMLSelectElement;\n Args: {\n id?: string;\n options: {\n value: string | number;\n text: string | number;\n disabled?: boolean;\n }[];\n value?: string | number;\n fullWidth?: boolean;\n compressed?: boolean;\n isLoading?: boolean;\n disabled?: boolean;\n hasNoInitialSelection?: boolean;\n isInvalid?: boolean;\n clear?: (v: any) => void;\n inputRef?: (element: HTMLSelectElement) => void;\n isFakePrependBlock?: boolean;\n isFakeAppendBlock?: boolean;\n };\n Blocks: {\n prepend: [...EuiFormControlLayoutSignature['Blocks']['prepend'], string];\n append: [...EuiFormControlLayoutSignature['Blocks']['append'], string];\n };\n}\n\nconst EuiSelect: TemplateOnlyComponent<EuiSelectSignature> = <template>\n {{#let\n (and (not (argOrDefault @isFakePrependBlock false)) (has-block \"prepend\"))\n (and (not (argOrDefault @isFakeAppendBlock false)) (has-block \"append\"))\n (argOrDefault @id (randomId))\n as |hasPrepend hasAppend inputId|\n }}\n {{#let\n (classNames\n (if @fullWidth \"euiSelect--fullWidth\")\n (if @compressed \"euiSelect--compressed\")\n (if (or hasPrepend hasAppend) \"euiSelect--inGroup\")\n (if @isLoading \"euiSelect--isLoading\")\n \"euiSelect\"\n )\n (argOrDefault @hasNoInitialSelection false)\n as |classes hasNoInitialSelection|\n }}\n\n <EuiFormControlLayout\n @clear={{@clear}}\n @icon=\"arrowDown\"\n @iconSide=\"right\"\n @fullWidth={{@fullWidth}}\n @isLoading={{@isLoading}}\n @compressed={{@compressed}}\n @disabled={{@disabled}}\n @useGroup={{or hasPrepend hasAppend}}\n >\n <:prepend as |prependClasses|>\n {{yield prependClasses inputId to=\"prepend\"}}\n </:prepend>\n <:field>\n <select\n id={{inputId}}\n class={{classes}}\n disabled={{@disabled}}\n {{validatableControl @isInvalid}}\n {{didInsert (optional @inputRef)}}\n ...attributes\n >\n {{#if hasNoInitialSelection}}\n {{! template-lint-disable}}\n <option\n value=\"\"\n disabled\n hidden\n style=\"display: none\"\n selected={{not @value}}\n ></option>\n {{! template-lint-enable}}\n {{/if}}\n {{#each @options as |opt|}}\n <option\n value={{opt.value}}\n selected={{eq @value opt.value}}\n disabled={{eq opt.disabled true}}\n >\n {{opt.text}}\n </option>\n {{/each}}\n </select>\n </:field>\n <:append as |appendClasses|>\n {{yield appendClasses inputId to=\"append\"}}\n </:append>\n </EuiFormControlLayout>\n {{/let}}\n {{/let}}\n</template>;\n\nexport default EuiSelect;\n"],"names":["EuiSelect","setComponentTemplate","precompileTemplate","strictMode","scope","and","not","argOrDefault","randomId","classNames","or","EuiFormControlLayout","validatableControl","didInsert","optional","eq","templateOnly"],"mappings":";;;;;;;;;;;;AAyCA,MAAMA,SAAuD,GAAAC,oBAAA,CAAAC,kBAAA,CAqE7D,kuDAAA,EAAA;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;IAAAC,GAAA;IAAAC,GAAA;IAAAC,YAAA;IAAAC,QAAA;IAAAC,UAAA;IAAAC,EAAA;IAAAC,oBAAA;IAAAC,kBAAA;IAAAC,SAAA;IAAAC,QAAA;AAAAC,IAAAA;AAAA,GAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
|
|
1
|
+
{"version":3,"file":"eui-select.js","sources":["../../src/components/eui-select.gts"],"sourcesContent":["import didInsert from '@ember/render-modifiers/modifiers/did-insert';\n\nimport optional from '@nullvoxpopuli/ember-composable-helpers/helpers/optional';\nimport { and, eq, not, or } from 'ember-truth-helpers';\n\nimport randomId from '../-private/random-id.ts';\nimport EuiFormControlLayout from '../components/eui-form-control-layout.gts';\nimport argOrDefault from '../helpers/arg-or-default.ts';\nimport classNames from '../helpers/class-names.ts';\nimport validatableControl from '../modifiers/validatable-control.ts';\n\nimport type { EuiFormControlLayoutSignature } from '../components/eui-form-control-layout';\nimport type { TemplateOnlyComponent } from '@ember/component/template-only';\n\nexport interface EuiSelectSignature {\n Element: HTMLSelectElement;\n Args: {\n id?: string;\n options: {\n value: string | number;\n text: string | number;\n disabled?: boolean;\n }[];\n value?: string | number;\n fullWidth?: boolean;\n compressed?: boolean;\n isLoading?: boolean;\n disabled?: boolean;\n hasNoInitialSelection?: boolean;\n isInvalid?: boolean;\n clear?: (v: any) => void;\n inputRef?: (element: HTMLSelectElement) => void;\n isFakePrependBlock?: boolean;\n isFakeAppendBlock?: boolean;\n };\n Blocks: {\n prepend: [...EuiFormControlLayoutSignature['Blocks']['prepend'], string];\n append: [...EuiFormControlLayoutSignature['Blocks']['append'], string];\n };\n}\n\nconst EuiSelect: TemplateOnlyComponent<EuiSelectSignature> = <template>\n {{#let\n (and (not (argOrDefault @isFakePrependBlock false)) (has-block \"prepend\"))\n (and (not (argOrDefault @isFakeAppendBlock false)) (has-block \"append\"))\n (argOrDefault @id (randomId))\n as |hasPrepend hasAppend inputId|\n }}\n {{#let\n (classNames\n (if @fullWidth \"euiSelect--fullWidth\")\n (if @compressed \"euiSelect--compressed\")\n (if (or hasPrepend hasAppend) \"euiSelect--inGroup\")\n (if @isLoading \"euiSelect--isLoading\")\n \"euiSelect\"\n )\n (argOrDefault @hasNoInitialSelection false)\n as |classes hasNoInitialSelection|\n }}\n\n <EuiFormControlLayout\n @clear={{@clear}}\n @icon=\"arrowDown\"\n @iconSide=\"right\"\n @fullWidth={{@fullWidth}}\n @isLoading={{@isLoading}}\n @compressed={{@compressed}}\n @disabled={{@disabled}}\n @useGroup={{or hasPrepend hasAppend}}\n >\n <:prepend as |prependClasses|>\n {{yield prependClasses inputId to=\"prepend\"}}\n </:prepend>\n <:field>\n <select\n id={{inputId}}\n class={{classes}}\n disabled={{@disabled}}\n {{validatableControl @isInvalid}}\n {{didInsert (optional @inputRef)}}\n ...attributes\n >\n {{#if hasNoInitialSelection}}\n {{! template-lint-disable}}\n <option\n value=\"\"\n disabled\n hidden\n style=\"display: none\"\n selected={{not @value}}\n ></option>\n {{! template-lint-enable}}\n {{/if}}\n {{#each @options as |opt|}}\n <option\n value={{opt.value}}\n selected={{eq @value opt.value}}\n disabled={{eq opt.disabled true}}\n >\n {{opt.text}}\n </option>\n {{/each}}\n </select>\n </:field>\n <:append as |appendClasses|>\n {{yield appendClasses inputId to=\"append\"}}\n </:append>\n </EuiFormControlLayout>\n {{/let}}\n {{/let}}\n</template>;\n\nexport default EuiSelect;\n"],"names":["EuiSelect","setComponentTemplate","precompileTemplate","strictMode","scope","and","not","argOrDefault","randomId","classNames","or","EuiFormControlLayout","validatableControl","didInsert","optional","eq","templateOnly"],"mappings":";;;;;;;;;;;;AAyCA,MAAMA,SAAuD,GAAAC,oBAAA,CAAAC,kBAAA,CAqE7D,kuDAAA,EAAA;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;IAAAC,GAAA;IAAAC,GAAA;IAAAC,YAAA;IAAAC,QAAA;IAAAC,UAAA;IAAAC,EAAA;IAAAC,oBAAA;IAAAC,kBAAA;IAAAC,SAAA;IAAAC,QAAA;AAAAC,IAAAA;AAAA,GAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
|
|
@@ -13,7 +13,7 @@ class CurrentBreakPointHelper extends Helper {
|
|
|
13
13
|
static {
|
|
14
14
|
g(this.prototype, "currentBreakpoint", [tracked]);
|
|
15
15
|
}
|
|
16
|
-
#currentBreakpoint = (i(this, "currentBreakpoint"),
|
|
16
|
+
#currentBreakpoint = (i(this, "currentBreakpoint"), void 0);
|
|
17
17
|
functionToCallOnWindowResize;
|
|
18
18
|
compute([sizes]) {
|
|
19
19
|
this.currentBreakpoint = getBreakpoint(typeof window === 'undefined' ? -Infinity : window.innerWidth);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eui-show-for.js","sources":["../../src/components/eui-show-for.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\n//@ts-ignore\nimport { getValue } from '@glimmer/tracking/primitives/cache';\nimport Helper from '@ember/component/helper';\n//@ts-ignore\nimport { invokeHelper } from '@ember/helper';\nimport { throttle } from '@ember/runloop';\n\nimport { getBreakpoint } from '../utils/breakpoint.ts';\n\nimport type { EuiBreakpointSize } from '../utils/breakpoint.ts';\n\nexport class CurrentBreakPointHelper extends Helper {\n @tracked currentBreakpoint: string | undefined;\n functionToCallOnWindowResize: undefined | (() => void);\n\n compute([sizes]: [EuiHideForBreakpoints[] | 'all' | 'none']) {\n this.currentBreakpoint = getBreakpoint(\n typeof window === 'undefined' ? -Infinity : window.innerWidth\n );\n\n this.setupListeners();\n\n return (\n sizes === 'all' ||\n sizes.includes(this.currentBreakpoint as EuiBreakpointSize)\n );\n }\n\n willDestroy(): void {\n super.willDestroy();\n this.teardown();\n }\n\n setupListeners() {\n this.functionToCallOnWindowResize = () => {\n const fn = () => {\n const newBreakpoint = getBreakpoint(window.innerWidth);\n\n if (newBreakpoint !== this.currentBreakpoint) {\n this.currentBreakpoint = newBreakpoint;\n }\n };\n\n throttle(this, fn, 50);\n };\n\n window.addEventListener('resize', this.functionToCallOnWindowResize);\n }\n\n teardown() {\n if (typeof this.functionToCallOnWindowResize === 'function') {\n window.removeEventListener('resize', this.functionToCallOnWindowResize);\n this.functionToCallOnWindowResize = undefined;\n }\n }\n}\n\nexport type EuiHideForBreakpoints = EuiBreakpointSize;\n\nexport interface EuiShowForArgs {\n /**\n * List of all the responsive sizes to hide the children for.\n * Array of #EuiBreakpointSize\n */\n sizes: EuiHideForBreakpoints[] | 'all' | 'none';\n}\n\nexport interface EuiShowForSignature {\n Args: EuiShowForArgs;\n Blocks: {\n default: [];\n };\n}\n\nexport default class EuiShowForComponent extends Component<EuiShowForSignature> {\n currentBreakpointHelper: any = invokeHelper(this, CurrentBreakPointHelper, () => {\n return {\n positional: [this.args.sizes]\n };\n });\n\n get shouldShow() {\n return getValue(this.currentBreakpointHelper);\n }\n\n <template>\n {{#if this.shouldShow}}\n {{yield}}\n {{/if}}\n </template>\n}\n"],"names":["CurrentBreakPointHelper","Helper","g","prototype","tracked","i","void 0","functionToCallOnWindowResize","compute","sizes","currentBreakpoint","getBreakpoint","window","Infinity","innerWidth","setupListeners","includes","willDestroy","teardown","fn","newBreakpoint","throttle","addEventListener","removeEventListener","undefined","EuiShowForComponent","Component","currentBreakpointHelper","invokeHelper","positional","args","shouldShow","getValue","setComponentTemplate","precompileTemplate","strictMode"],"mappings":";;;;;;;;;;;AAaO,MAAMA,uBAAgC,SAAAC,MAAA,CAAA;AAAA,EAAA;IAAAC,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,mBAAA,EAAA,CAC1CC,OAAA,CAAA,CAAA;AAAA;AAAA,EAAA,kBAAA,IAAAC,CAAA,CAAA,IAAA,EAAA,mBAAA,CAAA,EAAAC,
|
|
1
|
+
{"version":3,"file":"eui-show-for.js","sources":["../../src/components/eui-show-for.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\n//@ts-ignore\nimport { getValue } from '@glimmer/tracking/primitives/cache';\nimport Helper from '@ember/component/helper';\n//@ts-ignore\nimport { invokeHelper } from '@ember/helper';\nimport { throttle } from '@ember/runloop';\n\nimport { getBreakpoint } from '../utils/breakpoint.ts';\n\nimport type { EuiBreakpointSize } from '../utils/breakpoint.ts';\n\nexport class CurrentBreakPointHelper extends Helper {\n @tracked currentBreakpoint: string | undefined;\n functionToCallOnWindowResize: undefined | (() => void);\n\n compute([sizes]: [EuiHideForBreakpoints[] | 'all' | 'none']) {\n this.currentBreakpoint = getBreakpoint(\n typeof window === 'undefined' ? -Infinity : window.innerWidth\n );\n\n this.setupListeners();\n\n return (\n sizes === 'all' ||\n sizes.includes(this.currentBreakpoint as EuiBreakpointSize)\n );\n }\n\n willDestroy(): void {\n super.willDestroy();\n this.teardown();\n }\n\n setupListeners() {\n this.functionToCallOnWindowResize = () => {\n const fn = () => {\n const newBreakpoint = getBreakpoint(window.innerWidth);\n\n if (newBreakpoint !== this.currentBreakpoint) {\n this.currentBreakpoint = newBreakpoint;\n }\n };\n\n throttle(this, fn, 50);\n };\n\n window.addEventListener('resize', this.functionToCallOnWindowResize);\n }\n\n teardown() {\n if (typeof this.functionToCallOnWindowResize === 'function') {\n window.removeEventListener('resize', this.functionToCallOnWindowResize);\n this.functionToCallOnWindowResize = undefined;\n }\n }\n}\n\nexport type EuiHideForBreakpoints = EuiBreakpointSize;\n\nexport interface EuiShowForArgs {\n /**\n * List of all the responsive sizes to hide the children for.\n * Array of #EuiBreakpointSize\n */\n sizes: EuiHideForBreakpoints[] | 'all' | 'none';\n}\n\nexport interface EuiShowForSignature {\n Args: EuiShowForArgs;\n Blocks: {\n default: [];\n };\n}\n\nexport default class EuiShowForComponent extends Component<EuiShowForSignature> {\n currentBreakpointHelper: any = invokeHelper(this, CurrentBreakPointHelper, () => {\n return {\n positional: [this.args.sizes]\n };\n });\n\n get shouldShow() {\n return getValue(this.currentBreakpointHelper);\n }\n\n <template>\n {{#if this.shouldShow}}\n {{yield}}\n {{/if}}\n </template>\n}\n"],"names":["CurrentBreakPointHelper","Helper","g","prototype","tracked","i","void 0","functionToCallOnWindowResize","compute","sizes","currentBreakpoint","getBreakpoint","window","Infinity","innerWidth","setupListeners","includes","willDestroy","teardown","fn","newBreakpoint","throttle","addEventListener","removeEventListener","undefined","EuiShowForComponent","Component","currentBreakpointHelper","invokeHelper","positional","args","shouldShow","getValue","setComponentTemplate","precompileTemplate","strictMode"],"mappings":";;;;;;;;;;;AAaO,MAAMA,uBAAgC,SAAAC,MAAA,CAAA;AAAA,EAAA;IAAAC,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,mBAAA,EAAA,CAC1CC,OAAA,CAAA,CAAA;AAAA;AAAA,EAAA,kBAAA,IAAAC,CAAA,CAAA,IAAA,EAAA,mBAAA,CAAA,EAAAC,MAAA;EACDC,4BAA8B;AAE9BC,EAAAA,OAAAA,CAAQ,CAACC,KAAA,CAAkD,EAAE;AAC3D,IAAA,IAAI,CAACC,iBAAiB,GAAGC,aACvB,CAAA,OAAOC,WAAW,WAAc,GAAA,CAACC,QAAW,GAAAD,MAAA,CAAOE,UAAU,CAAA;IAG/D,IAAI,CAACC,cAAc,EAAA;IAEnB,OACEN,KAAU,KAAA,KAAA,IACVA,KAAM,CAAAO,QAAQ,CAAC,IAAI,CAACN,iBACtB,CAAA;AACF;AAEAO,EAAAA,WAAAA,GAAoB;IAClB,KAAK,CAACA,WAAA,EAAA;IACN,IAAI,CAACC,QAAQ,EAAA;AACf;AAEAH,EAAAA,cAAiBA,GAAA;IACf,IAAI,CAACR,4BAA4B,GAAG,MAAA;MAClC,MAAMY,EAAK,GAAAA,MAAA;AACT,QAAA,MAAMC,aAAA,GAAgBT,aAAc,CAAAC,MAAA,CAAOE,UAAU,CAAA;AAErD,QAAA,IAAIM,aAAkB,KAAA,IAAI,CAACV,iBAAiB,EAAE;UAC5C,IAAI,CAACA,iBAAiB,GAAGU,aAAA;AAC3B;OACF;AAEAC,MAAAA,QAAS,CAAA,IAAI,EAAEF,EAAI,EAAA,EAAA,CAAA;KACrB;IAEAP,MAAA,CAAOU,gBAAgB,CAAC,QAAU,EAAA,IAAI,CAACf,4BAA4B,CAAA;AACrE;AAEAW,EAAAA,QAAWA,GAAA;AACT,IAAA,IAAI,OAAO,IAAI,CAACX,4BAA4B,KAAK,UAAY,EAAA;MAC3DK,MAAA,CAAOW,mBAAmB,CAAC,QAAU,EAAA,IAAI,CAAChB,4BAA4B,CAAA;MACtE,IAAI,CAACA,4BAA4B,GAAGiB,SAAA;AACtC;AACF;AACF;AAmBe,MAAMC,4BAA4BC,SAAU,CAAA;AACzDC,EAAAA,uBAAA,GAA+BC,YAAa,CAAA,IAAI,EAAE5B,uBAAyB,EAAA,MAAA;IACzE,OAAO;AACL6B,MAAAA,UAAY,EAAA,CAAC,IAAI,CAACC,IAAI,CAACrB,KAAK;KAC9B;AACF,GAAG,CAAA;EAEH,IAAIsB,UAAaA,GAAA;AACf,IAAA,OAAOC,QAAA,CAAS,IAAI,CAACL,uBAAuB,CAAA;AAC9C;AAEA,EAAA;IAAAM,oBAAA,CAAAC,kBAAA,CAIA,iEAAA,EAAA;MAAAC,UAAA,EAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { on } from '@ember/modifier';
|
|
2
|
-
import optional from 'ember-composable-helpers/helpers/optional';
|
|
2
|
+
import optional from '@nullvoxpopuli/ember-composable-helpers/helpers/optional';
|
|
3
3
|
import add from 'ember-math-helpers/helpers/add';
|
|
4
4
|
import { not, or, gt, and, eq } from 'ember-truth-helpers';
|
|
5
5
|
import EuiSideNavItemButton from './eui-side-nav-item/button.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eui-side-nav-item.js","sources":["../../src/components/eui-side-nav-item.gts"],"sourcesContent":["import { on } from '@ember/modifier';\n\nimport optional from 'ember-composable-helpers/helpers/optional';\nimport add from 'ember-math-helpers/helpers/add';\nimport { and,eq, gt, not, or } from 'ember-truth-helpers';\n\nimport Button from '../components/eui-side-nav-item/button.gts';\nimport classNames from '../helpers/class-names.ts';\nimport isItemOpen from '../helpers/is-item-open.ts';\n\nimport type { Item } from './eui-side-nav';\nimport type { TemplateOnlyComponent } from '@ember/component/template-only';\n\nexport interface EuiSideNavItemSignature {\n Args: {\n selectedItem?: string;\n isOpen?: boolean;\n isSelected?: boolean;\n isParent?: boolean;\n icon?: string;\n onClick?: () => void;\n href?: string;\n className?: string;\n rel?: string;\n target?: string;\n items?: Item[];\n depth?: number;\n name?: string;\n renderItem?: unknown;\n disabled?: boolean;\n truncate?: boolean;\n emphasize?: boolean;\n buttonClassName?: string;\n childrenOnly?: boolean;\n buttonIconClasses?: string;\n };\n Blocks: {\n default: [];\n };\n}\n\nconst EuiSideNavItem: TemplateOnlyComponent<EuiSideNavItemSignature> =\n <template>\n <div\n class={{classNames\n \"euiSideNavItem\"\n (if (eq @depth 1) \"euiSideNavItem--trunk\")\n (if (eq @depth 0) \"euiSideNavItem--root\")\n (if (and (eq @depth 0) @icon) \"euiSideNavItem--rootIcon\")\n (if (gt @depth 1) \"euiSideNavItem--branch\")\n (if @items.length \"euiSideNavItem--hasChildItems\")\n (if @emphasize \"euiSideNavItem--emphasized\")\n }}\n >\n {{#let\n (classNames\n \"euiSideNavItemButton\"\n (if (or @onClick @href) \"euiSideNavItemButton--isClickable\")\n (if\n (and (gt @depth 0) @isOpen (not @isSelected))\n \"euiSideNavItemButton-isOpen\"\n )\n (if @isSelected \"euiSideNavItemButton-isSelected\")\n @buttonClassName\n )\n (and (gt @depth 0) @isParent (not @isOpen) (not @isSelected))\n as |className caret|\n }}\n {{#if (and @href (not @disabled))}}\n <a\n class={{className}}\n href={{@href}}\n target={{@target}}\n rel={{@rel}}\n {{on \"click\" (optional @onClick)}}\n >\n <Button\n @icon={{@icon}}\n @buttonIconClasses={{@buttonIconClasses}}\n @caret={{caret}}\n >\n {{yield}}\n </Button>\n </a>\n {{else if (or @onClick @disabled)}}\n <button\n type=\"button\"\n class={{className}}\n disabled={{@disabled}}\n {{on \"click\" (optional @onClick)}}\n >\n <Button\n @icon={{@icon}}\n @truncate={{@truncate}}\n @buttonIconClasses={{@buttonIconClasses}}\n @caret={{caret}}\n >\n {{yield}}\n </Button>\n </button>\n {{else}}\n <div class={{className}}>\n <Button\n @icon={{@icon}}\n @truncate={{@truncate}}\n @buttonIconClasses={{@buttonIconClasses}}\n @caret={{caret}}\n >\n {{yield}}\n </Button>\n </div>\n {{/if}}\n {{/let}}\n {{#if (or (eq @depth 0) (and @items.length @isOpen))}}\n <div class=\"euiSideNavItem__items\">\n {{#each @items as |item|}}\n {{#let\n (and\n (gt @depth 0)\n (not item.onClick)\n (not item.href)\n (not (not item.items))\n )\n as |childrenOnly|\n }}\n <EuiSideNavItem\n @selectedItem={{@selectedItem}}\n @isOpen={{isItemOpen item @selectedItem}}\n @isSelected={{and\n (not childrenOnly)\n (eq item.id @selectedItem)\n }}\n @isParent={{not (not item.items)}}\n @icon={{item.icon}}\n @onClick={{item.onClick}}\n @href={{item.href}}\n @className={{item.className}}\n @rel={{item.rel}}\n @target={{item.target}}\n @items={{item.items}}\n @depth={{add @depth 1}}\n @name={{item.name}}\n @renderItem={{item.renderItem}}\n @disabled={{item.disabled}}\n @truncate={{item.truncate}}\n @emphasize={{item.emphasize}}\n @buttonClassName={{item.buttonClassName}}\n @childrenOnly={{childrenOnly}}\n >\n {{item.name}}\n </EuiSideNavItem>\n {{/let}}\n {{/each}}\n </div>\n {{/if}}\n </div>\n </template>;\n\nexport default EuiSideNavItem;\n"],"names":["EuiSideNavItem","setComponentTemplate","precompileTemplate","strictMode","scope","classNames","eq","and","gt","or","not","on","optional","Button","isItemOpen","add","templateOnly"],"mappings":";;;;;;;;;;;AAyCA,MAAMA,cACJ,GAAAC,oBAAA,CAAAC,kBAAA,CAkHA,inFAAA,EAAA;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;IAAAC,UAAA;IAAAC,EAAA;IAAAC,GAAA;IAAAC,EAAA;IAAAC,EAAA;IAAAC,GAAA;IAAAC,EAAA;IAAAC,QAAA;YAAAC,oBAAA;IAAAb,cAAA;IAAAc,UAAA;AAAAC,IAAAA;AAAA,GAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
|
|
1
|
+
{"version":3,"file":"eui-side-nav-item.js","sources":["../../src/components/eui-side-nav-item.gts"],"sourcesContent":["import { on } from '@ember/modifier';\n\nimport optional from '@nullvoxpopuli/ember-composable-helpers/helpers/optional';\nimport add from 'ember-math-helpers/helpers/add';\nimport { and, eq, gt, not, or } from 'ember-truth-helpers';\n\nimport Button from '../components/eui-side-nav-item/button.gts';\nimport classNames from '../helpers/class-names.ts';\nimport isItemOpen from '../helpers/is-item-open.ts';\n\nimport type { Item } from './eui-side-nav';\nimport type { TemplateOnlyComponent } from '@ember/component/template-only';\n\nexport interface EuiSideNavItemSignature {\n Args: {\n selectedItem?: string;\n isOpen?: boolean;\n isSelected?: boolean;\n isParent?: boolean;\n icon?: string;\n onClick?: () => void;\n href?: string;\n className?: string;\n rel?: string;\n target?: string;\n items?: Item[];\n depth?: number;\n name?: string;\n renderItem?: unknown;\n disabled?: boolean;\n truncate?: boolean;\n emphasize?: boolean;\n buttonClassName?: string;\n childrenOnly?: boolean;\n buttonIconClasses?: string;\n };\n Blocks: {\n default: [];\n };\n}\n\nconst EuiSideNavItem: TemplateOnlyComponent<EuiSideNavItemSignature> =\n <template>\n <div\n class={{classNames\n \"euiSideNavItem\"\n (if (eq @depth 1) \"euiSideNavItem--trunk\")\n (if (eq @depth 0) \"euiSideNavItem--root\")\n (if (and (eq @depth 0) @icon) \"euiSideNavItem--rootIcon\")\n (if (gt @depth 1) \"euiSideNavItem--branch\")\n (if @items.length \"euiSideNavItem--hasChildItems\")\n (if @emphasize \"euiSideNavItem--emphasized\")\n }}\n >\n {{#let\n (classNames\n \"euiSideNavItemButton\"\n (if (or @onClick @href) \"euiSideNavItemButton--isClickable\")\n (if\n (and (gt @depth 0) @isOpen (not @isSelected))\n \"euiSideNavItemButton-isOpen\"\n )\n (if @isSelected \"euiSideNavItemButton-isSelected\")\n @buttonClassName\n )\n (and (gt @depth 0) @isParent (not @isOpen) (not @isSelected))\n as |className caret|\n }}\n {{#if (and @href (not @disabled))}}\n <a\n class={{className}}\n href={{@href}}\n target={{@target}}\n rel={{@rel}}\n {{on \"click\" (optional @onClick)}}\n >\n <Button\n @icon={{@icon}}\n @buttonIconClasses={{@buttonIconClasses}}\n @caret={{caret}}\n >\n {{yield}}\n </Button>\n </a>\n {{else if (or @onClick @disabled)}}\n <button\n type=\"button\"\n class={{className}}\n disabled={{@disabled}}\n {{on \"click\" (optional @onClick)}}\n >\n <Button\n @icon={{@icon}}\n @truncate={{@truncate}}\n @buttonIconClasses={{@buttonIconClasses}}\n @caret={{caret}}\n >\n {{yield}}\n </Button>\n </button>\n {{else}}\n <div class={{className}}>\n <Button\n @icon={{@icon}}\n @truncate={{@truncate}}\n @buttonIconClasses={{@buttonIconClasses}}\n @caret={{caret}}\n >\n {{yield}}\n </Button>\n </div>\n {{/if}}\n {{/let}}\n {{#if (or (eq @depth 0) (and @items.length @isOpen))}}\n <div class=\"euiSideNavItem__items\">\n {{#each @items as |item|}}\n {{#let\n (and\n (gt @depth 0)\n (not item.onClick)\n (not item.href)\n (not (not item.items))\n )\n as |childrenOnly|\n }}\n <EuiSideNavItem\n @selectedItem={{@selectedItem}}\n @isOpen={{isItemOpen item @selectedItem}}\n @isSelected={{and\n (not childrenOnly)\n (eq item.id @selectedItem)\n }}\n @isParent={{not (not item.items)}}\n @icon={{item.icon}}\n @onClick={{item.onClick}}\n @href={{item.href}}\n @className={{item.className}}\n @rel={{item.rel}}\n @target={{item.target}}\n @items={{item.items}}\n @depth={{add @depth 1}}\n @name={{item.name}}\n @renderItem={{item.renderItem}}\n @disabled={{item.disabled}}\n @truncate={{item.truncate}}\n @emphasize={{item.emphasize}}\n @buttonClassName={{item.buttonClassName}}\n @childrenOnly={{childrenOnly}}\n >\n {{item.name}}\n </EuiSideNavItem>\n {{/let}}\n {{/each}}\n </div>\n {{/if}}\n </div>\n </template>;\n\nexport default EuiSideNavItem;\n"],"names":["EuiSideNavItem","setComponentTemplate","precompileTemplate","strictMode","scope","classNames","eq","and","gt","or","not","on","optional","Button","isItemOpen","add","templateOnly"],"mappings":";;;;;;;;;;;AAyCA,MAAMA,cACJ,GAAAC,oBAAA,CAAAC,kBAAA,CAkHA,inFAAA,EAAA;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;IAAAC,UAAA;IAAAC,EAAA;IAAAC,GAAA;IAAAC,EAAA;IAAAC,EAAA;IAAAC,GAAA;IAAAC,EAAA;IAAAC,QAAA;YAAAC,oBAAA;IAAAb,cAAA;IAAAc,UAAA;AAAAC,IAAAA;AAAA,GAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import Component from '@glimmer/component';
|
|
2
2
|
import { fn } from '@ember/helper';
|
|
3
3
|
import { on } from '@ember/modifier';
|
|
4
|
-
import optional from 'ember-composable-helpers/helpers/optional';
|
|
4
|
+
import optional from '@nullvoxpopuli/ember-composable-helpers/helpers/optional';
|
|
5
5
|
import { element } from 'ember-element-helper';
|
|
6
6
|
import { eq, and, not, or } from 'ember-truth-helpers';
|
|
7
7
|
import randomId from '../-private/random-id.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eui-side-nav.js","sources":["../../src/components/eui-side-nav.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { fn } from '@ember/helper';\nimport { on } from '@ember/modifier';\n\nimport optional from 'ember-composable-helpers/helpers/optional';\nimport { element } from 'ember-element-helper';\nimport { and,eq, not, or } from 'ember-truth-helpers';\n\nimport randomId from '../-private/random-id.ts';\nimport EuiButtonEmpty from '../components/eui-button-empty.gts';\nimport EuiHideFor from '../components/eui-hide-for.gts';\nimport EuiShowFor from '../components/eui-show-for.gts';\nimport EuiSideNavItem from '../components/eui-side-nav-item.gts';\nimport EuiTitle from '../components/eui-title.gts';\nimport argOrDefault from '../helpers/arg-or-default.ts';\nimport classNames from '../helpers/class-names.ts';\nimport isItemOpen from '../helpers/is-item-open.ts';\nimport screenReaderOnly from '../modifiers/screen-reader-only.ts';\n\nimport type { EuiHideForSignature } from '../components/eui-hide-for';\n\nexport interface Item {\n id: string;\n icon?: string;\n onClick?: () => void;\n href?: string;\n className?: string;\n rel?: string;\n target?: string;\n items?: Item[];\n depth?: number;\n name?: string;\n renderItem?: unknown;\n isSelected?: boolean;\n disabled?: boolean;\n truncate?: boolean;\n emphasize?: boolean;\n buttonClassName?: string;\n}\n\nexport interface EuiSideNavSignature {\n Element: HTMLDivElement | HTMLUListElement | HTMLElement;\n Args: {\n mobileBreakpoints?: EuiHideForSignature['Args']['sizes'];\n isOpenMobile?: boolean;\n toggleOpenOnMobile?: () => void;\n heading?: string;\n headingProps?: {\n element?: string;\n id?: string;\n className?: string;\n screenReaderOnly?: boolean;\n };\n mobileTitle?: string;\n items?: Item[];\n selectedItem?: string;\n };\n Blocks: {\n default: [Item];\n heading: [];\n };\n}\n\nexport default class EuiSideNavComponent extends Component<EuiSideNavSignature> {\n get mobileBreakpoints() {\n return this.args.mobileBreakpoints || ['xs', 's'];\n }\n\n get contentClasses() {\n let mobileBreakpoints = Array.isArray(this.mobileBreakpoints)\n ? this.mobileBreakpoints\n : [this.mobileBreakpoints];\n\n return `euiSideNav__content ${mobileBreakpoints\n .map?.((breakpointName) => {\n return `euiSideNav__contentMobile-${breakpointName}`;\n })\n .join(' ')}`;\n }\n\n get hasMobileVersion() {\n return this.mobileBreakpoints?.length > 0;\n }\n\n <template>\n {{#let\n (classNames \"euiSideNav\" (if @isOpenMobile \"euiSideNav-isOpenMobile\"))\n (element (argOrDefault @headingProps.element \"h2\"))\n (argOrDefault @headingProps.id (randomId))\n (randomId)\n (or (has-block \"heading\") (not (not @heading)))\n as |classes HeadingElement headingId sideNavContentId hasHeader|\n }}\n {{#if this.hasMobileVersion}}\n <EuiShowFor @sizes={{this.mobileBreakpoints}}>\n <nav aria-labelledby={{headingId}} class={{classes}} ...attributes>\n <HeadingElement id={{headingId}} class={{@headingProps.className}}>\n <EuiButtonEmpty\n type=\"button\"\n class=\"euiSideNav__mobileToggle\"\n @contentClasses=\"euiSideNav__mobileToggleContent\"\n @textClasses=\"euiSideNav__mobileToggleText\"\n {{on\n \"click\"\n (fn (optional @toggleOpenOnMobile) (not @isOpenMobile))\n }}\n @iconType=\"apps\"\n @iconSide=\"right\"\n aria-controls={{sideNavContentId}}\n aria-expanded={{@isOpenMobile}}\n >\n {{#if @mobileTitle}}\n {{@mobileTitle}}\n {{else if (has-block \"heading\")}}\n {{yield to=\"heading\"}}\n {{else}}\n {{@heading}}\n {{/if}}\n </EuiButtonEmpty>\n </HeadingElement>\n <div id={{sideNavContentId}} class={{this.contentClasses}}>\n {{#each @items as |item|}}\n {{#let\n (and\n (not item.onClick) (not item.href) (not (not item.items))\n )\n as |childrenOnly|\n }}\n <EuiSideNavItem\n @selectedItem={{@selectedItem}}\n @isOpen={{isItemOpen item @selectedItem}}\n @isSelected={{and\n (not childrenOnly)\n (eq item.id item.isSelected)\n }}\n @isParent={{not (not item.items)}}\n @icon={{item.icon}}\n @onClick={{item.onClick}}\n @href={{item.href}}\n @className={{item.className}}\n @rel={{item.rel}}\n @target={{item.target}}\n @items={{item.items}}\n @depth={{0}}\n @renderItem={{item.renderItem}}\n @disabled={{item.disabled}}\n @truncate={{item.truncate}}\n @emphasize={{item.emphasize}}\n @buttonClassName={{item.buttonClassName}}\n @childrenOnly={{childrenOnly}}\n >\n {{item.name}}\n </EuiSideNavItem>\n {{/let}}\n {{/each}}\n </div>\n </nav>\n </EuiShowFor>\n {{/if}}\n\n <EuiHideFor @sizes={{this.mobileBreakpoints}}>\n <nav\n aria-labelledby={{if hasHeader headingId}}\n class={{classes}}\n ...attributes\n >\n {{#if hasHeader}}\n {{#let\n (argOrDefault @headingProps.screenReaderOnly false)\n as |shouldScreenReader|\n }}\n {{#if (has-block \"heading\")}}\n {{#if shouldScreenReader}}\n <HeadingElement {{screenReaderOnly}}>\n {{yield to=\"heading\"}}\n </HeadingElement>\n {{else}}\n <EuiTitle\n class={{classNames\n \"euiSideNav__heading\"\n @headingProps.className\n }}\n @size=\"xs\"\n >\n <HeadingElement>\n {{yield to=\"heading\"}}\n </HeadingElement>\n </EuiTitle>\n {{/if}}\n {{else}}\n {{#if screenReaderOnly}}\n <HeadingElement {{screenReaderOnly}}>\n {{@heading}}\n </HeadingElement>\n {{else}}\n <EuiTitle\n class={{classNames\n \"euiSideNav__heading\"\n @headingProps.className\n }}\n @size=\"xs\"\n >\n {{@heading}}\n </EuiTitle>\n {{/if}}\n {{/if}}\n {{/let}}\n {{/if}}\n <div id={{sideNavContentId}} class={{this.contentClasses}}>\n {{#each @items as |item|}}\n {{#let\n (and (not item.onClick) (not item.href) (not (not item.items)))\n as |childrenOnly|\n }}\n <EuiSideNavItem\n @selectedItem={{@selectedItem}}\n @isOpen={{isItemOpen item @selectedItem}}\n @isSelected={{and\n (not childrenOnly)\n (eq item.id item.isSelected)\n }}\n @isParent={{not (not item.items)}}\n @icon={{item.icon}}\n @onClick={{item.onClick}}\n @href={{item.href}}\n @className={{item.className}}\n @rel={{item.rel}}\n @target={{item.target}}\n @items={{item.items}}\n @depth={{0}}\n @renderItem={{item.renderItem}}\n @disabled={{item.disabled}}\n @truncate={{item.truncate}}\n @emphasize={{item.emphasize}}\n @buttonClassName={{item.buttonClassName}}\n @childrenOnly={{childrenOnly}}\n >\n {{item.name}}\n </EuiSideNavItem>\n {{/let}}\n {{/each}}\n </div>\n </nav>\n </EuiHideFor>\n {{/let}}\n </template>\n}\n"],"names":["EuiSideNavComponent","Component","mobileBreakpoints","args","contentClasses","Array","isArray","map","breakpointName","join","hasMobileVersion","length","setComponentTemplate","precompileTemplate","strictMode","scope","classNames","element","argOrDefault","randomId","or","not","EuiShowFor","EuiButtonEmpty","on","fn","optional","and","EuiSideNavItem","isItemOpen","eq","EuiHideFor","screenReaderOnly","EuiTitle"],"mappings":";;;;;;;;;;;;;;;;;;;AA+De,MAAMA,4BAA4BC,SAAU,CAAA;EACzD,IAAIC,iBAAoBA,GAAA;IACtB,OAAO,IAAI,CAACC,IAAI,CAACD,iBAAiB,IAAI,CAAC,IAAA,EAAM,GAAA,CAAI;AACnD;EAEA,IAAIE,cAAiBA,GAAA;AACnB,IAAA,IAAIF,iBAAA,GAAoBG,KAAM,CAAAC,OAAO,CAAC,IAAI,CAACJ,iBAAiB,CACxD,GAAA,IAAI,CAACA,iBAAiB,GACtB,CAAC,IAAI,CAACA,iBAAiB,CAAC;AAE5B,IAAA,OAAO,uBAAuBA,iBAC3B,CAAAK,GAAG,GAAIC,cAAA,IAAA;MACN,OAAO,CAAA,0BAAA,EAA6BA,cAAA,CAAgB,CAAA;AACtD,KACC,CAAA,CAAAC,IAAA,CAAK,KAAM,CAAA;AAChB;EAEA,IAAIC,gBAAmBA,GAAA;AACrB,IAAA,OAAO,IAAI,CAACR,iBAAiB,EAAES,MAAS,GAAA,CAAA;AAC1C;AAEA,EAAA;IAAAC,oBAAA,CAAAC,kBAAA,CAiKA,q7IAAA,EAAA;MAAAC,UAAA,EAAA,IAAA;AAAAC,MAAAA,KAAA,EAAAA,OAAA;QAAAC,UAAA;QAAAC,OAAA;QAAAC,YAAA;QAAAC,QAAA;QAAAC,EAAA;QAAAC,GAAA;oBAAAC,mBAAA;QAAAC,cAAA;QAAAC,EAAA;QAAAC,EAAA;QAAAC,QAAA;QAAAC,GAAA;QAAAC,cAAA;QAAAC,UAAA;QAAAC,EAAA;oBAAAC,mBAAA;QAAAC,gBAAA;AAAAC,QAAAA;AAAA,OAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
|
|
1
|
+
{"version":3,"file":"eui-side-nav.js","sources":["../../src/components/eui-side-nav.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { fn } from '@ember/helper';\nimport { on } from '@ember/modifier';\n\nimport optional from '@nullvoxpopuli/ember-composable-helpers/helpers/optional';\nimport { element } from 'ember-element-helper';\nimport { and, eq, not, or } from 'ember-truth-helpers';\n\nimport randomId from '../-private/random-id.ts';\nimport EuiButtonEmpty from '../components/eui-button-empty.gts';\nimport EuiHideFor from '../components/eui-hide-for.gts';\nimport EuiShowFor from '../components/eui-show-for.gts';\nimport EuiSideNavItem from '../components/eui-side-nav-item.gts';\nimport EuiTitle from '../components/eui-title.gts';\nimport argOrDefault from '../helpers/arg-or-default.ts';\nimport classNames from '../helpers/class-names.ts';\nimport isItemOpen from '../helpers/is-item-open.ts';\nimport screenReaderOnly from '../modifiers/screen-reader-only.ts';\n\nimport type { EuiHideForSignature } from '../components/eui-hide-for';\n\nexport interface Item {\n id: string;\n icon?: string;\n onClick?: () => void;\n href?: string;\n className?: string;\n rel?: string;\n target?: string;\n items?: Item[];\n depth?: number;\n name?: string;\n renderItem?: unknown;\n isSelected?: boolean;\n disabled?: boolean;\n truncate?: boolean;\n emphasize?: boolean;\n buttonClassName?: string;\n}\n\nexport interface EuiSideNavSignature {\n Element: HTMLDivElement | HTMLUListElement | HTMLElement;\n Args: {\n mobileBreakpoints?: EuiHideForSignature['Args']['sizes'];\n isOpenMobile?: boolean;\n toggleOpenOnMobile?: () => void;\n heading?: string;\n headingProps?: {\n element?: string;\n id?: string;\n className?: string;\n screenReaderOnly?: boolean;\n };\n mobileTitle?: string;\n items?: Item[];\n selectedItem?: string;\n };\n Blocks: {\n default: [Item];\n heading: [];\n };\n}\n\nexport default class EuiSideNavComponent extends Component<EuiSideNavSignature> {\n get mobileBreakpoints() {\n return this.args.mobileBreakpoints || ['xs', 's'];\n }\n\n get contentClasses() {\n let mobileBreakpoints = Array.isArray(this.mobileBreakpoints)\n ? this.mobileBreakpoints\n : [this.mobileBreakpoints];\n\n return `euiSideNav__content ${mobileBreakpoints\n .map?.((breakpointName) => {\n return `euiSideNav__contentMobile-${breakpointName}`;\n })\n .join(' ')}`;\n }\n\n get hasMobileVersion() {\n return this.mobileBreakpoints?.length > 0;\n }\n\n <template>\n {{#let\n (classNames \"euiSideNav\" (if @isOpenMobile \"euiSideNav-isOpenMobile\"))\n (element (argOrDefault @headingProps.element \"h2\"))\n (argOrDefault @headingProps.id (randomId))\n (randomId)\n (or (has-block \"heading\") (not (not @heading)))\n as |classes HeadingElement headingId sideNavContentId hasHeader|\n }}\n {{#if this.hasMobileVersion}}\n <EuiShowFor @sizes={{this.mobileBreakpoints}}>\n <nav aria-labelledby={{headingId}} class={{classes}} ...attributes>\n <HeadingElement id={{headingId}} class={{@headingProps.className}}>\n <EuiButtonEmpty\n type=\"button\"\n class=\"euiSideNav__mobileToggle\"\n @contentClasses=\"euiSideNav__mobileToggleContent\"\n @textClasses=\"euiSideNav__mobileToggleText\"\n {{on\n \"click\"\n (fn (optional @toggleOpenOnMobile) (not @isOpenMobile))\n }}\n @iconType=\"apps\"\n @iconSide=\"right\"\n aria-controls={{sideNavContentId}}\n aria-expanded={{@isOpenMobile}}\n >\n {{#if @mobileTitle}}\n {{@mobileTitle}}\n {{else if (has-block \"heading\")}}\n {{yield to=\"heading\"}}\n {{else}}\n {{@heading}}\n {{/if}}\n </EuiButtonEmpty>\n </HeadingElement>\n <div id={{sideNavContentId}} class={{this.contentClasses}}>\n {{#each @items as |item|}}\n {{#let\n (and\n (not item.onClick) (not item.href) (not (not item.items))\n )\n as |childrenOnly|\n }}\n <EuiSideNavItem\n @selectedItem={{@selectedItem}}\n @isOpen={{isItemOpen item @selectedItem}}\n @isSelected={{and\n (not childrenOnly)\n (eq item.id item.isSelected)\n }}\n @isParent={{not (not item.items)}}\n @icon={{item.icon}}\n @onClick={{item.onClick}}\n @href={{item.href}}\n @className={{item.className}}\n @rel={{item.rel}}\n @target={{item.target}}\n @items={{item.items}}\n @depth={{0}}\n @renderItem={{item.renderItem}}\n @disabled={{item.disabled}}\n @truncate={{item.truncate}}\n @emphasize={{item.emphasize}}\n @buttonClassName={{item.buttonClassName}}\n @childrenOnly={{childrenOnly}}\n >\n {{item.name}}\n </EuiSideNavItem>\n {{/let}}\n {{/each}}\n </div>\n </nav>\n </EuiShowFor>\n {{/if}}\n\n <EuiHideFor @sizes={{this.mobileBreakpoints}}>\n <nav\n aria-labelledby={{if hasHeader headingId}}\n class={{classes}}\n ...attributes\n >\n {{#if hasHeader}}\n {{#let\n (argOrDefault @headingProps.screenReaderOnly false)\n as |shouldScreenReader|\n }}\n {{#if (has-block \"heading\")}}\n {{#if shouldScreenReader}}\n <HeadingElement {{screenReaderOnly}}>\n {{yield to=\"heading\"}}\n </HeadingElement>\n {{else}}\n <EuiTitle\n class={{classNames\n \"euiSideNav__heading\"\n @headingProps.className\n }}\n @size=\"xs\"\n >\n <HeadingElement>\n {{yield to=\"heading\"}}\n </HeadingElement>\n </EuiTitle>\n {{/if}}\n {{else}}\n {{#if screenReaderOnly}}\n <HeadingElement {{screenReaderOnly}}>\n {{@heading}}\n </HeadingElement>\n {{else}}\n <EuiTitle\n class={{classNames\n \"euiSideNav__heading\"\n @headingProps.className\n }}\n @size=\"xs\"\n >\n {{@heading}}\n </EuiTitle>\n {{/if}}\n {{/if}}\n {{/let}}\n {{/if}}\n <div id={{sideNavContentId}} class={{this.contentClasses}}>\n {{#each @items as |item|}}\n {{#let\n (and (not item.onClick) (not item.href) (not (not item.items)))\n as |childrenOnly|\n }}\n <EuiSideNavItem\n @selectedItem={{@selectedItem}}\n @isOpen={{isItemOpen item @selectedItem}}\n @isSelected={{and\n (not childrenOnly)\n (eq item.id item.isSelected)\n }}\n @isParent={{not (not item.items)}}\n @icon={{item.icon}}\n @onClick={{item.onClick}}\n @href={{item.href}}\n @className={{item.className}}\n @rel={{item.rel}}\n @target={{item.target}}\n @items={{item.items}}\n @depth={{0}}\n @renderItem={{item.renderItem}}\n @disabled={{item.disabled}}\n @truncate={{item.truncate}}\n @emphasize={{item.emphasize}}\n @buttonClassName={{item.buttonClassName}}\n @childrenOnly={{childrenOnly}}\n >\n {{item.name}}\n </EuiSideNavItem>\n {{/let}}\n {{/each}}\n </div>\n </nav>\n </EuiHideFor>\n {{/let}}\n </template>\n}\n"],"names":["EuiSideNavComponent","Component","mobileBreakpoints","args","contentClasses","Array","isArray","map","breakpointName","join","hasMobileVersion","length","setComponentTemplate","precompileTemplate","strictMode","scope","classNames","element","argOrDefault","randomId","or","not","EuiShowFor","EuiButtonEmpty","on","fn","optional","and","EuiSideNavItem","isItemOpen","eq","EuiHideFor","screenReaderOnly","EuiTitle"],"mappings":";;;;;;;;;;;;;;;;;;;AA+De,MAAMA,4BAA4BC,SAAU,CAAA;EACzD,IAAIC,iBAAoBA,GAAA;IACtB,OAAO,IAAI,CAACC,IAAI,CAACD,iBAAiB,IAAI,CAAC,IAAA,EAAM,GAAA,CAAI;AACnD;EAEA,IAAIE,cAAiBA,GAAA;AACnB,IAAA,IAAIF,iBAAA,GAAoBG,KAAM,CAAAC,OAAO,CAAC,IAAI,CAACJ,iBAAiB,CACxD,GAAA,IAAI,CAACA,iBAAiB,GACtB,CAAC,IAAI,CAACA,iBAAiB,CAAC;AAE5B,IAAA,OAAO,uBAAuBA,iBAC3B,CAAAK,GAAG,GAAIC,cAAA,IAAA;MACN,OAAO,CAAA,0BAAA,EAA6BA,cAAA,CAAgB,CAAA;AACtD,KACC,CAAA,CAAAC,IAAA,CAAK,KAAM,CAAA;AAChB;EAEA,IAAIC,gBAAmBA,GAAA;AACrB,IAAA,OAAO,IAAI,CAACR,iBAAiB,EAAES,MAAS,GAAA,CAAA;AAC1C;AAEA,EAAA;IAAAC,oBAAA,CAAAC,kBAAA,CAiKA,q7IAAA,EAAA;MAAAC,UAAA,EAAA,IAAA;AAAAC,MAAAA,KAAA,EAAAA,OAAA;QAAAC,UAAA;QAAAC,OAAA;QAAAC,YAAA;QAAAC,QAAA;QAAAC,EAAA;QAAAC,GAAA;oBAAAC,mBAAA;QAAAC,cAAA;QAAAC,EAAA;QAAAC,EAAA;QAAAC,QAAA;QAAAC,GAAA;QAAAC,cAAA;QAAAC,UAAA;QAAAC,EAAA;oBAAAC,mBAAA;QAAAC,gBAAA;AAAAC,QAAAA;AAAA,OAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { on } from '@ember/modifier';
|
|
2
|
-
import optional from 'ember-composable-helpers/helpers/optional';
|
|
2
|
+
import optional from '@nullvoxpopuli/ember-composable-helpers/helpers/optional';
|
|
3
3
|
import { eq } from 'ember-truth-helpers';
|
|
4
4
|
import argOrDefault from '../helpers/arg-or-default.js';
|
|
5
5
|
import classNames from '../helpers/class-names.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eui-step-horizontal.js","sources":["../../src/components/eui-step-horizontal.gts"],"sourcesContent":["import { on } from '@ember/modifier';\n\nimport optional from 'ember-composable-helpers/helpers/optional';\nimport { eq } from 'ember-truth-helpers';\n\nimport argOrDefault from '../helpers/arg-or-default.ts';\nimport classNames from '../helpers/class-names.ts';\nimport EuiStepNumber from './eui-step-number.gts';\n\nimport type { EuiStepNumberSignature } from './eui-step-number';\nimport type { TemplateOnlyComponent } from '@ember/component/template-only';\n\nexport interface EuiStepHorizontalSignature {\n Element: HTMLButtonElement;\n Args: {\n /**\n * The title of the step\n */\n title?: string;\n /**\n * The number of the step\n */\n step?: number;\n /**\n * Whether or not the step is selected\n */\n isSelected?: boolean;\n /**\n * Whether or not the step is complete\n */\n isComplete?: boolean;\n /**\n * Whether or not the step is disabled\n */\n disabled?: boolean;\n /**\n * The status of the step\n */\n status?: EuiStepNumberSignature['Args']['status'];\n /**\n * A callback for when the step is clicked\n */\n onStepClick?: (event: MouseEvent) => void;\n };\n}\n\nconst EuiStepHorizontal: TemplateOnlyComponent<EuiStepHorizontalSignature> =\n <template>\n {{#let\n (if\n @disabled\n \"disabled\"\n (if\n @isComplete\n \"complete\"\n (if @isSelected \"current\" (argOrDefault @status \"incomplete\"))\n )\n )\n as |status|\n }}\n <li\n class=\"euiStepHorizontal__item\"\n aria-current={{if @isSelected \"step\"}}\n >\n <button\n type=\"button\"\n class={{classNames\n \"euiStepHorizontal\"\n (if (eq status \"current\") \"euiStepHorizontal-isSelected\")\n (if (eq status \"complete\") \"euiStepHorizontal-isComplete\")\n (if (eq status \"incomplete\") \"euiStepHorizontal-isIncomplete\")\n (if (eq status \"disabled\") \"euiStepHorizontal-isDisabled\")\n }}\n title={{@title}}\n disabled={{@disabled}}\n ...attributes\n {{on \"click\" (optional @onStepClick)}}\n >\n <EuiStepNumber\n class=\"euiStepHorizontal__number\"\n {{!@glint-expect-error}}\n @status={{status}}\n @number={{@step}}\n />\n <span class=\"euiStepHorizontal__title\">\n {{@title}}\n </span>\n </button>\n </li>\n {{/let}}\n </template>;\n\nexport default EuiStepHorizontal;\n"],"names":["EuiStepHorizontal","setComponentTemplate","precompileTemplate","strictMode","scope","argOrDefault","classNames","eq","on","optional","EuiStepNumber","templateOnly"],"mappings":";;;;;;;;;;AA8CA,MAAMA,iBACJ,GAAAC,oBAAA,CAAAC,kBAAA,CA2CA,g7BAAA,EAAA;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;IAAAC,YAAA;IAAAC,UAAA;IAAAC,EAAA;IAAAC,EAAA;IAAAC,QAAA;AAAAC,IAAAA;AAAA,GAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
|
|
1
|
+
{"version":3,"file":"eui-step-horizontal.js","sources":["../../src/components/eui-step-horizontal.gts"],"sourcesContent":["import { on } from '@ember/modifier';\n\nimport optional from '@nullvoxpopuli/ember-composable-helpers/helpers/optional';\nimport { eq } from 'ember-truth-helpers';\n\nimport argOrDefault from '../helpers/arg-or-default.ts';\nimport classNames from '../helpers/class-names.ts';\nimport EuiStepNumber from './eui-step-number.gts';\n\nimport type { EuiStepNumberSignature } from './eui-step-number';\nimport type { TemplateOnlyComponent } from '@ember/component/template-only';\n\nexport interface EuiStepHorizontalSignature {\n Element: HTMLButtonElement;\n Args: {\n /**\n * The title of the step\n */\n title?: string;\n /**\n * The number of the step\n */\n step?: number;\n /**\n * Whether or not the step is selected\n */\n isSelected?: boolean;\n /**\n * Whether or not the step is complete\n */\n isComplete?: boolean;\n /**\n * Whether or not the step is disabled\n */\n disabled?: boolean;\n /**\n * The status of the step\n */\n status?: EuiStepNumberSignature['Args']['status'];\n /**\n * A callback for when the step is clicked\n */\n onStepClick?: (event: MouseEvent) => void;\n };\n}\n\nconst EuiStepHorizontal: TemplateOnlyComponent<EuiStepHorizontalSignature> =\n <template>\n {{#let\n (if\n @disabled\n \"disabled\"\n (if\n @isComplete\n \"complete\"\n (if @isSelected \"current\" (argOrDefault @status \"incomplete\"))\n )\n )\n as |status|\n }}\n <li\n class=\"euiStepHorizontal__item\"\n aria-current={{if @isSelected \"step\"}}\n >\n <button\n type=\"button\"\n class={{classNames\n \"euiStepHorizontal\"\n (if (eq status \"current\") \"euiStepHorizontal-isSelected\")\n (if (eq status \"complete\") \"euiStepHorizontal-isComplete\")\n (if (eq status \"incomplete\") \"euiStepHorizontal-isIncomplete\")\n (if (eq status \"disabled\") \"euiStepHorizontal-isDisabled\")\n }}\n title={{@title}}\n disabled={{@disabled}}\n ...attributes\n {{on \"click\" (optional @onStepClick)}}\n >\n <EuiStepNumber\n class=\"euiStepHorizontal__number\"\n {{!@glint-expect-error}}\n @status={{status}}\n @number={{@step}}\n />\n <span class=\"euiStepHorizontal__title\">\n {{@title}}\n </span>\n </button>\n </li>\n {{/let}}\n </template>;\n\nexport default EuiStepHorizontal;\n"],"names":["EuiStepHorizontal","setComponentTemplate","precompileTemplate","strictMode","scope","argOrDefault","classNames","eq","on","optional","EuiStepNumber","templateOnly"],"mappings":";;;;;;;;;;AA8CA,MAAMA,iBACJ,GAAAC,oBAAA,CAAAC,kBAAA,CA2CA,g7BAAA,EAAA;EAAAC,UAAA,EAAA,IAAA;AAAAC,EAAAA,KAAA,EAAAA,OAAA;IAAAC,YAAA;IAAAC,UAAA;IAAAC,EAAA;IAAAC,EAAA;IAAAC,QAAA;AAAAC,IAAAA;AAAA,GAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
|
|
@@ -18,15 +18,15 @@ class AbsoluteTab extends Component {
|
|
|
18
18
|
static {
|
|
19
19
|
g(this.prototype, "isTextInvalid", [tracked]);
|
|
20
20
|
}
|
|
21
|
-
#isTextInvalid = (i(this, "isTextInvalid"),
|
|
21
|
+
#isTextInvalid = (i(this, "isTextInvalid"), void 0);
|
|
22
22
|
static {
|
|
23
23
|
g(this.prototype, "textInputValue", [tracked]);
|
|
24
24
|
}
|
|
25
|
-
#textInputValue = (i(this, "textInputValue"),
|
|
25
|
+
#textInputValue = (i(this, "textInputValue"), void 0);
|
|
26
26
|
static {
|
|
27
27
|
g(this.prototype, "valueAsMoment", [tracked]);
|
|
28
28
|
}
|
|
29
|
-
#valueAsMoment = (i(this, "valueAsMoment"),
|
|
29
|
+
#valueAsMoment = (i(this, "valueAsMoment"), void 0);
|
|
30
30
|
constructor(owner, args) {
|
|
31
31
|
super(owner, args);
|
|
32
32
|
const parsedValue = dateMath.parse(this.args.value, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"absolute-tab.js","sources":["../../../../src/components/eui-super-date-picker/date-popover/absolute-tab.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { hash } from '@ember/helper';\nimport { on } from '@ember/modifier';\nimport { action } from '@ember/object';\nimport type Owner from '@ember/owner';\n\nimport dateMath from '@elastic/datemath';\nimport moment from 'moment';\n\nimport EuiFieldText from '../../eui-field-text.gts';\nimport EuiFormLabel from '../../eui-form-label.gts';\nimport EuiFormRow from '../../eui-form-row.gts';\nimport EuiI18n from '../../eui-i18n.gts';\nimport DatetimePicker from './datetime-picker.gts';\n\nimport type { LocaleSpecifier, Moment } from 'moment';\n\ninterface AbsoluteTabArgs {\n dateFormat?: string;\n timeFormat?: string;\n locale?: LocaleSpecifier;\n value: string;\n onChange: (value: string, event?: Event) => void;\n roundUp: boolean;\n position: 'start' | 'end';\n labelPrefix: string;\n utcOffset?: number;\n}\n\nexport interface AbsoluteTabSignature {\n Args: AbsoluteTabArgs;\n}\n\nexport default class AbsoluteTab extends Component<AbsoluteTabSignature> {\n @tracked isTextInvalid: boolean;\n @tracked textInputValue: string;\n @tracked valueAsMoment: Moment | null;\n\n constructor(owner: Owner, args: AbsoluteTabArgs) {\n super(owner, args);\n\n const parsedValue = dateMath.parse(this.args.value, {\n roundUp: this.args.roundUp\n });\n const valueAsMoment =\n parsedValue && parsedValue.isValid() ? parsedValue : moment();\n\n const textInputValue = valueAsMoment\n .locale(this.args.locale || 'en')\n .format(this.args.dateFormat);\n\n this.isTextInvalid = false;\n this.textInputValue = textInputValue;\n this.valueAsMoment = valueAsMoment;\n }\n\n @action\n handleChange(date: any, e: Event) {\n if (date === null) {\n return;\n }\n\n this.args.onChange(date.toISOString(), e);\n\n const valueAsMoment = moment(date);\n\n this.valueAsMoment = valueAsMoment;\n this.textInputValue = valueAsMoment.format(this.args.dateFormat);\n this.isTextInvalid = false;\n }\n\n @action\n handleTextChange(e: Event) {\n const valueAsMoment = moment(\n (e.target as HTMLInputElement).value,\n this.args.dateFormat,\n true\n );\n const dateIsValid = valueAsMoment.isValid();\n\n if (dateIsValid) {\n this.args.onChange(valueAsMoment.toISOString(), e);\n }\n\n this.textInputValue = (e.target as HTMLInputElement).value;\n this.isTextInvalid = !dateIsValid;\n this.valueAsMoment = dateIsValid ? valueAsMoment : null;\n }\n\n // `change` event on an input gets called after a `blur`\n // blur the input and focus again to trigger the change event\n // and call `handleTextChange` with the updated value\n // and keep the field focused\n @action\n triggerChange(e: Event) {\n (e.target as HTMLInputElement).blur();\n (e.target as HTMLInputElement).focus();\n }\n\n <template>\n <div>\n <DatetimePicker\n @onChange={{this.handleChange}}\n @dateFormat={{@dateFormat}}\n @selected={{this.valueAsMoment}}\n />\n <EuiI18n\n @token=\"euiAbsoluteTab.dateFormatError\"\n @default=\"Expected format: {dateFormat}\"\n @values={{hash dateFormat=@dateFormat}}\n as |Token|\n >\n <Token as |dateFormatError|>\n <EuiFormRow\n class=\"euiSuperDatePicker__absoluteDateFormRow\"\n @isInvalid={{this.isTextInvalid}}\n @error={{if this.isTextInvalid dateFormatError}}\n >\n <EuiFieldText\n @isInvalid={{this.isTextInvalid}}\n @value={{this.textInputValue}}\n @compressed={{true}}\n {{on \"input\" this.triggerChange}}\n {{on \"change\" this.handleTextChange}}\n >\n <:prepend as |classes|>\n <EuiFormLabel class={{classes}}>\n {{@labelPrefix}}\n </EuiFormLabel>\n </:prepend>\n </EuiFieldText>\n </EuiFormRow>\n </Token>\n </EuiI18n>\n </div>\n </template>\n}\n"],"names":["AbsoluteTab","Component","g","prototype","tracked","i","void 0","constructor","owner","args","parsedValue","dateMath","parse","value","roundUp","valueAsMoment","isValid","moment","textInputValue","locale","format","dateFormat","isTextInvalid","handleChange","date","e","onChange","toISOString","n","action","handleTextChange","target","dateIsValid","triggerChange","blur","focus","setComponentTemplate","precompileTemplate","strictMode","scope","DatetimePicker","EuiI18n","hash","EuiFormRow","EuiFieldText","on","EuiFormLabel"],"mappings":";;;;;;;;;;;;;;;;AAkCe,MAAMA,oBAAoBC,SAAU,CAAA;AAAA,EAAA;IAAAC,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,eAAA,EAAA,CAChDC,OAAA,CAAA,CAAA;AAAA;AAAA,EAAA,cAAA,IAAAC,CAAA,CAAA,IAAA,EAAA,eAAA,CAAA,EAAAC,
|
|
1
|
+
{"version":3,"file":"absolute-tab.js","sources":["../../../../src/components/eui-super-date-picker/date-popover/absolute-tab.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { hash } from '@ember/helper';\nimport { on } from '@ember/modifier';\nimport { action } from '@ember/object';\nimport type Owner from '@ember/owner';\n\nimport dateMath from '@elastic/datemath';\nimport moment from 'moment';\n\nimport EuiFieldText from '../../eui-field-text.gts';\nimport EuiFormLabel from '../../eui-form-label.gts';\nimport EuiFormRow from '../../eui-form-row.gts';\nimport EuiI18n from '../../eui-i18n.gts';\nimport DatetimePicker from './datetime-picker.gts';\n\nimport type { LocaleSpecifier, Moment } from 'moment';\n\ninterface AbsoluteTabArgs {\n dateFormat?: string;\n timeFormat?: string;\n locale?: LocaleSpecifier;\n value: string;\n onChange: (value: string, event?: Event) => void;\n roundUp: boolean;\n position: 'start' | 'end';\n labelPrefix: string;\n utcOffset?: number;\n}\n\nexport interface AbsoluteTabSignature {\n Args: AbsoluteTabArgs;\n}\n\nexport default class AbsoluteTab extends Component<AbsoluteTabSignature> {\n @tracked isTextInvalid: boolean;\n @tracked textInputValue: string;\n @tracked valueAsMoment: Moment | null;\n\n constructor(owner: Owner, args: AbsoluteTabArgs) {\n super(owner, args);\n\n const parsedValue = dateMath.parse(this.args.value, {\n roundUp: this.args.roundUp\n });\n const valueAsMoment =\n parsedValue && parsedValue.isValid() ? parsedValue : moment();\n\n const textInputValue = valueAsMoment\n .locale(this.args.locale || 'en')\n .format(this.args.dateFormat);\n\n this.isTextInvalid = false;\n this.textInputValue = textInputValue;\n this.valueAsMoment = valueAsMoment;\n }\n\n @action\n handleChange(date: any, e: Event) {\n if (date === null) {\n return;\n }\n\n this.args.onChange(date.toISOString(), e);\n\n const valueAsMoment = moment(date);\n\n this.valueAsMoment = valueAsMoment;\n this.textInputValue = valueAsMoment.format(this.args.dateFormat);\n this.isTextInvalid = false;\n }\n\n @action\n handleTextChange(e: Event) {\n const valueAsMoment = moment(\n (e.target as HTMLInputElement).value,\n this.args.dateFormat,\n true\n );\n const dateIsValid = valueAsMoment.isValid();\n\n if (dateIsValid) {\n this.args.onChange(valueAsMoment.toISOString(), e);\n }\n\n this.textInputValue = (e.target as HTMLInputElement).value;\n this.isTextInvalid = !dateIsValid;\n this.valueAsMoment = dateIsValid ? valueAsMoment : null;\n }\n\n // `change` event on an input gets called after a `blur`\n // blur the input and focus again to trigger the change event\n // and call `handleTextChange` with the updated value\n // and keep the field focused\n @action\n triggerChange(e: Event) {\n (e.target as HTMLInputElement).blur();\n (e.target as HTMLInputElement).focus();\n }\n\n <template>\n <div>\n <DatetimePicker\n @onChange={{this.handleChange}}\n @dateFormat={{@dateFormat}}\n @selected={{this.valueAsMoment}}\n />\n <EuiI18n\n @token=\"euiAbsoluteTab.dateFormatError\"\n @default=\"Expected format: {dateFormat}\"\n @values={{hash dateFormat=@dateFormat}}\n as |Token|\n >\n <Token as |dateFormatError|>\n <EuiFormRow\n class=\"euiSuperDatePicker__absoluteDateFormRow\"\n @isInvalid={{this.isTextInvalid}}\n @error={{if this.isTextInvalid dateFormatError}}\n >\n <EuiFieldText\n @isInvalid={{this.isTextInvalid}}\n @value={{this.textInputValue}}\n @compressed={{true}}\n {{on \"input\" this.triggerChange}}\n {{on \"change\" this.handleTextChange}}\n >\n <:prepend as |classes|>\n <EuiFormLabel class={{classes}}>\n {{@labelPrefix}}\n </EuiFormLabel>\n </:prepend>\n </EuiFieldText>\n </EuiFormRow>\n </Token>\n </EuiI18n>\n </div>\n </template>\n}\n"],"names":["AbsoluteTab","Component","g","prototype","tracked","i","void 0","constructor","owner","args","parsedValue","dateMath","parse","value","roundUp","valueAsMoment","isValid","moment","textInputValue","locale","format","dateFormat","isTextInvalid","handleChange","date","e","onChange","toISOString","n","action","handleTextChange","target","dateIsValid","triggerChange","blur","focus","setComponentTemplate","precompileTemplate","strictMode","scope","DatetimePicker","EuiI18n","hash","EuiFormRow","EuiFieldText","on","EuiFormLabel"],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ import { helper } from '@ember/component/helper';
|
|
|
4
4
|
import { fn, concat } from '@ember/helper';
|
|
5
5
|
import { on } from '@ember/modifier';
|
|
6
6
|
import { action } from '@ember/object';
|
|
7
|
-
import pick from 'ember-composable-helpers/helpers/pick';
|
|
7
|
+
import pick from '@nullvoxpopuli/ember-composable-helpers/helpers/pick';
|
|
8
8
|
import { eq, not, and } from 'ember-truth-helpers';
|
|
9
9
|
import moment from 'moment';
|
|
10
10
|
import EuiFlexItem from '../../eui-flex-item.js';
|
|
@@ -27,35 +27,35 @@ class DatetimePicker extends Component {
|
|
|
27
27
|
return 0;
|
|
28
28
|
});
|
|
29
29
|
}
|
|
30
|
-
#month = (i(this, "month"),
|
|
30
|
+
#month = (i(this, "month"), void 0);
|
|
31
31
|
static {
|
|
32
32
|
g(this.prototype, "year", [tracked], function () {
|
|
33
33
|
return 0;
|
|
34
34
|
});
|
|
35
35
|
}
|
|
36
|
-
#year = (i(this, "year"),
|
|
36
|
+
#year = (i(this, "year"), void 0);
|
|
37
37
|
static {
|
|
38
38
|
g(this.prototype, "monthMoment", [tracked]);
|
|
39
39
|
}
|
|
40
|
-
#monthMoment = (i(this, "monthMoment"),
|
|
40
|
+
#monthMoment = (i(this, "monthMoment"), void 0);
|
|
41
41
|
static {
|
|
42
42
|
g(this.prototype, "offset", [tracked], function () {
|
|
43
43
|
return 0;
|
|
44
44
|
});
|
|
45
45
|
}
|
|
46
|
-
#offset = (i(this, "offset"),
|
|
46
|
+
#offset = (i(this, "offset"), void 0); // Used to style the days outside of the current month
|
|
47
47
|
static {
|
|
48
48
|
g(this.prototype, "selectedDate", [tracked]);
|
|
49
49
|
}
|
|
50
|
-
#selectedDate = (i(this, "selectedDate"),
|
|
50
|
+
#selectedDate = (i(this, "selectedDate"), void 0);
|
|
51
51
|
static {
|
|
52
52
|
g(this.prototype, "selectedTime", [tracked]);
|
|
53
53
|
}
|
|
54
|
-
#selectedTime = (i(this, "selectedTime"),
|
|
54
|
+
#selectedTime = (i(this, "selectedTime"), void 0);
|
|
55
55
|
static {
|
|
56
56
|
g(this.prototype, "today", [tracked]);
|
|
57
57
|
}
|
|
58
|
-
#today = (i(this, "today"),
|
|
58
|
+
#today = (i(this, "today"), void 0);
|
|
59
59
|
momentConfig;
|
|
60
60
|
constructor(owner, args) {
|
|
61
61
|
super(owner, args);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"datetime-picker.js","sources":["../../../../src/components/eui-super-date-picker/date-popover/datetime-picker.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { helper } from '@ember/component/helper';\nimport { concat, fn } from '@ember/helper';\nimport { on } from '@ember/modifier';\nimport { action } from '@ember/object';\nimport type Owner from '@ember/owner';\n\nimport pick from 'ember-composable-helpers/helpers/pick';\nimport { and, eq, not } from 'ember-truth-helpers';\nimport moment from 'moment';\n\nimport EuiFlexItem from '../../eui-flex-item.gts';\nimport EuiFormControlLayout from '../../eui-form-control-layout.gts';\nimport EuiIcon from '../../eui-icon.gts';\nimport EuiSelect from '../../eui-select.gts';\n\nconst isSameDayHelper = helper(function ([year, month, day, selectedDate]: [\n number,\n number,\n number,\n moment.Moment | undefined\n]) {\n if (!selectedDate) {\n return false;\n }\n\n return (\n selectedDate.year() === year &&\n selectedDate.month() === month &&\n selectedDate.date() === day\n );\n});\n\ninterface DatetimePickerArgs {\n selected?: moment.Moment | null;\n onChange: (value: string | Date | moment.Moment, e: Event) => void;\n iconClasses?: string;\n dateFormat?: string;\n}\n\ninterface Day {\n day: number;\n month?: number;\n year?: number;\n isOutside?: boolean;\n}\n\ninterface DatetimePickerSignature {\n Args: DatetimePickerArgs;\n}\n\nexport default class DatetimePicker extends Component<DatetimePickerSignature> {\n @tracked month: number = 0;\n @tracked year: number = 0;\n @tracked monthMoment: moment.Moment;\n // Used to style the days outside of the current month\n @tracked offset: number = 0;\n @tracked selectedDate?: moment.Moment;\n @tracked selectedTime?: string;\n @tracked today: moment.Moment;\n\n momentConfig: {\n year: number;\n month: number;\n day: number;\n hour: number;\n minute: number;\n second: number;\n millisecond: number;\n };\n\n constructor(owner: Owner, args: DatetimePickerArgs) {\n super(owner, args);\n\n if (this.args.selected) {\n this.monthMoment = this.args.selected;\n this.selectedDate = this.args.selected;\n } else {\n this.monthMoment = moment([this.year, this.month]);\n }\n\n this.momentConfig = {\n year: this.monthMoment.year(),\n month: this.monthMoment.month(),\n day: this.monthMoment.date(),\n hour: this.monthMoment.hour(),\n minute: this.monthMoment.minute(),\n second: 0,\n millisecond: 0\n };\n\n this.month = this.momentConfig.month;\n this.year = this.momentConfig.year;\n\n let hour = this.momentConfig.hour;\n let minute = this.momentConfig.minute;\n let hourStr = hour < 10 ? `0${hour}` : hour;\n let minuteStr = minute < 10 ? `0${minute}` : minute;\n\n this.selectedTime = `${hourStr}:${minuteStr}`;\n\n this.offset = this.monthMoment.clone().startOf('month').day();\n\n this.today = moment();\n }\n\n get monthNames() {\n return moment.months().map((month, i) => {\n return {\n text: month,\n value: i\n };\n });\n }\n\n get years() {\n return Array.from(Array(15).keys()).map((_, i) => {\n // Create a list of years +/- 7 from the current year\n let year = this.year - 7 + i;\n\n return {\n text: year,\n value: year\n };\n });\n }\n\n get times() {\n const timesArray = [];\n\n // Create entries every 30 minutes\n for (let i = 0; i < 24; i++) {\n let hour = i < 10 ? `0${i}` : i;\n\n timesArray.push(`${hour}:00`, `${hour}:30`);\n }\n\n return timesArray;\n }\n\n get days() {\n // Used for showing days outside of the current month\n // const prevMonth = moment([this.year, this.month - 1]);\n const prevMonth = this.monthMoment.clone().subtract(1, 'month');\n const nextMonth = this.monthMoment.clone().add(1, 'month');\n const offset = this.offset;\n let daysInMonth = this.monthMoment.daysInMonth();\n let daysInPrevMonth = prevMonth.daysInMonth();\n\n const daysArray = [];\n\n for (let i = 0; i < daysInMonth; i++) {\n daysArray[i] = {\n day: i + 1\n };\n }\n\n // Fill the previous and next month days\n for (let i = 0, d = daysInPrevMonth; i < offset; i++, d--) {\n daysArray.unshift({\n day: d,\n month: prevMonth.month(),\n year: prevMonth.year(),\n isOutside: true\n });\n }\n\n // All months fit within 6 weeks (42 days)\n for (let d = 1, i = daysInMonth + offset; i < 42; d++, i++) {\n daysArray.push({\n day: d,\n month: nextMonth.month(),\n year: nextMonth.year(),\n isOutside: true\n });\n }\n\n // All months fit within 6 weeks (42 days)\n // but depending on the starting day, one week may not be needed\n const daysMatrix = [];\n const weeks = daysInMonth + offset > 35 ? 6 : 5;\n\n for (let i = 0; i < weeks; i++) {\n daysMatrix[i] = daysArray.slice(i * 7, i * 7 + 7);\n }\n\n return daysMatrix;\n }\n\n updateDate() {\n this.year = this.monthMoment.year();\n this.month = this.monthMoment.month();\n this.offset = this.monthMoment.clone().startOf('month').day();\n }\n\n @action\n selectTime(time: string, e: Event) {\n this.selectedTime = time;\n\n const [hour, minute] = time.split(':');\n\n this.momentConfig.hour = parseInt(hour!);\n this.momentConfig.minute = parseInt(minute!);\n this.momentConfig.second = 0;\n this.momentConfig.millisecond = 0;\n this.selectedDate = moment(this.momentConfig);\n this.args.onChange(this.selectedDate, e);\n }\n\n @action\n selectDate(day: Day, e: Event) {\n // Only outside days will have year/month\n this.momentConfig.year = day.year || this.year;\n this.momentConfig.month = day.month || this.month;\n this.momentConfig.day = day.day;\n this.selectedDate = moment(this.momentConfig);\n this.args.onChange(this.selectedDate, e);\n\n // Update the state to show the selected month properly\n if (day.isOutside && day.month && day.year) {\n this.monthMoment.month(day.month);\n this.monthMoment.year(day.year);\n this.updateDate();\n }\n }\n\n @action\n setYear(year: string) {\n this.year = parseInt(year);\n }\n\n @action\n setMonth(month: string) {\n this.monthMoment.month(parseInt(month));\n this.updateDate();\n }\n\n @action\n increaseMonth() {\n this.monthMoment.add(1, 'month');\n this.updateDate();\n }\n\n @action\n decreaseMonth() {\n this.monthMoment.subtract(1, 'month');\n this.updateDate();\n }\n\n <template>\n <div class=\"euiDatePicker euiDatePicker--inline\">\n <EuiFormControlLayout>\n <div class=\"react-datepicker\">\n <button\n type=\"button\"\n class=\"react-datepicker__navigation react-datepicker__navigation--previous\"\n aria-label=\"Previous month\"\n {{on \"click\" this.decreaseMonth}}\n >\n <EuiIcon @iconClasses=\"euiButtonIcon__icon\" @type=\"arrowLeft\" />\n </button>\n <button\n type=\"button\"\n class=\"react-datepicker__navigation react-datepicker__navigation--next\"\n aria-label=\"Next month\"\n {{on \"click\" this.increaseMonth}}\n >\n <EuiIcon\n @iconClasses=\"euiButtonIcon__icon {{@iconClasses}}\"\n @type=\"arrowRight\"\n />\n </button>\n <div class=\"react-datepicker__month-container\">\n <div class=\"react-datepicker__header\">\n <div\n class=\"react-datepicker__header__dropdown react-datepicker__header__dropdown--scroll\"\n >\n <div\n class=\"react-datepicker__month-dropdown-container react-datepicker__month-dropdown-container--scroll\"\n >\n {{!template-lint-disable}}\n <div\n class=\"react-datepicker__month-read-view\"\n style=\"padding: 0;\"\n >\n <EuiFlexItem @grow={{1}}>\n <EuiSelect\n @compressed={{true}}\n @value={{this.month}}\n @options={{this.monthNames}}\n {{on \"change\" (pick \"target.value\" this.setMonth)}}\n />\n </EuiFlexItem>\n </div>\n </div>\n <div\n class=\"react-datepicker__year-dropdown-container react-datepicker__year-dropdown-container--scroll\"\n >\n {{!template-lint-disable}}\n <div\n class=\"react-datepicker__year-read-view\"\n style=\"padding: 0;\"\n >\n <EuiFlexItem @grow={{1}}>\n <EuiSelect\n @compressed={{true}}\n @value={{this.year}}\n @options={{this.years}}\n {{on \"change\" (pick \"target.value\" this.setYear)}}\n />\n </EuiFlexItem>\n </div>\n </div>\n </div>\n <div class=\"react-datepicker__day-names\">\n <div class=\"react-datepicker__day-name\">Su</div>\n <div class=\"react-datepicker__day-name\">Mo</div>\n <div class=\"react-datepicker__day-name\">Tu</div>\n <div class=\"react-datepicker__day-name\">We</div>\n <div class=\"react-datepicker__day-name\">Th</div>\n <div class=\"react-datepicker__day-name\">Fr</div>\n <div class=\"react-datepicker__day-name\">Sa</div>\n </div>\n </div>\n\n <div\n class=\"react-datepicker__month react-datepicker__month--accessible\"\n >\n {{#each this.days as |days|}}\n <div class=\"react-datepicker__week\">\n {{#each days as |day|}}\n <div\n role=\"button\"\n class={{concat\n \"react-datepicker__day\"\n (if\n (and\n (not day.isOutside)\n (isSameDayHelper\n this.year this.month day.day this.selectedDate\n )\n )\n \" react-datepicker__day--selected\"\n )\n (if\n (isSameDayHelper\n this.year this.month day.day this.today\n )\n \" react-datepicker__day--today\"\n )\n (if\n day.isOutside \" react-datepicker__day--outside-month\"\n )\n }}\n {{on \"click\" (fn this.selectDate day)}}\n >\n <div class=\"react-datepicker__day-text\">{{day.day}}</div>\n </div>\n {{/each}}\n </div>\n {{/each}}\n </div>\n </div>\n\n <div class=\"react-datepicker__time-container\">\n <div class=\"react-datepicker__time\">\n <div\n class=\"react-datepicker__time-box react-datepicker__time-box--accessible\"\n >\n <ul class=\"react-datepicker__time-list\">\n {{#each this.times as |time|}}\n <li\n role=\"option\"\n class={{concat\n \"react-datepicker__time-list-item\"\n (if\n (eq time this.selectedTime)\n \" react-datepicker__time-list-item--selected\"\n )\n }}\n {{on \"click\" (fn this.selectTime time)}}\n >\n {{time}}\n </li>\n {{/each}}\n </ul>\n </div>\n </div>\n </div>\n </div>\n </EuiFormControlLayout>\n </div>\n </template>\n}\n"],"names":["isSameDayHelper","helper","year","month","day","selectedDate","date","DatetimePicker","Component","g","prototype","tracked","i","void 0","momentConfig","constructor","owner","args","selected","monthMoment","moment","hour","minute","second","millisecond","hourStr","minuteStr","selectedTime","offset","clone","startOf","today","monthNames","months","map","text","value","years","Array","from","keys","_","times","timesArray","push","days","prevMonth","subtract","nextMonth","add","daysInMonth","daysInPrevMonth","daysArray","d","unshift","isOutside","daysMatrix","weeks","slice","updateDate","selectTime","time","e","split","parseInt","onChange","n","action","selectDate","setYear","setMonth","increaseMonth","decreaseMonth","setComponentTemplate","precompileTemplate","strictMode","scope","EuiFormControlLayout","on","EuiIcon","EuiFlexItem","EuiSelect","pick","concat","and","not","fn","eq"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"datetime-picker.js","sources":["../../../../src/components/eui-super-date-picker/date-popover/datetime-picker.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { helper } from '@ember/component/helper';\nimport { concat, fn } from '@ember/helper';\nimport { on } from '@ember/modifier';\nimport { action } from '@ember/object';\nimport type Owner from '@ember/owner';\n\nimport pick from '@nullvoxpopuli/ember-composable-helpers/helpers/pick';\nimport { and, eq, not } from 'ember-truth-helpers';\nimport moment from 'moment';\n\nimport EuiFlexItem from '../../eui-flex-item.gts';\nimport EuiFormControlLayout from '../../eui-form-control-layout.gts';\nimport EuiIcon from '../../eui-icon.gts';\nimport EuiSelect from '../../eui-select.gts';\n\nconst isSameDayHelper = helper(function ([year, month, day, selectedDate]: [\n number,\n number,\n number,\n moment.Moment | undefined\n]) {\n if (!selectedDate) {\n return false;\n }\n\n return (\n selectedDate.year() === year &&\n selectedDate.month() === month &&\n selectedDate.date() === day\n );\n});\n\ninterface DatetimePickerArgs {\n selected?: moment.Moment | null;\n onChange: (value: string | Date | moment.Moment, e: Event) => void;\n iconClasses?: string;\n dateFormat?: string;\n}\n\ninterface Day {\n day: number;\n month?: number;\n year?: number;\n isOutside?: boolean;\n}\n\ninterface DatetimePickerSignature {\n Args: DatetimePickerArgs;\n}\n\nexport default class DatetimePicker extends Component<DatetimePickerSignature> {\n @tracked month: number = 0;\n @tracked year: number = 0;\n @tracked monthMoment: moment.Moment;\n // Used to style the days outside of the current month\n @tracked offset: number = 0;\n @tracked selectedDate?: moment.Moment;\n @tracked selectedTime?: string;\n @tracked today: moment.Moment;\n\n momentConfig: {\n year: number;\n month: number;\n day: number;\n hour: number;\n minute: number;\n second: number;\n millisecond: number;\n };\n\n constructor(owner: Owner, args: DatetimePickerArgs) {\n super(owner, args);\n\n if (this.args.selected) {\n this.monthMoment = this.args.selected;\n this.selectedDate = this.args.selected;\n } else {\n this.monthMoment = moment([this.year, this.month]);\n }\n\n this.momentConfig = {\n year: this.monthMoment.year(),\n month: this.monthMoment.month(),\n day: this.monthMoment.date(),\n hour: this.monthMoment.hour(),\n minute: this.monthMoment.minute(),\n second: 0,\n millisecond: 0\n };\n\n this.month = this.momentConfig.month;\n this.year = this.momentConfig.year;\n\n let hour = this.momentConfig.hour;\n let minute = this.momentConfig.minute;\n let hourStr = hour < 10 ? `0${hour}` : hour;\n let minuteStr = minute < 10 ? `0${minute}` : minute;\n\n this.selectedTime = `${hourStr}:${minuteStr}`;\n\n this.offset = this.monthMoment.clone().startOf('month').day();\n\n this.today = moment();\n }\n\n get monthNames() {\n return moment.months().map((month, i) => {\n return {\n text: month,\n value: i\n };\n });\n }\n\n get years() {\n return Array.from(Array(15).keys()).map((_, i) => {\n // Create a list of years +/- 7 from the current year\n let year = this.year - 7 + i;\n\n return {\n text: year,\n value: year\n };\n });\n }\n\n get times() {\n const timesArray = [];\n\n // Create entries every 30 minutes\n for (let i = 0; i < 24; i++) {\n let hour = i < 10 ? `0${i}` : i;\n\n timesArray.push(`${hour}:00`, `${hour}:30`);\n }\n\n return timesArray;\n }\n\n get days() {\n // Used for showing days outside of the current month\n // const prevMonth = moment([this.year, this.month - 1]);\n const prevMonth = this.monthMoment.clone().subtract(1, 'month');\n const nextMonth = this.monthMoment.clone().add(1, 'month');\n const offset = this.offset;\n let daysInMonth = this.monthMoment.daysInMonth();\n let daysInPrevMonth = prevMonth.daysInMonth();\n\n const daysArray = [];\n\n for (let i = 0; i < daysInMonth; i++) {\n daysArray[i] = {\n day: i + 1\n };\n }\n\n // Fill the previous and next month days\n for (let i = 0, d = daysInPrevMonth; i < offset; i++, d--) {\n daysArray.unshift({\n day: d,\n month: prevMonth.month(),\n year: prevMonth.year(),\n isOutside: true\n });\n }\n\n // All months fit within 6 weeks (42 days)\n for (let d = 1, i = daysInMonth + offset; i < 42; d++, i++) {\n daysArray.push({\n day: d,\n month: nextMonth.month(),\n year: nextMonth.year(),\n isOutside: true\n });\n }\n\n // All months fit within 6 weeks (42 days)\n // but depending on the starting day, one week may not be needed\n const daysMatrix = [];\n const weeks = daysInMonth + offset > 35 ? 6 : 5;\n\n for (let i = 0; i < weeks; i++) {\n daysMatrix[i] = daysArray.slice(i * 7, i * 7 + 7);\n }\n\n return daysMatrix;\n }\n\n updateDate() {\n this.year = this.monthMoment.year();\n this.month = this.monthMoment.month();\n this.offset = this.monthMoment.clone().startOf('month').day();\n }\n\n @action\n selectTime(time: string, e: Event) {\n this.selectedTime = time;\n\n const [hour, minute] = time.split(':');\n\n this.momentConfig.hour = parseInt(hour!);\n this.momentConfig.minute = parseInt(minute!);\n this.momentConfig.second = 0;\n this.momentConfig.millisecond = 0;\n this.selectedDate = moment(this.momentConfig);\n this.args.onChange(this.selectedDate, e);\n }\n\n @action\n selectDate(day: Day, e: Event) {\n // Only outside days will have year/month\n this.momentConfig.year = day.year || this.year;\n this.momentConfig.month = day.month || this.month;\n this.momentConfig.day = day.day;\n this.selectedDate = moment(this.momentConfig);\n this.args.onChange(this.selectedDate, e);\n\n // Update the state to show the selected month properly\n if (day.isOutside && day.month && day.year) {\n this.monthMoment.month(day.month);\n this.monthMoment.year(day.year);\n this.updateDate();\n }\n }\n\n @action\n setYear(year: string) {\n this.year = parseInt(year);\n }\n\n @action\n setMonth(month: string) {\n this.monthMoment.month(parseInt(month));\n this.updateDate();\n }\n\n @action\n increaseMonth() {\n this.monthMoment.add(1, 'month');\n this.updateDate();\n }\n\n @action\n decreaseMonth() {\n this.monthMoment.subtract(1, 'month');\n this.updateDate();\n }\n\n <template>\n <div class=\"euiDatePicker euiDatePicker--inline\">\n <EuiFormControlLayout>\n <div class=\"react-datepicker\">\n <button\n type=\"button\"\n class=\"react-datepicker__navigation react-datepicker__navigation--previous\"\n aria-label=\"Previous month\"\n {{on \"click\" this.decreaseMonth}}\n >\n <EuiIcon @iconClasses=\"euiButtonIcon__icon\" @type=\"arrowLeft\" />\n </button>\n <button\n type=\"button\"\n class=\"react-datepicker__navigation react-datepicker__navigation--next\"\n aria-label=\"Next month\"\n {{on \"click\" this.increaseMonth}}\n >\n <EuiIcon\n @iconClasses=\"euiButtonIcon__icon {{@iconClasses}}\"\n @type=\"arrowRight\"\n />\n </button>\n <div class=\"react-datepicker__month-container\">\n <div class=\"react-datepicker__header\">\n <div\n class=\"react-datepicker__header__dropdown react-datepicker__header__dropdown--scroll\"\n >\n <div\n class=\"react-datepicker__month-dropdown-container react-datepicker__month-dropdown-container--scroll\"\n >\n {{!template-lint-disable}}\n <div\n class=\"react-datepicker__month-read-view\"\n style=\"padding: 0;\"\n >\n <EuiFlexItem @grow={{1}}>\n <EuiSelect\n @compressed={{true}}\n @value={{this.month}}\n @options={{this.monthNames}}\n {{on \"change\" (pick \"target.value\" this.setMonth)}}\n />\n </EuiFlexItem>\n </div>\n </div>\n <div\n class=\"react-datepicker__year-dropdown-container react-datepicker__year-dropdown-container--scroll\"\n >\n {{!template-lint-disable}}\n <div\n class=\"react-datepicker__year-read-view\"\n style=\"padding: 0;\"\n >\n <EuiFlexItem @grow={{1}}>\n <EuiSelect\n @compressed={{true}}\n @value={{this.year}}\n @options={{this.years}}\n {{on \"change\" (pick \"target.value\" this.setYear)}}\n />\n </EuiFlexItem>\n </div>\n </div>\n </div>\n <div class=\"react-datepicker__day-names\">\n <div class=\"react-datepicker__day-name\">Su</div>\n <div class=\"react-datepicker__day-name\">Mo</div>\n <div class=\"react-datepicker__day-name\">Tu</div>\n <div class=\"react-datepicker__day-name\">We</div>\n <div class=\"react-datepicker__day-name\">Th</div>\n <div class=\"react-datepicker__day-name\">Fr</div>\n <div class=\"react-datepicker__day-name\">Sa</div>\n </div>\n </div>\n\n <div\n class=\"react-datepicker__month react-datepicker__month--accessible\"\n >\n {{#each this.days as |days|}}\n <div class=\"react-datepicker__week\">\n {{#each days as |day|}}\n <div\n role=\"button\"\n class={{concat\n \"react-datepicker__day\"\n (if\n (and\n (not day.isOutside)\n (isSameDayHelper\n this.year this.month day.day this.selectedDate\n )\n )\n \" react-datepicker__day--selected\"\n )\n (if\n (isSameDayHelper\n this.year this.month day.day this.today\n )\n \" react-datepicker__day--today\"\n )\n (if\n day.isOutside \" react-datepicker__day--outside-month\"\n )\n }}\n {{on \"click\" (fn this.selectDate day)}}\n >\n <div class=\"react-datepicker__day-text\">{{day.day}}</div>\n </div>\n {{/each}}\n </div>\n {{/each}}\n </div>\n </div>\n\n <div class=\"react-datepicker__time-container\">\n <div class=\"react-datepicker__time\">\n <div\n class=\"react-datepicker__time-box react-datepicker__time-box--accessible\"\n >\n <ul class=\"react-datepicker__time-list\">\n {{#each this.times as |time|}}\n <li\n role=\"option\"\n class={{concat\n \"react-datepicker__time-list-item\"\n (if\n (eq time this.selectedTime)\n \" react-datepicker__time-list-item--selected\"\n )\n }}\n {{on \"click\" (fn this.selectTime time)}}\n >\n {{time}}\n </li>\n {{/each}}\n </ul>\n </div>\n </div>\n </div>\n </div>\n </EuiFormControlLayout>\n </div>\n </template>\n}\n"],"names":["isSameDayHelper","helper","year","month","day","selectedDate","date","DatetimePicker","Component","g","prototype","tracked","i","void 0","momentConfig","constructor","owner","args","selected","monthMoment","moment","hour","minute","second","millisecond","hourStr","minuteStr","selectedTime","offset","clone","startOf","today","monthNames","months","map","text","value","years","Array","from","keys","_","times","timesArray","push","days","prevMonth","subtract","nextMonth","add","daysInMonth","daysInPrevMonth","daysArray","d","unshift","isOutside","daysMatrix","weeks","slice","updateDate","selectTime","time","e","split","parseInt","onChange","n","action","selectDate","setYear","setMonth","increaseMonth","decreaseMonth","setComponentTemplate","precompileTemplate","strictMode","scope","EuiFormControlLayout","on","EuiIcon","EuiFlexItem","EuiSelect","pick","concat","and","not","fn","eq"],"mappings":"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"}
|
|
@@ -18,13 +18,13 @@ class EuiDatePopoverButton extends Component {
|
|
|
18
18
|
static {
|
|
19
19
|
g(this.prototype, "euiI18n", [inject]);
|
|
20
20
|
}
|
|
21
|
-
#euiI18n = (i(this, "euiI18n"),
|
|
21
|
+
#euiI18n = (i(this, "euiI18n"), void 0);
|
|
22
22
|
static {
|
|
23
23
|
g(this.prototype, "isOpen", [tracked], function () {
|
|
24
24
|
return false;
|
|
25
25
|
});
|
|
26
26
|
}
|
|
27
|
-
#isOpen = (i(this, "isOpen"),
|
|
27
|
+
#isOpen = (i(this, "isOpen"), void 0);
|
|
28
28
|
get dateFormat() {
|
|
29
29
|
//date with seconds and such
|
|
30
30
|
return this.args.dateFormat ?? 'YYYY-MM-DDTHH:mm:ss.SSSZ';
|