@navikt/ds-react 8.5.1 → 8.6.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 (102) hide show
  1. package/cjs/data/table/root/DataTableRoot.d.ts +27 -0
  2. package/cjs/data/table/root/DataTableRoot.js +8 -2
  3. package/cjs/data/table/root/DataTableRoot.js.map +1 -1
  4. package/cjs/data/table/td/DataTableTd.d.ts +5 -4
  5. package/cjs/data/table/td/DataTableTd.js +2 -2
  6. package/cjs/data/table/td/DataTableTd.js.map +1 -1
  7. package/cjs/data/token-filter/AutoSuggest.d.ts +2 -14
  8. package/cjs/data/token-filter/AutoSuggest.js +13 -89
  9. package/cjs/data/token-filter/AutoSuggest.js.map +1 -1
  10. package/cjs/data/token-filter/AutoSuggest.types.d.ts +11 -0
  11. package/cjs/data/token-filter/AutoSuggest.types.js +3 -0
  12. package/cjs/data/token-filter/AutoSuggest.types.js.map +1 -0
  13. package/cjs/data/token-filter/TokenFilter.d.ts +5 -0
  14. package/cjs/data/token-filter/TokenFilter.js +20 -10
  15. package/cjs/data/token-filter/TokenFilter.js.map +1 -1
  16. package/cjs/data/token-filter/TokenFilter.types.d.ts +8 -4
  17. package/cjs/data/token-filter/helpers/generate-autocomplete-options.d.ts +13 -61
  18. package/cjs/data/token-filter/helpers/generate-autocomplete-options.js +152 -135
  19. package/cjs/data/token-filter/helpers/generate-autocomplete-options.js.map +1 -1
  20. package/cjs/data/token-filter/helpers/grouping.d.ts +28 -0
  21. package/cjs/data/token-filter/helpers/grouping.js +61 -0
  22. package/cjs/data/token-filter/helpers/grouping.js.map +1 -0
  23. package/cjs/data/token-filter/helpers/operators.d.ts +22 -0
  24. package/cjs/data/token-filter/helpers/operators.js +66 -0
  25. package/cjs/data/token-filter/helpers/operators.js.map +1 -0
  26. package/cjs/data/token-filter/helpers/parse-query-text.d.ts +1 -7
  27. package/cjs/data/token-filter/helpers/parse-query-text.js +5 -50
  28. package/cjs/data/token-filter/helpers/parse-query-text.js.map +1 -1
  29. package/cjs/data/token-filter/helpers/query-builder.d.ts +20 -0
  30. package/cjs/data/token-filter/helpers/query-builder.js +38 -0
  31. package/cjs/data/token-filter/helpers/query-builder.js.map +1 -0
  32. package/cjs/data/token-filter/helpers/text-matching.d.ts +16 -0
  33. package/cjs/data/token-filter/helpers/text-matching.js +47 -0
  34. package/cjs/data/token-filter/helpers/text-matching.js.map +1 -0
  35. package/cjs/form/combobox/Input/InputController.js +1 -1
  36. package/cjs/form/combobox/Input/InputController.js.map +1 -1
  37. package/cjs/form/file-upload/dropzone/FileUploadDropzone.js +1 -1
  38. package/cjs/form/file-upload/dropzone/FileUploadDropzone.js.map +1 -1
  39. package/cjs/toggle-group/useToggleGroup.js +5 -3
  40. package/cjs/toggle-group/useToggleGroup.js.map +1 -1
  41. package/esm/data/table/root/DataTableRoot.d.ts +27 -0
  42. package/esm/data/table/root/DataTableRoot.js +8 -2
  43. package/esm/data/table/root/DataTableRoot.js.map +1 -1
  44. package/esm/data/table/td/DataTableTd.d.ts +5 -4
  45. package/esm/data/table/td/DataTableTd.js +2 -2
  46. package/esm/data/table/td/DataTableTd.js.map +1 -1
  47. package/esm/data/token-filter/AutoSuggest.d.ts +2 -14
  48. package/esm/data/token-filter/AutoSuggest.js +14 -90
  49. package/esm/data/token-filter/AutoSuggest.js.map +1 -1
  50. package/esm/data/token-filter/AutoSuggest.types.d.ts +11 -0
  51. package/esm/data/token-filter/AutoSuggest.types.js +2 -0
  52. package/esm/data/token-filter/AutoSuggest.types.js.map +1 -0
  53. package/esm/data/token-filter/TokenFilter.d.ts +5 -0
  54. package/esm/data/token-filter/TokenFilter.js +20 -10
  55. package/esm/data/token-filter/TokenFilter.js.map +1 -1
  56. package/esm/data/token-filter/TokenFilter.types.d.ts +8 -4
  57. package/esm/data/token-filter/helpers/generate-autocomplete-options.d.ts +13 -61
  58. package/esm/data/token-filter/helpers/generate-autocomplete-options.js +152 -135
  59. package/esm/data/token-filter/helpers/generate-autocomplete-options.js.map +1 -1
  60. package/esm/data/token-filter/helpers/grouping.d.ts +28 -0
  61. package/esm/data/token-filter/helpers/grouping.js +59 -0
  62. package/esm/data/token-filter/helpers/grouping.js.map +1 -0
  63. package/esm/data/token-filter/helpers/operators.d.ts +22 -0
  64. package/esm/data/token-filter/helpers/operators.js +60 -0
  65. package/esm/data/token-filter/helpers/operators.js.map +1 -0
  66. package/esm/data/token-filter/helpers/parse-query-text.d.ts +1 -7
  67. package/esm/data/token-filter/helpers/parse-query-text.js +2 -45
  68. package/esm/data/token-filter/helpers/parse-query-text.js.map +1 -1
  69. package/esm/data/token-filter/helpers/query-builder.d.ts +20 -0
  70. package/esm/data/token-filter/helpers/query-builder.js +34 -0
  71. package/esm/data/token-filter/helpers/query-builder.js.map +1 -0
  72. package/esm/data/token-filter/helpers/text-matching.d.ts +16 -0
  73. package/esm/data/token-filter/helpers/text-matching.js +45 -0
  74. package/esm/data/token-filter/helpers/text-matching.js.map +1 -0
  75. package/esm/form/combobox/Input/InputController.js +1 -1
  76. package/esm/form/combobox/Input/InputController.js.map +1 -1
  77. package/esm/form/file-upload/dropzone/FileUploadDropzone.js +1 -1
  78. package/esm/form/file-upload/dropzone/FileUploadDropzone.js.map +1 -1
  79. package/esm/toggle-group/useToggleGroup.js +6 -4
  80. package/esm/toggle-group/useToggleGroup.js.map +1 -1
  81. package/package.json +3 -3
  82. package/src/data/table/root/DataTableRoot.tsx +30 -1
  83. package/src/data/table/td/DataTableTd.tsx +13 -6
  84. package/src/data/token-filter/AutoSuggest.tsx +33 -163
  85. package/src/data/token-filter/AutoSuggest.types.ts +13 -0
  86. package/src/data/token-filter/TokenFilter.tsx +21 -13
  87. package/src/data/token-filter/TokenFilter.types.ts +8 -4
  88. package/src/data/token-filter/helpers/generate-autocomplete-options.test.ts +836 -0
  89. package/src/data/token-filter/helpers/generate-autocomplete-options.ts +241 -186
  90. package/src/data/token-filter/helpers/grouping.test.ts +206 -0
  91. package/src/data/token-filter/helpers/grouping.ts +73 -0
  92. package/src/data/token-filter/helpers/operators.test.ts +281 -0
  93. package/src/data/token-filter/helpers/operators.ts +91 -0
  94. package/src/data/token-filter/helpers/parse-query-text.test.ts +4 -213
  95. package/src/data/token-filter/helpers/parse-query-text.ts +7 -69
  96. package/src/data/token-filter/helpers/query-builder.test.ts +126 -0
  97. package/src/data/token-filter/helpers/query-builder.ts +41 -0
  98. package/src/data/token-filter/helpers/text-matching.test.ts +125 -0
  99. package/src/data/token-filter/helpers/text-matching.ts +58 -0
  100. package/src/form/combobox/Input/InputController.tsx +0 -1
  101. package/src/form/file-upload/dropzone/FileUploadDropzone.tsx +0 -1
  102. package/src/toggle-group/useToggleGroup.ts +6 -5
@@ -1 +1 @@
1
- {"version":3,"file":"parse-query-text.js","sourceRoot":"","sources":["../../../../src/data/token-filter/helpers/parse-query-text.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parse-query-text.js","sourceRoot":"","sources":["../../../../src/data/token-filter/helpers/parse-query-text.ts"],"names":[],"mappings":";;AAoFS,wCAAc;AAnFvB,2CAKqB;AAuBrB;;;GAGG;AACH,SAAS,cAAc,CACrB,aAAqB,EACrB,mBAAqC;IAErC,MAAM,QAAQ,GAAG,IAAA,kCAAsB,EAAC,mBAAmB,EAAE,aAAa,CAAC,CAAC;IAC5E,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,gBAAgB,GAAG,IAAA,yBAAa,EAAC,2BAAe,EAAE,aAAa,CAAC,CAAC;QACvE,IAAI,gBAAgB,EAAE,CAAC;YACrB,OAAO;gBACL,IAAI,EAAE,WAAW;gBACjB,QAAQ,EAAE,gBAAgB;gBAC1B,KAAK,EAAE,aAAa,CAAC,SAAS,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE;aACpE,CAAC;QACJ,CAAC;QAED,OAAO;YACL,IAAI,EAAE,WAAW;YACjB,KAAK,EAAE,aAAa;SACrB,CAAC;IACJ,CAAC;IAED,MAAM,mBAAmB,GAAG,aAAa;SACtC,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC;SACxC,SAAS,EAAE,CAAC;IAEf,MAAM,QAAQ,GAAG,IAAA,yBAAa,EAAC,2BAAe,EAAE,mBAAmB,CAAC,CAAC;IAErE,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,QAAQ;YACR,QAAQ;YACR,KAAK,EAAE,mBAAmB,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE;SAClE,CAAC;IACJ,CAAC;IAED,MAAM,cAAc,GAAG,IAAA,+BAAmB,EACxC,2BAAe,EACf,mBAAmB,CACpB,CAAC;IAEF,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;QAC5B,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC;IACxD,CAAC;IAED,OAAO;QACL,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,aAAa;KACrB,CAAC;AACJ,CAAC"}
@@ -0,0 +1,20 @@
1
+ import type { QueryFilterOperator } from "../TokenFilter.types";
2
+ /**
3
+ * Human-readable labels for query filter operators.
4
+ * Used for displaying operator descriptions in autocomplete suggestions.
5
+ * TODO: Support i18n
6
+ */
7
+ declare const OPERATOR_LABELS: Record<QueryFilterOperator, string>;
8
+ /**
9
+ * Builds a query string from property label, operator, and value.
10
+ * Only includes non-empty parts, joined by spaces.
11
+ * @returns Space-joined query string
12
+ *
13
+ * @example
14
+ * buildQueryString("Status", "=", "active") // "Status = active"
15
+ * buildQueryString("Status", "=", "") // "Status ="
16
+ * buildQueryString("Status", "", "") // "Status"
17
+ * buildQueryString("", "", "") // ""
18
+ */
19
+ declare function buildQueryString(propertyLabel: string, operator: string, value: string): string;
20
+ export { buildQueryString, OPERATOR_LABELS };
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OPERATOR_LABELS = void 0;
4
+ exports.buildQueryString = buildQueryString;
5
+ /**
6
+ * Human-readable labels for query filter operators.
7
+ * Used for displaying operator descriptions in autocomplete suggestions.
8
+ * TODO: Support i18n
9
+ */
10
+ const OPERATOR_LABELS = {
11
+ ":": "contains",
12
+ "!:": "does not contain",
13
+ "=": "is",
14
+ "!=": "is not",
15
+ "^": "starts with",
16
+ "!^": "does not start with",
17
+ ">=": "is greater than or equal to",
18
+ "<=": "is less than or equal to",
19
+ ">": "is greater than",
20
+ "<": "is less than",
21
+ };
22
+ exports.OPERATOR_LABELS = OPERATOR_LABELS;
23
+ /**
24
+ * Builds a query string from property label, operator, and value.
25
+ * Only includes non-empty parts, joined by spaces.
26
+ * @returns Space-joined query string
27
+ *
28
+ * @example
29
+ * buildQueryString("Status", "=", "active") // "Status = active"
30
+ * buildQueryString("Status", "=", "") // "Status ="
31
+ * buildQueryString("Status", "", "") // "Status"
32
+ * buildQueryString("", "", "") // ""
33
+ */
34
+ function buildQueryString(propertyLabel, operator, value) {
35
+ const parts = [propertyLabel, operator, value].filter(Boolean);
36
+ return parts.join(" ");
37
+ }
38
+ //# sourceMappingURL=query-builder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query-builder.js","sourceRoot":"","sources":["../../../../src/data/token-filter/helpers/query-builder.ts"],"names":[],"mappings":";;;AAwCS,4CAAgB;AAtCzB;;;;GAIG;AACH,MAAM,eAAe,GAAwC;IAC3D,GAAG,EAAE,UAAU;IACf,IAAI,EAAE,kBAAkB;IACxB,GAAG,EAAE,IAAI;IACT,IAAI,EAAE,QAAQ;IACd,GAAG,EAAE,aAAa;IAClB,IAAI,EAAE,qBAAqB;IAC3B,IAAI,EAAE,6BAA6B;IACnC,IAAI,EAAE,0BAA0B;IAChC,GAAG,EAAE,iBAAiB;IACtB,GAAG,EAAE,cAAc;CACpB,CAAC;AAsByB,0CAAe;AApB1C;;;;;;;;;;GAUG;AACH,SAAS,gBAAgB,CACvB,aAAqB,EACrB,QAAgB,EAChB,KAAa;IAEb,MAAM,KAAK,GAAG,CAAC,aAAa,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC/D,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Checks if search field values match the given filter text.
3
+ *
4
+ * @param searchFieldValues - Array of strings to search within (e.g., labels, tags, descriptions)
5
+ * @param filterText - The search text to match against
6
+ * @returns true if all space-separated parts of filterText are found in at least one searchFieldValue
7
+ *
8
+ * @example
9
+ * matchesFilterText(['Hello World', 'foo'], 'hello') // true
10
+ * matchesFilterText(['Hello World', 'foo'], 'hello bar') // false
11
+ * matchesFilterText(['Hello World', 'bar'], 'hello bar') // true
12
+ * matchesFilterText([], 'test') // false
13
+ * matchesFilterText(['test'], '') // true (empty filter matches all)
14
+ */
15
+ declare function matchesFilterText(searchFieldValues: string[], filterText: string): boolean;
16
+ export { matchesFilterText };
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.matchesFilterText = matchesFilterText;
4
+ /**
5
+ * Checks if search field values match the given filter text.
6
+ *
7
+ * @param searchFieldValues - Array of strings to search within (e.g., labels, tags, descriptions)
8
+ * @param filterText - The search text to match against
9
+ * @returns true if all space-separated parts of filterText are found in at least one searchFieldValue
10
+ *
11
+ * @example
12
+ * matchesFilterText(['Hello World', 'foo'], 'hello') // true
13
+ * matchesFilterText(['Hello World', 'foo'], 'hello bar') // false
14
+ * matchesFilterText(['Hello World', 'bar'], 'hello bar') // true
15
+ * matchesFilterText([], 'test') // false
16
+ * matchesFilterText(['test'], '') // true (empty filter matches all)
17
+ */
18
+ function matchesFilterText(searchFieldValues, filterText) {
19
+ /* Guard against null/undefined inputs */
20
+ if (!searchFieldValues || !Array.isArray(searchFieldValues)) {
21
+ return false;
22
+ }
23
+ if (filterText === null || filterText === undefined) {
24
+ return true;
25
+ }
26
+ const normalizedFilter = filterText.trim().toLowerCase();
27
+ /* Empty filter matches everything */
28
+ if (!normalizedFilter) {
29
+ return true;
30
+ }
31
+ /* Split filter into parts ("nord land" -> ["nord", "land"]) */
32
+ const parts = normalizedFilter.split(/\s+/).filter(Boolean);
33
+ if (parts.length === 0) {
34
+ return true;
35
+ }
36
+ /* Normalize and filter out nullish values */
37
+ const normalizedFields = searchFieldValues
38
+ .map((value) => value === null || value === void 0 ? void 0 : value.toLowerCase())
39
+ .filter(Boolean);
40
+ /* If no valid fields to search, no match */
41
+ if (normalizedFields.length === 0) {
42
+ return false;
43
+ }
44
+ /* Every part of the filter must be found in at least one field */
45
+ return parts.every((part) => normalizedFields.some((field) => field.includes(part)));
46
+ }
47
+ //# sourceMappingURL=text-matching.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-matching.js","sourceRoot":"","sources":["../../../../src/data/token-filter/helpers/text-matching.ts"],"names":[],"mappings":";;AAyDS,8CAAiB;AAzD1B;;;;;;;;;;;;;GAaG;AACH,SAAS,iBAAiB,CACxB,iBAA2B,EAC3B,UAAkB;IAElB,yCAAyC;IACzC,IAAI,CAAC,iBAAiB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC;QAC5D,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,UAAU,KAAK,IAAI,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QACpD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,gBAAgB,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAEzD,qCAAqC;IACrC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,+DAA+D;IAC/D,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAE5D,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,6CAA6C;IAC7C,MAAM,gBAAgB,GAAG,iBAAiB;SACvC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAW,EAAE,CAAC;SACpC,MAAM,CAAC,OAAO,CAAC,CAAC;IAEnB,4CAA4C;IAC5C,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,kEAAkE;IAClE,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAC1B,gBAAgB,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CACvD,CAAC;AACJ,CAAC"}
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- /* eslint-disable jsx-a11y/click-events-have-key-events */
3
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
3
  if (k2 === undefined) k2 = k;
5
4
  var desc = Object.getOwnPropertyDescriptor(m, k);
@@ -49,6 +48,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
49
48
  };
50
49
  Object.defineProperty(exports, "__esModule", { value: true });
51
50
  exports.InputController = void 0;
51
+ /* eslint-disable jsx-a11y/click-events-have-key-events */
52
52
  /* eslint-disable jsx-a11y/no-static-element-interactions */
53
53
  const react_1 = __importStar(require("react"));
54
54
  const Floating_1 = require("../../../utils/components/floating/Floating");
@@ -1 +1 @@
1
- {"version":3,"file":"InputController.js","sourceRoot":"","sources":["../../../../src/form/combobox/Input/InputController.tsx"],"names":[],"mappings":";AAAA,0DAA0D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAE1D,4DAA4D;AAC5D,+CAA0C;AAC1C,0EAAuE;AACvE,oDAA4C;AAC5C,gDAAoD;AACpD,sFAAsF;AACtF,yFAAiE;AACjE,sFAAsF;AAEtF,oDAA4B;AAC5B,mDAAkD;AAClD,0EAAkD;AAErC,QAAA,eAAe,GAAG,IAAA,kBAAU,EAcvC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IACf,MAAM;IACJ,sHAAsH;IACtH,WAAW;IACX,sHAAsH;IACtH,gBAAgB,EAChB,gBAAgB,GAAG,IAAI,EACvB,cAAc,EACd,yBAAyB,GAAG,IAAI,KAG9B,KAAK,EADJ,IAAI,UACL,KAAK,EAVH,sGAUL,CAAQ,CAAC;IAEV,MAAM,EACJ,UAAU,EACV,UAAU,EACV,IAAI,GAAG,QAAQ,EACf,QAAQ,EACR,mBAAmB,EACnB,QAAQ,EACR,YAAY,GACb,GAAG,IAAA,+BAAe,GAAE,CAAC;IAEtB,MAAM,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,GAAG,IAAA,kDAAyB,GAAE,CAAC;IAC5E,MAAM,EAAE,eAAe,EAAE,GAAG,IAAA,kDAAyB,GAAE,CAAC;IAExD,MAAM,cAAc,GAAG,IAAA,oBAAY,EAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IAEnD,OAAO,CACL,8BAAC,mBAAQ,CAAC,MAAM,IAAC,OAAO,QAAC,GAAG,EAAE,YAAY;QAExC,uCACE,SAAS,EAAE,IAAA,YAAE,EAAC,uDAAuD,EAAE;gBACrE,oDAAoD,EAClD,iBAAiB,KAAK,SAAS;aAClC,CAAC,EACF,OAAO,EAAE,GAAG,EAAE;gBACZ,IAAI,UAAU,CAAC,QAAQ,IAAI,QAAQ,EAAE,CAAC;oBACpC,OAAO;gBACT,CAAC;gBAED,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBACvB,UAAU,EAAE,CAAC;YACf,CAAC;YAEA,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAC5B,8BAAC,eAAK,kBACJ,EAAE,EAAE,UAAU,CAAC,EAAE,EACjB,GAAG,EAAE,cAAc,EACnB,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,QAAQ,IACd,IAAI,EACR,CACH,CAAC,CAAC,CAAC,CACF,8BAAC,yBAAe,IAAC,eAAe,EAAE,eAAe,EAAE,IAAI,EAAE,IAAI;gBAC3D,8BAAC,eAAK,kBACJ,EAAE,EAAE,UAAU,CAAC,EAAE,EACjB,GAAG,EAAE,cAAc,EACnB,cAAc,EAAE,cAAc,EAC9B,yBAAyB,EAAE,yBAAyB,EACpD,QAAQ,EAAE,QAAQ,IACd,IAAI,EACR,CACc,CACnB;YACA,gBAAgB,IAAI,8BAAC,0BAAgB,IAAC,GAAG,EAAE,mBAAmB,GAAI,CAC/D,CACU,CACnB,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"InputController.js","sourceRoot":"","sources":["../../../../src/form/combobox/Input/InputController.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA0D;AAC1D,4DAA4D;AAC5D,+CAA0C;AAC1C,0EAAuE;AACvE,oDAA4C;AAC5C,gDAAoD;AACpD,sFAAsF;AACtF,yFAAiE;AACjE,sFAAsF;AAEtF,oDAA4B;AAC5B,mDAAkD;AAClD,0EAAkD;AAErC,QAAA,eAAe,GAAG,IAAA,kBAAU,EAcvC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IACf,MAAM;IACJ,sHAAsH;IACtH,WAAW;IACX,sHAAsH;IACtH,gBAAgB,EAChB,gBAAgB,GAAG,IAAI,EACvB,cAAc,EACd,yBAAyB,GAAG,IAAI,KAG9B,KAAK,EADJ,IAAI,UACL,KAAK,EAVH,sGAUL,CAAQ,CAAC;IAEV,MAAM,EACJ,UAAU,EACV,UAAU,EACV,IAAI,GAAG,QAAQ,EACf,QAAQ,EACR,mBAAmB,EACnB,QAAQ,EACR,YAAY,GACb,GAAG,IAAA,+BAAe,GAAE,CAAC;IAEtB,MAAM,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,GAAG,IAAA,kDAAyB,GAAE,CAAC;IAC5E,MAAM,EAAE,eAAe,EAAE,GAAG,IAAA,kDAAyB,GAAE,CAAC;IAExD,MAAM,cAAc,GAAG,IAAA,oBAAY,EAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IAEnD,OAAO,CACL,8BAAC,mBAAQ,CAAC,MAAM,IAAC,OAAO,QAAC,GAAG,EAAE,YAAY;QAExC,uCACE,SAAS,EAAE,IAAA,YAAE,EAAC,uDAAuD,EAAE;gBACrE,oDAAoD,EAClD,iBAAiB,KAAK,SAAS;aAClC,CAAC,EACF,OAAO,EAAE,GAAG,EAAE;gBACZ,IAAI,UAAU,CAAC,QAAQ,IAAI,QAAQ,EAAE,CAAC;oBACpC,OAAO;gBACT,CAAC;gBAED,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBACvB,UAAU,EAAE,CAAC;YACf,CAAC;YAEA,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAC5B,8BAAC,eAAK,kBACJ,EAAE,EAAE,UAAU,CAAC,EAAE,EACjB,GAAG,EAAE,cAAc,EACnB,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,QAAQ,IACd,IAAI,EACR,CACH,CAAC,CAAC,CAAC,CACF,8BAAC,yBAAe,IAAC,eAAe,EAAE,eAAe,EAAE,IAAI,EAAE,IAAI;gBAC3D,8BAAC,eAAK,kBACJ,EAAE,EAAE,UAAU,CAAC,EAAE,EACjB,GAAG,EAAE,cAAc,EACnB,cAAc,EAAE,cAAc,EAC9B,yBAAyB,EAAE,yBAAyB,EACpD,QAAQ,EAAE,QAAQ,IACd,IAAI,EACR,CACc,CACnB;YACA,gBAAgB,IAAI,8BAAC,0BAAgB,IAAC,GAAG,EAAE,mBAAmB,GAAI,CAC/D,CACU,CACnB,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- /* eslint-disable jsx-a11y/no-static-element-interactions */
3
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
3
  if (k2 === undefined) k2 = k;
5
4
  var desc = Object.getOwnPropertyDescriptor(m, k);
@@ -46,6 +45,7 @@ var __rest = (this && this.__rest) || function (s, e) {
46
45
  };
47
46
  Object.defineProperty(exports, "__esModule", { value: true });
48
47
  exports.FileUploadDropzone = void 0;
48
+ /* eslint-disable jsx-a11y/no-static-element-interactions */
49
49
  /* eslint-disable jsx-a11y/click-events-have-key-events */
50
50
  const react_1 = __importStar(require("react"));
51
51
  const aksel_icons_1 = require("@navikt/aksel-icons");
@@ -1 +1 @@
1
- {"version":3,"file":"FileUploadDropzone.js","sourceRoot":"","sources":["../../../../src/form/file-upload/dropzone/FileUploadDropzone.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FileUploadDropzone.js","sourceRoot":"","sources":["../../../../src/form/file-upload/dropzone/FileUploadDropzone.tsx"],"names":[],"mappings":"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"}
@@ -11,9 +11,11 @@ function useToggleGroup({ onChange, value, defaultValue = "", }) {
11
11
  onChange,
12
12
  });
13
13
  /* Sync focused `value` with controlled `selectedValue` */
14
- if (value != null && value !== focusedValue) {
15
- setFocusedValue(value);
16
- }
14
+ (0, react_1.useEffect)(() => {
15
+ if (value != null) {
16
+ setFocusedValue(value);
17
+ }
18
+ }, [value]);
17
19
  return {
18
20
  selectedValue,
19
21
  setSelectedValue,
@@ -1 +1 @@
1
- {"version":3,"file":"useToggleGroup.js","sourceRoot":"","sources":["../../src/toggle-group/useToggleGroup.ts"],"names":[],"mappings":";;AAIA,wCAwBC;AA5BD,iCAAiC;AACjC,0CAAsD;AAGtD,SAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,KAAK,EACL,YAAY,GAAG,EAAE,GAC6C;IAC9D,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,IAAA,gBAAQ,EAAC,YAAY,CAAC,CAAC;IAE/D,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,IAAA,4BAAoB,EAAC;QAC7D,YAAY;QACZ,KAAK;QACL,QAAQ;KACT,CAAC,CAAC;IAEH,0DAA0D;IAC1D,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,YAAY,EAAE,CAAC;QAC5C,eAAe,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAED,OAAO;QACL,aAAa;QACb,gBAAgB;QAChB,YAAY;QACZ,eAAe;KAChB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"useToggleGroup.js","sourceRoot":"","sources":["../../src/toggle-group/useToggleGroup.ts"],"names":[],"mappings":";;AAIA,wCAyBC;AA7BD,iCAA4C;AAC5C,0CAAsD;AAGtD,SAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,KAAK,EACL,YAAY,GAAG,EAAE,GAC6C;IAC9D,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,IAAA,gBAAQ,EAAC,YAAY,CAAC,CAAC;IAC/D,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,IAAA,4BAAoB,EAAC;QAC7D,YAAY;QACZ,KAAK;QACL,QAAQ;KACT,CAAC,CAAC;IAEH,0DAA0D;IAC1D,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAClB,eAAe,CAAC,KAAK,CAAC,CAAC;QACzB,CAAC;IACH,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,OAAO;QACL,aAAa;QACb,gBAAgB;QAChB,YAAY;QACZ,eAAe;KAChB,CAAC;AACJ,CAAC"}
@@ -8,6 +8,10 @@ import { DataTableThead, type DataTableTheadProps } from "../thead/DataTableThea
8
8
  import { DataTableTr, type DataTableTrProps } from "../tr/DataTableTr.js";
9
9
  interface DataTableProps extends React.HTMLAttributes<HTMLTableElement> {
10
10
  children: React.ReactNode;
11
+ /**
12
+ * Controls vertical cell padding.
13
+ * @default "normal"
14
+ */
11
15
  rowDensity?: "condensed" | "normal" | "spacious";
12
16
  /**
13
17
  * Zebra striped table
@@ -16,6 +20,8 @@ interface DataTableProps extends React.HTMLAttributes<HTMLTableElement> {
16
20
  zebraStripes?: boolean;
17
21
  /**
18
22
  * Truncate content in cells and show ellipsis for overflowed text.
23
+ *
24
+ * **NB:** When using `layout="auto"`, you have to manually set a `maxWidth` on columns that should be truncated.
19
25
  * @default true
20
26
  */
21
27
  truncateContent?: boolean;
@@ -30,6 +36,21 @@ interface DataTableProps extends React.HTMLAttributes<HTMLTableElement> {
30
36
  * Requires `withKeyboardNav` to be `true`.
31
37
  */
32
38
  shouldBlockNavigation?: (event: KeyboardEvent) => boolean;
39
+ /**
40
+ * Controls table layout.
41
+ *
42
+ * ### fixed
43
+ * Gives you full control of column widths. This is required for resizable columns.
44
+ *
45
+ * ### auto
46
+ * Makes the columns resize automatically based on the content.
47
+ * The table will take up at least 100% of available width.
48
+ *
49
+ * **NB:** When using this with `truncateContent`, you have to manually
50
+ * set a `contentMaxWidth` on cells that should be truncated.
51
+ * @default "fixed"
52
+ */
53
+ layout?: "fixed" | "auto";
33
54
  }
34
55
  interface DataTableRootComponent extends React.ForwardRefExoticComponent<DataTableProps & React.RefAttributes<HTMLTableElement>> {
35
56
  /**
@@ -123,6 +144,12 @@ interface DataTableRootComponent extends React.ForwardRefExoticComponent<DataTab
123
144
  */
124
145
  Tfoot: typeof DataTableTfoot;
125
146
  }
147
+ /**
148
+ * TODO Component description etc.
149
+ *
150
+ * **NB:** To get sticky headers, you have to set a height restriction on the table container. You can use VStack for this:
151
+ * TODO example
152
+ */
126
153
  declare const DataTable: DataTableRootComponent;
127
154
  export { DataTable, DataTableCaption, DataTableTbody, DataTableTd, DataTableTfoot, DataTableTh, DataTableThead, DataTableTr, };
128
155
  export default DataTable;
@@ -20,8 +20,14 @@ import { DataTableTh } from "../th/DataTableTh.js";
20
20
  import { DataTableThead, } from "../thead/DataTableThead.js";
21
21
  import { DataTableTr } from "../tr/DataTableTr.js";
22
22
  import { useTableKeyboardNav } from "./useTableKeyboardNav.js";
23
+ /**
24
+ * TODO Component description etc.
25
+ *
26
+ * **NB:** To get sticky headers, you have to set a height restriction on the table container. You can use VStack for this:
27
+ * TODO example
28
+ */
23
29
  const DataTable = forwardRef((_a, forwardedRef) => {
24
- var { className, rowDensity = "normal", withKeyboardNav = false, zebraStripes = false, truncateContent = true, shouldBlockNavigation } = _a, rest = __rest(_a, ["className", "rowDensity", "withKeyboardNav", "zebraStripes", "truncateContent", "shouldBlockNavigation"]);
30
+ var { className, rowDensity = "normal", withKeyboardNav = false, zebraStripes = false, truncateContent = true, shouldBlockNavigation, layout = "fixed" } = _a, rest = __rest(_a, ["className", "rowDensity", "withKeyboardNav", "zebraStripes", "truncateContent", "shouldBlockNavigation", "layout"]);
25
31
  const [tableRef, setTableRef] = useState(null);
26
32
  const mergedRef = useMergeRefs(forwardedRef, setTableRef);
27
33
  const { tabIndex } = useTableKeyboardNav(tableRef, {
@@ -30,7 +36,7 @@ const DataTable = forwardRef((_a, forwardedRef) => {
30
36
  });
31
37
  return (React.createElement("div", { className: "aksel-data-table__border-wrapper" },
32
38
  React.createElement("div", { className: "aksel-data-table__scroll-wrapper" },
33
- React.createElement("table", Object.assign({}, rest, { ref: mergedRef, className: cl("aksel-data-table", className), "data-zebra-stripes": zebraStripes, "data-truncate-content": truncateContent, "data-density": rowDensity, tabIndex: tabIndex })))));
39
+ React.createElement("table", Object.assign({}, rest, { ref: mergedRef, className: cl("aksel-data-table", className), "data-zebra-stripes": zebraStripes, "data-truncate-content": truncateContent, "data-density": rowDensity, "data-layout": layout, tabIndex: tabIndex })))));
34
40
  });
35
41
  DataTable.Caption = DataTableCaption;
36
42
  DataTable.Thead = DataTableThead;
@@ -1 +1 @@
1
- {"version":3,"file":"DataTableRoot.js","sourceRoot":"","sources":["../../../../src/data/table/root/DataTableRoot.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EACL,gBAAgB,GAEjB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,cAAc,GAEf,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,WAAW,EAAyB,MAAM,mBAAmB,CAAC;AACvE,OAAO,EACL,cAAc,GAEf,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,WAAW,EAAyB,MAAM,mBAAmB,CAAC;AACvE,OAAO,EACL,cAAc,GAEf,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,WAAW,EAAyB,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AA2H5D,MAAM,SAAS,GAAG,UAAU,CAC1B,CACE,EAQC,EACD,YAAY,EACZ,EAAE;QAVF,EACE,SAAS,EACT,UAAU,GAAG,QAAQ,EACrB,eAAe,GAAG,KAAK,EACvB,YAAY,GAAG,KAAK,EACpB,eAAe,GAAG,IAAI,EACtB,qBAAqB,OAEtB,EADI,IAAI,cAPT,0GAQC,CADQ;IAIT,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAA0B,IAAI,CAAC,CAAC;IACxE,MAAM,SAAS,GAAG,YAAY,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;IAE1D,MAAM,EAAE,QAAQ,EAAE,GAAG,mBAAmB,CAAC,QAAQ,EAAE;QACjD,OAAO,EAAE,eAAe;QACxB,qBAAqB;KACtB,CAAC,CAAC;IAEH,OAAO,CACL,6BAAK,SAAS,EAAC,kCAAkC;QAC/C,6BAAK,SAAS,EAAC,kCAAkC;YAC/C,+CACM,IAAI,IACR,GAAG,EAAE,SAAS,EACd,SAAS,EAAE,EAAE,CAAC,kBAAkB,EAAE,SAAS,CAAC,wBACxB,YAAY,2BACT,eAAe,kBACxB,UAAU,EACxB,QAAQ,EAAE,QAAQ,IAClB,CACE,CACF,CACP,CAAC;AACJ,CAAC,CACwB,CAAC;AAE5B,SAAS,CAAC,OAAO,GAAG,gBAAgB,CAAC;AACrC,SAAS,CAAC,KAAK,GAAG,cAAc,CAAC;AACjC,SAAS,CAAC,KAAK,GAAG,cAAc,CAAC;AACjC,SAAS,CAAC,EAAE,GAAG,WAAW,CAAC;AAC3B,SAAS,CAAC,EAAE,GAAG,WAAW,CAAC;AAC3B,SAAS,CAAC,EAAE,GAAG,WAAW,CAAC;AAC3B,SAAS,CAAC,KAAK,GAAG,cAAc,CAAC;AAEjC,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,cAAc,EACd,WAAW,EACX,cAAc,EACd,WAAW,EACX,cAAc,EACd,WAAW,GACZ,CAAC;AACF,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"DataTableRoot.js","sourceRoot":"","sources":["../../../../src/data/table/root/DataTableRoot.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EACL,gBAAgB,GAEjB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,cAAc,GAEf,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,WAAW,EAAyB,MAAM,mBAAmB,CAAC;AACvE,OAAO,EACL,cAAc,GAEf,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,WAAW,EAAyB,MAAM,mBAAmB,CAAC;AACvE,OAAO,EACL,cAAc,GAEf,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,WAAW,EAAyB,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAgJ5D;;;;;GAKG;AACH,MAAM,SAAS,GAAG,UAAU,CAC1B,CACE,EASC,EACD,YAAY,EACZ,EAAE;QAXF,EACE,SAAS,EACT,UAAU,GAAG,QAAQ,EACrB,eAAe,GAAG,KAAK,EACvB,YAAY,GAAG,KAAK,EACpB,eAAe,GAAG,IAAI,EACtB,qBAAqB,EACrB,MAAM,GAAG,OAAO,OAEjB,EADI,IAAI,cART,oHASC,CADQ;IAIT,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAA0B,IAAI,CAAC,CAAC;IACxE,MAAM,SAAS,GAAG,YAAY,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;IAE1D,MAAM,EAAE,QAAQ,EAAE,GAAG,mBAAmB,CAAC,QAAQ,EAAE;QACjD,OAAO,EAAE,eAAe;QACxB,qBAAqB;KACtB,CAAC,CAAC;IAEH,OAAO,CACL,6BAAK,SAAS,EAAC,kCAAkC;QAC/C,6BAAK,SAAS,EAAC,kCAAkC;YAC/C,+CACM,IAAI,IACR,GAAG,EAAE,SAAS,EACd,SAAS,EAAE,EAAE,CAAC,kBAAkB,EAAE,SAAS,CAAC,wBACxB,YAAY,2BACT,eAAe,kBACxB,UAAU,iBACX,MAAM,EACnB,QAAQ,EAAE,QAAQ,IAClB,CACE,CACF,CACP,CAAC;AACJ,CAAC,CACwB,CAAC;AAE5B,SAAS,CAAC,OAAO,GAAG,gBAAgB,CAAC;AACrC,SAAS,CAAC,KAAK,GAAG,cAAc,CAAC;AACjC,SAAS,CAAC,KAAK,GAAG,cAAc,CAAC;AACjC,SAAS,CAAC,EAAE,GAAG,WAAW,CAAC;AAC3B,SAAS,CAAC,EAAE,GAAG,WAAW,CAAC;AAC3B,SAAS,CAAC,EAAE,GAAG,WAAW,CAAC;AAC3B,SAAS,CAAC,KAAK,GAAG,cAAc,CAAC;AAEjC,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,cAAc,EACd,WAAW,EACX,cAAc,EACd,WAAW,EACX,cAAc,EACd,WAAW,GACZ,CAAC;AACF,eAAe,SAAS,CAAC"}
@@ -1,10 +1,11 @@
1
1
  import React from "react";
2
- interface DataTableTdProps extends React.HTMLAttributes<HTMLTableCellElement> {
2
+ interface DataTableTdProps extends React.TdHTMLAttributes<HTMLTableCellElement> {
3
3
  /**
4
- * TODO: Shouldnt be needed to declare these here... But getting type-errors if not
4
+ * Sets a max-width on the content wrapper div inside the cell.
5
+ * This is only needed when using `layout="auto"` together with
6
+ * `truncateContent` on `<DataTable>` and you want the cell to be truncated.
5
7
  */
6
- colSpan?: number;
7
- rowSpan?: number;
8
+ contentMaxWidth?: number | `${number}${string}`;
8
9
  }
9
10
  declare const DataTableTd: React.ForwardRefExoticComponent<DataTableTdProps & React.RefAttributes<HTMLTableCellElement>>;
10
11
  export { DataTableTd };
@@ -12,9 +12,9 @@ var __rest = (this && this.__rest) || function (s, e) {
12
12
  import React, { forwardRef } from "react";
13
13
  import { cl } from "../../../utils/helpers/index.js";
14
14
  const DataTableTd = forwardRef((_a, forwardedRef) => {
15
- var { className, children } = _a, rest = __rest(_a, ["className", "children"]);
15
+ var { className, children, contentMaxWidth } = _a, rest = __rest(_a, ["className", "children", "contentMaxWidth"]);
16
16
  return (React.createElement("td", Object.assign({}, rest, { ref: forwardedRef, className: cl("aksel-data-table__td", className) }),
17
- React.createElement("div", null, children)));
17
+ React.createElement("div", { style: { maxWidth: contentMaxWidth } }, children)));
18
18
  });
19
19
  export { DataTableTd };
20
20
  //# sourceMappingURL=DataTableTd.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DataTableTd.js","sourceRoot":"","sources":["../../../../src/data/table/td/DataTableTd.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAC;AAU5C,MAAM,WAAW,GAAG,UAAU,CAC5B,CAAC,EAAgC,EAAE,YAAY,EAAE,EAAE;QAAlD,EAAE,SAAS,EAAE,QAAQ,OAAW,EAAN,IAAI,cAA9B,yBAAgC,CAAF;IAC7B,OAAO,CACL,4CACM,IAAI,IACR,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,EAAE,CAAC,sBAAsB,EAAE,SAAS,CAAC;QAEhD,iCAAM,QAAQ,CAAO,CAClB,CACN,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,OAAO,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"DataTableTd.js","sourceRoot":"","sources":["../../../../src/data/table/td/DataTableTd.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAC;AAiB5C,MAAM,WAAW,GAAG,UAAU,CAC5B,CAAC,EAAiD,EAAE,YAAY,EAAE,EAAE;QAAnE,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe,OAAW,EAAN,IAAI,cAA/C,4CAAiD,CAAF;IAC9C,OAAO,CACL,4CACM,IAAI,IACR,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,EAAE,CAAC,sBAAsB,EAAE,SAAS,CAAC;QAEhD,6BAAK,KAAK,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE,IAAG,QAAQ,CAAO,CACxD,CACN,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,OAAO,EAAE,WAAW,EAAE,CAAC"}
@@ -1,19 +1,7 @@
1
1
  import React from "react";
2
- interface AutoSuggestOption {
3
- value: string;
4
- label: string;
5
- tags?: string[];
6
- filteringTags?: string[];
7
- description?: string;
8
- }
9
- interface AutoSuggestGroup {
10
- label: string;
11
- options: AutoSuggestOption[];
12
- }
2
+ import type { AutoCompleteOption, OptionGroup } from "./AutoSuggest.types.js";
13
3
  interface AutoSuggestProps {
14
- options: AutoSuggestGroup[];
15
- value: string;
16
- filterText: string;
4
+ options: OptionGroup<AutoCompleteOption>[];
17
5
  onSelect: (value: string) => void;
18
6
  className?: string;
19
7
  }
@@ -1,93 +1,17 @@
1
- var __rest = (this && this.__rest) || function (s, e) {
2
- var t = {};
3
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
- t[p] = s[p];
5
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
- t[p[i]] = s[p[i]];
9
- }
10
- return t;
11
- };
12
- import React, { forwardRef, useMemo } from "react";
13
- import { cl } from "../../utils/helpers/index.js";
14
- const AutoSuggest = forwardRef(({ options, value, filterText, onSelect, className }, ref) => {
15
- console.info({ options, value, filterText });
16
- /* const highlightedText = filterText === undefined ? value : filterText; */
17
- /* const filterValue = (value || "").toLowerCase();
18
-
19
- const filteredGroups = options
20
- .map((group) => ({
21
- ...group,
22
- options: group.options.filter((option) => {
23
- const searchableText = [
24
- option.label,
25
- option.description,
26
- ...(option.filteringTags ?? []),
27
- ...(option.tags ?? []),
28
- ]
29
- .filter(Boolean)
30
- .join(" ")
31
- .toLowerCase();
32
- return searchableText.includes(filterValue);
33
- }),
34
- }))
35
- .filter((group) => group.options.length > 0); */
36
- const { items } = useAutosuggestItems({ options, filterValue: filterText });
37
- console.info({ items });
38
- return (React.createElement("div", { ref: ref, className: cl("aksel-auto-suggest", className) }, options.map((group) => (React.createElement("div", { key: group.label, className: "aksel-auto-suggest__group" },
39
- React.createElement("div", { className: "aksel-auto-suggest__group-label" }, group.label),
40
- React.createElement("ul", { className: "aksel-auto-suggest__list" }, group.options.map((option) => (React.createElement("li", { key: option.value, className: "aksel-auto-suggest__item" },
41
- React.createElement("button", { type: "button", className: "aksel-auto-suggest__button", onClick: () => onSelect(option.value) },
42
- React.createElement("span", { className: "aksel-auto-suggest__label" }, option.label),
43
- option.description && (React.createElement("span", { className: "aksel-auto-suggest__description" }, option.description)),
44
- option.tags && option.tags.length > 0 && (React.createElement("div", { className: "aksel-auto-suggest__tags" }, option.tags.map((tag) => (React.createElement("span", { key: tag, className: "aksel-auto-suggest__tag" }, tag)))))))))))))));
1
+ import React, { forwardRef } from "react";
2
+ import { Box } from "../../primitives/box/index.js";
3
+ import { VStack } from "../../primitives/stack/index.js";
4
+ import { Label } from "../../typography/index.js";
5
+ const AutoSuggest = forwardRef(({ options, onSelect }, ref) => {
6
+ return (React.createElement(Box, { ref: ref, padding: "space-6" }, options.map((group) => (React.createElement("div", { key: group.label },
7
+ React.createElement(Label, { as: "div" }, group.label),
8
+ React.createElement(VStack, { gap: "space-4" }, group.options.map((option) => {
9
+ return (React.createElement("div", { key: option.value },
10
+ React.createElement("button", { type: "button", onClick: () => onSelect(option.value) },
11
+ React.createElement("span", null, option.label),
12
+ option.description && React.createElement("span", null, option.description),
13
+ option.tags && option.tags.length > 0 && (React.createElement("div", null, option.tags.map((tag) => (React.createElement("span", { key: tag }, tag))))))));
14
+ })))))));
45
15
  });
46
- function useAutosuggestItems({ options, filterValue }) {
47
- const { items } = useMemo(() => createItems(options), [options]);
48
- const filteredItems = useMemo(() => {
49
- const localFilteredItems = items;
50
- if (filterValue) {
51
- localFilteredItems.unshift({
52
- value: filterValue,
53
- type: "use-entered",
54
- label: `Use "${filterValue}"`,
55
- option: { value: filterValue },
56
- });
57
- }
58
- return localFilteredItems;
59
- }, [items, filterValue]);
60
- return { items: filteredItems };
61
- }
62
- function createItems(options) {
63
- const items = [];
64
- const itemToGroup = new WeakMap();
65
- for (const option of options) {
66
- if (isGroup(option)) {
67
- for (const item of flattenGroup(option, itemToGroup)) {
68
- items.push(item);
69
- }
70
- }
71
- else {
72
- items.push(Object.assign(Object.assign({}, option), { option }));
73
- }
74
- }
75
- return { items };
76
- }
77
- function flattenGroup(group, map) {
78
- var _a;
79
- const { options } = group, rest = __rest(group, ["options"]);
80
- const groupItem = Object.assign(Object.assign({}, rest), { type: "parent", option: group });
81
- const items = [groupItem];
82
- for (const option of options) {
83
- const childOption = Object.assign(Object.assign({}, option), { type: "child", disabled: (_a = option.disabled) !== null && _a !== void 0 ? _a : false, option, parent: group });
84
- items.push(childOption);
85
- map.set(childOption, groupItem);
86
- }
87
- return items;
88
- }
89
- function isGroup(optionOrGroup) {
90
- return "options" in optionOrGroup;
91
- }
92
16
  export { AutoSuggest };
93
17
  //# sourceMappingURL=AutoSuggest.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AutoSuggest.js","sourceRoot":"","sources":["../../../src/data/token-filter/AutoSuggest.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AutoSuggest.js","sourceRoot":"","sources":["../../../src/data/token-filter/AutoSuggest.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AASzC,MAAM,WAAW,GAAG,UAAU,CAC5B,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,EAAE;IAC7B,OAAO,CACL,oBAAC,GAAG,IAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAC,SAAS,IAC7B,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CACtB,6BAAK,GAAG,EAAE,KAAK,CAAC,KAAK;QACnB,oBAAC,KAAK,IAAC,EAAE,EAAC,KAAK,IAAE,KAAK,CAAC,KAAK,CAAS;QACrC,oBAAC,MAAM,IAAC,GAAG,EAAC,SAAS,IAClB,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YAC5B,OAAO,CACL,6BAAK,GAAG,EAAE,MAAM,CAAC,KAAK;gBACpB,gCACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC;oBAErC,kCAAO,MAAM,CAAC,KAAK,CAAQ;oBAC1B,MAAM,CAAC,WAAW,IAAI,kCAAO,MAAM,CAAC,WAAW,CAAQ;oBACvD,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CACxC,iCACG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CACxB,8BAAM,GAAG,EAAE,GAAG,IAAG,GAAG,CAAQ,CAC7B,CAAC,CACE,CACP,CACM,CACL,CACP,CAAC;QACJ,CAAC,CAAC,CACK,CACL,CACP,CAAC,CACE,CACP,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,OAAO,EAAE,WAAW,EAAE,CAAC"}
@@ -0,0 +1,11 @@
1
+ interface OptionGroup<T> {
2
+ label: string;
3
+ options: T[];
4
+ }
5
+ interface AutoCompleteOption {
6
+ value: string;
7
+ label: string;
8
+ tags?: string[];
9
+ description?: string;
10
+ }
11
+ export type { AutoCompleteOption, OptionGroup };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=AutoSuggest.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AutoSuggest.types.js","sourceRoot":"","sources":["../../../src/data/token-filter/AutoSuggest.types.ts"],"names":[],"mappings":""}
@@ -7,5 +7,10 @@ type TokenFilterProps = {
7
7
  filteringOptions: QueryFilteringOptions;
8
8
  filteringProperties: QueryFilteringProperties;
9
9
  };
10
+ /**
11
+ * TODO:
12
+ * - Implement onChange handler to update query state when user selects an autocomplete option.
13
+ * - Handle token rendering and editing (e.g., show tokens for matched properties/operators/values, allow deleting tokens).
14
+ */
10
15
  export declare const TokenFilter: React.ForwardRefExoticComponent<TokenFilterProps & React.RefAttributes<HTMLDivElement>>;
11
16
  export {};
@@ -1,20 +1,32 @@
1
1
  import React, { forwardRef, useState } from "react";
2
2
  import { Popover } from "../../popover/index.js";
3
3
  import { cl } from "../../utils/helpers/index.js";
4
+ import { AutoSuggest } from "./AutoSuggest.js";
4
5
  import { generateAutoCompleteOptions } from "./helpers/generate-autocomplete-options.js";
5
6
  import { parseQueryText } from "./helpers/parse-query-text.js";
7
+ /**
8
+ * TODO:
9
+ * - Implement onChange handler to update query state when user selects an autocomplete option.
10
+ * - Handle token rendering and editing (e.g., show tokens for matched properties/operators/values, allow deleting tokens).
11
+ */
6
12
  export const TokenFilter = forwardRef(({ query, className, filteringProperties, filteringOptions }, ref) => {
7
13
  const [inputAnchor, setInputAnchor] = useState(null);
8
14
  const [filterText, setFilterText] = useState("");
9
15
  const { properties, options } = derrivedFilterState(filteringProperties, filteringOptions);
10
16
  const queryState = parseQueryText(filterText, properties);
11
17
  const autoCompleteOptions = generateAutoCompleteOptions(queryState, properties, options);
12
- /* const handleSelectOption = (value: string) => {
13
- setFilterText(value);
14
- }; */
18
+ const handleSelectOption = (value) => {
19
+ setFilterText(value);
20
+ setCustomOpen(false);
21
+ };
22
+ const [customOpen, setCustomOpen] = useState(false);
15
23
  return (React.createElement("div", { ref: ref, className: cl("aksel-property-filter", className), role: "search" },
16
- React.createElement("input", { type: "text", className: "aksel-property-filter__input", placeholder: "Type to filter...", ref: setInputAnchor, value: filterText, onChange: (e) => setFilterText(e.target.value) }),
17
- React.createElement(Popover, { anchorEl: inputAnchor, open: filterText.length > 0, onClose: () => setFilterText("") }, "a"),
24
+ React.createElement("input", { type: "text", className: "aksel-property-filter__input", placeholder: "Type to filter...", ref: setInputAnchor, value: filterText, onChange: (e) => setFilterText(e.target.value), onFocus: () => setCustomOpen(true) }),
25
+ React.createElement(Popover, { anchorEl: inputAnchor, open: customOpen, onClose: () => {
26
+ setFilterText("");
27
+ setCustomOpen(false);
28
+ } },
29
+ React.createElement(AutoSuggest, { options: autoCompleteOptions.options, onSelect: handleSelectOption })),
18
30
  query.tokens.map((token, index) => {
19
31
  return (React.createElement("div", { key: index, className: "aksel-property-filter__token" },
20
32
  React.createElement("strong", null, token.propertyKey),
@@ -23,11 +35,10 @@ export const TokenFilter = forwardRef(({ query, className, filteringProperties,
23
35
  " "));
24
36
  }),
25
37
  React.createElement("ul", null, filteringProperties.map((prop) => (React.createElement("li", { key: prop.key }, prop.propertyLabel)))),
26
- React.createElement("pre", null, JSON.stringify(queryState, null, 2)),
27
38
  React.createElement("pre", null, JSON.stringify(autoCompleteOptions, null, 2))));
28
39
  });
29
40
  function derrivedFilterState(filteringProperties, filteringOptions) {
30
- var _a, _b;
41
+ var _a, _b, _c;
31
42
  const propertyMap = new Map();
32
43
  for (const property of filteringProperties) {
33
44
  propertyMap.set(property.key, {
@@ -35,19 +46,18 @@ function derrivedFilterState(filteringProperties, filteringOptions) {
35
46
  propertyLabel: (_a = property === null || property === void 0 ? void 0 : property.propertyLabel) !== null && _a !== void 0 ? _a : "",
36
47
  groupValuesLabel: (_b = property === null || property === void 0 ? void 0 : property.groupValuesLabel) !== null && _b !== void 0 ? _b : "",
37
48
  propertyGroup: property === null || property === void 0 ? void 0 : property.group,
38
- /* operators: (property?.operators ?? []).map(op => (typeof op === 'string' ? op : op.operator)), */
49
+ operators: (_c = property === null || property === void 0 ? void 0 : property.operators) !== null && _c !== void 0 ? _c : [],
39
50
  /* defaultOperator: property?.defaultOperator ?? '=', */
40
51
  externalProperty: property,
41
52
  });
42
53
  }
43
54
  const internalOptions = filteringOptions.map((option) => {
44
- var _a, _b, _c, _d, _e;
55
+ var _a, _b, _c, _d;
45
56
  return ({
46
57
  property: (_a = propertyMap.get(option.propertyKey)) !== null && _a !== void 0 ? _a : null,
47
58
  value: option.value,
48
59
  label: (_c = (_b = option.label) !== null && _b !== void 0 ? _b : option.value) !== null && _c !== void 0 ? _c : "",
49
60
  tags: (_d = option.tags) !== null && _d !== void 0 ? _d : [],
50
- filteringTags: (_e = option.filteringTags) !== null && _e !== void 0 ? _e : [],
51
61
  });
52
62
  });
53
63
  return { properties: [...propertyMap.values()], options: internalOptions };