@ember-eui/core 5.1.0 → 5.3.0

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.
@@ -1,4 +1,6 @@
1
- {{#let (component (ensure-safe-component @groupComponent)) as |Group|}}
1
+ {{#let
2
+ (component (ensure-safe-component @groupComponent))
3
+ as |Group|}}
2
4
  {{#if @select.loading}}
3
5
  <EuiText @size="xs" class="euiComboBoxOptionsList__empty">
4
6
  <EuiFlexGroup @gutterSize="s" @justifyContent="center">
@@ -15,7 +17,7 @@
15
17
  <VerticalCollection
16
18
  @items={{this.flattedOptions}}
17
19
  @tagName="div"
18
- @estimateHeight={{arg-or-default @rowHeight 29}}
20
+ @estimateHeight={{this.rowHeight}}
19
21
  @staticHeight={{true}}
20
22
  @bufferSize={{3}}
21
23
  style="max-height: 200px; overflow-y: auto;"
@@ -34,14 +36,14 @@
34
36
  @select={{@select}}
35
37
  @extra={{@extra}}
36
38
  style={{html-safe
37
- (concat "height:" (arg-or-default @rowHeight 29) "px;")
39
+ (concat "height:" this.rowHeight "px;")
38
40
  }}
39
41
  data-option-index="{{index}}"
40
42
  />
41
43
  {{else}}
42
44
  <li
43
45
  style={{html-safe
44
- (concat "height:" (arg-or-default @rowHeight 29) "px;")
46
+ (concat "height:" this.rowHeight "px;")
45
47
  }}
46
48
  class="euiFilterSelectItem
47
49
  {{if
@@ -1,7 +1,9 @@
1
1
  import EmberPowerSelectOptions from 'ember-power-select/components/power-select/options';
2
2
  import { emberPowerSelectIsGroup } from 'ember-power-select/helpers/ember-power-select-is-group';
3
3
  import { tracked } from '@glimmer/tracking';
4
+ import config from 'ember-get-config';
4
5
 
6
+ const rowHeight = config['@ember-eui/core']?.euiComboBoxOptionsHeight || 29;
5
7
  export default class EuiComboBoxOptionsComponent extends EmberPowerSelectOptions {
6
8
  @tracked flattedOptions = [];
7
9
  _optionsCache = [];
@@ -34,4 +36,8 @@ export default class EuiComboBoxOptionsComponent extends EmberPowerSelectOptions
34
36
  }
35
37
  return option;
36
38
  }
39
+
40
+ get rowHeight() {
41
+ return this.args.rowHeight ?? rowHeight
42
+ }
37
43
  }
@@ -0,0 +1,60 @@
1
+ {{#let
2
+ (class-names
3
+ "euiContextMenuItem"
4
+ componentName="EuiContextMenuItem"
5
+ disabled=@disabled
6
+ layoutAlign=(arg-or-default @layoutAlign "center")
7
+ size=@size
8
+ )
9
+ as |classes|}}
10
+ {{#if (and @href (not @disabled))}}
11
+ <a
12
+ class={{classes}}
13
+ href={{@href}}
14
+ target={{@target}}
15
+ {{did-insert this.registerLink}}
16
+ ...attributes
17
+ />
18
+
19
+ {{else}}
20
+ <button
21
+ class={{classes}}
22
+ disabled={{@disabled}}
23
+ type="button"
24
+ {{did-insert this.registerLink}}
25
+ ...attributes
26
+ />
27
+ {{/if}}
28
+ {{/let}}
29
+
30
+
31
+ {{!-- shared code that will be rendered inside the button or anchor --}}
32
+ {{#if this.link}}
33
+ {{#in-element this.link}}
34
+ <span
35
+ class={{class-names
36
+ 'euiContextMenu__itemLayout'
37
+ componentName="EuiContextMenuItem"
38
+ layoutAlign=(arg-or-default @layoutAlign "center")
39
+ }}
40
+ >
41
+ {{#if @isLoading}}
42
+ {{!-- spinner is not part of eui spec --}}
43
+ <EuiLoadingSpinner class="euiContextMenu__icon"/>
44
+ {{else}}
45
+ <EuiIcon
46
+ @iconClasses={{concat "euiContextMenu__icon " @iconClasses}}
47
+ @type={{@icon}}
48
+ @size="m"
49
+ @color="inherit"
50
+ />
51
+ {{/if}}
52
+ <span class="euiContextMenuItem__text">
53
+ {{yield}}
54
+ </span>
55
+ {{#if @hasPanel}}
56
+ <EuiIcon @type="arrowRight" @size="m" class="euiContextMenu__arrow"/>
57
+ {{/if}}
58
+ </span>
59
+ {{/in-element}}
60
+ {{/if}}
@@ -0,0 +1,12 @@
1
+ import Component from '@glimmer/component';
2
+ import { action } from '@ember/object';
3
+ import { tracked } from '@glimmer/tracking';
4
+
5
+ export default class EuiContextMenuItemComponent extends Component {
6
+ @tracked link: HTMLAnchorElement | HTMLButtonElement | null = null;
7
+
8
+ @action
9
+ registerLink(e: HTMLAnchorElement | HTMLButtonElement) {
10
+ this.link = e;
11
+ }
12
+ }
@@ -0,0 +1,5 @@
1
+ {{!-- ToDo not yet implemented, only created to avoid creating divs with euiContextMenuPanel class --}}
2
+
3
+ <div class="euiContextMenuPanel" tabindex="-1">
4
+ {{yield}}
5
+ </div>
@@ -117,7 +117,7 @@ export default class EuiIcon extends Component<EuiIconArgs> {
117
117
  }
118
118
 
119
119
  getEuiIconSvgPath(type: EuiIconType): string {
120
- return typeToPathMap[type].replace('tokens/', '');
120
+ return typeToPathMap[type];
121
121
  }
122
122
 
123
123
  get isAppIcon(): string | boolean {
@@ -50,7 +50,7 @@ export function inlineStyles({
50
50
  if (!isNamedColor) {
51
51
  checkValidColor(color);
52
52
 
53
- name = name.length ? name : '';
53
+ name = name ? name : '';
54
54
  assignedColor =
55
55
  color || VIS_COLORS[Math.floor(name.length % VIS_COLORS.length)];
56
56
 
@@ -0,0 +1,26 @@
1
+ export const baseClass = '';
2
+
3
+ const disabledMapping = {
4
+ true: 'euiContextMenuItem-isDisabled'
5
+ };
6
+
7
+ const layoutAlignMapping = {
8
+ primary: `${baseClass}--primary`,
9
+ accent: `${baseClass}--accent`,
10
+ text: `${baseClass}--text`
11
+ };
12
+
13
+ const sizeMapping = {
14
+ s: 'euiContextMenuItem--small'
15
+ };
16
+
17
+ const mapping: ComponentMapping = {
18
+ base: baseClass,
19
+ properties: {
20
+ disabled: disabledMapping,
21
+ layoutAlign: layoutAlignMapping,
22
+ size: sizeMapping,
23
+ }
24
+ };
25
+
26
+ export default mapping;
@@ -1,137 +1,139 @@
1
1
  import EuiAccordion from './eui-accordion';
2
- import EuiIcon from './eui-icon';
3
- import EuiModal from './eui-modal';
4
- import EuiLoadingSpinner from './eui-loading-spinner';
5
- import EuiImage from './eui-image';
6
- import EuiSpacer from './eui-spacer';
7
- import EuiTabs from './eui-tabs';
8
- import EuiTitle from './eui-title';
9
- import EuiTextAlign from './eui-text-align';
10
- import EuiTextColor from './eui-text-color';
11
- import EuiText from './eui-text';
12
- import EuiPanel from './eui-panel';
13
- import EuiPageContent from './eui-page-content';
14
2
  import EuiAvatar from './eui-avatar';
15
- import EuiCallOut from './eui-call-out';
16
- import EuiFlexGroup from './eui-flex-group';
17
- import EuiFlexItem from './eui-flex-item';
18
- import EuiFlexGrid from './eui-flex-grid';
19
- import EuiNotificationBadge from './eui-notification-badge';
20
- import EuiBadgeGroup from './eui-badge-group';
21
3
  import EuiBadge from './eui-badge';
22
- import EuiCard from './eui-card';
4
+ import EuiBadgeGroup from './eui-badge-group';
5
+ import EuiBetaBadge from './eui-beta-badge';
6
+ import EuiBottomBar from './eui-bottom-bar';
7
+ import EuiButton from './eui-button';
23
8
  import EuiButtonEmpty from './eui-button-empty';
9
+ import EuiButtonIcon from './eui-button-icon';
10
+ import EuiCallOut from './eui-call-out';
11
+ import EuiCard from './eui-card';
24
12
  import EuiCardSelect from './eui-card-select';
13
+ import EuiCodeBlock from './eui-code-block';
14
+ import EuiCollapsibleNavGroup from './eui-collapsible-nav-group';
15
+ import EuiCommentEvent from './eui-comment-event';
16
+ import EuiCommentTimelineIcon from './eui-comment-timeline-icon';
17
+ import EuiContextMenuItem from './eui-context-menu-item';
18
+ import EuiDescribedFormGroup from './eui-described-form-group';
19
+ import EuiDescriptionList from './eui-description-list';
20
+ import EuiEmptyPrompt from './eui-empty-prompt';
21
+ import EuiFilePicker from './eui-file-picker';
22
+ import EuiFlexGrid from './eui-flex-grid';
23
+ import EuiFlexGroup from './eui-flex-group';
24
+ import EuiFlexItem from './eui-flex-item';
25
+ import EuiFlyout from './eui-flyout';
26
+ import EuiFormRow from './eui-form-row';
27
+ import EuiGlobalToastList from './eui-global-toast-list';
28
+ import EuiHeader from './eui-header';
29
+ import EuiHeaderLinks from './eui-header-links';
25
30
  import EuiHeaderSection from './eui-header-section';
26
31
  import EuiHeaderSectionItem from './eui-header-section-item';
27
- import EuiHeader from './eui-header';
28
32
  import EuiHealth from './eui-health';
29
- import EuiButtonIcon from './eui-button-icon';
30
- import EuiButton from './eui-button';
31
33
  import EuiHorizontalRule from './eui-horizontal-rule';
32
- import EuiCommentTimelineIcon from './eui-comment-timeline-icon';
33
- import EuiCommentEvent from './eui-comment-event';
34
- import EuiFlyout from './eui-flyout';
35
- import EuiCollapsibleNavGroup from './eui-collapsible-nav-group';
36
- import EuiStepNumber from './eui-step-number';
37
- import EuiProgress from './eui-progress';
38
- import EuiProgressData from './eui-progress-data';
39
- import EuiFormRow from './eui-form-row';
40
- import EuiDescribedFormGroup from './eui-described-form-group';
34
+ import EuiIcon from './eui-icon';
35
+ import EuiImage from './eui-image';
36
+ import EuiLink from './eui-link';
41
37
  import EuiListGroup from './eui-list-group';
42
38
  import EuiListGroupItem from './eui-list-group-item';
43
- import EuiTextArea from './eui-text-area';
44
- import EuiFilePicker from './eui-file-picker';
45
- import EuiBottomBar from './eui-bottom-bar';
39
+ import EuiLoadingSpinner from './eui-loading-spinner';
40
+ import EuiModal from './eui-modal';
41
+ import EuiNotificationBadge from './eui-notification-badge';
46
42
  import EuiPage from './eui-page';
43
+ import EuiPageBody from './eui-page-body';
44
+ import EuiPageContent from './eui-page-content';
45
+ import EuiPageContentBody from './eui-page-content-body';
46
+ import EuiPageHeader from './eui-page-header';
47
+ import EuiPageSideBar from './eui-page-side-bar';
48
+ import EuiPanel from './eui-panel';
47
49
  import EuiPopover from './eui-popover';
48
- import EuiPopoverTitle from './eui-popover-title';
49
50
  import EuiPopoverFooter from './eui-popover-footer';
51
+ import EuiPopoverTitle from './eui-popover-title';
52
+ import EuiProgress from './eui-progress';
53
+ import EuiProgressData from './eui-progress-data';
50
54
  import EuiRangeHighlight from './eui-range-highlight';
51
55
  import EuiRangeInput from './eui-range-input';
52
56
  import EuiRangeLevels from './eui-range-levels';
53
- import EuiToolTip from './eui-tool-tip';
54
- import EuiToast from './eui-toast';
55
- import EuiGlobalToastList from './eui-global-toast-list';
56
- import EuiCodeBlock from './eui-code-block';
57
+ import EuiSpacer from './eui-spacer';
57
58
  import EuiStat from './eui-stat';
58
- import EuiHeaderLinks from './eui-header-links';
59
- import EuiLink from './eui-link';
60
- import EuiBetaBadge from './eui-beta-badge';
61
- import EuiDescriptionList from './eui-description-list';
62
- import EuiPageSideBar from './eui-page-side-bar';
63
- import EuiPageBody from './eui-page-body';
64
- import EuiPageHeader from './eui-page-header';
65
- import EuiPageContentBody from './eui-page-content-body';
66
- import EuiEmptyPrompt from './eui-empty-prompt';
59
+ import EuiStepNumber from './eui-step-number';
60
+ import EuiTabs from './eui-tabs';
61
+ import EuiText from './eui-text';
62
+ import EuiTextAlign from './eui-text-align';
63
+ import EuiTextArea from './eui-text-area';
64
+ import EuiTextColor from './eui-text-color';
65
+ import EuiTitle from './eui-title';
66
+ import EuiToast from './eui-toast';
67
+ import EuiToolTip from './eui-tool-tip';
67
68
 
68
69
  const mapping: Mapping = {
69
- EuiDescriptionList,
70
- EuiBetaBadge,
71
- EuiLink,
72
- EuiStat,
73
- EuiCodeBlock,
74
70
  EuiAccordion,
75
- EuiIcon,
76
- EuiModal,
77
- EuiImage,
78
- EuiLoadingSpinner,
79
- EuiSpacer,
80
- EuiTabs,
81
- EuiTitle,
82
- EuiTextAlign,
83
- EuiTextColor,
84
- EuiText,
85
- EuiPanel,
86
- EuiPageContent,
87
71
  EuiAvatar,
88
- EuiCallOut,
89
- EuiFlexGroup,
90
- EuiFlexItem,
91
- EuiFlexGrid,
92
- EuiNotificationBadge,
93
- EuiBadgeGroup,
94
72
  EuiBadge,
95
- EuiCard,
73
+ EuiBadgeGroup,
74
+ EuiBetaBadge,
75
+ EuiBottomBar,
76
+ EuiButton,
96
77
  EuiButtonEmpty,
78
+ EuiButtonIcon,
79
+ EuiCallOut,
80
+ EuiCard,
97
81
  EuiCardSelect,
82
+ EuiCodeBlock,
83
+ EuiCollapsibleNavGroup,
84
+ EuiCommentEvent,
85
+ EuiCommentTimelineIcon,
86
+ EuiContextMenuItem,
87
+ EuiDescribedFormGroup,
88
+ EuiDescriptionList,
89
+ EuiEmptyPrompt,
90
+ EuiFilePicker,
91
+ EuiFlexGrid,
92
+ EuiFlexGroup,
93
+ EuiFlexItem,
94
+ EuiFlyout,
95
+ EuiFormRow,
96
+ EuiGlobalToastList,
97
+ EuiHeader,
98
+ EuiHeaderLinks,
98
99
  EuiHeaderSection,
99
100
  EuiHeaderSectionItem,
100
- EuiHeader,
101
101
  EuiHealth,
102
- EuiButton,
103
- EuiButtonIcon,
104
102
  EuiHorizontalRule,
105
- EuiCommentTimelineIcon,
106
- EuiCommentEvent,
107
- EuiFlyout,
108
- EuiCollapsibleNavGroup,
109
- EuiStepNumber,
110
- EuiProgress,
111
- EuiProgressData,
112
- EuiFormRow,
113
- EuiDescribedFormGroup,
103
+ EuiIcon,
104
+ EuiImage,
105
+ EuiLink,
114
106
  EuiListGroup,
115
107
  EuiListGroupItem,
116
- EuiTextArea,
117
- EuiFilePicker,
118
- EuiBottomBar,
108
+ EuiLoadingSpinner,
109
+ EuiModal,
110
+ EuiNotificationBadge,
119
111
  EuiPage,
112
+ EuiPageBody,
113
+ EuiPageContent,
114
+ EuiPageContentBody,
115
+ EuiPageHeader,
116
+ EuiPageSideBar,
117
+ EuiPanel,
120
118
  EuiPopover,
121
- EuiPopoverTitle,
122
119
  EuiPopoverFooter,
120
+ EuiPopoverTitle,
121
+ EuiProgress,
122
+ EuiProgressData,
123
123
  EuiRangeHighlight,
124
124
  EuiRangeInput,
125
125
  EuiRangeLevels,
126
- EuiToolTip,
126
+ EuiSpacer,
127
+ EuiStat,
128
+ EuiStepNumber,
129
+ EuiTabs,
130
+ EuiText,
131
+ EuiTextAlign,
132
+ EuiTextArea,
133
+ EuiTextColor,
134
+ EuiTitle,
127
135
  EuiToast,
128
- EuiGlobalToastList,
129
- EuiHeaderLinks,
130
- EuiPageSideBar,
131
- EuiPageBody,
132
- EuiPageHeader,
133
- EuiPageContentBody,
134
- EuiEmptyPrompt
136
+ EuiToolTip,
135
137
  };
136
138
 
137
139
  export default mapping;
@@ -0,0 +1 @@
1
+ export { default } from '@ember-eui/core/components/eui-context-menu-item';
@@ -0,0 +1 @@
1
+ export { default } from '@ember-eui/core/components/eui-context-menu-panel';
@@ -35,18 +35,11 @@ order: 2
35
35
  @accordionHideText='hide'
36
36
  >
37
37
  <:contextMenu>
38
- <!-- ToDo Missing EuiContextMenu component -->
39
- <button
40
- class="euiContextMenuItem"
41
- type="button"
38
+ <EuiContextMenuItem
42
39
  {{on 'click' this.onRead}}
43
40
  >
44
- <span class="euiContextMenu__itemLayout">
45
- <span class="euiContextMenuItem__text">
46
- Mark as {{if this.isRead 'unread' 'read'}}
47
- </span>
48
- </span>
49
- </button>
41
+ Mark as {{if this.isRead 'unread' 'read'}}
42
+ </EuiContextMenuItem>
50
43
  </:contextMenu>
51
44
 
52
45
  <:primaryAction>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ember-eui/core",
3
- "version": "5.1.0",
3
+ "version": "5.3.0",
4
4
  "description": "Ember Components for Elastic UI",
5
5
  "keywords": [
6
6
  "ember-addon",
@@ -182,5 +182,5 @@
182
182
  "volta": {
183
183
  "extends": "../../package.json"
184
184
  },
185
- "gitHead": "d8af7448f9a9283a6b2aeb246dbbf73687c56a0e"
185
+ "gitHead": "b151365ce78116337b791addc3d3244c2e1fc3b8"
186
186
  }