@magicx-eng/ai-autocomplete-vanilla 0.19.0 → 0.19.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -707,7 +707,7 @@ Override these on the container element. All built-in defaults use `:where()` (z
707
707
  | `--aia-product-bg` | `transparent` | `transparent` | Product card background. |
708
708
  | `--aia-product-bg-active` | `--aia-option-bg` | `--aia-option-bg` | Product card background on hover. |
709
709
  | `--aia-product-media-bg` | `--aia-skeleton-bg` | `--aia-skeleton-bg` | Fill behind the product image, and of the placeholder tile when a product has no image. |
710
- | `--aia-scroll-arrow-bg` | `--aia-surface` | `--aia-surface` | Fill of the "more below" arrow — the round button that rises at the bottom of the option list while there is more to scroll to. |
710
+ | `--aia-scroll-arrow-bg` | `--aia-surface` | `--aia-surface` | Fill of the "more below" arrow — the round button that fades in at the bottom of the option list while there is more to scroll to, and out while it scrolls. |
711
711
  | `--aia-scroll-arrow-color` | `--aia-option-color` | `--aia-option-color` | Chevron color of the arrow (`--aia-scroll-arrow-color-hover` on hover). |
712
712
  | `--aia-scroll-arrow-border` | `--aia-dropdown-border` | `--aia-dropdown-border` | Hairline around the arrow. |
713
713
  | `--aia-scroll-arrow-shadow` | `0 2px 8px rgba(0,0,0,0.12)` | `0 2px 8px rgba(0,0,0,0.12)` | Elevation of the arrow. |
package/dist/index.d.mts CHANGED
@@ -1317,19 +1317,15 @@ declare function needsOptionsGridMeasurement(count: number, isMobile: boolean):
1317
1317
  * The full layout decision, measurements included.
1318
1318
  *
1319
1319
  * Web, five-plus options: two columns of three visible rows — but only when
1320
- * every option provably fits on one line. Rows fill row-major (even indices
1321
- * left, odd right). The left track is exactly as wide as its widest option
1322
- * (a fixed pixel width from the measurement) and the right track takes the
1323
- * rest of the grid which is at least its own widest option, because
1324
- * `left + right <= gridWidth` is the fit check. So the second column starts
1325
- * right where the first column's longest text ends, and short options such as
1326
- * sizes sit beside each other. (Splitting the width in proportion to the two
1327
- * maxima, as this used to, handed ALL the slack out in that ratio too: one
1328
- * long option in the left column and "34"-length options on the right gave
1329
- * the left column ~85% of the box and pushed the right column to the far
1330
- * edge, 2026-09-03.) When the pair doesn't fit — or there are no usable
1331
- * measurements (SSR, hidden grid, loading skeletons) — the layout stays one
1332
- * scrollable column.
1320
+ * every option provably fits on one line in half the grid. Rows fill
1321
+ * row-major (even indices left, odd right) and the two columns are always the
1322
+ * same width, a plain 50/50 split, so the fit check is that the widest option
1323
+ * fits in half of `gridWidth`. Content-sized tracks were tried twice (split in
1324
+ * proportion to the column maxima, then left column to its content) and both
1325
+ * read as columns of "weird widths" (2026-09-04); an even split is what the
1326
+ * eye expects. When the widest option doesn't fit in half or there are no
1327
+ * usable measurements (SSR, hidden grid, loading skeletons) the layout stays
1328
+ * one scrollable column.
1333
1329
  *
1334
1330
  * `rowWidths` are single-line pixel widths of the rendered rows (see
1335
1331
  * `measureOptionsGrid`); `gridWidth` is the grid's content width.
@@ -1487,19 +1483,22 @@ declare function renderEditableContent(args: RenderEditableArgs): void;
1487
1483
  * The "more below" arrow for the options grid.
1488
1484
  *
1489
1485
  * When the option list is taller than its scroll box, a small round button
1490
- * with a down chevron sits at the bottom-centre of the list. It slides up into
1491
- * view from behind the dropdown's lower edge (the footer, when the dropdown
1492
- * opens below the input) the moment there is more to scroll to, dissolves in
1493
- * place once the list is scrolled to its end, and scrolls the list a page on
1494
- * click. The entrance follows the reference (the RB2B support panel,
1495
- * 2026-08-19): a white 32 px disc that rises from behind the composer over
1496
- * ~150–180 ms, no fade. The exit deliberately does not mirror it sliding
1497
- * back down read as the disc "falling" into the footer (2026-09-03), so
1498
- * instead it fades out where it stands, with a slight shrink, over
1499
- * SCROLL_ARROW_LEAVE_MS. The stylesheets key the two moves off two attributes:
1500
- * `data-aia-visible` (rise, stay) and `data-aia-leaving` (dissolve), which
1501
- * this controller holds for the fade's length and then clears, so the disc
1502
- * re-parks below the edge invisibly ready to rise again.
1486
+ * with a down chevron sits at the bottom-centre of the list and scrolls it a
1487
+ * page on click. It never moves every appearance is an opacity fade in
1488
+ * place, SCROLL_ARROW_FADE_MS long (the stylesheets own the curve):
1489
+ *
1490
+ * - At rest with more below (the list just opened, or scrolling has stopped
1491
+ * short of the end), it fades in.
1492
+ * - The moment the list scrolls, it fades out, and stays out while scroll
1493
+ * events keep coming.
1494
+ * - Once scrolling has been quiet for SCROLL_ARROW_SCROLL_IDLE_MS it fades
1495
+ * back in unless the list is now at its bottom, where it stays out.
1496
+ *
1497
+ * Earlier versions rose from behind the footer and slid or shrank away; each
1498
+ * read as the disc travelling with the scroll (2026-09-03/04), hence the
1499
+ * fade-only rule. The stylesheets key everything off one attribute,
1500
+ * `data-aia-visible`: present → opacity 1, absent → opacity 0, both
1501
+ * transitioned.
1503
1502
  *
1504
1503
  * The DOM differs per package (vanilla builds the button here; React and
1505
1504
  * Angular render their own markup with the same classes and data attributes),
@@ -1520,18 +1519,22 @@ declare function renderEditableContent(args: RenderEditableArgs): void;
1520
1519
  declare const SCROLL_ARROW_CLASS = "magicx-aia-scroll-arrow";
1521
1520
  /** Stable styling hook (module class names aren't part of the API). */
1522
1521
  declare const SCROLL_ARROW_ATTR = "data-aia-scroll-arrow";
1523
- /** Present on the button while it is shown. The stylesheets slide it in on this. */
1522
+ /**
1523
+ * Present on the button while it is shown. The stylesheets fade it in on this
1524
+ * and back out when it is removed.
1525
+ */
1524
1526
  declare const SCROLL_ARROW_VISIBLE_ATTR = "data-aia-visible";
1525
1527
  /**
1526
- * Present on the button while it fades out. The stylesheets dissolve it in
1527
- * place on this; the controller clears it after SCROLL_ARROW_LEAVE_MS.
1528
+ * Length of the fade, either way. Documents the `opacity` transition in each
1529
+ * package's stylesheet, which is what actually runs it change both together.
1528
1530
  */
1529
- declare const SCROLL_ARROW_LEAVING_ATTR = "data-aia-leaving";
1531
+ declare const SCROLL_ARROW_FADE_MS = 1000;
1530
1532
  /**
1531
- * Length of the fade-out. Mirrors the `[data-aia-leaving]` transition in each
1532
- * package's stylesheet change both together.
1533
+ * Quiet time after the last scroll event before the list counts as "stopped"
1534
+ * and the arrow may come back. Wheel and trackpad scrolls deliver events a
1535
+ * frame or so apart, so this only has to outlast a frame with some slack.
1533
1536
  */
1534
- declare const SCROLL_ARROW_LEAVE_MS = 240;
1537
+ declare const SCROLL_ARROW_SCROLL_IDLE_MS = 160;
1535
1538
  /** Inline custom property: how far the button's bottom edge sits above the dropdown's padding edge. */
1536
1539
  declare const SCROLL_ARROW_BOTTOM_VAR = "--aia-scroll-arrow-bottom";
1537
1540
  declare const SCROLL_ARROW_LABEL = "Scroll down for more options";
@@ -1541,7 +1544,7 @@ interface ScrollArrowController {
1541
1544
  destroy(): void;
1542
1545
  }
1543
1546
  interface ScrollArrowArgs {
1544
- /** The dropdown panel — the button's containing block; its lower edge clips the hidden button. */
1547
+ /** The dropdown panel — the button's containing block. */
1545
1548
  dropdown: HTMLElement;
1546
1549
  /** The options grid (the scroll box). */
1547
1550
  grid: HTMLElement;
@@ -1690,4 +1693,4 @@ interface SubmitResultExtras {
1690
1693
  */
1691
1694
  declare function buildSubmitResult(text: string, completedParams: CompletedParamState[], skippedParams?: SkippedParamState[], extras?: SubmitResultExtras): AutocompleteResult;
1692
1695
 
1693
- export { AIAutocomplete, type APIConfig, type APIKeyConfig, ATTRIBUTION_URL, type AccessTokenConfig, type AccessTokenResult, type AppearanceMode, type AutocompleteRequest, type AutocompleteResponse, type AutocompleteResult, type CompletedParam, type CompletedParamState, type CoreOptions, type CoreState, DATE_RANGE_META_END, DATE_RANGE_META_START, type DateMonthView, type DateRange, type DateSelection, type FormatType, type IdentifiedParam, type IdentifiedParamState, type InputItem, type LooseDateOptions, ModeController, OPTIONS_GRID_MOBILE_QUERY, OPTION_ENTER_DELAY_VAR, OPTION_ENTER_FADE_MS, OPTION_ENTER_RISE_MS, OPTION_ENTER_RISE_PX, OPTION_ENTER_STAGGER_MS, type OptionOverride, type OptionOverrides, type OptionsGridLayout, type OptionsGridPlan, PLACEHOLDER_FADE_OUT_MS, PLACEHOLDER_LEAVING_ATTR, PLACEHOLDER_SWAP_GAP_MS, PLACEHOLDER_TYPE_MS, PLACEHOLDER_WORD_PAUSE_MS, type Product, type ProductsConfig, RANGE_SEPARATOR, type RecentlySuggested, type RenderMode, SCROLL_ARROW_ATTR, SCROLL_ARROW_BOTTOM_VAR, SCROLL_ARROW_CLASS, SCROLL_ARROW_LABEL, SCROLL_ARROW_LEAVE_MS, SCROLL_ARROW_LEAVING_ATTR, SCROLL_ARROW_VISIBLE_ATTR, SKIPPED_PARAM_TEXT, type ScrollArrowArgs, type ScrollArrowController, type Segment, type SkippedParamState, type Store, type SubmitResultExtras, type Suggestion, type SuggestionOption, type TaskKind, WEEKDAY_LABELS, addMonths, attachScrollArrow, buildAttributionUrl, buildDateOptions, buildQuery, buildSubmitResult, cellDay, cellIso, computeOptionsGridLayout, createStore, cursorIsAtEnd, dateCellMarks, dateSelectionFor, extractPlainText, formatAbsoluteDate, formatDate, formatDateRange, getCursorOffset, getFooterHint, identifiedParamLabel, isCalendarFormat, isOptionsGridMobileViewport, isoDate, measureOptionsGrid, monthLabel, needsOptionsGridMeasurement, optionEnterDelayMs, optionsEntranceDurationMs, optionsGridTemplateColumns, parseDate, parseLooseDate, parseLooseDateRange, plainTextLength, planOptionsGrid, previousGraphemeBoundary, renderEditableContent, resolveFormatType, resolveIdentifiedDate, scrollCaretIntoView, selectedIsoFromText, selectedRangeFor, setCursorOffset, toWireIdentifiedParams, visibleDateRange, withSkippedParams };
1696
+ export { AIAutocomplete, type APIConfig, type APIKeyConfig, ATTRIBUTION_URL, type AccessTokenConfig, type AccessTokenResult, type AppearanceMode, type AutocompleteRequest, type AutocompleteResponse, type AutocompleteResult, type CompletedParam, type CompletedParamState, type CoreOptions, type CoreState, DATE_RANGE_META_END, DATE_RANGE_META_START, type DateMonthView, type DateRange, type DateSelection, type FormatType, type IdentifiedParam, type IdentifiedParamState, type InputItem, type LooseDateOptions, ModeController, OPTIONS_GRID_MOBILE_QUERY, OPTION_ENTER_DELAY_VAR, OPTION_ENTER_FADE_MS, OPTION_ENTER_RISE_MS, OPTION_ENTER_RISE_PX, OPTION_ENTER_STAGGER_MS, type OptionOverride, type OptionOverrides, type OptionsGridLayout, type OptionsGridPlan, PLACEHOLDER_FADE_OUT_MS, PLACEHOLDER_LEAVING_ATTR, PLACEHOLDER_SWAP_GAP_MS, PLACEHOLDER_TYPE_MS, PLACEHOLDER_WORD_PAUSE_MS, type Product, type ProductsConfig, RANGE_SEPARATOR, type RecentlySuggested, type RenderMode, SCROLL_ARROW_ATTR, SCROLL_ARROW_BOTTOM_VAR, SCROLL_ARROW_CLASS, SCROLL_ARROW_FADE_MS, SCROLL_ARROW_LABEL, SCROLL_ARROW_SCROLL_IDLE_MS, SCROLL_ARROW_VISIBLE_ATTR, SKIPPED_PARAM_TEXT, type ScrollArrowArgs, type ScrollArrowController, type Segment, type SkippedParamState, type Store, type SubmitResultExtras, type Suggestion, type SuggestionOption, type TaskKind, WEEKDAY_LABELS, addMonths, attachScrollArrow, buildAttributionUrl, buildDateOptions, buildQuery, buildSubmitResult, cellDay, cellIso, computeOptionsGridLayout, createStore, cursorIsAtEnd, dateCellMarks, dateSelectionFor, extractPlainText, formatAbsoluteDate, formatDate, formatDateRange, getCursorOffset, getFooterHint, identifiedParamLabel, isCalendarFormat, isOptionsGridMobileViewport, isoDate, measureOptionsGrid, monthLabel, needsOptionsGridMeasurement, optionEnterDelayMs, optionsEntranceDurationMs, optionsGridTemplateColumns, parseDate, parseLooseDate, parseLooseDateRange, plainTextLength, planOptionsGrid, previousGraphemeBoundary, renderEditableContent, resolveFormatType, resolveIdentifiedDate, scrollCaretIntoView, selectedIsoFromText, selectedRangeFor, setCursorOffset, toWireIdentifiedParams, visibleDateRange, withSkippedParams };
package/dist/index.d.ts CHANGED
@@ -1317,19 +1317,15 @@ declare function needsOptionsGridMeasurement(count: number, isMobile: boolean):
1317
1317
  * The full layout decision, measurements included.
1318
1318
  *
1319
1319
  * Web, five-plus options: two columns of three visible rows — but only when
1320
- * every option provably fits on one line. Rows fill row-major (even indices
1321
- * left, odd right). The left track is exactly as wide as its widest option
1322
- * (a fixed pixel width from the measurement) and the right track takes the
1323
- * rest of the grid which is at least its own widest option, because
1324
- * `left + right <= gridWidth` is the fit check. So the second column starts
1325
- * right where the first column's longest text ends, and short options such as
1326
- * sizes sit beside each other. (Splitting the width in proportion to the two
1327
- * maxima, as this used to, handed ALL the slack out in that ratio too: one
1328
- * long option in the left column and "34"-length options on the right gave
1329
- * the left column ~85% of the box and pushed the right column to the far
1330
- * edge, 2026-09-03.) When the pair doesn't fit — or there are no usable
1331
- * measurements (SSR, hidden grid, loading skeletons) — the layout stays one
1332
- * scrollable column.
1320
+ * every option provably fits on one line in half the grid. Rows fill
1321
+ * row-major (even indices left, odd right) and the two columns are always the
1322
+ * same width, a plain 50/50 split, so the fit check is that the widest option
1323
+ * fits in half of `gridWidth`. Content-sized tracks were tried twice (split in
1324
+ * proportion to the column maxima, then left column to its content) and both
1325
+ * read as columns of "weird widths" (2026-09-04); an even split is what the
1326
+ * eye expects. When the widest option doesn't fit in half or there are no
1327
+ * usable measurements (SSR, hidden grid, loading skeletons) the layout stays
1328
+ * one scrollable column.
1333
1329
  *
1334
1330
  * `rowWidths` are single-line pixel widths of the rendered rows (see
1335
1331
  * `measureOptionsGrid`); `gridWidth` is the grid's content width.
@@ -1487,19 +1483,22 @@ declare function renderEditableContent(args: RenderEditableArgs): void;
1487
1483
  * The "more below" arrow for the options grid.
1488
1484
  *
1489
1485
  * When the option list is taller than its scroll box, a small round button
1490
- * with a down chevron sits at the bottom-centre of the list. It slides up into
1491
- * view from behind the dropdown's lower edge (the footer, when the dropdown
1492
- * opens below the input) the moment there is more to scroll to, dissolves in
1493
- * place once the list is scrolled to its end, and scrolls the list a page on
1494
- * click. The entrance follows the reference (the RB2B support panel,
1495
- * 2026-08-19): a white 32 px disc that rises from behind the composer over
1496
- * ~150–180 ms, no fade. The exit deliberately does not mirror it sliding
1497
- * back down read as the disc "falling" into the footer (2026-09-03), so
1498
- * instead it fades out where it stands, with a slight shrink, over
1499
- * SCROLL_ARROW_LEAVE_MS. The stylesheets key the two moves off two attributes:
1500
- * `data-aia-visible` (rise, stay) and `data-aia-leaving` (dissolve), which
1501
- * this controller holds for the fade's length and then clears, so the disc
1502
- * re-parks below the edge invisibly ready to rise again.
1486
+ * with a down chevron sits at the bottom-centre of the list and scrolls it a
1487
+ * page on click. It never moves every appearance is an opacity fade in
1488
+ * place, SCROLL_ARROW_FADE_MS long (the stylesheets own the curve):
1489
+ *
1490
+ * - At rest with more below (the list just opened, or scrolling has stopped
1491
+ * short of the end), it fades in.
1492
+ * - The moment the list scrolls, it fades out, and stays out while scroll
1493
+ * events keep coming.
1494
+ * - Once scrolling has been quiet for SCROLL_ARROW_SCROLL_IDLE_MS it fades
1495
+ * back in unless the list is now at its bottom, where it stays out.
1496
+ *
1497
+ * Earlier versions rose from behind the footer and slid or shrank away; each
1498
+ * read as the disc travelling with the scroll (2026-09-03/04), hence the
1499
+ * fade-only rule. The stylesheets key everything off one attribute,
1500
+ * `data-aia-visible`: present → opacity 1, absent → opacity 0, both
1501
+ * transitioned.
1503
1502
  *
1504
1503
  * The DOM differs per package (vanilla builds the button here; React and
1505
1504
  * Angular render their own markup with the same classes and data attributes),
@@ -1520,18 +1519,22 @@ declare function renderEditableContent(args: RenderEditableArgs): void;
1520
1519
  declare const SCROLL_ARROW_CLASS = "magicx-aia-scroll-arrow";
1521
1520
  /** Stable styling hook (module class names aren't part of the API). */
1522
1521
  declare const SCROLL_ARROW_ATTR = "data-aia-scroll-arrow";
1523
- /** Present on the button while it is shown. The stylesheets slide it in on this. */
1522
+ /**
1523
+ * Present on the button while it is shown. The stylesheets fade it in on this
1524
+ * and back out when it is removed.
1525
+ */
1524
1526
  declare const SCROLL_ARROW_VISIBLE_ATTR = "data-aia-visible";
1525
1527
  /**
1526
- * Present on the button while it fades out. The stylesheets dissolve it in
1527
- * place on this; the controller clears it after SCROLL_ARROW_LEAVE_MS.
1528
+ * Length of the fade, either way. Documents the `opacity` transition in each
1529
+ * package's stylesheet, which is what actually runs it change both together.
1528
1530
  */
1529
- declare const SCROLL_ARROW_LEAVING_ATTR = "data-aia-leaving";
1531
+ declare const SCROLL_ARROW_FADE_MS = 1000;
1530
1532
  /**
1531
- * Length of the fade-out. Mirrors the `[data-aia-leaving]` transition in each
1532
- * package's stylesheet change both together.
1533
+ * Quiet time after the last scroll event before the list counts as "stopped"
1534
+ * and the arrow may come back. Wheel and trackpad scrolls deliver events a
1535
+ * frame or so apart, so this only has to outlast a frame with some slack.
1533
1536
  */
1534
- declare const SCROLL_ARROW_LEAVE_MS = 240;
1537
+ declare const SCROLL_ARROW_SCROLL_IDLE_MS = 160;
1535
1538
  /** Inline custom property: how far the button's bottom edge sits above the dropdown's padding edge. */
1536
1539
  declare const SCROLL_ARROW_BOTTOM_VAR = "--aia-scroll-arrow-bottom";
1537
1540
  declare const SCROLL_ARROW_LABEL = "Scroll down for more options";
@@ -1541,7 +1544,7 @@ interface ScrollArrowController {
1541
1544
  destroy(): void;
1542
1545
  }
1543
1546
  interface ScrollArrowArgs {
1544
- /** The dropdown panel — the button's containing block; its lower edge clips the hidden button. */
1547
+ /** The dropdown panel — the button's containing block. */
1545
1548
  dropdown: HTMLElement;
1546
1549
  /** The options grid (the scroll box). */
1547
1550
  grid: HTMLElement;
@@ -1690,4 +1693,4 @@ interface SubmitResultExtras {
1690
1693
  */
1691
1694
  declare function buildSubmitResult(text: string, completedParams: CompletedParamState[], skippedParams?: SkippedParamState[], extras?: SubmitResultExtras): AutocompleteResult;
1692
1695
 
1693
- export { AIAutocomplete, type APIConfig, type APIKeyConfig, ATTRIBUTION_URL, type AccessTokenConfig, type AccessTokenResult, type AppearanceMode, type AutocompleteRequest, type AutocompleteResponse, type AutocompleteResult, type CompletedParam, type CompletedParamState, type CoreOptions, type CoreState, DATE_RANGE_META_END, DATE_RANGE_META_START, type DateMonthView, type DateRange, type DateSelection, type FormatType, type IdentifiedParam, type IdentifiedParamState, type InputItem, type LooseDateOptions, ModeController, OPTIONS_GRID_MOBILE_QUERY, OPTION_ENTER_DELAY_VAR, OPTION_ENTER_FADE_MS, OPTION_ENTER_RISE_MS, OPTION_ENTER_RISE_PX, OPTION_ENTER_STAGGER_MS, type OptionOverride, type OptionOverrides, type OptionsGridLayout, type OptionsGridPlan, PLACEHOLDER_FADE_OUT_MS, PLACEHOLDER_LEAVING_ATTR, PLACEHOLDER_SWAP_GAP_MS, PLACEHOLDER_TYPE_MS, PLACEHOLDER_WORD_PAUSE_MS, type Product, type ProductsConfig, RANGE_SEPARATOR, type RecentlySuggested, type RenderMode, SCROLL_ARROW_ATTR, SCROLL_ARROW_BOTTOM_VAR, SCROLL_ARROW_CLASS, SCROLL_ARROW_LABEL, SCROLL_ARROW_LEAVE_MS, SCROLL_ARROW_LEAVING_ATTR, SCROLL_ARROW_VISIBLE_ATTR, SKIPPED_PARAM_TEXT, type ScrollArrowArgs, type ScrollArrowController, type Segment, type SkippedParamState, type Store, type SubmitResultExtras, type Suggestion, type SuggestionOption, type TaskKind, WEEKDAY_LABELS, addMonths, attachScrollArrow, buildAttributionUrl, buildDateOptions, buildQuery, buildSubmitResult, cellDay, cellIso, computeOptionsGridLayout, createStore, cursorIsAtEnd, dateCellMarks, dateSelectionFor, extractPlainText, formatAbsoluteDate, formatDate, formatDateRange, getCursorOffset, getFooterHint, identifiedParamLabel, isCalendarFormat, isOptionsGridMobileViewport, isoDate, measureOptionsGrid, monthLabel, needsOptionsGridMeasurement, optionEnterDelayMs, optionsEntranceDurationMs, optionsGridTemplateColumns, parseDate, parseLooseDate, parseLooseDateRange, plainTextLength, planOptionsGrid, previousGraphemeBoundary, renderEditableContent, resolveFormatType, resolveIdentifiedDate, scrollCaretIntoView, selectedIsoFromText, selectedRangeFor, setCursorOffset, toWireIdentifiedParams, visibleDateRange, withSkippedParams };
1696
+ export { AIAutocomplete, type APIConfig, type APIKeyConfig, ATTRIBUTION_URL, type AccessTokenConfig, type AccessTokenResult, type AppearanceMode, type AutocompleteRequest, type AutocompleteResponse, type AutocompleteResult, type CompletedParam, type CompletedParamState, type CoreOptions, type CoreState, DATE_RANGE_META_END, DATE_RANGE_META_START, type DateMonthView, type DateRange, type DateSelection, type FormatType, type IdentifiedParam, type IdentifiedParamState, type InputItem, type LooseDateOptions, ModeController, OPTIONS_GRID_MOBILE_QUERY, OPTION_ENTER_DELAY_VAR, OPTION_ENTER_FADE_MS, OPTION_ENTER_RISE_MS, OPTION_ENTER_RISE_PX, OPTION_ENTER_STAGGER_MS, type OptionOverride, type OptionOverrides, type OptionsGridLayout, type OptionsGridPlan, PLACEHOLDER_FADE_OUT_MS, PLACEHOLDER_LEAVING_ATTR, PLACEHOLDER_SWAP_GAP_MS, PLACEHOLDER_TYPE_MS, PLACEHOLDER_WORD_PAUSE_MS, type Product, type ProductsConfig, RANGE_SEPARATOR, type RecentlySuggested, type RenderMode, SCROLL_ARROW_ATTR, SCROLL_ARROW_BOTTOM_VAR, SCROLL_ARROW_CLASS, SCROLL_ARROW_FADE_MS, SCROLL_ARROW_LABEL, SCROLL_ARROW_SCROLL_IDLE_MS, SCROLL_ARROW_VISIBLE_ATTR, SKIPPED_PARAM_TEXT, type ScrollArrowArgs, type ScrollArrowController, type Segment, type SkippedParamState, type Store, type SubmitResultExtras, type Suggestion, type SuggestionOption, type TaskKind, WEEKDAY_LABELS, addMonths, attachScrollArrow, buildAttributionUrl, buildDateOptions, buildQuery, buildSubmitResult, cellDay, cellIso, computeOptionsGridLayout, createStore, cursorIsAtEnd, dateCellMarks, dateSelectionFor, extractPlainText, formatAbsoluteDate, formatDate, formatDateRange, getCursorOffset, getFooterHint, identifiedParamLabel, isCalendarFormat, isOptionsGridMobileViewport, isoDate, measureOptionsGrid, monthLabel, needsOptionsGridMeasurement, optionEnterDelayMs, optionsEntranceDurationMs, optionsGridTemplateColumns, parseDate, parseLooseDate, parseLooseDateRange, plainTextLength, planOptionsGrid, previousGraphemeBoundary, renderEditableContent, resolveFormatType, resolveIdentifiedDate, scrollCaretIntoView, selectedIsoFromText, selectedRangeFor, setCursorOffset, toWireIdentifiedParams, visibleDateRange, withSkippedParams };