@fremtind/jokul 1.4.0 → 1.5.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 (258) hide show
  1. package/build/build-stats.html +1 -1
  2. package/build/cjs/components/button/Button.cjs.map +1 -1
  3. package/build/cjs/components/button/Button.d.cts +12 -0
  4. package/build/cjs/components/button/types.cjs.map +1 -1
  5. package/build/cjs/components/button/types.d.cts +1 -1
  6. package/build/cjs/components/card/CardImage.cjs.map +1 -1
  7. package/build/cjs/components/card/CardImage.d.cts +2 -1
  8. package/build/cjs/components/cookie-consent/CookieConsent.cjs +1 -1
  9. package/build/cjs/components/cookie-consent/CookieConsent.cjs.map +1 -1
  10. package/build/cjs/components/feedback/questions/SmileyQuestion.cjs +1 -1
  11. package/build/cjs/components/feedback/questions/SmileyQuestion.cjs.map +1 -1
  12. package/build/cjs/components/icon-button/IconButton.cjs.map +1 -1
  13. package/build/cjs/components/icon-button/IconButton.d.cts +3 -0
  14. package/build/cjs/core/tokens/style-dictionary/build.cjs +2 -0
  15. package/build/cjs/core/tokens/style-dictionary/build.cjs.map +1 -0
  16. package/build/cjs/core/tokens/style-dictionary/build.d.cts +0 -0
  17. package/build/cjs/core/tokens/style-dictionary/config.cjs +2 -0
  18. package/build/cjs/core/tokens/style-dictionary/config.cjs.map +1 -0
  19. package/build/cjs/core/tokens/style-dictionary/config.d.cts +4 -0
  20. package/build/cjs/core/tokens/style-dictionary/filters/index.cjs +2 -0
  21. package/build/cjs/core/tokens/style-dictionary/filters/index.cjs.map +1 -0
  22. package/build/cjs/core/tokens/style-dictionary/filters/index.d.cts +3 -0
  23. package/build/cjs/core/tokens/style-dictionary/formats/css-dynamic-color-variables.cjs +2 -0
  24. package/build/cjs/core/tokens/style-dictionary/formats/css-dynamic-color-variables.cjs.map +1 -0
  25. package/build/cjs/core/tokens/style-dictionary/formats/css-dynamic-color-variables.d.cts +3 -0
  26. package/build/cjs/core/tokens/style-dictionary/formats/css-theme-variables.cjs +2 -0
  27. package/build/cjs/core/tokens/style-dictionary/formats/css-theme-variables.cjs.map +1 -0
  28. package/build/cjs/core/tokens/style-dictionary/formats/css-theme-variables.d.cts +3 -0
  29. package/build/cjs/core/tokens/style-dictionary/formats/index.cjs +2 -0
  30. package/build/cjs/core/tokens/style-dictionary/formats/index.cjs.map +1 -0
  31. package/build/cjs/core/tokens/style-dictionary/formats/index.d.cts +6 -0
  32. package/build/cjs/core/tokens/style-dictionary/formats/javascript-esm.cjs +2 -0
  33. package/build/cjs/core/tokens/style-dictionary/formats/javascript-esm.cjs.map +1 -0
  34. package/build/cjs/core/tokens/style-dictionary/formats/javascript-esm.d.cts +3 -0
  35. package/build/cjs/core/tokens/style-dictionary/formats/scss-theme-variables.cjs +2 -0
  36. package/build/cjs/core/tokens/style-dictionary/formats/scss-theme-variables.cjs.map +1 -0
  37. package/build/cjs/core/tokens/style-dictionary/formats/scss-theme-variables.d.cts +3 -0
  38. package/build/cjs/core/tokens/style-dictionary/formats/tailwindcss-colors.cjs +2 -0
  39. package/build/cjs/core/tokens/style-dictionary/formats/tailwindcss-colors.cjs.map +1 -0
  40. package/build/cjs/core/tokens/style-dictionary/formats/tailwindcss-colors.d.cts +3 -0
  41. package/build/cjs/core/tokens/style-dictionary/register.cjs +2 -0
  42. package/build/cjs/core/tokens/style-dictionary/register.cjs.map +1 -0
  43. package/build/cjs/core/tokens/style-dictionary/register.d.cts +1 -0
  44. package/build/cjs/core/tokens/style-dictionary/transforms/index.cjs +2 -0
  45. package/build/cjs/core/tokens/style-dictionary/transforms/index.cjs.map +1 -0
  46. package/build/cjs/core/tokens/style-dictionary/transforms/index.d.cts +2 -0
  47. package/build/cjs/core/tokens/style-dictionary/transforms/strip-light-dark.cjs +2 -0
  48. package/build/cjs/core/tokens/style-dictionary/transforms/strip-light-dark.cjs.map +1 -0
  49. package/build/cjs/core/tokens/style-dictionary/transforms/strip-light-dark.d.cts +3 -0
  50. package/build/cjs/core/tokens.cjs +1 -1
  51. package/build/cjs/core/tokens.cjs.map +1 -1
  52. package/build/cjs/core/tokens.d.cts +15 -52
  53. package/build/cjs/tailwind/colors.cjs.map +1 -1
  54. package/build/cjs/tailwind/colors.d.cts +1 -2
  55. package/build/es/components/button/Button.d.ts +12 -0
  56. package/build/es/components/button/Button.js.map +1 -1
  57. package/build/es/components/button/types.d.ts +1 -1
  58. package/build/es/components/button/types.js.map +1 -1
  59. package/build/es/components/card/CardImage.d.ts +2 -1
  60. package/build/es/components/card/CardImage.js.map +1 -1
  61. package/build/es/components/cookie-consent/CookieConsent.js +1 -1
  62. package/build/es/components/cookie-consent/CookieConsent.js.map +1 -1
  63. package/build/es/components/feedback/questions/SmileyQuestion.js +1 -1
  64. package/build/es/components/feedback/questions/SmileyQuestion.js.map +1 -1
  65. package/build/es/components/icon-button/IconButton.d.ts +3 -0
  66. package/build/es/components/icon-button/IconButton.js.map +1 -1
  67. package/build/es/core/tokens/style-dictionary/build.d.ts +0 -0
  68. package/build/es/core/tokens/style-dictionary/build.js +2 -0
  69. package/build/es/core/tokens/style-dictionary/build.js.map +1 -0
  70. package/build/es/core/tokens/style-dictionary/config.d.ts +4 -0
  71. package/build/es/core/tokens/style-dictionary/config.js +2 -0
  72. package/build/es/core/tokens/style-dictionary/config.js.map +1 -0
  73. package/build/es/core/tokens/style-dictionary/filters/index.d.ts +3 -0
  74. package/build/es/core/tokens/style-dictionary/filters/index.js +2 -0
  75. package/build/es/core/tokens/style-dictionary/filters/index.js.map +1 -0
  76. package/build/es/core/tokens/style-dictionary/formats/css-dynamic-color-variables.d.ts +3 -0
  77. package/build/es/core/tokens/style-dictionary/formats/css-dynamic-color-variables.js +2 -0
  78. package/build/es/core/tokens/style-dictionary/formats/css-dynamic-color-variables.js.map +1 -0
  79. package/build/es/core/tokens/style-dictionary/formats/css-theme-variables.d.ts +3 -0
  80. package/build/es/core/tokens/style-dictionary/formats/css-theme-variables.js +2 -0
  81. package/build/es/core/tokens/style-dictionary/formats/css-theme-variables.js.map +1 -0
  82. package/build/es/core/tokens/style-dictionary/formats/index.d.ts +6 -0
  83. package/build/es/core/tokens/style-dictionary/formats/index.js +2 -0
  84. package/build/es/core/tokens/style-dictionary/formats/index.js.map +1 -0
  85. package/build/es/core/tokens/style-dictionary/formats/javascript-esm.d.ts +3 -0
  86. package/build/es/core/tokens/style-dictionary/formats/javascript-esm.js +2 -0
  87. package/build/es/core/tokens/style-dictionary/formats/javascript-esm.js.map +1 -0
  88. package/build/es/core/tokens/style-dictionary/formats/scss-theme-variables.d.ts +3 -0
  89. package/build/es/core/tokens/style-dictionary/formats/scss-theme-variables.js +2 -0
  90. package/build/es/core/tokens/style-dictionary/formats/scss-theme-variables.js.map +1 -0
  91. package/build/es/core/tokens/style-dictionary/formats/tailwindcss-colors.d.ts +3 -0
  92. package/build/es/core/tokens/style-dictionary/formats/tailwindcss-colors.js +2 -0
  93. package/build/es/core/tokens/style-dictionary/formats/tailwindcss-colors.js.map +1 -0
  94. package/build/es/core/tokens/style-dictionary/register.d.ts +1 -0
  95. package/build/es/core/tokens/style-dictionary/register.js +2 -0
  96. package/build/es/core/tokens/style-dictionary/register.js.map +1 -0
  97. package/build/es/core/tokens/style-dictionary/transforms/index.d.ts +2 -0
  98. package/build/es/core/tokens/style-dictionary/transforms/index.js +2 -0
  99. package/build/es/core/tokens/style-dictionary/transforms/index.js.map +1 -0
  100. package/build/es/core/tokens/style-dictionary/transforms/strip-light-dark.d.ts +3 -0
  101. package/build/es/core/tokens/style-dictionary/transforms/strip-light-dark.js +2 -0
  102. package/build/es/core/tokens/style-dictionary/transforms/strip-light-dark.js.map +1 -0
  103. package/build/es/core/tokens.d.ts +15 -52
  104. package/build/es/core/tokens.js +1 -1
  105. package/build/es/core/tokens.js.map +1 -1
  106. package/build/es/tailwind/colors.d.ts +1 -2
  107. package/build/es/tailwind/colors.js.map +1 -1
  108. package/package.json +3 -2
  109. package/styles/components/autosuggest/autosuggest.css +8 -6
  110. package/styles/components/breadcrumb/breadcrumb.css +4 -2
  111. package/styles/components/button/button.css +7 -2
  112. package/styles/components/button/button.min.css +1 -1
  113. package/styles/components/button/button.scss +4 -0
  114. package/styles/components/card/card.css +8 -5
  115. package/styles/components/card/card.min.css +1 -1
  116. package/styles/components/card/card.scss +6 -4
  117. package/styles/components/checkbox/checkbox.css +181 -179
  118. package/styles/components/checkbox/checkbox.min.css +1 -1
  119. package/styles/components/checkbox/checkbox.scss +189 -180
  120. package/styles/components/checkbox-panel/checkbox-panel.css +60 -54
  121. package/styles/components/checkbox-panel/checkbox-panel.min.css +3 -1
  122. package/styles/components/checkbox-panel/checkbox-panel.scss +58 -54
  123. package/styles/components/checkbox-panel/development/styles.css +4 -2
  124. package/styles/components/chip/chip.css +4 -2
  125. package/styles/components/combobox/combobox.css +6 -4
  126. package/styles/components/cookie-consent/cookie-consent.css +4 -2
  127. package/styles/components/countdown/countdown.css +34 -31
  128. package/styles/components/countdown/countdown.min.css +1 -1
  129. package/styles/components/countdown/countdown.scss +14 -12
  130. package/styles/components/datepicker/datepicker.css +8 -6
  131. package/styles/components/description-list/description-list.css +38 -34
  132. package/styles/components/description-list/description-list.min.css +1 -1
  133. package/styles/components/description-list/description-list.scss +18 -16
  134. package/styles/components/expander/expandable.css +4 -2
  135. package/styles/components/feedback/feedback.css +6 -4
  136. package/styles/components/feedback/feedback.min.css +1 -1
  137. package/styles/components/file/file.css +4 -2
  138. package/styles/components/file-input/file-input.css +217 -215
  139. package/styles/components/file-input/file-input.min.css +1 -1
  140. package/styles/components/help/help.css +4 -14
  141. package/styles/components/help/help.min.css +1 -1
  142. package/styles/components/help/help.scss +1 -16
  143. package/styles/components/icon/icon.css +128 -130
  144. package/styles/components/icon/icon.min.css +1 -1
  145. package/styles/components/icon/icon.scss +96 -92
  146. package/styles/components/icon-button/icon-button.css +51 -47
  147. package/styles/components/icon-button/icon-button.min.css +1 -1
  148. package/styles/components/icon-button/icon-button.scss +26 -24
  149. package/styles/components/image/image.css +31 -27
  150. package/styles/components/image/image.min.css +1 -1
  151. package/styles/components/image/image.scss +27 -25
  152. package/styles/components/input-group/input-group.css +6 -4
  153. package/styles/components/input-group/input-group.min.css +1 -1
  154. package/styles/components/link/link.css +4 -2
  155. package/styles/components/link-list/link-list.css +4 -2
  156. package/styles/components/list/list.css +66 -62
  157. package/styles/components/list/list.min.css +1 -1
  158. package/styles/components/list/list.scss +69 -67
  159. package/styles/components/loader/loader.css +98 -95
  160. package/styles/components/loader/loader.min.css +1 -1
  161. package/styles/components/loader/loader.scss +91 -88
  162. package/styles/components/loader/skeleton-loader.css +119 -121
  163. package/styles/components/loader/skeleton-loader.min.css +1 -1
  164. package/styles/components/loader/skeleton-loader.scss +128 -126
  165. package/styles/components/logo/logo.css +83 -83
  166. package/styles/components/logo/logo.min.css +1 -1
  167. package/styles/components/logo/logo.scss +71 -67
  168. package/styles/components/menu/_menu-divider.scss +7 -5
  169. package/styles/components/menu/_menu-item.scss +55 -53
  170. package/styles/components/menu/menu.css +121 -119
  171. package/styles/components/menu/menu.min.css +1 -1
  172. package/styles/components/menu/menu.scss +28 -24
  173. package/styles/components/message/message.css +6 -4
  174. package/styles/components/message/message.min.css +1 -1
  175. package/styles/components/modal/modal.css +104 -108
  176. package/styles/components/modal/modal.min.css +1 -1
  177. package/styles/components/modal/modal.scss +82 -79
  178. package/styles/components/nav-link/nav-link.css +66 -62
  179. package/styles/components/nav-link/nav-link.min.css +1 -1
  180. package/styles/components/nav-link/nav-link.scss +48 -46
  181. package/styles/components/pagination/development/styles.css +4 -2
  182. package/styles/components/pagination/pagination.css +4 -2
  183. package/styles/components/popover/popover.css +23 -21
  184. package/styles/components/popover/popover.min.css +1 -1
  185. package/styles/components/popover/popover.scss +14 -12
  186. package/styles/components/progress-bar/progress-bar.css +35 -32
  187. package/styles/components/progress-bar/progress-bar.min.css +1 -1
  188. package/styles/components/progress-bar/progress-bar.scss +16 -14
  189. package/styles/components/radio-button/radio-button.css +6 -4
  190. package/styles/components/radio-button/radio-button.min.css +1 -1
  191. package/styles/components/radio-panel/development/styles.css +4 -2
  192. package/styles/components/radio-panel/radio-panel.css +60 -56
  193. package/styles/components/radio-panel/radio-panel.min.css +1 -1
  194. package/styles/components/radio-panel/radio-panel.scss +55 -54
  195. package/styles/components/segmented-control/segmented-control.css +133 -136
  196. package/styles/components/segmented-control/segmented-control.min.css +1 -1
  197. package/styles/components/segmented-control/segmented-control.scss +1 -1
  198. package/styles/components/select/select.css +4 -2
  199. package/styles/components/summary-table/development/summary-table-example.css +4 -2
  200. package/styles/components/summary-table/summary-table.css +56 -54
  201. package/styles/components/summary-table/summary-table.min.css +1 -1
  202. package/styles/components/summary-table/summary-table.scss +44 -42
  203. package/styles/components/system-message/system-message.css +6 -4
  204. package/styles/components/system-message/system-message.min.css +1 -1
  205. package/styles/components/table/table.css +4 -2
  206. package/styles/components/tabs/tabs.css +125 -128
  207. package/styles/components/tabs/tabs.min.css +1 -1
  208. package/styles/components/tabs/tabs.scss +90 -93
  209. package/styles/components/tag/tag.css +4 -2
  210. package/styles/components/text-area/text-area.css +4 -2
  211. package/styles/components/text-input/text-input.css +4 -2
  212. package/styles/components/toast/toast.css +8 -6
  213. package/styles/components/toast/toast.min.css +1 -1
  214. package/styles/components/toggle-switch/toggle-switch.css +14 -12
  215. package/styles/components/tooltip/tooltip.css +4 -2
  216. package/styles/core/_layers.scss +3 -0
  217. package/styles/core/core.css +1568 -1434
  218. package/styles/core/core.min.css +2 -1
  219. package/styles/core/core.scss +5 -76
  220. package/styles/core/global/_base-class.scss +27 -0
  221. package/styles/core/global/_index.scss +2 -0
  222. package/styles/core/global/_top-layer.scss +20 -0
  223. package/styles/core/jkl/_index.scss +1 -1
  224. package/styles/core/jkl/_legacy-tokens.scss +152 -5
  225. package/styles/core/jkl/_tokens.scss +36 -152
  226. package/styles/core/jkl/_typography.scss +1 -0
  227. package/styles/core/resets/_index.scss +2 -0
  228. package/styles/core/resets/_normalize.scss +251 -0
  229. package/styles/core/resets/_reset.scss +68 -0
  230. package/styles/core/theme/_color-tokens.scss +73 -0
  231. package/styles/core/theme/_dynamic-spacing.scss +55 -0
  232. package/styles/core/theme/_index.scss +8 -0
  233. package/styles/core/theme/_legacy-color-tokens.scss +81 -0
  234. package/styles/core/theme/_legacy-tokens.scss +150 -0
  235. package/styles/core/theme/_old-vars.scss +30 -0
  236. package/styles/core/theme/_spacing-tokens.scss +30 -0
  237. package/styles/core/theme/_tokens.scss +30 -0
  238. package/styles/core/theme/_typography.scss +27 -0
  239. package/styles/core/utility/_headings.scss +31 -0
  240. package/styles/core/utility/_index.scss +4 -0
  241. package/styles/core/utility/_paragraphs.scss +18 -0
  242. package/styles/core/utility/_screen-reader.scss +11 -0
  243. package/styles/core/utility/_spacing.scss +49 -0
  244. package/styles/shared/input/shared-input-styles.css +4 -2
  245. package/styles/shared/input-panel/shared.css +4 -2
  246. package/styles/shared/track/track.css +4 -2
  247. package/styles/styles.css +1448 -1471
  248. package/styles/styles.min.css +3 -1
  249. package/styles/core/_color-tokens.scss +0 -78
  250. package/styles/core/_headings.scss +0 -29
  251. package/styles/core/_index.scss +0 -9
  252. package/styles/core/_legacy-tokens.scss +0 -38
  253. package/styles/core/_normalize.scss +0 -250
  254. package/styles/core/_paragraphs.scss +0 -16
  255. package/styles/core/_reset.scss +0 -66
  256. package/styles/core/_screen-reader.scss +0 -9
  257. package/styles/core/_spacing.scss +0 -86
  258. package/styles/core/_tokens.scss +0 -129
@@ -1,2 +1,2 @@
1
- "use strict";module.exports={breakpoint:{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"}},svart:"#000",granitt:"#1b1917",skifer:"#313030",fjellgra:"#444141",stein:"#636060",svaberg:"#c8c5c3",varde:"#e0dbd4",dis:"#ece9e5",sand:"#f4f2ef",snohvit:"#f9f9f9",hvit:"#fff",suksess:"#acd3b5",suksessDark:"#94b79b",feil:"#f6b3b3",feilDark:"#de9e9e",info:"#d3d3f6",infoDark:"#a9a9ca",advarsel:"#efdd9e",advarselDark:"#decc8d"},spacing:{0:"0",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"},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)"}},icon:{weight:{normal:"300",bold:"500"}},typography:{weight:{normal:"400",bold:"700"},font:{size:{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"}},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"}}},unit:{10:"0.5rem",15:"calc(var(--jkl-unit-10) * 1.5)",20:"calc(var(--jkl-unit-10) * 2)",25:"calc(var(--jkl-unit-10) * 2.5)",30:"calc(var(--jkl-unit-10) * 3)",40:"calc(var(--jkl-unit-10) * 4)",50:"calc(var(--jkl-unit-10) * 5)",60:"calc(var(--jkl-unit-10) * 6)",70:"calc(var(--jkl-unit-10) * 7)",80:"calc(var(--jkl-unit-10) * 8)",90:"calc(var(--jkl-unit-10) * 9)",130:"calc(var(--jkl-unit-10) * 13)",210:"calc(var(--jkl-unit-10) * 21)","02":"calc(var(--jkl-unit-10) * .25)","05":"calc(var(--jkl-unit-10) * .5)"}};
1
+ "use strict";module.exports={breakpoint:{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"},icon:{weight:{normal:"300",bold:"400"}},typography:{weight:{normal:"400",bold:"700"},font:{size:{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"}},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
2
  //# sourceMappingURL=tokens.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.cjs","sources":["../../../src/core/tokens.ts"],"sourcesContent":["/**\n * Do not edit directly\n * Generated on Wed, 18 Dec 2024 12:25:37 GMT\n */\n\nexport default {\n breakpoint: {\n medium: \"680px\",\n large: \"1200px\",\n xl: \"1600px\",\n },\n color: {\n brand: {\n snohvit: \"#F9F9F9\",\n varde: \"#E0DBD4\",\n granitt: \"#1B1917\",\n hvit: \"#FFFFFF\",\n svart: \"#000000\",\n skifer: \"#313030\",\n fjellgra: \"#444141\",\n stein: \"#636060\",\n svaberg: \"#C8C5C3\",\n dis: \"#ECE9E5\",\n sand: \"#F4F2EF\",\n },\n functional: {\n info: \"#D3D3F6\",\n infoDark: \"#A9A9CA\",\n success: \"#ACD3B5\",\n successDark: \"#94B79B\",\n warning: \"#EFDD9E\",\n warningDark: \"#DECC8D\",\n error: \"#F6B3B3\",\n errorDark: \"#DE9E9E\",\n },\n background: {\n page: {\n light: \"#F4F2EF\",\n dark: \"#1B1917\",\n },\n pageVariant: {\n light: \"#F9F9F9\",\n dark: \"#1B1917\",\n },\n container: {\n light: \"#F9F9F9\",\n dark: \"#313030\",\n },\n containerLow: {\n light: \"#ECE9E5\",\n dark: \"#000000\",\n },\n containerHigh: {\n light: \"#FFFFFF\",\n dark: \"#313030\",\n },\n containerInverted: {\n light: \"#1B1917\",\n dark: \"#F9F9F9\",\n },\n containerSubdued: {\n light: \"#C8C5C3\",\n dark: \"#636060\",\n },\n input: {\n base: {\n light: \"transparent\",\n dark: \"transparent\",\n },\n focus: {\n light: \"#FFFFFF\",\n dark: \"#313030\",\n },\n },\n action: {\n light: \"#1B1917\",\n dark: \"#F9F9F9\",\n },\n interactive: {\n light: \"transparent\",\n dark: \"transparent\",\n },\n interactiveHover: {\n light: \"#ECE9E5\",\n dark: \"#444141\",\n },\n interactiveSelected: {\n light: \"#E0DBD4\",\n dark: \"#636060\",\n },\n alert: {\n neutral: {\n light: \"#E0DBD4\",\n dark: \"#E0DBD4\",\n },\n info: {\n light: \"#D3D3F6\",\n dark: \"#A9A9CA\",\n },\n success: {\n light: \"#ACD3B5\",\n dark: \"#94B79B\",\n },\n warning: {\n light: \"#EFDD9E\",\n dark: \"#DECC8D\",\n },\n error: {\n light: \"#F6B3B3\",\n dark: \"#DE9E9E\",\n },\n },\n },\n text: {\n default: {\n light: \"#1B1917\",\n dark: \"#F9F9F9\",\n },\n subdued: {\n light: \"#636060\",\n dark: \"#C8C5C3\",\n },\n inverted: {\n light: \"#F9F9F9\",\n dark: \"#1B1917\",\n },\n onAction: {\n light: \"#F9F9F9\",\n dark: \"#1B1917\",\n },\n interactive: {\n light: \"#1B1917\",\n dark: \"#F9F9F9\",\n },\n interactiveHover: {\n light: \"#636060\",\n dark: \"#C8C5C3\",\n },\n onAlert: {\n light: \"#1B1917\",\n dark: \"#1B1917\",\n },\n onAlertSubdued: {\n light: \"#444141\",\n dark: \"#444141\",\n },\n },\n border: {\n action: {\n light: \"#1B1917\",\n dark: \"#F9F9F9\",\n },\n input: {\n light: \"#636060\",\n dark: \"#C8C5C3\",\n },\n inputFocus: {\n light: \"#1B1917\",\n dark: \"#F9F9F9\",\n },\n separator: {\n light: \"#C8C5C3\",\n dark: \"#636060\",\n },\n separatorStrong: {\n light: \"#636060\",\n dark: \"#C8C5C3\",\n },\n separatorHover: {\n light: \"#1B1917\",\n dark: \"#F9F9F9\",\n },\n subdued: {\n light: \"#C8C5C3\",\n dark: \"#636060\",\n },\n },\n svart: \"#000\",\n granitt: \"#1b1917\",\n skifer: \"#313030\",\n fjellgra: \"#444141\",\n stein: \"#636060\",\n svaberg: \"#c8c5c3\",\n varde: \"#e0dbd4\",\n dis: \"#ece9e5\",\n sand: \"#f4f2ef\",\n snohvit: \"#f9f9f9\",\n hvit: \"#fff\",\n suksess: \"#acd3b5\",\n suksessDark: \"#94b79b\",\n feil: \"#f6b3b3\",\n feilDark: \"#de9e9e\",\n info: \"#d3d3f6\",\n infoDark: \"#a9a9ca\",\n advarsel: \"#efdd9e\",\n advarselDark: \"#decc8d\",\n },\n spacing: {\n 0: \"0\",\n 2: \"0.125rem\",\n 4: \"0.25rem\",\n 8: \"0.5rem\",\n 12: \"0.75rem\",\n 16: \"1rem\",\n 24: \"1.5rem\",\n 32: \"2rem\",\n 40: \"2.5rem\",\n 64: \"4rem\",\n 104: \"6.5rem\",\n 168: \"10.5rem\",\n },\n motion: {\n timing: {\n energetic: \"75ms\",\n snappy: \"100ms\",\n productive: \"150ms\",\n expressive: \"250ms\",\n lazy: \"400ms\",\n },\n easing: {\n standard: \"ease\",\n entrance: \"ease-out\",\n exit: \"ease-in\",\n easeInBounceOut: \"cubic-bezier(0, 0, 0.375, 1.17)\",\n focus: \"cubic-bezier(0.6, 0.2, 0.35, 1)\",\n },\n },\n icon: {\n weight: {\n normal: \"300\",\n bold: \"500\",\n },\n },\n typography: {\n weight: {\n normal: \"400\",\n bold: \"700\",\n },\n font: {\n size: {\n 16: \"1rem\",\n 18: \"1.125rem\",\n 20: \"1.25rem\",\n 21: \"1.3125rem\",\n 23: \"1.4375rem\",\n 25: \"1.5625rem\",\n 26: \"1.625rem\",\n 28: \"1.75rem\",\n 30: \"1.875rem\",\n 36: \"2.25rem\",\n 44: \"2.75rem\",\n 56: \"3.5rem\",\n },\n },\n line: {\n height: {\n 24: \"1.5rem\",\n 28: \"1.75rem\",\n 32: \"2rem\",\n 36: \"2.25rem\",\n 40: \"2.5rem\",\n 44: \"2.75rem\",\n 52: \"3.25rem\",\n 64: \"4rem\",\n },\n },\n title: {\n small: {\n fontSize: \"2.25rem\",\n lineHeight: \"2.75rem\",\n fontWeight: \"400\",\n },\n base: {\n fontSize: \"3.5rem\",\n lineHeight: \"4rem\",\n fontWeight: \"400\",\n },\n },\n titleSmall: {\n small: {\n fontSize: \"1.875rem\",\n lineHeight: \"2.25rem\",\n fontWeight: \"400\",\n },\n base: {\n fontSize: \"2.75rem\",\n lineHeight: \"3.25rem\",\n fontWeight: \"400\",\n },\n },\n heading_1: {\n small: {\n fontSize: \"1.625rem\",\n lineHeight: \"2rem\",\n fontWeight: \"400\",\n },\n base: {\n fontSize: \"2.25rem\",\n lineHeight: \"2.75rem\",\n fontWeight: \"400\",\n },\n },\n heading_2: {\n small: {\n fontSize: \"1.4375rem\",\n lineHeight: \"2rem\",\n fontWeight: \"400\",\n },\n base: {\n fontSize: \"1.75rem\",\n lineHeight: \"2.5rem\",\n fontWeight: \"400\",\n },\n },\n heading_3: {\n small: {\n fontSize: \"1.3125rem\",\n lineHeight: \"1.75rem\",\n fontWeight: \"700\",\n },\n base: {\n fontSize: \"1.5625rem\",\n lineHeight: \"2rem\",\n fontWeight: \"700\",\n },\n },\n heading_4: {\n small: {\n fontSize: \"1.125rem\",\n lineHeight: \"1.5rem\",\n fontWeight: \"700\",\n },\n base: {\n fontSize: \"1.3125rem\",\n lineHeight: \"1.75rem\",\n fontWeight: \"700\",\n },\n },\n heading_5: {\n small: {\n fontSize: \"1rem\",\n lineHeight: \"1.5rem\",\n fontWeight: \"700\",\n },\n base: {\n fontSize: \"1rem\",\n lineHeight: \"1.5rem\",\n fontWeight: \"700\",\n },\n },\n body: {\n small: {\n fontSize: \"1.125rem\",\n lineHeight: \"1.75rem\",\n fontWeight: \"400\",\n },\n base: {\n fontSize: \"1.25rem\",\n lineHeight: \"2rem\",\n fontWeight: \"400\",\n },\n },\n small: {\n small: {\n fontSize: \"1rem\",\n lineHeight: \"1.5rem\",\n fontWeight: \"400\",\n },\n base: {\n fontSize: \"1rem\",\n lineHeight: \"1.5rem\",\n fontWeight: \"400\",\n },\n },\n },\n unit: {\n 10: \"0.5rem\",\n 15: \"calc(var(--jkl-unit-10) * 1.5)\",\n 20: \"calc(var(--jkl-unit-10) * 2)\",\n 25: \"calc(var(--jkl-unit-10) * 2.5)\",\n 30: \"calc(var(--jkl-unit-10) * 3)\",\n 40: \"calc(var(--jkl-unit-10) * 4)\",\n 50: \"calc(var(--jkl-unit-10) * 5)\",\n 60: \"calc(var(--jkl-unit-10) * 6)\",\n 70: \"calc(var(--jkl-unit-10) * 7)\",\n 80: \"calc(var(--jkl-unit-10) * 8)\",\n 90: \"calc(var(--jkl-unit-10) * 9)\",\n 130: \"calc(var(--jkl-unit-10) * 13)\",\n 210: \"calc(var(--jkl-unit-10) * 21)\",\n \"02\": \"calc(var(--jkl-unit-10) * .25)\",\n \"05\": \"calc(var(--jkl-unit-10) * .5)\",\n },\n};\n"],"names":["breakpoint","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","border","inputFocus","separator","separatorStrong","separatorHover","suksess","suksessDark","feil","feilDark","advarsel","advarselDark","spacing","motion","timing","energetic","snappy","productive","expressive","lazy","easing","standard","entrance","exit","easeInBounceOut","icon","weight","normal","bold","typography","font","size","line","height","title","small","fontSize","lineHeight","fontWeight","titleSmall","heading_1","heading_2","heading_3","heading_4","heading_5","body","unit"],"mappings":"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"}
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 {\n breakpoint: { medium: \"680px\", large: \"1200px\", xl: \"1600px\" },\n color: {\n brand: {\n snohvit: \"#F9F9F9\",\n varde: \"#E0DBD4\",\n granitt: \"#1B1917\",\n hvit: \"#FFFFFF\",\n svart: \"#000000\",\n skifer: \"#313030\",\n fjellgra: \"#444141\",\n stein: \"#636060\",\n svaberg: \"#C8C5C3\",\n dis: \"#ECE9E5\",\n sand: \"#F4F2EF\",\n },\n functional: {\n info: \"#D3D3F6\",\n infoDark: \"#A9A9CA\",\n success: \"#ACD3B5\",\n successDark: \"#94B79B\",\n warning: \"#EFDD9E\",\n warningDark: \"#DECC8D\",\n error: \"#F6B3B3\",\n errorDark: \"#DE9E9E\",\n },\n background: {\n page: { light: \"#F4F2EF\", dark: \"#1B1917\" },\n pageVariant: { light: \"#F9F9F9\", dark: \"#1B1917\" },\n container: { light: \"#F9F9F9\", dark: \"#313030\" },\n containerLow: { light: \"#ECE9E5\", dark: \"#000000\" },\n containerHigh: { light: \"#FFFFFF\", dark: \"#313030\" },\n containerInverted: { light: \"#1B1917\", dark: \"#F9F9F9\" },\n containerSubdued: { light: \"#C8C5C3\", dark: \"#636060\" },\n input: {\n base: { light: \"transparent\", dark: \"transparent\" },\n focus: { light: \"#FFFFFF\", dark: \"#313030\" },\n },\n action: { light: \"#1B1917\", dark: \"#F9F9F9\" },\n interactive: { light: \"transparent\", dark: \"transparent\" },\n interactiveHover: { light: \"#ECE9E5\", dark: \"#444141\" },\n interactiveSelected: { light: \"#E0DBD4\", dark: \"#636060\" },\n alert: {\n neutral: { light: \"#E0DBD4\", dark: \"#E0DBD4\" },\n info: { light: \"#D3D3F6\", dark: \"#A9A9CA\" },\n success: { light: \"#ACD3B5\", dark: \"#94B79B\" },\n warning: { light: \"#EFDD9E\", dark: \"#DECC8D\" },\n error: { light: \"#F6B3B3\", dark: \"#DE9E9E\" },\n },\n },\n text: {\n default: { light: \"#1B1917\", dark: \"#F9F9F9\" },\n subdued: { light: \"#636060\", dark: \"#C8C5C3\" },\n inverted: { light: \"#F9F9F9\", dark: \"#1B1917\" },\n onAction: { light: \"#F9F9F9\", dark: \"#1B1917\" },\n interactive: { light: \"#1B1917\", dark: \"#F9F9F9\" },\n interactiveHover: { light: \"#636060\", dark: \"#C8C5C3\" },\n onAlert: { light: \"#1B1917\", dark: \"#1B1917\" },\n onAlertSubdued: { light: \"#444141\", dark: \"#444141\" },\n },\n border: {\n action: { light: \"#1B1917\", dark: \"#F9F9F9\" },\n input: { light: \"#636060\", dark: \"#C8C5C3\" },\n inputFocus: { light: \"#1B1917\", dark: \"#F9F9F9\" },\n separator: { light: \"#C8C5C3\", dark: \"#636060\" },\n separatorStrong: { light: \"#636060\", dark: \"#C8C5C3\" },\n separatorHover: { light: \"#1B1917\", dark: \"#F9F9F9\" },\n subdued: { light: \"#C8C5C3\", dark: \"#636060\" },\n },\n },\n motion: {\n timing: { energetic: \"75ms\", snappy: \"100ms\", productive: \"150ms\", expressive: \"250ms\", lazy: \"400ms\" },\n easing: {\n standard: \"ease\",\n entrance: \"ease-out\",\n exit: \"ease-in\",\n easeInBounceOut: \"cubic-bezier(0, 0, 0.375, 1.17)\",\n focus: \"cubic-bezier(0.6, 0.2, 0.35, 1)\",\n },\n },\n spacing: {\n 0: \"0rem\",\n 2: \"0.125rem\",\n 4: \"0.25rem\",\n 8: \"0.5rem\",\n 12: \"0.75rem\",\n 16: \"1rem\",\n 24: \"1.5rem\",\n 32: \"2rem\",\n 40: \"2.5rem\",\n 64: \"4rem\",\n 104: \"6.5rem\",\n 168: \"10.5rem\",\n },\n icon: { weight: { normal: \"300\", bold: \"400\" } },\n typography: {\n weight: { normal: \"400\", bold: \"700\" },\n font: {\n size: {\n 16: \"1rem\",\n 18: \"1.125rem\",\n 20: \"1.25rem\",\n 21: \"1.3125rem\",\n 23: \"1.4375rem\",\n 25: \"1.5625rem\",\n 26: \"1.625rem\",\n 28: \"1.75rem\",\n 30: \"1.875rem\",\n 36: \"2.25rem\",\n 44: \"2.75rem\",\n 56: \"3.5rem\",\n },\n },\n line: {\n height: {\n 24: \"1.5rem\",\n 28: \"1.75rem\",\n 32: \"2rem\",\n 36: \"2.25rem\",\n 40: \"2.5rem\",\n 44: \"2.75rem\",\n 52: \"3.25rem\",\n 64: \"4rem\",\n },\n },\n title: {\n small: { fontSize: \"2.25rem\", lineHeight: \"2.75rem\", fontWeight: \"400\" },\n base: { fontSize: \"3.5rem\", lineHeight: \"4rem\", fontWeight: \"400\" },\n },\n titleSmall: {\n small: { fontSize: \"1.875rem\", lineHeight: \"2.25rem\", fontWeight: \"400\" },\n base: { fontSize: \"2.75rem\", lineHeight: \"3.25rem\", fontWeight: \"400\" },\n },\n heading_1: {\n small: { fontSize: \"1.625rem\", lineHeight: \"2rem\", fontWeight: \"400\" },\n base: { fontSize: \"2.25rem\", lineHeight: \"2.75rem\", fontWeight: \"400\" },\n },\n heading_2: {\n small: { fontSize: \"1.4375rem\", lineHeight: \"2rem\", fontWeight: \"400\" },\n base: { fontSize: \"1.75rem\", lineHeight: \"2.5rem\", fontWeight: \"400\" },\n },\n heading_3: {\n small: { fontSize: \"1.3125rem\", lineHeight: \"1.75rem\", fontWeight: \"700\" },\n base: { fontSize: \"1.5625rem\", lineHeight: \"2rem\", fontWeight: \"700\" },\n },\n heading_4: {\n small: { fontSize: \"1.125rem\", lineHeight: \"1.5rem\", fontWeight: \"700\" },\n base: { fontSize: \"1.3125rem\", lineHeight: \"1.75rem\", fontWeight: \"700\" },\n },\n heading_5: {\n small: { fontSize: \"1rem\", lineHeight: \"1.5rem\", fontWeight: \"700\" },\n base: { fontSize: \"1rem\", lineHeight: \"1.5rem\", fontWeight: \"700\" },\n },\n body: {\n small: { fontSize: \"1.125rem\", lineHeight: \"1.75rem\", fontWeight: \"400\" },\n base: { fontSize: \"1.25rem\", lineHeight: \"2rem\", fontWeight: \"400\" },\n },\n small: {\n small: { fontSize: \"1rem\", lineHeight: \"1.5rem\", fontWeight: \"400\" },\n base: { fontSize: \"1rem\", lineHeight: \"1.5rem\", fontWeight: \"400\" },\n },\n },\n};\n"],"names":["breakpoint","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","border","inputFocus","separator","separatorStrong","separatorHover","motion","timing","energetic","snappy","productive","expressive","lazy","easing","standard","entrance","exit","easeInBounceOut","spacing","icon","weight","normal","bold","typography","font","size","line","height","title","small","fontSize","lineHeight","fontWeight","titleSmall","heading_1","heading_2","heading_3","heading_4","heading_5","body"],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  /**
2
- * Do not edit directly
3
- * Generated on Wed, 18 Dec 2024 12:25:37 GMT
2
+ * Do not edit directly, this file was auto-generated.
4
3
  */
5
4
  declare const _default: {
6
5
  breakpoint: {
@@ -174,39 +173,6 @@ declare const _default: {
174
173
  dark: string;
175
174
  };
176
175
  };
177
- svart: string;
178
- granitt: string;
179
- skifer: string;
180
- fjellgra: string;
181
- stein: string;
182
- svaberg: string;
183
- varde: string;
184
- dis: string;
185
- sand: string;
186
- snohvit: string;
187
- hvit: string;
188
- suksess: string;
189
- suksessDark: string;
190
- feil: string;
191
- feilDark: string;
192
- info: string;
193
- infoDark: string;
194
- advarsel: string;
195
- advarselDark: string;
196
- };
197
- spacing: {
198
- 0: string;
199
- 2: string;
200
- 4: string;
201
- 8: string;
202
- 12: string;
203
- 16: string;
204
- 24: string;
205
- 32: string;
206
- 40: string;
207
- 64: string;
208
- 104: string;
209
- 168: string;
210
176
  };
211
177
  motion: {
212
178
  timing: {
@@ -224,6 +190,20 @@ declare const _default: {
224
190
  focus: string;
225
191
  };
226
192
  };
193
+ spacing: {
194
+ 0: string;
195
+ 2: string;
196
+ 4: string;
197
+ 8: string;
198
+ 12: string;
199
+ 16: string;
200
+ 24: string;
201
+ 32: string;
202
+ 40: string;
203
+ 64: string;
204
+ 104: string;
205
+ 168: string;
206
+ };
227
207
  icon: {
228
208
  weight: {
229
209
  normal: string;
@@ -372,22 +352,5 @@ declare const _default: {
372
352
  };
373
353
  };
374
354
  };
375
- unit: {
376
- 10: string;
377
- 15: string;
378
- 20: string;
379
- 25: string;
380
- 30: string;
381
- 40: string;
382
- 50: string;
383
- 60: string;
384
- 70: string;
385
- 80: string;
386
- 90: string;
387
- 130: string;
388
- 210: string;
389
- "02": string;
390
- "05": string;
391
- };
392
355
  };
393
356
  export default _default;
@@ -1 +1 @@
1
- {"version":3,"file":"colors.cjs","sources":["../../../src/tailwind/colors.ts"],"sourcesContent":["/**\n * Do not edit directly\n * Generated on Thu, 09 Jan 2025 11:10:44 GMT\n */\n\nconst colors = {\n \"background-page\": \"var(--jkl-color-background-page)\",\n \"background-page-variant\": \"var(--jkl-color-background-page-variant)\",\n \"background-container\": \"var(--jkl-color-background-container)\",\n \"background-container-low\": \"var(--jkl-color-background-container-low)\",\n \"background-container-high\": \"var(--jkl-color-background-container-high)\",\n \"background-container-inverted\":\n \"var(--jkl-color-background-container-inverted)\",\n \"background-container-subdued\":\n \"var(--jkl-color-background-container-subdued)\",\n \"background-input-base\": \"var(--jkl-color-background-input-base)\",\n \"background-input-focus\": \"var(--jkl-color-background-input-focus)\",\n \"background-action\": \"var(--jkl-color-background-action)\",\n \"background-interactive\": \"var(--jkl-color-background-interactive)\",\n \"background-interactive-hover\":\n \"var(--jkl-color-background-interactive-hover)\",\n \"background-interactive-selected\":\n \"var(--jkl-color-background-interactive-selected)\",\n \"background-alert-neutral\": \"var(--jkl-color-background-alert-neutral)\",\n \"background-alert-info\": \"var(--jkl-color-background-alert-info)\",\n \"background-alert-success\": \"var(--jkl-color-background-alert-success)\",\n \"background-alert-warning\": \"var(--jkl-color-background-alert-warning)\",\n \"background-alert-error\": \"var(--jkl-color-background-alert-error)\",\n \"text-default\": \"var(--jkl-color-text-default)\",\n \"text-subdued\": \"var(--jkl-color-text-subdued)\",\n \"text-inverted\": \"var(--jkl-color-text-inverted)\",\n \"text-on-action\": \"var(--jkl-color-text-on-action)\",\n \"text-interactive\": \"var(--jkl-color-text-interactive)\",\n \"text-interactive-hover\": \"var(--jkl-color-text-interactive-hover)\",\n \"text-on-alert\": \"var(--jkl-color-text-on-alert)\",\n \"text-on-alert-subdued\": \"var(--jkl-color-text-on-alert-subdued)\",\n \"border-action\": \"var(--jkl-color-border-action)\",\n \"border-input\": \"var(--jkl-color-border-input)\",\n \"border-input-focus\": \"var(--jkl-color-border-input-focus)\",\n \"border-separator\": \"var(--jkl-color-border-separator)\",\n \"border-separator-strong\": \"var(--jkl-color-border-separator-strong)\",\n \"border-separator-hover\": \"var(--jkl-color-border-separator-hover)\",\n \"border-subdued\": \"var(--jkl-color-border-subdued)\",\n};\n\nexport default colors;\n"],"names":[],"mappings":"AAKA,4BAAe,CACX,kBAAmB,mCACnB,0BAA2B,2CAC3B,uBAAwB,wCACxB,2BAA4B,4CAC5B,4BAA6B,6CAC7B,gCACI,iDACJ,+BACI,gDACJ,wBAAyB,yCACzB,yBAA0B,0CAC1B,oBAAqB,qCACrB,yBAA0B,0CAC1B,+BACI,gDACJ,kCACI,mDACJ,2BAA4B,4CAC5B,wBAAyB,yCACzB,2BAA4B,4CAC5B,2BAA4B,4CAC5B,yBAA0B,0CAC1B,eAAgB,gCAChB,eAAgB,gCAChB,gBAAiB,iCACjB,iBAAkB,kCAClB,mBAAoB,oCACpB,yBAA0B,0CAC1B,gBAAiB,iCACjB,wBAAyB,yCACzB,gBAAiB,iCACjB,eAAgB,gCAChB,qBAAsB,sCACtB,mBAAoB,oCACpB,0BAA2B,2CAC3B,yBAA0B,0CAC1B,iBAAkB"}
1
+ {"version":3,"file":"colors.cjs","sources":["../../../src/tailwind/colors.ts"],"sourcesContent":["/**\n * Do not edit directly, this file was auto-generated.\n */\n\nconst colors = {\n \"background-page\": \"var(--jkl-color-background-page)\",\n \"background-page-variant\": \"var(--jkl-color-background-page-variant)\",\n \"background-container\": \"var(--jkl-color-background-container)\",\n \"background-container-low\": \"var(--jkl-color-background-container-low)\",\n \"background-container-high\": \"var(--jkl-color-background-container-high)\",\n \"background-container-inverted\": \"var(--jkl-color-background-container-inverted)\",\n \"background-container-subdued\": \"var(--jkl-color-background-container-subdued)\",\n \"background-input-base\": \"var(--jkl-color-background-input-base)\",\n \"background-input-focus\": \"var(--jkl-color-background-input-focus)\",\n \"background-action\": \"var(--jkl-color-background-action)\",\n \"background-interactive\": \"var(--jkl-color-background-interactive)\",\n \"background-interactive-hover\": \"var(--jkl-color-background-interactive-hover)\",\n \"background-interactive-selected\": \"var(--jkl-color-background-interactive-selected)\",\n \"background-alert-neutral\": \"var(--jkl-color-background-alert-neutral)\",\n \"background-alert-info\": \"var(--jkl-color-background-alert-info)\",\n \"background-alert-success\": \"var(--jkl-color-background-alert-success)\",\n \"background-alert-warning\": \"var(--jkl-color-background-alert-warning)\",\n \"background-alert-error\": \"var(--jkl-color-background-alert-error)\",\n \"text-default\": \"var(--jkl-color-text-default)\",\n \"text-subdued\": \"var(--jkl-color-text-subdued)\",\n \"text-inverted\": \"var(--jkl-color-text-inverted)\",\n \"text-on-action\": \"var(--jkl-color-text-on-action)\",\n \"text-interactive\": \"var(--jkl-color-text-interactive)\",\n \"text-interactive-hover\": \"var(--jkl-color-text-interactive-hover)\",\n \"text-on-alert\": \"var(--jkl-color-text-on-alert)\",\n \"text-on-alert-subdued\": \"var(--jkl-color-text-on-alert-subdued)\",\n \"border-action\": \"var(--jkl-color-border-action)\",\n \"border-input\": \"var(--jkl-color-border-input)\",\n \"border-input-focus\": \"var(--jkl-color-border-input-focus)\",\n \"border-separator\": \"var(--jkl-color-border-separator)\",\n \"border-separator-strong\": \"var(--jkl-color-border-separator-strong)\",\n \"border-separator-hover\": \"var(--jkl-color-border-separator-hover)\",\n \"border-subdued\": \"var(--jkl-color-border-subdued)\",\n};\n\nexport default colors;\n"],"names":[],"mappings":"AAIA,4BAAe,CACX,kBAAmB,mCACnB,0BAA2B,2CAC3B,uBAAwB,wCACxB,2BAA4B,4CAC5B,4BAA6B,6CAC7B,gCAAiC,iDACjC,+BAAgC,gDAChC,wBAAyB,yCACzB,yBAA0B,0CAC1B,oBAAqB,qCACrB,yBAA0B,0CAC1B,+BAAgC,gDAChC,kCAAmC,mDACnC,2BAA4B,4CAC5B,wBAAyB,yCACzB,2BAA4B,4CAC5B,2BAA4B,4CAC5B,yBAA0B,0CAC1B,eAAgB,gCAChB,eAAgB,gCAChB,gBAAiB,iCACjB,iBAAkB,kCAClB,mBAAoB,oCACpB,yBAA0B,0CAC1B,gBAAiB,iCACjB,wBAAyB,yCACzB,gBAAiB,iCACjB,eAAgB,gCAChB,qBAAsB,sCACtB,mBAAoB,oCACpB,0BAA2B,2CAC3B,yBAA0B,0CAC1B,iBAAkB"}
@@ -1,6 +1,5 @@
1
1
  /**
2
- * Do not edit directly
3
- * Generated on Thu, 09 Jan 2025 11:10:44 GMT
2
+ * Do not edit directly, this file was auto-generated.
4
3
  */
5
4
  declare const colors: {
6
5
  "background-page": string;
@@ -1,7 +1,19 @@
1
1
  import { default as React, ButtonHTMLAttributes } from 'react';
2
2
  import { ButtonComponent, ButtonProps } from './types.js';
3
3
  export declare const Button: ButtonComponent;
4
+ /**
5
+ * @deprecated bruk heller {@link Button} med ghost-varianten
6
+ */
4
7
  export declare function PrimaryButton<ElementType extends React.ElementType = "button">(props: Omit<ButtonProps<ElementType>, "variant" | "onClick" | "as"> & Pick<ButtonHTMLAttributes<HTMLButtonElement>, "onClick">): React.JSX.Element;
8
+ /**
9
+ * @deprecated bruk heller {@link Button} med ghost-varianten
10
+ */
5
11
  export declare function SecondaryButton<ElementType extends React.ElementType = "button">(props: Omit<ButtonProps<ElementType>, "variant" | "onClick" | "as"> & Pick<ButtonHTMLAttributes<HTMLButtonElement>, "onClick">): React.JSX.Element;
12
+ /**
13
+ * @deprecated bruk heller {@link Button} med ghost-varianten
14
+ */
6
15
  export declare function TertiaryButton<ElementType extends React.ElementType = "button">(props: Omit<ButtonProps<ElementType>, "variant" | "onClick" | "as"> & Pick<ButtonHTMLAttributes<HTMLButtonElement>, "onClick">): React.JSX.Element;
16
+ /**
17
+ * @deprecated bruk heller {@link Button} med ghost-varianten
18
+ */
7
19
  export declare function GhostButton<ElementType extends React.ElementType = "button">(props: Omit<ButtonProps<ElementType>, "variant" | "loader">): React.JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"Button.js","sources":["../../../../src/components/button/Button.tsx"],"sourcesContent":["import cn from \"clsx\";\nimport React, { type ButtonHTMLAttributes } from \"react\";\nimport { useAriaLiveRegion } from \"../../hooks/useAriaLiveRegion/useAriaLiveRegion.js\";\nimport type { PolymorphicRef } from \"../../utilities/polymorphism/polymorphism.js\";\nimport { Loader } from \"../loader/Loader.js\";\nimport type { ButtonComponent, ButtonProps } from \"./types.js\";\n\nexport const Button = React.forwardRef(function Button<\n ElementType extends React.ElementType = \"button\",\n>(props: ButtonProps<ElementType>, ref?: PolymorphicRef<ElementType>) {\n const {\n as = \"button\",\n children,\n className,\n density,\n onTouchStart,\n onAnimationEnd,\n loader,\n icon,\n iconPosition = \"left\",\n iconLeft,\n iconRight,\n variant = \"secondary\",\n ...rest\n } = props;\n\n const Component = as;\n\n if (\n process.env.NODE_ENV !== \"production\" &&\n React.Children.count(children) === 0 &&\n !props[\"aria-label\"] &&\n !props[\"aria-labelledby\"] &&\n !props.title\n ) {\n console.warn(\n \"Når du lager en Button uten synlig tekst må du huske å gi den et navn med enten aria-label, aria-labelledby eller title\",\n );\n }\n\n const ariaLive = useAriaLiveRegion(loader?.showLoader);\n const showLoader = Boolean(children) && Boolean(loader?.showLoader);\n\n return (\n <Component\n {...ariaLive}\n data-loading={showLoader}\n data-density={density}\n className={cn(\"jkl-button\", `jkl-button--${variant}`, className)}\n disabled={as === \"button\" ? loader?.showLoader : undefined}\n {...rest}\n ref={ref}\n >\n <div className=\"jkl-button__label\">\n {iconLeft && iconLeft}\n {icon && iconPosition === \"left\" && icon}\n {children && (\n <span className=\"jkl-button__text\">{children}</span>\n )}\n {iconRight && iconRight}\n {icon && iconPosition === \"right\" && icon}\n </div>\n\n {children && (\n <Loader\n className=\"jkl-button__loader\"\n variant=\"medium\"\n textDescription={\n loader?.textDescription || \"Vennligst vent\"\n }\n aria-hidden={!loader?.showLoader}\n />\n )}\n </Component>\n );\n}) as ButtonComponent;\n\nexport function PrimaryButton<ElementType extends React.ElementType = \"button\">(\n props: Omit<ButtonProps<ElementType>, \"variant\" | \"onClick\" | \"as\"> &\n Pick<ButtonHTMLAttributes<HTMLButtonElement>, \"onClick\">,\n) {\n const buttonProps = {\n ...props,\n variant: \"primary\",\n } as ButtonProps<ElementType>;\n return <Button {...buttonProps} />;\n}\n\nexport function SecondaryButton<\n ElementType extends React.ElementType = \"button\",\n>(\n props: Omit<ButtonProps<ElementType>, \"variant\" | \"onClick\" | \"as\"> &\n Pick<ButtonHTMLAttributes<HTMLButtonElement>, \"onClick\">,\n) {\n const buttonProps = {\n ...props,\n variant: \"secondary\",\n } as ButtonProps<ElementType>;\n return <Button {...buttonProps} />;\n}\n\nexport function TertiaryButton<\n ElementType extends React.ElementType = \"button\",\n>(\n props: Omit<ButtonProps<ElementType>, \"variant\" | \"onClick\" | \"as\"> &\n Pick<ButtonHTMLAttributes<HTMLButtonElement>, \"onClick\">,\n) {\n const buttonProps = {\n ...props,\n variant: \"tertiary\",\n } as ButtonProps<ElementType>;\n return <Button {...buttonProps} />;\n}\n\nexport function GhostButton<ElementType extends React.ElementType = \"button\">(\n props: Omit<ButtonProps<ElementType>, \"variant\" | \"loader\">,\n) {\n const buttonProps = {\n ...props,\n variant: \"ghost\",\n } as ButtonProps<ElementType>;\n return <Button {...buttonProps} />;\n}\n"],"names":["Button","React","forwardRef","props","ref","as","children","className","density","onTouchStart","onAnimationEnd","loader","icon","iconPosition","iconLeft","iconRight","variant","rest","Component","process","env","NODE_ENV","Children","count","title","console","warn","ariaLive","useAriaLiveRegion","showLoader","jsxs","cn","disabled","jsx","Loader","textDescription","PrimaryButton","buttonProps","SecondaryButton","TertiaryButton","GhostButton"],"mappings":"yPAOO,MAAMA,EAASC,EAAMC,YAAW,SAErCC,EAAiCC,GACzB,MACFC,GAAAA,EAAK,SACLC,SAAAA,EACAC,UAAAA,EACAC,QAAAA,EACAC,aAAAA,EACAC,eAAAA,EACAC,OAAAA,EACAC,KAAAA,EACAC,aAAAA,EAAe,OACfC,SAAAA,EACAC,UAAAA,EACAC,QAAAA,EAAU,eACPC,GACHd,EAEEe,EAAYb,EAGW,eAAzBc,QAAQC,IAAIC,UACuB,IAAnCpB,EAAMqB,SAASC,MAAMjB,KACpBH,EAAM,gBACNA,EAAM,qBACNA,EAAMqB,OAECC,QAAAC,KACJ,2HAIFC,MAAAA,EAAWC,EAAkBjB,GAAQkB,YAIvC,OAAAC,EAACZ,EAAA,IACOS,EACJ,iBALmBrB,KAAqBK,GAAQkB,WAMhD,eAAcrB,EACdD,UAAWwB,EAAG,aAAc,eAAef,IAAWT,GACtDyB,SAAiB,WAAP3B,EAAkBM,GAAQkB,gBAAa,KAC7CZ,EACJb,IAAAA,EAEAE,SAAA,CAACwB,EAAA,MAAA,CAAIvB,UAAU,oBACVD,SAAA,CAAYQ,GAAAA,EACZF,GAAyB,SAAjBC,GAA2BD,EACnCN,GACG2B,EAAC,OAAK,CAAA1B,UAAU,mBAAoBD,SAAAA,IAEvCS,GAAaA,EACbH,GAAyB,UAAjBC,GAA4BD,KAGxCN,GACG2B,EAACC,EAAA,CACG3B,UAAU,qBACVS,QAAQ,SACRmB,gBACIxB,GAAQwB,iBAAmB,iBAE/B,eAAcxB,GAAQkB,eAK1C,IAEO,SAASO,EACZjC,GAGA,MAAMkC,EAAc,IACblC,EACHa,QAAS,WAEN,OAAAiB,EAACjC,EAAQ,IAAGqC,GACvB,CAEO,SAASC,EAGZnC,GAGA,MAAMkC,EAAc,IACblC,EACHa,QAAS,aAEN,OAAAiB,EAACjC,EAAQ,IAAGqC,GACvB,CAEO,SAASE,EAGZpC,GAGA,MAAMkC,EAAc,IACblC,EACHa,QAAS,YAEN,OAAAiB,EAACjC,EAAQ,IAAGqC,GACvB,CAEO,SAASG,EACZrC,GAEA,MAAMkC,EAAc,IACblC,EACHa,QAAS,SAEN,OAAAiB,EAACjC,EAAQ,IAAGqC,GACvB"}
1
+ {"version":3,"file":"Button.js","sources":["../../../../src/components/button/Button.tsx"],"sourcesContent":["import cn from \"clsx\";\nimport React, { type ButtonHTMLAttributes } from \"react\";\nimport { useAriaLiveRegion } from \"../../hooks/useAriaLiveRegion/useAriaLiveRegion.js\";\nimport type { PolymorphicRef } from \"../../utilities/polymorphism/polymorphism.js\";\nimport { Loader } from \"../loader/Loader.js\";\nimport type { ButtonComponent, ButtonProps } from \"./types.js\";\n\nexport const Button = React.forwardRef(function Button<\n ElementType extends React.ElementType = \"button\",\n>(props: ButtonProps<ElementType>, ref?: PolymorphicRef<ElementType>) {\n const {\n as = \"button\",\n children,\n className,\n density,\n onTouchStart,\n onAnimationEnd,\n loader,\n icon,\n iconPosition = \"left\",\n iconLeft,\n iconRight,\n variant = \"secondary\",\n ...rest\n } = props;\n\n const Component = as;\n\n if (\n process.env.NODE_ENV !== \"production\" &&\n React.Children.count(children) === 0 &&\n !props[\"aria-label\"] &&\n !props[\"aria-labelledby\"] &&\n !props.title\n ) {\n console.warn(\n \"Når du lager en Button uten synlig tekst må du huske å gi den et navn med enten aria-label, aria-labelledby eller title\",\n );\n }\n\n const ariaLive = useAriaLiveRegion(loader?.showLoader);\n const showLoader = Boolean(children) && Boolean(loader?.showLoader);\n\n return (\n <Component\n {...ariaLive}\n data-loading={showLoader}\n data-density={density}\n className={cn(\"jkl-button\", `jkl-button--${variant}`, className)}\n disabled={as === \"button\" ? loader?.showLoader : undefined}\n {...rest}\n ref={ref}\n >\n <div className=\"jkl-button__label\">\n {iconLeft && iconLeft}\n {icon && iconPosition === \"left\" && icon}\n {children && (\n <span className=\"jkl-button__text\">{children}</span>\n )}\n {iconRight && iconRight}\n {icon && iconPosition === \"right\" && icon}\n </div>\n\n {children && (\n <Loader\n className=\"jkl-button__loader\"\n variant=\"medium\"\n textDescription={\n loader?.textDescription || \"Vennligst vent\"\n }\n aria-hidden={!loader?.showLoader}\n />\n )}\n </Component>\n );\n}) as ButtonComponent;\n\n/**\n * @deprecated bruk heller {@link Button} med ghost-varianten\n */\nexport function PrimaryButton<ElementType extends React.ElementType = \"button\">(\n props: Omit<ButtonProps<ElementType>, \"variant\" | \"onClick\" | \"as\"> &\n Pick<ButtonHTMLAttributes<HTMLButtonElement>, \"onClick\">,\n) {\n const buttonProps = {\n ...props,\n variant: \"primary\",\n } as ButtonProps<ElementType>;\n return <Button {...buttonProps} />;\n}\n\n/**\n * @deprecated bruk heller {@link Button} med ghost-varianten\n */\nexport function SecondaryButton<\n ElementType extends React.ElementType = \"button\",\n>(\n props: Omit<ButtonProps<ElementType>, \"variant\" | \"onClick\" | \"as\"> &\n Pick<ButtonHTMLAttributes<HTMLButtonElement>, \"onClick\">,\n) {\n const buttonProps = {\n ...props,\n variant: \"secondary\",\n } as ButtonProps<ElementType>;\n return <Button {...buttonProps} />;\n}\n\n/**\n * @deprecated bruk heller {@link Button} med ghost-varianten\n */\nexport function TertiaryButton<\n ElementType extends React.ElementType = \"button\",\n>(\n props: Omit<ButtonProps<ElementType>, \"variant\" | \"onClick\" | \"as\"> &\n Pick<ButtonHTMLAttributes<HTMLButtonElement>, \"onClick\">,\n) {\n const buttonProps = {\n ...props,\n variant: \"tertiary\",\n } as ButtonProps<ElementType>;\n return <Button {...buttonProps} />;\n}\n\n/**\n * @deprecated bruk heller {@link Button} med ghost-varianten\n */\nexport function GhostButton<ElementType extends React.ElementType = \"button\">(\n props: Omit<ButtonProps<ElementType>, \"variant\" | \"loader\">,\n) {\n const buttonProps = {\n ...props,\n variant: \"ghost\",\n } as ButtonProps<ElementType>;\n return <Button {...buttonProps} />;\n}\n"],"names":["Button","React","forwardRef","props","ref","as","children","className","density","onTouchStart","onAnimationEnd","loader","icon","iconPosition","iconLeft","iconRight","variant","rest","Component","process","env","NODE_ENV","Children","count","title","console","warn","ariaLive","useAriaLiveRegion","showLoader","jsxs","cn","disabled","jsx","Loader","textDescription","PrimaryButton","buttonProps","SecondaryButton","TertiaryButton","GhostButton"],"mappings":"yPAOO,MAAMA,EAASC,EAAMC,YAAW,SAErCC,EAAiCC,GACzB,MACFC,GAAAA,EAAK,SACLC,SAAAA,EACAC,UAAAA,EACAC,QAAAA,EACAC,aAAAA,EACAC,eAAAA,EACAC,OAAAA,EACAC,KAAAA,EACAC,aAAAA,EAAe,OACfC,SAAAA,EACAC,UAAAA,EACAC,QAAAA,EAAU,eACPC,GACHd,EAEEe,EAAYb,EAGW,eAAzBc,QAAQC,IAAIC,UACuB,IAAnCpB,EAAMqB,SAASC,MAAMjB,KACpBH,EAAM,gBACNA,EAAM,qBACNA,EAAMqB,OAECC,QAAAC,KACJ,2HAIFC,MAAAA,EAAWC,EAAkBjB,GAAQkB,YAIvC,OAAAC,EAACZ,EAAA,IACOS,EACJ,iBALmBrB,KAAqBK,GAAQkB,WAMhD,eAAcrB,EACdD,UAAWwB,EAAG,aAAc,eAAef,IAAWT,GACtDyB,SAAiB,WAAP3B,EAAkBM,GAAQkB,gBAAa,KAC7CZ,EACJb,IAAAA,EAEAE,SAAA,CAACwB,EAAA,MAAA,CAAIvB,UAAU,oBACVD,SAAA,CAAYQ,GAAAA,EACZF,GAAyB,SAAjBC,GAA2BD,EACnCN,GACG2B,EAAC,OAAK,CAAA1B,UAAU,mBAAoBD,SAAAA,IAEvCS,GAAaA,EACbH,GAAyB,UAAjBC,GAA4BD,KAGxCN,GACG2B,EAACC,EAAA,CACG3B,UAAU,qBACVS,QAAQ,SACRmB,gBACIxB,GAAQwB,iBAAmB,iBAE/B,eAAcxB,GAAQkB,eAK1C,IAKO,SAASO,EACZjC,GAGA,MAAMkC,EAAc,IACblC,EACHa,QAAS,WAEN,OAAAiB,EAACjC,EAAQ,IAAGqC,GACvB,CAKO,SAASC,EAGZnC,GAGA,MAAMkC,EAAc,IACblC,EACHa,QAAS,aAEN,OAAAiB,EAACjC,EAAQ,IAAGqC,GACvB,CAKO,SAASE,EAGZpC,GAGA,MAAMkC,EAAc,IACblC,EACHa,QAAS,YAEN,OAAAiB,EAACjC,EAAQ,IAAGqC,GACvB,CAKO,SAASG,EACZrC,GAEA,MAAMkC,EAAc,IACblC,EACHa,QAAS,SAEN,OAAAiB,EAACjC,EAAQ,IAAGqC,GACvB"}
@@ -21,7 +21,7 @@ export type IconOptions = {
21
21
  type Props = {
22
22
  density?: Density;
23
23
  /**
24
- * Hvilken variant av knappen skal vises
24
+ * Hvilken variant av knappen skal vises. Tertiary er planlagt fjernet fordi den ligner for mye på en lenke.
25
25
  * @default "secondary"
26
26
  */
27
27
  variant?: ButtonVariant;
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sources":["../../../../src/components/button/types.ts"],"sourcesContent":["import type { Density } from \"../../core/types.js\";\nimport type { PolymorphicPropsWithRef } from \"../../utilities/polymorphism/polymorphism.js\";\n\nexport const buttonVariants = [\n \"primary\",\n \"secondary\",\n \"tertiary\",\n \"ghost\",\n] as const;\nexport type ButtonVariant = (typeof buttonVariants)[number];\nexport type IconPosition = \"left\" | \"right\";\n\nexport type IconOptions =\n // Hvis ikke knappen har ikon, MÅ den ha children:\n | {\n iconPosition?: never;\n icon?: never;\n children: React.ReactNode;\n }\n | {\n /**\n * Plasseringen av ikonet\n * @default \"left\"\n */\n iconPosition?: IconPosition;\n /**\n * Hvilket ikon som skal vises i knappen\n */\n icon: React.ReactElement;\n };\n\ntype Props = {\n density?: Density;\n /**\n * Hvilken variant av knappen skal vises\n * @default \"secondary\"\n */\n variant?: ButtonVariant;\n className?: string;\n loader?: {\n showLoader: boolean;\n textDescription: string;\n };\n /**\n * @deprecated Bruk `icon` i kombinasjon med `iconPosition=\"left\"`\n */\n iconLeft?: React.ReactNode;\n /**\n * @deprecated Bruk `icon` i kombinasjon med `iconPosition=\"right\"`\n */\n iconRight?: React.ReactNode;\n} & IconOptions;\n\nexport type ButtonProps<ElementType extends React.ElementType> =\n PolymorphicPropsWithRef<ElementType, Props> & Props;\n\nexport type ButtonComponent = <\n ElementType extends React.ElementType = \"button\",\n>(\n props: ButtonProps<ElementType>,\n) => React.ReactElement | null;\n"],"names":["buttonVariants"],"mappings":"AAGO,MAAMA,EAAiB,CAC1B,UACA,YACA,WACA"}
1
+ {"version":3,"file":"types.js","sources":["../../../../src/components/button/types.ts"],"sourcesContent":["import type { Density } from \"../../core/types.js\";\nimport type { PolymorphicPropsWithRef } from \"../../utilities/polymorphism/polymorphism.js\";\n\nexport const buttonVariants = [\n \"primary\",\n \"secondary\",\n \"tertiary\",\n \"ghost\",\n] as const;\nexport type ButtonVariant = (typeof buttonVariants)[number];\nexport type IconPosition = \"left\" | \"right\";\n\nexport type IconOptions =\n // Hvis ikke knappen har ikon, MÅ den ha children:\n | {\n iconPosition?: never;\n icon?: never;\n children: React.ReactNode;\n }\n | {\n /**\n * Plasseringen av ikonet\n * @default \"left\"\n */\n iconPosition?: IconPosition;\n /**\n * Hvilket ikon som skal vises i knappen\n */\n icon: React.ReactElement;\n };\n\ntype Props = {\n density?: Density;\n /**\n * Hvilken variant av knappen skal vises. Tertiary er planlagt fjernet fordi den ligner for mye på en lenke.\n * @default \"secondary\"\n */\n variant?: ButtonVariant;\n className?: string;\n loader?: {\n showLoader: boolean;\n textDescription: string;\n };\n /**\n * @deprecated Bruk `icon` i kombinasjon med `iconPosition=\"left\"`\n */\n iconLeft?: React.ReactNode;\n /**\n * @deprecated Bruk `icon` i kombinasjon med `iconPosition=\"right\"`\n */\n iconRight?: React.ReactNode;\n} & IconOptions;\n\nexport type ButtonProps<ElementType extends React.ElementType> =\n PolymorphicPropsWithRef<ElementType, Props> & Props;\n\nexport type ButtonComponent = <\n ElementType extends React.ElementType = \"button\",\n>(\n props: ButtonProps<ElementType>,\n) => React.ReactElement | null;\n"],"names":["buttonVariants"],"mappings":"AAGO,MAAMA,EAAiB,CAC1B,UACA,YACA,WACA"}
@@ -4,9 +4,10 @@ export type CardImageProps<ElementType extends React.ElementType> = PolymorphicP
4
4
  /**
5
5
  * Legger til riktig negativ margin avhengig av hvor i kortet bildet
6
6
  * skal plasseres. Margin justeres automatisk etter padding i kortet.
7
+ * Velg "full" hvis bildet skal være eneste innhold i kortet.
7
8
  * @default "top"
8
9
  */
9
- placement?: "top" | "middle" | "bottom";
10
+ placement?: "top" | "middle" | "bottom" | "full";
10
11
  }>;
11
12
  type CardImageComponent = <ElementType extends React.ElementType = "img">(props: CardImageProps<ElementType>) => React.ReactElement | null;
12
13
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"CardImage.js","sources":["../../../../src/components/card/CardImage.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React from \"react\";\nimport { SlotComponent } from \"../../utilities/polymorphism/SlotComponent.js\";\nimport type { AsChildProps } from \"../../utilities/polymorphism/as-child.js\";\nimport type {\n PolymorphicPropsWithRef,\n PolymorphicRef,\n} from \"../../utilities/polymorphism/polymorphism.js\";\n\nexport type CardImageProps<ElementType extends React.ElementType> =\n PolymorphicPropsWithRef<\n ElementType,\n {\n /**\n * Legger til riktig negativ margin avhengig av hvor i kortet bildet\n * skal plasseres. Margin justeres automatisk etter padding i kortet.\n * @default \"top\"\n */\n placement?: \"top\" | \"middle\" | \"bottom\";\n }\n >;\n\ntype CardImageComponent = <ElementType extends React.ElementType = \"img\">(\n props: CardImageProps<ElementType>,\n) => React.ReactElement | null;\n\n/**\n * Bildekomponent som kan brukes i `Card` for å sørge for at bildet\n * blør helt ut i kantene av kortet. Rendres normalt som et `<img>`-\n * element, men du kan overstyre dette med `as` dersom du f.eks. har\n * en egen komponent for å håndtere responsive bilder.\n */\nexport const CardImage = React.forwardRef(function CardImage<\n ElementType extends React.ElementType = \"img\",\n>(\n {\n as,\n asChild,\n className,\n placement = \"top\",\n ...imageProps\n }: CardImageProps<ElementType> & AsChildProps,\n ref?: PolymorphicRef<ElementType>,\n) {\n const Component = asChild ? SlotComponent : as || \"img\";\n\n return (\n <Component\n ref={ref}\n className={clsx(\n \"jkl-card-image\",\n `jkl-card-image--${placement}`,\n className,\n )}\n {...imageProps}\n />\n );\n}) as CardImageComponent;\n"],"names":["CardImage","React","forwardRef","as","asChild","className","placement","imageProps","ref","jsx","SlotComponent","clsx"],"mappings":"yLAgCO,MAAMA,EAAYC,EAAMC,YAAW,UAIlCC,GAAAA,EACAC,QAAAA,EACAC,UAAAA,EACAC,UAAAA,EAAY,SACTC,GAEPC,GAKI,OAAAC,EAHcL,EAAUM,EAAgBP,GAAM,MAG7C,CACGK,IAAAA,EACAH,UAAWM,EACP,iBACA,mBAAmBL,IACnBD,MAEAE,GAGhB"}
1
+ {"version":3,"file":"CardImage.js","sources":["../../../../src/components/card/CardImage.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React from \"react\";\nimport { SlotComponent } from \"../../utilities/polymorphism/SlotComponent.js\";\nimport type { AsChildProps } from \"../../utilities/polymorphism/as-child.js\";\nimport type {\n PolymorphicPropsWithRef,\n PolymorphicRef,\n} from \"../../utilities/polymorphism/polymorphism.js\";\n\nexport type CardImageProps<ElementType extends React.ElementType> =\n PolymorphicPropsWithRef<\n ElementType,\n {\n /**\n * Legger til riktig negativ margin avhengig av hvor i kortet bildet\n * skal plasseres. Margin justeres automatisk etter padding i kortet.\n * Velg \"full\" hvis bildet skal være eneste innhold i kortet.\n * @default \"top\"\n */\n placement?: \"top\" | \"middle\" | \"bottom\" | \"full\";\n }\n >;\n\ntype CardImageComponent = <ElementType extends React.ElementType = \"img\">(\n props: CardImageProps<ElementType>,\n) => React.ReactElement | null;\n\n/**\n * Bildekomponent som kan brukes i `Card` for å sørge for at bildet\n * blør helt ut i kantene av kortet. Rendres normalt som et `<img>`-\n * element, men du kan overstyre dette med `as` dersom du f.eks. har\n * en egen komponent for å håndtere responsive bilder.\n */\nexport const CardImage = React.forwardRef(function CardImage<\n ElementType extends React.ElementType = \"img\",\n>(\n {\n as,\n asChild,\n className,\n placement = \"top\",\n ...imageProps\n }: CardImageProps<ElementType> & AsChildProps,\n ref?: PolymorphicRef<ElementType>,\n) {\n const Component = asChild ? SlotComponent : as || \"img\";\n\n return (\n <Component\n ref={ref}\n className={clsx(\n \"jkl-card-image\",\n `jkl-card-image--${placement}`,\n className,\n )}\n {...imageProps}\n />\n );\n}) as CardImageComponent;\n"],"names":["CardImage","React","forwardRef","as","asChild","className","placement","imageProps","ref","jsx","SlotComponent","clsx"],"mappings":"yLAiCO,MAAMA,EAAYC,EAAMC,YAAW,UAIlCC,GAAAA,EACAC,QAAAA,EACAC,UAAAA,EACAC,UAAAA,EAAY,SACTC,GAEPC,GAKI,OAAAC,EAHcL,EAAUM,EAAgBP,GAAM,MAG7C,CACGK,IAAAA,EACAH,UAAWM,EACP,iBACA,mBAAmBL,IACnBD,MAEAE,GAGhB"}
@@ -1,2 +1,2 @@
1
- import{jsxs as e,jsx as t}from"react/jsx-runtime";import{useId as n,useEffect as o}from"react";import a from"react-dom";import{SecondaryButton as i}from"../button/Button.js";import{ModalContainer as s,ModalOverlay as r,Modal as l,ModalHeader as d,ModalTitle as c,ModalBody as m,ModalActions as k}from"../modal/Modal.js";import{useModal as u}from"../modal/useModal.js";import{useInternalState as f}from"./CookieConsentContext.js";import{RequirementCheckbox as g}from"./RequirementCheckbox.js";import{convertBooleanConsentObjectToConsentObject as p,setConsentCookie as j}from"./cookieConsentUtils.js";const h=({blocking:h,onAccept:b,...C})=>{const{currentConsent:v,cookieName:y,cookieDomain:M,cookiePath:x,requirement:O,isOpen:T,setIsOpen:D,updateCurrentConsents:I}=f(),[B,$]=u({id:`jkl-cookie-modal-${n()}`,role:h?"alertdialog":"dialog",title:"Informasjonskapsler"});if(o((()=>{T?B?.show():B?.hide()}),[B,T]),o((()=>{const e=()=>D(!1);return B?.on("hide",e),()=>{B?.off("hide",e)}}),[B,D]),typeof document>"u")return null;if(typeof navigator<"u"&&!navigator.cookieEnabled)return b&&b({functional:"denied",marketing:"denied",statistics:"denied"}),null;const q=(e=p({functional:!0,statistics:!0,marketing:!0},O))=>{const t=Object.fromEntries(Object.entries(e).filter((([,e])=>typeof e<"u"))),n={...v,...t};j({consent:n,name:y,domain:M,path:x}),I(),b?.(n),B?.hide()};return a.createPortal(e(s,{...$.container,...C,"data-cookie-consent-open":T,children:[t(r,{...$.overlay}),e(l,{component:"form",...$.modal,onSubmit:e=>{e.preventDefault();const t=new FormData(e.currentTarget),n=p({functional:"true"===t.get("functional"),statistics:"true"===t.get("statistics"),marketing:"true"===t.get("marketing")},O);q(n)},children:[t(d,{children:t(c,{...$.title,children:"Velg informasjonskapsler"})}),e(m,{children:[t("p",{children:"For at nettsidene skal fungere må vi bruke tekniske informasjonskaplser. Disse lagres derfor uten samtykke."}),O.functional&&t(g,{name:"functional",label:"Tillat funksjonelle",defaultChecked:"accepted"===v.functional,children:"Funksjonelle informasjonskapsler lagrer opplysninger om din bruk av nettsidene og hvilke innstillinger du har gjort, slik at du kan få funksjonalitet tilpasset deg."},`functional-${v.functional}`),O.statistics&&t(g,{name:"statistics",label:"Tillat statistikk",defaultChecked:"accepted"===v.statistics,children:"Informasjonskapslene lagrer statistikk som hjelper oss med å forstå hvordan nettsidene blir brukt, slik at vi kan gjøre dem bedre og enklere å bruke."},`statistics-${v.statistics}`),O.marketing&&t(g,{name:"marketing",label:"Tillat personlig markedsføring",defaultChecked:"accepted"===v.marketing,children:"Dette gjør at vi kan gi deg mer relevant og tilpasset markedsføring, også gjennom våre samarbeidspartnere, på for eksempel nettsider, annonser og i sosiale medier."},`marketing-${v.marketing}`)]}),e(k,{children:[t(i,{"data-testid":"jkl-cookie-consent-godta-alle",type:"button",onClick:()=>q(),children:"Godta alle"}),t(i,{"data-testid":"jkl-cookie-consent-godta",type:"submit",children:"Godta mine valg"})]})]})]}),document.body)};export{h as CookieConsent};
1
+ import{jsxs as e,jsx as t}from"react/jsx-runtime";import{useId as n,useEffect as o}from"react";import a from"react-dom";import{Button as i}from"../button/Button.js";import{ModalContainer as s,ModalOverlay as r,Modal as l,ModalHeader as d,ModalTitle as c,ModalBody as m,ModalActions as k}from"../modal/Modal.js";import{useModal as u}from"../modal/useModal.js";import{useInternalState as f}from"./CookieConsentContext.js";import{RequirementCheckbox as g}from"./RequirementCheckbox.js";import{convertBooleanConsentObjectToConsentObject as p,setConsentCookie as j}from"./cookieConsentUtils.js";const h=({blocking:h,onAccept:b,...C})=>{const{currentConsent:v,cookieName:y,cookieDomain:M,cookiePath:x,requirement:O,isOpen:T,setIsOpen:D,updateCurrentConsents:I}=f(),[B,$]=u({id:`jkl-cookie-modal-${n()}`,role:h?"alertdialog":"dialog",title:"Informasjonskapsler"});if(o((()=>{T?B?.show():B?.hide()}),[B,T]),o((()=>{const e=()=>D(!1);return B?.on("hide",e),()=>{B?.off("hide",e)}}),[B,D]),typeof document>"u")return null;if(typeof navigator<"u"&&!navigator.cookieEnabled)return b&&b({functional:"denied",marketing:"denied",statistics:"denied"}),null;const q=(e=p({functional:!0,statistics:!0,marketing:!0},O))=>{const t=Object.fromEntries(Object.entries(e).filter((([,e])=>typeof e<"u"))),n={...v,...t};j({consent:n,name:y,domain:M,path:x}),I(),b?.(n),B?.hide()};return a.createPortal(e(s,{...$.container,...C,"data-cookie-consent-open":T,children:[t(r,{...$.overlay}),e(l,{component:"form",...$.modal,onSubmit:e=>{e.preventDefault();const t=new FormData(e.currentTarget),n=p({functional:"true"===t.get("functional"),statistics:"true"===t.get("statistics"),marketing:"true"===t.get("marketing")},O);q(n)},children:[t(d,{children:t(c,{...$.title,children:"Velg informasjonskapsler"})}),e(m,{children:[t("p",{children:"For at nettsidene skal fungere må vi bruke tekniske informasjonskaplser. Disse lagres derfor uten samtykke."}),O.functional&&t(g,{name:"functional",label:"Tillat funksjonelle",defaultChecked:"accepted"===v.functional,children:"Funksjonelle informasjonskapsler lagrer opplysninger om din bruk av nettsidene og hvilke innstillinger du har gjort, slik at du kan få funksjonalitet tilpasset deg."},`functional-${v.functional}`),O.statistics&&t(g,{name:"statistics",label:"Tillat statistikk",defaultChecked:"accepted"===v.statistics,children:"Informasjonskapslene lagrer statistikk som hjelper oss med å forstå hvordan nettsidene blir brukt, slik at vi kan gjøre dem bedre og enklere å bruke."},`statistics-${v.statistics}`),O.marketing&&t(g,{name:"marketing",label:"Tillat personlig markedsføring",defaultChecked:"accepted"===v.marketing,children:"Dette gjør at vi kan gi deg mer relevant og tilpasset markedsføring, også gjennom våre samarbeidspartnere, på for eksempel nettsider, annonser og i sosiale medier."},`marketing-${v.marketing}`)]}),e(k,{children:[t(i,{variant:"secondary","data-testid":"jkl-cookie-consent-godta",type:"submit",children:"Godta mine valg"}),t(i,{variant:"secondary","data-testid":"jkl-cookie-consent-godta-alle",type:"button",onClick:()=>q(),children:"Godta alle"})]})]})]}),document.body)};export{h as CookieConsent};
2
2
  //# sourceMappingURL=CookieConsent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CookieConsent.js","sources":["../../../../src/components/cookie-consent/CookieConsent.tsx"],"sourcesContent":["import React, { type FormEventHandler, useEffect, useId } from \"react\";\nimport ReactDOM from \"react-dom\";\nimport { SecondaryButton } from \"../button/Button.js\";\nimport {\n Modal,\n ModalActions,\n ModalBody,\n ModalContainer,\n ModalHeader,\n ModalOverlay,\n ModalTitle,\n} from \"../modal/Modal.js\";\nimport { useModal } from \"../modal/useModal.js\";\nimport { useInternalState } from \"./CookieConsentContext.js\";\nimport { RequirementCheckbox } from \"./RequirementCheckbox.js\";\nimport {\n convertBooleanConsentObjectToConsentObject,\n setConsentCookie,\n} from \"./cookieConsentUtils.js\";\nimport type { AcceptConsentCallback, Consent } from \"./types.js\";\n\nexport interface CookieConsentProps {\n blocking?: boolean;\n onAccept?: AcceptConsentCallback;\n}\n\nexport const CookieConsent = ({\n blocking,\n onAccept,\n ...rest\n}: CookieConsentProps): JSX.Element | null => {\n const {\n currentConsent,\n cookieName,\n cookieDomain,\n cookiePath,\n requirement,\n isOpen,\n setIsOpen,\n updateCurrentConsents,\n } = useInternalState();\n\n const [instance, modalConfig] = useModal({\n id: `jkl-cookie-modal-${useId()}`,\n // The optional `role` attribute of the dialog element, either `dialog`\n // (default) or `alertdialog` to make it a modal (preventing closing on\n // click outside of ESC key).\n role: blocking ? \"alertdialog\" : \"dialog\",\n // The required dialog title, mandatory in the document\n // to provide context to assistive technology.\n title: \"Informasjonskapsler\",\n });\n\n useEffect(() => {\n if (isOpen) {\n instance?.show();\n } else {\n instance?.hide();\n }\n }, [instance, isOpen]);\n\n useEffect(() => {\n const onHide = () => setIsOpen(false);\n instance?.on(\"hide\", onHide);\n return () => {\n instance?.off(\"hide\", onHide);\n };\n }, [instance, setIsOpen]);\n\n if (typeof document === \"undefined\") {\n return null;\n }\n\n // Cookies are disabled in the browser\n if (typeof navigator !== \"undefined\" && !navigator.cookieEnabled) {\n if (onAccept) {\n onAccept({\n functional: \"denied\",\n marketing: \"denied\",\n statistics: \"denied\",\n });\n }\n\n return null;\n }\n\n const accept = (\n selection = convertBooleanConsentObjectToConsentObject(\n {\n functional: true,\n statistics: true,\n marketing: true,\n },\n requirement,\n ),\n ) => {\n const selectionWithoutEmptyValues = Object.fromEntries(\n Object.entries(selection).filter(\n ([, value]) => typeof value !== \"undefined\",\n ),\n );\n\n const updatedConsent: Consent = {\n ...currentConsent,\n ...selectionWithoutEmptyValues,\n };\n\n setConsentCookie({\n consent: updatedConsent,\n name: cookieName,\n domain: cookieDomain,\n path: cookiePath,\n });\n\n updateCurrentConsents();\n\n onAccept?.(updatedConsent);\n\n instance?.hide();\n };\n\n const onSubmit: FormEventHandler<HTMLFormElement> = (e) => {\n e.preventDefault();\n\n const formData = new FormData(e.currentTarget);\n\n const newConsents = convertBooleanConsentObjectToConsentObject(\n {\n functional: formData.get(\"functional\") === \"true\",\n statistics: formData.get(\"statistics\") === \"true\",\n marketing: formData.get(\"marketing\") === \"true\",\n },\n requirement,\n );\n\n accept(newConsents);\n };\n\n return ReactDOM.createPortal(\n <ModalContainer\n {...modalConfig.container}\n {...rest}\n data-cookie-consent-open={isOpen}\n >\n <ModalOverlay {...modalConfig.overlay} />\n <Modal component=\"form\" {...modalConfig.modal} {...{ onSubmit }}>\n <ModalHeader>\n <ModalTitle {...modalConfig.title}>\n Velg informasjonskapsler\n </ModalTitle>\n </ModalHeader>\n <ModalBody>\n <p>\n For at nettsidene skal fungere må vi bruke tekniske\n informasjonskaplser. Disse lagres derfor uten samtykke.\n </p>\n {requirement.functional && (\n <RequirementCheckbox\n name=\"functional\"\n label=\"Tillat funksjonelle\"\n defaultChecked={\n currentConsent.functional === \"accepted\"\n }\n key={`functional-${currentConsent.functional}`}\n >\n Funksjonelle informasjonskapsler lagrer opplysninger\n om din bruk av nettsidene og hvilke innstillinger du\n har gjort, slik at du kan få funksjonalitet\n tilpasset deg.\n </RequirementCheckbox>\n )}\n {requirement.statistics && (\n <RequirementCheckbox\n name=\"statistics\"\n label=\"Tillat statistikk\"\n defaultChecked={\n currentConsent.statistics === \"accepted\"\n }\n key={`statistics-${currentConsent.statistics}`}\n >\n Informasjonskapslene lagrer statistikk som hjelper\n oss med å forstå hvordan nettsidene blir brukt, slik\n at vi kan gjøre dem bedre og enklere å bruke.\n </RequirementCheckbox>\n )}\n {requirement.marketing && (\n <RequirementCheckbox\n name=\"marketing\"\n label=\"Tillat personlig markedsføring\"\n defaultChecked={\n currentConsent.marketing === \"accepted\"\n }\n key={`marketing-${currentConsent.marketing}`}\n >\n Dette gjør at vi kan gi deg mer relevant og\n tilpasset markedsføring, også gjennom våre\n samarbeidspartnere, på for eksempel nettsider,\n annonser og i sosiale medier.\n </RequirementCheckbox>\n )}\n </ModalBody>\n <ModalActions>\n <SecondaryButton\n data-testid=\"jkl-cookie-consent-godta-alle\"\n type=\"button\"\n onClick={() => accept()}\n >\n Godta alle\n </SecondaryButton>\n <SecondaryButton\n data-testid=\"jkl-cookie-consent-godta\"\n type=\"submit\"\n >\n Godta mine valg\n </SecondaryButton>\n </ModalActions>\n </Modal>\n </ModalContainer>,\n document.body,\n );\n};\n"],"names":["CookieConsent","blocking","onAccept","rest","currentConsent","cookieName","cookieDomain","cookiePath","requirement","isOpen","setIsOpen","updateCurrentConsents","useInternalState","instance","modalConfig","useModal","id","useId","role","title","useEffect","show","hide","onHide","on","off","document","navigator","cookieEnabled","functional","marketing","statistics","accept","selection","convertBooleanConsentObjectToConsentObject","selectionWithoutEmptyValues","Object","fromEntries","entries","filter","value","updatedConsent","setConsentCookie","consent","name","domain","path","ReactDOM","createPortal","jsxs","ModalContainer","container","children","jsx","ModalOverlay","overlay","Modal","component","modal","onSubmit","e","preventDefault","formData","FormData","currentTarget","newConsents","get","ModalHeader","ModalTitle","ModalBody","RequirementCheckbox","label","defaultChecked","ModalActions","SecondaryButton","type","onClick","body"],"mappings":"ulBA0BO,MAAMA,EAAgB,EACzBC,SAAAA,EACAC,SAAAA,KACGC,MAEG,MACFC,eAAAA,EACAC,WAAAA,EACAC,aAAAA,EACAC,WAAAA,EACAC,YAAAA,EACAC,OAAAA,EACAC,UAAAA,EACAC,sBAAAA,GACAC,KAEGC,EAAUC,GAAeC,EAAS,CACrCC,GAAI,oBAAoBC,MAIxBC,KAAMjB,EAAW,cAAgB,SAGjCkB,MAAO,wBAmBP,GAhBJC,GAAU,KACFX,EACAI,GAAUQ,OAEVR,GAAUS,MAAK,GAEpB,CAACT,EAAUJ,IAEdW,GAAU,KACAG,MAAAA,EAAS,IAAMb,GAAU,GACrB,OAAAG,GAAAW,GAAG,OAAQD,GACd,KACOV,GAAAY,IAAI,OAAQF,EAAM,CAChC,GACD,CAACV,EAAUH,WAEHgB,SAAa,IACb,OAAA,KAIX,UAAWC,UAAc,MAAgBA,UAAUC,cAC/C,OAAI1B,GACSA,EAAA,CACL2B,WAAY,SACZC,UAAW,SACXC,WAAY,WAIb,KAGLC,MAAAA,EAAS,CACXC,EAAYC,EACR,CACIL,YAAY,EACZE,YAAY,EACZD,WAAW,GAEftB,MAGJ,MAAM2B,EAA8BC,OAAOC,YACvCD,OAAOE,QAAQL,GAAWM,QACtB,EAAI,CAAAC,YAAkBA,EAAU,OAIlCC,EAA0B,IACzBrC,KACA+B,GAGUO,EAAA,CACbC,QAASF,EACTG,KAAMvC,EACNwC,OAAQvC,EACRwC,KAAMvC,IAGYI,IAEtBT,IAAWuC,GAEX5B,GAAUS,MAAK,EAoBnB,OAAOyB,EAASC,aACZC,EAACC,EAAA,IACOpC,EAAYqC,aACZhD,EACJ,2BAA0BM,EAE1B2C,SAAA,CAACC,EAAAC,EAAA,IAAiBxC,EAAYyC,UAC9BN,EAACO,EAAM,CAAAC,UAAU,UAAW3C,EAAY4C,MAAaC,SAxBRC,IACjDA,EAAEC,iBAEF,MAAMC,EAAW,IAAIC,SAASH,EAAEI,eAE1BC,EAAc/B,EAChB,CACIL,WAA2C,SAA/BiC,EAASI,IAAI,cACzBnC,WAA2C,SAA/B+B,EAASI,IAAI,cACzBpC,UAAyC,SAA9BgC,EAASI,IAAI,cAE5B1D,GAGJwB,EAAOiC,EAAW,EAWVb,SAAA,CAAAC,EAACc,GACGf,SAACC,EAAAe,EAAA,IAAetD,EAAYK,MAAOiC,0CAItCiB,EACG,CAAAjB,SAAA,CAAAC,EAAC,KAAED,SAGH,gHACC5C,EAAYqB,YACTwB,EAACiB,EAAA,CACG1B,KAAK,aACL2B,MAAM,sBACNC,eACkC,aAA9BpE,EAAeyB,WAGtBuB,SAAA,wKADQ,cAAchD,EAAeyB,cAQzCrB,EAAYuB,YACTsB,EAACiB,EAAA,CACG1B,KAAK,aACL2B,MAAM,oBACNC,eACkC,aAA9BpE,EAAe2B,WAGtBqB,SAAA,yJADQ,cAAchD,EAAe2B,cAOzCvB,EAAYsB,WACTuB,EAACiB,EAAA,CACG1B,KAAK,YACL2B,MAAM,iCACNC,eACiC,aAA7BpE,EAAe0B,UAGtBsB,SAAA,uKADQ,aAAahD,EAAe0B,kBAS5C2C,EACG,CAAArB,SAAA,CAAAC,EAACqB,EAAA,CACG,cAAY,gCACZC,KAAK,SACLC,QAAS,IAAM5C,IAClBoB,SAAA,eAGDC,EAACqB,EAAA,CACG,cAAY,2BACZC,KAAK,SACRvB,SAAA,6BAMb1B,SAASmD,KACb"}
1
+ {"version":3,"file":"CookieConsent.js","sources":["../../../../src/components/cookie-consent/CookieConsent.tsx"],"sourcesContent":["import React, { type FormEventHandler, useEffect, useId } from \"react\";\nimport ReactDOM from \"react-dom\";\nimport { Button } from \"../button/Button.js\";\nimport {\n Modal,\n ModalActions,\n ModalBody,\n ModalContainer,\n ModalHeader,\n ModalOverlay,\n ModalTitle,\n} from \"../modal/Modal.js\";\nimport { useModal } from \"../modal/useModal.js\";\nimport { useInternalState } from \"./CookieConsentContext.js\";\nimport { RequirementCheckbox } from \"./RequirementCheckbox.js\";\nimport {\n convertBooleanConsentObjectToConsentObject,\n setConsentCookie,\n} from \"./cookieConsentUtils.js\";\nimport type { AcceptConsentCallback, Consent } from \"./types.js\";\n\nexport interface CookieConsentProps {\n blocking?: boolean;\n onAccept?: AcceptConsentCallback;\n}\n\nexport const CookieConsent = ({\n blocking,\n onAccept,\n ...rest\n}: CookieConsentProps): JSX.Element | null => {\n const {\n currentConsent,\n cookieName,\n cookieDomain,\n cookiePath,\n requirement,\n isOpen,\n setIsOpen,\n updateCurrentConsents,\n } = useInternalState();\n\n const [instance, modalConfig] = useModal({\n id: `jkl-cookie-modal-${useId()}`,\n // The optional `role` attribute of the dialog element, either `dialog`\n // (default) or `alertdialog` to make it a modal (preventing closing on\n // click outside of ESC key).\n role: blocking ? \"alertdialog\" : \"dialog\",\n // The required dialog title, mandatory in the document\n // to provide context to assistive technology.\n title: \"Informasjonskapsler\",\n });\n\n useEffect(() => {\n if (isOpen) {\n instance?.show();\n } else {\n instance?.hide();\n }\n }, [instance, isOpen]);\n\n useEffect(() => {\n const onHide = () => setIsOpen(false);\n instance?.on(\"hide\", onHide);\n return () => {\n instance?.off(\"hide\", onHide);\n };\n }, [instance, setIsOpen]);\n\n if (typeof document === \"undefined\") {\n return null;\n }\n\n // Cookies are disabled in the browser\n if (typeof navigator !== \"undefined\" && !navigator.cookieEnabled) {\n if (onAccept) {\n onAccept({\n functional: \"denied\",\n marketing: \"denied\",\n statistics: \"denied\",\n });\n }\n\n return null;\n }\n\n const accept = (\n selection = convertBooleanConsentObjectToConsentObject(\n {\n functional: true,\n statistics: true,\n marketing: true,\n },\n requirement,\n ),\n ) => {\n const selectionWithoutEmptyValues = Object.fromEntries(\n Object.entries(selection).filter(\n ([, value]) => typeof value !== \"undefined\",\n ),\n );\n\n const updatedConsent: Consent = {\n ...currentConsent,\n ...selectionWithoutEmptyValues,\n };\n\n setConsentCookie({\n consent: updatedConsent,\n name: cookieName,\n domain: cookieDomain,\n path: cookiePath,\n });\n\n updateCurrentConsents();\n\n onAccept?.(updatedConsent);\n\n instance?.hide();\n };\n\n const onSubmit: FormEventHandler<HTMLFormElement> = (e) => {\n e.preventDefault();\n\n const formData = new FormData(e.currentTarget);\n\n const newConsents = convertBooleanConsentObjectToConsentObject(\n {\n functional: formData.get(\"functional\") === \"true\",\n statistics: formData.get(\"statistics\") === \"true\",\n marketing: formData.get(\"marketing\") === \"true\",\n },\n requirement,\n );\n\n accept(newConsents);\n };\n\n return ReactDOM.createPortal(\n <ModalContainer\n {...modalConfig.container}\n {...rest}\n data-cookie-consent-open={isOpen}\n >\n <ModalOverlay {...modalConfig.overlay} />\n <Modal component=\"form\" {...modalConfig.modal} {...{ onSubmit }}>\n <ModalHeader>\n <ModalTitle {...modalConfig.title}>\n Velg informasjonskapsler\n </ModalTitle>\n </ModalHeader>\n <ModalBody>\n <p>\n For at nettsidene skal fungere må vi bruke tekniske\n informasjonskaplser. Disse lagres derfor uten samtykke.\n </p>\n {requirement.functional && (\n <RequirementCheckbox\n name=\"functional\"\n label=\"Tillat funksjonelle\"\n defaultChecked={\n currentConsent.functional === \"accepted\"\n }\n key={`functional-${currentConsent.functional}`}\n >\n Funksjonelle informasjonskapsler lagrer opplysninger\n om din bruk av nettsidene og hvilke innstillinger du\n har gjort, slik at du kan få funksjonalitet\n tilpasset deg.\n </RequirementCheckbox>\n )}\n {requirement.statistics && (\n <RequirementCheckbox\n name=\"statistics\"\n label=\"Tillat statistikk\"\n defaultChecked={\n currentConsent.statistics === \"accepted\"\n }\n key={`statistics-${currentConsent.statistics}`}\n >\n Informasjonskapslene lagrer statistikk som hjelper\n oss med å forstå hvordan nettsidene blir brukt, slik\n at vi kan gjøre dem bedre og enklere å bruke.\n </RequirementCheckbox>\n )}\n {requirement.marketing && (\n <RequirementCheckbox\n name=\"marketing\"\n label=\"Tillat personlig markedsføring\"\n defaultChecked={\n currentConsent.marketing === \"accepted\"\n }\n key={`marketing-${currentConsent.marketing}`}\n >\n Dette gjør at vi kan gi deg mer relevant og\n tilpasset markedsføring, også gjennom våre\n samarbeidspartnere, på for eksempel nettsider,\n annonser og i sosiale medier.\n </RequirementCheckbox>\n )}\n </ModalBody>\n <ModalActions>\n <Button\n variant=\"secondary\"\n data-testid=\"jkl-cookie-consent-godta\"\n type=\"submit\"\n >\n Godta mine valg\n </Button>\n <Button\n variant=\"secondary\"\n data-testid=\"jkl-cookie-consent-godta-alle\"\n type=\"button\"\n onClick={() => accept()}\n >\n Godta alle\n </Button>\n </ModalActions>\n </Modal>\n </ModalContainer>,\n document.body,\n );\n};\n"],"names":["CookieConsent","blocking","onAccept","rest","currentConsent","cookieName","cookieDomain","cookiePath","requirement","isOpen","setIsOpen","updateCurrentConsents","useInternalState","instance","modalConfig","useModal","id","useId","role","title","useEffect","show","hide","onHide","on","off","document","navigator","cookieEnabled","functional","marketing","statistics","accept","selection","convertBooleanConsentObjectToConsentObject","selectionWithoutEmptyValues","Object","fromEntries","entries","filter","value","updatedConsent","setConsentCookie","consent","name","domain","path","ReactDOM","createPortal","jsxs","ModalContainer","container","children","jsx","ModalOverlay","overlay","Modal","component","modal","onSubmit","e","preventDefault","formData","FormData","currentTarget","newConsents","get","ModalHeader","ModalTitle","ModalBody","RequirementCheckbox","label","defaultChecked","ModalActions","Button","variant","type","onClick","body"],"mappings":"8kBA0BO,MAAMA,EAAgB,EACzBC,SAAAA,EACAC,SAAAA,KACGC,MAEG,MACFC,eAAAA,EACAC,WAAAA,EACAC,aAAAA,EACAC,WAAAA,EACAC,YAAAA,EACAC,OAAAA,EACAC,UAAAA,EACAC,sBAAAA,GACAC,KAEGC,EAAUC,GAAeC,EAAS,CACrCC,GAAI,oBAAoBC,MAIxBC,KAAMjB,EAAW,cAAgB,SAGjCkB,MAAO,wBAmBP,GAhBJC,GAAU,KACFX,EACAI,GAAUQ,OAEVR,GAAUS,MAAK,GAEpB,CAACT,EAAUJ,IAEdW,GAAU,KACAG,MAAAA,EAAS,IAAMb,GAAU,GACrB,OAAAG,GAAAW,GAAG,OAAQD,GACd,KACOV,GAAAY,IAAI,OAAQF,EAAM,CAChC,GACD,CAACV,EAAUH,WAEHgB,SAAa,IACb,OAAA,KAIX,UAAWC,UAAc,MAAgBA,UAAUC,cAC/C,OAAI1B,GACSA,EAAA,CACL2B,WAAY,SACZC,UAAW,SACXC,WAAY,WAIb,KAGLC,MAAAA,EAAS,CACXC,EAAYC,EACR,CACIL,YAAY,EACZE,YAAY,EACZD,WAAW,GAEftB,MAGJ,MAAM2B,EAA8BC,OAAOC,YACvCD,OAAOE,QAAQL,GAAWM,QACtB,EAAI,CAAAC,YAAkBA,EAAU,OAIlCC,EAA0B,IACzBrC,KACA+B,GAGUO,EAAA,CACbC,QAASF,EACTG,KAAMvC,EACNwC,OAAQvC,EACRwC,KAAMvC,IAGYI,IAEtBT,IAAWuC,GAEX5B,GAAUS,MAAK,EAoBnB,OAAOyB,EAASC,aACZC,EAACC,EAAA,IACOpC,EAAYqC,aACZhD,EACJ,2BAA0BM,EAE1B2C,SAAA,CAACC,EAAAC,EAAA,IAAiBxC,EAAYyC,UAC9BN,EAACO,EAAM,CAAAC,UAAU,UAAW3C,EAAY4C,MAAaC,SAxBRC,IACjDA,EAAEC,iBAEF,MAAMC,EAAW,IAAIC,SAASH,EAAEI,eAE1BC,EAAc/B,EAChB,CACIL,WAA2C,SAA/BiC,EAASI,IAAI,cACzBnC,WAA2C,SAA/B+B,EAASI,IAAI,cACzBpC,UAAyC,SAA9BgC,EAASI,IAAI,cAE5B1D,GAGJwB,EAAOiC,EAAW,EAWVb,SAAA,CAAAC,EAACc,GACGf,SAACC,EAAAe,EAAA,IAAetD,EAAYK,MAAOiC,0CAItCiB,EACG,CAAAjB,SAAA,CAAAC,EAAC,KAAED,SAGH,gHACC5C,EAAYqB,YACTwB,EAACiB,EAAA,CACG1B,KAAK,aACL2B,MAAM,sBACNC,eACkC,aAA9BpE,EAAeyB,WAGtBuB,SAAA,wKADQ,cAAchD,EAAeyB,cAQzCrB,EAAYuB,YACTsB,EAACiB,EAAA,CACG1B,KAAK,aACL2B,MAAM,oBACNC,eACkC,aAA9BpE,EAAe2B,WAGtBqB,SAAA,yJADQ,cAAchD,EAAe2B,cAOzCvB,EAAYsB,WACTuB,EAACiB,EAAA,CACG1B,KAAK,YACL2B,MAAM,iCACNC,eACiC,aAA7BpE,EAAe0B,UAGtBsB,SAAA,uKADQ,aAAahD,EAAe0B,kBAS5C2C,EACG,CAAArB,SAAA,CAAAC,EAACqB,EAAA,CACGC,QAAQ,YACR,cAAY,2BACZC,KAAK,SACRxB,SAAA,oBAGDC,EAACqB,EAAA,CACGC,QAAQ,YACR,cAAY,gCACZC,KAAK,SACLC,QAAS,IAAM7C,IAClBoB,SAAA,wBAMb1B,SAASoD,KACb"}
@@ -1,2 +1,2 @@
1
- import{jsx as e,jsxs as l}from"react/jsx-runtime";import{useId as a,useMemo as o,Fragment as r}from"react";import{FieldGroup as s}from"../../input-group/FieldGroup.js";import{useFollowUpContext as t}from"../followup/followupContext.js";import{useMainQuestionContext as n}from"../main-question/mainQuestionContext.js";import{defaultOptions as u,getSmiley as i}from"./smileyUtils.js";const m=e=>"number"!=typeof e.value||![1,2,3,4,5].includes(e.value),c=({label:c,name:p="smiley",helpLabel:d,options:v=u})=>{const f=t(),y=n(),b=f||y,h=a(),j=e=>{console.log(e.target.value);const l=v?.find((l=>l.value.toString()===e.target.value));b?.setCurrentValue(l)},g=o((()=>Array.isArray(b?.currentValue)?b?.currentValue[0].value:b?.currentValue?.value),[b?.currentValue]);return v.some(m)?(console.error("SmileyQuestion må ha tallene 1 til 5 som verdier for alternativene sine"),null):b&&v?e(s,{labelProps:{variant:"large"},legend:c,helpLabel:d,children:e("div",{className:"jkl-feedback-smileys",children:v.map((a=>l(r,{children:[e("input",{className:"jkl-sr-only",id:`${h}-${p}-${a.value}`,name:`${h}-${p}`,type:"radio",value:a.value,onChange:j,checked:g===a.value}),l("label",{className:"jkl-feedback-smiley-option",htmlFor:`${h}-${p}-${a.value}`,children:[e("span",{className:"jkl-sr-only",children:a.label}),i(Number(a.value))]})]},a.value)))})}):(console.error("Questions must be used inside a Followup or Feedback context provider"),null)};export{c as SmileyQuestion};
1
+ import{jsx as e,jsxs as l}from"react/jsx-runtime";import{useId as a,useMemo as r,Fragment as s}from"react";import{FieldGroup as o}from"../../input-group/FieldGroup.js";import{useFollowUpContext as t}from"../followup/followupContext.js";import{useMainQuestionContext as n}from"../main-question/mainQuestionContext.js";import{defaultOptions as i,getSmiley as u}from"./smileyUtils.js";const m=e=>"number"!=typeof e.value||![1,2,3,4,5].includes(e.value),c=({label:c,name:p="smiley",helpLabel:d,options:v=i})=>{const f=t(),y=n(),b=f||y,h=a(),j=e=>{const l=v?.find((l=>l.value.toString()===e.target.value));b?.setCurrentValue(l)},x=r((()=>Array.isArray(b?.currentValue)?b?.currentValue[0].value:b?.currentValue?.value),[b?.currentValue]);return v.some(m)?(console.error("SmileyQuestion må ha tallene 1 til 5 som verdier for alternativene sine"),null):b&&v?e(o,{labelProps:{variant:"large"},legend:c,helpLabel:d,children:e("div",{className:"jkl-feedback-smileys",children:v.map((a=>l(s,{children:[e("input",{className:"jkl-sr-only",id:`${h}-${p}-${a.value}`,name:`${h}-${p}`,type:"radio",value:a.value,onChange:j,checked:x===a.value}),l("label",{className:"jkl-feedback-smiley-option",htmlFor:`${h}-${p}-${a.value}`,children:[e("span",{className:"jkl-sr-only",children:a.label}),u(Number(a.value))]})]},a.value)))})}):(console.error("Questions must be used inside a Followup or Feedback context provider"),null)};export{c as SmileyQuestion};
2
2
  //# sourceMappingURL=SmileyQuestion.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SmileyQuestion.js","sources":["../../../../../src/components/feedback/questions/SmileyQuestion.tsx"],"sourcesContent":["import React, {\n type ChangeEventHandler,\n Fragment,\n useId,\n useMemo,\n} from \"react\";\nimport { FieldGroup } from \"../../input-group/FieldGroup.js\";\nimport { useFollowUpContext } from \"../followup/followupContext.js\";\nimport { useMainQuestionContext } from \"../main-question/mainQuestionContext.js\";\nimport type { FeedbackOption, QuestionProps } from \"../types.js\";\nimport { defaultOptions, getSmiley } from \"./smileyUtils.js\";\n\nconst isNotInScale = (option: FeedbackOption) =>\n typeof option.value !== \"number\" || ![1, 2, 3, 4, 5].includes(option.value);\n\nexport const SmileyQuestion: React.FC<QuestionProps> = ({\n label,\n name = \"smiley\",\n helpLabel,\n options = defaultOptions,\n}) => {\n const followupContext = useFollowUpContext();\n const feedbackContext = useMainQuestionContext();\n const context = followupContext || feedbackContext;\n const id = useId();\n\n const handleChange: ChangeEventHandler<HTMLInputElement> = (e) => {\n console.log(e.target.value);\n const option = options?.find(\n (option) => option.value.toString() === e.target.value,\n );\n context?.setCurrentValue(option);\n };\n\n const selectedValue = useMemo(\n () =>\n Array.isArray(context?.currentValue)\n ? context?.currentValue[0].value\n : context?.currentValue?.value,\n [context?.currentValue],\n );\n\n if (options.some(isNotInScale)) {\n console.error(\n \"SmileyQuestion må ha tallene 1 til 5 som verdier for alternativene sine\",\n );\n return null;\n }\n\n if (!context || !options) {\n console.error(\n \"Questions must be used inside a Followup or Feedback context provider\",\n );\n return null;\n }\n\n return (\n <FieldGroup\n labelProps={{ variant: \"large\" }}\n legend={label}\n helpLabel={helpLabel}\n >\n <div className=\"jkl-feedback-smileys\">\n {options.map((option) => (\n <Fragment key={option.value}>\n <input\n className=\"jkl-sr-only\"\n id={`${id}-${name}-${option.value}`}\n name={`${id}-${name}`}\n type=\"radio\"\n value={option.value}\n onChange={handleChange}\n checked={selectedValue === option.value}\n />\n <label\n className=\"jkl-feedback-smiley-option\"\n htmlFor={`${id}-${name}-${option.value}`}\n >\n <span className=\"jkl-sr-only\">{option.label}</span>\n {getSmiley(Number(option.value))}\n </label>\n </Fragment>\n ))}\n </div>\n </FieldGroup>\n );\n};\n"],"names":["isNotInScale","option","value","includes","SmileyQuestion","label","name","helpLabel","options","defaultOptions","followupContext","useFollowUpContext","feedbackContext","useMainQuestionContext","context","id","useId","handleChange","e","console","log","target","find","toString","setCurrentValue","selectedValue","useMemo","Array","isArray","currentValue","some","error","jsx","FieldGroup","labelProps","variant","legend","children","className","map","jsxs","Fragment","type","onChange","checked","htmlFor","getSmiley","Number"],"mappings":"8XAYA,MAAMA,EAAgBC,GACM,iBAAjBA,EAAOC,QAAuB,CAAC,EAAG,EAAG,EAAG,EAAG,GAAGC,SAASF,EAAOC,OAE5DE,EAA0C,EACnDC,MAAAA,EACAC,KAAAA,EAAO,SACPC,UAAAA,EACAC,QAAAA,EAAUC,MAEV,MAAMC,EAAkBC,IAClBC,EAAkBC,IAClBC,EAAUJ,GAAmBE,EAC7BG,EAAKC,IAELC,EAAsDC,IAChDC,QAAAC,IAAIF,EAAEG,OAAOnB,OACrB,MAAMD,EAASO,GAASc,MACnBrB,GAAWA,EAAOC,MAAMqB,aAAeL,EAAEG,OAAOnB,QAErDY,GAASU,gBAAgBvB,EAAM,EAG7BwB,EAAgBC,GAClB,IACIC,MAAMC,QAAQd,GAASe,cACjBf,GAASe,aAAa,GAAG3B,MACzBY,GAASe,cAAc3B,OACjC,CAACY,GAASe,eAGV,OAAArB,EAAQsB,KAAK9B,IACLmB,QAAAY,MACJ,2EAEG,MAGNjB,GAAYN,EAQbwB,EAACC,EAAA,CACGC,WAAY,CAAEC,QAAS,SACvBC,OAAQ/B,EACRE,UAAAA,EAEA8B,SAAAL,EAAC,OAAIM,UAAU,uBACVD,WAAQE,KAAKtC,GACVuC,EAACC,EACG,CAAAJ,SAAA,CAAAL,EAAC,QAAA,CACGM,UAAU,cACVvB,GAAI,GAAGA,KAAMT,KAAQL,EAAOC,QAC5BI,KAAM,GAAGS,KAAMT,IACfoC,KAAK,QACLxC,MAAOD,EAAOC,MACdyC,SAAU1B,EACV2B,QAASnB,IAAkBxB,EAAOC,QAEtCsC,EAAC,QAAA,CACGF,UAAU,6BACVO,QAAS,GAAG9B,KAAMT,KAAQL,EAAOC,QAEjCmC,SAAA,CAAAL,EAAC,OAAK,CAAAM,UAAU,cAAeD,SAAApC,EAAOI,QACrCyC,EAAUC,OAAO9C,EAAOC,aAflBD,EAAOC,cAd1BiB,QAAAY,MACJ,yEAEG,KA+BP"}
1
+ {"version":3,"file":"SmileyQuestion.js","sources":["../../../../../src/components/feedback/questions/SmileyQuestion.tsx"],"sourcesContent":["import React, {\n type ChangeEventHandler,\n Fragment,\n useId,\n useMemo,\n} from \"react\";\nimport { FieldGroup } from \"../../input-group/FieldGroup.js\";\nimport { useFollowUpContext } from \"../followup/followupContext.js\";\nimport { useMainQuestionContext } from \"../main-question/mainQuestionContext.js\";\nimport type { FeedbackOption, QuestionProps } from \"../types.js\";\nimport { defaultOptions, getSmiley } from \"./smileyUtils.js\";\n\nconst isNotInScale = (option: FeedbackOption) =>\n typeof option.value !== \"number\" || ![1, 2, 3, 4, 5].includes(option.value);\n\nexport const SmileyQuestion: React.FC<QuestionProps> = ({\n label,\n name = \"smiley\",\n helpLabel,\n options = defaultOptions,\n}) => {\n const followupContext = useFollowUpContext();\n const feedbackContext = useMainQuestionContext();\n const context = followupContext || feedbackContext;\n const id = useId();\n\n const handleChange: ChangeEventHandler<HTMLInputElement> = (e) => {\n const option = options?.find(\n (option) => option.value.toString() === e.target.value,\n );\n context?.setCurrentValue(option);\n };\n\n const selectedValue = useMemo(\n () =>\n Array.isArray(context?.currentValue)\n ? context?.currentValue[0].value\n : context?.currentValue?.value,\n [context?.currentValue],\n );\n\n if (options.some(isNotInScale)) {\n console.error(\n \"SmileyQuestion må ha tallene 1 til 5 som verdier for alternativene sine\",\n );\n return null;\n }\n\n if (!context || !options) {\n console.error(\n \"Questions must be used inside a Followup or Feedback context provider\",\n );\n return null;\n }\n\n return (\n <FieldGroup\n labelProps={{ variant: \"large\" }}\n legend={label}\n helpLabel={helpLabel}\n >\n <div className=\"jkl-feedback-smileys\">\n {options.map((option) => (\n <Fragment key={option.value}>\n <input\n className=\"jkl-sr-only\"\n id={`${id}-${name}-${option.value}`}\n name={`${id}-${name}`}\n type=\"radio\"\n value={option.value}\n onChange={handleChange}\n checked={selectedValue === option.value}\n />\n <label\n className=\"jkl-feedback-smiley-option\"\n htmlFor={`${id}-${name}-${option.value}`}\n >\n <span className=\"jkl-sr-only\">{option.label}</span>\n {getSmiley(Number(option.value))}\n </label>\n </Fragment>\n ))}\n </div>\n </FieldGroup>\n );\n};\n"],"names":["isNotInScale","option","value","includes","SmileyQuestion","label","name","helpLabel","options","defaultOptions","followupContext","useFollowUpContext","feedbackContext","useMainQuestionContext","context","id","useId","handleChange","e","find","toString","target","setCurrentValue","selectedValue","useMemo","Array","isArray","currentValue","some","console","error","jsx","FieldGroup","labelProps","variant","legend","children","className","map","jsxs","Fragment","type","onChange","checked","htmlFor","getSmiley","Number"],"mappings":"8XAYA,MAAMA,EAAgBC,GACM,iBAAjBA,EAAOC,QAAuB,CAAC,EAAG,EAAG,EAAG,EAAG,GAAGC,SAASF,EAAOC,OAE5DE,EAA0C,EACnDC,MAAAA,EACAC,KAAAA,EAAO,SACPC,UAAAA,EACAC,QAAAA,EAAUC,MAEV,MAAMC,EAAkBC,IAClBC,EAAkBC,IAClBC,EAAUJ,GAAmBE,EAC7BG,EAAKC,IAELC,EAAsDC,IACxD,MAAMjB,EAASO,GAASW,MACnBlB,GAAWA,EAAOC,MAAMkB,aAAeF,EAAEG,OAAOnB,QAErDY,GAASQ,gBAAgBrB,EAAM,EAG7BsB,EAAgBC,GAClB,IACIC,MAAMC,QAAQZ,GAASa,cACjBb,GAASa,aAAa,GAAGzB,MACzBY,GAASa,cAAczB,OACjC,CAACY,GAASa,eAGV,OAAAnB,EAAQoB,KAAK5B,IACL6B,QAAAC,MACJ,2EAEG,MAGNhB,GAAYN,EAQbuB,EAACC,EAAA,CACGC,WAAY,CAAEC,QAAS,SACvBC,OAAQ9B,EACRE,UAAAA,EAEA6B,SAAAL,EAAC,OAAIM,UAAU,uBACVD,WAAQE,KAAKrC,GACVsC,EAACC,EACG,CAAAJ,SAAA,CAAAL,EAAC,QAAA,CACGM,UAAU,cACVtB,GAAI,GAAGA,KAAMT,KAAQL,EAAOC,QAC5BI,KAAM,GAAGS,KAAMT,IACfmC,KAAK,QACLvC,MAAOD,EAAOC,MACdwC,SAAUzB,EACV0B,QAASpB,IAAkBtB,EAAOC,QAEtCqC,EAAC,QAAA,CACGF,UAAU,6BACVO,QAAS,GAAG7B,KAAMT,KAAQL,EAAOC,QAEjCkC,SAAA,CAAAL,EAAC,OAAK,CAAAM,UAAU,cAAeD,SAAAnC,EAAOI,QACrCwC,EAAUC,OAAO7C,EAAOC,aAflBD,EAAOC,cAd1B2B,QAAAC,MACJ,yEAEG,KA+BP"}
@@ -1,3 +1,6 @@
1
1
  import { default as React } from 'react';
2
2
  import { IconButtonProps } from './types.js';
3
+ /**
4
+ * @deprecated bruk heller {@link Button} med ghost-varianten
5
+ */
3
6
  export declare const IconButton: React.ForwardRefExoticComponent<IconButtonProps & React.RefAttributes<HTMLButtonElement>>;
@@ -1 +1 @@
1
- {"version":3,"file":"IconButton.js","sources":["../../../../src/components/icon-button/IconButton.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { forwardRef } from \"react\";\nimport type { IconButtonProps } from \"./types.js\";\n\nexport const IconButton = forwardRef<HTMLButtonElement, IconButtonProps>(\n (props, ref) => {\n const { className, children, density, ...rest } = props;\n return (\n <button\n ref={ref}\n type=\"button\"\n className={clsx(\"jkl-icon-button\", className)}\n data-testid=\"jkl-icon-button\"\n data-density={density}\n {...rest}\n >\n {children}\n </button>\n );\n },\n);\n\nIconButton.displayName = \"IconButton\";\n"],"names":["IconButton","forwardRef","props","ref","className","children","density","rest","jsx","type","clsx","displayName"],"mappings":"yHAIO,MAAMA,EAAaC,GACtB,CAACC,EAAOC,KACE,MAAEC,UAAAA,EAAWC,SAAAA,EAAUC,QAAAA,KAAYC,GAASL,EAE9C,OAAAM,EAAC,SAAA,CACGL,IAAAA,EACAM,KAAK,SACLL,UAAWM,EAAK,kBAAmBN,GACnC,cAAY,kBACZ,eAAcE,KACVC,EAEHF,SAAAA,GACL,IAKZL,EAAWW,YAAc"}
1
+ {"version":3,"file":"IconButton.js","sources":["../../../../src/components/icon-button/IconButton.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { forwardRef } from \"react\";\nimport type { IconButtonProps } from \"./types.js\";\n\n/**\n * @deprecated bruk heller {@link Button} med ghost-varianten\n */\nexport const IconButton = forwardRef<HTMLButtonElement, IconButtonProps>(\n (props, ref) => {\n const { className, children, density, ...rest } = props;\n return (\n <button\n ref={ref}\n type=\"button\"\n className={clsx(\"jkl-icon-button\", className)}\n data-testid=\"jkl-icon-button\"\n data-density={density}\n {...rest}\n >\n {children}\n </button>\n );\n },\n);\n\nIconButton.displayName = \"IconButton\";\n"],"names":["IconButton","forwardRef","props","ref","className","children","density","rest","jsx","type","clsx","displayName"],"mappings":"yHAOO,MAAMA,EAAaC,GACtB,CAACC,EAAOC,KACE,MAAEC,UAAAA,EAAWC,SAAAA,EAAUC,QAAAA,KAAYC,GAASL,EAE9C,OAAAM,EAAC,SAAA,CACGL,IAAAA,EACAM,KAAK,SACLL,UAAWM,EAAK,kBAAmBN,GACnC,cAAY,kBACZ,eAAcE,KACVC,EAEHF,SAAAA,GACL,IAKZL,EAAWW,YAAc"}
@@ -0,0 +1,2 @@
1
+ import o from"style-dictionary";import{legacyDesignTokensConfig as n,designTokensConfig as i}from"./config.js";import"./register.js";!async function(){console.log("Starting design token build...\n"),console.log("⚙️ Building legacy tokens"),await(await new o(n)).buildAllPlatforms(),console.log("⚙️ Building modern tokens"),await(await new o(i)).buildAllPlatforms(),console.log("\nBuild complete.")}();
2
+ //# sourceMappingURL=build.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build.js","sources":["../../../../../src/core/tokens/style-dictionary/build.ts"],"sourcesContent":["import StyleDictionary from \"style-dictionary\";\nimport { legacyDesignTokensConfig, designTokensConfig } from \"./config.js\";\nimport \"./register.js\";\n\nasync function build() {\n console.log(\"Starting design token build...\\n\");\n\n console.log(\"⚙️ Building legacy tokens\");\n const legacySd = await new StyleDictionary(legacyDesignTokensConfig);\n await legacySd.buildAllPlatforms();\n\n console.log(\"⚙️ Building modern tokens\");\n const modernSd = await new StyleDictionary(designTokensConfig);\n await modernSd.buildAllPlatforms();\n\n console.log(\"\\nBuild complete.\");\n}\n\nbuild();\n"],"names":["async","console","log","StyleDictionary","legacyDesignTokensConfig","buildAllPlatforms","designTokensConfig","build"],"mappings":"sIAIAA,iBACIC,QAAQC,IAAI,oCAEZD,QAAQC,IAAI,yCACW,IAAIC,EAAgBC,IAC5BC,oBAEfJ,QAAQC,IAAI,yCACW,IAAIC,EAAgBG,IAC5BD,oBAEfJ,QAAQC,IAAI,oBAChB,CAEAK"}
@@ -0,0 +1,4 @@
1
+ import { Config } from 'style-dictionary/types';
2
+ export declare const PREFIX = "jkl";
3
+ export declare const legacyDesignTokensConfig: Config;
4
+ export declare const designTokensConfig: Config;
@@ -0,0 +1,2 @@
1
+ const s="jkl",t={source:["src/core/tokens/legacy/*.json"],platforms:{ts:{transformGroup:"typescript",buildPath:"./src/core/",files:[{destination:"tokens.ts",format:"javascript/esm",filter:s=>!s.filePath.includes("color.legacy")}]},scss:{transformGroup:"scss",buildPath:"./src/core/jkl/",files:[{destination:"_legacy-tokens.scss",format:"scss/theme-variables"}]},css:{transformGroup:"css",buildPath:"./src/core/styles/theme/",files:[{destination:"_legacy-tokens.scss",format:"css/theme-variables",filter:s=>!s.filePath.includes("semantic")},{destination:"_legacy-color-tokens.scss",format:"css/dynamic-color-variables",filter:s=>s.filePath.includes("semantic")}]},tailwind:{transformGroup:"css",buildPath:"src/tailwind/",files:[{destination:"colors.ts",format:"tailwindcss/colors",filter:s=>s.path.includes("light")}]}}},e={source:["src/core/tokens/!(legacy)/*.json"],platforms:{scss:{transformGroup:"scss",buildPath:"./src/core/jkl/",files:[{destination:"_tokens.scss",format:"scss/theme-variables",filter:s=>"spacing"===s.type||["border","text","background"].includes("string"==typeof s.attributes?.type?s.attributes.type:"")}]},css:{transformGroup:"css",buildPath:"./src/core/styles/theme/",files:[{destination:"_tokens.scss",format:"css/theme-variables",filter:s=>"spacing"===s.type},{destination:"_color-tokens.scss",format:"css/dynamic-color-variables",filter:"isColor"},{destination:"_spacing-tokens.scss",format:"css/theme-variables",filter:"isSpacing"}]}}};export{s as PREFIX,e as designTokensConfig,t as legacyDesignTokensConfig};
2
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sources":["../../../../../src/core/tokens/style-dictionary/config.ts"],"sourcesContent":["import type { Config, DesignToken } from \"style-dictionary/types\";\n\nexport const PREFIX = \"jkl\";\n\nexport const legacyDesignTokensConfig: Config = {\n source: [\"src/core/tokens/legacy/*.json\"],\n platforms: {\n ts: {\n transformGroup: \"typescript\",\n buildPath: \"./src/core/\",\n files: [\n {\n destination: \"tokens.ts\",\n format: \"javascript/esm\",\n filter: (token: DesignToken) =>\n !token.filePath.includes(\"color.legacy\"),\n },\n ],\n },\n scss: {\n transformGroup: \"scss\",\n buildPath: \"./src/core/jkl/\",\n files: [\n {\n destination: \"_legacy-tokens.scss\",\n format: \"scss/theme-variables\",\n },\n ],\n },\n css: {\n transformGroup: \"css\",\n buildPath: \"./src/core/styles/theme/\",\n files: [\n {\n destination: \"_legacy-tokens.scss\",\n format: \"css/theme-variables\",\n filter: (token: DesignToken) =>\n !token.filePath.includes(\"semantic\"),\n },\n {\n destination: \"_legacy-color-tokens.scss\",\n format: \"css/dynamic-color-variables\",\n filter: (token: DesignToken) =>\n token.filePath.includes(\"semantic\"),\n },\n ],\n },\n tailwind: {\n transformGroup: \"css\",\n buildPath: \"src/tailwind/\",\n files: [\n {\n destination: \"colors.ts\",\n format: \"tailwindcss/colors\",\n filter: (token: DesignToken) =>\n token.path.includes(\"light\"),\n },\n ],\n },\n },\n};\n\nexport const designTokensConfig: Config = {\n source: [\"src/core/tokens/!(legacy)/*.json\"],\n platforms: {\n scss: {\n transformGroup: \"scss\",\n buildPath: \"./src/core/jkl/\",\n files: [\n {\n destination: \"_tokens.scss\",\n format: \"scss/theme-variables\",\n filter: (token: DesignToken) =>\n token.type === \"spacing\" ||\n [\"border\", \"text\", \"background\"].includes(\n typeof token.attributes?.type === \"string\"\n ? token.attributes.type\n : \"\",\n ),\n },\n ],\n },\n css: {\n transformGroup: \"css\",\n buildPath: \"./src/core/styles/theme/\",\n files: [\n {\n destination: \"_tokens.scss\",\n format: \"css/theme-variables\",\n filter: (token: DesignToken) => token.type === \"spacing\",\n },\n {\n destination: \"_color-tokens.scss\",\n format: \"css/dynamic-color-variables\",\n filter: \"isColor\",\n },\n {\n destination: \"_spacing-tokens.scss\",\n format: \"css/theme-variables\",\n filter: \"isSpacing\",\n },\n ],\n },\n },\n};\n"],"names":["PREFIX","legacyDesignTokensConfig","source","platforms","ts","transformGroup","buildPath","files","destination","format","filter","token","filePath","includes","scss","css","tailwind","path","designTokensConfig","type","attributes"],"mappings":"AAEO,MAAMA,EAAS,MAETC,EAAmC,CAC5CC,OAAQ,CAAC,iCACTC,UAAW,CACPC,GAAI,CACAC,eAAgB,aAChBC,UAAW,cACXC,MAAO,CACH,CACIC,YAAa,YACbC,OAAQ,iBACRC,OAASC,IACJA,EAAMC,SAASC,SAAS,mBAIzCC,KAAM,CACFT,eAAgB,OAChBC,UAAW,kBACXC,MAAO,CACH,CACIC,YAAa,sBACbC,OAAQ,0BAIpBM,IAAK,CACDV,eAAgB,MAChBC,UAAW,2BACXC,MAAO,CACH,CACIC,YAAa,sBACbC,OAAQ,sBACRC,OAASC,IACJA,EAAMC,SAASC,SAAS,aAEjC,CACIL,YAAa,4BACbC,OAAQ,8BACRC,OAASC,GACLA,EAAMC,SAASC,SAAS,eAIxCG,SAAU,CACNX,eAAgB,MAChBC,UAAW,gBACXC,MAAO,CACH,CACIC,YAAa,YACbC,OAAQ,qBACRC,OAASC,GACLA,EAAMM,KAAKJ,SAAS,cAO/BK,EAA6B,CACtChB,OAAQ,CAAC,oCACTC,UAAW,CACPW,KAAM,CACFT,eAAgB,OAChBC,UAAW,kBACXC,MAAO,CACH,CACIC,YAAa,eACbC,OAAQ,uBACRC,OAASC,GACU,YAAfA,EAAMQ,MACN,CAAC,SAAU,OAAQ,cAAcN,SACK,iBAA3BF,EAAMS,YAAYD,KACnBR,EAAMS,WAAWD,KACjB,OAK1BJ,IAAK,CACDV,eAAgB,MAChBC,UAAW,2BACXC,MAAO,CACH,CACIC,YAAa,eACbC,OAAQ,sBACRC,OAASC,GAAsC,YAAfA,EAAMQ,MAE1C,CACIX,YAAa,qBACbC,OAAQ,8BACRC,OAAQ,WAEZ,CACIF,YAAa,uBACbC,OAAQ,sBACRC,OAAQ"}
@@ -0,0 +1,3 @@
1
+ import { Filter } from 'style-dictionary/types';
2
+ export declare const isColor: Filter;
3
+ export declare const isSpacing: Filter;
@@ -0,0 +1,2 @@
1
+ const i={name:"isColor",filter:i=>"color"===i.type},o={name:"isSpacing",filter:i=>"spacing"===i.type};export{i as isColor,o as isSpacing};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../../src/core/tokens/style-dictionary/filters/index.ts"],"sourcesContent":["import type { DesignToken, Filter } from \"style-dictionary/types\";\n\nexport const isColor: Filter = {\n name: \"isColor\",\n filter: (token: DesignToken) => token.type === \"color\",\n};\n\nexport const isSpacing: Filter = {\n name: \"isSpacing\",\n filter: (token: DesignToken) => token.type === \"spacing\",\n};\n"],"names":["isColor","name","filter","token","type","isSpacing"],"mappings":"AAEO,MAAMA,EAAkB,CAC3BC,KAAM,UACNC,OAASC,GAAsC,UAAfA,EAAMC,MAG7BC,EAAoB,CAC7BJ,KAAM,YACNC,OAASC,GAAsC,YAAfA,EAAMC"}
@@ -0,0 +1,3 @@
1
+ import { Format } from 'style-dictionary/types';
2
+ declare const cssDynamicColorVariablesFormat: Format;
3
+ export default cssDynamicColorVariablesFormat;
@@ -0,0 +1,2 @@
1
+ import{fileHeader as a,formattedVariables as n}from"style-dictionary/utils";import{PREFIX as i}from"../config.js";const e={name:"css/dynamic-color-variables",format:async({dictionary:e,file:t})=>{const l=a=>e.allTokens.filter((n=>n.path.includes(a)));return`${await a({file:t})}\n/* stylelint-disable */\n@use "../../jkl";\n\n@layer jokul.theme {\n ${["light","dark"].map((a=>`@include jkl.${a}-mode-variables {\n${n({dictionary:{...e,allTokens:l(a)},format:"css",formatting:{indentation:" ",prefix:`--${i}-`}})}\n }`)).join("\n\n ")}\n}\n`}};export{e as default};
2
+ //# sourceMappingURL=css-dynamic-color-variables.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"css-dynamic-color-variables.js","sources":["../../../../../../src/core/tokens/style-dictionary/formats/css-dynamic-color-variables.ts"],"sourcesContent":["import type { Dictionary, File, Format } from \"style-dictionary/types\";\nimport { fileHeader, formattedVariables } from \"style-dictionary/utils\";\nimport { PREFIX } from \"../config.js\";\n\nconst cssDynamicColorVariablesFormat: Format = {\n name: \"css/dynamic-color-variables\",\n format: async ({\n dictionary,\n file,\n }: { dictionary: Dictionary; file: File }) => {\n const dynamicColorTokens = (scheme: string) =>\n dictionary.allTokens.filter((token) => token.path.includes(scheme));\n\n return `${await fileHeader({ file })}\n/* stylelint-disable */\n@use \"../../jkl\";\n\n@layer jokul.theme {\n ${[\"light\", \"dark\"]\n .map(\n (scheme) => `@include jkl.${scheme}-mode-variables {\n${formattedVariables({\n dictionary: {\n ...dictionary,\n allTokens: dynamicColorTokens(scheme),\n },\n format: \"css\",\n formatting: {\n indentation: \" \",\n prefix: `--${PREFIX}-`,\n },\n})}\n }`,\n )\n .join(\"\\n\\n \")}\n}\n`;\n },\n};\n\nexport default cssDynamicColorVariablesFormat;\n"],"names":["cssDynamicColorVariablesFormat","name","format","async","dictionary","file","dynamicColorTokens","scheme","allTokens","filter","token","path","includes","fileHeader","map","formattedVariables","formatting","indentation","prefix","PREFIX","join"],"mappings":"kHAIA,MAAMA,EAAyC,CAC3CC,KAAM,8BACNC,OAAQC,OACJC,WAAAA,EACAC,KAAAA,MAEA,MAAMC,EAAsBC,GACxBH,EAAWI,UAAUC,QAAQC,GAAUA,EAAMC,KAAKC,SAASL,KAE/D,MAAO,SAASM,EAAW,CAAER,KAAAA,gFAK/B,CAAC,QAAS,QACPS,KACIP,GAAW,gBAAgBA,uBACtCQ,EAAmB,CACjBX,WAAY,IACLA,EACHI,UAAWF,EAAmBC,IAElCL,OAAQ,MACRc,WAAY,CACRC,YAAa,WACbC,OAAQ,KAAKC,mBAKZC,KAAK,kBAAW"}
@@ -0,0 +1,3 @@
1
+ import { Format } from 'style-dictionary/types';
2
+ declare const cssThemeVariablesFormat: Format;
3
+ export default cssThemeVariablesFormat;
@@ -0,0 +1,2 @@
1
+ import{fileHeader as a,formattedVariables as t}from"style-dictionary/utils";import{PREFIX as i}from"../config.js";const e={name:"css/theme-variables",format:async({dictionary:e,file:o})=>`${await a({file:o})}\n@layer jokul.theme {\n :root {\n${t({dictionary:e,format:"css",formatting:{indentation:" ",prefix:`--${i}-`}})}\n }\n}`};export{e as default};
2
+ //# sourceMappingURL=css-theme-variables.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"css-theme-variables.js","sources":["../../../../../../src/core/tokens/style-dictionary/formats/css-theme-variables.ts"],"sourcesContent":["import { fileHeader, formattedVariables } from \"style-dictionary/utils\";\nimport { PREFIX } from \"../config.js\";\nimport type { Dictionary, File, Format } from \"style-dictionary/types\";\n\nconst cssThemeVariablesFormat: Format = {\n name: \"css/theme-variables\",\n format: async ({\n dictionary,\n file,\n }: { dictionary: Dictionary; file: File }) => {\n return `${await fileHeader({ file })}\n@layer jokul.theme {\n :root {\n${formattedVariables({\n dictionary,\n format: \"css\",\n formatting: {\n indentation: \" \",\n prefix: `--${PREFIX}-`,\n },\n})}\n }\n}`;\n },\n};\n\nexport default cssThemeVariablesFormat;\n"],"names":["cssThemeVariablesFormat","name","format","async","dictionary","file","fileHeader","formattedVariables","formatting","indentation","prefix","PREFIX"],"mappings":"kHAIA,MAAMA,EAAkC,CACpCC,KAAM,sBACNC,OAAQC,OACJC,WAAAA,EACAC,KAAAA,KAEO,SAASC,EAAW,CAAED,KAAAA,2CAGnCE,EAAmB,CACjBH,WAAAA,EACAF,OAAQ,MACRM,WAAY,CACRC,YAAa,WACbC,OAAQ,KAAKC"}
@@ -0,0 +1,6 @@
1
+ import { default as cssDynamicColorVariablesFormat } from './css-dynamic-color-variables.js';
2
+ import { default as cssThemeVariablesFormat } from './css-theme-variables.js';
3
+ import { default as javascriptEsmFormat } from './javascript-esm.js';
4
+ import { default as scssThemeVariablesFormat } from './scss-theme-variables.js';
5
+ import { default as tailwindCssColorsFormat } from './tailwindcss-colors.js';
6
+ export { javascriptEsmFormat, cssThemeVariablesFormat, scssThemeVariablesFormat, tailwindCssColorsFormat, cssDynamicColorVariablesFormat, };