@uva-glass/component-library 1.48.1 → 1.50.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 (180) hide show
  1. package/dist/MultiSelect-Ckf3uGw5.js.map +1 -1
  2. package/dist/assets/CheckboxButton.css +1 -0
  3. package/dist/assets/CheckboxButtonBar.css +1 -0
  4. package/dist/assets/CheckboxTree.css +1 -1
  5. package/dist/assets/Label.css +1 -1
  6. package/dist/assets/PeriodSelector.css +1 -0
  7. package/dist/components/Button/Button.d.ts +4 -0
  8. package/dist/components/Button/Button.js.map +1 -1
  9. package/dist/components/Button/Button.stories.js +14 -13
  10. package/dist/components/Button/Button.stories.js.map +1 -1
  11. package/dist/components/ButtonGroup/ButtonGroup.d.ts +3 -0
  12. package/dist/components/ButtonGroup/ButtonGroup.js.map +1 -1
  13. package/dist/components/ButtonGroup/ButtonGroup.stories.js +1 -0
  14. package/dist/components/ButtonGroup/ButtonGroup.stories.js.map +1 -1
  15. package/dist/components/Card/Card.d.ts +6 -0
  16. package/dist/components/Card/Card.js.map +1 -1
  17. package/dist/components/Card/Card.stories.js +14 -13
  18. package/dist/components/Card/Card.stories.js.map +1 -1
  19. package/dist/components/Checkbox/Checkbox.d.ts +1 -0
  20. package/dist/components/Checkbox/Checkbox.js.map +1 -1
  21. package/dist/components/Checkbox/Checkbox.stories.js +17 -16
  22. package/dist/components/Checkbox/Checkbox.stories.js.map +1 -1
  23. package/dist/components/CheckboxButton/CheckboxButton.d.ts +16 -0
  24. package/dist/components/CheckboxButton/CheckboxButton.js +51 -0
  25. package/dist/components/CheckboxButton/CheckboxButton.js.map +1 -0
  26. package/dist/components/CheckboxButton/CheckboxButton.stories.d.ts +5 -0
  27. package/dist/components/CheckboxButton/CheckboxButton.stories.js +48 -0
  28. package/dist/components/CheckboxButton/CheckboxButton.stories.js.map +1 -0
  29. package/dist/components/CheckboxButton/index.d.ts +1 -0
  30. package/dist/components/CheckboxButton/index.js +5 -0
  31. package/dist/components/CheckboxButton/index.js.map +1 -0
  32. package/dist/components/CheckboxButtonBar/CheckboxButtonBar.d.ts +22 -0
  33. package/dist/components/CheckboxButtonBar/CheckboxButtonBar.js +62 -0
  34. package/dist/components/CheckboxButtonBar/CheckboxButtonBar.js.map +1 -0
  35. package/dist/components/CheckboxButtonBar/CheckboxButtonBar.stories.d.ts +5 -0
  36. package/dist/components/CheckboxButtonBar/CheckboxButtonBar.stories.js +70 -0
  37. package/dist/components/CheckboxButtonBar/CheckboxButtonBar.stories.js.map +1 -0
  38. package/dist/components/CheckboxButtonBar/index.d.ts +1 -0
  39. package/dist/components/CheckboxButtonBar/index.js +5 -0
  40. package/dist/components/CheckboxButtonBar/index.js.map +1 -0
  41. package/dist/components/CheckboxTree/CheckboxTree.d.ts +5 -3
  42. package/dist/components/CheckboxTree/CheckboxTree.js +42 -42
  43. package/dist/components/CheckboxTree/CheckboxTree.js.map +1 -1
  44. package/dist/components/CheckboxTree/CheckboxTree.stories.js +1 -1
  45. package/dist/components/CheckboxTree/CheckboxTree.stories.js.map +1 -1
  46. package/dist/components/Drawer/Drawer.d.ts +6 -0
  47. package/dist/components/Drawer/Drawer.js.map +1 -1
  48. package/dist/components/Drawer/Drawer.stories.js +16 -15
  49. package/dist/components/Drawer/Drawer.stories.js.map +1 -1
  50. package/dist/components/EmptyStateDataDisplay/EmptyStateDataDisplay.d.ts +3 -0
  51. package/dist/components/EmptyStateDataDisplay/EmptyStateDataDisplay.js.map +1 -1
  52. package/dist/components/EmptyStateDataDisplay/EmptyStateDataDisplay.stories.js +3 -2
  53. package/dist/components/EmptyStateDataDisplay/EmptyStateDataDisplay.stories.js.map +1 -1
  54. package/dist/components/FeedbackBox/FeedbackBox.d.ts +4 -0
  55. package/dist/components/FeedbackBox/FeedbackBox.js.map +1 -1
  56. package/dist/components/FeedbackBox/FeedbackBox.stories.js +10 -9
  57. package/dist/components/FeedbackBox/FeedbackBox.stories.js.map +1 -1
  58. package/dist/components/FieldHint/FieldHint.d.ts +4 -0
  59. package/dist/components/FieldHint/FieldHint.js.map +1 -1
  60. package/dist/components/FieldHint/FieldHint.stories.js +1 -0
  61. package/dist/components/FieldHint/FieldHint.stories.js.map +1 -1
  62. package/dist/components/Fieldset/Fieldset.d.ts +5 -0
  63. package/dist/components/Fieldset/Fieldset.js.map +1 -1
  64. package/dist/components/Fieldset/Fieldset.stories.js +20 -19
  65. package/dist/components/Fieldset/Fieldset.stories.js.map +1 -1
  66. package/dist/components/FormField/FormField.d.ts +3 -0
  67. package/dist/components/FormField/FormField.js.map +1 -1
  68. package/dist/components/FormField/FormField.stories.js +16 -15
  69. package/dist/components/FormField/FormField.stories.js.map +1 -1
  70. package/dist/components/GridRow/GridRow.d.ts +4 -0
  71. package/dist/components/GridRow/GridRow.js +4 -4
  72. package/dist/components/GridRow/GridRow.js.map +1 -1
  73. package/dist/components/GridRow/GridRow.stories.js +1 -0
  74. package/dist/components/GridRow/GridRow.stories.js.map +1 -1
  75. package/dist/components/HorizontalList/HorizontalList.d.ts +3 -0
  76. package/dist/components/HorizontalList/HorizontalList.js.map +1 -1
  77. package/dist/components/HorizontalList/HorizontalList.stories.js +7 -6
  78. package/dist/components/HorizontalList/HorizontalList.stories.js.map +1 -1
  79. package/dist/components/Icon/Icon.d.ts +4 -0
  80. package/dist/components/Icon/Icon.js.map +1 -1
  81. package/dist/components/Icon/Icon.stories.js +1 -0
  82. package/dist/components/Icon/Icon.stories.js.map +1 -1
  83. package/dist/components/IconButton/IconButton.d.ts +5 -0
  84. package/dist/components/IconButton/IconButton.js.map +1 -1
  85. package/dist/components/IconButton/IconButton.stories.js +8 -7
  86. package/dist/components/IconButton/IconButton.stories.js.map +1 -1
  87. package/dist/components/InfoMessage/InfoMessage.d.ts +3 -0
  88. package/dist/components/InfoMessage/InfoMessage.js.map +1 -1
  89. package/dist/components/InfoMessage/InfoMessage.stories.js +4 -3
  90. package/dist/components/InfoMessage/InfoMessage.stories.js.map +1 -1
  91. package/dist/components/Input/Input.d.ts +6 -0
  92. package/dist/components/Input/Input.js.map +1 -1
  93. package/dist/components/Input/Input.stories.js +11 -10
  94. package/dist/components/Input/Input.stories.js.map +1 -1
  95. package/dist/components/InputField/InputField.d.ts +6 -0
  96. package/dist/components/InputField/InputField.js.map +1 -1
  97. package/dist/components/InputField/InputField.stories.js +16 -15
  98. package/dist/components/InputField/InputField.stories.js.map +1 -1
  99. package/dist/components/Label/Label.d.ts +6 -1
  100. package/dist/components/Label/Label.js +12 -10
  101. package/dist/components/Label/Label.js.map +1 -1
  102. package/dist/components/Label/Label.stories.js +1 -0
  103. package/dist/components/Label/Label.stories.js.map +1 -1
  104. package/dist/components/MenuButton/MenuButton.d.ts +4 -0
  105. package/dist/components/MenuButton/MenuButton.js +1 -1
  106. package/dist/components/MenuButton/MenuButton.js.map +1 -1
  107. package/dist/components/MenuButton/MenuButton.stories.js +19 -18
  108. package/dist/components/MenuButton/MenuButton.stories.js.map +1 -1
  109. package/dist/components/MenuLink/MenuLink.d.ts +1 -0
  110. package/dist/components/MenuLink/MenuLink.js.map +1 -1
  111. package/dist/components/MenuLink/MenuLink.stories.js +5 -4
  112. package/dist/components/MenuLink/MenuLink.stories.js.map +1 -1
  113. package/dist/components/MetaDataList/MetaDataList.d.ts +2 -0
  114. package/dist/components/MetaDataList/MetaDataList.js.map +1 -1
  115. package/dist/components/MetaDataList/MetaDataList.stories.js +5 -4
  116. package/dist/components/MetaDataList/MetaDataList.stories.js.map +1 -1
  117. package/dist/components/ModalDialog/ModalDialog.d.ts +20 -1
  118. package/dist/components/ModalDialog/ModalDialog.js.map +1 -1
  119. package/dist/components/ModalDialog/ModalDialog.stories.js +9 -8
  120. package/dist/components/ModalDialog/ModalDialog.stories.js.map +1 -1
  121. package/dist/components/MultiSelect/MultiSelect.d.ts +4 -0
  122. package/dist/components/MultiSelect/MultiSelect.stories.js +23 -22
  123. package/dist/components/MultiSelect/MultiSelect.stories.js.map +1 -1
  124. package/dist/components/OverlayCloseButton/OverlayCloseButton.d.ts +3 -0
  125. package/dist/components/OverlayCloseButton/OverlayCloseButton.js.map +1 -1
  126. package/dist/components/OverlayCloseButton/OverlayCloseButton.stories.js +11 -10
  127. package/dist/components/OverlayCloseButton/OverlayCloseButton.stories.js.map +1 -1
  128. package/dist/components/PeriodSelector/PeriodSelector.d.ts +16 -0
  129. package/dist/components/PeriodSelector/PeriodSelector.js +74 -0
  130. package/dist/components/PeriodSelector/PeriodSelector.js.map +1 -0
  131. package/dist/components/PeriodSelector/PeriodSelector.stories.d.ts +5 -0
  132. package/dist/components/PeriodSelector/PeriodSelector.stories.js +25 -0
  133. package/dist/components/PeriodSelector/PeriodSelector.stories.js.map +1 -0
  134. package/dist/components/PeriodSelector/index.d.ts +1 -0
  135. package/dist/components/PeriodSelector/index.js +5 -0
  136. package/dist/components/PeriodSelector/index.js.map +1 -0
  137. package/dist/components/Periods/Periods.d.ts +4 -0
  138. package/dist/components/Periods/Periods.js.map +1 -1
  139. package/dist/components/Periods/Periods.stories.js +1 -0
  140. package/dist/components/Periods/Periods.stories.js.map +1 -1
  141. package/dist/components/ProgrammeCard/ProgrammeCard.d.ts +4 -0
  142. package/dist/components/ProgrammeCard/ProgrammeCard.js.map +1 -1
  143. package/dist/components/ProgrammeCard/ProgrammeCard.stories.js +19 -18
  144. package/dist/components/ProgrammeCard/ProgrammeCard.stories.js.map +1 -1
  145. package/dist/components/RadioButton/RadioButton.d.ts +5 -0
  146. package/dist/components/RadioButton/RadioButton.js.map +1 -1
  147. package/dist/components/RadioButton/RadioButton.stories.js +9 -8
  148. package/dist/components/RadioButton/RadioButton.stories.js.map +1 -1
  149. package/dist/components/Repeater/Repeater.d.ts +3 -0
  150. package/dist/components/Repeater/Repeater.js.map +1 -1
  151. package/dist/components/Repeater/Repeater.stories.js +6 -5
  152. package/dist/components/Repeater/Repeater.stories.js.map +1 -1
  153. package/dist/components/SectionNotification/SectionNotification.d.ts +2 -0
  154. package/dist/components/SectionNotification/SectionNotification.js.map +1 -1
  155. package/dist/components/SectionNotification/SectionNotification.stories.js +1 -0
  156. package/dist/components/SectionNotification/SectionNotification.stories.js.map +1 -1
  157. package/dist/components/SelectListbox/SelectListBox.stories.d.ts +2 -2
  158. package/dist/components/SelectListbox/SelectListBox.stories.js +1 -0
  159. package/dist/components/SelectListbox/SelectListBox.stories.js.map +1 -1
  160. package/dist/components/SelectListbox/SelectListbox.d.ts +12 -0
  161. package/dist/components/SelectListbox/SelectListbox.js +9 -9
  162. package/dist/components/SelectListbox/SelectListbox.js.map +1 -1
  163. package/dist/components/Spinner/Spinner.d.ts +3 -1
  164. package/dist/components/Spinner/Spinner.js.map +1 -1
  165. package/dist/components/Spinner/Spinner.stories.js +4 -3
  166. package/dist/components/Spinner/Spinner.stories.js.map +1 -1
  167. package/dist/components/StatusPill/StatusPill.d.ts +4 -0
  168. package/dist/components/StatusPill/StatusPill.js.map +1 -1
  169. package/dist/components/StatusPill/StatusPill.stories.js +7 -6
  170. package/dist/components/StatusPill/StatusPill.stories.js.map +1 -1
  171. package/dist/components/Tooltip/Tooltip.d.ts +6 -0
  172. package/dist/components/Tooltip/Tooltip.js.map +1 -1
  173. package/dist/components/Tooltip/Tooltip.stories.js +10 -9
  174. package/dist/components/Tooltip/Tooltip.stories.js.map +1 -1
  175. package/dist/components/index.d.ts +3 -0
  176. package/dist/components/index.js +73 -67
  177. package/dist/components/index.js.map +1 -1
  178. package/dist/index.js +73 -67
  179. package/dist/index.js.map +1 -1
  180. package/package.json +17 -17
@@ -0,0 +1,25 @@
1
+ import { jsx as r } from "react/jsx-runtime";
2
+ import { fn as t } from "../../index-MQ0yPLdl.js";
3
+ import { PeriodSelector as e } from "./PeriodSelector.js";
4
+ const i = "<PeriodSelector maxPeriods={} defaultValues={} label={} labelPosition={} required={} onChange={} />", m = {
5
+ title: "Organisms/PeriodSelector",
6
+ component: e,
7
+ parameters: {
8
+ inspectComponent: e,
9
+ codeString: i
10
+ }
11
+ }, a = (o) => /* @__PURE__ */ r(e, { ...o }), l = a.bind({});
12
+ l.args = {
13
+ maxPeriods: 7,
14
+ // eslint-disable-next-line @typescript-eslint/no-magic-numbers
15
+ defaultValues: [1, 5, 6],
16
+ label: "Periode",
17
+ labelPosition: "top",
18
+ required: !0,
19
+ onChange: t()
20
+ };
21
+ export {
22
+ l as PeriodSelectorExample,
23
+ m as default
24
+ };
25
+ //# sourceMappingURL=PeriodSelector.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PeriodSelector.stories.js","sources":["../../../src/components/PeriodSelector/PeriodSelector.stories.tsx"],"sourcesContent":["import { fn } from '@storybook/test';\n\nimport type { Meta, StoryFn } from '@storybook/react';\nimport type { PeriodSelectorProps } from './PeriodSelector';\n\nimport { PeriodSelector } from './PeriodSelector';\n\nconst codeString =\n '<PeriodSelector maxPeriods={} defaultValues={} label={} labelPosition={} required={} onChange={} />';\n\n// eslint-disable-next-line import/no-default-export\nexport default {\n title: 'Organisms/PeriodSelector',\n component: PeriodSelector,\n parameters: {\n inspectComponent: PeriodSelector,\n codeString: codeString,\n },\n} as Meta<PeriodSelectorProps>;\n\nconst Template: StoryFn<PeriodSelectorProps> = (args) => <PeriodSelector {...args} />;\n\nexport const PeriodSelectorExample = Template.bind({});\n\nPeriodSelectorExample.args = {\n maxPeriods: 7,\n // eslint-disable-next-line @typescript-eslint/no-magic-numbers\n defaultValues: [1, 5, 6],\n label: 'Periode',\n labelPosition: 'top',\n required: true,\n onChange: fn(),\n};\n"],"names":["codeString","PeriodSelector_stories","PeriodSelector","Template","args","jsx","PeriodSelectorExample","fn"],"mappings":";;;AAOA,MAAMA,IACJ,uGAGaC,IAAA;AAAA,EACb,OAAO;AAAA,EACP,WAAWC;AAAA,EACX,YAAY;AAAA,IACV,kBAAkBA;AAAA,IAClB,YAAAF;AAAA,EACF;AACF,GAEMG,IAAyC,CAACC,MAAU,gBAAAC,EAAAH,GAAA,EAAgB,GAAGE,EAAM,CAAA,GAEtEE,IAAwBH,EAAS,KAAK,EAAE;AAErDG,EAAsB,OAAO;AAAA,EAC3B,YAAY;AAAA;AAAA,EAEZ,eAAe,CAAC,GAAG,GAAG,CAAC;AAAA,EACvB,OAAO;AAAA,EACP,eAAe;AAAA,EACf,UAAU;AAAA,EACV,UAAUC,EAAG;AACf;"}
@@ -0,0 +1 @@
1
+ export * from './PeriodSelector';
@@ -0,0 +1,5 @@
1
+ import { PeriodSelector as r } from "./PeriodSelector.js";
2
+ export {
3
+ r as PeriodSelector
4
+ };
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -5,9 +5,13 @@ interface Period {
5
5
  periodInSemester: number;
6
6
  }
7
7
  export interface PeriodsProps {
8
+ /** Indicates which periods are selected. */
8
9
  periods: Period[] | number[];
10
+ /** Indicates the maximum number of periods to show in the selector. */
9
11
  maxPeriods?: 6 | 7;
12
+ /** A mapping for the tooltips of each period indicator. */
10
13
  titlePeriods?: Record<string, Record<string, string>>;
11
14
  }
15
+ /** Represents a component for a period indicator. */
12
16
  export declare const Periods: ({ periods, titlePeriods, maxPeriods }: PeriodsProps) => import("react/jsx-runtime").JSX.Element;
13
17
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"Periods.js","sources":["../../../src/components/Periods/Periods.tsx"],"sourcesContent":["import clsx from 'clsx';\nimport { useId } from 'react';\n\nimport styles from './Periods.module.css';\n\ninterface Period {\n id: string;\n number: number;\n semesterNumber: number;\n periodInSemester: number;\n}\n\nexport interface PeriodsProps {\n periods: Period[] | number[];\n // eslint-disable-next-line @typescript-eslint/no-magic-numbers\n maxPeriods?: 6 | 7;\n titlePeriods?: Record<string, Record<string, string>>;\n}\n\nconst MAX_PERIODS = 6;\n\nexport const Periods = ({ periods, titlePeriods, maxPeriods = MAX_PERIODS }: PeriodsProps) => {\n const maxPeriodsList = Array.from({ length: maxPeriods }, (_, index) => index + 1);\n const idPrefix = useId();\n\n const isArrayOfNumbers = periods.some((value) => {\n return typeof value === 'number';\n });\n\n const getTitles = (titlePeriods: Record<string, Record<string, string>>): string => {\n let currrentSemesterNumber = 0;\n\n const title = periods.reduce((acc, period, index) => {\n const { semesterNumber, periodInSemester } = period as Period;\n let periodTitle = '';\n if (semesterNumber !== currrentSemesterNumber) {\n periodTitle = ` ${titlePeriods.periods['period-title'].replace('{{ semester }}', semesterNumber.toString())} ${periodInSemester}`;\n } else if (periods[index + 1] && (periods[index + 1] as Period).semesterNumber === currrentSemesterNumber) {\n periodTitle = `, ${periodInSemester}`;\n } else {\n periodTitle = ` ${titlePeriods.periods['last-separator']} ${periodInSemester}`;\n }\n\n currrentSemesterNumber = semesterNumber;\n return `${acc}${periodTitle}`;\n }, '');\n\n return title.trim();\n };\n\n const isPeriodActive = (periodIndex: number): boolean => {\n if (isArrayOfNumbers) {\n return (periods as number[]).includes(periodIndex);\n } else {\n return periods.find((period) => (period as Period).number === periodIndex) ? true : false;\n }\n };\n\n return (\n <div\n className={styles['period__container']}\n title={isArrayOfNumbers ? '' : getTitles(titlePeriods as Record<string, Record<string, string>>)}\n >\n {maxPeriodsList.map((periodIndex) => {\n return (\n <span\n className={clsx(styles['period__item'], isPeriodActive(periodIndex) ? styles['period__item--active'] : '')}\n key={`${idPrefix}-${periodIndex}`}\n />\n );\n })}\n </div>\n );\n};\n"],"names":["MAX_PERIODS","Periods","periods","titlePeriods","maxPeriods","maxPeriodsList","_","index","idPrefix","useId","isArrayOfNumbers","value","getTitles","currrentSemesterNumber","acc","period","semesterNumber","periodInSemester","periodTitle","isPeriodActive","periodIndex","jsx","styles","clsx"],"mappings":";;;;;;;GAmBMA,IAAc,GAEPC,IAAU,CAAC,EAAE,SAAAC,GAAS,cAAAC,GAAc,YAAAC,IAAaJ,QAAgC;AACtF,QAAAK,IAAiB,MAAM,KAAK,EAAE,QAAQD,KAAc,CAACE,GAAGC,MAAUA,IAAQ,CAAC,GAC3EC,IAAWC,KAEXC,IAAmBR,EAAQ,KAAK,CAACS,MAC9B,OAAOA,KAAU,QACzB,GAEKC,IAAY,CAACT,MAAiE;AAClF,QAAIU,IAAyB;AAiB7B,WAfcX,EAAQ,OAAO,CAACY,GAAKC,GAAQR,MAAU;AAC7C,YAAA,EAAE,gBAAAS,GAAgB,kBAAAC,EAAqB,IAAAF;AAC7C,UAAIG,IAAc;AAClB,aAAIF,MAAmBH,IACrBK,IAAc,IAAIf,EAAa,QAAQ,cAAc,EAAE,QAAQ,kBAAkBa,EAAe,SAAU,CAAA,CAAC,IAAIC,CAAgB,KACtHf,EAAQK,IAAQ,CAAC,KAAML,EAAQK,IAAQ,CAAC,EAAa,mBAAmBM,IACjFK,IAAc,KAAKD,CAAgB,KAEnCC,IAAc,IAAIf,EAAa,QAAQ,gBAAgB,CAAC,IAAIc,CAAgB,IAGrDJ,IAAAG,GAClB,GAAGF,CAAG,GAAGI,CAAW;AAAA,OAC1B,EAAE,EAEQ;EAAK,GAGdC,IAAiB,CAACC,MAClBV,IACMR,EAAqB,SAASkB,CAAW,IAE1C,EAAAlB,EAAQ,KAAK,CAACa,MAAYA,EAAkB,WAAWK,CAAW;AAK3E,SAAA,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC,EAAO;AAAA,MAClB,OAAOZ,IAAmB,KAAKE,EAAUT,CAAsD;AAAA,MAE9F,UAAAE,EAAe,IAAI,CAACe,MAEjB,gBAAAC;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,WAAWE,EAAKD,EAAO,cAAiBH,EAAeC,CAAW,IAAIE,EAAO,sBAAsB,IAAI,EAAE;AAAA,QAAA;AAAA,QACpG,GAAGd,CAAQ,IAAIY,CAAW;AAAA,MAAA,CAGpC;AAAA,IAAA;AAAA,EAAA;AAGP;"}
1
+ {"version":3,"file":"Periods.js","sources":["../../../src/components/Periods/Periods.tsx"],"sourcesContent":["import clsx from 'clsx';\nimport { useId } from 'react';\n\nimport styles from './Periods.module.css';\n\ninterface Period {\n id: string;\n number: number;\n semesterNumber: number;\n periodInSemester: number;\n}\n\nexport interface PeriodsProps {\n /** Indicates which periods are selected. */\n periods: Period[] | number[];\n /** Indicates the maximum number of periods to show in the selector. */\n // eslint-disable-next-line @typescript-eslint/no-magic-numbers\n maxPeriods?: 6 | 7;\n /** A mapping for the tooltips of each period indicator. */\n titlePeriods?: Record<string, Record<string, string>>;\n}\n\nconst MAX_PERIODS = 6;\n\n/** Represents a component for a period indicator. */\nexport const Periods = ({ periods, titlePeriods, maxPeriods = MAX_PERIODS }: PeriodsProps) => {\n const maxPeriodsList = Array.from({ length: maxPeriods }, (_, index) => index + 1);\n const idPrefix = useId();\n\n const isArrayOfNumbers = periods.some((value) => {\n return typeof value === 'number';\n });\n\n const getTitles = (titlePeriods: Record<string, Record<string, string>>): string => {\n let currentSemesterNumber = 0;\n\n const title = periods.reduce((acc, period, index) => {\n const { semesterNumber, periodInSemester } = period as Period;\n let periodTitle = '';\n if (semesterNumber !== currentSemesterNumber) {\n periodTitle = ` ${titlePeriods.periods['period-title'].replace('{{ semester }}', semesterNumber.toString())} ${periodInSemester}`;\n } else if (periods[index + 1] && (periods[index + 1] as Period).semesterNumber === currentSemesterNumber) {\n periodTitle = `, ${periodInSemester}`;\n } else {\n periodTitle = ` ${titlePeriods.periods['last-separator']} ${periodInSemester}`;\n }\n\n currentSemesterNumber = semesterNumber;\n return `${acc}${periodTitle}`;\n }, '');\n\n return title.trim();\n };\n\n const isPeriodActive = (periodIndex: number): boolean => {\n if (isArrayOfNumbers) {\n return (periods as number[]).includes(periodIndex);\n } else {\n return periods.find((period) => (period as Period).number === periodIndex) ? true : false;\n }\n };\n\n return (\n <div\n className={styles['period__container']}\n title={isArrayOfNumbers ? '' : getTitles(titlePeriods as Record<string, Record<string, string>>)}\n >\n {maxPeriodsList.map((periodIndex) => {\n return (\n <span\n className={clsx(styles['period__item'], isPeriodActive(periodIndex) ? styles['period__item--active'] : '')}\n key={`${idPrefix}-${periodIndex}`}\n />\n );\n })}\n </div>\n );\n};\n"],"names":["MAX_PERIODS","Periods","periods","titlePeriods","maxPeriods","maxPeriodsList","_","index","idPrefix","useId","isArrayOfNumbers","value","getTitles","currentSemesterNumber","acc","period","semesterNumber","periodInSemester","periodTitle","isPeriodActive","periodIndex","jsx","styles","clsx"],"mappings":";;;;;;;GAsBMA,IAAc,GAGPC,IAAU,CAAC,EAAE,SAAAC,GAAS,cAAAC,GAAc,YAAAC,IAAaJ,QAAgC;AACtF,QAAAK,IAAiB,MAAM,KAAK,EAAE,QAAQD,KAAc,CAACE,GAAGC,MAAUA,IAAQ,CAAC,GAC3EC,IAAWC,KAEXC,IAAmBR,EAAQ,KAAK,CAACS,MAC9B,OAAOA,KAAU,QACzB,GAEKC,IAAY,CAACT,MAAiE;AAClF,QAAIU,IAAwB;AAiB5B,WAfcX,EAAQ,OAAO,CAACY,GAAKC,GAAQR,MAAU;AAC7C,YAAA,EAAE,gBAAAS,GAAgB,kBAAAC,EAAqB,IAAAF;AAC7C,UAAIG,IAAc;AAClB,aAAIF,MAAmBH,IACrBK,IAAc,IAAIf,EAAa,QAAQ,cAAc,EAAE,QAAQ,kBAAkBa,EAAe,SAAU,CAAA,CAAC,IAAIC,CAAgB,KACtHf,EAAQK,IAAQ,CAAC,KAAML,EAAQK,IAAQ,CAAC,EAAa,mBAAmBM,IACjFK,IAAc,KAAKD,CAAgB,KAEnCC,IAAc,IAAIf,EAAa,QAAQ,gBAAgB,CAAC,IAAIc,CAAgB,IAGtDJ,IAAAG,GACjB,GAAGF,CAAG,GAAGI,CAAW;AAAA,OAC1B,EAAE,EAEQ;EAAK,GAGdC,IAAiB,CAACC,MAClBV,IACMR,EAAqB,SAASkB,CAAW,IAE1C,EAAAlB,EAAQ,KAAK,CAACa,MAAYA,EAAkB,WAAWK,CAAW;AAK3E,SAAA,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC,EAAO;AAAA,MAClB,OAAOZ,IAAmB,KAAKE,EAAUT,CAAsD;AAAA,MAE9F,UAAAE,EAAe,IAAI,CAACe,MAEjB,gBAAAC;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,WAAWE,EAAKD,EAAO,cAAiBH,EAAeC,CAAW,IAAIE,EAAO,sBAAsB,IAAI,EAAE;AAAA,QAAA;AAAA,QACpG,GAAGd,CAAQ,IAAIY,CAAW;AAAA,MAAA,CAGpC;AAAA,IAAA;AAAA,EAAA;AAGP;"}
@@ -42,6 +42,7 @@ const t = "<Periods periods={periods} />", o = [
42
42
  }
43
43
  },
44
44
  parameters: {
45
+ inspectComponent: e,
45
46
  codeString: t
46
47
  }
47
48
  }, m = (r) => /* @__PURE__ */ s(e, { ...r }), d = m.bind({});
@@ -1 +1 @@
1
- {"version":3,"file":"Periods.stories.js","sources":["../../../src/components/Periods/Periods.stories.tsx"],"sourcesContent":["import type { Meta, StoryFn } from '@storybook/react';\nimport type { PeriodsProps } from './Periods';\n\nimport { Periods } from './Periods';\n\nconst codeString = '<Periods periods={periods} />';\n\nconst PERIODS = [\n {\n id: '2023P1',\n number: 1,\n semesterNumber: 1,\n periodInSemester: 1,\n },\n {\n id: '2023P2',\n number: 2,\n semesterNumber: 1,\n periodInSemester: 2,\n },\n {\n id: '2023P5',\n number: 5,\n semesterNumber: 2,\n periodInSemester: 2,\n },\n {\n id: '2023P7',\n number: 7,\n semesterNumber: 3,\n periodInSemester: 1,\n },\n];\n\nconst TITLE_PERIODS = {\n periods: {\n 'period-title': 'Semester {{ semester }} block',\n 'last-separator': 'en',\n },\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default {\n title: 'Atoms/Periods',\n component: Periods,\n argTypes: {\n expanded: {\n // Hide the expanded prop. Changing the value in Storybook doesn't update the state of the component.\n table: {\n disable: true,\n },\n },\n },\n parameters: {\n codeString: codeString,\n },\n} as Meta<PeriodsProps>;\n\nconst Template: StoryFn<PeriodsProps> = (args) => <Periods {...args} />;\n\nexport const PeriodsExample = Template.bind({});\n\nPeriodsExample.args = {\n periods: PERIODS,\n maxPeriods: 7,\n titlePeriods: TITLE_PERIODS,\n};\n"],"names":["codeString","PERIODS","TITLE_PERIODS","Periods_stories","Periods","Template","args","jsx","PeriodsExample"],"mappings":";;AAKA,MAAMA,IAAa,iCAEbC,IAAU;AAAA,EACd;AAAA,IACE,IAAI;AAAA,IACJ,QAAQ;AAAA,IACR,gBAAgB;AAAA,IAChB,kBAAkB;AAAA,EACpB;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,QAAQ;AAAA,IACR,gBAAgB;AAAA,IAChB,kBAAkB;AAAA,EACpB;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,QAAQ;AAAA,IACR,gBAAgB;AAAA,IAChB,kBAAkB;AAAA,EACpB;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,QAAQ;AAAA,IACR,gBAAgB;AAAA,IAChB,kBAAkB;AAAA,EACpB;AACF,GAEMC,IAAgB;AAAA,EACpB,SAAS;AAAA,IACP,gBAAgB;AAAA,IAChB,kBAAkB;AAAA,EACpB;AACF,GAGeC,IAAA;AAAA,EACb,OAAO;AAAA,EACP,WAAWC;AAAA,EACX,UAAU;AAAA,IACR,UAAU;AAAA;AAAA,MAER,OAAO;AAAA,QACL,SAAS;AAAA,MACX;AAAA,IACF;AAAA,EACF;AAAA,EACA,YAAY;AAAA,IACV,YAAAJ;AAAA,EACF;AACF,GAEMK,IAAkC,CAACC,MAAU,gBAAAC,EAAAH,GAAA,EAAS,GAAGE,EAAM,CAAA,GAExDE,IAAiBH,EAAS,KAAK,EAAE;AAE9CG,EAAe,OAAO;AAAA,EACpB,SAASP;AAAA,EACT,YAAY;AAAA,EACZ,cAAcC;AAChB;"}
1
+ {"version":3,"file":"Periods.stories.js","sources":["../../../src/components/Periods/Periods.stories.tsx"],"sourcesContent":["import type { Meta, StoryFn } from '@storybook/react';\nimport type { PeriodsProps } from './Periods';\n\nimport { Periods } from './Periods';\n\nconst codeString = '<Periods periods={periods} />';\n\nconst PERIODS = [\n {\n id: '2023P1',\n number: 1,\n semesterNumber: 1,\n periodInSemester: 1,\n },\n {\n id: '2023P2',\n number: 2,\n semesterNumber: 1,\n periodInSemester: 2,\n },\n {\n id: '2023P5',\n number: 5,\n semesterNumber: 2,\n periodInSemester: 2,\n },\n {\n id: '2023P7',\n number: 7,\n semesterNumber: 3,\n periodInSemester: 1,\n },\n];\n\nconst TITLE_PERIODS = {\n periods: {\n 'period-title': 'Semester {{ semester }} block',\n 'last-separator': 'en',\n },\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default {\n title: 'Atoms/Periods',\n component: Periods,\n argTypes: {\n expanded: {\n // Hide the expanded prop. Changing the value in Storybook doesn't update the state of the component.\n table: {\n disable: true,\n },\n },\n },\n parameters: {\n inspectComponent: Periods,\n codeString: codeString,\n },\n} as Meta<PeriodsProps>;\n\nconst Template: StoryFn<PeriodsProps> = (args) => <Periods {...args} />;\n\nexport const PeriodsExample = Template.bind({});\n\nPeriodsExample.args = {\n periods: PERIODS,\n maxPeriods: 7,\n titlePeriods: TITLE_PERIODS,\n};\n"],"names":["codeString","PERIODS","TITLE_PERIODS","Periods_stories","Periods","Template","args","jsx","PeriodsExample"],"mappings":";;AAKA,MAAMA,IAAa,iCAEbC,IAAU;AAAA,EACd;AAAA,IACE,IAAI;AAAA,IACJ,QAAQ;AAAA,IACR,gBAAgB;AAAA,IAChB,kBAAkB;AAAA,EACpB;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,QAAQ;AAAA,IACR,gBAAgB;AAAA,IAChB,kBAAkB;AAAA,EACpB;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,QAAQ;AAAA,IACR,gBAAgB;AAAA,IAChB,kBAAkB;AAAA,EACpB;AAAA,EACA;AAAA,IACE,IAAI;AAAA,IACJ,QAAQ;AAAA,IACR,gBAAgB;AAAA,IAChB,kBAAkB;AAAA,EACpB;AACF,GAEMC,IAAgB;AAAA,EACpB,SAAS;AAAA,IACP,gBAAgB;AAAA,IAChB,kBAAkB;AAAA,EACpB;AACF,GAGeC,IAAA;AAAA,EACb,OAAO;AAAA,EACP,WAAWC;AAAA,EACX,UAAU;AAAA,IACR,UAAU;AAAA;AAAA,MAER,OAAO;AAAA,QACL,SAAS;AAAA,MACX;AAAA,IACF;AAAA,EACF;AAAA,EACA,YAAY;AAAA,IACV,kBAAkBA;AAAA,IAClB,YAAAJ;AAAA,EACF;AACF,GAEMK,IAAkC,CAACC,MAAU,gBAAAC,EAAAH,GAAA,EAAS,GAAGE,EAAM,CAAA,GAExDE,IAAiBH,EAAS,KAAK,EAAE;AAE9CG,EAAe,OAAO;AAAA,EACpB,SAASP;AAAA,EACT,YAAY;AAAA,EACZ,cAAcC;AAChB;"}
@@ -1,7 +1,11 @@
1
1
  import { KeyboardEvent, MouseEvent, ReactNode } from 'react';
2
2
  export interface ProgrammeCardProps {
3
+ /** The callback function that is invoked when the card is clicked. */
3
4
  onClick: (event: MouseEvent<HTMLDivElement> | KeyboardEvent<HTMLDivElement>) => void;
5
+ /** The header contents. */
4
6
  header?: ReactNode;
7
+ /** The programme details. */
5
8
  details?: ReactNode;
6
9
  }
10
+ /** Represents a component to render a card for a programme. */
7
11
  export declare const ProgrammeCard: ({ onClick, header, details }: ProgrammeCardProps) => import("react/jsx-runtime").JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"ProgrammeCard.js","sources":["../../../src/components/ProgrammeCard/ProgrammeCard.tsx"],"sourcesContent":["import type { KeyboardEvent, MouseEvent, ReactNode } from 'react';\n\nimport styles from './ProgrammeCard.module.css';\n\nexport interface ProgrammeCardProps {\n onClick: (event: MouseEvent<HTMLDivElement> | KeyboardEvent<HTMLDivElement>) => void;\n header?: ReactNode;\n details?: ReactNode;\n}\n\nexport const ProgrammeCard = ({ onClick, header, details }: ProgrammeCardProps) => {\n const handleKeyDown = (event: KeyboardEvent<HTMLDivElement>) => {\n if (onClick && (event.key === 'Enter' || event.key === ' ')) {\n event.preventDefault();\n onClick(event);\n }\n };\n\n return (\n <div className={styles['programme-card']} role=\"button\" onClick={onClick} onKeyDown={handleKeyDown} tabIndex={0}>\n {header}\n {details && <hr className={styles['programme-card__divider']} />}\n {details}\n </div>\n );\n};\n"],"names":["ProgrammeCard","onClick","header","details","handleKeyDown","event","jsxs","styles","jsx"],"mappings":";;;;GAUaA,IAAgB,CAAC,EAAE,SAAAC,GAAS,QAAAC,GAAQ,SAAAC,QAAkC;AAC3E,QAAAC,IAAgB,CAACC,MAAyC;AAC9D,IAAIJ,MAAYI,EAAM,QAAQ,WAAWA,EAAM,QAAQ,SACrDA,EAAM,eAAe,GACrBJ,EAAQI,CAAK;AAAA,EACf;AAGF,SACG,gBAAAC,EAAA,OAAA,EAAI,WAAWC,EAAO,gBAAgB,GAAG,MAAK,UAAS,SAAAN,GAAkB,WAAWG,GAAe,UAAU,GAC3G,UAAA;AAAA,IAAAF;AAAA,IACAC,KAAY,gBAAAK,EAAA,MAAA,EAAG,WAAWD,EAAO,yBAAyB,GAAG;AAAA,IAC7DJ;AAAA,EACH,EAAA,CAAA;AAEJ;"}
1
+ {"version":3,"file":"ProgrammeCard.js","sources":["../../../src/components/ProgrammeCard/ProgrammeCard.tsx"],"sourcesContent":["import type { KeyboardEvent, MouseEvent, ReactNode } from 'react';\n\nimport styles from './ProgrammeCard.module.css';\n\nexport interface ProgrammeCardProps {\n /** The callback function that is invoked when the card is clicked. */\n onClick: (event: MouseEvent<HTMLDivElement> | KeyboardEvent<HTMLDivElement>) => void;\n /** The header contents. */\n header?: ReactNode;\n /** The programme details. */\n details?: ReactNode;\n}\n\n/** Represents a component to render a card for a programme. */\nexport const ProgrammeCard = ({ onClick, header, details }: ProgrammeCardProps) => {\n const handleKeyDown = (event: KeyboardEvent<HTMLDivElement>) => {\n if (onClick && (event.key === 'Enter' || event.key === ' ')) {\n event.preventDefault();\n onClick(event);\n }\n };\n\n return (\n <div className={styles['programme-card']} role=\"button\" onClick={onClick} onKeyDown={handleKeyDown} tabIndex={0}>\n {header}\n {details && <hr className={styles['programme-card__divider']} />}\n {details}\n </div>\n );\n};\n"],"names":["ProgrammeCard","onClick","header","details","handleKeyDown","event","jsxs","styles","jsx"],"mappings":";;;;GAcaA,IAAgB,CAAC,EAAE,SAAAC,GAAS,QAAAC,GAAQ,SAAAC,QAAkC;AAC3E,QAAAC,IAAgB,CAACC,MAAyC;AAC9D,IAAIJ,MAAYI,EAAM,QAAQ,WAAWA,EAAM,QAAQ,SACrDA,EAAM,eAAe,GACrBJ,EAAQI,CAAK;AAAA,EACf;AAGF,SACG,gBAAAC,EAAA,OAAA,EAAI,WAAWC,EAAO,gBAAgB,GAAG,MAAK,UAAS,SAAAN,GAAkB,WAAWG,GAAe,UAAU,GAC3G,UAAA;AAAA,IAAAF;AAAA,IACAC,KAAY,gBAAAK,EAAA,MAAA,EAAG,WAAWD,EAAO,yBAAyB,GAAG;AAAA,IAC7DJ;AAAA,EACH,EAAA,CAAA;AAEJ;"}
@@ -1,6 +1,6 @@
1
- import { jsxs as e, jsx as r } from "react/jsx-runtime";
1
+ import { jsxs as r, jsx as e } from "react/jsx-runtime";
2
2
  import { fn as a } from "../../index-MQ0yPLdl.js";
3
- import { ProgrammeCard as t } from "./ProgrammeCard.js";
3
+ import { ProgrammeCard as o } from "./ProgrammeCard.js";
4
4
  import { Container as n } from "../../storyComponents/Container/Container.js";
5
5
  import "react";
6
6
  import { Icon as m } from "../Icon/Icon.js";
@@ -21,11 +21,12 @@ import "../SelectListbox/SelectListbox.js";
21
21
  import "../SelectListbox/SelectProvider.js";
22
22
  const l = "<ProgrammeCard key={key} header={header} details={details} onClick={onClickFunction} />", I = {
23
23
  title: "Atoms/ProgrammeCard",
24
- component: t,
24
+ component: o,
25
25
  parameters: {
26
+ inspectComponent: o,
26
27
  codeString: l
27
28
  }
28
- }, s = (o) => /* @__PURE__ */ r(n, { size: "large", children: /* @__PURE__ */ r(t, { ...o }) }), d = s.bind({});
29
+ }, s = (t) => /* @__PURE__ */ e(n, { size: "large", children: /* @__PURE__ */ e(o, { ...t }) }), d = s.bind({});
29
30
  d.args = {
30
31
  header: "This is my header",
31
32
  details: "This is my details",
@@ -33,30 +34,30 @@ d.args = {
33
34
  };
34
35
  const p = s.bind({});
35
36
  p.args = {
36
- header: /* @__PURE__ */ e(i, { flexDirection: "row", gap: "150", children: [
37
- /* @__PURE__ */ r(m, { name: "Envelope", size: 32 }),
38
- /* @__PURE__ */ r("h2", { style: { margin: 0 }, children: "This is my header" })
37
+ header: /* @__PURE__ */ r(i, { flexDirection: "row", gap: "150", children: [
38
+ /* @__PURE__ */ e(m, { name: "Envelope", size: 32 }),
39
+ /* @__PURE__ */ e("h2", { style: { margin: 0 }, children: "This is my header" })
39
40
  ] }),
40
- details: /* @__PURE__ */ e(i, { flexDirection: "row", gap: "150", children: [
41
- /* @__PURE__ */ e(i, { flexDirection: "row", children: [
42
- /* @__PURE__ */ r(m, { name: "FaceFrown" }),
41
+ details: /* @__PURE__ */ r(i, { flexDirection: "row", gap: "150", children: [
42
+ /* @__PURE__ */ r(i, { flexDirection: "row", children: [
43
+ /* @__PURE__ */ e(m, { name: "FaceFrown" }),
43
44
  "Details 1"
44
45
  ] }),
45
- /* @__PURE__ */ e(i, { flexDirection: "row", children: [
46
- /* @__PURE__ */ r(m, { name: "Heart" }),
46
+ /* @__PURE__ */ r(i, { flexDirection: "row", children: [
47
+ /* @__PURE__ */ e(m, { name: "Heart" }),
47
48
  "Details 2"
48
49
  ] }),
49
- /* @__PURE__ */ e(i, { flexDirection: "row", children: [
50
- /* @__PURE__ */ r(m, { name: "Sparkles" }),
50
+ /* @__PURE__ */ r(i, { flexDirection: "row", children: [
51
+ /* @__PURE__ */ e(m, { name: "Sparkles" }),
51
52
  "Details 3"
52
53
  ] })
53
54
  ] }),
54
55
  onClick: a()
55
56
  };
56
- const c = (o) => /* @__PURE__ */ r(n, { size: "large", children: /* @__PURE__ */ e(i, { children: [
57
- /* @__PURE__ */ r(t, { ...o }),
58
- /* @__PURE__ */ r(t, { ...o }),
59
- /* @__PURE__ */ r(t, { ...o })
57
+ const c = (t) => /* @__PURE__ */ e(n, { size: "large", children: /* @__PURE__ */ r(i, { children: [
58
+ /* @__PURE__ */ e(o, { ...t }),
59
+ /* @__PURE__ */ e(o, { ...t }),
60
+ /* @__PURE__ */ e(o, { ...t })
60
61
  ] }) }), h = c.bind({});
61
62
  h.args = {
62
63
  header: "This is my header",
@@ -1 +1 @@
1
- {"version":3,"file":"ProgrammeCard.stories.js","sources":["../../../src/components/ProgrammeCard/ProgrammeCard.stories.tsx"],"sourcesContent":["import { fn } from '@storybook/test';\n\nimport type { Meta, StoryFn } from '@storybook/react';\nimport type { ProgrammeCardProps } from './ProgrammeCard';\n\nimport { ProgrammeCard } from './ProgrammeCard';\n\nimport { Container } from 'storyComponents/Container';\nimport { Icon, Repeater } from 'components';\n\nconst codeString = '<ProgrammeCard key={key} header={header} details={details} onClick={onClickFunction} />';\n\n// eslint-disable-next-line import/no-default-export\nexport default {\n title: 'Atoms/ProgrammeCard',\n component: ProgrammeCard,\n parameters: {\n codeString: codeString,\n },\n} as Meta<ProgrammeCardProps>;\n\nconst Template: StoryFn<ProgrammeCardProps> = (args) => (\n <Container size=\"large\">\n <ProgrammeCard {...args} />\n </Container>\n);\n\nexport const ProgrammeCardExample = Template.bind({});\nProgrammeCardExample.args = {\n header: 'This is my header',\n details: 'This is my details',\n onClick: fn(),\n};\n\nexport const WithComplexContent = Template.bind({});\nWithComplexContent.args = {\n header: (\n <Repeater flexDirection=\"row\" gap=\"150\">\n <Icon name=\"Envelope\" size={32} />\n <h2 style={{ margin: 0 }}>This is my header</h2>\n </Repeater>\n ),\n details: (\n <Repeater flexDirection=\"row\" gap=\"150\">\n <Repeater flexDirection=\"row\">\n <Icon name=\"FaceFrown\" />\n Details 1\n </Repeater>\n <Repeater flexDirection=\"row\">\n <Icon name=\"Heart\" />\n Details 2\n </Repeater>\n <Repeater flexDirection=\"row\">\n <Icon name=\"Sparkles\" />\n Details 3\n </Repeater>\n </Repeater>\n ),\n onClick: fn(),\n};\n\nconst MultiProgrammeCardsTemplate: StoryFn<ProgrammeCardProps> = (args) => (\n <Container size=\"large\">\n <Repeater>\n <ProgrammeCard {...args} />\n <ProgrammeCard {...args} />\n <ProgrammeCard {...args} />\n </Repeater>\n </Container>\n);\n\nexport const MultiProgrammeCards = MultiProgrammeCardsTemplate.bind({});\nMultiProgrammeCards.args = {\n header: 'This is my header',\n details: 'This is my details',\n onClick: fn(),\n};\n"],"names":["codeString","ProgrammeCard_stories","ProgrammeCard","Template","args","jsx","Container","ProgrammeCardExample","fn","WithComplexContent","jsxs","Repeater","Icon","MultiProgrammeCardsTemplate","MultiProgrammeCards"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAUA,MAAMA,IAAa,2FAGJC,IAAA;AAAA,EACb,OAAO;AAAA,EACP,WAAWC;AAAA,EACX,YAAY;AAAA,IACV,YAAAF;AAAA,EACF;AACF,GAEMG,IAAwC,CAACC,MAC5C,gBAAAC,EAAAC,GAAA,EAAU,MAAK,SACd,UAAC,gBAAAD,EAAAH,GAAA,EAAe,GAAGE,EAAM,CAAA,EAC3B,CAAA,GAGWG,IAAuBJ,EAAS,KAAK,EAAE;AACpDI,EAAqB,OAAO;AAAA,EAC1B,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,SAASC,EAAG;AACd;AAEO,MAAMC,IAAqBN,EAAS,KAAK,EAAE;AAClDM,EAAmB,OAAO;AAAA,EACxB,QACG,gBAAAC,EAAAC,GAAA,EAAS,eAAc,OAAM,KAAI,OAChC,UAAA;AAAA,IAAA,gBAAAN,EAACO,GAAK,EAAA,MAAK,YAAW,MAAM,IAAI;AAAA,sBAC/B,MAAG,EAAA,OAAO,EAAE,QAAQ,KAAK,UAAiB,qBAAA;AAAA,EAAA,GAC7C;AAAA,EAEF,SACG,gBAAAF,EAAAC,GAAA,EAAS,eAAc,OAAM,KAAI,OAChC,UAAA;AAAA,IAAC,gBAAAD,EAAAC,GAAA,EAAS,eAAc,OACtB,UAAA;AAAA,MAAC,gBAAAN,EAAAO,GAAA,EAAK,MAAK,YAAY,CAAA;AAAA,MAAE;AAAA,IAAA,GAE3B;AAAA,IACA,gBAAAF,EAACC,GAAS,EAAA,eAAc,OACtB,UAAA;AAAA,MAAC,gBAAAN,EAAAO,GAAA,EAAK,MAAK,QAAQ,CAAA;AAAA,MAAE;AAAA,IAAA,GAEvB;AAAA,IACA,gBAAAF,EAACC,GAAS,EAAA,eAAc,OACtB,UAAA;AAAA,MAAC,gBAAAN,EAAAO,GAAA,EAAK,MAAK,WAAW,CAAA;AAAA,MAAE;AAAA,IAAA,GAE1B;AAAA,EAAA,GACF;AAAA,EAEF,SAASJ,EAAG;AACd;AAEA,MAAMK,IAA2D,CAACT,MAChE,gBAAAC,EAACC,KAAU,MAAK,SACd,4BAACK,GACC,EAAA,UAAA;AAAA,EAAC,gBAAAN,EAAAH,GAAA,EAAe,GAAGE,GAAM;AAAA,EACzB,gBAAAC,EAACH,GAAe,EAAA,GAAGE,GAAM;AAAA,EACzB,gBAAAC,EAACH,GAAe,EAAA,GAAGE,GAAM;AAAA,EAC3B,CAAA,EACF,CAAA,GAGWU,IAAsBD,EAA4B,KAAK,EAAE;AACtEC,EAAoB,OAAO;AAAA,EACzB,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,SAASN,EAAG;AACd;"}
1
+ {"version":3,"file":"ProgrammeCard.stories.js","sources":["../../../src/components/ProgrammeCard/ProgrammeCard.stories.tsx"],"sourcesContent":["import { fn } from '@storybook/test';\n\nimport type { Meta, StoryFn } from '@storybook/react';\nimport type { ProgrammeCardProps } from './ProgrammeCard';\n\nimport { ProgrammeCard } from './ProgrammeCard';\n\nimport { Container } from 'storyComponents/Container';\nimport { Icon, Repeater } from 'components';\n\nconst codeString = '<ProgrammeCard key={key} header={header} details={details} onClick={onClickFunction} />';\n\n// eslint-disable-next-line import/no-default-export\nexport default {\n title: 'Atoms/ProgrammeCard',\n component: ProgrammeCard,\n parameters: {\n inspectComponent: ProgrammeCard,\n codeString: codeString,\n },\n} as Meta<ProgrammeCardProps>;\n\nconst Template: StoryFn<ProgrammeCardProps> = (args) => (\n <Container size=\"large\">\n <ProgrammeCard {...args} />\n </Container>\n);\n\nexport const ProgrammeCardExample = Template.bind({});\nProgrammeCardExample.args = {\n header: 'This is my header',\n details: 'This is my details',\n onClick: fn(),\n};\n\nexport const WithComplexContent = Template.bind({});\nWithComplexContent.args = {\n header: (\n <Repeater flexDirection=\"row\" gap=\"150\">\n <Icon name=\"Envelope\" size={32} />\n <h2 style={{ margin: 0 }}>This is my header</h2>\n </Repeater>\n ),\n details: (\n <Repeater flexDirection=\"row\" gap=\"150\">\n <Repeater flexDirection=\"row\">\n <Icon name=\"FaceFrown\" />\n Details 1\n </Repeater>\n <Repeater flexDirection=\"row\">\n <Icon name=\"Heart\" />\n Details 2\n </Repeater>\n <Repeater flexDirection=\"row\">\n <Icon name=\"Sparkles\" />\n Details 3\n </Repeater>\n </Repeater>\n ),\n onClick: fn(),\n};\n\nconst MultiProgrammeCardsTemplate: StoryFn<ProgrammeCardProps> = (args) => (\n <Container size=\"large\">\n <Repeater>\n <ProgrammeCard {...args} />\n <ProgrammeCard {...args} />\n <ProgrammeCard {...args} />\n </Repeater>\n </Container>\n);\n\nexport const MultiProgrammeCards = MultiProgrammeCardsTemplate.bind({});\nMultiProgrammeCards.args = {\n header: 'This is my header',\n details: 'This is my details',\n onClick: fn(),\n};\n"],"names":["codeString","ProgrammeCard_stories","ProgrammeCard","Template","args","jsx","Container","ProgrammeCardExample","fn","WithComplexContent","jsxs","Repeater","Icon","MultiProgrammeCardsTemplate","MultiProgrammeCards"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAUA,MAAMA,IAAa,2FAGJC,IAAA;AAAA,EACb,OAAO;AAAA,EACP,WAAWC;AAAA,EACX,YAAY;AAAA,IACV,kBAAkBA;AAAA,IAClB,YAAAF;AAAA,EACF;AACF,GAEMG,IAAwC,CAACC,MAC5C,gBAAAC,EAAAC,GAAA,EAAU,MAAK,SACd,UAAC,gBAAAD,EAAAH,GAAA,EAAe,GAAGE,EAAM,CAAA,EAC3B,CAAA,GAGWG,IAAuBJ,EAAS,KAAK,EAAE;AACpDI,EAAqB,OAAO;AAAA,EAC1B,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,SAASC,EAAG;AACd;AAEO,MAAMC,IAAqBN,EAAS,KAAK,EAAE;AAClDM,EAAmB,OAAO;AAAA,EACxB,QACG,gBAAAC,EAAAC,GAAA,EAAS,eAAc,OAAM,KAAI,OAChC,UAAA;AAAA,IAAA,gBAAAN,EAACO,GAAK,EAAA,MAAK,YAAW,MAAM,IAAI;AAAA,sBAC/B,MAAG,EAAA,OAAO,EAAE,QAAQ,KAAK,UAAiB,qBAAA;AAAA,EAAA,GAC7C;AAAA,EAEF,SACG,gBAAAF,EAAAC,GAAA,EAAS,eAAc,OAAM,KAAI,OAChC,UAAA;AAAA,IAAC,gBAAAD,EAAAC,GAAA,EAAS,eAAc,OACtB,UAAA;AAAA,MAAC,gBAAAN,EAAAO,GAAA,EAAK,MAAK,YAAY,CAAA;AAAA,MAAE;AAAA,IAAA,GAE3B;AAAA,IACA,gBAAAF,EAACC,GAAS,EAAA,eAAc,OACtB,UAAA;AAAA,MAAC,gBAAAN,EAAAO,GAAA,EAAK,MAAK,QAAQ,CAAA;AAAA,MAAE;AAAA,IAAA,GAEvB;AAAA,IACA,gBAAAF,EAACC,GAAS,EAAA,eAAc,OACtB,UAAA;AAAA,MAAC,gBAAAN,EAAAO,GAAA,EAAK,MAAK,WAAW,CAAA;AAAA,MAAE;AAAA,IAAA,GAE1B;AAAA,EAAA,GACF;AAAA,EAEF,SAASJ,EAAG;AACd;AAEA,MAAMK,IAA2D,CAACT,MAChE,gBAAAC,EAACC,KAAU,MAAK,SACd,4BAACK,GACC,EAAA,UAAA;AAAA,EAAC,gBAAAN,EAAAH,GAAA,EAAe,GAAGE,GAAM;AAAA,EACzB,gBAAAC,EAACH,GAAe,EAAA,GAAGE,GAAM;AAAA,EACzB,gBAAAC,EAACH,GAAe,EAAA,GAAGE,GAAM;AAAA,EAC3B,CAAA,EACF,CAAA,GAGWU,IAAsBD,EAA4B,KAAK,EAAE;AACtEC,EAAoB,OAAO;AAAA,EACzB,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,SAASN,EAAG;AACd;"}
@@ -1,8 +1,13 @@
1
1
  import { InputHTMLAttributes } from 'react';
2
2
  export interface RadioButtonProps extends InputHTMLAttributes<HTMLInputElement> {
3
+ /** The id of the element. */
3
4
  id: string;
5
+ /** The label of the radio button. */
4
6
  label: string;
7
+ /** The description that is shown under the label. */
5
8
  description?: string;
9
+ /** The gap between the label and radio button. */
6
10
  gap?: 'normal' | 'large';
7
11
  }
12
+ /** Represents a component for a radio button. */
8
13
  export declare const RadioButton: ({ id, label, gap, description, ...restProps }: RadioButtonProps) => import("react/jsx-runtime").JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"RadioButton.js","sources":["../../../src/components/RadioButton/RadioButton.tsx"],"sourcesContent":["import { clsx } from 'clsx';\n\nimport type { InputHTMLAttributes } from 'react';\n\nimport styles from './RadioButton.module.css';\n\nexport interface RadioButtonProps extends InputHTMLAttributes<HTMLInputElement> {\n id: string;\n label: string;\n description?: string;\n gap?: 'normal' | 'large';\n}\n\nexport const RadioButton = ({ id, label, gap = 'normal', description, ...restProps }: RadioButtonProps) => (\n <div className={clsx(styles['radio-button'], styles[`radio-button--gap-${gap}`])}>\n <input\n className={styles['radio-button__input']}\n {...restProps}\n id={id}\n type=\"radio\"\n aria-describedby={description ? `${id}-description` : undefined}\n />\n <label className={styles['radio-button__label']} htmlFor={id}>\n {label}\n </label>\n {description && (\n <p id={`${id}-description`} className={styles['radio-button__description']}>\n {description}\n </p>\n )}\n </div>\n);\n"],"names":["RadioButton","id","label","gap","description","restProps","clsx","styles","jsx"],"mappings":";;;;;;;;GAaaA,IAAc,CAAC,EAAE,IAAAC,GAAI,OAAAC,GAAO,KAAAC,IAAM,UAAU,aAAAC,GAAa,GAAGC,0BACtE,OAAI,EAAA,WAAWC,EAAKC,EAAO,cAAc,GAAGA,EAAO,qBAAqBJ,CAAG,EAAE,CAAC,GAC7E,UAAA;AAAA,EAAA,gBAAAK;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWD,EAAO,qBAAqB;AAAA,MACtC,GAAGF;AAAA,MACJ,IAAAJ;AAAA,MACA,MAAK;AAAA,MACL,oBAAkBG,IAAc,GAAGH,CAAE,iBAAiB;AAAA,IAAA;AAAA,EACxD;AAAA,EACA,gBAAAO,EAAC,WAAM,WAAWD,EAAO,qBAAqB,GAAG,SAASN,GACvD,UACHC,GAAA;AAAA,EACCE,KACE,gBAAAI,EAAA,KAAA,EAAE,IAAI,GAAGP,CAAE,gBAAgB,WAAWM,EAAO,2BAA2B,GACtE,UACHH,EAAA,CAAA;AAAA,EAEJ,CAAA;"}
1
+ {"version":3,"file":"RadioButton.js","sources":["../../../src/components/RadioButton/RadioButton.tsx"],"sourcesContent":["import { clsx } from 'clsx';\n\nimport type { InputHTMLAttributes } from 'react';\n\nimport styles from './RadioButton.module.css';\n\nexport interface RadioButtonProps extends InputHTMLAttributes<HTMLInputElement> {\n /** The id of the element. */\n id: string;\n /** The label of the radio button. */\n label: string;\n /** The description that is shown under the label. */\n description?: string;\n /** The gap between the label and radio button. */\n gap?: 'normal' | 'large';\n}\n\n/** Represents a component for a radio button. */\nexport const RadioButton = ({ id, label, gap = 'normal', description, ...restProps }: RadioButtonProps) => (\n <div className={clsx(styles['radio-button'], styles[`radio-button--gap-${gap}`])}>\n <input\n className={styles['radio-button__input']}\n {...restProps}\n id={id}\n type=\"radio\"\n aria-describedby={description ? `${id}-description` : undefined}\n />\n <label className={styles['radio-button__label']} htmlFor={id}>\n {label}\n </label>\n {description && (\n <p id={`${id}-description`} className={styles['radio-button__description']}>\n {description}\n </p>\n )}\n </div>\n);\n"],"names":["RadioButton","id","label","gap","description","restProps","clsx","styles","jsx"],"mappings":";;;;;;;;GAkBaA,IAAc,CAAC,EAAE,IAAAC,GAAI,OAAAC,GAAO,KAAAC,IAAM,UAAU,aAAAC,GAAa,GAAGC,0BACtE,OAAI,EAAA,WAAWC,EAAKC,EAAO,cAAc,GAAGA,EAAO,qBAAqBJ,CAAG,EAAE,CAAC,GAC7E,UAAA;AAAA,EAAA,gBAAAK;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWD,EAAO,qBAAqB;AAAA,MACtC,GAAGF;AAAA,MACJ,IAAAJ;AAAA,MACA,MAAK;AAAA,MACL,oBAAkBG,IAAc,GAAGH,CAAE,iBAAiB;AAAA,IAAA;AAAA,EACxD;AAAA,EACA,gBAAAO,EAAC,WAAM,WAAWD,EAAO,qBAAqB,GAAG,SAASN,GACvD,UACHC,GAAA;AAAA,EACCE,KACE,gBAAAI,EAAA,KAAA,EAAE,IAAI,GAAGP,CAAE,gBAAgB,WAAWM,EAAO,2BAA2B,GACtE,UACHH,EAAA,CAAA;AAAA,EAEJ,CAAA;"}
@@ -1,10 +1,10 @@
1
- import { jsx as e } from "react/jsx-runtime";
2
- import { RadioButton as o } from "./RadioButton.js";
3
- import '../../assets/RadioButton2.css';const a = `
1
+ import { jsx as o } from "react/jsx-runtime";
2
+ import { RadioButton as e } from "./RadioButton.js";
3
+ import '../../assets/RadioButton2.css';const n = `
4
4
  <RadioButton checked={checked} id={id} label={label} name={name}
5
- onChange={onChangeFunction} value={value} description={description} /> `, r = {
5
+ onChange={onChangeFunction} value={value} description={description} /> `, s = {
6
6
  title: "Atoms/RadioButton",
7
- component: o,
7
+ component: e,
8
8
  argTypes: {
9
9
  id: {
10
10
  control: "text"
@@ -23,9 +23,10 @@ import '../../assets/RadioButton2.css';const a = `
23
23
  }
24
24
  },
25
25
  parameters: {
26
- codeString: a
26
+ inspectComponent: e,
27
+ codeString: n
27
28
  }
28
- }, n = (t) => /* @__PURE__ */ e("fieldset", { className: "fieldset", children: /* @__PURE__ */ e(o, { ...t }) }), i = n.bind({});
29
+ }, a = (t) => /* @__PURE__ */ o("fieldset", { className: "fieldset", children: /* @__PURE__ */ o(e, { ...t }) }), i = a.bind({});
29
30
  i.args = {
30
31
  gap: "normal",
31
32
  disabled: !1,
@@ -35,6 +36,6 @@ i.args = {
35
36
  };
36
37
  export {
37
38
  i as RadioButtonExample,
38
- r as default
39
+ s as default
39
40
  };
40
41
  //# sourceMappingURL=RadioButton.stories.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RadioButton.stories.js","sources":["../../../src/components/RadioButton/RadioButton.stories.tsx"],"sourcesContent":["import type { Meta, StoryFn } from '@storybook/react';\nimport type { RadioButtonProps } from './RadioButton';\n\nimport { RadioButton } from './RadioButton';\nimport './RadioButton.stories.css';\n\nconst codeString = `\n <RadioButton checked={checked} id={id} label={label} name={name} \n onChange={onChangeFunction} value={value} description={description} /> `;\n\n// eslint-disable-next-line import/no-default-export\nexport default {\n title: 'Atoms/RadioButton',\n component: RadioButton,\n argTypes: {\n id: {\n control: 'text',\n },\n label: {\n control: 'text',\n },\n description: {\n control: 'text',\n },\n disabled: {\n control: 'boolean',\n },\n gap: {\n control: 'radio',\n },\n },\n parameters: {\n codeString: codeString,\n },\n} as Meta<RadioButtonProps>;\n\nconst Template: StoryFn<RadioButtonProps> = (args) => (\n <fieldset className=\"fieldset\">\n <RadioButton {...args} />\n </fieldset>\n);\n\nexport const RadioButtonExample = Template.bind({});\nRadioButtonExample.args = {\n gap: 'normal',\n disabled: false,\n label: 'Sample label',\n description: 'Sample description',\n id: 'de501f21',\n};\n"],"names":["codeString","RadioButton_stories","RadioButton","Template","args","jsx","RadioButtonExample"],"mappings":";;AAMA,MAAMA,IAAa;AAAA;AAAA,8EAKJC,IAAA;AAAA,EACb,OAAO;AAAA,EACP,WAAWC;AAAA,EACX,UAAU;AAAA,IACR,IAAI;AAAA,MACF,SAAS;AAAA,IACX;AAAA,IACA,OAAO;AAAA,MACL,SAAS;AAAA,IACX;AAAA,IACA,aAAa;AAAA,MACX,SAAS;AAAA,IACX;AAAA,IACA,UAAU;AAAA,MACR,SAAS;AAAA,IACX;AAAA,IACA,KAAK;AAAA,MACH,SAAS;AAAA,IACX;AAAA,EACF;AAAA,EACA,YAAY;AAAA,IACV,YAAAF;AAAA,EACF;AACF,GAEMG,IAAsC,CAACC,MAC1C,gBAAAC,EAAA,YAAA,EAAS,WAAU,YAClB,UAAC,gBAAAA,EAAAH,GAAA,EAAa,GAAGE,EAAM,CAAA,EACzB,CAAA,GAGWE,IAAqBH,EAAS,KAAK,EAAE;AAClDG,EAAmB,OAAO;AAAA,EACxB,KAAK;AAAA,EACL,UAAU;AAAA,EACV,OAAO;AAAA,EACP,aAAa;AAAA,EACb,IAAI;AACN;"}
1
+ {"version":3,"file":"RadioButton.stories.js","sources":["../../../src/components/RadioButton/RadioButton.stories.tsx"],"sourcesContent":["import type { Meta, StoryFn } from '@storybook/react';\nimport type { RadioButtonProps } from './RadioButton';\n\nimport { RadioButton } from './RadioButton';\nimport './RadioButton.stories.css';\n\nconst codeString = `\n <RadioButton checked={checked} id={id} label={label} name={name} \n onChange={onChangeFunction} value={value} description={description} /> `;\n\n// eslint-disable-next-line import/no-default-export\nexport default {\n title: 'Atoms/RadioButton',\n component: RadioButton,\n argTypes: {\n id: {\n control: 'text',\n },\n label: {\n control: 'text',\n },\n description: {\n control: 'text',\n },\n disabled: {\n control: 'boolean',\n },\n gap: {\n control: 'radio',\n },\n },\n parameters: {\n inspectComponent: RadioButton,\n codeString: codeString,\n },\n} as Meta<RadioButtonProps>;\n\nconst Template: StoryFn<RadioButtonProps> = (args) => (\n <fieldset className=\"fieldset\">\n <RadioButton {...args} />\n </fieldset>\n);\n\nexport const RadioButtonExample = Template.bind({});\nRadioButtonExample.args = {\n gap: 'normal',\n disabled: false,\n label: 'Sample label',\n description: 'Sample description',\n id: 'de501f21',\n};\n"],"names":["codeString","RadioButton_stories","RadioButton","Template","args","jsx","RadioButtonExample"],"mappings":";;AAMA,MAAMA,IAAa;AAAA;AAAA,8EAKJC,IAAA;AAAA,EACb,OAAO;AAAA,EACP,WAAWC;AAAA,EACX,UAAU;AAAA,IACR,IAAI;AAAA,MACF,SAAS;AAAA,IACX;AAAA,IACA,OAAO;AAAA,MACL,SAAS;AAAA,IACX;AAAA,IACA,aAAa;AAAA,MACX,SAAS;AAAA,IACX;AAAA,IACA,UAAU;AAAA,MACR,SAAS;AAAA,IACX;AAAA,IACA,KAAK;AAAA,MACH,SAAS;AAAA,IACX;AAAA,EACF;AAAA,EACA,YAAY;AAAA,IACV,kBAAkBA;AAAA,IAClB,YAAAF;AAAA,EACF;AACF,GAEMG,IAAsC,CAACC,MAC1C,gBAAAC,EAAA,YAAA,EAAS,WAAU,YAClB,UAAC,gBAAAA,EAAAH,GAAA,EAAa,GAAGE,EAAM,CAAA,EACzB,CAAA,GAGWE,IAAqBH,EAAS,KAAK,EAAE;AAClDG,EAAmB,OAAO;AAAA,EACxB,KAAK;AAAA,EACL,UAAU;AAAA,EACV,OAAO;AAAA,EACP,aAAa;AAAA,EACb,IAAI;AACN;"}
@@ -1,6 +1,9 @@
1
1
  import { PropsWithChildren } from 'react';
2
2
  export interface RepeaterProps {
3
+ /** The direction of the items. */
3
4
  flexDirection?: 'row' | 'row-reverse' | 'column' | 'column-reverse';
5
+ /** The gap between the items. */
4
6
  gap?: '025' | '050' | '075' | '100' | '150' | '200';
5
7
  }
8
+ /** Represents a component to show a list of items. */
6
9
  export declare const Repeater: ({ children, flexDirection, gap }: PropsWithChildren<RepeaterProps>) => import("react/jsx-runtime").JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"Repeater.js","sources":["../../../src/components/Repeater/Repeater.tsx"],"sourcesContent":["import { clsx } from 'clsx';\n\nimport type { PropsWithChildren } from 'react';\n\nimport styles from './Repeater.module.css';\n\nexport interface RepeaterProps {\n flexDirection?: 'row' | 'row-reverse' | 'column' | 'column-reverse';\n gap?: '025' | '050' | '075' | '100' | '150' | '200';\n}\n\nexport const Repeater = ({ children, flexDirection = 'column', gap = '050' }: PropsWithChildren<RepeaterProps>) => {\n return (\n <div className={clsx(styles['repeater'], styles[`repeater--${flexDirection}`], styles[`repeater--gap-${gap}`])}>\n {children}\n </div>\n );\n};\n"],"names":["Repeater","children","flexDirection","gap","clsx","styles"],"mappings":";;;;;;;;;;;;;;GAWaA,IAAW,CAAC,EAAE,UAAAC,GAAU,eAAAC,IAAgB,UAAU,KAAAC,IAAM,8BAEhE,OAAI,EAAA,WAAWC,EAAKC,EAAO,UAAaA,EAAO,aAAaH,CAAa,EAAE,GAAGG,EAAO,iBAAiBF,CAAG,EAAE,CAAC,GAC1G,UAAAF,EACH,CAAA;"}
1
+ {"version":3,"file":"Repeater.js","sources":["../../../src/components/Repeater/Repeater.tsx"],"sourcesContent":["import { clsx } from 'clsx';\n\nimport type { PropsWithChildren } from 'react';\n\nimport styles from './Repeater.module.css';\n\nexport interface RepeaterProps {\n /** The direction of the items. */\n flexDirection?: 'row' | 'row-reverse' | 'column' | 'column-reverse';\n /** The gap between the items. */\n gap?: '025' | '050' | '075' | '100' | '150' | '200';\n}\n\n/** Represents a component to show a list of items. */\nexport const Repeater = ({ children, flexDirection = 'column', gap = '050' }: PropsWithChildren<RepeaterProps>) => {\n return (\n <div className={clsx(styles['repeater'], styles[`repeater--${flexDirection}`], styles[`repeater--gap-${gap}`])}>\n {children}\n </div>\n );\n};\n"],"names":["Repeater","children","flexDirection","gap","clsx","styles"],"mappings":";;;;;;;;;;;;;;GAcaA,IAAW,CAAC,EAAE,UAAAC,GAAU,eAAAC,IAAgB,UAAU,KAAAC,IAAM,8BAEhE,OAAI,EAAA,WAAWC,EAAKC,EAAO,UAAaA,EAAO,aAAaH,CAAa,EAAE,GAAGG,EAAO,iBAAiBF,CAAG,EAAE,CAAC,GAC1G,UAAAF,EACH,CAAA;"}
@@ -1,7 +1,7 @@
1
- import { jsxs as i, Fragment as l, jsx as e } from "react/jsx-runtime";
1
+ import { jsxs as i, Fragment as n, jsx as e } from "react/jsx-runtime";
2
2
  import { Repeater as t } from "./Repeater.js";
3
3
  import { Container as o } from "../../storyComponents/Container/Container.js";
4
- const a = "<Repeater flexDirection={flexDirection} gap={gap}>{children}</Repeater>", d = {
4
+ const l = "<Repeater flexDirection={flexDirection} gap={gap}>{children}</Repeater>", d = {
5
5
  title: "Atoms/Repeater",
6
6
  component: t,
7
7
  argTypes: {
@@ -23,13 +23,14 @@ const a = "<Repeater flexDirection={flexDirection} gap={gap}>{children}</Repeate
23
23
  }
24
24
  },
25
25
  parameters: {
26
- codeString: a
26
+ inspectComponent: t,
27
+ codeString: l
27
28
  }
28
- }, n = (r) => /* @__PURE__ */ e(o, { children: /* @__PURE__ */ e(t, { ...r }) }), p = n.bind({});
29
+ }, a = (r) => /* @__PURE__ */ e(o, { children: /* @__PURE__ */ e(t, { ...r }) }), p = a.bind({});
29
30
  p.args = {
30
31
  flexDirection: "column",
31
32
  gap: "050",
32
- children: /* @__PURE__ */ i(l, { children: [
33
+ children: /* @__PURE__ */ i(n, { children: [
33
34
  /* @__PURE__ */ e("div", { children: "Example item 1" }),
34
35
  /* @__PURE__ */ e("div", { children: "Example item 2" }),
35
36
  /* @__PURE__ */ e("div", { children: "Example item 3" })
@@ -1 +1 @@
1
- {"version":3,"file":"Repeater.stories.js","sources":["../../../src/components/Repeater/Repeater.stories.tsx"],"sourcesContent":["import type { PropsWithChildren } from 'react';\nimport type { Meta, StoryFn } from '@storybook/react';\nimport type { RepeaterProps } from './Repeater';\n\nimport { Repeater } from './Repeater';\n\nimport { Container } from 'storyComponents/Container';\n\nconst codeString = '<Repeater flexDirection={flexDirection} gap={gap}>{children}</Repeater>';\n\n// eslint-disable-next-line import/no-default-export\nexport default {\n title: 'Atoms/Repeater',\n component: Repeater,\n argTypes: {\n flexDirection: {\n control: {\n type: 'select',\n },\n },\n gap: {\n control: {\n type: 'select',\n sort: false,\n },\n },\n children: {\n table: {\n disable: true,\n },\n },\n },\n parameters: {\n codeString: codeString,\n },\n} as Meta<PropsWithChildren<RepeaterProps>>;\n\nconst Template: StoryFn<PropsWithChildren<RepeaterProps>> = (args) => (\n <Container>\n <Repeater {...args} />\n </Container>\n);\n\nexport const RepeaterExample = Template.bind({});\nRepeaterExample.args = {\n flexDirection: 'column',\n gap: '050',\n children: (\n <>\n <div>Example item 1</div>\n <div>Example item 2</div>\n <div>Example item 3</div>\n </>\n ),\n};\n"],"names":["codeString","Repeater_stories","Repeater","Template","args","jsx","Container","RepeaterExample","jsxs","Fragment"],"mappings":";;;AAQA,MAAMA,IAAa,2EAGJC,IAAA;AAAA,EACb,OAAO;AAAA,EACP,WAAWC;AAAA,EACX,UAAU;AAAA,IACR,eAAe;AAAA,MACb,SAAS;AAAA,QACP,MAAM;AAAA,MACR;AAAA,IACF;AAAA,IACA,KAAK;AAAA,MACH,SAAS;AAAA,QACP,MAAM;AAAA,QACN,MAAM;AAAA,MACR;AAAA,IACF;AAAA,IACA,UAAU;AAAA,MACR,OAAO;AAAA,QACL,SAAS;AAAA,MACX;AAAA,IACF;AAAA,EACF;AAAA,EACA,YAAY;AAAA,IACV,YAAAF;AAAA,EACF;AACF,GAEMG,IAAsD,CAACC,MAC3D,gBAAAC,EAACC,KACC,UAAC,gBAAAD,EAAAH,GAAA,EAAU,GAAGE,EAAM,CAAA,EACtB,CAAA,GAGWG,IAAkBJ,EAAS,KAAK,EAAE;AAC/CI,EAAgB,OAAO;AAAA,EACrB,eAAe;AAAA,EACf,KAAK;AAAA,EACL,UAEI,gBAAAC,EAAAC,GAAA,EAAA,UAAA;AAAA,IAAA,gBAAAJ,EAAC,SAAI,UAAc,iBAAA,CAAA;AAAA,IACnB,gBAAAA,EAAC,SAAI,UAAc,iBAAA,CAAA;AAAA,IACnB,gBAAAA,EAAC,SAAI,UAAc,iBAAA,CAAA;AAAA,EAAA,GACrB;AAEJ;"}
1
+ {"version":3,"file":"Repeater.stories.js","sources":["../../../src/components/Repeater/Repeater.stories.tsx"],"sourcesContent":["import type { PropsWithChildren } from 'react';\nimport type { Meta, StoryFn } from '@storybook/react';\nimport type { RepeaterProps } from './Repeater';\n\nimport { Repeater } from './Repeater';\n\nimport { Container } from 'storyComponents/Container';\n\nconst codeString = '<Repeater flexDirection={flexDirection} gap={gap}>{children}</Repeater>';\n\n// eslint-disable-next-line import/no-default-export\nexport default {\n title: 'Atoms/Repeater',\n component: Repeater,\n argTypes: {\n flexDirection: {\n control: {\n type: 'select',\n },\n },\n gap: {\n control: {\n type: 'select',\n sort: false,\n },\n },\n children: {\n table: {\n disable: true,\n },\n },\n },\n parameters: {\n inspectComponent: Repeater,\n codeString: codeString,\n },\n} as Meta<PropsWithChildren<RepeaterProps>>;\n\nconst Template: StoryFn<PropsWithChildren<RepeaterProps>> = (args) => (\n <Container>\n <Repeater {...args} />\n </Container>\n);\n\nexport const RepeaterExample = Template.bind({});\nRepeaterExample.args = {\n flexDirection: 'column',\n gap: '050',\n children: (\n <>\n <div>Example item 1</div>\n <div>Example item 2</div>\n <div>Example item 3</div>\n </>\n ),\n};\n"],"names":["codeString","Repeater_stories","Repeater","Template","args","jsx","Container","RepeaterExample","jsxs","Fragment"],"mappings":";;;AAQA,MAAMA,IAAa,2EAGJC,IAAA;AAAA,EACb,OAAO;AAAA,EACP,WAAWC;AAAA,EACX,UAAU;AAAA,IACR,eAAe;AAAA,MACb,SAAS;AAAA,QACP,MAAM;AAAA,MACR;AAAA,IACF;AAAA,IACA,KAAK;AAAA,MACH,SAAS;AAAA,QACP,MAAM;AAAA,QACN,MAAM;AAAA,MACR;AAAA,IACF;AAAA,IACA,UAAU;AAAA,MACR,OAAO;AAAA,QACL,SAAS;AAAA,MACX;AAAA,IACF;AAAA,EACF;AAAA,EACA,YAAY;AAAA,IACV,kBAAkBA;AAAA,IAClB,YAAAF;AAAA,EACF;AACF,GAEMG,IAAsD,CAACC,MAC3D,gBAAAC,EAACC,KACC,UAAC,gBAAAD,EAAAH,GAAA,EAAU,GAAGE,EAAM,CAAA,EACtB,CAAA,GAGWG,IAAkBJ,EAAS,KAAK,EAAE;AAC/CI,EAAgB,OAAO;AAAA,EACrB,eAAe;AAAA,EACf,KAAK;AAAA,EACL,UAEI,gBAAAC,EAAAC,GAAA,EAAA,UAAA;AAAA,IAAA,gBAAAJ,EAAC,SAAI,UAAc,iBAAA,CAAA;AAAA,IACnB,gBAAAA,EAAC,SAAI,UAAc,iBAAA,CAAA;AAAA,IACnB,gBAAAA,EAAC,SAAI,UAAc,iBAAA,CAAA;AAAA,EAAA,GACrB;AAEJ;"}
@@ -1,5 +1,7 @@
1
1
  import { PropsWithChildren } from 'react';
2
2
  export interface SectionNotificationProps {
3
+ /** `true` if the notification bar should be full width; otherwise, `false`. */
3
4
  fullWidth?: boolean;
4
5
  }
6
+ /** Represents a component to show notifications within a [Card](/story/atoms-card--card-example). */
5
7
  export declare const SectionNotification: ({ fullWidth, children }: PropsWithChildren<SectionNotificationProps>) => import("react/jsx-runtime").JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"SectionNotification.js","sources":["../../../src/components/SectionNotification/SectionNotification.tsx"],"sourcesContent":["import classNames from 'clsx';\n\nimport type { PropsWithChildren } from 'react';\n\nimport styles from './SectionNotification.module.css';\n\nexport interface SectionNotificationProps {\n fullWidth?: boolean;\n}\n\nexport const SectionNotification = ({ fullWidth = false, children }: PropsWithChildren<SectionNotificationProps>) => (\n <div\n className={classNames(styles['section-notification'], {\n [styles['section-notification--fullwidth']]: fullWidth,\n })}\n >\n {children}\n </div>\n);\n"],"names":["SectionNotification","fullWidth","children","jsx","classNames","styles"],"mappings":";;;;;GAUaA,IAAsB,CAAC,EAAE,WAAAC,IAAY,IAAO,UAAAC,EACvD,MAAA,gBAAAC;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,WAAWC,EAAWC,EAAO,sBAAsB,GAAG;AAAA,MACpD,CAACA,EAAO,iCAAiC,CAAC,GAAGJ;AAAA,IAAA,CAC9C;AAAA,IAEA,UAAAC;AAAA,EAAA;AACH;"}
1
+ {"version":3,"file":"SectionNotification.js","sources":["../../../src/components/SectionNotification/SectionNotification.tsx"],"sourcesContent":["import classNames from 'clsx';\n\nimport type { PropsWithChildren } from 'react';\n\nimport styles from './SectionNotification.module.css';\n\nexport interface SectionNotificationProps {\n /** `true` if the notification bar should be full width; otherwise, `false`. */\n fullWidth?: boolean;\n}\n\n/** Represents a component to show notifications within a [Card](/story/atoms-card--card-example). */\nexport const SectionNotification = ({ fullWidth = false, children }: PropsWithChildren<SectionNotificationProps>) => (\n <div\n className={classNames(styles['section-notification'], {\n [styles['section-notification--fullwidth']]: fullWidth,\n })}\n >\n {children}\n </div>\n);\n"],"names":["SectionNotification","fullWidth","children","jsx","classNames","styles"],"mappings":";;;;;GAYaA,IAAsB,CAAC,EAAE,WAAAC,IAAY,IAAO,UAAAC,EACvD,MAAA,gBAAAC;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,WAAWC,EAAWC,EAAO,sBAAsB,GAAG;AAAA,MACpD,CAACA,EAAO,iCAAiC,CAAC,GAAGJ;AAAA,IAAA,CAC9C;AAAA,IAEA,UAAAC;AAAA,EAAA;AACH;"}
@@ -10,6 +10,7 @@ const n = "<SectionNotification fullWidth={fullWidth}>{children}</SectionNotific
10
10
  }
11
11
  },
12
12
  parameters: {
13
+ inspectComponent: t,
13
14
  codeString: n
14
15
  }
15
16
  }, e = (i) => /* @__PURE__ */ o(t, { ...i }), c = e.bind({});
@@ -1 +1 @@
1
- {"version":3,"file":"SectionNotification.stories.js","sources":["../../../src/components/SectionNotification/SectionNotification.stories.tsx"],"sourcesContent":["import type { PropsWithChildren } from 'react';\nimport type { Meta, StoryFn } from '@storybook/react';\nimport type { SectionNotificationProps } from 'components/SectionNotification';\n\nimport { SectionNotification } from 'components/SectionNotification';\n\nconst codeString = '<SectionNotification fullWidth={fullWidth}>{children}</SectionNotification>';\n\n// eslint-disable-next-line import/no-default-export\nexport default {\n title: 'Atoms/SectionNotification',\n component: SectionNotification,\n argTypes: {\n fullWidth: {\n control: 'boolean',\n default: false,\n },\n },\n parameters: {\n codeString: codeString,\n },\n} as Meta<PropsWithChildren<SectionNotificationProps>>;\n\nconst Template: StoryFn<PropsWithChildren<SectionNotificationProps>> = (args) => <SectionNotification {...args} />;\n\nexport const SectionNotificationExample = Template.bind({});\nSectionNotificationExample.args = {\n fullWidth: true,\n children: 'This is an example notification',\n};\n"],"names":["codeString","SectionNotification_stories","SectionNotification","Template","args","jsx","SectionNotificationExample"],"mappings":";;AAMA,MAAMA,IAAa,+EAGJC,IAAA;AAAA,EACb,OAAO;AAAA,EACP,WAAWC;AAAA,EACX,UAAU;AAAA,IACR,WAAW;AAAA,MACT,SAAS;AAAA,MACT,SAAS;AAAA,IACX;AAAA,EACF;AAAA,EACA,YAAY;AAAA,IACV,YAAAF;AAAA,EACF;AACF,GAEMG,IAAiE,CAACC,MAAU,gBAAAC,EAAAH,GAAA,EAAqB,GAAGE,EAAM,CAAA,GAEnGE,IAA6BH,EAAS,KAAK,EAAE;AAC1DG,EAA2B,OAAO;AAAA,EAChC,WAAW;AAAA,EACX,UAAU;AACZ;"}
1
+ {"version":3,"file":"SectionNotification.stories.js","sources":["../../../src/components/SectionNotification/SectionNotification.stories.tsx"],"sourcesContent":["import type { PropsWithChildren } from 'react';\nimport type { Meta, StoryFn } from '@storybook/react';\nimport type { SectionNotificationProps } from 'components/SectionNotification';\n\nimport { SectionNotification } from 'components/SectionNotification';\n\nconst codeString = '<SectionNotification fullWidth={fullWidth}>{children}</SectionNotification>';\n\n// eslint-disable-next-line import/no-default-export\nexport default {\n title: 'Atoms/SectionNotification',\n component: SectionNotification,\n argTypes: {\n fullWidth: {\n control: 'boolean',\n default: false,\n },\n },\n parameters: {\n inspectComponent: SectionNotification,\n codeString: codeString,\n },\n} as Meta<PropsWithChildren<SectionNotificationProps>>;\n\nconst Template: StoryFn<PropsWithChildren<SectionNotificationProps>> = (args) => <SectionNotification {...args} />;\n\nexport const SectionNotificationExample = Template.bind({});\nSectionNotificationExample.args = {\n fullWidth: true,\n children: 'This is an example notification',\n};\n"],"names":["codeString","SectionNotification_stories","SectionNotification","Template","args","jsx","SectionNotificationExample"],"mappings":";;AAMA,MAAMA,IAAa,+EAGJC,IAAA;AAAA,EACb,OAAO;AAAA,EACP,WAAWC;AAAA,EACX,UAAU;AAAA,IACR,WAAW;AAAA,MACT,SAAS;AAAA,MACT,SAAS;AAAA,IACX;AAAA,EACF;AAAA,EACA,YAAY;AAAA,IACV,kBAAkBA;AAAA,IAClB,YAAAF;AAAA,EACF;AACF,GAEMG,IAAiE,CAACC,MAAU,gBAAAC,EAAAH,GAAA,EAAqB,GAAGE,EAAM,CAAA,GAEnGE,IAA6BH,EAAS,KAAK,EAAE;AAC1DG,EAA2B,OAAO;AAAA,EAChC,WAAW;AAAA,EACX,UAAU;AACZ;"}
@@ -1,7 +1,7 @@
1
1
  import { Meta } from '@storybook/react';
2
2
  import { PropsWithChildren } from 'react';
3
- import { SelectListboxProps, SelectListbox } from './SelectListbox';
4
- declare const _default: Meta<typeof SelectListbox>;
3
+ import { SelectListboxProps } from './SelectListbox';
4
+ declare const _default: Meta<SelectListboxProps>;
5
5
  export default _default;
6
6
  export declare const SelectListboxExample: import('@storybook/csf').AnnotatedStoryFn<import('@storybook/react').ReactRenderer, PropsWithChildren<SelectListboxProps>>;
7
7
  export declare const WithComponentOption: import('@storybook/csf').AnnotatedStoryFn<import('@storybook/react').ReactRenderer, PropsWithChildren<SelectListboxProps>>;
@@ -131,6 +131,7 @@ const d = ({
131
131
  }
132
132
  },
133
133
  parameters: {
134
+ inspectComponent: r,
134
135
  codeString: v
135
136
  }
136
137
  }, o = {