@navikt/ds-react 6.14.0 → 6.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. package/cjs/form/combobox/FilteredOptions/AddNewOption.d.ts +3 -0
  2. package/cjs/form/combobox/FilteredOptions/AddNewOption.js +41 -0
  3. package/cjs/form/combobox/FilteredOptions/AddNewOption.js.map +1 -0
  4. package/cjs/form/combobox/FilteredOptions/FilteredOptions.js +13 -57
  5. package/cjs/form/combobox/FilteredOptions/FilteredOptions.js.map +1 -1
  6. package/cjs/form/combobox/FilteredOptions/FilteredOptionsItem.d.ts +6 -0
  7. package/cjs/form/combobox/FilteredOptions/FilteredOptionsItem.js +43 -0
  8. package/cjs/form/combobox/FilteredOptions/FilteredOptionsItem.js.map +1 -0
  9. package/cjs/form/combobox/FilteredOptions/LoadingMessage.d.ts +3 -0
  10. package/cjs/form/combobox/FilteredOptions/LoadingMessage.js +16 -0
  11. package/cjs/form/combobox/FilteredOptions/LoadingMessage.js.map +1 -0
  12. package/cjs/form/combobox/FilteredOptions/MaxSelectedMessage.d.ts +3 -0
  13. package/cjs/form/combobox/FilteredOptions/MaxSelectedMessage.js +20 -0
  14. package/cjs/form/combobox/FilteredOptions/MaxSelectedMessage.js.map +1 -0
  15. package/cjs/form/combobox/FilteredOptions/NoSearchHitsMessage.d.ts +3 -0
  16. package/cjs/form/combobox/FilteredOptions/NoSearchHitsMessage.js +14 -0
  17. package/cjs/form/combobox/FilteredOptions/NoSearchHitsMessage.js.map +1 -0
  18. package/cjs/form/combobox/Input/Input.d.ts +1 -0
  19. package/cjs/form/combobox/Input/Input.js +3 -2
  20. package/cjs/form/combobox/Input/Input.js.map +1 -1
  21. package/cjs/form/combobox/Input/InputController.js +1 -1
  22. package/cjs/form/combobox/Input/InputController.js.map +1 -1
  23. package/cjs/overlays/floating-menu/Menu.d.ts +106 -0
  24. package/cjs/overlays/floating-menu/Menu.js +593 -0
  25. package/cjs/overlays/floating-menu/Menu.js.map +1 -0
  26. package/cjs/overlays/floating-menu/parts/FocusScope.d.ts +22 -0
  27. package/cjs/overlays/floating-menu/parts/FocusScope.js +89 -0
  28. package/cjs/overlays/floating-menu/parts/FocusScope.js.map +1 -0
  29. package/cjs/overlays/floating-menu/parts/RovingFocus.d.ts +9 -0
  30. package/cjs/overlays/floating-menu/parts/RovingFocus.js +112 -0
  31. package/cjs/overlays/floating-menu/parts/RovingFocus.js.map +1 -0
  32. package/cjs/overlays/floating-menu/parts/SlottedDivElement.d.ts +7 -0
  33. package/cjs/overlays/floating-menu/parts/SlottedDivElement.js +46 -0
  34. package/cjs/overlays/floating-menu/parts/SlottedDivElement.js.map +1 -0
  35. package/cjs/util/composeEventHandlers.d.ts +1 -1
  36. package/esm/form/combobox/FilteredOptions/AddNewOption.d.ts +3 -0
  37. package/esm/form/combobox/FilteredOptions/AddNewOption.js +36 -0
  38. package/esm/form/combobox/FilteredOptions/AddNewOption.js.map +1 -0
  39. package/esm/form/combobox/FilteredOptions/FilteredOptions.js +13 -57
  40. package/esm/form/combobox/FilteredOptions/FilteredOptions.js.map +1 -1
  41. package/esm/form/combobox/FilteredOptions/FilteredOptionsItem.d.ts +6 -0
  42. package/esm/form/combobox/FilteredOptions/FilteredOptionsItem.js +38 -0
  43. package/esm/form/combobox/FilteredOptions/FilteredOptionsItem.js.map +1 -0
  44. package/esm/form/combobox/FilteredOptions/LoadingMessage.d.ts +3 -0
  45. package/esm/form/combobox/FilteredOptions/LoadingMessage.js +11 -0
  46. package/esm/form/combobox/FilteredOptions/LoadingMessage.js.map +1 -0
  47. package/esm/form/combobox/FilteredOptions/MaxSelectedMessage.d.ts +3 -0
  48. package/esm/form/combobox/FilteredOptions/MaxSelectedMessage.js +15 -0
  49. package/esm/form/combobox/FilteredOptions/MaxSelectedMessage.js.map +1 -0
  50. package/esm/form/combobox/FilteredOptions/NoSearchHitsMessage.d.ts +3 -0
  51. package/esm/form/combobox/FilteredOptions/NoSearchHitsMessage.js +9 -0
  52. package/esm/form/combobox/FilteredOptions/NoSearchHitsMessage.js.map +1 -0
  53. package/esm/form/combobox/Input/Input.d.ts +1 -0
  54. package/esm/form/combobox/Input/Input.js +3 -2
  55. package/esm/form/combobox/Input/Input.js.map +1 -1
  56. package/esm/form/combobox/Input/InputController.js +1 -1
  57. package/esm/form/combobox/Input/InputController.js.map +1 -1
  58. package/esm/overlays/floating-menu/Menu.d.ts +106 -0
  59. package/esm/overlays/floating-menu/Menu.js +551 -0
  60. package/esm/overlays/floating-menu/Menu.js.map +1 -0
  61. package/esm/overlays/floating-menu/parts/FocusScope.d.ts +22 -0
  62. package/esm/overlays/floating-menu/parts/FocusScope.js +63 -0
  63. package/esm/overlays/floating-menu/parts/FocusScope.js.map +1 -0
  64. package/esm/overlays/floating-menu/parts/RovingFocus.d.ts +9 -0
  65. package/esm/overlays/floating-menu/parts/RovingFocus.js +86 -0
  66. package/esm/overlays/floating-menu/parts/RovingFocus.js.map +1 -0
  67. package/esm/overlays/floating-menu/parts/SlottedDivElement.d.ts +7 -0
  68. package/esm/overlays/floating-menu/parts/SlottedDivElement.js +20 -0
  69. package/esm/overlays/floating-menu/parts/SlottedDivElement.js.map +1 -0
  70. package/esm/util/composeEventHandlers.d.ts +1 -1
  71. package/package.json +3 -3
  72. package/src/form/combobox/FilteredOptions/AddNewOption.tsx +63 -0
  73. package/src/form/combobox/FilteredOptions/FilteredOptions.tsx +11 -121
  74. package/src/form/combobox/FilteredOptions/FilteredOptionsItem.tsx +73 -0
  75. package/src/form/combobox/FilteredOptions/LoadingMessage.tsx +20 -0
  76. package/src/form/combobox/FilteredOptions/MaxSelectedMessage.tsx +27 -0
  77. package/src/form/combobox/FilteredOptions/NoSearchHitsMessage.tsx +19 -0
  78. package/src/form/combobox/Input/Input.tsx +4 -2
  79. package/src/form/combobox/Input/InputController.tsx +1 -0
  80. package/src/overlays/floating-menu/Menu.tsx +1177 -0
  81. package/src/overlays/floating-menu/parts/FocusScope.tsx +84 -0
  82. package/src/overlays/floating-menu/parts/RovingFocus.tsx +121 -0
  83. package/src/overlays/floating-menu/parts/SlottedDivElement.tsx +17 -0
  84. package/src/util/composeEventHandlers.ts +1 -1
@@ -0,0 +1,3 @@
1
+ import React from "react";
2
+ declare const AddNewOption: () => React.JSX.Element;
3
+ export default AddNewOption;
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const clsx_1 = __importDefault(require("clsx"));
7
+ const react_1 = __importDefault(require("react"));
8
+ const aksel_icons_1 = require("@navikt/aksel-icons");
9
+ const typography_1 = require("../../../typography");
10
+ const Input_context_1 = require("../Input/Input.context");
11
+ const selectedOptionsContext_1 = require("../SelectedOptions/selectedOptionsContext");
12
+ const combobox_utils_1 = require("../combobox-utils");
13
+ const filtered_options_util_1 = __importDefault(require("./filtered-options-util"));
14
+ const filteredOptionsContext_1 = require("./filteredOptionsContext");
15
+ const AddNewOption = () => {
16
+ const { inputProps: { id }, size, value, } = (0, Input_context_1.useInputContext)();
17
+ const { setIsMouseLastUsedInputDevice, toggleIsListOpen, activeDecendantId, virtualFocus, } = (0, filteredOptionsContext_1.useFilteredOptionsContext)();
18
+ const { isMultiSelect, selectedOptions, toggleOption } = (0, selectedOptionsContext_1.useSelectedOptionsContext)();
19
+ return (react_1.default.createElement("li", { tabIndex: -1, onMouseMove: () => {
20
+ if (activeDecendantId !== filtered_options_util_1.default.getAddNewOptionId(id)) {
21
+ virtualFocus.moveFocusToElement(filtered_options_util_1.default.getAddNewOptionId(id));
22
+ setIsMouseLastUsedInputDevice(true);
23
+ }
24
+ }, onPointerUp: (event) => {
25
+ toggleOption((0, combobox_utils_1.toComboboxOption)(value), event);
26
+ if (!isMultiSelect && !(0, combobox_utils_1.isInList)(value, selectedOptions))
27
+ toggleIsListOpen(false);
28
+ }, id: filtered_options_util_1.default.getAddNewOptionId(id), className: (0, clsx_1.default)("navds-combobox__list-item navds-combobox__list-item--new-option", {
29
+ "navds-combobox__list-item--new-option--focus": activeDecendantId === filtered_options_util_1.default.getAddNewOptionId(id),
30
+ }), role: "option", "aria-selected": false },
31
+ react_1.default.createElement(aksel_icons_1.PlusIcon, { "aria-hidden": true }),
32
+ react_1.default.createElement(typography_1.BodyShort, { size: size },
33
+ "Legg til",
34
+ " ",
35
+ react_1.default.createElement(typography_1.Label, { as: "span", size: size },
36
+ "\u201C",
37
+ value,
38
+ "\u201D"))));
39
+ };
40
+ exports.default = AddNewOption;
41
+ //# sourceMappingURL=AddNewOption.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AddNewOption.js","sourceRoot":"","sources":["../../../../src/form/combobox/FilteredOptions/AddNewOption.tsx"],"names":[],"mappings":";;;;;AAAA,gDAAsB;AACtB,kDAA0B;AAC1B,qDAA+C;AAC/C,oDAAuD;AACvD,0DAAyD;AACzD,sFAAsF;AACtF,sDAA+D;AAC/D,oFAA0D;AAC1D,qEAAqE;AAErE,MAAM,YAAY,GAAG,GAAG,EAAE;IACxB,MAAM,EACJ,UAAU,EAAE,EAAE,EAAE,EAAE,EAClB,IAAI,EACJ,KAAK,GACN,GAAG,IAAA,+BAAe,GAAE,CAAC;IACtB,MAAM,EACJ,6BAA6B,EAC7B,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,GACb,GAAG,IAAA,kDAAyB,GAAE,CAAC;IAChC,MAAM,EAAE,aAAa,EAAE,eAAe,EAAE,YAAY,EAAE,GACpD,IAAA,kDAAyB,GAAE,CAAC;IAC9B,OAAO,CACL,sCACE,QAAQ,EAAE,CAAC,CAAC,EACZ,WAAW,EAAE,GAAG,EAAE;YAChB,IAAI,iBAAiB,KAAK,+BAAmB,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE,CAAC;gBACpE,YAAY,CAAC,kBAAkB,CAC7B,+BAAmB,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAC1C,CAAC;gBACF,6BAA6B,CAAC,IAAI,CAAC,CAAC;YACtC,CAAC;QACH,CAAC,EACD,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE;YACrB,YAAY,CAAC,IAAA,iCAAgB,EAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;YAC7C,IAAI,CAAC,aAAa,IAAI,CAAC,IAAA,yBAAQ,EAAC,KAAK,EAAE,eAAe,CAAC;gBACrD,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC,EACD,EAAE,EAAE,+BAAmB,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAC7C,SAAS,EAAE,IAAA,cAAE,EACX,iEAAiE,EACjE;YACE,8CAA8C,EAC5C,iBAAiB,KAAK,+BAAmB,CAAC,iBAAiB,CAAC,EAAE,CAAC;SAClE,CACF,EACD,IAAI,EAAC,QAAQ,mBACE,KAAK;QAEpB,8BAAC,sBAAQ,0BAAe;QACxB,8BAAC,sBAAS,IAAC,IAAI,EAAE,IAAI;;YACV,GAAG;YACZ,8BAAC,kBAAK,IAAC,EAAE,EAAC,MAAM,EAAC,IAAI,EAAE,IAAI;;gBACjB,KAAK;yBACP,CACE,CACT,CACN,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,YAAY,CAAC"}
@@ -5,20 +5,19 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const clsx_1 = __importDefault(require("clsx"));
7
7
  const react_1 = __importDefault(require("react"));
8
- const aksel_icons_1 = require("@navikt/aksel-icons");
9
- const loader_1 = require("../../../loader");
10
- const typography_1 = require("../../../typography");
11
8
  const Input_context_1 = require("../Input/Input.context");
12
9
  const selectedOptionsContext_1 = require("../SelectedOptions/selectedOptionsContext");
13
- const combobox_utils_1 = require("../combobox-utils");
10
+ const AddNewOption_1 = __importDefault(require("./AddNewOption"));
11
+ const FilteredOptionsItem_1 = __importDefault(require("./FilteredOptionsItem"));
12
+ const LoadingMessage_1 = __importDefault(require("./LoadingMessage"));
13
+ const MaxSelectedMessage_1 = __importDefault(require("./MaxSelectedMessage"));
14
+ const NoSearchHitsMessage_1 = __importDefault(require("./NoSearchHitsMessage"));
14
15
  const filtered_options_util_1 = __importDefault(require("./filtered-options-util"));
15
16
  const filteredOptionsContext_1 = require("./filteredOptionsContext");
16
17
  const FilteredOptions = () => {
17
- var _a;
18
- const { inputProps: { id }, size, value, } = (0, Input_context_1.useInputContext)();
19
- const { allowNewValues, isLoading, isListOpen, filteredOptions, setFilteredOptionsRef, isMouseLastUsedInputDevice, setIsMouseLastUsedInputDevice, isValueNew, toggleIsListOpen, activeDecendantId, virtualFocus, } = (0, filteredOptionsContext_1.useFilteredOptionsContext)();
20
- const { isMultiSelect, selectedOptions, toggleOption, maxSelected } = (0, selectedOptionsContext_1.useSelectedOptionsContext)();
21
- const isDisabled = (option) => (maxSelected === null || maxSelected === void 0 ? void 0 : maxSelected.isLimitReached) && !(0, combobox_utils_1.isInList)(option.value, selectedOptions);
18
+ const { inputProps: { id }, } = (0, Input_context_1.useInputContext)();
19
+ const { allowNewValues, isLoading, isListOpen, filteredOptions, setFilteredOptionsRef, isMouseLastUsedInputDevice, isValueNew, } = (0, filteredOptionsContext_1.useFilteredOptionsContext)();
20
+ const { maxSelected } = (0, selectedOptionsContext_1.useSelectedOptionsContext)();
22
21
  const shouldRenderNonSelectables = (maxSelected === null || maxSelected === void 0 ? void 0 : maxSelected.isLimitReached) || // Render maxSelected message
23
22
  isLoading || // Render loading message
24
23
  (!isLoading && filteredOptions.length === 0 && !allowNewValues); // Render no hits message
@@ -29,55 +28,12 @@ const FilteredOptions = () => {
29
28
  "navds-combobox__list--with-hover": isMouseLastUsedInputDevice,
30
29
  }), id: filtered_options_util_1.default.getFilteredOptionsId(id), tabIndex: -1 },
31
30
  shouldRenderNonSelectables && (react_1.default.createElement("div", { className: "navds-combobox__list_non-selectables", role: "status" },
32
- (maxSelected === null || maxSelected === void 0 ? void 0 : maxSelected.isLimitReached) && (react_1.default.createElement("div", { className: "navds-combobox__list-item--max-selected", id: filtered_options_util_1.default.getMaxSelectedOptionsId(id) }, (_a = maxSelected.message) !== null && _a !== void 0 ? _a : `${selectedOptions.length} av ${maxSelected.limit} er valgt.`)),
33
- isLoading && (react_1.default.createElement("div", { className: "navds-combobox__list-item--loading", id: filtered_options_util_1.default.getIsLoadingId(id) },
34
- react_1.default.createElement(loader_1.Loader, { title: "S\u00F8ker..." }))),
35
- !isLoading && filteredOptions.length === 0 && !allowNewValues && (react_1.default.createElement("div", { className: "navds-combobox__list-item--no-options", id: filtered_options_util_1.default.getNoHitsId(id) }, "Ingen s\u00F8ketreff")))),
31
+ (maxSelected === null || maxSelected === void 0 ? void 0 : maxSelected.isLimitReached) && react_1.default.createElement(MaxSelectedMessage_1.default, null),
32
+ isLoading && react_1.default.createElement(LoadingMessage_1.default, null),
33
+ !isLoading && filteredOptions.length === 0 && !allowNewValues && (react_1.default.createElement(NoSearchHitsMessage_1.default, null)))),
36
34
  shouldRenderFilteredOptionsList && (react_1.default.createElement("ul", { ref: setFilteredOptionsRef, role: "listbox", className: "navds-combobox__list-options" },
37
- isValueNew && !(maxSelected === null || maxSelected === void 0 ? void 0 : maxSelected.isLimitReached) && allowNewValues && (react_1.default.createElement("li", { tabIndex: -1, onMouseMove: () => {
38
- if (activeDecendantId !==
39
- filtered_options_util_1.default.getAddNewOptionId(id)) {
40
- virtualFocus.moveFocusToElement(filtered_options_util_1.default.getAddNewOptionId(id));
41
- setIsMouseLastUsedInputDevice(true);
42
- }
43
- }, onPointerUp: (event) => {
44
- toggleOption((0, combobox_utils_1.toComboboxOption)(value), event);
45
- if (!isMultiSelect && !(0, combobox_utils_1.isInList)(value, selectedOptions))
46
- toggleIsListOpen(false);
47
- }, id: filtered_options_util_1.default.getAddNewOptionId(id), className: (0, clsx_1.default)("navds-combobox__list-item navds-combobox__list-item--new-option", {
48
- "navds-combobox__list-item--new-option--focus": activeDecendantId ===
49
- filtered_options_util_1.default.getAddNewOptionId(id),
50
- }), role: "option", "aria-selected": false },
51
- react_1.default.createElement(aksel_icons_1.PlusIcon, { "aria-hidden": true }),
52
- react_1.default.createElement(typography_1.BodyShort, { size: size },
53
- "Legg til",
54
- " ",
55
- react_1.default.createElement(typography_1.Label, { as: "span", size: size },
56
- "\u201C",
57
- value,
58
- "\u201D")))),
59
- filteredOptions.map((option) => (react_1.default.createElement("li", { className: (0, clsx_1.default)("navds-combobox__list-item", {
60
- "navds-combobox__list-item--focus": activeDecendantId ===
61
- filtered_options_util_1.default.getOptionId(id, option.label),
62
- "navds-combobox__list-item--selected": (0, combobox_utils_1.isInList)(option.value, selectedOptions),
63
- }), "data-no-focus": isDisabled(option) || undefined, id: filtered_options_util_1.default.getOptionId(id, option.label), key: option.label, tabIndex: -1, onMouseMove: () => {
64
- if (activeDecendantId !==
65
- filtered_options_util_1.default.getOptionId(id, option.label)) {
66
- virtualFocus.moveFocusToElement(filtered_options_util_1.default.getOptionId(id, option.label));
67
- setIsMouseLastUsedInputDevice(true);
68
- }
69
- }, onPointerUp: (event) => {
70
- if (isDisabled(option)) {
71
- return;
72
- }
73
- toggleOption(option, event);
74
- if (!isMultiSelect &&
75
- !(0, combobox_utils_1.isInList)(option.value, selectedOptions)) {
76
- toggleIsListOpen(false);
77
- }
78
- }, role: "option", "aria-selected": (0, combobox_utils_1.isInList)(option.value, selectedOptions), "aria-disabled": isDisabled(option) || undefined },
79
- react_1.default.createElement(typography_1.BodyShort, { size: size }, option.label),
80
- (0, combobox_utils_1.isInList)(option.value, selectedOptions) && react_1.default.createElement(aksel_icons_1.CheckmarkIcon, null))))))));
35
+ isValueNew && !(maxSelected === null || maxSelected === void 0 ? void 0 : maxSelected.isLimitReached) && allowNewValues && (react_1.default.createElement(AddNewOption_1.default, null)),
36
+ filteredOptions.map((option) => (react_1.default.createElement(FilteredOptionsItem_1.default, { key: option.value, option: option })))))));
81
37
  };
82
38
  exports.default = FilteredOptions;
83
39
  //# sourceMappingURL=FilteredOptions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FilteredOptions.js","sourceRoot":"","sources":["../../../../src/form/combobox/FilteredOptions/FilteredOptions.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FilteredOptions.js","sourceRoot":"","sources":["../../../../src/form/combobox/FilteredOptions/FilteredOptions.tsx"],"names":[],"mappings":";;;;;AAAA,gDAAsB;AACtB,kDAA0B;AAC1B,0DAAyD;AACzD,sFAAsF;AACtF,kEAA0C;AAC1C,gFAAwD;AACxD,sEAA8C;AAC9C,8EAAsD;AACtD,gFAAwD;AACxD,oFAA0D;AAC1D,qEAAqE;AAErE,MAAM,eAAe,GAAG,GAAG,EAAE;IAC3B,MAAM,EACJ,UAAU,EAAE,EAAE,EAAE,EAAE,GACnB,GAAG,IAAA,+BAAe,GAAE,CAAC;IACtB,MAAM,EACJ,cAAc,EACd,SAAS,EACT,UAAU,EACV,eAAe,EACf,qBAAqB,EACrB,0BAA0B,EAC1B,UAAU,GACX,GAAG,IAAA,kDAAyB,GAAE,CAAC;IAChC,MAAM,EAAE,WAAW,EAAE,GAAG,IAAA,kDAAyB,GAAE,CAAC;IAEpD,MAAM,0BAA0B,GAC9B,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,cAAc,KAAI,6BAA6B;QAC5D,SAAS,IAAI,yBAAyB;QACtC,CAAC,CAAC,SAAS,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,yBAAyB;IAE5F,MAAM,+BAA+B,GACnC,CAAC,cAAc,IAAI,UAAU,IAAI,CAAC,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,cAAc,CAAA,CAAC,IAAI,wBAAwB;QAC1F,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,0BAA0B;IAExD,OAAO,CACL,uCACE,SAAS,EAAE,IAAA,cAAE,EAAC,sBAAsB,EAAE;YACpC,8BAA8B,EAAE,CAAC,UAAU;YAC3C,kCAAkC,EAAE,0BAA0B;SAC/D,CAAC,EACF,EAAE,EAAE,+BAAmB,CAAC,oBAAoB,CAAC,EAAE,CAAC,EAChD,QAAQ,EAAE,CAAC,CAAC;QAEX,0BAA0B,IAAI,CAC7B,uCAAK,SAAS,EAAC,sCAAsC,EAAC,IAAI,EAAC,QAAQ;YAChE,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,cAAc,KAAI,8BAAC,4BAAkB,OAAG;YACrD,SAAS,IAAI,8BAAC,wBAAc,OAAG;YAC/B,CAAC,SAAS,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,cAAc,IAAI,CAChE,8BAAC,6BAAmB,OAAG,CACxB,CACG,CACP;QAEA,+BAA+B,IAAI,CAClC,sCACE,GAAG,EAAE,qBAAqB,EAC1B,IAAI,EAAC,SAAS,EACd,SAAS,EAAC,8BAA8B;YAEvC,UAAU,IAAI,CAAC,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,cAAc,CAAA,IAAI,cAAc,IAAI,CAC/D,8BAAC,sBAAY,OAAG,CACjB;YACA,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAC/B,8BAAC,6BAAmB,IAAC,GAAG,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,GAAI,CAC3D,CAAC,CACC,CACN,CACG,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,eAAe,CAAC"}
@@ -0,0 +1,6 @@
1
+ import React from "react";
2
+ import { ComboboxOption } from "../types";
3
+ declare const FilteredOptionsItem: ({ option }: {
4
+ option: ComboboxOption;
5
+ }) => React.JSX.Element;
6
+ export default FilteredOptionsItem;
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const clsx_1 = __importDefault(require("clsx"));
7
+ const react_1 = __importDefault(require("react"));
8
+ const aksel_icons_1 = require("@navikt/aksel-icons");
9
+ const typography_1 = require("../../../typography");
10
+ const Input_context_1 = require("../Input/Input.context");
11
+ const selectedOptionsContext_1 = require("../SelectedOptions/selectedOptionsContext");
12
+ const combobox_utils_1 = require("../combobox-utils");
13
+ const filtered_options_util_1 = __importDefault(require("./filtered-options-util"));
14
+ const filteredOptionsContext_1 = require("./filteredOptionsContext");
15
+ const FilteredOptionsItem = ({ option }) => {
16
+ const { inputProps: { id }, size, } = (0, Input_context_1.useInputContext)();
17
+ const { setIsMouseLastUsedInputDevice, toggleIsListOpen, activeDecendantId, virtualFocus, } = (0, filteredOptionsContext_1.useFilteredOptionsContext)();
18
+ const { isMultiSelect, maxSelected, selectedOptions, toggleOption } = (0, selectedOptionsContext_1.useSelectedOptionsContext)();
19
+ const isDisabled = (_option) => (maxSelected === null || maxSelected === void 0 ? void 0 : maxSelected.isLimitReached) && !(0, combobox_utils_1.isInList)(_option.value, selectedOptions);
20
+ return (react_1.default.createElement("li", { className: (0, clsx_1.default)("navds-combobox__list-item", {
21
+ "navds-combobox__list-item--focus": activeDecendantId ===
22
+ filtered_options_util_1.default.getOptionId(id, option.label),
23
+ "navds-combobox__list-item--selected": (0, combobox_utils_1.isInList)(option.value, selectedOptions),
24
+ }), "data-no-focus": isDisabled(option) || undefined, id: filtered_options_util_1.default.getOptionId(id, option.label), key: option.label, tabIndex: -1, onMouseMove: () => {
25
+ if (activeDecendantId !==
26
+ filtered_options_util_1.default.getOptionId(id, option.label)) {
27
+ virtualFocus.moveFocusToElement(filtered_options_util_1.default.getOptionId(id, option.label));
28
+ setIsMouseLastUsedInputDevice(true);
29
+ }
30
+ }, onPointerUp: (event) => {
31
+ if (isDisabled(option)) {
32
+ return;
33
+ }
34
+ toggleOption(option, event);
35
+ if (!isMultiSelect && !(0, combobox_utils_1.isInList)(option.value, selectedOptions)) {
36
+ toggleIsListOpen(false);
37
+ }
38
+ }, role: "option", "aria-selected": (0, combobox_utils_1.isInList)(option.value, selectedOptions), "aria-disabled": isDisabled(option) || undefined },
39
+ react_1.default.createElement(typography_1.BodyShort, { size: size }, option.label),
40
+ (0, combobox_utils_1.isInList)(option.value, selectedOptions) && react_1.default.createElement(aksel_icons_1.CheckmarkIcon, null)));
41
+ };
42
+ exports.default = FilteredOptionsItem;
43
+ //# sourceMappingURL=FilteredOptionsItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FilteredOptionsItem.js","sourceRoot":"","sources":["../../../../src/form/combobox/FilteredOptions/FilteredOptionsItem.tsx"],"names":[],"mappings":";;;;;AAAA,gDAAsB;AACtB,kDAA0B;AAC1B,qDAAoD;AACpD,oDAAgD;AAChD,0DAAyD;AACzD,sFAAsF;AACtF,sDAA6C;AAE7C,oFAA0D;AAC1D,qEAAqE;AAErE,MAAM,mBAAmB,GAAG,CAAC,EAAE,MAAM,EAA8B,EAAE,EAAE;IACrE,MAAM,EACJ,UAAU,EAAE,EAAE,EAAE,EAAE,EAClB,IAAI,GACL,GAAG,IAAA,+BAAe,GAAE,CAAC;IACtB,MAAM,EACJ,6BAA6B,EAC7B,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,GACb,GAAG,IAAA,kDAAyB,GAAE,CAAC;IAChC,MAAM,EAAE,aAAa,EAAE,WAAW,EAAE,eAAe,EAAE,YAAY,EAAE,GACjE,IAAA,kDAAyB,GAAE,CAAC;IAE9B,MAAM,UAAU,GAAG,CAAC,OAAuB,EAAE,EAAE,CAC7C,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,cAAc,KAAI,CAAC,IAAA,yBAAQ,EAAC,OAAO,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;IAC3E,OAAO,CACL,sCACE,SAAS,EAAE,IAAA,cAAE,EAAC,2BAA2B,EAAE;YACzC,kCAAkC,EAChC,iBAAiB;gBACjB,+BAAmB,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC;YACnD,qCAAqC,EAAE,IAAA,yBAAQ,EAC7C,MAAM,CAAC,KAAK,EACZ,eAAe,CAChB;SACF,CAAC,mBACa,UAAU,CAAC,MAAM,CAAC,IAAI,SAAS,EAC9C,EAAE,EAAE,+BAAmB,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,EACrD,GAAG,EAAE,MAAM,CAAC,KAAK,EACjB,QAAQ,EAAE,CAAC,CAAC,EACZ,WAAW,EAAE,GAAG,EAAE;YAChB,IACE,iBAAiB;gBACjB,+BAAmB,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,EACjD,CAAC;gBACD,YAAY,CAAC,kBAAkB,CAC7B,+BAAmB,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAClD,CAAC;gBACF,6BAA6B,CAAC,IAAI,CAAC,CAAC;YACtC,CAAC;QACH,CAAC,EACD,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE;YACrB,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBACvB,OAAO;YACT,CAAC;YACD,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAC5B,IAAI,CAAC,aAAa,IAAI,CAAC,IAAA,yBAAQ,EAAC,MAAM,CAAC,KAAK,EAAE,eAAe,CAAC,EAAE,CAAC;gBAC/D,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC,EACD,IAAI,EAAC,QAAQ,mBACE,IAAA,yBAAQ,EAAC,MAAM,CAAC,KAAK,EAAE,eAAe,CAAC,mBACvC,UAAU,CAAC,MAAM,CAAC,IAAI,SAAS;QAE9C,8BAAC,sBAAS,IAAC,IAAI,EAAE,IAAI,IAAG,MAAM,CAAC,KAAK,CAAa;QAChD,IAAA,yBAAQ,EAAC,MAAM,CAAC,KAAK,EAAE,eAAe,CAAC,IAAI,8BAAC,2BAAa,OAAG,CAC1D,CACN,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,mBAAmB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import React from "react";
2
+ declare const LoadingMessage: () => React.JSX.Element;
3
+ export default LoadingMessage;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const react_1 = __importDefault(require("react"));
7
+ const loader_1 = require("../../../loader");
8
+ const Input_context_1 = require("../Input/Input.context");
9
+ const filtered_options_util_1 = __importDefault(require("./filtered-options-util"));
10
+ const LoadingMessage = () => {
11
+ const { inputProps: { id }, } = (0, Input_context_1.useInputContext)();
12
+ return (react_1.default.createElement("div", { className: "navds-combobox__list-item--loading", id: filtered_options_util_1.default.getIsLoadingId(id) },
13
+ react_1.default.createElement(loader_1.Loader, { title: "S\u00F8ker..." })));
14
+ };
15
+ exports.default = LoadingMessage;
16
+ //# sourceMappingURL=LoadingMessage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LoadingMessage.js","sourceRoot":"","sources":["../../../../src/form/combobox/FilteredOptions/LoadingMessage.tsx"],"names":[],"mappings":";;;;;AAAA,kDAA0B;AAC1B,4CAAyC;AACzC,0DAAyD;AACzD,oFAA0D;AAE1D,MAAM,cAAc,GAAG,GAAG,EAAE;IAC1B,MAAM,EACJ,UAAU,EAAE,EAAE,EAAE,EAAE,GACnB,GAAG,IAAA,+BAAe,GAAE,CAAC;IACtB,OAAO,CACL,uCACE,SAAS,EAAC,oCAAoC,EAC9C,EAAE,EAAE,+BAAmB,CAAC,cAAc,CAAC,EAAE,CAAC;QAE1C,8BAAC,eAAM,IAAC,KAAK,EAAC,eAAU,GAAG,CACvB,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,cAAc,CAAC"}
@@ -0,0 +1,3 @@
1
+ import React from "react";
2
+ declare const MaxSelectedMessage: () => React.JSX.Element | null;
3
+ export default MaxSelectedMessage;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const react_1 = __importDefault(require("react"));
7
+ const Input_context_1 = require("../Input/Input.context");
8
+ const selectedOptionsContext_1 = require("../SelectedOptions/selectedOptionsContext");
9
+ const filtered_options_util_1 = __importDefault(require("./filtered-options-util"));
10
+ const MaxSelectedMessage = () => {
11
+ var _a;
12
+ const { inputProps: { id }, } = (0, Input_context_1.useInputContext)();
13
+ const { maxSelected, selectedOptions } = (0, selectedOptionsContext_1.useSelectedOptionsContext)();
14
+ if (!maxSelected) {
15
+ return null;
16
+ }
17
+ return (react_1.default.createElement("div", { className: "navds-combobox__list-item--max-selected", id: filtered_options_util_1.default.getMaxSelectedOptionsId(id) }, (_a = maxSelected.message) !== null && _a !== void 0 ? _a : `${selectedOptions.length} av ${maxSelected.limit} er valgt.`));
18
+ };
19
+ exports.default = MaxSelectedMessage;
20
+ //# sourceMappingURL=MaxSelectedMessage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MaxSelectedMessage.js","sourceRoot":"","sources":["../../../../src/form/combobox/FilteredOptions/MaxSelectedMessage.tsx"],"names":[],"mappings":";;;;;AAAA,kDAA0B;AAC1B,0DAAyD;AACzD,sFAAsF;AACtF,oFAA0D;AAE1D,MAAM,kBAAkB,GAAG,GAAG,EAAE;;IAC9B,MAAM,EACJ,UAAU,EAAE,EAAE,EAAE,EAAE,GACnB,GAAG,IAAA,+BAAe,GAAE,CAAC;IACtB,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,GAAG,IAAA,kDAAyB,GAAE,CAAC;IAErE,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CACL,uCACE,SAAS,EAAC,yCAAyC,EACnD,EAAE,EAAE,+BAAmB,CAAC,uBAAuB,CAAC,EAAE,CAAC,IAElD,MAAA,WAAW,CAAC,OAAO,mCAClB,GAAG,eAAe,CAAC,MAAM,OAAO,WAAW,CAAC,KAAK,YAAY,CAC3D,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,kBAAkB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import React from "react";
2
+ declare const NoSearchHitsMessage: () => React.JSX.Element;
3
+ export default NoSearchHitsMessage;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const react_1 = __importDefault(require("react"));
7
+ const Input_context_1 = require("../Input/Input.context");
8
+ const filtered_options_util_1 = __importDefault(require("./filtered-options-util"));
9
+ const NoSearchHitsMessage = () => {
10
+ const { inputProps: { id }, } = (0, Input_context_1.useInputContext)();
11
+ return (react_1.default.createElement("div", { className: "navds-combobox__list-item--no-options", id: filtered_options_util_1.default.getNoHitsId(id) }, "Ingen s\u00F8ketreff"));
12
+ };
13
+ exports.default = NoSearchHitsMessage;
14
+ //# sourceMappingURL=NoSearchHitsMessage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NoSearchHitsMessage.js","sourceRoot":"","sources":["../../../../src/form/combobox/FilteredOptions/NoSearchHitsMessage.tsx"],"names":[],"mappings":";;;;;AAAA,kDAA0B;AAC1B,0DAAyD;AACzD,oFAA0D;AAE1D,MAAM,mBAAmB,GAAG,GAAG,EAAE;IAC/B,MAAM,EACJ,UAAU,EAAE,EAAE,EAAE,EAAE,GACnB,GAAG,IAAA,+BAAe,GAAE,CAAC;IACtB,OAAO,CACL,uCACE,SAAS,EAAC,uCAAuC,EACjD,EAAE,EAAE,+BAAmB,CAAC,WAAW,CAAC,EAAE,CAAC,2BAGnC,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,mBAAmB,CAAC"}
@@ -2,6 +2,7 @@ import React, { InputHTMLAttributes } from "react";
2
2
  interface InputProps extends Omit<InputHTMLAttributes<HTMLInputElement>, "value" | "disabled"> {
3
3
  ref: React.Ref<HTMLInputElement>;
4
4
  inputClassName?: string;
5
+ shouldShowSelectedOptions?: boolean;
5
6
  value?: string;
6
7
  }
7
8
  declare const Input: React.ForwardRefExoticComponent<Omit<InputProps, "ref"> & React.RefAttributes<HTMLInputElement>>;
@@ -46,7 +46,7 @@ const filteredOptionsContext_1 = require("../FilteredOptions/filteredOptionsCont
46
46
  const selectedOptionsContext_1 = require("../SelectedOptions/selectedOptionsContext");
47
47
  const Input_context_1 = require("./Input.context");
48
48
  const Input = (0, react_1.forwardRef)((_a, ref) => {
49
- var { inputClassName } = _a, rest = __rest(_a, ["inputClassName"]);
49
+ var { inputClassName, shouldShowSelectedOptions } = _a, rest = __rest(_a, ["inputClassName", "shouldShowSelectedOptions"]);
50
50
  const internalRef = (0, react_1.useRef)(null);
51
51
  const mergedRefs = (0, hooks_1.useMergeRefs)(ref, internalRef);
52
52
  const { clearInput, inputProps, onChange, size, value, searchTerm, setValue, } = (0, Input_context_1.useInputContext)();
@@ -116,7 +116,7 @@ const Input = (0, react_1.forwardRef)((_a, ref) => {
116
116
  const handleKeyDown = (0, react_1.useCallback)((e) => {
117
117
  setIsMouseLastUsedInputDevice(false);
118
118
  if (e.key === "Backspace") {
119
- if (value === "") {
119
+ if (value === "" && shouldShowSelectedOptions) {
120
120
  const lastSelectedOption = selectedOptions[selectedOptions.length - 1];
121
121
  if (lastSelectedOption) {
122
122
  removeSelectedOption(lastSelectedOption);
@@ -182,6 +182,7 @@ const Input = (0, react_1.forwardRef)((_a, ref) => {
182
182
  virtualFocus,
183
183
  setValue,
184
184
  searchTerm,
185
+ shouldShowSelectedOptions,
185
186
  ]);
186
187
  const onChangeHandler = (0, react_1.useCallback)((event) => {
187
188
  const newValue = event.target.value;
@@ -1 +1 @@
1
- {"version":3,"file":"Input.js","sourceRoot":"","sources":["../../../../src/form/combobox/Input/Input.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Input.js","sourceRoot":"","sources":["../../../../src/form/combobox/Input/Input.tsx"],"names":[],"mappings":"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"}
@@ -60,7 +60,7 @@ exports.InputController = (0, react_1.forwardRef)((props, ref) => {
60
60
  "navds-combobox__wrapper-inner--virtually-unfocused": activeDecendantId !== undefined,
61
61
  }), onClick: focusInput },
62
62
  !shouldShowSelectedOptions ? (react_1.default.createElement(Input_1.default, Object.assign({ id: inputProps.id, ref: mergedInputRef, inputClassName: inputClassName }, rest))) : (react_1.default.createElement(SelectedOptions_1.default, { selectedOptions: selectedOptions, size: size },
63
- react_1.default.createElement(Input_1.default, Object.assign({ id: inputProps.id, ref: mergedInputRef, inputClassName: inputClassName }, rest)))),
63
+ react_1.default.createElement(Input_1.default, Object.assign({ id: inputProps.id, ref: mergedInputRef, inputClassName: inputClassName, shouldShowSelectedOptions: shouldShowSelectedOptions }, rest)))),
64
64
  react_1.default.createElement("div", null,
65
65
  value && clearButton && (react_1.default.createElement("button", { type: "button", onClick: clearInput, className: "navds-combobox__button-clear", tabIndex: -1 },
66
66
  react_1.default.createElement("span", { className: "navds-sr-only" }, clearButtonLabel ? clearButtonLabel : "Tøm"),
@@ -1 +1 @@
1
- {"version":3,"file":"InputController.js","sourceRoot":"","sources":["../../../../src/form/combobox/Input/InputController.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4DAA4D;AAC5D,gDAAsB;AACtB,+CAA0C;AAC1C,qDAAgD;AAChD,+CAAmD;AACnD,sFAAsF;AACtF,yFAAiE;AACjE,sFAAsF;AAEtF,oDAA4B;AAC5B,mDAAkD;AAClD,0EAAkD;AAElD,0DAA0D;AAC7C,QAAA,eAAe,GAAG,IAAA,kBAAU,EAcvC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IACf,MAAM,EACJ,WAAW,GAAG,IAAI,EAClB,gBAAgB,EAChB,gBAAgB,GAAG,IAAI,EACvB,qBAAqB,EACrB,cAAc,EACd,yBAAyB,GAAG,IAAI,KAE9B,KAAK,EADJ,IAAI,UACL,KAAK,EARH,+HAQL,CAAQ,CAAC;IAEV,MAAM,EACJ,UAAU,EACV,UAAU,EACV,UAAU,EACV,KAAK,EACL,IAAI,GAAG,QAAQ,EACf,QAAQ,EACR,mBAAmB,GACpB,GAAG,IAAA,+BAAe,GAAE,CAAC;IAEtB,MAAM,EAAE,iBAAiB,EAAE,GAAG,IAAA,kDAAyB,GAAE,CAAC;IAC1D,MAAM,EAAE,eAAe,EAAE,GAAG,IAAA,kDAAyB,GAAE,CAAC;IAExD,MAAM,cAAc,GAAG,IAAA,oBAAY,EAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IAEnD,OAAO,CACL,uCACE,SAAS,EAAE,IAAA,cAAE,EAAC,uDAAuD,EAAE;YACrE,oDAAoD,EAClD,iBAAiB,KAAK,SAAS;SAClC,CAAC,EACF,OAAO,EAAE,UAAU;QAElB,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAC5B,8BAAC,eAAK,kBACJ,EAAE,EAAE,UAAU,CAAC,EAAE,EACjB,GAAG,EAAE,cAAc,EACnB,cAAc,EAAE,cAAc,IAC1B,IAAI,EACR,CACH,CAAC,CAAC,CAAC,CACF,8BAAC,yBAAe,IAAC,eAAe,EAAE,eAAe,EAAE,IAAI,EAAE,IAAI;YAC3D,8BAAC,eAAK,kBACJ,EAAE,EAAE,UAAU,CAAC,EAAE,EACjB,GAAG,EAAE,cAAc,EACnB,cAAc,EAAE,cAAc,IAC1B,IAAI,EACR,CACc,CACnB;QACD;YACG,KAAK,IAAI,WAAW,IAAI,CACvB,0CACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,UAAU,EACnB,SAAS,EAAC,8BAA8B,EACxC,QAAQ,EAAE,CAAC,CAAC;gBAEZ,wCAAM,SAAS,EAAC,eAAe,IAC5B,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,CACvC;gBACP,8BAAC,uBAAS,0BAAe,CAClB,CACV;YACA,gBAAgB,IAAI,CACnB,8BAAC,0BAAgB,IACf,qBAAqB,EAAE,qBAAqB,EAC5C,GAAG,EAAE,mBAAmB,GACxB,CACH,CACG,CACF,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"InputController.js","sourceRoot":"","sources":["../../../../src/form/combobox/Input/InputController.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4DAA4D;AAC5D,gDAAsB;AACtB,+CAA0C;AAC1C,qDAAgD;AAChD,+CAAmD;AACnD,sFAAsF;AACtF,yFAAiE;AACjE,sFAAsF;AAEtF,oDAA4B;AAC5B,mDAAkD;AAClD,0EAAkD;AAElD,0DAA0D;AAC7C,QAAA,eAAe,GAAG,IAAA,kBAAU,EAcvC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IACf,MAAM,EACJ,WAAW,GAAG,IAAI,EAClB,gBAAgB,EAChB,gBAAgB,GAAG,IAAI,EACvB,qBAAqB,EACrB,cAAc,EACd,yBAAyB,GAAG,IAAI,KAE9B,KAAK,EADJ,IAAI,UACL,KAAK,EARH,+HAQL,CAAQ,CAAC;IAEV,MAAM,EACJ,UAAU,EACV,UAAU,EACV,UAAU,EACV,KAAK,EACL,IAAI,GAAG,QAAQ,EACf,QAAQ,EACR,mBAAmB,GACpB,GAAG,IAAA,+BAAe,GAAE,CAAC;IAEtB,MAAM,EAAE,iBAAiB,EAAE,GAAG,IAAA,kDAAyB,GAAE,CAAC;IAC1D,MAAM,EAAE,eAAe,EAAE,GAAG,IAAA,kDAAyB,GAAE,CAAC;IAExD,MAAM,cAAc,GAAG,IAAA,oBAAY,EAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IAEnD,OAAO,CACL,uCACE,SAAS,EAAE,IAAA,cAAE,EAAC,uDAAuD,EAAE;YACrE,oDAAoD,EAClD,iBAAiB,KAAK,SAAS;SAClC,CAAC,EACF,OAAO,EAAE,UAAU;QAElB,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAC5B,8BAAC,eAAK,kBACJ,EAAE,EAAE,UAAU,CAAC,EAAE,EACjB,GAAG,EAAE,cAAc,EACnB,cAAc,EAAE,cAAc,IAC1B,IAAI,EACR,CACH,CAAC,CAAC,CAAC,CACF,8BAAC,yBAAe,IAAC,eAAe,EAAE,eAAe,EAAE,IAAI,EAAE,IAAI;YAC3D,8BAAC,eAAK,kBACJ,EAAE,EAAE,UAAU,CAAC,EAAE,EACjB,GAAG,EAAE,cAAc,EACnB,cAAc,EAAE,cAAc,EAC9B,yBAAyB,EAAE,yBAAyB,IAChD,IAAI,EACR,CACc,CACnB;QACD;YACG,KAAK,IAAI,WAAW,IAAI,CACvB,0CACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,UAAU,EACnB,SAAS,EAAC,8BAA8B,EACxC,QAAQ,EAAE,CAAC,CAAC;gBAEZ,wCAAM,SAAS,EAAC,eAAe,IAC5B,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,CACvC;gBACP,8BAAC,uBAAS,0BAAe,CAClB,CACV;YACA,gBAAgB,IAAI,CACnB,8BAAC,0BAAgB,IACf,qBAAqB,EAAE,qBAAqB,EAC5C,GAAG,EAAE,mBAAmB,GACxB,CACH,CACG,CACF,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,106 @@
1
+ import React from "react";
2
+ import { Portal } from "../../portal";
3
+ import { DismissableLayer } from "../dismissablelayer/DismissableLayer";
4
+ import { Floating } from "../floating/Floating";
5
+ import { FocusScope } from "./parts/FocusScope";
6
+ import { RovingFocusProps } from "./parts/RovingFocus";
7
+ import { SlottedDivElementRef, SlottedDivProps } from "./parts/SlottedDivElement";
8
+ type CheckedState = boolean | "indeterminate";
9
+ interface MenuProps {
10
+ children?: React.ReactNode;
11
+ open?: boolean;
12
+ onOpenChange?: (open: boolean) => void;
13
+ modal?: boolean;
14
+ }
15
+ interface MenuComponent extends React.FC<MenuProps> {
16
+ Anchor: typeof MenuAnchor;
17
+ Portal: typeof MenuPortal;
18
+ Content: typeof MenuContent;
19
+ Group: typeof MenuGroup;
20
+ Item: typeof MenuItem;
21
+ CheckboxItem: typeof MenuCheckboxItem;
22
+ RadioGroup: typeof MenuRadioGroup;
23
+ RadioItem: typeof MenuRadioItem;
24
+ Separator: typeof MenuSeparator;
25
+ Sub: typeof MenuSub;
26
+ SubTrigger: typeof MenuSubTrigger;
27
+ SubContent: typeof MenuSubContent;
28
+ ItemIndicator: typeof MenuItemIndicator;
29
+ }
30
+ declare const Menu: MenuComponent;
31
+ type MenuAnchorProps = React.ComponentPropsWithoutRef<typeof Floating.Anchor>;
32
+ declare const MenuAnchor: React.ForwardRefExoticComponent<MenuAnchorProps & React.RefAttributes<HTMLDivElement>>;
33
+ interface MenuContentProps extends MenuContentInternalTypeProps {
34
+ }
35
+ declare const MenuContent: React.ForwardRefExoticComponent<MenuContentProps & React.RefAttributes<HTMLDivElement>>;
36
+ type FocusScopeProps = React.ComponentPropsWithoutRef<typeof FocusScope>;
37
+ type DismissableLayerProps = React.ComponentPropsWithoutRef<typeof DismissableLayer>;
38
+ type MenuContentInternalPrivateProps = {
39
+ onOpenAutoFocus?: FocusScopeProps["onMountHandler"];
40
+ onDismiss?: DismissableLayerProps["onDismiss"];
41
+ disableOutsidePointerEvents?: DismissableLayerProps["disableOutsidePointerEvents"];
42
+ };
43
+ interface MenuContentInternalProps extends MenuContentInternalPrivateProps, Omit<React.ComponentPropsWithoutRef<typeof Floating.Content>, "dir" | "onPlaced"> {
44
+ /**
45
+ * Event handler called when auto-focusing after close.
46
+ * Can be prevented.
47
+ */
48
+ onCloseAutoFocus?: FocusScopeProps["onUnmountHandler"];
49
+ onEntryFocus?: RovingFocusProps["onEntryFocus"];
50
+ onEscapeKeyDown?: DismissableLayerProps["onEscapeKeyDown"];
51
+ onPointerDownOutside?: DismissableLayerProps["onPointerDownOutside"];
52
+ onFocusOutside?: DismissableLayerProps["onFocusOutside"];
53
+ onInteractOutside?: DismissableLayerProps["onInteractOutside"];
54
+ }
55
+ interface MenuContentInternalTypeProps extends Omit<MenuContentInternalProps, keyof MenuContentInternalPrivateProps> {
56
+ }
57
+ type MenuItemElement = MenuItemInternalElement;
58
+ interface MenuItemProps extends Omit<MenuItemInternalProps, "onSelect"> {
59
+ onSelect?: (event: Event) => void;
60
+ }
61
+ declare const MenuItem: React.ForwardRefExoticComponent<MenuItemProps & React.RefAttributes<HTMLDivElement>>;
62
+ type MenuItemInternalElement = SlottedDivElementRef;
63
+ interface MenuItemInternalProps extends SlottedDivProps {
64
+ disabled?: boolean;
65
+ }
66
+ interface MenuGroupProps extends SlottedDivProps {
67
+ }
68
+ declare const MenuGroup: React.ForwardRefExoticComponent<MenuGroupProps & React.RefAttributes<HTMLDivElement>>;
69
+ type PortalProps = React.ComponentPropsWithoutRef<typeof Portal>;
70
+ type MenuPortalProps = PortalProps & {
71
+ children: React.ReactElement;
72
+ };
73
+ declare const MenuPortal: React.ForwardRefExoticComponent<MenuPortalProps & React.RefAttributes<HTMLDivElement>>;
74
+ interface MenuRadioGroupProps extends MenuGroupProps {
75
+ value?: string;
76
+ onValueChange?: (value: string) => void;
77
+ }
78
+ declare const MenuRadioGroup: React.ForwardRefExoticComponent<MenuRadioGroupProps & React.RefAttributes<HTMLDivElement>>;
79
+ interface MenuItemIndicatorProps extends SlottedDivProps {
80
+ }
81
+ declare const MenuItemIndicator: React.ForwardRefExoticComponent<MenuItemIndicatorProps & React.RefAttributes<HTMLDivElement>>;
82
+ interface MenuRadioItemProps extends MenuItemProps {
83
+ value: string;
84
+ }
85
+ declare const MenuRadioItem: React.ForwardRefExoticComponent<MenuRadioItemProps & React.RefAttributes<HTMLDivElement>>;
86
+ interface MenuCheckboxItemProps extends MenuItemProps {
87
+ checked?: CheckedState;
88
+ onCheckedChange?: (checked: boolean) => void;
89
+ }
90
+ declare const MenuCheckboxItem: React.ForwardRefExoticComponent<MenuCheckboxItemProps & React.RefAttributes<HTMLDivElement>>;
91
+ interface MenuSeparatorProps extends SlottedDivProps {
92
+ }
93
+ declare const MenuSeparator: React.ForwardRefExoticComponent<MenuSeparatorProps & React.RefAttributes<HTMLDivElement>>;
94
+ interface MenuSubProps {
95
+ children?: React.ReactNode;
96
+ open?: boolean;
97
+ onOpenChange?: (open: boolean) => void;
98
+ }
99
+ declare const MenuSub: React.FC<MenuSubProps>;
100
+ interface MenuSubTriggerProps extends MenuItemInternalProps {
101
+ }
102
+ declare const MenuSubTrigger: React.ForwardRefExoticComponent<MenuSubTriggerProps & React.RefAttributes<HTMLDivElement>>;
103
+ interface MenuSubContentProps extends Omit<MenuContentInternalProps, keyof MenuContentInternalPrivateProps | "onCloseAutoFocus" | "onEntryFocus" | "side" | "align"> {
104
+ }
105
+ declare const MenuSubContent: React.ForwardRefExoticComponent<MenuSubContentProps & React.RefAttributes<HTMLDivElement>>;
106
+ export { Menu, MenuAnchor, MenuCheckboxItem, MenuContent, MenuGroup, MenuItem, MenuItemIndicator, MenuPortal, MenuRadioGroup, MenuRadioItem, MenuSeparator, MenuSub, MenuSubContent, MenuSubTrigger, type MenuAnchorProps, type MenuCheckboxItemProps, type MenuContentProps, type MenuGroupProps, type MenuItemElement, type MenuItemIndicatorProps, type MenuPortalProps, type MenuProps, type MenuRadioGroupProps, type MenuRadioItemProps, type MenuSeparatorProps, type MenuSubContentProps, type MenuSubProps, type MenuSubTriggerProps, };