@uva-glass/component-library 3.50.15 → 3.52.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 (110) hide show
  1. package/dist/RteEditor.module-CUi7Vqe8.js +37 -0
  2. package/dist/RteEditor.module-CUi7Vqe8.js.map +1 -0
  3. package/dist/{SelectListbox.module-CgZyIxwT.js → SelectListbox.module-CXqMuXRB.js} +24 -23
  4. package/dist/SelectListbox.module-CXqMuXRB.js.map +1 -0
  5. package/dist/{TablePlugin-CeZO4BR1.js → TablePlugin-BLbsvcuu.js} +2 -2
  6. package/dist/{TablePlugin-CeZO4BR1.js.map → TablePlugin-BLbsvcuu.js.map} +1 -1
  7. package/dist/assets/CheckboxButtonBar.css +1 -1
  8. package/dist/assets/FormInput.css +1 -1
  9. package/dist/assets/InputField.css +1 -1
  10. package/dist/assets/MetaDataBar.css +1 -0
  11. package/dist/assets/RteEditor.css +1 -1
  12. package/dist/assets/SelectListbox.css +1 -1
  13. package/dist/components/Accordion/Accordion.test.js +3 -3
  14. package/dist/components/AccordionCard/AccordionCard.test.js +3 -3
  15. package/dist/components/ActionList/ActionList.test.js +3 -3
  16. package/dist/components/AppStatusBar/AppStatusBar.test.js +2 -2
  17. package/dist/components/Attention/Attention.test.js +2 -2
  18. package/dist/components/Backdrop/Backdrop.test.js +2 -2
  19. package/dist/components/Buttons/Button.test.js +2 -2
  20. package/dist/components/Buttons/LinkButton.test.js +2 -2
  21. package/dist/components/Buttons/MenuButton.test.js +2 -2
  22. package/dist/components/Card/Card.test.js +2 -2
  23. package/dist/components/Checkbox/Checkbox.test.js +3 -3
  24. package/dist/components/CheckboxButtonBar/CheckboxButtonBar.d.ts +3 -3
  25. package/dist/components/CheckboxButtonBar/CheckboxButtonBar.js +45 -45
  26. package/dist/components/CheckboxButtonBar/CheckboxButtonBar.js.map +1 -1
  27. package/dist/components/CheckboxButtonBar/CheckboxButtonBar.test.js +2 -2
  28. package/dist/components/CheckboxTree/CheckboxTree.js +1 -1
  29. package/dist/components/FeedbackBar/FeedbackBar.test.js +2 -2
  30. package/dist/components/FormInput/FormInput.d.ts +3 -1
  31. package/dist/components/FormInput/FormInput.js +35 -31
  32. package/dist/components/FormInput/FormInput.js.map +1 -1
  33. package/dist/components/Icon/icons/index.d.ts +6 -0
  34. package/dist/components/Icon/icons/index.js +16 -11
  35. package/dist/components/Icon/icons/index.js.map +1 -1
  36. package/dist/components/InputField/InputField.d.ts +2 -0
  37. package/dist/components/InputField/InputField.js +29 -26
  38. package/dist/components/InputField/InputField.js.map +1 -1
  39. package/dist/components/InputField/InputField.stories.js +1 -1
  40. package/dist/components/Label/Label.test.js +2 -2
  41. package/dist/components/MetaDataBar/MetaDataBar.d.ts +11 -0
  42. package/dist/components/MetaDataBar/MetaDataBar.js +13 -0
  43. package/dist/components/MetaDataBar/MetaDataBar.js.map +1 -0
  44. package/dist/components/MetaDataBar/MetaDataBar.stories.d.ts +5 -0
  45. package/dist/components/MetaDataBar/MetaDataBar.stories.js +21 -0
  46. package/dist/components/MetaDataBar/MetaDataBar.stories.js.map +1 -0
  47. package/dist/components/MetaDataBar/MetaDataBar.test.d.ts +1 -0
  48. package/dist/components/MetaDataBar/MetaDataBar.test.js +18 -0
  49. package/dist/components/MetaDataBar/MetaDataBar.test.js.map +1 -0
  50. package/dist/components/MetaDataBar/index.d.ts +1 -0
  51. package/dist/components/MetaDataBar/index.js +5 -0
  52. package/dist/components/MetaDataBar/index.js.map +1 -0
  53. package/dist/components/MultiSelect/MultiSelect.js +1 -1
  54. package/dist/components/MultiSelect/MultiSelect.stories.js +1 -1
  55. package/dist/components/MultiSelect/components/MultiSelectHeader.js +1 -1
  56. package/dist/components/MultiSelect/index.js +1 -1
  57. package/dist/components/MultiSelectBox/MultiSelectBox.test.js +2 -2
  58. package/dist/components/Notification/Notification.test.js +2 -2
  59. package/dist/components/PeriodSelector/PeriodSelector.js +13 -13
  60. package/dist/components/PeriodSelector/PeriodSelector.js.map +1 -1
  61. package/dist/components/ProgrammeCard/ProgrammeCard.stories.js +1 -1
  62. package/dist/components/RadioGroup/Radiogroup.test.js +2 -2
  63. package/dist/components/RadioTabSelector/RadioTabSelector.js +1 -1
  64. package/dist/components/RteEditor/EditorHeader/EditorHeader.js +1 -1
  65. package/dist/components/RteEditor/Plugins/BlockFormatPlugin/BlockFormatPlugin.js +1 -1
  66. package/dist/components/RteEditor/Plugins/HistoryPlugin/HistoryPlugin.js +2 -2
  67. package/dist/components/RteEditor/Plugins/LinkPlugin/AddLinkForm/AddLinkFrom.js +1 -1
  68. package/dist/components/RteEditor/Plugins/LinkPlugin/LinkPlugin.js +2 -2
  69. package/dist/components/RteEditor/Plugins/ListPlugin/ListPlugin.js +1 -1
  70. package/dist/components/RteEditor/Plugins/TablePlugin/AddTableFrom.js +1 -1
  71. package/dist/components/RteEditor/Plugins/TablePlugin/TablePlugin.js +2 -2
  72. package/dist/components/RteEditor/Plugins/TablePlugin/index.js +1 -1
  73. package/dist/components/RteEditor/Plugins/ToolbarPlugin/ToolbarPlugin.js +2 -2
  74. package/dist/components/RteEditor/Plugins/index.js +1 -1
  75. package/dist/components/RteEditor/RteEditor.d.ts +8 -6
  76. package/dist/components/RteEditor/RteEditor.js +367 -356
  77. package/dist/components/RteEditor/RteEditor.js.map +1 -1
  78. package/dist/components/RteEditor/UvaTheme/UvaTheme.js +1 -1
  79. package/dist/components/SelectListbox/SelectListbox.d.ts +4 -2
  80. package/dist/components/SelectListbox/SelectListbox.js +20 -18
  81. package/dist/components/SelectListbox/SelectListbox.js.map +1 -1
  82. package/dist/components/SelectListbox/components/SelectButton.d.ts +1 -0
  83. package/dist/components/SelectListbox/components/SelectButton.js +34 -25
  84. package/dist/components/SelectListbox/components/SelectButton.js.map +1 -1
  85. package/dist/components/SelectListbox/components/SelectContainer.js +1 -1
  86. package/dist/components/SelectListbox/components/SelectOption.js +1 -1
  87. package/dist/components/SelectListbox/components/SelectOptionBox.js +1 -1
  88. package/dist/components/StatusBadge/StatusBadge.test.js +2 -2
  89. package/dist/components/TextArea/TextArea.test.js +2 -2
  90. package/dist/components/VarIndicator/VarIndicator.test.js +3 -3
  91. package/dist/components/index.d.ts +1 -0
  92. package/dist/components/index.js +70 -68
  93. package/dist/components/index.js.map +1 -1
  94. package/dist/{index-Bf2LCbD1.js → index-C_1Z-Fok.js} +2 -2
  95. package/dist/{index-Bf2LCbD1.js.map → index-C_1Z-Fok.js.map} +1 -1
  96. package/dist/index-D6WVIfcJ.js +6039 -0
  97. package/dist/index-D6WVIfcJ.js.map +1 -0
  98. package/dist/index-DYPpFe2R.js +2364 -0
  99. package/dist/index-DYPpFe2R.js.map +1 -0
  100. package/dist/index.js +70 -68
  101. package/dist/index.js.map +1 -1
  102. package/dist/{react.esm-Bg7Fh9lz.js → react.esm-DdELhthz.js} +2 -2
  103. package/dist/{react.esm-Bg7Fh9lz.js.map → react.esm-DdELhthz.js.map} +1 -1
  104. package/dist/setupTests.js +1 -1
  105. package/package.json +5 -5
  106. package/dist/RteEditor.module-CmYZ4MmA.js +0 -36
  107. package/dist/RteEditor.module-CmYZ4MmA.js.map +0 -1
  108. package/dist/SelectListbox.module-CgZyIxwT.js.map +0 -1
  109. package/dist/index-JOHbZ4si.js +0 -8400
  110. package/dist/index-JOHbZ4si.js.map +0 -1
@@ -1,59 +1,68 @@
1
1
  import { jsx as n, jsxs as E } from "react/jsx-runtime";
2
2
  import { c as g } from "../../../clsx-OuTLNxxd.js";
3
3
  import { forwardRef as K, useRef as N, useEffect as x } from "react";
4
- import { s as t } from "../../../SelectListbox.module-CgZyIxwT.js";
4
+ import { s as e } from "../../../SelectListbox.module-CXqMuXRB.js";
5
5
  import { Icon as S } from "../../Icon/Icon.js";
6
6
  import { useSelect as W } from "../SelectProvider.js";
7
- const P = K((m, c) => {
8
- const { variant: b, size: h = "default", onChange: o, buttonLabelProp: y = "label", buttonLabelBold: k, disabled: w = !1 } = m, l = N(null), { listboxId: I, isOpen: e, selectedValue: s, toggleListbox: L, setIsOpen: i, setActiveIndex: f, options: p, isDirty: D } = W() || {}, C = (r) => {
9
- if (r.key.length === 1) {
10
- const a = r.key.toLocaleLowerCase(), u = p.findIndex(
7
+ const R = K((m, c) => {
8
+ const {
9
+ variant: b,
10
+ size: h = "default",
11
+ onChange: o,
12
+ buttonLabelProp: y = "label",
13
+ buttonLabelBold: k,
14
+ disabled: w = !1,
15
+ notValid: I = !1
16
+ } = m, l = N(null), { listboxId: L, isOpen: t, selectedValue: r, toggleListbox: D, setIsOpen: i, setActiveIndex: f, options: p, isDirty: C } = W() || {}, v = (s) => {
17
+ if (s.key.length === 1) {
18
+ const a = s.key.toLocaleLowerCase(), u = p.findIndex(
11
19
  (d) => !d.disabled && d.label.toLocaleLowerCase().startsWith(a)
12
20
  );
13
21
  if (u !== -1) {
14
- f(u), e || i(!0), r.preventDefault();
22
+ f(u), t || i(!0), s.preventDefault();
15
23
  return;
16
24
  }
17
25
  }
18
- switch (r.key) {
26
+ switch (s.key) {
19
27
  case "Enter":
20
- if (r.preventDefault(), !e) {
28
+ if (s.preventDefault(), !t) {
21
29
  i(!0);
22
30
  return;
23
31
  }
24
32
  break;
25
33
  case "Escape":
26
- e && (r.stopPropagation(), f(p.findIndex((a) => a.value === s?.value)), i(!1));
34
+ t && (s.stopPropagation(), f(p.findIndex((a) => a.value === r?.value)), i(!1));
27
35
  break;
28
36
  }
29
37
  };
30
38
  return x(() => {
31
- e && (l.current?.children[0]).blur();
32
- }, [e]), x(() => {
33
- o && o(s), D && (l.current?.children[0]).focus();
34
- }, [o, s]), /* @__PURE__ */ n("span", { ref: l, children: /* @__PURE__ */ E(
39
+ t && (l.current?.children[0]).blur();
40
+ }, [t]), x(() => {
41
+ o && o(r), C && (l.current?.children[0]).focus();
42
+ }, [o, r]), /* @__PURE__ */ n("span", { ref: l, children: /* @__PURE__ */ E(
35
43
  "button",
36
44
  {
37
- className: g(t["select-listbox-trigger"], t[`select-listbox-trigger--${h}`], {
38
- [t[`select-listbox-trigger--${b}`]]: b,
39
- [t["select-listbox-trigger--bold"]]: k
45
+ className: g(e["select-listbox-trigger"], e[`select-listbox-trigger--${h}`], {
46
+ [e[`select-listbox-trigger--${b}`]]: b,
47
+ [e["select-listbox-trigger--bold"]]: k,
48
+ [e["select-listbox-trigger--not-valid"]]: I
40
49
  }),
41
50
  type: "button",
42
- onClick: L,
43
- onKeyDown: C,
44
- "aria-expanded": e,
51
+ onClick: D,
52
+ onKeyDown: v,
53
+ "aria-expanded": t,
45
54
  "aria-haspopup": "listbox",
46
- "aria-label": `${s.label}`,
55
+ "aria-label": `${r.label}`,
47
56
  disabled: w,
48
- "aria-controls": I,
57
+ "aria-controls": L,
49
58
  ...c && { ref: c },
50
59
  children: [
51
- /* @__PURE__ */ n("span", { className: t["select-listbox-trigger-label"], children: s[y] }),
60
+ /* @__PURE__ */ n("span", { className: e["select-listbox-trigger-label"], children: r[y] }),
52
61
  /* @__PURE__ */ n(
53
62
  S,
54
63
  {
55
- className: g(t["select-listbox-trigger-icon"], {
56
- [t["select-listbox-trigger-icon--open"]]: e
64
+ className: g(e["select-listbox-trigger-icon"], {
65
+ [e["select-listbox-trigger-icon--open"]]: t
57
66
  }),
58
67
  name: "CheveronDown",
59
68
  size: 16
@@ -64,6 +73,6 @@ const P = K((m, c) => {
64
73
  ) });
65
74
  });
66
75
  export {
67
- P as SelectButton
76
+ R as SelectButton
68
77
  };
69
78
  //# sourceMappingURL=SelectButton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SelectButton.js","sources":["../../../../src/components/SelectListbox/components/SelectButton.tsx"],"sourcesContent":["import { clsx } from 'clsx';\nimport { useEffect, useRef, forwardRef } from 'react';\n\nimport type { KeyboardEvent } from 'react';\nimport type { OptionValue, SelectValue } from 'components/SelectListbox/SelectProvider';\n\nimport styles from 'components/SelectListbox/SelectListbox.module.css';\nimport { Icon } from 'components/Icon';\nimport { useSelect } from 'components/SelectListbox/SelectProvider';\n\nexport interface SelectButtonProps {\n variant?: 'noborder' | 'pill' | 'pillLeft' | 'pillRight' | 'darkBorder' | 'roundedLeft' | 'roundedRight';\n size?: 'small' | 'medium' | 'default';\n onChange?: (option: OptionValue) => void;\n buttonLabelProp?: string;\n buttonLabelBold?: boolean;\n disabled?: boolean;\n}\n\nexport const SelectButton = forwardRef<HTMLButtonElement, SelectButtonProps>((props, ref) => {\n const { variant, size = 'default', onChange, buttonLabelProp = 'label', buttonLabelBold, disabled = false } = props;\n const buttonWrapper = useRef<HTMLSpanElement>(null);\n const { listboxId, isOpen, selectedValue, toggleListbox, setIsOpen, setActiveIndex, options, isDirty } =\n useSelect() || {};\n\n const onTriggerKeyDown = (event: KeyboardEvent<HTMLButtonElement>) => {\n if (event.key.length === 1) {\n const key = event.key.toLocaleLowerCase();\n const optionIndexStartsWithKey = options.findIndex(\n (option) => !option.disabled && option.label.toLocaleLowerCase().startsWith(key)\n );\n if (optionIndexStartsWithKey !== -1) {\n setActiveIndex(optionIndexStartsWithKey);\n if (!isOpen) setIsOpen(true);\n event.preventDefault();\n return;\n }\n }\n\n switch (event.key) {\n case 'Enter':\n event.preventDefault();\n if (!isOpen) {\n setIsOpen(true);\n return;\n }\n break;\n case 'Escape':\n if (isOpen) {\n event.stopPropagation();\n setActiveIndex(options.findIndex((option) => option.value === selectedValue?.value));\n setIsOpen(false);\n }\n break;\n }\n };\n\n useEffect(() => {\n if (isOpen) {\n (buttonWrapper.current?.children[0] as HTMLButtonElement).blur();\n }\n }, [isOpen]);\n\n useEffect(() => {\n if (onChange) {\n onChange(selectedValue);\n }\n\n isDirty && (buttonWrapper.current?.children[0] as HTMLButtonElement).focus();\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [onChange, selectedValue]);\n\n return (\n <span ref={buttonWrapper}>\n <button\n className={clsx(styles['select-listbox-trigger'], styles[`select-listbox-trigger--${size}`], {\n [styles[`select-listbox-trigger--${variant}`]]: variant,\n [styles['select-listbox-trigger--bold']]: buttonLabelBold,\n })}\n type=\"button\"\n onClick={toggleListbox}\n onKeyDown={onTriggerKeyDown}\n aria-expanded={isOpen}\n aria-haspopup=\"listbox\"\n aria-label={`${selectedValue.label}`}\n disabled={disabled}\n aria-controls={listboxId}\n {...(ref && { ref: ref })}\n >\n <span className={styles['select-listbox-trigger-label']}>\n {selectedValue[buttonLabelProp as keyof SelectValue]}\n </span>\n\n <Icon\n className={clsx(styles['select-listbox-trigger-icon'], {\n [styles['select-listbox-trigger-icon--open']]: isOpen,\n })}\n name=\"CheveronDown\"\n size={16}\n />\n </button>\n </span>\n );\n});\n"],"names":["SelectButton","forwardRef","props","ref","variant","size","onChange","buttonLabelProp","buttonLabelBold","disabled","buttonWrapper","useRef","listboxId","isOpen","selectedValue","toggleListbox","setIsOpen","setActiveIndex","options","isDirty","useSelect","onTriggerKeyDown","event","key","optionIndexStartsWithKey","option","useEffect","jsx","jsxs","clsx","styles","Icon"],"mappings":";;;;;;AAmBO,MAAMA,IAAeC,EAAiD,CAACC,GAAOC,MAAQ;AAC3F,QAAM,EAAE,SAAAC,GAAS,MAAAC,IAAO,WAAW,UAAAC,GAAU,iBAAAC,IAAkB,SAAS,iBAAAC,GAAiB,UAAAC,IAAW,GAAA,IAAUP,GACxGQ,IAAgBC,EAAwB,IAAI,GAC5C,EAAE,WAAAC,GAAW,QAAAC,GAAQ,eAAAC,GAAe,eAAAC,GAAe,WAAAC,GAAW,gBAAAC,GAAgB,SAAAC,GAAS,SAAAC,MAC3FC,EAAA,KAAe,CAAA,GAEXC,IAAmB,CAACC,MAA4C;AACpE,QAAIA,EAAM,IAAI,WAAW,GAAG;AAC1B,YAAMC,IAAMD,EAAM,IAAI,kBAAA,GAChBE,IAA2BN,EAAQ;AAAA,QACvC,CAACO,MAAW,CAACA,EAAO,YAAYA,EAAO,MAAM,oBAAoB,WAAWF,CAAG;AAAA,MAAA;AAEjF,UAAIC,MAA6B,IAAI;AACnC,QAAAP,EAAeO,CAAwB,GAClCX,KAAQG,EAAU,EAAI,GAC3BM,EAAM,eAAA;AACN;AAAA,MACF;AAAA,IACF;AAEA,YAAQA,EAAM,KAAA;AAAA,MACZ,KAAK;AAEH,YADAA,EAAM,eAAA,GACF,CAACT,GAAQ;AACX,UAAAG,EAAU,EAAI;AACd;AAAA,QACF;AACA;AAAA,MACF,KAAK;AACH,QAAIH,MACFS,EAAM,gBAAA,GACNL,EAAeC,EAAQ,UAAU,CAACO,MAAWA,EAAO,UAAUX,GAAe,KAAK,CAAC,GACnFE,EAAU,EAAK;AAEjB;AAAA,IAAA;AAAA,EAEN;AAEA,SAAAU,EAAU,MAAM;AACd,IAAIb,MACDH,EAAc,SAAS,SAAS,CAAC,GAAwB,KAAA;AAAA,EAE9D,GAAG,CAACG,CAAM,CAAC,GAEXa,EAAU,MAAM;AACd,IAAIpB,KACFA,EAASQ,CAAa,GAGxBK,MAAYT,EAAc,SAAS,SAAS,CAAC,GAAwB,MAAA;AAAA,EAGvE,GAAG,CAACJ,GAAUQ,CAAa,CAAC,GAG1B,gBAAAa,EAAC,QAAA,EAAK,KAAKjB,GACT,UAAA,gBAAAkB;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC,EAAKC,EAAO,wBAAwB,GAAGA,EAAO,2BAA2BzB,CAAI,EAAE,GAAG;AAAA,QAC3F,CAACyB,EAAO,2BAA2B1B,CAAO,EAAE,CAAC,GAAGA;AAAA,QAChD,CAAC0B,EAAO,8BAA8B,CAAC,GAAGtB;AAAA,MAAA,CAC3C;AAAA,MACD,MAAK;AAAA,MACL,SAASO;AAAA,MACT,WAAWM;AAAA,MACX,iBAAeR;AAAA,MACf,iBAAc;AAAA,MACd,cAAY,GAAGC,EAAc,KAAK;AAAA,MAClC,UAAAL;AAAA,MACA,iBAAeG;AAAA,MACd,GAAIT,KAAO,EAAE,KAAAA,EAAA;AAAA,MAEd,UAAA;AAAA,QAAA,gBAAAwB,EAAC,UAAK,WAAWG,EAAO,8BAA8B,GACnD,UAAAhB,EAAcP,CAAoC,GACrD;AAAA,QAEA,gBAAAoB;AAAA,UAACI;AAAA,UAAA;AAAA,YACC,WAAWF,EAAKC,EAAO,6BAA6B,GAAG;AAAA,cACrD,CAACA,EAAO,mCAAmC,CAAC,GAAGjB;AAAA,YAAA,CAChD;AAAA,YACD,MAAK;AAAA,YACL,MAAM;AAAA,UAAA;AAAA,QAAA;AAAA,MACR;AAAA,IAAA;AAAA,EAAA,GAEJ;AAEJ,CAAC;"}
1
+ {"version":3,"file":"SelectButton.js","sources":["../../../../src/components/SelectListbox/components/SelectButton.tsx"],"sourcesContent":["import { clsx } from 'clsx';\nimport { useEffect, useRef, forwardRef } from 'react';\n\nimport type { KeyboardEvent } from 'react';\nimport type { OptionValue, SelectValue } from 'components/SelectListbox/SelectProvider';\n\nimport styles from 'components/SelectListbox/SelectListbox.module.css';\nimport { Icon } from 'components/Icon';\nimport { useSelect } from 'components/SelectListbox/SelectProvider';\n\nexport interface SelectButtonProps {\n variant?: 'noborder' | 'pill' | 'pillLeft' | 'pillRight' | 'darkBorder' | 'roundedLeft' | 'roundedRight';\n size?: 'small' | 'medium' | 'default';\n onChange?: (option: OptionValue) => void;\n buttonLabelProp?: string;\n buttonLabelBold?: boolean;\n disabled?: boolean;\n notValid?: boolean;\n}\n\nexport const SelectButton = forwardRef<HTMLButtonElement, SelectButtonProps>((props, ref) => {\n const {\n variant,\n size = 'default',\n onChange,\n buttonLabelProp = 'label',\n buttonLabelBold,\n disabled = false,\n notValid = false,\n } = props;\n const buttonWrapper = useRef<HTMLSpanElement>(null);\n const { listboxId, isOpen, selectedValue, toggleListbox, setIsOpen, setActiveIndex, options, isDirty } =\n useSelect() || {};\n\n const onTriggerKeyDown = (event: KeyboardEvent<HTMLButtonElement>) => {\n if (event.key.length === 1) {\n const key = event.key.toLocaleLowerCase();\n const optionIndexStartsWithKey = options.findIndex(\n (option) => !option.disabled && option.label.toLocaleLowerCase().startsWith(key)\n );\n if (optionIndexStartsWithKey !== -1) {\n setActiveIndex(optionIndexStartsWithKey);\n if (!isOpen) setIsOpen(true);\n event.preventDefault();\n return;\n }\n }\n\n switch (event.key) {\n case 'Enter':\n event.preventDefault();\n if (!isOpen) {\n setIsOpen(true);\n return;\n }\n break;\n case 'Escape':\n if (isOpen) {\n event.stopPropagation();\n setActiveIndex(options.findIndex((option) => option.value === selectedValue?.value));\n setIsOpen(false);\n }\n break;\n }\n };\n\n useEffect(() => {\n if (isOpen) {\n (buttonWrapper.current?.children[0] as HTMLButtonElement).blur();\n }\n }, [isOpen]);\n\n useEffect(() => {\n if (onChange) {\n onChange(selectedValue);\n }\n\n isDirty && (buttonWrapper.current?.children[0] as HTMLButtonElement).focus();\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [onChange, selectedValue]);\n\n return (\n <span ref={buttonWrapper}>\n <button\n className={clsx(styles['select-listbox-trigger'], styles[`select-listbox-trigger--${size}`], {\n [styles[`select-listbox-trigger--${variant}`]]: variant,\n [styles['select-listbox-trigger--bold']]: buttonLabelBold,\n [styles['select-listbox-trigger--not-valid']]: notValid,\n })}\n type=\"button\"\n onClick={toggleListbox}\n onKeyDown={onTriggerKeyDown}\n aria-expanded={isOpen}\n aria-haspopup=\"listbox\"\n aria-label={`${selectedValue.label}`}\n disabled={disabled}\n aria-controls={listboxId}\n {...(ref && { ref: ref })}\n >\n <span className={styles['select-listbox-trigger-label']}>\n {selectedValue[buttonLabelProp as keyof SelectValue]}\n </span>\n\n <Icon\n className={clsx(styles['select-listbox-trigger-icon'], {\n [styles['select-listbox-trigger-icon--open']]: isOpen,\n })}\n name=\"CheveronDown\"\n size={16}\n />\n </button>\n </span>\n );\n});\n"],"names":["SelectButton","forwardRef","props","ref","variant","size","onChange","buttonLabelProp","buttonLabelBold","disabled","notValid","buttonWrapper","useRef","listboxId","isOpen","selectedValue","toggleListbox","setIsOpen","setActiveIndex","options","isDirty","useSelect","onTriggerKeyDown","event","key","optionIndexStartsWithKey","option","useEffect","jsx","jsxs","clsx","styles","Icon"],"mappings":";;;;;;AAoBO,MAAMA,IAAeC,EAAiD,CAACC,GAAOC,MAAQ;AAC3F,QAAM;AAAA,IACJ,SAAAC;AAAA,IACA,MAAAC,IAAO;AAAA,IACP,UAAAC;AAAA,IACA,iBAAAC,IAAkB;AAAA,IAClB,iBAAAC;AAAA,IACA,UAAAC,IAAW;AAAA,IACX,UAAAC,IAAW;AAAA,EAAA,IACTR,GACES,IAAgBC,EAAwB,IAAI,GAC5C,EAAE,WAAAC,GAAW,QAAAC,GAAQ,eAAAC,GAAe,eAAAC,GAAe,WAAAC,GAAW,gBAAAC,GAAgB,SAAAC,GAAS,SAAAC,MAC3FC,EAAA,KAAe,CAAA,GAEXC,IAAmB,CAACC,MAA4C;AACpE,QAAIA,EAAM,IAAI,WAAW,GAAG;AAC1B,YAAMC,IAAMD,EAAM,IAAI,kBAAA,GAChBE,IAA2BN,EAAQ;AAAA,QACvC,CAACO,MAAW,CAACA,EAAO,YAAYA,EAAO,MAAM,oBAAoB,WAAWF,CAAG;AAAA,MAAA;AAEjF,UAAIC,MAA6B,IAAI;AACnC,QAAAP,EAAeO,CAAwB,GAClCX,KAAQG,EAAU,EAAI,GAC3BM,EAAM,eAAA;AACN;AAAA,MACF;AAAA,IACF;AAEA,YAAQA,EAAM,KAAA;AAAA,MACZ,KAAK;AAEH,YADAA,EAAM,eAAA,GACF,CAACT,GAAQ;AACX,UAAAG,EAAU,EAAI;AACd;AAAA,QACF;AACA;AAAA,MACF,KAAK;AACH,QAAIH,MACFS,EAAM,gBAAA,GACNL,EAAeC,EAAQ,UAAU,CAACO,MAAWA,EAAO,UAAUX,GAAe,KAAK,CAAC,GACnFE,EAAU,EAAK;AAEjB;AAAA,IAAA;AAAA,EAEN;AAEA,SAAAU,EAAU,MAAM;AACd,IAAIb,MACDH,EAAc,SAAS,SAAS,CAAC,GAAwB,KAAA;AAAA,EAE9D,GAAG,CAACG,CAAM,CAAC,GAEXa,EAAU,MAAM;AACd,IAAIrB,KACFA,EAASS,CAAa,GAGxBK,MAAYT,EAAc,SAAS,SAAS,CAAC,GAAwB,MAAA;AAAA,EAGvE,GAAG,CAACL,GAAUS,CAAa,CAAC,GAG1B,gBAAAa,EAAC,QAAA,EAAK,KAAKjB,GACT,UAAA,gBAAAkB;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC,EAAKC,EAAO,wBAAwB,GAAGA,EAAO,2BAA2B1B,CAAI,EAAE,GAAG;AAAA,QAC3F,CAAC0B,EAAO,2BAA2B3B,CAAO,EAAE,CAAC,GAAGA;AAAA,QAChD,CAAC2B,EAAO,8BAA8B,CAAC,GAAGvB;AAAA,QAC1C,CAACuB,EAAO,mCAAmC,CAAC,GAAGrB;AAAA,MAAA,CAChD;AAAA,MACD,MAAK;AAAA,MACL,SAASM;AAAA,MACT,WAAWM;AAAA,MACX,iBAAeR;AAAA,MACf,iBAAc;AAAA,MACd,cAAY,GAAGC,EAAc,KAAK;AAAA,MAClC,UAAAN;AAAA,MACA,iBAAeI;AAAA,MACd,GAAIV,KAAO,EAAE,KAAAA,EAAA;AAAA,MAEd,UAAA;AAAA,QAAA,gBAAAyB,EAAC,UAAK,WAAWG,EAAO,8BAA8B,GACnD,UAAAhB,EAAcR,CAAoC,GACrD;AAAA,QAEA,gBAAAqB;AAAA,UAACI;AAAA,UAAA;AAAA,YACC,WAAWF,EAAKC,EAAO,6BAA6B,GAAG;AAAA,cACrD,CAACA,EAAO,mCAAmC,CAAC,GAAGjB;AAAA,YAAA,CAChD;AAAA,YACD,MAAK;AAAA,YACL,MAAM;AAAA,UAAA;AAAA,QAAA;AAAA,MACR;AAAA,IAAA;AAAA,EAAA,GAEJ;AAEJ,CAAC;"}
@@ -1,7 +1,7 @@
1
1
  import { jsx as c } from "react/jsx-runtime";
2
2
  import { useRef as i, useCallback as u, useEffect as l } from "react";
3
3
  import { useSelect as m } from "../SelectProvider.js";
4
- import { s as f } from "../../../SelectListbox.module-CgZyIxwT.js";
4
+ import { s as f } from "../../../SelectListbox.module-CXqMuXRB.js";
5
5
  const E = ({ children: o }) => {
6
6
  const { isOpen: r, setIsOpen: n } = m(), t = i(null), e = u(
7
7
  ({ target: s }) => {
@@ -2,7 +2,7 @@ import { jsxs as v, Fragment as x, jsx as m } from "react/jsx-runtime";
2
2
  import { c as I } from "../../../clsx-OuTLNxxd.js";
3
3
  import { useRef as O, useEffect as k } from "react";
4
4
  import { useSelect as g } from "../SelectProvider.js";
5
- import { s as c } from "../../../SelectListbox.module-CgZyIxwT.js";
5
+ import { s as c } from "../../../SelectListbox.module-CXqMuXRB.js";
6
6
  const K = ({ option: a, index: s, dividerAfter: u, children: w }) => {
7
7
  const i = O(null), { isOpen: l, activeIndex: t, setActiveIndex: r, selectedValue: n, setSelectedValue: p, setIsOpen: f, options: o } = g(), y = (e) => {
8
8
  p(o[e]), f(!1);
@@ -1,6 +1,6 @@
1
1
  import { jsx as s } from "react/jsx-runtime";
2
2
  import { forwardRef as m, useRef as x } from "react";
3
- import { s as i } from "../../../SelectListbox.module-CgZyIxwT.js";
3
+ import { s as i } from "../../../SelectListbox.module-CXqMuXRB.js";
4
4
  import { useSelect as a } from "../SelectProvider.js";
5
5
  const h = m((l, e) => {
6
6
  const { style: t, children: o } = l, { listboxId: r, isOpen: c } = a(), n = x(null);
@@ -1,6 +1,6 @@
1
1
  import { jsx as e } from "react/jsx-runtime";
2
- import "../../index-JOHbZ4si.js";
3
- import { r as t, s } from "../../react.esm-Bg7Fh9lz.js";
2
+ import "../../index-DYPpFe2R.js";
3
+ import { r as t, s } from "../../react.esm-DdELhthz.js";
4
4
  import { StatusBadge as a } from "./StatusBage.js";
5
5
  describe("StatusBadge", () => {
6
6
  it("should render with message", () => {
@@ -1,6 +1,6 @@
1
1
  import { jsx as a } from "react/jsx-runtime";
2
- import "../../index-JOHbZ4si.js";
3
- import { r as o, s as t, f as r } from "../../react.esm-Bg7Fh9lz.js";
2
+ import "../../index-DYPpFe2R.js";
3
+ import { r as o, s as t, f as r } from "../../react.esm-DdELhthz.js";
4
4
  import { J as c } from "../../index-DvUwfXNb.js";
5
5
  import { TextArea as n } from "./TextArea.js";
6
6
  describe("TextArea", () => {
@@ -1,7 +1,7 @@
1
1
  import { jsx as t } from "react/jsx-runtime";
2
- import "../../index-JOHbZ4si.js";
3
- import { r as l, s as e, w as a } from "../../react.esm-Bg7Fh9lz.js";
4
- import { u as i } from "../../index-Bf2LCbD1.js";
2
+ import "../../index-DYPpFe2R.js";
3
+ import { r as l, s as e, w as a } from "../../react.esm-DdELhthz.js";
4
+ import { u as i } from "../../index-C_1Z-Fok.js";
5
5
  import { useState as s } from "react";
6
6
  import { VarIndicator as n } from "./VarIndicator.js";
7
7
  const o = {
@@ -32,6 +32,7 @@ export * from './Input';
32
32
  export * from './InputField';
33
33
  export * from './Label';
34
34
  export * from './MenuLink';
35
+ export * from './MetaDataBar';
35
36
  export * from './MetaDataList';
36
37
  export * from './ModalDialog';
37
38
  export * from './MultiSelect';
@@ -5,7 +5,7 @@ import { AppStatusBar as a } from "./AppStatusBar/AppStatusBar.js";
5
5
  import { Attention as n } from "./Attention/Attention.js";
6
6
  import { Backdrop as c } from "./Backdrop/Backdrop.js";
7
7
  import { ButtonGroup as u } from "./ButtonGroup/ButtonGroup.js";
8
- import { Button as B } from "./Buttons/Button.js";
8
+ import { Button as S } from "./Buttons/Button.js";
9
9
  import { LinkButton as b } from "./Buttons/LinkButton.js";
10
10
  import { MenuButton as k } from "./Buttons/MenuButton.js";
11
11
  import { Card as I } from "./Card/Card.js";
@@ -13,7 +13,7 @@ import { Checkbox as g } from "./Checkbox/Checkbox.js";
13
13
  import { CheckboxButtonBar as P } from "./CheckboxButtonBar/CheckboxButtonBar.js";
14
14
  import { CheckboxTree as h } from "./CheckboxTree/CheckboxTree.js";
15
15
  import { Chip as A } from "./Chip/Chip.js";
16
- import { ControlsButton as D } from "./ControlsButton/ControlsButton.js";
16
+ import { ControlsButton as T } from "./ControlsButton/ControlsButton.js";
17
17
  import { CopyableText as w } from "./CopyableText/CopyableText.js";
18
18
  import { Drawer as G } from "./Drawer/Drawer.js";
19
19
  import { EmptyStateDataDisplay as H } from "./EmptyStateDataDisplay/EmptyStateDataDisplay.js";
@@ -31,39 +31,40 @@ import { IconButton as fo } from "./IconButton/IconButton.js";
31
31
  import { InfoBanner as ao } from "./InfoBanner/InfoBanner.js";
32
32
  import { InfoMessage as no } from "./InfoMessage/InfoMessage.js";
33
33
  import { Input as co } from "./Input/Input.js";
34
- import { InputField as So } from "./InputField/InputField.js";
34
+ import { InputField as Bo } from "./InputField/InputField.js";
35
35
  import { Label as so } from "./Label/Label.js";
36
36
  import { MenuLink as Co } from "./MenuLink/MenuLink.js";
37
- import { MetaDataList as Fo } from "./MetaDataList/MetaDataList.js";
38
- import { ModalDialog as Mo } from "./ModalDialog/ModalDialog.js";
39
- import { M as Lo } from "../TablePlugin-CeZO4BR1.js";
40
- import { MultiSelectBox as Ro } from "./MultiSelectBox/MultiSelectBox.js";
41
- import { Notification as yo } from "./Notification/Notification.js";
42
- import { OverlayCloseButton as To } from "./OverlayCloseButton/OverlayCloseButton.js";
43
- import { OverlayStepBar as vo } from "./OverlayStepBar/OverlayStepBar.js";
44
- import { PageOverlay as Eo } from "./PageOverlay/PageOverlay.js";
45
- import { Periods as Oo } from "./Periods/Periods.js";
46
- import { PeriodSelector as No } from "./PeriodSelector/PeriodSelector.js";
47
- import { ProgrammeCard as Vo } from "./ProgrammeCard/ProgrammeCard.js";
48
- import { RadioButton as jo } from "./RadioButton/RadioButton.js";
49
- import { RadioGroup as Jo } from "./RadioGroup/RadioGroup.js";
50
- import { RadioTabSelector as Qo } from "./RadioTabSelector/RadioTabSelector.js";
51
- import { Repeater as Xo } from "./Repeater/Repeater.js";
52
- import { Rte as Zo, RteEditor as _o } from "./RteEditor/RteEditor.js";
53
- import { SearchField as or } from "./SearchField/SearchField.js";
54
- import { SectionNotification as er } from "./SectionNotification/SectionNotification.js";
55
- import { SelectListbox as pr } from "./SelectListbox/SelectListbox.js";
56
- import { SelectProvider as fr, useSelect as mr } from "./SelectListbox/SelectProvider.js";
57
- import { Slider as ir } from "./Slider/Slider.js";
58
- import { Sortable as lr } from "./Sortable/Sortable.js";
59
- import { Spinner as dr } from "./Spinner/Spinner.js";
60
- import { StatusBadge as Sr } from "./StatusBadge/StatusBage.js";
61
- import { StatusPill as sr } from "./StatusPill/StatusPill.js";
62
- import { TextArea as Cr } from "./TextArea/TextArea.js";
63
- import { ToggleSwitch as Fr } from "./ToggleSwitch/ToggleSwitch.js";
64
- import { Tooltip as Mr } from "./Tooltip/Tooltip.js";
65
- import { VarIndicator as Lr } from "./VarIndicator/VarIndicator.js";
66
- import { WeekSelector as Rr } from "./WeekSelector/WeekSelector.js";
37
+ import { MetaDataBar as Fo } from "./MetaDataBar/MetaDataBar.js";
38
+ import { MetaDataList as Mo } from "./MetaDataList/MetaDataList.js";
39
+ import { ModalDialog as Lo } from "./ModalDialog/ModalDialog.js";
40
+ import { M as Ro } from "../TablePlugin-BLbsvcuu.js";
41
+ import { MultiSelectBox as yo } from "./MultiSelectBox/MultiSelectBox.js";
42
+ import { Notification as Do } from "./Notification/Notification.js";
43
+ import { OverlayCloseButton as vo } from "./OverlayCloseButton/OverlayCloseButton.js";
44
+ import { OverlayStepBar as Eo } from "./OverlayStepBar/OverlayStepBar.js";
45
+ import { PageOverlay as Oo } from "./PageOverlay/PageOverlay.js";
46
+ import { Periods as No } from "./Periods/Periods.js";
47
+ import { PeriodSelector as Vo } from "./PeriodSelector/PeriodSelector.js";
48
+ import { ProgrammeCard as jo } from "./ProgrammeCard/ProgrammeCard.js";
49
+ import { RadioButton as Jo } from "./RadioButton/RadioButton.js";
50
+ import { RadioGroup as Qo } from "./RadioGroup/RadioGroup.js";
51
+ import { RadioTabSelector as Xo } from "./RadioTabSelector/RadioTabSelector.js";
52
+ import { Repeater as Zo } from "./Repeater/Repeater.js";
53
+ import { Rte as $o, RteEditor as or } from "./RteEditor/RteEditor.js";
54
+ import { SearchField as er } from "./SearchField/SearchField.js";
55
+ import { SectionNotification as pr } from "./SectionNotification/SectionNotification.js";
56
+ import { SelectListbox as fr } from "./SelectListbox/SelectListbox.js";
57
+ import { SelectProvider as ar, useSelect as ir } from "./SelectListbox/SelectProvider.js";
58
+ import { Slider as lr } from "./Slider/Slider.js";
59
+ import { Sortable as dr } from "./Sortable/Sortable.js";
60
+ import { Spinner as Br } from "./Spinner/Spinner.js";
61
+ import { StatusBadge as sr } from "./StatusBadge/StatusBage.js";
62
+ import { StatusPill as Cr } from "./StatusPill/StatusPill.js";
63
+ import { TextArea as Fr } from "./TextArea/TextArea.js";
64
+ import { ToggleSwitch as Mr } from "./ToggleSwitch/ToggleSwitch.js";
65
+ import { Tooltip as Lr } from "./Tooltip/Tooltip.js";
66
+ import { VarIndicator as Rr } from "./VarIndicator/VarIndicator.js";
67
+ import { WeekSelector as yr } from "./WeekSelector/WeekSelector.js";
67
68
  export {
68
69
  e as Accordion,
69
70
  p as AccordionCard,
@@ -71,14 +72,14 @@ export {
71
72
  a as AppStatusBar,
72
73
  n as Attention,
73
74
  c as Backdrop,
74
- B as Button,
75
+ S as Button,
75
76
  u as ButtonGroup,
76
77
  I as Card,
77
78
  g as Checkbox,
78
79
  P as CheckboxButtonBar,
79
80
  h as CheckboxTree,
80
81
  A as Chip,
81
- D as ControlsButton,
82
+ T as ControlsButton,
82
83
  w as CopyableText,
83
84
  G as Drawer,
84
85
  H as EmptyStateDataDisplay,
@@ -96,42 +97,43 @@ export {
96
97
  ao as InfoBanner,
97
98
  no as InfoMessage,
98
99
  co as Input,
99
- So as InputField,
100
+ Bo as InputField,
100
101
  so as Label,
101
102
  b as LinkButton,
102
103
  k as MenuButton,
103
104
  Co as MenuLink,
104
- Fo as MetaDataList,
105
- Mo as ModalDialog,
106
- Lo as MultiSelect,
107
- Ro as MultiSelectBox,
108
- yo as Notification,
109
- To as OverlayCloseButton,
110
- vo as OverlayStepBar,
111
- Eo as PageOverlay,
112
- No as PeriodSelector,
113
- Oo as Periods,
114
- Vo as ProgrammeCard,
115
- jo as RadioButton,
116
- Jo as RadioGroup,
117
- Qo as RadioTabSelector,
118
- Xo as Repeater,
119
- Zo as Rte,
120
- _o as RteEditor,
121
- or as SearchField,
122
- er as SectionNotification,
123
- pr as SelectListbox,
124
- fr as SelectProvider,
125
- ir as Slider,
126
- lr as Sortable,
127
- dr as Spinner,
128
- Sr as StatusBadge,
129
- sr as StatusPill,
130
- Cr as TextArea,
131
- Fr as ToggleSwitch,
132
- Mr as Tooltip,
133
- Lr as VarIndicator,
134
- Rr as WeekSelector,
135
- mr as useSelect
105
+ Fo as MetaDataBar,
106
+ Mo as MetaDataList,
107
+ Lo as ModalDialog,
108
+ Ro as MultiSelect,
109
+ yo as MultiSelectBox,
110
+ Do as Notification,
111
+ vo as OverlayCloseButton,
112
+ Eo as OverlayStepBar,
113
+ Oo as PageOverlay,
114
+ Vo as PeriodSelector,
115
+ No as Periods,
116
+ jo as ProgrammeCard,
117
+ Jo as RadioButton,
118
+ Qo as RadioGroup,
119
+ Xo as RadioTabSelector,
120
+ Zo as Repeater,
121
+ $o as Rte,
122
+ or as RteEditor,
123
+ er as SearchField,
124
+ pr as SectionNotification,
125
+ fr as SelectListbox,
126
+ ar as SelectProvider,
127
+ lr as Slider,
128
+ dr as Sortable,
129
+ Br as Spinner,
130
+ sr as StatusBadge,
131
+ Cr as StatusPill,
132
+ Fr as TextArea,
133
+ Mr as ToggleSwitch,
134
+ Lr as Tooltip,
135
+ Rr as VarIndicator,
136
+ yr as WeekSelector,
137
+ ir as useSelect
136
138
  };
137
139
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,4 +1,4 @@
1
- import { g as H } from "./react.esm-Bg7Fh9lz.js";
1
+ import { g as H } from "./react.esm-DdELhthz.js";
2
2
  function a(e, t, n) {
3
3
  return e.namespaceURI && e.namespaceURI !== "http://www.w3.org/1999/xhtml" || (t = Array.isArray(t) ? t : [
4
4
  t
@@ -3096,4 +3096,4 @@ const gr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
3096
3096
  export {
3097
3097
  Lr as u
3098
3098
  };
3099
- //# sourceMappingURL=index-Bf2LCbD1.js.map
3099
+ //# sourceMappingURL=index-C_1Z-Fok.js.map