@fremtind/jokul 5.0.0-next.1 → 5.0.0-next.2

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 (258) hide show
  1. package/README.md +29 -6
  2. package/bin/jokul.mjs +10 -0
  3. package/bin/run-jokul-cli.mjs +63 -0
  4. package/build/build-stats.html +1 -1
  5. package/build/cjs/components/card/Card.cjs +1 -1
  6. package/build/cjs/components/card/Card.cjs.map +1 -1
  7. package/build/cjs/components/card/types.cjs +1 -1
  8. package/build/cjs/components/card/types.cjs.map +1 -1
  9. package/build/cjs/components/card/types.d.cts +2 -2
  10. package/build/cjs/components/checkbox/Checkbox.cjs +1 -1
  11. package/build/cjs/components/checkbox/Checkbox.cjs.map +1 -1
  12. package/build/cjs/components/cookie-consent/CookieConsent.cjs +1 -1
  13. package/build/cjs/components/cookie-consent/CookieConsent.cjs.map +1 -1
  14. package/build/cjs/components/cookie-consent/CookieConsent.d.cts +1 -1
  15. package/build/cjs/components/cookie-consent/types.d.cts +4 -0
  16. package/build/cjs/components/datepicker/DatePicker.cjs +1 -1
  17. package/build/cjs/components/datepicker/DatePicker.cjs.map +1 -1
  18. package/build/cjs/components/expander/ExpandablePanel.cjs +1 -1
  19. package/build/cjs/components/expander/ExpandablePanel.cjs.map +1 -1
  20. package/build/cjs/components/link/Link.cjs +1 -1
  21. package/build/cjs/components/link/Link.cjs.map +1 -1
  22. package/build/cjs/components/link/Link.d.cts +2 -2
  23. package/build/cjs/components/link/types.d.cts +1 -4
  24. package/build/cjs/components/modal/Modal.cjs +1 -1
  25. package/build/cjs/components/modal/Modal.cjs.map +1 -1
  26. package/build/cjs/components/modal/Modal.d.cts +2 -9
  27. package/build/cjs/components/modal/index.d.cts +1 -1
  28. package/build/cjs/components/modal/types.d.cts +18 -0
  29. package/build/cjs/components/popover/Popover.cjs +1 -1
  30. package/build/cjs/components/popover/Popover.cjs.map +1 -1
  31. package/build/cjs/components/radio-button/BaseRadioButton.cjs +1 -1
  32. package/build/cjs/components/radio-button/BaseRadioButton.cjs.map +1 -1
  33. package/build/cjs/core/tokens.cjs +2 -0
  34. package/build/cjs/core/tokens.cjs.map +1 -0
  35. package/build/cjs/core/tokens.d.cts +593 -0
  36. package/build/cjs/tailwind/colors.cjs +2 -0
  37. package/build/cjs/tailwind/colors.cjs.map +1 -0
  38. package/build/cjs/tailwind/colors.d.cts +39 -0
  39. package/build/cjs/tokens.cjs +1 -1
  40. package/build/cjs/tokens.cjs.map +1 -1
  41. package/build/cjs/tokens.d.cts +98 -39
  42. package/build/es/components/card/Card.js +1 -1
  43. package/build/es/components/card/Card.js.map +1 -1
  44. package/build/es/components/card/types.d.ts +2 -2
  45. package/build/es/components/card/types.js +1 -1
  46. package/build/es/components/card/types.js.map +1 -1
  47. package/build/es/components/checkbox/Checkbox.js +1 -1
  48. package/build/es/components/checkbox/Checkbox.js.map +1 -1
  49. package/build/es/components/cookie-consent/CookieConsent.d.ts +1 -1
  50. package/build/es/components/cookie-consent/CookieConsent.js +1 -1
  51. package/build/es/components/cookie-consent/CookieConsent.js.map +1 -1
  52. package/build/es/components/cookie-consent/types.d.ts +4 -0
  53. package/build/es/components/datepicker/DatePicker.js +1 -1
  54. package/build/es/components/datepicker/DatePicker.js.map +1 -1
  55. package/build/es/components/expander/ExpandablePanel.js +1 -1
  56. package/build/es/components/expander/ExpandablePanel.js.map +1 -1
  57. package/build/es/components/link/Link.d.ts +2 -2
  58. package/build/es/components/link/Link.js +1 -1
  59. package/build/es/components/link/Link.js.map +1 -1
  60. package/build/es/components/link/types.d.ts +1 -4
  61. package/build/es/components/modal/Modal.d.ts +2 -9
  62. package/build/es/components/modal/Modal.js +1 -1
  63. package/build/es/components/modal/Modal.js.map +1 -1
  64. package/build/es/components/modal/index.d.ts +1 -1
  65. package/build/es/components/modal/types.d.ts +18 -0
  66. package/build/es/components/popover/Popover.js +1 -1
  67. package/build/es/components/popover/Popover.js.map +1 -1
  68. package/build/es/components/radio-button/BaseRadioButton.js +1 -1
  69. package/build/es/components/radio-button/BaseRadioButton.js.map +1 -1
  70. package/build/es/core/tokens.d.ts +593 -0
  71. package/build/es/core/tokens.js +2 -0
  72. package/build/es/core/tokens.js.map +1 -0
  73. package/build/es/tailwind/colors.d.ts +39 -0
  74. package/build/es/tailwind/colors.js +2 -0
  75. package/build/es/tailwind/colors.js.map +1 -0
  76. package/build/es/tokens.d.ts +98 -39
  77. package/build/es/tokens.js +1 -1
  78. package/build/es/tokens.js.map +1 -1
  79. package/codemods/__tests__/import-paths.test.mjs +84 -0
  80. package/codemods/import-paths.mjs +393 -0
  81. package/package.json +6 -1
  82. package/styles/base.css +483 -66
  83. package/styles/base.min.css +1 -1
  84. package/styles/components/autosuggest/autosuggest.css +2 -2
  85. package/styles/components/autosuggest/autosuggest.min.css +1 -1
  86. package/styles/components/autosuggest/autosuggest.scss +2 -2
  87. package/styles/components/beta/description-list/description-list.css +1 -1
  88. package/styles/components/beta/description-list/description-list.min.css +1 -1
  89. package/styles/components/beta/description-list/description-list.scss +1 -1
  90. package/styles/components/beta/nav-link/navlink.css +2 -2
  91. package/styles/components/beta/nav-link/navlink.min.css +1 -1
  92. package/styles/components/beta/nav-link/navlink.scss +2 -2
  93. package/styles/components/beta/select/select.css +9 -9
  94. package/styles/components/beta/select/select.min.css +1 -1
  95. package/styles/components/beta/select/select.scss +8 -7
  96. package/styles/components/breadcrumb/breadcrumb.css +1 -1
  97. package/styles/components/breadcrumb/breadcrumb.min.css +1 -1
  98. package/styles/components/button/button.css +6 -2
  99. package/styles/components/button/button.min.css +1 -1
  100. package/styles/components/button/button.scss +12 -12
  101. package/styles/components/card/card.css +6 -9
  102. package/styles/components/card/card.min.css +1 -1
  103. package/styles/components/card/card.scss +6 -10
  104. package/styles/components/checkbox/checkbox.css +43 -9
  105. package/styles/components/checkbox/checkbox.min.css +1 -1
  106. package/styles/components/checkbox/checkbox.scss +38 -21
  107. package/styles/components/checkbox-panel/checkbox-panel.css +65 -26
  108. package/styles/components/checkbox-panel/checkbox-panel.min.css +1 -1
  109. package/styles/components/checkbox-panel/checkbox-panel.scss +4 -0
  110. package/styles/components/chip/chip.css +2 -2
  111. package/styles/components/chip/chip.min.css +1 -1
  112. package/styles/components/chip/chip.scss +1 -1
  113. package/styles/components/combobox/combobox.css +18 -15
  114. package/styles/components/combobox/combobox.min.css +1 -1
  115. package/styles/components/combobox/combobox.scss +9 -6
  116. package/styles/components/countdown/countdown.css +4 -4
  117. package/styles/components/countdown/countdown.min.css +1 -1
  118. package/styles/components/datepicker/_calendar-date-button.scss +7 -7
  119. package/styles/components/datepicker/_calendar-navigation-dropdown.scss +1 -1
  120. package/styles/components/datepicker/_calendar.scss +6 -7
  121. package/styles/components/datepicker/datepicker.css +19 -11
  122. package/styles/components/datepicker/datepicker.min.css +1 -1
  123. package/styles/components/description-list/description-list.css +1 -1
  124. package/styles/components/description-list/description-list.min.css +1 -1
  125. package/styles/components/description-list/description-list.scss +1 -1
  126. package/styles/components/expander/expandable.css +17 -17
  127. package/styles/components/expander/expandable.min.css +1 -1
  128. package/styles/components/expander/expandable.scss +15 -19
  129. package/styles/components/feedback/feedback.css +6 -8
  130. package/styles/components/feedback/feedback.min.css +1 -1
  131. package/styles/components/feedback/feedback.scss +4 -9
  132. package/styles/components/file/file.css +5 -5
  133. package/styles/components/file/file.min.css +1 -1
  134. package/styles/components/file/file.scss +5 -5
  135. package/styles/components/file-input/file-input.css +26 -22
  136. package/styles/components/file-input/file-input.min.css +1 -1
  137. package/styles/components/file-input/file-input.scss +3 -3
  138. package/styles/components/help/help.css +2 -2
  139. package/styles/components/help/help.min.css +1 -1
  140. package/styles/components/help/help.scss +2 -2
  141. package/styles/components/icon/icon.css +4 -4
  142. package/styles/components/icon/icon.min.css +1 -1
  143. package/styles/components/icon/icon.scss +4 -4
  144. package/styles/components/icon-button/icon-button.css +1 -1
  145. package/styles/components/icon-button/icon-button.min.css +1 -1
  146. package/styles/components/input-group/input-group.css +2 -2
  147. package/styles/components/input-group/input-group.min.css +1 -1
  148. package/styles/components/input-panel/input-panel.css +19 -17
  149. package/styles/components/input-panel/input-panel.min.css +1 -1
  150. package/styles/components/input-panel/input-panel.scss +20 -18
  151. package/styles/components/link/link.css +1 -1
  152. package/styles/components/link/link.min.css +1 -1
  153. package/styles/components/link-list/link-list.css +6 -2
  154. package/styles/components/link-list/link-list.min.css +1 -1
  155. package/styles/components/link-list/link-list.scss +6 -2
  156. package/styles/components/loader/loader.css +6 -6
  157. package/styles/components/loader/loader.min.css +1 -1
  158. package/styles/components/loader/skeleton-loader.css +4 -4
  159. package/styles/components/loader/skeleton-loader.min.css +1 -1
  160. package/styles/components/loader/skeleton-loader.scss +1 -1
  161. package/styles/components/menu/_menu-divider.scss +1 -1
  162. package/styles/components/menu/menu.css +3 -3
  163. package/styles/components/menu/menu.min.css +1 -1
  164. package/styles/components/menu/menu.scss +2 -2
  165. package/styles/components/message/message.css +19 -9
  166. package/styles/components/message/message.min.css +1 -1
  167. package/styles/components/message/message.scss +16 -6
  168. package/styles/components/modal/_layout.scss +22 -0
  169. package/styles/components/modal/_modal-base.scss +32 -0
  170. package/styles/components/modal/_motion.scss +45 -0
  171. package/styles/components/modal/_overlay.scss +20 -0
  172. package/styles/components/modal/_parts.scss +33 -0
  173. package/styles/components/modal/_placement.scss +59 -0
  174. package/styles/components/modal/modal.css +118 -34
  175. package/styles/components/modal/modal.min.css +1 -1
  176. package/styles/components/modal/modal.scss +6 -95
  177. package/styles/components/nav-link/nav-link.css +1 -1
  178. package/styles/components/nav-link/nav-link.min.css +1 -1
  179. package/styles/components/pagination/pagination.css +1 -1
  180. package/styles/components/pagination/pagination.min.css +1 -1
  181. package/styles/components/popover/popover.css +12 -1
  182. package/styles/components/popover/popover.min.css +1 -1
  183. package/styles/components/popover/popover.scss +15 -1
  184. package/styles/components/progress-bar/progress-bar.css +27 -3
  185. package/styles/components/progress-bar/progress-bar.min.css +1 -1
  186. package/styles/components/progress-bar/progress-bar.scss +5 -0
  187. package/styles/components/radio-button/radio-button.css +41 -6
  188. package/styles/components/radio-button/radio-button.min.css +1 -1
  189. package/styles/components/radio-button/radio-button.scss +35 -16
  190. package/styles/components/radio-panel/radio-panel.css +22 -17
  191. package/styles/components/radio-panel/radio-panel.min.css +1 -1
  192. package/styles/components/radio-panel/radio-panel.scss +4 -0
  193. package/styles/components/search/search-with-submit-button.css +1 -1
  194. package/styles/components/search/search-with-submit-button.min.css +1 -1
  195. package/styles/components/search/search-with-submit-button.scss +1 -1
  196. package/styles/components/search/search.css +2 -2
  197. package/styles/components/search/search.min.css +1 -1
  198. package/styles/components/search/search.scss +1 -1
  199. package/styles/components/segmented-control/segmented-control.css +54 -19
  200. package/styles/components/segmented-control/segmented-control.min.css +1 -1
  201. package/styles/components/segmented-control/segmented-control.scss +4 -4
  202. package/styles/components/select/select.css +15 -15
  203. package/styles/components/select/select.min.css +1 -1
  204. package/styles/components/select/select.scss +12 -12
  205. package/styles/components/summary-table/summary-table.css +2 -2
  206. package/styles/components/summary-table/summary-table.min.css +1 -1
  207. package/styles/components/summary-table/summary-table.scss +2 -2
  208. package/styles/components/system-message/system-message.css +20 -10
  209. package/styles/components/system-message/system-message.min.css +1 -1
  210. package/styles/components/system-message/system-message.scss +17 -7
  211. package/styles/components/table/_table-head.scss +1 -1
  212. package/styles/components/table/_table-row.scss +2 -2
  213. package/styles/components/table/table.css +3 -3
  214. package/styles/components/table/table.min.css +1 -1
  215. package/styles/components/table-of-contents/table-of-contents.css +1 -1
  216. package/styles/components/table-of-contents/table-of-contents.min.css +1 -1
  217. package/styles/components/table-of-contents/table-of-contents.scss +1 -1
  218. package/styles/components/tabs/tabs.css +3 -3
  219. package/styles/components/tabs/tabs.min.css +1 -1
  220. package/styles/components/tabs/tabs.scss +2 -2
  221. package/styles/components/tag/tag.css +16 -6
  222. package/styles/components/tag/tag.min.css +1 -1
  223. package/styles/components/tag/tag.scss +16 -6
  224. package/styles/components/text-area/text-area.css +8 -8
  225. package/styles/components/text-area/text-area.min.css +1 -1
  226. package/styles/components/text-input/text-input.css +8 -8
  227. package/styles/components/text-input/text-input.min.css +1 -1
  228. package/styles/components/toast/toast.css +19 -12
  229. package/styles/components/toast/toast.min.css +1 -1
  230. package/styles/components/toast/toast.scss +15 -12
  231. package/styles/components/toggle-switch/_toggle-slider.scss +4 -4
  232. package/styles/components/toggle-switch/toggle-switch.css +14 -19
  233. package/styles/components/toggle-switch/toggle-switch.min.css +2 -2
  234. package/styles/components/toggle-switch/toggle-switch.scss +9 -16
  235. package/styles/components/tooltip/tooltip.css +3 -3
  236. package/styles/components/tooltip/tooltip.min.css +1 -1
  237. package/styles/components/tooltip/tooltip.scss +3 -3
  238. package/styles/components.css +536 -294
  239. package/styles/components.min.css +2 -2
  240. package/styles/core/jkl/_tokens.scss +59 -0
  241. package/styles/core/jkl/legacy/_dynamic-colors.scss +40 -0
  242. package/styles/core/jkl/legacy/_tokens.scss +742 -0
  243. package/styles/core/theme/_color-tokens.scss +73 -0
  244. package/styles/core/theme/_legacy-color-tokens.scss +81 -0
  245. package/styles/core/theme/_legacy-tokens.scss +279 -0
  246. package/styles/core/theme/_spacing-tokens.scss +33 -0
  247. package/styles/core/theme/_tokens.scss +33 -0
  248. package/styles/hooks/stories/styles.scss +2 -2
  249. package/styles/jkl/_ornaments.scss +1 -1
  250. package/styles/jkl/_tokens.scss +151 -71
  251. package/styles/shared/input/shared-input-styles.scss +6 -6
  252. package/styles/shared/track/track.scss +2 -2
  253. package/styles/tailwind.css +108 -66
  254. package/styles/theme/_color-scheme.scss +135 -66
  255. package/styles/theme/_index.scss +3 -0
  256. package/styles/theme/brands/dnb/_color-scheme.scss +119 -0
  257. package/styles/theme/brands/eika/_color-scheme.scss +119 -0
  258. package/styles/theme/brands/sparebank1/_color-scheme.scss +119 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Popover.cjs","sources":["../../../../src/components/popover/Popover.tsx"],"sourcesContent":["import {\n FloatingFocusManager,\n FloatingPortal,\n type ReferenceElement,\n type VirtualElement,\n autoUpdate,\n flip,\n offset,\n shift,\n useClick,\n useDismiss,\n useFloating,\n useFocus,\n useHover,\n useInteractions,\n useMergeRefs,\n useRole,\n} from \"@floating-ui/react\";\nimport clsx from \"clsx\";\nimport * as React from \"react\";\nimport { getThemeAndSize } from \"../../utilities/getThemeAndSize.js\";\nimport type { PopoverOptions } from \"./types.js\";\n\nconst usePopover = ({\n open: _open,\n onOpenChange: _onOpenChange,\n placement = \"bottom-start\",\n strategy = \"absolute\",\n modal = true,\n offset: _offset = 4,\n positionReference,\n hoverOptions,\n focusOptions,\n clickOptions,\n roleOptions,\n dismissOptions,\n}: PopoverOptions) => {\n const [uncontrolledOpen, setUncontrolledOpen] = React.useState(_open);\n\n const open = _open ?? uncontrolledOpen;\n const onOpenChange = _onOpenChange ?? setUncontrolledOpen;\n\n const data = useFloating({\n open,\n onOpenChange,\n placement,\n strategy,\n middleware: [\n offset(_offset),\n flip({ padding: 5, fallbackPlacements: [\"bottom\", \"top\"] }),\n shift({ padding: 12 }),\n ],\n whileElementsMounted: autoUpdate,\n });\n\n const context = data.context;\n\n const click = useClick(context, {\n enabled: false,\n ...clickOptions,\n });\n const hover = useHover(context, { enabled: false, ...hoverOptions });\n const focus = useFocus(context, { enabled: false, ...focusOptions });\n const dismiss = useDismiss(context, dismissOptions);\n const role = useRole(context, roleOptions);\n\n const interactions = useInteractions([click, dismiss, focus, hover, role]);\n\n React.useLayoutEffect(() => {\n if (positionReference) {\n data.refs.setPositionReference(positionReference?.current);\n }\n }, [positionReference, data.refs]);\n\n return React.useMemo(\n () => ({\n open,\n onOpenChange,\n modal,\n ...interactions,\n ...data,\n }),\n [open, onOpenChange, modal, interactions, data],\n );\n};\n\ntype PopoverContextType = ReturnType<typeof usePopover> | null;\n\nconst PopoverContext = React.createContext<PopoverContextType>(null);\n\nconst usePopoverContext = () => {\n const context = React.useContext(PopoverContext);\n\n if (context == null) {\n throw new Error(\n \"Popover komponenter må brukes innenfor en <Popover /> komponent\",\n );\n }\n\n return context;\n};\n\nexport const Popover = ({\n children,\n ...restOptions\n}: {\n children: React.ReactNode;\n} & PopoverOptions) => {\n const popover = usePopover({ ...restOptions });\n return (\n <PopoverContext.Provider value={popover}>\n {children}\n </PopoverContext.Provider>\n );\n};\n\ninterface PopoverTriggerProps {\n children: React.ReactNode;\n /**\n * Rendrer komponenten som child-elementet sitt, og slår sammen egenskaper og props.\n *\n * Default er `false`.\n *\n * @example\n * ```tsx\n * <Component asChild foo=\"bar\">\n * <Child baz=\"qux\" />\n * </Component>\n *\n * // Rendrer følgende:\n * <Child foo=\"bar\" baz=\"qux\" />\n * ```\n */\n asChild?: boolean;\n}\n\nconst PopoverTrigger = React.forwardRef<\n HTMLElement,\n React.HTMLProps<HTMLElement> & PopoverTriggerProps\n>(function PopoverTrigger({ children, asChild = false, ...props }, propRef) {\n const { refs, getReferenceProps, open, onOpenChange } = usePopoverContext();\n const childrenRef = (children as any).ref;\n const ref = useMergeRefs([refs.setReference, propRef, childrenRef]);\n\n if (asChild && React.isValidElement(children)) {\n return React.cloneElement(\n children,\n getReferenceProps({\n ref,\n ...props,\n ...children.props,\n }),\n );\n }\n\n return (\n <button\n ref={ref}\n onClick={() => onOpenChange?.(!open)}\n aria-expanded={open}\n {...getReferenceProps(props)}\n >\n {children}\n </button>\n );\n});\n\ninterface PopoverContentProps {\n /**\n * Padding rundt innholdet i popoveren.\n *\n * Default er `0`.\n */\n padding?: 0 | 8 | 16 | 24;\n /**\n *\n * Angir hvilket element som skal motta fokus ved åpning.\n * Kan være en tabbar index eller en referanse til et element.\"\n *\n * Default er `0`, som betyr at det første fokuserbare elementet i popoveren får fokus.\n * @see https://floating-ui.com/docs/FloatingFocusManager#initialfocus\n */\n initialFocus?: number | React.RefObject<HTMLElement>;\n /**\n * Angir om fokus skal returneres til triggeren når popoveren lukkes.\n *\n * Default er `true`.\n * @see https://floating-ui.com/docs/FloatingFocusManager#returnfocus\n */\n returnFocus?: boolean;\n}\n\n// Er popover-elementet posisjonert i forhold til et annet element enn triggeren?\nconst isCustomPositioned = (\n referenceElement: ReferenceElement,\n): referenceElement is VirtualElement => {\n if (!referenceElement) return false;\n\n return \"contextElement\" in referenceElement;\n};\n\nconst PopoverContent = React.forwardRef<\n HTMLDivElement,\n React.HTMLProps<HTMLDivElement> & PopoverContentProps\n>(function PopoverContent(\n {\n style,\n className,\n padding = 0,\n initialFocus = 0,\n returnFocus = true,\n ...props\n },\n propRef,\n) {\n const { context, modal, refs, open, floatingStyles, getFloatingProps } =\n usePopoverContext();\n const ref = useMergeRefs([refs.setFloating, propRef]);\n\n const referenceElement = refs.reference.current as ReferenceElement;\n\n const { theme, size } = isCustomPositioned(referenceElement)\n ? getThemeAndSize(referenceElement.contextElement)\n : getThemeAndSize(referenceElement);\n\n const floatingPortalRef = React.useRef<HTMLElement | null>(null);\n\n // TODO: Løser et problem hvor nestede portaler ikke \"fester\" seg til det nærmeste portal-elementet. Fjernes når alle komponenter som rendres i en portal tar i bruk popover komponenten da den håndterer dette internt. Issue: https://github.com/fremtind/jokul/issues/4356\n React.useEffect(() => {\n floatingPortalRef.current =\n context.elements.domReference?.closest<HTMLElement>(\n \"[data-portal]\",\n ) || document.body;\n }, [context.elements.domReference]);\n\n if (!open) return null;\n\n return (\n <FloatingPortal root={floatingPortalRef.current}>\n <FloatingFocusManager\n context={context}\n modal={modal}\n initialFocus={initialFocus}\n returnFocus={returnFocus}\n >\n <div\n data-theme={theme}\n data-size={size}\n className={clsx(\"jkl jkl-popover\", className)}\n ref={ref}\n style={\n {\n ...style,\n ...floatingStyles,\n \"--popover-padding\": `var(--jkl-spacing-${padding})`,\n } as React.CSSProperties\n }\n {...getFloatingProps(props)}\n >\n {props.children}\n </div>\n </FloatingFocusManager>\n </FloatingPortal>\n );\n});\n\nPopover.Trigger = PopoverTrigger;\nPopover.Content = PopoverContent;\n\nexport default Popover;\n"],"names":["PopoverContext","React","createContext","usePopoverContext","context","useContext","Error","Popover","children","restOptions","popover","open","_open","onOpenChange","_onOpenChange","placement","strategy","modal","offset","_offset","positionReference","hoverOptions","focusOptions","clickOptions","roleOptions","dismissOptions","uncontrolledOpen","setUncontrolledOpen","useState","data","useFloating","middleware","flip","padding","fallbackPlacements","shift","whileElementsMounted","autoUpdate","click","useClick","enabled","hover","useHover","focus","useFocus","dismiss","useDismiss","role","useRole","interactions","useInteractions","useLayoutEffect","refs","setPositionReference","current","useMemo","usePopover","Provider","value","PopoverTrigger","forwardRef","asChild","props","propRef","getReferenceProps","childrenRef","ref","useMergeRefs","setReference","isValidElement","cloneElement","jsx","onClick","PopoverContent","style","className","initialFocus","returnFocus","floatingStyles","getFloatingProps","setFloating","referenceElement","reference","theme","size","getThemeAndSize","contextElement","floatingPortalRef","useRef","useEffect","elements","domReference","closest","document","body","FloatingPortal","root","FloatingFocusManager","clsx","Trigger","Content"],"mappings":"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"}
1
+ {"version":3,"file":"Popover.cjs","sources":["../../../../src/components/popover/Popover.tsx"],"sourcesContent":["import {\n FloatingFocusManager,\n FloatingPortal,\n type ReferenceElement,\n type VirtualElement,\n autoUpdate,\n flip,\n offset,\n shift,\n useClick,\n useDismiss,\n useFloating,\n useFocus,\n useHover,\n useInteractions,\n useMergeRefs,\n useRole,\n} from \"@floating-ui/react\";\nimport clsx from \"clsx\";\nimport * as React from \"react\";\nimport { getThemeAndSize } from \"../../utilities/getThemeAndSize.js\";\nimport type { PopoverOptions } from \"./types.js\";\n\nconst usePopover = ({\n open: _open,\n onOpenChange: _onOpenChange,\n placement = \"bottom-start\",\n strategy = \"absolute\",\n modal = true,\n offset: _offset = 4,\n positionReference,\n hoverOptions,\n focusOptions,\n clickOptions,\n roleOptions,\n dismissOptions,\n}: PopoverOptions) => {\n const [uncontrolledOpen, setUncontrolledOpen] = React.useState(_open);\n\n const open = _open ?? uncontrolledOpen;\n const onOpenChange = _onOpenChange ?? setUncontrolledOpen;\n\n const data = useFloating({\n open,\n onOpenChange,\n placement,\n strategy,\n middleware: [\n offset(_offset),\n flip({ padding: 5, fallbackPlacements: [\"bottom\", \"top\"] }),\n shift({ padding: 12 }),\n ],\n whileElementsMounted: autoUpdate,\n });\n\n const context = data.context;\n\n const click = useClick(context, {\n enabled: false,\n ...clickOptions,\n });\n const hover = useHover(context, { enabled: false, ...hoverOptions });\n const focus = useFocus(context, { enabled: false, ...focusOptions });\n const dismiss = useDismiss(context, dismissOptions);\n const role = useRole(context, roleOptions);\n\n const interactions = useInteractions([click, dismiss, focus, hover, role]);\n\n React.useLayoutEffect(() => {\n if (positionReference) {\n data.refs.setPositionReference(positionReference?.current);\n }\n }, [positionReference, data.refs]);\n\n return React.useMemo(\n () => ({\n open,\n onOpenChange,\n modal,\n ...interactions,\n ...data,\n }),\n [open, onOpenChange, modal, interactions, data],\n );\n};\n\ntype PopoverContextType = ReturnType<typeof usePopover> | null;\n\nconst PopoverContext = React.createContext<PopoverContextType>(null);\n\nconst usePopoverContext = () => {\n const context = React.useContext(PopoverContext);\n\n if (context == null) {\n throw new Error(\n \"Popover komponenter må brukes innenfor en <Popover /> komponent\",\n );\n }\n\n return context;\n};\n\nexport const Popover = ({\n children,\n ...restOptions\n}: {\n children: React.ReactNode;\n} & PopoverOptions) => {\n const popover = usePopover({ ...restOptions });\n return (\n <PopoverContext.Provider value={popover}>\n {children}\n </PopoverContext.Provider>\n );\n};\n\ninterface PopoverTriggerProps {\n children: React.ReactNode;\n /**\n * Rendrer komponenten som child-elementet sitt, og slår sammen egenskaper og props.\n *\n * Default er `false`.\n *\n * @example\n * ```tsx\n * <Component asChild foo=\"bar\">\n * <Child baz=\"qux\" />\n * </Component>\n *\n * // Rendrer følgende:\n * <Child foo=\"bar\" baz=\"qux\" />\n * ```\n */\n asChild?: boolean;\n}\n\nconst PopoverTrigger = React.forwardRef<\n HTMLElement,\n React.HTMLProps<HTMLElement> & PopoverTriggerProps\n>(function PopoverTrigger({ children, asChild = false, ...props }, propRef) {\n const { refs, getReferenceProps, open, onOpenChange } = usePopoverContext();\n const childrenRef = (children as any).ref;\n const ref = useMergeRefs([refs.setReference, propRef, childrenRef]);\n\n if (asChild && React.isValidElement(children)) {\n return React.cloneElement(\n children,\n getReferenceProps({\n ref,\n ...props,\n ...children.props,\n }),\n );\n }\n\n return (\n <button\n ref={ref}\n onClick={() => onOpenChange?.(!open)}\n aria-expanded={open}\n {...getReferenceProps({\n ...props,\n className: clsx(\"jkl-popover-trigger\", props.className),\n })}\n >\n {children}\n </button>\n );\n});\n\ninterface PopoverContentProps {\n /**\n * Padding rundt innholdet i popoveren.\n *\n * Default er `0`.\n */\n padding?: 0 | 8 | 16 | 24;\n /**\n *\n * Angir hvilket element som skal motta fokus ved åpning.\n * Kan være en tabbar index eller en referanse til et element.\"\n *\n * Default er `0`, som betyr at det første fokuserbare elementet i popoveren får fokus.\n * @see https://floating-ui.com/docs/FloatingFocusManager#initialfocus\n */\n initialFocus?: number | React.RefObject<HTMLElement>;\n /**\n * Angir om fokus skal returneres til triggeren når popoveren lukkes.\n *\n * Default er `true`.\n * @see https://floating-ui.com/docs/FloatingFocusManager#returnfocus\n */\n returnFocus?: boolean;\n}\n\n// Er popover-elementet posisjonert i forhold til et annet element enn triggeren?\nconst isCustomPositioned = (\n referenceElement: ReferenceElement,\n): referenceElement is VirtualElement => {\n if (!referenceElement) return false;\n\n return \"contextElement\" in referenceElement;\n};\n\nconst PopoverContent = React.forwardRef<\n HTMLDivElement,\n React.HTMLProps<HTMLDivElement> & PopoverContentProps\n>(function PopoverContent(\n {\n style,\n className,\n padding = 0,\n initialFocus = 0,\n returnFocus = true,\n ...props\n },\n propRef,\n) {\n const { context, modal, refs, open, floatingStyles, getFloatingProps } =\n usePopoverContext();\n const ref = useMergeRefs([refs.setFloating, propRef]);\n\n const referenceElement = refs.reference.current as ReferenceElement;\n\n const { theme, size } = isCustomPositioned(referenceElement)\n ? getThemeAndSize(referenceElement.contextElement)\n : getThemeAndSize(referenceElement);\n\n const floatingPortalRef = React.useRef<HTMLElement | null>(null);\n\n // TODO: Løser et problem hvor nestede portaler ikke \"fester\" seg til det nærmeste portal-elementet. Fjernes når alle komponenter som rendres i en portal tar i bruk popover komponenten da den håndterer dette internt. Issue: https://github.com/fremtind/jokul/issues/4356\n React.useEffect(() => {\n floatingPortalRef.current =\n context.elements.domReference?.closest<HTMLElement>(\n \"[data-portal]\",\n ) || document.body;\n }, [context.elements.domReference]);\n\n if (!open) return null;\n\n return (\n <FloatingPortal root={floatingPortalRef.current}>\n <FloatingFocusManager\n context={context}\n modal={modal}\n initialFocus={initialFocus}\n returnFocus={returnFocus}\n >\n <div\n data-theme={theme}\n data-size={size}\n className={clsx(\"jkl jkl-popover\", className)}\n ref={ref}\n style={\n {\n ...style,\n ...floatingStyles,\n \"--popover-padding\": `var(--jkl-spacing-${padding})`,\n } as React.CSSProperties\n }\n {...getFloatingProps(props)}\n >\n {props.children}\n </div>\n </FloatingFocusManager>\n </FloatingPortal>\n );\n});\n\nPopover.Trigger = PopoverTrigger;\nPopover.Content = PopoverContent;\n\nexport default Popover;\n"],"names":["PopoverContext","React","createContext","usePopoverContext","context","useContext","Error","Popover","children","restOptions","popover","open","_open","onOpenChange","_onOpenChange","placement","strategy","modal","offset","_offset","positionReference","hoverOptions","focusOptions","clickOptions","roleOptions","dismissOptions","uncontrolledOpen","setUncontrolledOpen","useState","data","useFloating","middleware","flip","padding","fallbackPlacements","shift","whileElementsMounted","autoUpdate","click","useClick","enabled","hover","useHover","focus","useFocus","dismiss","useDismiss","role","useRole","interactions","useInteractions","useLayoutEffect","refs","setPositionReference","current","useMemo","usePopover","Provider","value","PopoverTrigger","forwardRef","asChild","props","propRef","getReferenceProps","childrenRef","ref","useMergeRefs","setReference","isValidElement","cloneElement","jsx","onClick","className","clsx","PopoverContent","style","initialFocus","returnFocus","floatingStyles","getFloatingProps","setFloating","referenceElement","reference","theme","size","getThemeAndSize","contextElement","floatingPortalRef","useRef","useEffect","elements","domReference","closest","document","body","FloatingPortal","root","FloatingFocusManager","Trigger","Content"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),a=require("../../../clsx-E3yX_9sL.cjs"),i=require("react"),t=require("../../hooks/useId/useId.cjs"),r=i.forwardRef((i,r)=>{const{id:l,className:n,checked:o,children:s,label:d,inline:u,invalid:c,name:j,value:b,onChange:k,...m}=i,h=t.useId(l||"jkl-radio-button",{generateSuffix:!l});return e.jsxs("div",{className:a.clsx("jkl-radio-button",n,{"jkl-radio-button--inline":u,"jkl-radio-button--error":c}),children:[e.jsx("label",{"data-testid":"jkl-radio-button__label-tag",htmlFor:h,className:"jkl-radio-button__label",children:d||s}),e.jsx("input",{name:j,ref:r,...m,id:h,className:"jkl-radio-button__input",type:"radio",onChange:k,value:b,checked:o,"aria-invalid":c||m["aria-invalid"]})]})});r.displayName="BaseRadioButton",exports.BaseRadioButton=r;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),a=require("../../../clsx-E3yX_9sL.cjs"),i=require("react"),t=require("../../hooks/useId/useId.cjs"),r=i.forwardRef((i,r)=>{const{id:l,className:n,checked:o,children:s,label:d,inline:u,invalid:c,name:j,value:b,onChange:k,...m}=i,h=t.useId(l||"jkl-radio-button",{generateSuffix:!l});return e.jsxs("div",{className:a.clsx("jkl-radio-button",n,{"jkl-radio-button--inline":u,"jkl-radio-button--error":c}),children:[e.jsx("input",{name:j,ref:r,...m,id:h,className:"jkl-radio-button__input",type:"radio",onChange:k,value:b,checked:o,"aria-invalid":c||m["aria-invalid"]}),e.jsx("label",{"data-testid":"jkl-radio-button__label-tag",htmlFor:h,className:"jkl-radio-button__label",children:d||s})]})});r.displayName="BaseRadioButton",exports.BaseRadioButton=r;
2
2
  //# sourceMappingURL=BaseRadioButton.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"BaseRadioButton.cjs","sources":["../../../../src/components/radio-button/BaseRadioButton.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { forwardRef } from \"react\";\nimport { useId } from \"../../hooks/useId/useId.js\";\nimport type { BaseRadioButtonProps } from \"./types.js\";\n\nexport const BaseRadioButton = forwardRef<\n HTMLInputElement,\n BaseRadioButtonProps\n>((props, ref) => {\n const {\n id,\n className,\n checked,\n children,\n label,\n inline,\n invalid,\n name,\n value,\n onChange,\n ...rest\n } = props;\n\n const inputId = useId(id || \"jkl-radio-button\", { generateSuffix: !id });\n\n return (\n <div\n className={clsx(\"jkl-radio-button\", className, {\n \"jkl-radio-button--inline\": inline,\n \"jkl-radio-button--error\": invalid,\n })}\n >\n <label\n data-testid=\"jkl-radio-button__label-tag\"\n htmlFor={inputId}\n className=\"jkl-radio-button__label\"\n >\n {label || children}\n </label>\n <input\n name={name}\n ref={ref}\n {...rest}\n id={inputId}\n className=\"jkl-radio-button__input\"\n type=\"radio\"\n onChange={onChange}\n value={value}\n checked={checked}\n aria-invalid={invalid || rest[\"aria-invalid\"]}\n />\n </div>\n );\n});\n\nBaseRadioButton.displayName = \"BaseRadioButton\";\n"],"names":["BaseRadioButton","forwardRef","props","ref","id","className","checked","children","label","inline","invalid","name","value","onChange","rest","inputId","useId","generateSuffix","jsxs","clsx","jsx","htmlFor","type","displayName"],"mappings":"yNAKaA,EAAkBC,EAAAA,WAG7B,CAACC,EAAOC,KACN,MACIC,GAAAA,EACAC,UAAAA,EACAC,QAAAA,EACAC,SAAAA,EACAC,MAAAA,EACAC,OAAAA,EACAC,QAAAA,EACAC,KAAAA,EACAC,MAAAA,EACAC,SAAAA,KACGC,GACHZ,EAEEa,EAAUC,EAAAA,MAAMZ,GAAM,mBAAoB,CAAEa,gBAAiBb,IAEnE,OACIc,EAAAA,KAAC,MAAA,CACGb,UAAWc,EAAAA,KAAK,mBAAoBd,EAAW,CAC3C,2BAA4BI,EAC5B,0BAA2BC,IAG/BH,SAAA,CAAAa,EAAAA,IAAC,QAAA,CACG,cAAY,8BACZC,QAASN,EACTV,UAAU,0BAETE,SAAAC,GAASD,IAEda,EAAAA,IAAC,QAAA,CACGT,KAAAA,EACAR,IAAAA,KACIW,EACJV,GAAIW,EACJV,UAAU,0BACViB,KAAK,QACLT,SAAAA,EACAD,MAAAA,EACAN,QAAAA,EACA,eAAcI,GAAWI,EAAK,uBAM9Cd,EAAgBuB,YAAc"}
1
+ {"version":3,"file":"BaseRadioButton.cjs","sources":["../../../../src/components/radio-button/BaseRadioButton.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { forwardRef } from \"react\";\nimport { useId } from \"../../hooks/useId/useId.js\";\nimport type { BaseRadioButtonProps } from \"./types.js\";\n\nexport const BaseRadioButton = forwardRef<\n HTMLInputElement,\n BaseRadioButtonProps\n>((props, ref) => {\n const {\n id,\n className,\n checked,\n children,\n label,\n inline,\n invalid,\n name,\n value,\n onChange,\n ...rest\n } = props;\n\n const inputId = useId(id || \"jkl-radio-button\", { generateSuffix: !id });\n\n return (\n <div\n className={clsx(\"jkl-radio-button\", className, {\n \"jkl-radio-button--inline\": inline,\n \"jkl-radio-button--error\": invalid,\n })}\n >\n <input\n name={name}\n ref={ref}\n {...rest}\n id={inputId}\n className=\"jkl-radio-button__input\"\n type=\"radio\"\n onChange={onChange}\n value={value}\n checked={checked}\n aria-invalid={invalid || rest[\"aria-invalid\"]}\n />\n <label\n data-testid=\"jkl-radio-button__label-tag\"\n htmlFor={inputId}\n className=\"jkl-radio-button__label\"\n >\n {label || children}\n </label>\n </div>\n );\n});\n\nBaseRadioButton.displayName = \"BaseRadioButton\";\n"],"names":["BaseRadioButton","forwardRef","props","ref","id","className","checked","children","label","inline","invalid","name","value","onChange","rest","inputId","useId","generateSuffix","jsxs","clsx","jsx","type","htmlFor","displayName"],"mappings":"yNAKaA,EAAkBC,EAAAA,WAG7B,CAACC,EAAOC,KACN,MACIC,GAAAA,EACAC,UAAAA,EACAC,QAAAA,EACAC,SAAAA,EACAC,MAAAA,EACAC,OAAAA,EACAC,QAAAA,EACAC,KAAAA,EACAC,MAAAA,EACAC,SAAAA,KACGC,GACHZ,EAEEa,EAAUC,EAAAA,MAAMZ,GAAM,mBAAoB,CAAEa,gBAAiBb,IAEnE,OACIc,EAAAA,KAAC,MAAA,CACGb,UAAWc,EAAAA,KAAK,mBAAoBd,EAAW,CAC3C,2BAA4BI,EAC5B,0BAA2BC,IAG/BH,SAAA,CAAAa,EAAAA,IAAC,QAAA,CACGT,KAAAA,EACAR,IAAAA,KACIW,EACJV,GAAIW,EACJV,UAAU,0BACVgB,KAAK,QACLR,SAAAA,EACAD,MAAAA,EACAN,QAAAA,EACA,eAAcI,GAAWI,EAAK,kBAElCM,EAAAA,IAAC,QAAA,CACG,cAAY,8BACZE,QAASP,EACTV,UAAU,0BAETE,SAAAC,GAASD,SAM1BP,EAAgBuB,YAAc"}
@@ -0,0 +1,2 @@
1
+ "use strict";module.exports={border:{width:{1:"0.0625rem",2:"0.125rem",3:"0.1875rem"},radius:{none:"0",xs:"0.25rem",s:"0.5rem",m:"0.75rem",l:"1rem",full:"9999px"}},breakpoint:{small:"0",medium:"680px",large:"1200px",xl:"1600px"},color:{brand:{snohvit:"#F9F9F9",varde:"#E0DBD4",granitt:"#1B1917",hvit:"#FFFFFF",svart:"#000000",skifer:"#313030",fjellgra:"#444141",stein:"#636060",svaberg:"#C8C5C3",dis:"#ECE9E5",sand:"#F4F2EF"},functional:{info:"#D3D3F6",infoDark:"#A9A9CA",success:"#ACD3B5",successDark:"#94B79B",warning:"#EFDD9E",warningDark:"#DECC8D",error:"#F6B3B3",errorDark:"#DE9E9E"},background:{page:{light:"#F4F2EF",dark:"#1B1917"},pageVariant:{light:"#F9F9F9",dark:"#1B1917"},container:{light:"#F9F9F9",dark:"#313030"},containerLow:{light:"#ECE9E5",dark:"#000000"},containerHigh:{light:"#FFFFFF",dark:"#313030"},containerInverted:{light:"#1B1917",dark:"#F9F9F9"},containerSubdued:{light:"#C8C5C3",dark:"#636060"},input:{base:{light:"transparent",dark:"transparent"},focus:{light:"#FFFFFF",dark:"#313030"}},action:{light:"#1B1917",dark:"#F9F9F9"},interactive:{light:"transparent",dark:"transparent"},interactiveHover:{light:"#ECE9E5",dark:"#444141"},interactiveSelected:{light:"#E0DBD4",dark:"#636060"},alert:{neutral:{light:"#E0DBD4",dark:"#E0DBD4"},info:{light:"#D3D3F6",dark:"#A9A9CA"},success:{light:"#ACD3B5",dark:"#94B79B"},warning:{light:"#EFDD9E",dark:"#DECC8D"},error:{light:"#F6B3B3",dark:"#DE9E9E"}}},text:{default:{light:"#1B1917",dark:"#F9F9F9"},subdued:{light:"#636060",dark:"#C8C5C3"},inverted:{light:"#F9F9F9",dark:"#1B1917"},onAction:{light:"#F9F9F9",dark:"#1B1917"},interactive:{light:"#1B1917",dark:"#F9F9F9"},interactiveHover:{light:"#636060",dark:"#C8C5C3"},onAlert:{light:"#1B1917",dark:"#1B1917"},onAlertSubdued:{light:"#444141",dark:"#444141"}},border:{action:{light:"#1B1917",dark:"#F9F9F9"},input:{light:"#636060",dark:"#C8C5C3"},inputFocus:{light:"#1B1917",dark:"#F9F9F9"},separator:{light:"#C8C5C3",dark:"#636060"},separatorStrong:{light:"#636060",dark:"#C8C5C3"},separatorHover:{light:"#1B1917",dark:"#F9F9F9"},subdued:{light:"#C8C5C3",dark:"#636060"}}},motion:{timing:{energetic:"75ms",snappy:"100ms",productive:"150ms",expressive:"250ms",lazy:"400ms"},easing:{standard:"ease",entrance:"ease-out",exit:"ease-in",easeInBounceOut:"cubic-bezier(0, 0, 0.375, 1.17)",focus:"cubic-bezier(0.6, 0.2, 0.35, 1)"}},spacing:{0:"0rem",2:"0.125rem",4:"0.25rem",8:"0.5rem",12:"0.75rem",16:"1rem",24:"1.5rem",32:"2rem",40:"2.5rem",64:"4rem",104:"6.5rem",168:"10.5rem"},semanticSpacing:{none:"0","2xs":"0.25rem",xs:"0.5rem",s:"1rem",m:"1.5rem",l:"2.5rem",xl:"4rem","2xl":"6.5rem"},icon:{weight:{normal:"300",bold:"400"}},typography:{weight:{normal:"400",bold:"700"},font:{weight:{normal:"400",bold:"700"},size:{1:"var(--jkl-font-size-1)",2:"var(--jkl-font-size-2)",3:"var(--jkl-font-size-3)",4:"var(--jkl-font-size-4)",5:"var(--jkl-font-size-5)",6:"var(--jkl-font-size-6)",7:"var(--jkl-font-size-7)",8:"var(--jkl-font-size-8)",9:"var(--jkl-font-size-9)",10:"var(--jkl-font-size-10)",16:"1rem",18:"1.125rem",20:"1.25rem",21:"1.3125rem",23:"1.4375rem",25:"1.5625rem",26:"1.625rem",28:"1.75rem",30:"1.875rem",36:"2.25rem",44:"2.75rem",56:"3.5rem"}},line:{height:{24:"1.5rem",28:"1.75rem",32:"2rem",36:"2.25rem",40:"2.5rem",44:"2.75rem",52:"3.25rem",64:"4rem",flush:"var(--jkl-line-height-flush)",tight:"var(--jkl-line-height-tight)",relaxed:"var(--jkl-line-height-relaxed)"}},style:{title:{small:{fontSize:"var(--jkl-font-size-8)",lineHeight:"var(--jkl-line-height-tight)",fontWeight:"400"},base:{fontSize:"var(--jkl-font-size-8)",lineHeight:"var(--jkl-line-height-tight)",fontWeight:"400"}},titleSmall:{small:{fontSize:"var(--jkl-font-size-7)",lineHeight:"var(--jkl-line-height-tight)",fontWeight:"400"},base:{fontSize:"var(--jkl-font-size-7)",lineHeight:"var(--jkl-line-height-tight)",fontWeight:"400"}},heading_1:{small:{fontSize:"var(--jkl-font-size-8)",lineHeight:"var(--jkl-line-height-tight)",fontWeight:"400"},base:{fontSize:"var(--jkl-font-size-8)",lineHeight:"var(--jkl-line-height-tight)",fontWeight:"400"}},heading_2:{small:{fontSize:"var(--jkl-font-size-7)",lineHeight:"var(--jkl-line-height-tight)",fontWeight:"400"},base:{fontSize:"var(--jkl-font-size-7)",lineHeight:"var(--jkl-line-height-tight)",fontWeight:"400"}},heading_3:{small:{fontSize:"var(--jkl-font-size-6)",lineHeight:"var(--jkl-line-height-tight)",fontWeight:"700"},base:{fontSize:"var(--jkl-font-size-6)",lineHeight:"var(--jkl-line-height-tight)",fontWeight:"700"}},heading_4:{small:{fontSize:"var(--jkl-font-size-5)",lineHeight:"var(--jkl-line-height-tight)",fontWeight:"700"},base:{fontSize:"var(--jkl-font-size-5)",lineHeight:"var(--jkl-line-height-tight)",fontWeight:"700"}},heading_5:{small:{fontSize:"var(--jkl-font-size-4)",lineHeight:"var(--jkl-line-height-tight)",fontWeight:"700"},base:{fontSize:"var(--jkl-font-size-4)",lineHeight:"var(--jkl-line-height-tight)",fontWeight:"700"}},paragraphLarge:{small:{fontSize:"var(--jkl-font-size-5)",lineHeight:"var(--jkl-line-height-relaxed)",fontWeight:"400"},base:{fontSize:"var(--jkl-font-size-5)",lineHeight:"var(--jkl-line-height-relaxed)",fontWeight:"400"}},paragraphMedium:{small:{fontSize:"var(--jkl-font-size-3)",lineHeight:"var(--jkl-line-height-relaxed)",fontWeight:"400"},base:{fontSize:"var(--jkl-font-size-3)",lineHeight:"var(--jkl-line-height-relaxed)",fontWeight:"400"}},paragraphSmall:{small:{fontSize:"var(--jkl-font-size-2)",lineHeight:"var(--jkl-line-height-relaxed)",fontWeight:"400"},base:{fontSize:"var(--jkl-font-size-2)",lineHeight:"var(--jkl-line-height-relaxed)",fontWeight:"400"}},textLarge:{small:{fontSize:"var(--jkl-font-size-5)",lineHeight:"var(--jkl-line-height-tight)",fontWeight:"400"},base:{fontSize:"var(--jkl-font-size-5)",lineHeight:"var(--jkl-line-height-tight)",fontWeight:"400"}},textMedium:{small:{fontSize:"var(--jkl-font-size-3)",lineHeight:"var(--jkl-line-height-tight)",fontWeight:"400"},base:{fontSize:"var(--jkl-font-size-3)",lineHeight:"var(--jkl-line-height-tight)",fontWeight:"400"}},textSmall:{small:{fontSize:"var(--jkl-font-size-2)",lineHeight:"var(--jkl-line-height-tight)",fontWeight:"400"},base:{fontSize:"var(--jkl-font-size-2)",lineHeight:"var(--jkl-line-height-tight)",fontWeight:"400"}},textMicro:{small:{fontSize:"var(--jkl-font-size-1)",lineHeight:"var(--jkl-line-height-tight)",fontWeight:"400"},base:{fontSize:"var(--jkl-font-size-1)",lineHeight:"var(--jkl-line-height-tight)",fontWeight:"400"}},body:{small:{fontSize:"1.125rem",lineHeight:"1.75rem",fontWeight:"400"},base:{fontSize:"1.25rem",lineHeight:"2rem",fontWeight:"400"}},small:{small:{fontSize:"1rem",lineHeight:"1.5rem",fontWeight:"400"},base:{fontSize:"1rem",lineHeight:"1.5rem",fontWeight:"400"}}},title:{small:{fontSize:"2.25rem",lineHeight:"2.75rem",fontWeight:"400"},base:{fontSize:"3.5rem",lineHeight:"4rem",fontWeight:"400"}},titleSmall:{small:{fontSize:"1.875rem",lineHeight:"2.25rem",fontWeight:"400"},base:{fontSize:"2.75rem",lineHeight:"3.25rem",fontWeight:"400"}},heading_1:{small:{fontSize:"1.625rem",lineHeight:"2rem",fontWeight:"400"},base:{fontSize:"2.25rem",lineHeight:"2.75rem",fontWeight:"400"}},heading_2:{small:{fontSize:"1.4375rem",lineHeight:"2rem",fontWeight:"400"},base:{fontSize:"1.75rem",lineHeight:"2.5rem",fontWeight:"400"}},heading_3:{small:{fontSize:"1.3125rem",lineHeight:"1.75rem",fontWeight:"700"},base:{fontSize:"1.5625rem",lineHeight:"2rem",fontWeight:"700"}},heading_4:{small:{fontSize:"1.125rem",lineHeight:"1.5rem",fontWeight:"700"},base:{fontSize:"1.3125rem",lineHeight:"1.75rem",fontWeight:"700"}},heading_5:{small:{fontSize:"1rem",lineHeight:"1.5rem",fontWeight:"700"},base:{fontSize:"1rem",lineHeight:"1.5rem",fontWeight:"700"}},body:{small:{fontSize:"1.125rem",lineHeight:"1.75rem",fontWeight:"400"},base:{fontSize:"1.25rem",lineHeight:"2rem",fontWeight:"400"}},small:{small:{fontSize:"1rem",lineHeight:"1.5rem",fontWeight:"400"},base:{fontSize:"1rem",lineHeight:"1.5rem",fontWeight:"400"}}}};
2
+ //# sourceMappingURL=tokens.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokens.cjs","sources":["../../../src/core/tokens.ts"],"sourcesContent":["/**\n * Do not edit directly, this file was auto-generated.\n */\n\nexport default {\"border\":{\"width\":{\"1\":\"0.0625rem\",\"2\":\"0.125rem\",\"3\":\"0.1875rem\"},\"radius\":{\"none\":\"0\",\"xs\":\"0.25rem\",\"s\":\"0.5rem\",\"m\":\"0.75rem\",\"l\":\"1rem\",\"full\":\"9999px\"}},\"breakpoint\":{\"small\":\"0\",\"medium\":\"680px\",\"large\":\"1200px\",\"xl\":\"1600px\"},\"color\":{\"brand\":{\"snohvit\":\"#F9F9F9\",\"varde\":\"#E0DBD4\",\"granitt\":\"#1B1917\",\"hvit\":\"#FFFFFF\",\"svart\":\"#000000\",\"skifer\":\"#313030\",\"fjellgra\":\"#444141\",\"stein\":\"#636060\",\"svaberg\":\"#C8C5C3\",\"dis\":\"#ECE9E5\",\"sand\":\"#F4F2EF\"},\"functional\":{\"info\":\"#D3D3F6\",\"infoDark\":\"#A9A9CA\",\"success\":\"#ACD3B5\",\"successDark\":\"#94B79B\",\"warning\":\"#EFDD9E\",\"warningDark\":\"#DECC8D\",\"error\":\"#F6B3B3\",\"errorDark\":\"#DE9E9E\"},\"background\":{\"page\":{\"light\":\"#F4F2EF\",\"dark\":\"#1B1917\"},\"pageVariant\":{\"light\":\"#F9F9F9\",\"dark\":\"#1B1917\"},\"container\":{\"light\":\"#F9F9F9\",\"dark\":\"#313030\"},\"containerLow\":{\"light\":\"#ECE9E5\",\"dark\":\"#000000\"},\"containerHigh\":{\"light\":\"#FFFFFF\",\"dark\":\"#313030\"},\"containerInverted\":{\"light\":\"#1B1917\",\"dark\":\"#F9F9F9\"},\"containerSubdued\":{\"light\":\"#C8C5C3\",\"dark\":\"#636060\"},\"input\":{\"base\":{\"light\":\"transparent\",\"dark\":\"transparent\"},\"focus\":{\"light\":\"#FFFFFF\",\"dark\":\"#313030\"}},\"action\":{\"light\":\"#1B1917\",\"dark\":\"#F9F9F9\"},\"interactive\":{\"light\":\"transparent\",\"dark\":\"transparent\"},\"interactiveHover\":{\"light\":\"#ECE9E5\",\"dark\":\"#444141\"},\"interactiveSelected\":{\"light\":\"#E0DBD4\",\"dark\":\"#636060\"},\"alert\":{\"neutral\":{\"light\":\"#E0DBD4\",\"dark\":\"#E0DBD4\"},\"info\":{\"light\":\"#D3D3F6\",\"dark\":\"#A9A9CA\"},\"success\":{\"light\":\"#ACD3B5\",\"dark\":\"#94B79B\"},\"warning\":{\"light\":\"#EFDD9E\",\"dark\":\"#DECC8D\"},\"error\":{\"light\":\"#F6B3B3\",\"dark\":\"#DE9E9E\"}}},\"text\":{\"default\":{\"light\":\"#1B1917\",\"dark\":\"#F9F9F9\"},\"subdued\":{\"light\":\"#636060\",\"dark\":\"#C8C5C3\"},\"inverted\":{\"light\":\"#F9F9F9\",\"dark\":\"#1B1917\"},\"onAction\":{\"light\":\"#F9F9F9\",\"dark\":\"#1B1917\"},\"interactive\":{\"light\":\"#1B1917\",\"dark\":\"#F9F9F9\"},\"interactiveHover\":{\"light\":\"#636060\",\"dark\":\"#C8C5C3\"},\"onAlert\":{\"light\":\"#1B1917\",\"dark\":\"#1B1917\"},\"onAlertSubdued\":{\"light\":\"#444141\",\"dark\":\"#444141\"}},\"border\":{\"action\":{\"light\":\"#1B1917\",\"dark\":\"#F9F9F9\"},\"input\":{\"light\":\"#636060\",\"dark\":\"#C8C5C3\"},\"inputFocus\":{\"light\":\"#1B1917\",\"dark\":\"#F9F9F9\"},\"separator\":{\"light\":\"#C8C5C3\",\"dark\":\"#636060\"},\"separatorStrong\":{\"light\":\"#636060\",\"dark\":\"#C8C5C3\"},\"separatorHover\":{\"light\":\"#1B1917\",\"dark\":\"#F9F9F9\"},\"subdued\":{\"light\":\"#C8C5C3\",\"dark\":\"#636060\"}}},\"motion\":{\"timing\":{\"energetic\":\"75ms\",\"snappy\":\"100ms\",\"productive\":\"150ms\",\"expressive\":\"250ms\",\"lazy\":\"400ms\"},\"easing\":{\"standard\":\"ease\",\"entrance\":\"ease-out\",\"exit\":\"ease-in\",\"easeInBounceOut\":\"cubic-bezier(0, 0, 0.375, 1.17)\",\"focus\":\"cubic-bezier(0.6, 0.2, 0.35, 1)\"}},\"spacing\":{\"0\":\"0rem\",\"2\":\"0.125rem\",\"4\":\"0.25rem\",\"8\":\"0.5rem\",\"12\":\"0.75rem\",\"16\":\"1rem\",\"24\":\"1.5rem\",\"32\":\"2rem\",\"40\":\"2.5rem\",\"64\":\"4rem\",\"104\":\"6.5rem\",\"168\":\"10.5rem\"},\"semanticSpacing\":{\"none\":\"0\",\"2xs\":\"0.25rem\",\"xs\":\"0.5rem\",\"s\":\"1rem\",\"m\":\"1.5rem\",\"l\":\"2.5rem\",\"xl\":\"4rem\",\"2xl\":\"6.5rem\"},\"icon\":{\"weight\":{\"normal\":\"300\",\"bold\":\"400\"}},\"typography\":{\"weight\":{\"normal\":\"400\",\"bold\":\"700\"},\"font\":{\"weight\":{\"normal\":\"400\",\"bold\":\"700\"},\"size\":{\"1\":\"var(--jkl-font-size-1)\",\"2\":\"var(--jkl-font-size-2)\",\"3\":\"var(--jkl-font-size-3)\",\"4\":\"var(--jkl-font-size-4)\",\"5\":\"var(--jkl-font-size-5)\",\"6\":\"var(--jkl-font-size-6)\",\"7\":\"var(--jkl-font-size-7)\",\"8\":\"var(--jkl-font-size-8)\",\"9\":\"var(--jkl-font-size-9)\",\"10\":\"var(--jkl-font-size-10)\",\"16\":\"1rem\",\"18\":\"1.125rem\",\"20\":\"1.25rem\",\"21\":\"1.3125rem\",\"23\":\"1.4375rem\",\"25\":\"1.5625rem\",\"26\":\"1.625rem\",\"28\":\"1.75rem\",\"30\":\"1.875rem\",\"36\":\"2.25rem\",\"44\":\"2.75rem\",\"56\":\"3.5rem\"}},\"line\":{\"height\":{\"24\":\"1.5rem\",\"28\":\"1.75rem\",\"32\":\"2rem\",\"36\":\"2.25rem\",\"40\":\"2.5rem\",\"44\":\"2.75rem\",\"52\":\"3.25rem\",\"64\":\"4rem\",\"flush\":\"var(--jkl-line-height-flush)\",\"tight\":\"var(--jkl-line-height-tight)\",\"relaxed\":\"var(--jkl-line-height-relaxed)\"}},\"style\":{\"title\":{\"small\":{\"fontSize\":\"var(--jkl-font-size-8)\",\"lineHeight\":\"var(--jkl-line-height-tight)\",\"fontWeight\":\"400\"},\"base\":{\"fontSize\":\"var(--jkl-font-size-8)\",\"lineHeight\":\"var(--jkl-line-height-tight)\",\"fontWeight\":\"400\"}},\"titleSmall\":{\"small\":{\"fontSize\":\"var(--jkl-font-size-7)\",\"lineHeight\":\"var(--jkl-line-height-tight)\",\"fontWeight\":\"400\"},\"base\":{\"fontSize\":\"var(--jkl-font-size-7)\",\"lineHeight\":\"var(--jkl-line-height-tight)\",\"fontWeight\":\"400\"}},\"heading_1\":{\"small\":{\"fontSize\":\"var(--jkl-font-size-8)\",\"lineHeight\":\"var(--jkl-line-height-tight)\",\"fontWeight\":\"400\"},\"base\":{\"fontSize\":\"var(--jkl-font-size-8)\",\"lineHeight\":\"var(--jkl-line-height-tight)\",\"fontWeight\":\"400\"}},\"heading_2\":{\"small\":{\"fontSize\":\"var(--jkl-font-size-7)\",\"lineHeight\":\"var(--jkl-line-height-tight)\",\"fontWeight\":\"400\"},\"base\":{\"fontSize\":\"var(--jkl-font-size-7)\",\"lineHeight\":\"var(--jkl-line-height-tight)\",\"fontWeight\":\"400\"}},\"heading_3\":{\"small\":{\"fontSize\":\"var(--jkl-font-size-6)\",\"lineHeight\":\"var(--jkl-line-height-tight)\",\"fontWeight\":\"700\"},\"base\":{\"fontSize\":\"var(--jkl-font-size-6)\",\"lineHeight\":\"var(--jkl-line-height-tight)\",\"fontWeight\":\"700\"}},\"heading_4\":{\"small\":{\"fontSize\":\"var(--jkl-font-size-5)\",\"lineHeight\":\"var(--jkl-line-height-tight)\",\"fontWeight\":\"700\"},\"base\":{\"fontSize\":\"var(--jkl-font-size-5)\",\"lineHeight\":\"var(--jkl-line-height-tight)\",\"fontWeight\":\"700\"}},\"heading_5\":{\"small\":{\"fontSize\":\"var(--jkl-font-size-4)\",\"lineHeight\":\"var(--jkl-line-height-tight)\",\"fontWeight\":\"700\"},\"base\":{\"fontSize\":\"var(--jkl-font-size-4)\",\"lineHeight\":\"var(--jkl-line-height-tight)\",\"fontWeight\":\"700\"}},\"paragraphLarge\":{\"small\":{\"fontSize\":\"var(--jkl-font-size-5)\",\"lineHeight\":\"var(--jkl-line-height-relaxed)\",\"fontWeight\":\"400\"},\"base\":{\"fontSize\":\"var(--jkl-font-size-5)\",\"lineHeight\":\"var(--jkl-line-height-relaxed)\",\"fontWeight\":\"400\"}},\"paragraphMedium\":{\"small\":{\"fontSize\":\"var(--jkl-font-size-3)\",\"lineHeight\":\"var(--jkl-line-height-relaxed)\",\"fontWeight\":\"400\"},\"base\":{\"fontSize\":\"var(--jkl-font-size-3)\",\"lineHeight\":\"var(--jkl-line-height-relaxed)\",\"fontWeight\":\"400\"}},\"paragraphSmall\":{\"small\":{\"fontSize\":\"var(--jkl-font-size-2)\",\"lineHeight\":\"var(--jkl-line-height-relaxed)\",\"fontWeight\":\"400\"},\"base\":{\"fontSize\":\"var(--jkl-font-size-2)\",\"lineHeight\":\"var(--jkl-line-height-relaxed)\",\"fontWeight\":\"400\"}},\"textLarge\":{\"small\":{\"fontSize\":\"var(--jkl-font-size-5)\",\"lineHeight\":\"var(--jkl-line-height-tight)\",\"fontWeight\":\"400\"},\"base\":{\"fontSize\":\"var(--jkl-font-size-5)\",\"lineHeight\":\"var(--jkl-line-height-tight)\",\"fontWeight\":\"400\"}},\"textMedium\":{\"small\":{\"fontSize\":\"var(--jkl-font-size-3)\",\"lineHeight\":\"var(--jkl-line-height-tight)\",\"fontWeight\":\"400\"},\"base\":{\"fontSize\":\"var(--jkl-font-size-3)\",\"lineHeight\":\"var(--jkl-line-height-tight)\",\"fontWeight\":\"400\"}},\"textSmall\":{\"small\":{\"fontSize\":\"var(--jkl-font-size-2)\",\"lineHeight\":\"var(--jkl-line-height-tight)\",\"fontWeight\":\"400\"},\"base\":{\"fontSize\":\"var(--jkl-font-size-2)\",\"lineHeight\":\"var(--jkl-line-height-tight)\",\"fontWeight\":\"400\"}},\"textMicro\":{\"small\":{\"fontSize\":\"var(--jkl-font-size-1)\",\"lineHeight\":\"var(--jkl-line-height-tight)\",\"fontWeight\":\"400\"},\"base\":{\"fontSize\":\"var(--jkl-font-size-1)\",\"lineHeight\":\"var(--jkl-line-height-tight)\",\"fontWeight\":\"400\"}},\"body\":{\"small\":{\"fontSize\":\"1.125rem\",\"lineHeight\":\"1.75rem\",\"fontWeight\":\"400\"},\"base\":{\"fontSize\":\"1.25rem\",\"lineHeight\":\"2rem\",\"fontWeight\":\"400\"}},\"small\":{\"small\":{\"fontSize\":\"1rem\",\"lineHeight\":\"1.5rem\",\"fontWeight\":\"400\"},\"base\":{\"fontSize\":\"1rem\",\"lineHeight\":\"1.5rem\",\"fontWeight\":\"400\"}}},\"title\":{\"small\":{\"fontSize\":\"2.25rem\",\"lineHeight\":\"2.75rem\",\"fontWeight\":\"400\"},\"base\":{\"fontSize\":\"3.5rem\",\"lineHeight\":\"4rem\",\"fontWeight\":\"400\"}},\"titleSmall\":{\"small\":{\"fontSize\":\"1.875rem\",\"lineHeight\":\"2.25rem\",\"fontWeight\":\"400\"},\"base\":{\"fontSize\":\"2.75rem\",\"lineHeight\":\"3.25rem\",\"fontWeight\":\"400\"}},\"heading_1\":{\"small\":{\"fontSize\":\"1.625rem\",\"lineHeight\":\"2rem\",\"fontWeight\":\"400\"},\"base\":{\"fontSize\":\"2.25rem\",\"lineHeight\":\"2.75rem\",\"fontWeight\":\"400\"}},\"heading_2\":{\"small\":{\"fontSize\":\"1.4375rem\",\"lineHeight\":\"2rem\",\"fontWeight\":\"400\"},\"base\":{\"fontSize\":\"1.75rem\",\"lineHeight\":\"2.5rem\",\"fontWeight\":\"400\"}},\"heading_3\":{\"small\":{\"fontSize\":\"1.3125rem\",\"lineHeight\":\"1.75rem\",\"fontWeight\":\"700\"},\"base\":{\"fontSize\":\"1.5625rem\",\"lineHeight\":\"2rem\",\"fontWeight\":\"700\"}},\"heading_4\":{\"small\":{\"fontSize\":\"1.125rem\",\"lineHeight\":\"1.5rem\",\"fontWeight\":\"700\"},\"base\":{\"fontSize\":\"1.3125rem\",\"lineHeight\":\"1.75rem\",\"fontWeight\":\"700\"}},\"heading_5\":{\"small\":{\"fontSize\":\"1rem\",\"lineHeight\":\"1.5rem\",\"fontWeight\":\"700\"},\"base\":{\"fontSize\":\"1rem\",\"lineHeight\":\"1.5rem\",\"fontWeight\":\"700\"}},\"body\":{\"small\":{\"fontSize\":\"1.125rem\",\"lineHeight\":\"1.75rem\",\"fontWeight\":\"400\"},\"base\":{\"fontSize\":\"1.25rem\",\"lineHeight\":\"2rem\",\"fontWeight\":\"400\"}},\"small\":{\"small\":{\"fontSize\":\"1rem\",\"lineHeight\":\"1.5rem\",\"fontWeight\":\"400\"},\"base\":{\"fontSize\":\"1rem\",\"lineHeight\":\"1.5rem\",\"fontWeight\":\"400\"}}}};\n"],"names":["border","width","radius","none","xs","s","m","l","full","breakpoint","small","medium","large","xl","color","brand","snohvit","varde","granitt","hvit","svart","skifer","fjellgra","stein","svaberg","dis","sand","functional","info","infoDark","success","successDark","warning","warningDark","error","errorDark","background","page","light","dark","pageVariant","container","containerLow","containerHigh","containerInverted","containerSubdued","input","base","focus","action","interactive","interactiveHover","interactiveSelected","alert","neutral","text","default","subdued","inverted","onAction","onAlert","onAlertSubdued","inputFocus","separator","separatorStrong","separatorHover","motion","timing","energetic","snappy","productive","expressive","lazy","easing","standard","entrance","exit","easeInBounceOut","spacing","semanticSpacing","icon","weight","normal","bold","typography","font","size","line","height","flush","tight","relaxed","style","title","fontSize","lineHeight","fontWeight","titleSmall","heading_1","heading_2","heading_3","heading_4","heading_5","paragraphLarge","paragraphMedium","paragraphSmall","textLarge","textMedium","textSmall","textMicro","body"],"mappings":"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"}