@ember-eui/core 16.0.2 → 16.0.3

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.
@@ -20,6 +20,10 @@ export default class EuiComboBoxTriggerInputComponent extends PowerSelectInput {
20
20
  * input sizes to its content (`field-sizing`) and fills the rest of the
21
21
  * row, so it wraps below the pills like upstream's. With a placeholder or
22
22
  * plain text selection it takes the whole row.
23
+ *
24
+ * Not upstream: under a plain text selection rendered with EuiComboBox's
25
+ * block (`@hidesValue`), the text is transparent but the caret is not.
26
+ * The value stays the label (screen readers, typing over it).
23
27
  */
24
28
  get inputClass(): string;
25
29
  /** An option is highlighted in the open list (`aria-activedescendant`). */
@@ -40,6 +44,11 @@ export default class EuiComboBoxTriggerInputComponent extends PowerSelectInput {
40
44
  get value(): string;
41
45
  /** Upstream re-opens the list on every click of a plain text input. */
42
46
  handleClick(event: MouseEvent): void;
47
+ /**
48
+ * Not upstream: under a selection's block the value's text is hidden, so
49
+ * typing replaces it (as a new search) instead of adding to it.
50
+ */
51
+ selectHiddenValue: (event: Event) => void;
43
52
  /** The id of the options list while it is open (upstream `aria-controls`). */
44
53
  get ariaControls(): string | undefined;
45
54
  }
@@ -1 +1 @@
1
- {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../../src/components/eui-combo-box/trigger/input.gts"],"names":[],"mappings":"AA+MA,OAAO,gBAAgB,MAAM,kDAAkD,CAAC;AAgBhF,8DAA8D;AAC9D,MAAM,CAAC,OAAO,OAAO,gCAAiC,SAAQ,gBAAgB;IAC5E,0EAA0E;IAC1E,aAAa;;;;;;OASV;IAEH;;;OAGG;IACH,IAAI,gBAAgB,IAAI,MAAM,GAAG,SAAS,CAYzC;IAED;;;;;;OAMG;IACH,IACI,UAAU,IAAI,MAAM,CAevB;IAED,2EAA2E;IAC3E,IAAI,eAAe,IAAI,OAAO,CAI7B;IAED,IACI,cAAc,IAAI,MAAM,CAI3B;IAED;;;;OAIG;IAEH,aAAa,CAAC,CAAC,EAAE,aAAa,GAAG,KAAK,GAAG,IAAI;IAkB7C,mEAAmE;IAEnE,UAAU,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAInC;;;OAGG;IACH,IAAI,KAAK,IAAI,MAAM,CAQlB;IAED,uEAAuE;IAEvE,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAUpC,8EAA8E;IAC9E,IAAI,YAAY,IAAI,MAAM,GAAG,SAAS,CAErC;CA4HF"}
1
+ {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../../src/components/eui-combo-box/trigger/input.gts"],"names":[],"mappings":"AAwOA,OAAO,gBAAgB,MAAM,kDAAkD,CAAC;AAgBhF,8DAA8D;AAC9D,MAAM,CAAC,OAAO,OAAO,gCAAiC,SAAQ,gBAAgB;IAC5E,0EAA0E;IAC1E,aAAa;;;;;;OASV;IAEH;;;OAGG;IACH,IAAI,gBAAgB,IAAI,MAAM,GAAG,SAAS,CAYzC;IAED;;;;;;;;;;OAUG;IACH,IACI,UAAU,IAAI,MAAM,CAsBvB;IAED,2EAA2E;IAC3E,IAAI,eAAe,IAAI,OAAO,CAI7B;IAED,IACI,cAAc,IAAI,MAAM,CAI3B;IAED;;;;OAIG;IAEH,aAAa,CAAC,CAAC,EAAE,aAAa,GAAG,KAAK,GAAG,IAAI;IAkB7C,mEAAmE;IAEnE,UAAU,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAInC;;;OAGG;IACH,IAAI,KAAK,IAAI,MAAM,CAQlB;IAED,uEAAuE;IAEvE,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAYpC;;;OAGG;IACH,iBAAiB,GAAI,OAAO,KAAK,KAAG,IAAI,CAKtC;IAEF,8EAA8E;IAC9E,IAAI,YAAY,IAAI,MAAM,GAAG,SAAS,CAErC;CA6HF"}
@@ -18,6 +18,8 @@ interface TriggerArgs {
18
18
  singleSelection?: boolean | {
19
19
  asPlainText?: boolean;
20
20
  };
21
+ /** EuiComboBox's caller passed a block (renders the options). */
22
+ hasOptionBlock?: boolean;
21
23
  prepend?: unknown;
22
24
  append?: unknown;
23
25
  noSuggestions?: boolean;
@@ -62,6 +64,17 @@ export default class EuiComboBoxTriggerComponent extends PowerSelectTrigger {
62
64
  get plainTextOption(): unknown;
63
65
  /** Upstream: the input shows the search text, else the selection's label. */
64
66
  get plainTextValue(): string | undefined;
67
+ /**
68
+ * Not upstream: with a caller's block, the plain text selection is
69
+ * rendered with it (as ember-eui 14 did) while nothing is typed; the
70
+ * input's text is hidden under it.
71
+ */
72
+ get showsPlainTextBlock(): boolean;
73
+ /**
74
+ * The block over the input wrap, inside its padding, centered like the
75
+ * input's text; clicks go through to the input.
76
+ */
77
+ get plainTextBlockClass(): string;
65
78
  /** Plain text selection's option prepend/append: upstream `xxs` spacing. */
66
79
  get plainTextSideClasses(): {
67
80
  prepend: string;
@@ -1 +1 @@
1
- {"version":3,"file":"trigger.d.ts","sourceRoot":"","sources":["../../../src/components/eui-combo-box/trigger.gts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"trigger.d.ts","sourceRoot":"","sources":["../../../src/components/eui-combo-box/trigger.gts"],"names":[],"mappings":"AA6jBA,OAAO,kBAAkB,MAAM,oDAAoD,CAAC;AAwBpF,OAAO,KAAK,EACV,8BAA8B,EAC9B,6BAA6B,EAC9B,MAAM,sCAAsC,CAAC;AAE9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAErE,UAAU,aAAa;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;CACtB;AAED,UAAU,WAAW;IACnB,MAAM,EAAE,aAAa,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,OAAO,GAAG;QAAE,WAAW,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IACtD,iEAAiE;IACjE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,KAAK,IAAI,CAAC;IACtD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;IAClC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IAC3C,iEAAiE;IACjE,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IAC3C,gEAAgE;IAChE,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,OAAO,CAAC;CACrD;AAED,oEAAoE;AACpE,eAAO,MAAM,cAAc,GAAI,QAAQ,WAAW,GAAG,IAAI,KAAG,OAKzD,CAAC;AAaJ;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,2BAA4B,SAAQ,kBAAkB;IACzE,IAAI,SAAS,IAAI,WAAW,CAE3B;IAED,IAAI,WAAW,IAAI,OAAO,CAIzB;IAED,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;;OAGG;IACH,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED;;;;OAIG;IACH,IACI,IAAI,IAAI,6BAA6B,GAAG,SAAS,CAgBpD;IAED,6EAA6E;IAC7E,IACI,UAAU,IAAI,8BAA8B,GAAG,SAAS,CAS3D;IAED,4EAA4E;IAC5E,IAAI,eAAe,IAAI,OAAO,CAE7B;IAED,6EAA6E;IAC7E,IAAI,cAAc,IAAI,MAAM,GAAG,SAAS,CAMvC;IAED;;;;OAIG;IACH,IAAI,mBAAmB,IAAI,OAAO,CAMjC;IAED;;;OAGG;IACH,IACI,mBAAmB,IAAI,MAAM,CAahC;IAED,4EAA4E;IAC5E,IACI,oBAAoB,IAAI;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAU9D;IAED;;;;OAIG;IACH,UAAU,GAAI,OAAO,KAAK,UAIxB;IAEF;;;OAGG;IACH,aAAa,GAAI,OAAO,aAAa,UAInC;IAEF,wDAAwD;IACxD,UAAU,GAAI,OAAO,UAAU,UAI7B;IAEF,0EAA0E;IAC1E,IAAI,eAAe,IAAI,OAAO,CAI7B;IAED,2EAA2E;IAC3E,IACI,SAAS,IAAI,gBAAgB,EAAE,CAUlC;IAED;;;;OAIG;IACH,IACI,SAAS,IAAI,MAAM,CA8BtB;IAED;;;OAGG;IACH,IACI,gBAAgB,IAAI,MAAM,CAY7B;IAED,4DAA4D;IAC5D,IACI,WAAW,IAAI,MAAM,CAOxB;CA8RF"}
@@ -2,6 +2,7 @@ import 'ember-basic-dropdown/styles';
2
2
  import Component from '@glimmer/component';
3
3
  import { htmlSafe } from '@ember/template';
4
4
  import type EuiI18n from '../services/eui-i18n';
5
+ import type EuiConfigService from '../services/eui-config';
5
6
  import type { EuiComboBoxOptionMatcher, EuiComboBoxSortMatchesBy } from '../utils/eui/combo-box.ts';
6
7
  import type { EuiComboBoxNode } from './eui-combo-box/node';
7
8
  import type { EuiComboBoxTruncationProps } from './eui-combo-box/option-text';
@@ -119,6 +120,16 @@ export interface EuiComboBoxSignature {
119
120
  * Allows only one selected option (still passed to `@onChange` as a
120
121
  * one-item array). `{ asPlainText: true }` shows the selection as the
121
122
  * input's text instead of a pill. Defaults to multiple selection.
123
+ *
124
+ * Not upstream: with a block, a plain text selection is rendered with
125
+ * that block (like the option rows) while nothing is typed, as
126
+ * ember-eui 14 (ember-power-select) did, e.g. for enum values rendered
127
+ * as an avatar and a translated label. The block receives the option,
128
+ * then the select. Typing shows the input's text again, so search
129
+ * works as usual. The input keeps the option's label as its value
130
+ * (what screen readers announce and what typing replaces), so prefer
131
+ * object options with a readable `label` over raw string values.
132
+ * Without a block the input shows the label text, as upstream.
122
133
  */
123
134
  singleSelection?: boolean | {
124
135
  asPlainText?: boolean;
@@ -285,6 +296,13 @@ export interface EuiComboBoxSignature {
285
296
  delimiter?: string;
286
297
  /** Matches options case-sensitively. */
287
298
  isCaseSensitive?: boolean;
299
+ /**
300
+ * Matches options ignoring accents ("medico" finds "Médico"), as
301
+ * ember-power-select did. Defaults to the app's
302
+ * `euiComboBox.ignoreAccents` (eui-config), else `false` (upstream).
303
+ * Only for the default matching (not `@matcher` / `@optionMatcher`).
304
+ */
305
+ ignoreAccents?: boolean;
288
306
  /**
289
307
  * `'startsWith'` lists the matches starting with the search text first;
290
308
  * `'none'` keeps the options' order. Defaults to `'none'`.
@@ -400,6 +418,12 @@ type ContainerBlurApi = Select & {
400
418
  };
401
419
  export default class EuiComboBoxComponent extends Component<EuiComboBoxSignature> {
402
420
  euiI18n: EuiI18n;
421
+ euiConfig: EuiConfigService;
422
+ /**
423
+ * `@ignoreAccents`, else the app's `euiComboBox.ignoreAccents`
424
+ * (eui-config), else `false` (upstream).
425
+ */
426
+ get ignoreAccents(): boolean;
403
427
  /** ember-power-select's API (open state, highlighted option, …). */
404
428
  select: any;
405
429
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"eui-combo-box.d.ts","sourceRoot":"","sources":["../../src/components/eui-combo-box.gts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"eui-combo-box.d.ts","sourceRoot":"","sources":["../../src/components/eui-combo-box.gts"],"names":[],"mappings":"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"}
@@ -36,6 +36,11 @@ export interface EuiConfig {
36
36
  euiIconUseSvg?: boolean;
37
37
  'euiButtonIcon.size'?: EuiButtonIconSignature['Args']['iconSize'];
38
38
  euiComboBoxOptionsHeight?: number;
39
+ /**
40
+ * Default of `EuiComboBox`'s `@ignoreAccents`: match options ignoring
41
+ * accents ("medico" finds "Médico"). Upstream: `false`.
42
+ */
43
+ 'euiComboBox.ignoreAccents'?: boolean;
39
44
  /**
40
45
  * Upstream `EuiProvider componentDefaults`, e.g.
41
46
  * `{ EuiTablePagination: { itemsPerPage: 25, itemsPerPageOptions: [25, 50, 100] } }`.
@@ -1 +1 @@
1
- {"version":3,"file":"eui-config.d.ts","sourceRoot":"","sources":["../../src/services/eui-config.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,gBAAgB,CAAC;AAIrC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,kBAAkB,CAAC,EAAE;QACnB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;QAC/B,kBAAkB,CAAC,EAAE,OAAO,CAAC;KAC9B,CAAC;CACH;AAED,MAAM,WAAW,SAAS;IACxB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CACtB,MAAM,EACN,aAAa,CAAC;QAAE,OAAO,EAAE,aAAa,CAAC;QAAC,MAAM,EAAE;YAAE,OAAO,EAAE,EAAE,CAAA;SAAE,CAAA;KAAE,CAAC,CACnE,CAAC;IACF,gEAAgE;IAChE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,gEAAgE;IAChE,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,oBAAoB,CAAC,EAAE,sBAAsB,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC;IAClE,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,oBAAoB,CAAC;CAC1C;AAQD,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,OAAO;IAC1C,OAAO,CAAC,OAAO,CAA6B;IAErD,SAAS,CAAC,CAAC,SAAS,MAAM,SAAS,EAAE,GAAG,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS;IAItE,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC;IAQvC,SAAS,CAAC,MAAM,EAAE,SAAS;CAG5B"}
1
+ {"version":3,"file":"eui-config.d.ts","sourceRoot":"","sources":["../../src/services/eui-config.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,gBAAgB,CAAC;AAIrC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,kBAAkB,CAAC,EAAE;QACnB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;QAC/B,kBAAkB,CAAC,EAAE,OAAO,CAAC;KAC9B,CAAC;CACH;AAED,MAAM,WAAW,SAAS;IACxB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CACtB,MAAM,EACN,aAAa,CAAC;QAAE,OAAO,EAAE,aAAa,CAAC;QAAC,MAAM,EAAE;YAAE,OAAO,EAAE,EAAE,CAAA;SAAE,CAAA;KAAE,CAAC,CACnE,CAAC;IACF,gEAAgE;IAChE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,gEAAgE;IAChE,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,oBAAoB,CAAC,EAAE,sBAAsB,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC;IAClE,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC;;;OAGG;IACH,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,oBAAoB,CAAC;CAC1C;AAQD,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,OAAO;IAC1C,OAAO,CAAC,OAAO,CAA6B;IAErD,SAAS,CAAC,CAAC,SAAS,MAAM,SAAS,EAAE,GAAG,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS;IAItE,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC;IAQvC,SAAS,CAAC,MAAM,EAAE,SAAS;CAG5B"}
@@ -47,7 +47,7 @@ export type EuiComboBoxOptionMatcher = (args: EuiComboBoxOptionMatcherArgs) => b
47
47
  * Upstream `createPartialStringEqualityOptionMatcher`: options whose label
48
48
  * (trimmed) includes the normalized search text.
49
49
  */
50
- export declare function createPartialStringEqualityOptionMatcher(searchField?: string): EuiComboBoxOptionMatcher;
50
+ export declare function createPartialStringEqualityOptionMatcher(searchField?: string, ignoreAccents?: boolean): EuiComboBoxOptionMatcher;
51
51
  /**
52
52
  * Upstream's "already selected" test of `getMatchingOptions`: a selected
53
53
  * option has the same label (case per `isCaseSensitive`) and, when the
@@ -1 +1 @@
1
- {"version":3,"file":"combo-box.d.ts","sourceRoot":"","sources":["../../../src/utils/eui/combo-box.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"combo-box.d.ts","sourceRoot":"","sources":["../../../src/utils/eui/combo-box.ts"],"names":[],"mappings":"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"}
@@ -46,6 +46,10 @@ class EuiComboBoxTriggerInputComponent extends PowerSelectInput {
46
46
  * input sizes to its content (`field-sizing`) and fills the rest of the
47
47
  * row, so it wraps below the pills like upstream's. With a placeholder or
48
48
  * plain text selection it takes the whole row.
49
+ *
50
+ * Not upstream: under a plain text selection rendered with EuiComboBox's
51
+ * block (`@hidesValue`), the text is transparent but the caret is not.
52
+ * The value stays the label (screen readers, typing over it).
49
53
  */
50
54
  get inputClass() {
51
55
  const context = getEuiThemeContext(this);
@@ -59,6 +63,13 @@ class EuiComboBoxTriggerInputComponent extends PowerSelectInput {
59
63
  fieldSizing: 'content',
60
64
  // @ts-expect-error `fillWidth` is passed by EuiComboBoxTrigger
61
65
  inlineSize: this.args.fillWidth ? '100%' : undefined
66
+ },
67
+ // @ts-expect-error `hidesValue` is passed by EuiComboBoxTrigger
68
+ this.args.hidesValue && {
69
+ '&, &:disabled': {
70
+ color: 'transparent',
71
+ caretColor: context.upstream.euiTheme.colors.textParagraph
72
+ }
62
73
  });
63
74
  }
64
75
  /** An option is highlighted in the open list (`aria-activedescendant`). */
@@ -119,16 +130,26 @@ class EuiComboBoxTriggerInputComponent extends PowerSelectInput {
119
130
  const onClick = this.args.onPlainTextClick;
120
131
  // @ts-expect-error `asPlainText` is passed by EuiComboBoxTrigger
121
132
  if (this.args.asPlainText) onClick?.(event);
133
+ this.selectHiddenValue(event);
122
134
  }
123
- /** The id of the options list while it is open (upstream `aria-controls`). */
135
+ /**
136
+ * Not upstream: under a selection's block the value's text is hidden, so
137
+ * typing replaces it (as a new search) instead of adding to it.
138
+ */
124
139
  static {
125
140
  n(this.prototype, "handleClick", [action]);
126
141
  }
142
+ selectHiddenValue = event => {
143
+ // @ts-expect-error `hidesValue` is passed by EuiComboBoxTrigger
144
+ if (!this.args.hidesValue) return;
145
+ event.target?.select?.();
146
+ };
147
+ /** The id of the options list while it is open (upstream `aria-controls`). */
127
148
  get ariaControls() {
128
149
  return this.args.select.isOpen ? this.args.listboxId : undefined;
129
150
  }
130
151
  static {
131
- setComponentTemplate(precompileTemplate("<div class={{this.containerClass}}>\n <input tabindex=\"-1\" aria-hidden=\"true\" style=\"opacity: 0; width:0px; height:0px; position: absolute; top: 40%; border:solid 1px transparent !important; margin:0px !important; padding: 0; pointer-events: none;\" class=\"fake-input-for-html-form-validity\" {{!--@glint-expect-error--}} {{validatableControl @isInvalid}} />\n <input class=\"ember-power-select-trigger-multiple-input euiComboBox__input\n {{this.inputClass}}\" autocomplete=\"off\" autocorrect=\"off\" autocapitalize=\"off\" {{!--@glint-expect-error--}} autofocus={{@autoFocus}} spellcheck={{false}} id=\"ember-power-select-trigger-multiple-input-{{@select.uniqueId}}\" data-test-subj=\"comboBoxSearchInput\" value={{this.value}} role={{if @role @role \"combobox\"}} aria-autocomplete=\"list\" aria-haspopup=\"listbox\" aria-expanded={{if @select.isOpen \"true\" \"false\"}} aria-controls={{this.ariaControls}} {{!-- @glint-expect-error `required` is passed by EuiComboBoxTrigger --}} aria-required={{if @required \"true\"}} aria-activedescendant={{if this.hasActiveOption @ariaActiveDescendant}} aria-label={{@ariaLabel}} aria-labelledby={{@ariaLabelledBy}} aria-describedby={{@ariaDescribedBy}} {{!-- @glint-expect-error `isInvalid` is passed by EuiComboBoxTrigger --}} aria-invalid={{if @isInvalid \"true\"}} placeholder={{this.maybePlaceholder}} disabled={{@select.disabled}} tabindex={{@tabindex}} form=\"power-select-fake-form\" {{on \"focus\" this.handleFocus}} {{on \"blur\" this.handleBlur}} {{on \"input\" this.handleInput}} {{on \"keydown\" this.handleKeydown}} {{on \"click\" this.handleClick}} {{this.registerInput}} />\n</div>", {
152
+ setComponentTemplate(precompileTemplate("<div class={{this.containerClass}}>\n <input tabindex=\"-1\" aria-hidden=\"true\" style=\"opacity: 0; width:0px; height:0px; position: absolute; top: 40%; border:solid 1px transparent !important; margin:0px !important; padding: 0; pointer-events: none;\" class=\"fake-input-for-html-form-validity\" {{!--@glint-expect-error--}} {{validatableControl @isInvalid}} />\n <input class=\"ember-power-select-trigger-multiple-input euiComboBox__input\n {{this.inputClass}}\" autocomplete=\"off\" autocorrect=\"off\" autocapitalize=\"off\" {{!--@glint-expect-error--}} autofocus={{@autoFocus}} spellcheck={{false}} id=\"ember-power-select-trigger-multiple-input-{{@select.uniqueId}}\" data-test-subj=\"comboBoxSearchInput\" value={{this.value}} role={{if @role @role \"combobox\"}} aria-autocomplete=\"list\" aria-haspopup=\"listbox\" aria-expanded={{if @select.isOpen \"true\" \"false\"}} aria-controls={{this.ariaControls}} {{!-- @glint-expect-error `required` is passed by EuiComboBoxTrigger --}} aria-required={{if @required \"true\"}} aria-activedescendant={{if this.hasActiveOption @ariaActiveDescendant}} aria-label={{@ariaLabel}} aria-labelledby={{@ariaLabelledBy}} aria-describedby={{@ariaDescribedBy}} {{!-- @glint-expect-error `isInvalid` is passed by EuiComboBoxTrigger --}} aria-invalid={{if @isInvalid \"true\"}} placeholder={{this.maybePlaceholder}} disabled={{@select.disabled}} tabindex={{@tabindex}} form=\"power-select-fake-form\" {{on \"focus\" this.handleFocus}} {{on \"focus\" this.selectHiddenValue}} {{on \"blur\" this.handleBlur}} {{on \"input\" this.handleInput}} {{on \"keydown\" this.handleKeydown}} {{on \"click\" this.handleClick}} {{this.registerInput}} />\n</div>", {
132
153
  strictMode: true,
133
154
  scope: () => ({
134
155
  validatableControl,
@@ -1 +1 @@
1
- {"version":3,"file":"input.js","sources":["../../../../src/components/eui-combo-box/trigger/input.gts"],"sourcesContent":["import { cached } from '@glimmer/tracking';\nimport { on } from '@ember/modifier';\nimport { action } from '@ember/object';\n\nimport { modifier } from 'ember-modifier';\nimport PowerSelectInput from 'ember-power-select/components/power-select/input';\n\nimport validatableControl from '../../../modifiers/validatable-control.ts';\nimport { getEuiThemeContext } from '../../../utils/emotion/consume.ts';\nimport { euiComboBoxInputStyles } from '../../../utils/eui/styles.generated.ts';\nimport { euiClass, useEuiBorealisStyles } from '../../../utils/eui/styles.ts';\n\n/** Holds the search input and the hidden validity input. */\nconst INPUT_CONTAINER = {\n position: 'relative',\n display: 'flex',\n flexGrow: 1,\n minInlineSize: '2px',\n maxInlineSize: '100%'\n} as const;\n\n/** @private The search input inside EuiComboBox's trigger. */\nexport default class EuiComboBoxTriggerInputComponent extends PowerSelectInput {\n /** Upstream `inputRef`: the search input, or `null` when it goes away. */\n registerInput = modifier((element: HTMLInputElement) => {\n // @ts-expect-error `inputRef` is passed by EuiComboBoxTrigger\n const inputRef = this.args.inputRef as\n | ((element: HTMLInputElement | null) => void)\n | undefined;\n\n inputRef?.(element);\n\n return () => inputRef?.(null);\n });\n\n /**\n * Shows @placeholder while nothing is selected (power-select 9's own\n * `placeholder` getter uses @searchPlaceholder instead).\n */\n get maybePlaceholder(): string | undefined {\n if (!this.args.isDefaultPlaceholder) {\n return undefined;\n }\n\n const selected = this.args.select.selected as unknown[] | undefined;\n\n // upstream: no placeholder while searching\n if (this.args.select.searchText) return '';\n\n // @ts-expect-error `placeholder` is passed by EuiComboBoxTrigger\n return !selected || selected.length === 0 ? this.args.placeholder || '' : '';\n }\n\n /**\n * Upstream `euiComboBoxInput`: transparent, borderless, the form control\n * text. Upstream measures the typed text for the input's width; here the\n * input sizes to its content (`field-sizing`) and fills the rest of the\n * row, so it wraps below the pills like upstream's. With a placeholder or\n * plain text selection it takes the whole row.\n */\n @cached\n get inputClass(): string {\n const context = getEuiThemeContext(this);\n const styles = useEuiBorealisStyles(context, euiComboBoxInputStyles);\n\n return euiClass(\n context,\n { boxSizing: 'border-box', margin: 0, padding: 0 },\n styles.euiComboBoxInput,\n {\n flexGrow: 1,\n fieldSizing: 'content',\n // @ts-expect-error `fillWidth` is passed by EuiComboBoxTrigger\n inlineSize: this.args.fillWidth ? '100%' : undefined\n }\n );\n }\n\n /** An option is highlighted in the open list (`aria-activedescendant`). */\n get hasActiveOption(): boolean {\n const select = this.args.select;\n\n return Boolean(select.isOpen && select.highlighted != null);\n }\n\n @cached\n get containerClass(): string {\n const context = getEuiThemeContext(this);\n\n return euiClass(context, INPUT_CONTAINER);\n }\n\n /**\n * Keys go to EuiComboBox first (through ember-power-select's keydown\n * handler): it handles Enter, Escape, Tab, the arrows and Backspace\n * like upstream.\n */\n @action\n handleKeydown(e: KeyboardEvent): false | void {\n if (e.target === null) return;\n\n if (this.args.onKeydown && this.args.onKeydown(e) === false) {\n e.stopPropagation();\n\n return false;\n }\n\n if (\n e.key === 'Backspace' ||\n (e.key?.length === 1 && /[a-z0-9 ]/i.test(e.key))\n ) {\n // Backspace, keys 0-9, a-z or SPACE edit the text\n e.stopPropagation();\n }\n }\n\n /** Upstream keeps the typed text on blur (EuiComboBox decides). */\n @action\n handleBlur(event: FocusEvent): void {\n this.args.onBlur?.(event);\n }\n\n /**\n * Upstream `searchValue`: plain text single selection shows the search\n * text, else the selected option's label, as the input's value.\n */\n get value(): string {\n const search = this.args.select.searchText;\n // @ts-expect-error `plainTextValue` is passed by EuiComboBoxTrigger\n const plainText = this.args.plainTextValue as string | undefined;\n\n if (plainText === undefined) return search;\n\n return search || plainText;\n }\n\n /** Upstream re-opens the list on every click of a plain text input. */\n @action\n handleClick(event: MouseEvent): void {\n // @ts-expect-error `onPlainTextClick` is passed by EuiComboBoxTrigger\n const onClick = this.args.onPlainTextClick as\n | ((event: MouseEvent) => void)\n | undefined;\n\n // @ts-expect-error `asPlainText` is passed by EuiComboBoxTrigger\n if (this.args.asPlainText) onClick?.(event);\n }\n\n /** The id of the options list while it is open (upstream `aria-controls`). */\n get ariaControls(): string | undefined {\n return this.args.select.isOpen ? this.args.listboxId : undefined;\n }\n\n <template>\n <div class={{this.containerClass}}>\n <input\n tabindex=\"-1\"\n aria-hidden=\"true\"\n style=\"opacity: 0; width:0px; height:0px; position: absolute; top: 40%; border:solid 1px transparent !important; margin:0px !important; padding: 0; pointer-events: none;\"\n class=\"fake-input-for-html-form-validity\"\n {{!@glint-expect-error}}\n {{validatableControl @isInvalid}}\n />\n <input\n class=\"ember-power-select-trigger-multiple-input euiComboBox__input\n {{this.inputClass}}\"\n autocomplete=\"off\"\n autocorrect=\"off\"\n autocapitalize=\"off\"\n {{!@glint-expect-error}}\n autofocus={{@autoFocus}}\n spellcheck={{false}}\n id=\"ember-power-select-trigger-multiple-input-{{@select.uniqueId}}\"\n data-test-subj=\"comboBoxSearchInput\"\n value={{this.value}}\n role={{if @role @role \"combobox\"}}\n aria-autocomplete=\"list\"\n aria-haspopup=\"listbox\"\n aria-expanded={{if @select.isOpen \"true\" \"false\"}}\n aria-controls={{this.ariaControls}}\n {{! @glint-expect-error `required` is passed by EuiComboBoxTrigger }}\n aria-required={{if @required \"true\"}}\n aria-activedescendant={{if this.hasActiveOption @ariaActiveDescendant}}\n aria-label={{@ariaLabel}}\n aria-labelledby={{@ariaLabelledBy}}\n aria-describedby={{@ariaDescribedBy}}\n {{! @glint-expect-error `isInvalid` is passed by EuiComboBoxTrigger }}\n aria-invalid={{if @isInvalid \"true\"}}\n placeholder={{this.maybePlaceholder}}\n disabled={{@select.disabled}}\n tabindex={{@tabindex}}\n form=\"power-select-fake-form\"\n {{on \"focus\" this.handleFocus}}\n {{on \"blur\" this.handleBlur}}\n {{on \"input\" this.handleInput}}\n {{on \"keydown\" this.handleKeydown}}\n {{on \"click\" this.handleClick}}\n {{this.registerInput}}\n />\n </div>\n </template>\n}\n"],"names":["INPUT_CONTAINER","position","display","flexGrow","minInlineSize","maxInlineSize","EuiComboBoxTriggerInputComponent","PowerSelectInput","registerInput","modifier","element","inputRef","args","maybePlaceholder","isDefaultPlaceholder","undefined","selected","select","searchText","length","placeholder","inputClass","context","getEuiThemeContext","styles","useEuiBorealisStyles","euiComboBoxInputStyles","euiClass","boxSizing","margin","padding","euiComboBoxInput","fieldSizing","inlineSize","fillWidth","n","prototype","cached","hasActiveOption","Boolean","isOpen","highlighted","containerClass","handleKeydown","e","target","onKeydown","stopPropagation","key","test","action","handleBlur","event","onBlur","value","search","plainText","plainTextValue","handleClick","onClick","onPlainTextClick","asPlainText","ariaControls","listboxId","setComponentTemplate","precompileTemplate","strictMode","scope","validatableControl","on"],"mappings":"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"}
1
+ {"version":3,"file":"input.js","sources":["../../../../src/components/eui-combo-box/trigger/input.gts"],"sourcesContent":["import { cached } from '@glimmer/tracking';\nimport { on } from '@ember/modifier';\nimport { action } from '@ember/object';\n\nimport { modifier } from 'ember-modifier';\nimport PowerSelectInput from 'ember-power-select/components/power-select/input';\n\nimport validatableControl from '../../../modifiers/validatable-control.ts';\nimport { getEuiThemeContext } from '../../../utils/emotion/consume.ts';\nimport { euiComboBoxInputStyles } from '../../../utils/eui/styles.generated.ts';\nimport { euiClass, useEuiBorealisStyles } from '../../../utils/eui/styles.ts';\n\n/** Holds the search input and the hidden validity input. */\nconst INPUT_CONTAINER = {\n position: 'relative',\n display: 'flex',\n flexGrow: 1,\n minInlineSize: '2px',\n maxInlineSize: '100%'\n} as const;\n\n/** @private The search input inside EuiComboBox's trigger. */\nexport default class EuiComboBoxTriggerInputComponent extends PowerSelectInput {\n /** Upstream `inputRef`: the search input, or `null` when it goes away. */\n registerInput = modifier((element: HTMLInputElement) => {\n // @ts-expect-error `inputRef` is passed by EuiComboBoxTrigger\n const inputRef = this.args.inputRef as\n | ((element: HTMLInputElement | null) => void)\n | undefined;\n\n inputRef?.(element);\n\n return () => inputRef?.(null);\n });\n\n /**\n * Shows @placeholder while nothing is selected (power-select 9's own\n * `placeholder` getter uses @searchPlaceholder instead).\n */\n get maybePlaceholder(): string | undefined {\n if (!this.args.isDefaultPlaceholder) {\n return undefined;\n }\n\n const selected = this.args.select.selected as unknown[] | undefined;\n\n // upstream: no placeholder while searching\n if (this.args.select.searchText) return '';\n\n // @ts-expect-error `placeholder` is passed by EuiComboBoxTrigger\n return !selected || selected.length === 0 ? this.args.placeholder || '' : '';\n }\n\n /**\n * Upstream `euiComboBoxInput`: transparent, borderless, the form control\n * text. Upstream measures the typed text for the input's width; here the\n * input sizes to its content (`field-sizing`) and fills the rest of the\n * row, so it wraps below the pills like upstream's. With a placeholder or\n * plain text selection it takes the whole row.\n *\n * Not upstream: under a plain text selection rendered with EuiComboBox's\n * block (`@hidesValue`), the text is transparent but the caret is not.\n * The value stays the label (screen readers, typing over it).\n */\n @cached\n get inputClass(): string {\n const context = getEuiThemeContext(this);\n const styles = useEuiBorealisStyles(context, euiComboBoxInputStyles);\n\n return euiClass(\n context,\n { boxSizing: 'border-box', margin: 0, padding: 0 },\n styles.euiComboBoxInput,\n {\n flexGrow: 1,\n fieldSizing: 'content',\n // @ts-expect-error `fillWidth` is passed by EuiComboBoxTrigger\n inlineSize: this.args.fillWidth ? '100%' : undefined\n },\n // @ts-expect-error `hidesValue` is passed by EuiComboBoxTrigger\n this.args.hidesValue && {\n '&, &:disabled': {\n color: 'transparent',\n caretColor: context.upstream.euiTheme.colors.textParagraph\n }\n }\n );\n }\n\n /** An option is highlighted in the open list (`aria-activedescendant`). */\n get hasActiveOption(): boolean {\n const select = this.args.select;\n\n return Boolean(select.isOpen && select.highlighted != null);\n }\n\n @cached\n get containerClass(): string {\n const context = getEuiThemeContext(this);\n\n return euiClass(context, INPUT_CONTAINER);\n }\n\n /**\n * Keys go to EuiComboBox first (through ember-power-select's keydown\n * handler): it handles Enter, Escape, Tab, the arrows and Backspace\n * like upstream.\n */\n @action\n handleKeydown(e: KeyboardEvent): false | void {\n if (e.target === null) return;\n\n if (this.args.onKeydown && this.args.onKeydown(e) === false) {\n e.stopPropagation();\n\n return false;\n }\n\n if (\n e.key === 'Backspace' ||\n (e.key?.length === 1 && /[a-z0-9 ]/i.test(e.key))\n ) {\n // Backspace, keys 0-9, a-z or SPACE edit the text\n e.stopPropagation();\n }\n }\n\n /** Upstream keeps the typed text on blur (EuiComboBox decides). */\n @action\n handleBlur(event: FocusEvent): void {\n this.args.onBlur?.(event);\n }\n\n /**\n * Upstream `searchValue`: plain text single selection shows the search\n * text, else the selected option's label, as the input's value.\n */\n get value(): string {\n const search = this.args.select.searchText;\n // @ts-expect-error `plainTextValue` is passed by EuiComboBoxTrigger\n const plainText = this.args.plainTextValue as string | undefined;\n\n if (plainText === undefined) return search;\n\n return search || plainText;\n }\n\n /** Upstream re-opens the list on every click of a plain text input. */\n @action\n handleClick(event: MouseEvent): void {\n // @ts-expect-error `onPlainTextClick` is passed by EuiComboBoxTrigger\n const onClick = this.args.onPlainTextClick as\n | ((event: MouseEvent) => void)\n | undefined;\n\n // @ts-expect-error `asPlainText` is passed by EuiComboBoxTrigger\n if (this.args.asPlainText) onClick?.(event);\n\n this.selectHiddenValue(event);\n }\n\n /**\n * Not upstream: under a selection's block the value's text is hidden, so\n * typing replaces it (as a new search) instead of adding to it.\n */\n selectHiddenValue = (event: Event): void => {\n // @ts-expect-error `hidesValue` is passed by EuiComboBoxTrigger\n if (!this.args.hidesValue) return;\n\n (event.target as HTMLInputElement | null)?.select?.();\n };\n\n /** The id of the options list while it is open (upstream `aria-controls`). */\n get ariaControls(): string | undefined {\n return this.args.select.isOpen ? this.args.listboxId : undefined;\n }\n\n <template>\n <div class={{this.containerClass}}>\n <input\n tabindex=\"-1\"\n aria-hidden=\"true\"\n style=\"opacity: 0; width:0px; height:0px; position: absolute; top: 40%; border:solid 1px transparent !important; margin:0px !important; padding: 0; pointer-events: none;\"\n class=\"fake-input-for-html-form-validity\"\n {{!@glint-expect-error}}\n {{validatableControl @isInvalid}}\n />\n <input\n class=\"ember-power-select-trigger-multiple-input euiComboBox__input\n {{this.inputClass}}\"\n autocomplete=\"off\"\n autocorrect=\"off\"\n autocapitalize=\"off\"\n {{!@glint-expect-error}}\n autofocus={{@autoFocus}}\n spellcheck={{false}}\n id=\"ember-power-select-trigger-multiple-input-{{@select.uniqueId}}\"\n data-test-subj=\"comboBoxSearchInput\"\n value={{this.value}}\n role={{if @role @role \"combobox\"}}\n aria-autocomplete=\"list\"\n aria-haspopup=\"listbox\"\n aria-expanded={{if @select.isOpen \"true\" \"false\"}}\n aria-controls={{this.ariaControls}}\n {{! @glint-expect-error `required` is passed by EuiComboBoxTrigger }}\n aria-required={{if @required \"true\"}}\n aria-activedescendant={{if this.hasActiveOption @ariaActiveDescendant}}\n aria-label={{@ariaLabel}}\n aria-labelledby={{@ariaLabelledBy}}\n aria-describedby={{@ariaDescribedBy}}\n {{! @glint-expect-error `isInvalid` is passed by EuiComboBoxTrigger }}\n aria-invalid={{if @isInvalid \"true\"}}\n placeholder={{this.maybePlaceholder}}\n disabled={{@select.disabled}}\n tabindex={{@tabindex}}\n form=\"power-select-fake-form\"\n {{on \"focus\" this.handleFocus}}\n {{on \"focus\" this.selectHiddenValue}}\n {{on \"blur\" this.handleBlur}}\n {{on \"input\" this.handleInput}}\n {{on \"keydown\" this.handleKeydown}}\n {{on \"click\" this.handleClick}}\n {{this.registerInput}}\n />\n </div>\n </template>\n}\n"],"names":["INPUT_CONTAINER","position","display","flexGrow","minInlineSize","maxInlineSize","EuiComboBoxTriggerInputComponent","PowerSelectInput","registerInput","modifier","element","inputRef","args","maybePlaceholder","isDefaultPlaceholder","undefined","selected","select","searchText","length","placeholder","inputClass","context","getEuiThemeContext","styles","useEuiBorealisStyles","euiComboBoxInputStyles","euiClass","boxSizing","margin","padding","euiComboBoxInput","fieldSizing","inlineSize","fillWidth","hidesValue","color","caretColor","upstream","euiTheme","colors","textParagraph","n","prototype","cached","hasActiveOption","Boolean","isOpen","highlighted","containerClass","handleKeydown","e","target","onKeydown","stopPropagation","key","test","action","handleBlur","event","onBlur","value","search","plainText","plainTextValue","handleClick","onClick","onPlainTextClick","asPlainText","selectHiddenValue","ariaControls","listboxId","setComponentTemplate","precompileTemplate","strictMode","scope","validatableControl","on"],"mappings":"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"}
@@ -103,7 +103,35 @@ class EuiComboBoxTriggerComponent extends PowerSelectTrigger {
103
103
  if (option === undefined) return undefined;
104
104
  return comboBoxOptionLabel(option, this.comboArgs.searchField) ?? '';
105
105
  }
106
+ /**
107
+ * Not upstream: with a caller's block, the plain text selection is
108
+ * rendered with it (as ember-eui 14 did) while nothing is typed; the
109
+ * input's text is hidden under it.
110
+ */
111
+ get showsPlainTextBlock() {
112
+ return Boolean(this.comboArgs.hasOptionBlock && this.plainTextOption !== undefined && !this.comboArgs.select.searchText);
113
+ }
114
+ /**
115
+ * The block over the input wrap, inside its padding, centered like the
116
+ * input's text; clicks go through to the input.
117
+ */
118
+ get plainTextBlockClass() {
119
+ const context = getEuiThemeContext(this);
120
+ return euiClass(context, {
121
+ position: 'absolute',
122
+ inset: 0,
123
+ padding: 'inherit',
124
+ display: 'flex',
125
+ alignItems: 'center',
126
+ minWidth: 0,
127
+ overflow: 'hidden',
128
+ pointerEvents: 'none'
129
+ });
130
+ }
106
131
  /** Plain text selection's option prepend/append: upstream `xxs` spacing. */
132
+ static {
133
+ n(this.prototype, "plainTextBlockClass", [cached]);
134
+ }
107
135
  get plainTextSideClasses() {
108
136
  const context = getEuiThemeContext(this);
109
137
  const styles = comboBoxAppendPrependStyles(String(context.upstream.euiTheme.size.xxs));
@@ -174,7 +202,9 @@ class EuiComboBoxTriggerComponent extends PowerSelectTrigger {
174
202
  {
175
203
  margin: 0,
176
204
  listStyle: 'none'
177
- }, styles.euiComboBoxInputWrapper, !singleSelection && styles.multiSelect, compressed ? styles.compressed : styles.uncompressed, ...(plainText ? [styles.plainText.plainText, compressed ? styles.plainText.compressed : styles.plainText.uncompressed] : []), select.disabled ? styles.disabled : stateCss, Boolean(this.prepend || this.append) && styles.inGroup);
205
+ }, styles.euiComboBoxInputWrapper, !singleSelection && styles.multiSelect, compressed ? styles.compressed : styles.uncompressed, ...(plainText ? [styles.plainText.plainText, compressed ? styles.plainText.compressed : styles.plainText.uncompressed] : []), select.disabled ? styles.disabled : stateCss, Boolean(this.prepend || this.append) && styles.inGroup, this.showsPlainTextBlock && {
206
+ position: 'relative'
207
+ });
178
208
  }
179
209
  /**
180
210
  * Placeholder shown when searching is disabled: the form control
@@ -210,7 +240,7 @@ class EuiComboBoxTriggerComponent extends PowerSelectTrigger {
210
240
  n(this.prototype, "spacerClass", [cached]);
211
241
  }
212
242
  static {
213
- setComponentTemplate(precompileTemplate("{{!-- @glint-nocheck: not typesafe yet --}}\n<EuiFormControlLayout @icon={{this.icon}} @inputId={{this.inputId}} @isPrependProvided={{if this.prepend true false}} @isAppendProvided={{if this.append true false}} @iconSide=\"right\" {{on \"mousedown\" this.keepToggle capture=true}} {{on \"touchstart\" this.keepToggle capture=true}} {{on \"touchend\" this.keepToggle capture=true}} {{on \"focusout\" this.toggleBlur}} {{on \"keydown\" this.toggleKeydown}} @fullWidth={{@fullWidth}} @compressed={{@compressed}} @readOnly={{@readOnly}} @isInvalid={{@isInvalid}} @clear={{this.clearProps}} @isLoading={{@isLoading}} @disabled={{@select.disabled}} @css={{this.layoutCss}}>\n <:prepend>\n {{#if (isSingleText this.prepend)}}\n <EuiFormPrepend @label={{this.prepend}} @inputId={{this.inputId}} @compressed={{@compressed}} />\n {{else}}\n {{#each (nodeList this.prepend) as |node|}}\n {{#if (isTextNode node)}}\n <EuiFormLabel @for={{this.inputId}}>{{node}}</EuiFormLabel>\n {{else}}\n <EuiComboBoxNode @node={{node}} />\n {{/if}}\n {{/each}}\n {{/if}}\n </:prepend>\n <:field>\n {{!-- template-lint-disable --}}\n <div id=\"ember-power-select-multiple-options-{{@select.uniqueId}}\" class=\"euiComboBox__inputWrap ember-power-select-multiple-options\n {{if this.asPlainText \"euiComboBox__inputWrap--plainText\"}}\n {{this.wrapClass}}\" data-test-subj=\"comboBoxInput\" ...attributes {{!-- no ember-power-select openChange: upstream keeps the search\n text when the list closes (leftover text marks it invalid) --}} {{on \"touchstart\" this.chooseOption}} {{on \"mousedown\" this.chooseOption}}>\n {{!-- template-lint-enable --}}\n {{!-- upstream: no pill for plain text (the input shows it), and\n no single selection pill while searching --}}\n {{#if (and (not this.asPlainText) (or (and @singleSelection (not @select.searchText)) (not @singleSelection)))}}\n {{#each @select.selected as |opt idx|}}\n {{#if @selectedItemComponent}}\n {{#let (component @selectedItemComponent extra=@extra option=opt select=@select) as |SelectedItemComponent|}}\n <SelectedItemComponent />\n {{/let}}\n {{else}}\n <EuiComboBoxPill class=\"ember-power-select-multiple-option\n {{if opt.disabled \"ember-power-select-multiple-option--disabled\"}}\" @option={{opt}} @searchField={{@searchField}} @onClose={{if (or @select.disabled @singleSelection) false (if @onClose (fn (optional @onClose) opt) true)}} @dataSelectedIconIndex={{idx}} @color={{opt.color}} @asPlainText={{this.asPlainText}}>\n {{yield opt @select}}\n </EuiComboBoxPill>\n {{/if}}\n {{else}}{{#if (and @placeholder (not @searchEnabled))}}\n <span class=\"ember-power-select-placeholder {{this.placeholderClass}}\">\n {{@placeholder}}\n </span>\n {{/if}}{{/each}}\n {{/if}}\n {{#let (optionNode this.plainTextOption \"prepend\") (optionNode this.plainTextOption \"append\") as |plainPrepend plainAppend|}}\n {{#if plainPrepend}}\n <span class=\"euiComboBoxPlainTextSelection__prepend\n {{this.plainTextSideClasses.prepend}}\"><EuiComboBoxNode @node={{plainPrepend}} @option={{this.plainTextOption}} /></span>\n {{/if}}\n {{#if @searchEnabled}}\n {{#let (component EuiComboBoxTriggerInput select=@select ariaActiveDescendant=@ariaActiveDescendant ariaLabelledBy=(or @inputAriaLabelledBy @ariaLabelledBy) ariaDescribedBy=@ariaDescribedBy ariaLabel=(or @inputAriaLabel @ariaLabel) listboxId=@listboxId tabindex=@inputTabindex inputRef=@inputRef role=@inputRole required=@inputRequired buildSelection=@buildSelection placeholder=@placeholder placeholderComponent=@placeholderComponent searchField=@searchField onFocus=@onFocus isInvalid=@isInvalid fillWidth=(or this.asPlainText this.showPlaceholder) onBlur=@onBlur onKeydown=@onKeydown onInput=@onInput noSuggestions=@noSuggestions plainTextValue=this.plainTextValue asPlainText=this.asPlainText onPlainTextClick=@onPlainTextClick) as |InputComponent|}}\n {{#let (component @placeholderComponent select=@select placeholder=@placeholder isMultipleWithSearch=true inputComponent=InputComponent displayPlaceholder=(and (not @select.searchText) (not @select.selected))) as |PlaceholderComponent|}}\n <PlaceholderComponent />\n {{/let}}\n {{/let}}\n {{else}}\n {{#if this.asPlainText}}\n {{#each @select.selected as |opt|}}\n <EuiComboBoxPill @option={{opt}} @searchField={{@searchField}} @asPlainText={{true}}>{{yield opt @select}}</EuiComboBoxPill>\n {{/each}}\n {{/if}}\n <div class=\"euiComboBox__input {{this.spacerClass}}\"></div>\n {{/if}}\n {{#if plainAppend}}\n <span class=\"euiComboBoxPlainTextSelection__append\n {{this.plainTextSideClasses.append}}\"><EuiComboBoxNode @node={{plainAppend}} @option={{this.plainTextOption}} /></span>\n {{/if}}\n {{/let}}\n {{#if @screenReaderInstructions}}\n {{!-- upstream: read when the input gets focus --}}\n <EuiScreenReaderOnly>\n <span aria-live=\"polite\" id=\"{{@select.uniqueId}}_removeOptionMessage\">{{@screenReaderInstructions}}</span>\n </EuiScreenReaderOnly>\n {{/if}}\n </div>\n </:field>\n <:append>\n {{#if (isSingleText this.append)}}\n <EuiFormAppend @label={{this.append}} @inputId={{this.inputId}} @compressed={{@compressed}} />\n {{else}}\n {{#each (nodeList this.append) as |node|}}\n {{#if (isTextNode node)}}\n <EuiFormLabel @for={{this.inputId}}>{{node}}</EuiFormLabel>\n {{else}}\n <EuiComboBoxNode @node={{node}} />\n {{/if}}\n {{/each}}\n {{/if}}\n </:append>\n</EuiFormControlLayout>", {
243
+ setComponentTemplate(precompileTemplate("{{!-- @glint-nocheck: not typesafe yet --}}\n<EuiFormControlLayout @icon={{this.icon}} @inputId={{this.inputId}} @isPrependProvided={{if this.prepend true false}} @isAppendProvided={{if this.append true false}} @iconSide=\"right\" {{on \"mousedown\" this.keepToggle capture=true}} {{on \"touchstart\" this.keepToggle capture=true}} {{on \"touchend\" this.keepToggle capture=true}} {{on \"focusout\" this.toggleBlur}} {{on \"keydown\" this.toggleKeydown}} @fullWidth={{@fullWidth}} @compressed={{@compressed}} @readOnly={{@readOnly}} @isInvalid={{@isInvalid}} @clear={{this.clearProps}} @isLoading={{@isLoading}} @disabled={{@select.disabled}} @css={{this.layoutCss}}>\n <:prepend>\n {{#if (isSingleText this.prepend)}}\n <EuiFormPrepend @label={{this.prepend}} @inputId={{this.inputId}} @compressed={{@compressed}} />\n {{else}}\n {{#each (nodeList this.prepend) as |node|}}\n {{#if (isTextNode node)}}\n <EuiFormLabel @for={{this.inputId}}>{{node}}</EuiFormLabel>\n {{else}}\n <EuiComboBoxNode @node={{node}} />\n {{/if}}\n {{/each}}\n {{/if}}\n </:prepend>\n <:field>\n {{!-- template-lint-disable --}}\n <div id=\"ember-power-select-multiple-options-{{@select.uniqueId}}\" class=\"euiComboBox__inputWrap ember-power-select-multiple-options\n {{if this.asPlainText \"euiComboBox__inputWrap--plainText\"}}\n {{this.wrapClass}}\" data-test-subj=\"comboBoxInput\" ...attributes {{!-- no ember-power-select openChange: upstream keeps the search\n text when the list closes (leftover text marks it invalid) --}} {{on \"touchstart\" this.chooseOption}} {{on \"mousedown\" this.chooseOption}}>\n {{!-- template-lint-enable --}}\n {{!-- upstream: no pill for plain text (the input shows it), and\n no single selection pill while searching --}}\n {{#if (and (not this.asPlainText) (or (and @singleSelection (not @select.searchText)) (not @singleSelection)))}}\n {{#each @select.selected as |opt idx|}}\n {{#if @selectedItemComponent}}\n {{#let (component @selectedItemComponent extra=@extra option=opt select=@select) as |SelectedItemComponent|}}\n <SelectedItemComponent />\n {{/let}}\n {{else}}\n <EuiComboBoxPill class=\"ember-power-select-multiple-option\n {{if opt.disabled \"ember-power-select-multiple-option--disabled\"}}\" @option={{opt}} @searchField={{@searchField}} @onClose={{if (or @select.disabled @singleSelection) false (if @onClose (fn (optional @onClose) opt) true)}} @dataSelectedIconIndex={{idx}} @color={{opt.color}} @asPlainText={{this.asPlainText}}>\n {{yield opt @select}}\n </EuiComboBoxPill>\n {{/if}}\n {{else}}{{#if (and @placeholder (not @searchEnabled))}}\n <span class=\"ember-power-select-placeholder {{this.placeholderClass}}\">\n {{@placeholder}}\n </span>\n {{/if}}{{/each}}\n {{/if}}\n {{#let (optionNode this.plainTextOption \"prepend\") (optionNode this.plainTextOption \"append\") as |plainPrepend plainAppend|}}\n {{#if plainPrepend}}\n <span class=\"euiComboBoxPlainTextSelection__prepend\n {{this.plainTextSideClasses.prepend}}\"><EuiComboBoxNode @node={{plainPrepend}} @option={{this.plainTextOption}} /></span>\n {{/if}}\n {{#if @searchEnabled}}\n {{#if this.showsPlainTextBlock}}\n <span class=\"euiComboBoxPlainTextSelection__block\n {{this.plainTextBlockClass}}\" aria-hidden=\"true\">{{yield this.plainTextOption @select}}</span>\n {{/if}}\n {{#let (component EuiComboBoxTriggerInput select=@select ariaActiveDescendant=@ariaActiveDescendant ariaLabelledBy=(or @inputAriaLabelledBy @ariaLabelledBy) ariaDescribedBy=@ariaDescribedBy ariaLabel=(or @inputAriaLabel @ariaLabel) listboxId=@listboxId tabindex=@inputTabindex inputRef=@inputRef role=@inputRole required=@inputRequired buildSelection=@buildSelection placeholder=@placeholder placeholderComponent=@placeholderComponent searchField=@searchField onFocus=@onFocus isInvalid=@isInvalid fillWidth=(or this.asPlainText this.showPlaceholder) onBlur=@onBlur onKeydown=@onKeydown onInput=@onInput noSuggestions=@noSuggestions plainTextValue=this.plainTextValue asPlainText=this.asPlainText hidesValue=this.showsPlainTextBlock onPlainTextClick=@onPlainTextClick) as |InputComponent|}}\n {{#let (component @placeholderComponent select=@select placeholder=@placeholder isMultipleWithSearch=true inputComponent=InputComponent displayPlaceholder=(and (not @select.searchText) (not @select.selected))) as |PlaceholderComponent|}}\n <PlaceholderComponent />\n {{/let}}\n {{/let}}\n {{else}}\n {{#if this.asPlainText}}\n {{#each @select.selected as |opt|}}\n <EuiComboBoxPill @option={{opt}} @searchField={{@searchField}} @asPlainText={{true}}>{{yield opt @select}}</EuiComboBoxPill>\n {{/each}}\n {{/if}}\n <div class=\"euiComboBox__input {{this.spacerClass}}\"></div>\n {{/if}}\n {{#if plainAppend}}\n <span class=\"euiComboBoxPlainTextSelection__append\n {{this.plainTextSideClasses.append}}\"><EuiComboBoxNode @node={{plainAppend}} @option={{this.plainTextOption}} /></span>\n {{/if}}\n {{/let}}\n {{#if @screenReaderInstructions}}\n {{!-- upstream: read when the input gets focus --}}\n <EuiScreenReaderOnly>\n <span aria-live=\"polite\" id=\"{{@select.uniqueId}}_removeOptionMessage\">{{@screenReaderInstructions}}</span>\n </EuiScreenReaderOnly>\n {{/if}}\n </div>\n </:field>\n <:append>\n {{#if (isSingleText this.append)}}\n <EuiFormAppend @label={{this.append}} @inputId={{this.inputId}} @compressed={{@compressed}} />\n {{else}}\n {{#each (nodeList this.append) as |node|}}\n {{#if (isTextNode node)}}\n <EuiFormLabel @for={{this.inputId}}>{{node}}</EuiFormLabel>\n {{else}}\n <EuiComboBoxNode @node={{node}} />\n {{/if}}\n {{/each}}\n {{/if}}\n </:append>\n</EuiFormControlLayout>", {
214
244
  strictMode: true,
215
245
  scope: () => ({
216
246
  EuiFormControlLayout,
@@ -1 +1 @@
1
- {"version":3,"file":"trigger.js","sources":["../../../src/components/eui-combo-box/trigger.gts"],"sourcesContent":["import { cached } from '@glimmer/tracking';\nimport { fn } from '@ember/helper';\nimport { on } from '@ember/modifier';\n\nimport optional from '@nullvoxpopuli/ember-composable-helpers/helpers/optional';\nimport PowerSelectTrigger from 'ember-power-select/components/power-select/trigger';\nimport { and, not, or } from 'ember-truth-helpers';\n\nimport { getEuiThemeContext } from '../../utils/emotion/consume.ts';\nimport {\n euiComboBoxInputStyles,\n euiFontSize,\n euiFormVariables\n} from '../../utils/eui/styles.generated.ts';\nimport { euiClass, useEuiBorealisStyles } from '../../utils/eui/styles.ts';\nimport EuiComboBoxPill from '../eui-combo-box-pill.gts';\nimport EuiFormControlLayout from '../eui-form-control-layout.gts';\nimport EuiFormLabel from '../eui-form-label.gts';\nimport EuiFormAppend from '../eui-form-append.gts';\nimport EuiFormPrepend from '../eui-form-prepend.gts';\nimport EuiScreenReaderOnly from '../eui-screen-reader-only.gts';\nimport EuiComboBoxNode from './node.gts';\nimport EuiComboBoxTriggerInput from './trigger/input.gts';\nimport {\n comboBoxAppendPrependStyles,\n comboBoxOptionLabel,\n isTextNode\n} from '../../utils/eui/combo-box.ts';\n\nimport type {\n EuiFormControlLayoutClearProps,\n EuiFormControlLayoutIconShape\n} from '../eui-form-control-layout-icons.gts';\n\nimport type { CSSInterpolation } from '@emotion/css/create-instance';\n\ninterface TriggerSelect {\n uniqueId: string;\n isOpen: boolean;\n disabled: boolean;\n searchText: string;\n selected?: unknown[];\n}\n\ninterface TriggerArgs {\n select: TriggerSelect;\n compressed?: boolean;\n fullWidth?: boolean;\n isInvalid?: boolean;\n placeholder?: string;\n searchEnabled?: boolean;\n singleSelection?: boolean | { asPlainText?: boolean };\n prepend?: unknown;\n append?: unknown;\n noSuggestions?: boolean;\n screenReaderInstructions?: string;\n searchField?: string;\n /** Called with the search input once rendered, and `null` on removal. */\n inputRef?: (element: HTMLInputElement | null) => void;\n allowClear?: boolean;\n onClear?: (event?: Event) => void;\n onToggleList?: (event: MouseEvent) => void;\n /** Focus left the toggle button (upstream `onContainerBlur`). */\n onToggleBlur?: (event: FocusEvent) => void;\n /** A key on the focused toggle button; `true` stops it here. */\n onToggleKeydown?: (event: KeyboardEvent) => boolean;\n}\n\n/** The chevron (`comboBoxToggleListButton`) or an element in it. */\nexport const isToggleButton = (target: EventTarget | null): boolean =>\n Boolean(\n (target as Element | null)?.closest?.(\n '[data-test-subj=\"comboBoxToggleListButton\"]'\n )\n );\n\n/** Upstream side nodes: one string is an EuiFormPrepend/Append label. */\nconst isSingleText = (node: unknown) => !Array.isArray(node) && isTextNode(node);\n\nconst nodeList = (node: unknown): unknown[] =>\n Array.isArray(node) ? node : [node];\n\nconst optionNode = (option: unknown, key: 'prepend' | 'append') =>\n option && typeof option === 'object'\n ? (option as Record<string, unknown>)[key]\n : undefined;\n\n/**\n * @private EuiComboBox's input with the selected pills. Extends\n * ember-power-select's multiple trigger.\n */\nexport default class EuiComboBoxTriggerComponent extends PowerSelectTrigger {\n get comboArgs(): TriggerArgs {\n return this.args as unknown as TriggerArgs;\n }\n\n get asPlainText(): boolean {\n const single = this.comboArgs.singleSelection;\n\n return Boolean(single && typeof single === 'object' && single.asPlainText);\n }\n\n get hasSelection(): boolean {\n return Boolean(this.comboArgs.select.selected?.length);\n }\n\n /**\n * Upstream: `@prepend` / `@append` only show with single selection, so\n * pills never wrap onto rows taller than them.\n */\n get prepend(): unknown {\n return this.comboArgs.singleSelection ? this.comboArgs.prepend : undefined;\n }\n\n get append(): unknown {\n return this.comboArgs.singleSelection ? this.comboArgs.append : undefined;\n }\n\n get inputId(): string {\n return `ember-power-select-trigger-multiple-input-${this.comboArgs.select.uniqueId}`;\n }\n\n /**\n * Upstream's toggle button (`comboBoxToggleListButton`): the chevron is a\n * button opening or closing the list. Upstream `noIcon={!!noSuggestions}`:\n * no list, no chevron; none while disabled either.\n */\n @cached\n get icon(): EuiFormControlLayoutIconShape | undefined {\n const { select, noSuggestions, onToggleList } = this.comboArgs;\n\n if (select.disabled || noSuggestions) return undefined;\n\n return {\n // @ts-expect-error `icon` is curried by EuiComboBox\n type: this.args.icon ?? 'chevronSingleDown',\n side: 'right',\n 'aria-label': select.isOpen\n ? 'Close list of options'\n : 'Open list of options',\n 'data-test-subj': 'comboBoxToggleListButton',\n tabIndex: -1,\n onClick: (event: MouseEvent) => onToggleList?.(event)\n };\n }\n\n /** Upstream `clear` props: `comboBoxClearButton`, shown with a selection. */\n @cached\n get clearProps(): EuiFormControlLayoutClearProps | undefined {\n const { allowClear, onClear } = this.comboArgs;\n\n if (!allowClear || !onClear || !this.hasSelection) return undefined;\n\n return {\n 'data-test-subj': 'comboBoxClearButton',\n onClick: (event: MouseEvent) => onClear(event)\n };\n }\n\n /** Plain text selection: the selected option, shown as the input's text. */\n get plainTextOption(): unknown {\n return this.asPlainText ? this.comboArgs.select.selected?.[0] : undefined;\n }\n\n /** Upstream: the input shows the search text, else the selection's label. */\n get plainTextValue(): string | undefined {\n const option = this.plainTextOption;\n\n if (option === undefined) return undefined;\n\n return comboBoxOptionLabel(option, this.comboArgs.searchField) ?? '';\n }\n\n /** Plain text selection's option prepend/append: upstream `xxs` spacing. */\n @cached\n get plainTextSideClasses(): { prepend: string; append: string } {\n const context = getEuiThemeContext(this);\n const styles = comboBoxAppendPrependStyles(\n String(context.upstream.euiTheme.size.xxs)\n );\n\n return {\n prepend: euiClass(context, styles.prepend),\n append: euiClass(context, styles.append)\n };\n }\n\n /**\n * The toggle button handles its own clicks: ember-basic-dropdown's\n * trigger must not toggle the list on the same press. The press focuses\n * the button, as upstream (the input blurs; the combo box keeps focus).\n */\n keepToggle = (event: Event) => {\n if (!isToggleButton(event.target)) return;\n\n event.stopPropagation();\n };\n\n /**\n * Keys on the focused toggle button run upstream's container `onKeyDown`\n * before ember-basic-dropdown's trigger sees them.\n */\n toggleKeydown = (event: KeyboardEvent) => {\n if (!isToggleButton(event.target)) return;\n\n if (this.comboArgs.onToggleKeydown?.(event)) event.stopPropagation();\n };\n\n /** Upstream `onContainerBlur` for the toggle button. */\n toggleBlur = (event: FocusEvent) => {\n if (!isToggleButton(event.target)) return;\n\n this.comboArgs.onToggleBlur?.(event);\n };\n\n /** Upstream `showPlaceholder`: a placeholder, no selection, no search. */\n get showPlaceholder(): boolean {\n const { placeholder, select } = this.comboArgs;\n\n return Boolean(placeholder && !this.hasSelection && !select.searchText);\n }\n\n /** EuiFormControlLayout grows with the rows of pills (multi selection). */\n @cached\n get layoutCss(): CSSInterpolation[] {\n const styles = useEuiBorealisStyles(\n getEuiThemeContext(this),\n euiComboBoxInputStyles\n );\n\n return [\n styles.formLayout.euiComboBox__formControlLayout,\n !this.comboArgs.singleSelection && styles.formLayout.multiSelect\n ];\n }\n\n /**\n * Upstream `euiComboBoxInputWrapper`: the element that looks like the form\n * control (border, background, padding, focus/invalid/disabled states),\n * holding the pills and the search input.\n */\n @cached\n get wrapClass(): string {\n const context = getEuiThemeContext(this);\n const styles = useEuiBorealisStyles(context, euiComboBoxInputStyles);\n const { compressed, isInvalid, select, singleSelection } = this.comboArgs;\n const plainText = this.asPlainText || this.showPlaceholder;\n const stateCss = select.isOpen\n ? styles.open\n : isInvalid\n ? styles.invalid\n : undefined;\n\n return euiClass(\n context,\n // the wrap is a <div>, but keep any list or prose margins off it\n { margin: 0, listStyle: 'none' },\n styles.euiComboBoxInputWrapper,\n !singleSelection && styles.multiSelect,\n compressed ? styles.compressed : styles.uncompressed,\n ...(plainText\n ? [\n styles.plainText.plainText,\n compressed\n ? styles.plainText.compressed\n : styles.plainText.uncompressed\n ]\n : []),\n select.disabled ? styles.disabled : stateCss,\n Boolean(this.prepend || this.append) && styles.inGroup\n );\n }\n\n /**\n * Placeholder shown when searching is disabled: the form control\n * placeholder color and size (the input shows it otherwise).\n */\n @cached\n get placeholderClass(): string {\n const context = getEuiThemeContext(this);\n const form = useEuiBorealisStyles(context, euiFormVariables);\n\n return euiClass(context, {\n alignSelf: 'center',\n fontSize: euiFontSize(context.upstream, 's', undefined).fontSize,\n color: form.controlPlaceholderText,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap'\n });\n }\n\n /** Keeps the wrap one input tall without a search input. */\n @cached\n get spacerClass(): string {\n const context = getEuiThemeContext(this);\n\n return euiClass(context, {\n blockSize: context.upstream.euiTheme.size.l,\n minInlineSize: '2px'\n });\n }\n\n <template>\n {{! @glint-nocheck: not typesafe yet }}\n <EuiFormControlLayout\n @icon={{this.icon}}\n @inputId={{this.inputId}}\n @isPrependProvided={{if this.prepend true false}}\n @isAppendProvided={{if this.append true false}}\n @iconSide=\"right\"\n {{on \"mousedown\" this.keepToggle capture=true}}\n {{on \"touchstart\" this.keepToggle capture=true}}\n {{on \"touchend\" this.keepToggle capture=true}}\n {{on \"focusout\" this.toggleBlur}}\n {{on \"keydown\" this.toggleKeydown}}\n @fullWidth={{@fullWidth}}\n @compressed={{@compressed}}\n @readOnly={{@readOnly}}\n @isInvalid={{@isInvalid}}\n @clear={{this.clearProps}}\n @isLoading={{@isLoading}}\n @disabled={{@select.disabled}}\n @css={{this.layoutCss}}\n >\n <:prepend>\n {{#if (isSingleText this.prepend)}}\n <EuiFormPrepend\n @label={{this.prepend}}\n @inputId={{this.inputId}}\n @compressed={{@compressed}}\n />\n {{else}}\n {{#each (nodeList this.prepend) as |node|}}\n {{#if (isTextNode node)}}\n <EuiFormLabel @for={{this.inputId}}>{{node}}</EuiFormLabel>\n {{else}}\n <EuiComboBoxNode @node={{node}} />\n {{/if}}\n {{/each}}\n {{/if}}\n </:prepend>\n <:field>\n {{! template-lint-disable }}\n <div\n id=\"ember-power-select-multiple-options-{{@select.uniqueId}}\"\n class=\"euiComboBox__inputWrap ember-power-select-multiple-options\n {{if this.asPlainText 'euiComboBox__inputWrap--plainText'}}\n {{this.wrapClass}}\"\n data-test-subj=\"comboBoxInput\"\n ...attributes\n {{! no ember-power-select openChange: upstream keeps the search\n text when the list closes (leftover text marks it invalid) }}\n {{on \"touchstart\" this.chooseOption}}\n {{on \"mousedown\" this.chooseOption}}\n >\n {{! template-lint-enable }}\n {{! upstream: no pill for plain text (the input shows it), and\n no single selection pill while searching }}\n {{#if\n (and\n (not this.asPlainText)\n (or\n (and @singleSelection (not @select.searchText))\n (not @singleSelection)\n )\n )\n }}\n {{#each @select.selected as |opt idx|}}\n {{#if @selectedItemComponent}}\n {{#let\n (component\n @selectedItemComponent\n extra=@extra\n option=opt\n select=@select\n )\n as |SelectedItemComponent|\n }}\n <SelectedItemComponent />\n {{/let}}\n {{else}}\n <EuiComboBoxPill\n class=\"ember-power-select-multiple-option\n {{if\n opt.disabled\n 'ember-power-select-multiple-option--disabled'\n }}\"\n @option={{opt}}\n @searchField={{@searchField}}\n @onClose={{if\n (or @select.disabled @singleSelection)\n false\n (if @onClose (fn (optional @onClose) opt) true)\n }}\n @dataSelectedIconIndex={{idx}}\n @color={{opt.color}}\n @asPlainText={{this.asPlainText}}\n >\n {{yield opt @select}}\n </EuiComboBoxPill>\n {{/if}}\n {{else}}{{#if (and @placeholder (not @searchEnabled))}}\n <span\n class=\"ember-power-select-placeholder {{this.placeholderClass}}\"\n >\n {{@placeholder}}\n </span>\n {{/if}}{{/each}}\n {{/if}}\n {{#let\n (optionNode this.plainTextOption \"prepend\")\n (optionNode this.plainTextOption \"append\")\n as |plainPrepend plainAppend|\n }}\n {{#if plainPrepend}}\n <span\n class=\"euiComboBoxPlainTextSelection__prepend\n {{this.plainTextSideClasses.prepend}}\"\n ><EuiComboBoxNode\n @node={{plainPrepend}}\n @option={{this.plainTextOption}}\n /></span>\n {{/if}}\n {{#if @searchEnabled}}\n {{#let\n (component\n EuiComboBoxTriggerInput\n select=@select\n ariaActiveDescendant=@ariaActiveDescendant\n ariaLabelledBy=(or @inputAriaLabelledBy @ariaLabelledBy)\n ariaDescribedBy=@ariaDescribedBy\n ariaLabel=(or @inputAriaLabel @ariaLabel)\n listboxId=@listboxId\n tabindex=@inputTabindex\n inputRef=@inputRef\n role=@inputRole\n required=@inputRequired\n buildSelection=@buildSelection\n placeholder=@placeholder\n placeholderComponent=@placeholderComponent\n searchField=@searchField\n onFocus=@onFocus\n isInvalid=@isInvalid\n fillWidth=(or this.asPlainText this.showPlaceholder)\n onBlur=@onBlur\n onKeydown=@onKeydown\n onInput=@onInput\n noSuggestions=@noSuggestions\n plainTextValue=this.plainTextValue\n asPlainText=this.asPlainText\n onPlainTextClick=@onPlainTextClick\n )\n as |InputComponent|\n }}\n {{#let\n (component\n @placeholderComponent\n select=@select\n placeholder=@placeholder\n isMultipleWithSearch=true\n inputComponent=InputComponent\n displayPlaceholder=(and\n (not @select.searchText) (not @select.selected)\n )\n )\n as |PlaceholderComponent|\n }}\n <PlaceholderComponent />\n {{/let}}\n {{/let}}\n {{else}}\n {{#if this.asPlainText}}\n {{#each @select.selected as |opt|}}\n <EuiComboBoxPill\n @option={{opt}}\n @searchField={{@searchField}}\n @asPlainText={{true}}\n >{{yield opt @select}}</EuiComboBoxPill>\n {{/each}}\n {{/if}}\n <div class=\"euiComboBox__input {{this.spacerClass}}\"></div>\n {{/if}}\n {{#if plainAppend}}\n <span\n class=\"euiComboBoxPlainTextSelection__append\n {{this.plainTextSideClasses.append}}\"\n ><EuiComboBoxNode\n @node={{plainAppend}}\n @option={{this.plainTextOption}}\n /></span>\n {{/if}}\n {{/let}}\n {{#if @screenReaderInstructions}}\n {{! upstream: read when the input gets focus }}\n <EuiScreenReaderOnly>\n <span\n aria-live=\"polite\"\n id=\"{{@select.uniqueId}}_removeOptionMessage\"\n >{{@screenReaderInstructions}}</span>\n </EuiScreenReaderOnly>\n {{/if}}\n </div>\n </:field>\n <:append>\n {{#if (isSingleText this.append)}}\n <EuiFormAppend\n @label={{this.append}}\n @inputId={{this.inputId}}\n @compressed={{@compressed}}\n />\n {{else}}\n {{#each (nodeList this.append) as |node|}}\n {{#if (isTextNode node)}}\n <EuiFormLabel @for={{this.inputId}}>{{node}}</EuiFormLabel>\n {{else}}\n <EuiComboBoxNode @node={{node}} />\n {{/if}}\n {{/each}}\n {{/if}}\n </:append>\n </EuiFormControlLayout>\n </template>\n}\n"],"names":["isToggleButton","target","Boolean","closest","isSingleText","node","Array","isArray","isTextNode","nodeList","optionNode","option","key","undefined","EuiComboBoxTriggerComponent","PowerSelectTrigger","comboArgs","args","asPlainText","single","singleSelection","hasSelection","select","selected","length","prepend","append","inputId","uniqueId","icon","noSuggestions","onToggleList","disabled","type","side","isOpen","tabIndex","onClick","event","n","prototype","cached","clearProps","allowClear","onClear","plainTextOption","plainTextValue","comboBoxOptionLabel","searchField","plainTextSideClasses","context","getEuiThemeContext","styles","comboBoxAppendPrependStyles","String","upstream","euiTheme","size","xxs","euiClass","keepToggle","stopPropagation","toggleKeydown","onToggleKeydown","toggleBlur","onToggleBlur","showPlaceholder","placeholder","searchText","layoutCss","useEuiBorealisStyles","euiComboBoxInputStyles","formLayout","euiComboBox__formControlLayout","multiSelect","wrapClass","compressed","isInvalid","plainText","stateCss","open","invalid","margin","listStyle","euiComboBoxInputWrapper","uncompressed","inGroup","placeholderClass","form","euiFormVariables","alignSelf","fontSize","euiFontSize","color","controlPlaceholderText","overflow","textOverflow","whiteSpace","spacerClass","blockSize","l","minInlineSize","setComponentTemplate","precompileTemplate","strictMode","scope","EuiFormControlLayout","on","EuiFormPrepend","EuiFormLabel","EuiComboBoxNode","and","not","or","EuiComboBoxPill","fn","optional","EuiComboBoxTriggerInput","EuiScreenReaderOnly","EuiFormAppend"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAoEA,oEACO,MAAMA,iBAAkBC,MAA0B,IACvDC,QACGD,MAAA,EAA2BE,UAC1B,6CAAA,CAAA;AAIN;AACA,MAAMC,YAAA,GAAgBC,IAAa,IAAK,CAACC,KAAA,CAAMC,OAAO,CAACF,IAAA,CAAA,IAASG,UAAA,CAAWH,IAAA,CAAA;AAE3E,MAAMI,QAAA,GAAYJ,IAAa,IAC7BC,KAAA,CAAMC,OAAO,CAACF,IAAA,CAAA,GAAQA,IAAA,GAAO,CAACA,IAAA,CAAK;AAErC,MAAMK,UAAA,GAAaA,CAACC,MAAe,EAAEC,GAAiB,KACpDD,MAAA,IAAU,OAAOA,MAAA,KAAW,WACvBA,MAAA,CAAmCC,GAAA,CAAI,GACxCC,SAAA;AAEN;;;;AAIe,MAAMC,2BAAA,SAAoCC,kBAAA,CAAA;EACvD,IAAIC,YAAyB;IAC3B,OAAO,IAAI,CAACC,IAAI;AAClB,EAAA;EAEA,IAAIC,WAAAA,GAAuB;AACzB,IAAA,MAAMC,MAAA,GAAS,IAAI,CAACH,SAAS,CAACI,eAAe;AAE7C,IAAA,OAAOlB,QAAQiB,MAAA,IAAU,OAAOA,MAAA,KAAW,QAAA,IAAYA,OAAOD,WAAW,CAAA;AAC3E,EAAA;EAEA,IAAIG,YAAAA,GAAwB;IAC1B,OAAOnB,OAAA,CAAQ,IAAI,CAACc,SAAS,CAACM,MAAM,CAACC,QAAQ,EAAEC,MAAA,CAAA;AACjD,EAAA;AAEA;;;;EAIA,IAAIC,OAAAA,GAAmB;AACrB,IAAA,OAAO,IAAI,CAACT,SAAS,CAACI,eAAe,GAAG,IAAI,CAACJ,SAAS,CAACS,OAAO,GAAGZ,SAAA;AACnE,EAAA;EAEA,IAAIa,MAAAA,GAAkB;AACpB,IAAA,OAAO,IAAI,CAACV,SAAS,CAACI,eAAe,GAAG,IAAI,CAACJ,SAAS,CAACU,MAAM,GAAGb,SAAA;AAClE,EAAA;EAEA,IAAIc,OAAAA,GAAkB;IACpB,OAAO,CAAA,0CAAA,EAA6C,IAAI,CAACX,SAAS,CAACM,MAAM,CAACM,QAAQ,CAAA,CAAE;AACtF,EAAA;AAEA;;;;AAIC;EACD,IACIC,IAAAA,GAAkD;IACpD,MAAM;MAAEP,MAAM;MAAEQ,aAAa;AAAEC,MAAAA;KAAc,GAAG,IAAI,CAACf,SAAS;AAE9D,IAAA,IAAIM,MAAA,CAAOU,QAAQ,IAAIF,aAAA,EAAe,OAAOjB,SAAA;IAE7C,OAAO;AACL;AACAoB,MAAAA,IAAA,EAAM,IAAI,CAAChB,IAAI,CAACY,IAAI,IAAI,mBAAA;AACxBK,MAAAA,IAAA,EAAM,OAAA;AACN,MAAA,YAAA,EAAcZ,MAAA,CAAOa,MAAM,GACvB,uBAAA,GACA,sBAAA;AACJ,MAAA,gBAAA,EAAkB,0BAAA;MAClBC,QAAA,EAAU,EAAC;AACXC,MAAAA,OAAA,EAAUC,KAAO,IAAeP,YAAA,GAAeO,KAAA;KACjD;AACF,EAAA;AAEA;AAAA,EAAA;IAAAC,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,MAAA,EAAA,CAnBCC,MAAA,CAAA,CAAA;AAAA;EAoBD,IACIC,UAAAA,GAAyD;IAC3D,MAAM;MAAEC,UAAU;AAAEC,MAAAA;KAAS,GAAG,IAAI,CAAC5B,SAAS;AAE9C,IAAA,IAAI,CAAC2B,cAAc,CAACC,OAAA,IAAW,CAAC,IAAI,CAACvB,YAAY,EAAE,OAAOR,SAAA;IAE1D,OAAO;AACL,MAAA,gBAAA,EAAkB,qBAAA;AAClBwB,MAAAA,OAAA,EAAUC,KAAO,IAAeM,OAAA,CAAQN,KAAA;KAC1C;AACF,EAAA;AAEA;AAAA,EAAA;IAAAC,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,YAAA,EAAA,CAZCC,MAAA,CAAA,CAAA;AAAA;EAaD,IAAII,eAAAA,GAA2B;AAC7B,IAAA,OAAO,IAAI,CAAC3B,WAAW,GAAG,IAAI,CAACF,SAAS,CAACM,MAAM,CAACC,QAAQ,GAAG,EAAE,GAAGV,SAAA;AAClE,EAAA;AAEA;EACA,IAAIiC,cAAAA,GAAqC;AACvC,IAAA,MAAMnC,MAAA,GAAS,IAAI,CAACkC,eAAe;AAEnC,IAAA,IAAIlC,MAAA,KAAWE,WAAW,OAAOA,SAAA;IAEjC,OAAOkC,oBAAoBpC,MAAA,EAAQ,IAAI,CAACK,SAAS,CAACgC,WAAW,CAAA,IAAK,EAAA;AACpE,EAAA;AAEA;EACA,IACIC,oBAAAA,GAA4D;AAC9D,IAAA,MAAMC,OAAA,GAAUC,mBAAmB,IAAI,CAAA;AACvC,IAAA,MAAMC,MAAA,GAASC,2BAAA,CACbC,MAAA,CAAOJ,OAAA,CAAQK,QAAQ,CAACC,QAAQ,CAACC,IAAI,CAACC,GAAG,CAAA,CAAA;IAG3C,OAAO;MACLjC,OAAA,EAASkC,QAAA,CAAST,OAAA,EAASE,MAAA,CAAO3B,OAAO,CAAA;AACzCC,MAAAA,MAAA,EAAQiC,QAAA,CAAST,OAAA,EAASE,MAAA,CAAO1B,MAAM;KACzC;AACF,EAAA;AAEA;;;;;AAAA,EAAA;IAAAa,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,sBAAA,EAAA,CAbCC,MAAA,CAAA,CAAA;AAAA;EAkBDmB,UAAA,GAActB,KAAO,IAAA;AACnB,IAAA,IAAI,CAACtC,cAAA,CAAesC,KAAA,CAAMrC,MAAM,CAAA,EAAG;IAEnCqC,KAAA,CAAMuB,eAAe,EAAA;EACvB,CAAA;AAEA;;;;EAIAC,aAAA,GAAiBxB,KAAO,IAAA;AACtB,IAAA,IAAI,CAACtC,cAAA,CAAesC,KAAA,CAAMrC,MAAM,CAAA,EAAG;AAEnC,IAAA,IAAI,IAAI,CAACe,SAAS,CAAC+C,eAAe,GAAGzB,KAAA,CAAA,EAAQA,MAAMuB,eAAe,EAAA;EACpE,CAAA;AAEA;EACAG,UAAA,GAAc1B,KAAO,IAAA;AACnB,IAAA,IAAI,CAACtC,cAAA,CAAesC,KAAA,CAAMrC,MAAM,CAAA,EAAG;AAEnC,IAAA,IAAI,CAACe,SAAS,CAACiD,YAAY,GAAG3B,KAAA,CAAA;EAChC,CAAA;AAEA;EACA,IAAI4B,eAAAA,GAA2B;IAC7B,MAAM;MAAEC,WAAW;AAAE7C,MAAAA;KAAQ,GAAG,IAAI,CAACN,SAAS;AAE9C,IAAA,OAAOd,OAAA,CAAQiE,eAAe,CAAC,IAAI,CAAC9C,YAAY,IAAI,CAACC,MAAA,CAAO8C,UAAU,CAAA;AACxE,EAAA;AAEA;EACA,IACIC,YAAgC;IAClC,MAAMjB,MAAA,GAASkB,oBAAA,CACbnB,kBAAA,CAAmB,IAAI,CAAA,EACvBoB,sBAAA,CAAA;AAGF,IAAA,OAAO,CACLnB,MAAA,CAAOoB,UAAU,CAACC,8BAA8B,EAChD,CAAC,IAAI,CAACzD,SAAS,CAACI,eAAe,IAAIgC,MAAA,CAAOoB,UAAU,CAACE,WAAW,CACjE;AACH,EAAA;AAEA;;;;AAIC;AAJD,EAAA;IAAAnC,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,WAAA,EAAA,CAbCC,MAAA,CAAA,CAAA;AAAA;EAkBD,IACIkC,SAAAA,GAAoB;AACtB,IAAA,MAAMzB,OAAA,GAAUC,mBAAmB,IAAI,CAAA;AACvC,IAAA,MAAMC,MAAA,GAASkB,qBAAqBpB,OAAA,EAASqB,sBAAA,CAAA;IAC7C,MAAM;MAAEK,UAAU;MAAEC,SAAS;MAAEvD,MAAM;AAAEF,MAAAA;KAAiB,GAAG,IAAI,CAACJ,SAAS;IACzE,MAAM8D,YAAY,IAAI,CAAC5D,WAAW,IAAI,IAAI,CAACgD,eAAe;AAC1D,IAAA,MAAMa,QAAA,GAAWzD,MAAA,CAAOa,MAAM,GAC1BiB,MAAA,CAAO4B,IAAI,GACXH,SAAA,GACEzB,MAAA,CAAO6B,OAAO,GACdpE,SAAA;IAEN,OAAO8C,QAAA,CACLT;AACA;AACA,IAAA;AAAEgC,MAAAA,MAAA,EAAQ,CAAA;AAAGC,MAAAA,SAAA,EAAW;AAAO,KAAA,EAC/B/B,OAAOgC,uBAAuB,EAC9B,CAAChE,eAAA,IAAmBgC,OAAOsB,WAAW,EACtCE,UAAA,GAAaxB,MAAA,CAAOwB,UAAU,GAAGxB,MAAA,CAAOiC,YAAY,EAAA,IAChDP,SAAA,GACA,CACE1B,MAAA,CAAO0B,SAAS,CAACA,SAAS,EAC1BF,UAAA,GACIxB,MAAA,CAAO0B,SAAS,CAACF,UAAU,GAC3BxB,MAAA,CAAO0B,SAAS,CAACO,YAAY,CAClC,GACD,EAAE,CAAA,EACN/D,MAAA,CAAOU,QAAQ,GAAGoB,MAAA,CAAOpB,QAAQ,GAAG+C,QAAA,EACpC7E,QAAQ,IAAI,CAACuB,OAAO,IAAI,IAAI,CAACC,MAAM,CAAA,IAAK0B,OAAOkC,OAAO,CAAA;AAE1D,EAAA;AAEA;;;AAGC;AAHD,EAAA;IAAA/C,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,WAAA,EAAA,CAhCCC,MAAA,CAAA,CAAA;AAAA;EAoCD,IACI8C,gBAAAA,GAA2B;AAC7B,IAAA,MAAMrC,OAAA,GAAUC,mBAAmB,IAAI,CAAA;AACvC,IAAA,MAAMqC,IAAA,GAAOlB,qBAAqBpB,OAAA,EAASuC,gBAAA,CAAA;IAE3C,OAAO9B,SAAST,OAAA,EAAS;AACvBwC,MAAAA,SAAA,EAAW,QAAA;AACXC,MAAAA,QAAA,EAAUC,YAAY1C,OAAA,CAAQK,QAAQ,EAAE,GAAA,EAAK1C,WAAW8E,QAAQ;MAChEE,KAAA,EAAOL,KAAKM,sBAAsB;AAClCC,MAAAA,QAAA,EAAU,QAAA;AACVC,MAAAA,YAAA,EAAc,UAAA;AACdC,MAAAA,UAAA,EAAY;AACd,KAAA,CAAA;AACF,EAAA;AAEA;AAAA,EAAA;IAAA1D,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,kBAAA,EAAA,CAfCC,MAAA,CAAA,CAAA;AAAA;EAgBD,IACIyD,WAAAA,GAAsB;AACxB,IAAA,MAAMhD,OAAA,GAAUC,mBAAmB,IAAI,CAAA;IAEvC,OAAOQ,SAAST,OAAA,EAAS;MACvBiD,SAAA,EAAWjD,QAAQK,QAAQ,CAACC,QAAQ,CAACC,IAAI,CAAC2C,CAAC;AAC3CC,MAAAA,aAAA,EAAe;AACjB,KAAA,CAAA;AACF,EAAA;AAAA,EAAA;IAAA9D,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,aAAA,EAAA,CARCC,MAAA,CAAA,CAAA;AAAA;AAUD,EAAA;IAAA6D,oBAAA,CAAAC,kBAAA,CAAA,6xLAAA,EA2NA;MAAAC,UAAA,EAAA,IAAA;AAAAC,MAAAA,KAAA,EAAAA,OAAA;QAAAC,oBAAA;QAAAC,EAAA;QAAAvG,YAAA;QAAAwG,cAAA;QAAAnG,QAAA;QAAAD,UAAA;QAAAqG,YAAA;yBAAAC,wBAAA;QAAAC,GAAA;QAAAC,GAAA;QAAAC,EAAA;yBAAAC,wBAAA;QAAAC,EAAA;QAAAC,QAAA;QAAA1G,UAAA;iCAAA2G,gCAAA;QAAAC,mBAAA;AAAAC,QAAAA;AAAA,OAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;"}
1
+ {"version":3,"file":"trigger.js","sources":["../../../src/components/eui-combo-box/trigger.gts"],"sourcesContent":["import { cached } from '@glimmer/tracking';\nimport { fn } from '@ember/helper';\nimport { on } from '@ember/modifier';\n\nimport optional from '@nullvoxpopuli/ember-composable-helpers/helpers/optional';\nimport PowerSelectTrigger from 'ember-power-select/components/power-select/trigger';\nimport { and, not, or } from 'ember-truth-helpers';\n\nimport { getEuiThemeContext } from '../../utils/emotion/consume.ts';\nimport {\n euiComboBoxInputStyles,\n euiFontSize,\n euiFormVariables\n} from '../../utils/eui/styles.generated.ts';\nimport { euiClass, useEuiBorealisStyles } from '../../utils/eui/styles.ts';\nimport EuiComboBoxPill from '../eui-combo-box-pill.gts';\nimport EuiFormControlLayout from '../eui-form-control-layout.gts';\nimport EuiFormLabel from '../eui-form-label.gts';\nimport EuiFormAppend from '../eui-form-append.gts';\nimport EuiFormPrepend from '../eui-form-prepend.gts';\nimport EuiScreenReaderOnly from '../eui-screen-reader-only.gts';\nimport EuiComboBoxNode from './node.gts';\nimport EuiComboBoxTriggerInput from './trigger/input.gts';\nimport {\n comboBoxAppendPrependStyles,\n comboBoxOptionLabel,\n isTextNode\n} from '../../utils/eui/combo-box.ts';\n\nimport type {\n EuiFormControlLayoutClearProps,\n EuiFormControlLayoutIconShape\n} from '../eui-form-control-layout-icons.gts';\n\nimport type { CSSInterpolation } from '@emotion/css/create-instance';\n\ninterface TriggerSelect {\n uniqueId: string;\n isOpen: boolean;\n disabled: boolean;\n searchText: string;\n selected?: unknown[];\n}\n\ninterface TriggerArgs {\n select: TriggerSelect;\n compressed?: boolean;\n fullWidth?: boolean;\n isInvalid?: boolean;\n placeholder?: string;\n searchEnabled?: boolean;\n singleSelection?: boolean | { asPlainText?: boolean };\n /** EuiComboBox's caller passed a block (renders the options). */\n hasOptionBlock?: boolean;\n prepend?: unknown;\n append?: unknown;\n noSuggestions?: boolean;\n screenReaderInstructions?: string;\n searchField?: string;\n /** Called with the search input once rendered, and `null` on removal. */\n inputRef?: (element: HTMLInputElement | null) => void;\n allowClear?: boolean;\n onClear?: (event?: Event) => void;\n onToggleList?: (event: MouseEvent) => void;\n /** Focus left the toggle button (upstream `onContainerBlur`). */\n onToggleBlur?: (event: FocusEvent) => void;\n /** A key on the focused toggle button; `true` stops it here. */\n onToggleKeydown?: (event: KeyboardEvent) => boolean;\n}\n\n/** The chevron (`comboBoxToggleListButton`) or an element in it. */\nexport const isToggleButton = (target: EventTarget | null): boolean =>\n Boolean(\n (target as Element | null)?.closest?.(\n '[data-test-subj=\"comboBoxToggleListButton\"]'\n )\n );\n\n/** Upstream side nodes: one string is an EuiFormPrepend/Append label. */\nconst isSingleText = (node: unknown) => !Array.isArray(node) && isTextNode(node);\n\nconst nodeList = (node: unknown): unknown[] =>\n Array.isArray(node) ? node : [node];\n\nconst optionNode = (option: unknown, key: 'prepend' | 'append') =>\n option && typeof option === 'object'\n ? (option as Record<string, unknown>)[key]\n : undefined;\n\n/**\n * @private EuiComboBox's input with the selected pills. Extends\n * ember-power-select's multiple trigger.\n */\nexport default class EuiComboBoxTriggerComponent extends PowerSelectTrigger {\n get comboArgs(): TriggerArgs {\n return this.args as unknown as TriggerArgs;\n }\n\n get asPlainText(): boolean {\n const single = this.comboArgs.singleSelection;\n\n return Boolean(single && typeof single === 'object' && single.asPlainText);\n }\n\n get hasSelection(): boolean {\n return Boolean(this.comboArgs.select.selected?.length);\n }\n\n /**\n * Upstream: `@prepend` / `@append` only show with single selection, so\n * pills never wrap onto rows taller than them.\n */\n get prepend(): unknown {\n return this.comboArgs.singleSelection ? this.comboArgs.prepend : undefined;\n }\n\n get append(): unknown {\n return this.comboArgs.singleSelection ? this.comboArgs.append : undefined;\n }\n\n get inputId(): string {\n return `ember-power-select-trigger-multiple-input-${this.comboArgs.select.uniqueId}`;\n }\n\n /**\n * Upstream's toggle button (`comboBoxToggleListButton`): the chevron is a\n * button opening or closing the list. Upstream `noIcon={!!noSuggestions}`:\n * no list, no chevron; none while disabled either.\n */\n @cached\n get icon(): EuiFormControlLayoutIconShape | undefined {\n const { select, noSuggestions, onToggleList } = this.comboArgs;\n\n if (select.disabled || noSuggestions) return undefined;\n\n return {\n // @ts-expect-error `icon` is curried by EuiComboBox\n type: this.args.icon ?? 'chevronSingleDown',\n side: 'right',\n 'aria-label': select.isOpen\n ? 'Close list of options'\n : 'Open list of options',\n 'data-test-subj': 'comboBoxToggleListButton',\n tabIndex: -1,\n onClick: (event: MouseEvent) => onToggleList?.(event)\n };\n }\n\n /** Upstream `clear` props: `comboBoxClearButton`, shown with a selection. */\n @cached\n get clearProps(): EuiFormControlLayoutClearProps | undefined {\n const { allowClear, onClear } = this.comboArgs;\n\n if (!allowClear || !onClear || !this.hasSelection) return undefined;\n\n return {\n 'data-test-subj': 'comboBoxClearButton',\n onClick: (event: MouseEvent) => onClear(event)\n };\n }\n\n /** Plain text selection: the selected option, shown as the input's text. */\n get plainTextOption(): unknown {\n return this.asPlainText ? this.comboArgs.select.selected?.[0] : undefined;\n }\n\n /** Upstream: the input shows the search text, else the selection's label. */\n get plainTextValue(): string | undefined {\n const option = this.plainTextOption;\n\n if (option === undefined) return undefined;\n\n return comboBoxOptionLabel(option, this.comboArgs.searchField) ?? '';\n }\n\n /**\n * Not upstream: with a caller's block, the plain text selection is\n * rendered with it (as ember-eui 14 did) while nothing is typed; the\n * input's text is hidden under it.\n */\n get showsPlainTextBlock(): boolean {\n return Boolean(\n this.comboArgs.hasOptionBlock &&\n this.plainTextOption !== undefined &&\n !this.comboArgs.select.searchText\n );\n }\n\n /**\n * The block over the input wrap, inside its padding, centered like the\n * input's text; clicks go through to the input.\n */\n @cached\n get plainTextBlockClass(): string {\n const context = getEuiThemeContext(this);\n\n return euiClass(context, {\n position: 'absolute',\n inset: 0,\n padding: 'inherit',\n display: 'flex',\n alignItems: 'center',\n minWidth: 0,\n overflow: 'hidden',\n pointerEvents: 'none'\n });\n }\n\n /** Plain text selection's option prepend/append: upstream `xxs` spacing. */\n @cached\n get plainTextSideClasses(): { prepend: string; append: string } {\n const context = getEuiThemeContext(this);\n const styles = comboBoxAppendPrependStyles(\n String(context.upstream.euiTheme.size.xxs)\n );\n\n return {\n prepend: euiClass(context, styles.prepend),\n append: euiClass(context, styles.append)\n };\n }\n\n /**\n * The toggle button handles its own clicks: ember-basic-dropdown's\n * trigger must not toggle the list on the same press. The press focuses\n * the button, as upstream (the input blurs; the combo box keeps focus).\n */\n keepToggle = (event: Event) => {\n if (!isToggleButton(event.target)) return;\n\n event.stopPropagation();\n };\n\n /**\n * Keys on the focused toggle button run upstream's container `onKeyDown`\n * before ember-basic-dropdown's trigger sees them.\n */\n toggleKeydown = (event: KeyboardEvent) => {\n if (!isToggleButton(event.target)) return;\n\n if (this.comboArgs.onToggleKeydown?.(event)) event.stopPropagation();\n };\n\n /** Upstream `onContainerBlur` for the toggle button. */\n toggleBlur = (event: FocusEvent) => {\n if (!isToggleButton(event.target)) return;\n\n this.comboArgs.onToggleBlur?.(event);\n };\n\n /** Upstream `showPlaceholder`: a placeholder, no selection, no search. */\n get showPlaceholder(): boolean {\n const { placeholder, select } = this.comboArgs;\n\n return Boolean(placeholder && !this.hasSelection && !select.searchText);\n }\n\n /** EuiFormControlLayout grows with the rows of pills (multi selection). */\n @cached\n get layoutCss(): CSSInterpolation[] {\n const styles = useEuiBorealisStyles(\n getEuiThemeContext(this),\n euiComboBoxInputStyles\n );\n\n return [\n styles.formLayout.euiComboBox__formControlLayout,\n !this.comboArgs.singleSelection && styles.formLayout.multiSelect\n ];\n }\n\n /**\n * Upstream `euiComboBoxInputWrapper`: the element that looks like the form\n * control (border, background, padding, focus/invalid/disabled states),\n * holding the pills and the search input.\n */\n @cached\n get wrapClass(): string {\n const context = getEuiThemeContext(this);\n const styles = useEuiBorealisStyles(context, euiComboBoxInputStyles);\n const { compressed, isInvalid, select, singleSelection } = this.comboArgs;\n const plainText = this.asPlainText || this.showPlaceholder;\n const stateCss = select.isOpen\n ? styles.open\n : isInvalid\n ? styles.invalid\n : undefined;\n\n return euiClass(\n context,\n // the wrap is a <div>, but keep any list or prose margins off it\n { margin: 0, listStyle: 'none' },\n styles.euiComboBoxInputWrapper,\n !singleSelection && styles.multiSelect,\n compressed ? styles.compressed : styles.uncompressed,\n ...(plainText\n ? [\n styles.plainText.plainText,\n compressed\n ? styles.plainText.compressed\n : styles.plainText.uncompressed\n ]\n : []),\n select.disabled ? styles.disabled : stateCss,\n Boolean(this.prepend || this.append) && styles.inGroup,\n this.showsPlainTextBlock && { position: 'relative' }\n );\n }\n\n /**\n * Placeholder shown when searching is disabled: the form control\n * placeholder color and size (the input shows it otherwise).\n */\n @cached\n get placeholderClass(): string {\n const context = getEuiThemeContext(this);\n const form = useEuiBorealisStyles(context, euiFormVariables);\n\n return euiClass(context, {\n alignSelf: 'center',\n fontSize: euiFontSize(context.upstream, 's', undefined).fontSize,\n color: form.controlPlaceholderText,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap'\n });\n }\n\n /** Keeps the wrap one input tall without a search input. */\n @cached\n get spacerClass(): string {\n const context = getEuiThemeContext(this);\n\n return euiClass(context, {\n blockSize: context.upstream.euiTheme.size.l,\n minInlineSize: '2px'\n });\n }\n\n <template>\n {{! @glint-nocheck: not typesafe yet }}\n <EuiFormControlLayout\n @icon={{this.icon}}\n @inputId={{this.inputId}}\n @isPrependProvided={{if this.prepend true false}}\n @isAppendProvided={{if this.append true false}}\n @iconSide=\"right\"\n {{on \"mousedown\" this.keepToggle capture=true}}\n {{on \"touchstart\" this.keepToggle capture=true}}\n {{on \"touchend\" this.keepToggle capture=true}}\n {{on \"focusout\" this.toggleBlur}}\n {{on \"keydown\" this.toggleKeydown}}\n @fullWidth={{@fullWidth}}\n @compressed={{@compressed}}\n @readOnly={{@readOnly}}\n @isInvalid={{@isInvalid}}\n @clear={{this.clearProps}}\n @isLoading={{@isLoading}}\n @disabled={{@select.disabled}}\n @css={{this.layoutCss}}\n >\n <:prepend>\n {{#if (isSingleText this.prepend)}}\n <EuiFormPrepend\n @label={{this.prepend}}\n @inputId={{this.inputId}}\n @compressed={{@compressed}}\n />\n {{else}}\n {{#each (nodeList this.prepend) as |node|}}\n {{#if (isTextNode node)}}\n <EuiFormLabel @for={{this.inputId}}>{{node}}</EuiFormLabel>\n {{else}}\n <EuiComboBoxNode @node={{node}} />\n {{/if}}\n {{/each}}\n {{/if}}\n </:prepend>\n <:field>\n {{! template-lint-disable }}\n <div\n id=\"ember-power-select-multiple-options-{{@select.uniqueId}}\"\n class=\"euiComboBox__inputWrap ember-power-select-multiple-options\n {{if this.asPlainText 'euiComboBox__inputWrap--plainText'}}\n {{this.wrapClass}}\"\n data-test-subj=\"comboBoxInput\"\n ...attributes\n {{! no ember-power-select openChange: upstream keeps the search\n text when the list closes (leftover text marks it invalid) }}\n {{on \"touchstart\" this.chooseOption}}\n {{on \"mousedown\" this.chooseOption}}\n >\n {{! template-lint-enable }}\n {{! upstream: no pill for plain text (the input shows it), and\n no single selection pill while searching }}\n {{#if\n (and\n (not this.asPlainText)\n (or\n (and @singleSelection (not @select.searchText))\n (not @singleSelection)\n )\n )\n }}\n {{#each @select.selected as |opt idx|}}\n {{#if @selectedItemComponent}}\n {{#let\n (component\n @selectedItemComponent\n extra=@extra\n option=opt\n select=@select\n )\n as |SelectedItemComponent|\n }}\n <SelectedItemComponent />\n {{/let}}\n {{else}}\n <EuiComboBoxPill\n class=\"ember-power-select-multiple-option\n {{if\n opt.disabled\n 'ember-power-select-multiple-option--disabled'\n }}\"\n @option={{opt}}\n @searchField={{@searchField}}\n @onClose={{if\n (or @select.disabled @singleSelection)\n false\n (if @onClose (fn (optional @onClose) opt) true)\n }}\n @dataSelectedIconIndex={{idx}}\n @color={{opt.color}}\n @asPlainText={{this.asPlainText}}\n >\n {{yield opt @select}}\n </EuiComboBoxPill>\n {{/if}}\n {{else}}{{#if (and @placeholder (not @searchEnabled))}}\n <span\n class=\"ember-power-select-placeholder {{this.placeholderClass}}\"\n >\n {{@placeholder}}\n </span>\n {{/if}}{{/each}}\n {{/if}}\n {{#let\n (optionNode this.plainTextOption \"prepend\")\n (optionNode this.plainTextOption \"append\")\n as |plainPrepend plainAppend|\n }}\n {{#if plainPrepend}}\n <span\n class=\"euiComboBoxPlainTextSelection__prepend\n {{this.plainTextSideClasses.prepend}}\"\n ><EuiComboBoxNode\n @node={{plainPrepend}}\n @option={{this.plainTextOption}}\n /></span>\n {{/if}}\n {{#if @searchEnabled}}\n {{#if this.showsPlainTextBlock}}\n <span\n class=\"euiComboBoxPlainTextSelection__block\n {{this.plainTextBlockClass}}\"\n aria-hidden=\"true\"\n >{{yield this.plainTextOption @select}}</span>\n {{/if}}\n {{#let\n (component\n EuiComboBoxTriggerInput\n select=@select\n ariaActiveDescendant=@ariaActiveDescendant\n ariaLabelledBy=(or @inputAriaLabelledBy @ariaLabelledBy)\n ariaDescribedBy=@ariaDescribedBy\n ariaLabel=(or @inputAriaLabel @ariaLabel)\n listboxId=@listboxId\n tabindex=@inputTabindex\n inputRef=@inputRef\n role=@inputRole\n required=@inputRequired\n buildSelection=@buildSelection\n placeholder=@placeholder\n placeholderComponent=@placeholderComponent\n searchField=@searchField\n onFocus=@onFocus\n isInvalid=@isInvalid\n fillWidth=(or this.asPlainText this.showPlaceholder)\n onBlur=@onBlur\n onKeydown=@onKeydown\n onInput=@onInput\n noSuggestions=@noSuggestions\n plainTextValue=this.plainTextValue\n asPlainText=this.asPlainText\n hidesValue=this.showsPlainTextBlock\n onPlainTextClick=@onPlainTextClick\n )\n as |InputComponent|\n }}\n {{#let\n (component\n @placeholderComponent\n select=@select\n placeholder=@placeholder\n isMultipleWithSearch=true\n inputComponent=InputComponent\n displayPlaceholder=(and\n (not @select.searchText) (not @select.selected)\n )\n )\n as |PlaceholderComponent|\n }}\n <PlaceholderComponent />\n {{/let}}\n {{/let}}\n {{else}}\n {{#if this.asPlainText}}\n {{#each @select.selected as |opt|}}\n <EuiComboBoxPill\n @option={{opt}}\n @searchField={{@searchField}}\n @asPlainText={{true}}\n >{{yield opt @select}}</EuiComboBoxPill>\n {{/each}}\n {{/if}}\n <div class=\"euiComboBox__input {{this.spacerClass}}\"></div>\n {{/if}}\n {{#if plainAppend}}\n <span\n class=\"euiComboBoxPlainTextSelection__append\n {{this.plainTextSideClasses.append}}\"\n ><EuiComboBoxNode\n @node={{plainAppend}}\n @option={{this.plainTextOption}}\n /></span>\n {{/if}}\n {{/let}}\n {{#if @screenReaderInstructions}}\n {{! upstream: read when the input gets focus }}\n <EuiScreenReaderOnly>\n <span\n aria-live=\"polite\"\n id=\"{{@select.uniqueId}}_removeOptionMessage\"\n >{{@screenReaderInstructions}}</span>\n </EuiScreenReaderOnly>\n {{/if}}\n </div>\n </:field>\n <:append>\n {{#if (isSingleText this.append)}}\n <EuiFormAppend\n @label={{this.append}}\n @inputId={{this.inputId}}\n @compressed={{@compressed}}\n />\n {{else}}\n {{#each (nodeList this.append) as |node|}}\n {{#if (isTextNode node)}}\n <EuiFormLabel @for={{this.inputId}}>{{node}}</EuiFormLabel>\n {{else}}\n <EuiComboBoxNode @node={{node}} />\n {{/if}}\n {{/each}}\n {{/if}}\n </:append>\n </EuiFormControlLayout>\n </template>\n}\n"],"names":["isToggleButton","target","Boolean","closest","isSingleText","node","Array","isArray","isTextNode","nodeList","optionNode","option","key","undefined","EuiComboBoxTriggerComponent","PowerSelectTrigger","comboArgs","args","asPlainText","single","singleSelection","hasSelection","select","selected","length","prepend","append","inputId","uniqueId","icon","noSuggestions","onToggleList","disabled","type","side","isOpen","tabIndex","onClick","event","n","prototype","cached","clearProps","allowClear","onClear","plainTextOption","plainTextValue","comboBoxOptionLabel","searchField","showsPlainTextBlock","hasOptionBlock","searchText","plainTextBlockClass","context","getEuiThemeContext","euiClass","position","inset","padding","display","alignItems","minWidth","overflow","pointerEvents","plainTextSideClasses","styles","comboBoxAppendPrependStyles","String","upstream","euiTheme","size","xxs","keepToggle","stopPropagation","toggleKeydown","onToggleKeydown","toggleBlur","onToggleBlur","showPlaceholder","placeholder","layoutCss","useEuiBorealisStyles","euiComboBoxInputStyles","formLayout","euiComboBox__formControlLayout","multiSelect","wrapClass","compressed","isInvalid","plainText","stateCss","open","invalid","margin","listStyle","euiComboBoxInputWrapper","uncompressed","inGroup","placeholderClass","form","euiFormVariables","alignSelf","fontSize","euiFontSize","color","controlPlaceholderText","textOverflow","whiteSpace","spacerClass","blockSize","l","minInlineSize","setComponentTemplate","precompileTemplate","strictMode","scope","EuiFormControlLayout","on","EuiFormPrepend","EuiFormLabel","EuiComboBoxNode","and","not","or","EuiComboBoxPill","fn","optional","EuiComboBoxTriggerInput","EuiScreenReaderOnly","EuiFormAppend"],"mappings":"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"}