@hkdigital/lib-sveltekit 0.2.20 → 0.2.21

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 (254) hide show
  1. package/README.md +135 -135
  2. package/dist/assets/autospuiten/car-paint-picker.js +41 -41
  3. package/dist/assets/autospuiten/labels.js +7 -7
  4. package/dist/classes/cache/IndexedDbCache.js +1407 -1407
  5. package/dist/classes/cache/MemoryResponseCache.js +138 -138
  6. package/dist/classes/cache/index.js +5 -5
  7. package/dist/classes/cache/typedef.js +41 -41
  8. package/dist/classes/data/IterableTree.js +243 -243
  9. package/dist/classes/data/Selector.js +190 -190
  10. package/dist/classes/data/index.js +2 -2
  11. package/dist/classes/events/EventEmitter.js +275 -275
  12. package/dist/classes/events/index.js +2 -2
  13. package/dist/classes/index.js +4 -4
  14. package/dist/classes/logging/Logger.js +210 -210
  15. package/dist/classes/logging/constants.js +16 -16
  16. package/dist/classes/logging/index.js +4 -4
  17. package/dist/classes/logging/typedef.js +17 -17
  18. package/dist/classes/promise/HkPromise.js +377 -377
  19. package/dist/classes/promise/index.js +1 -1
  20. package/dist/classes/services/ServiceBase.js +463 -463
  21. package/dist/classes/services/ServiceManager.js +614 -614
  22. package/dist/classes/services/index.js +5 -5
  23. package/dist/classes/services/service-states.js +205 -205
  24. package/dist/classes/services/typedef.js +179 -179
  25. package/dist/classes/stores/SubscribersCount.js +107 -107
  26. package/dist/classes/stores/index.js +1 -1
  27. package/dist/classes/streams/LogTransformStream.js +19 -19
  28. package/dist/classes/streams/ServerEventsStore.js +110 -110
  29. package/dist/classes/streams/TimeStampSource.js +26 -26
  30. package/dist/classes/streams/index.js +3 -3
  31. package/dist/classes/svelte/audio/AudioLoader.svelte.js +58 -58
  32. package/dist/classes/svelte/audio/AudioScene.svelte.js +324 -324
  33. package/dist/classes/svelte/audio/mocks.js +35 -35
  34. package/dist/classes/svelte/finite-state-machine/FiniteStateMachine.svelte.js +133 -133
  35. package/dist/classes/svelte/finite-state-machine/index.js +1 -1
  36. package/dist/classes/svelte/image/ImageLoader.svelte.js +45 -45
  37. package/dist/classes/svelte/image/ImageScene.svelte.js +249 -249
  38. package/dist/classes/svelte/image/ImageVariantsLoader.svelte.js +152 -152
  39. package/dist/classes/svelte/image/index.js +4 -4
  40. package/dist/classes/svelte/image/mocks.js +35 -35
  41. package/dist/classes/svelte/image/typedef.js +8 -8
  42. package/dist/classes/svelte/index.js +14 -14
  43. package/dist/classes/svelte/loading-state-machine/LoadingStateMachine.svelte.js +109 -109
  44. package/dist/classes/svelte/loading-state-machine/constants.js +16 -16
  45. package/dist/classes/svelte/loading-state-machine/index.js +3 -3
  46. package/dist/classes/svelte/network-loader/NetworkLoader.svelte.js +338 -338
  47. package/dist/classes/svelte/network-loader/constants.js +3 -3
  48. package/dist/classes/svelte/network-loader/index.js +3 -3
  49. package/dist/classes/svelte/network-loader/mocks.js +30 -30
  50. package/dist/classes/svelte/network-loader/typedef.js +8 -8
  51. package/dist/components/area/HkArea.svelte +49 -49
  52. package/dist/components/area/HkGridArea.svelte +77 -77
  53. package/dist/components/area/index.js +2 -2
  54. package/dist/components/buttons/button/Button.svelte +82 -82
  55. package/dist/components/buttons/button-icon-steeze/SteezeIconButton.svelte +30 -30
  56. package/dist/components/buttons/button-text/TextButton.svelte +21 -21
  57. package/dist/components/buttons/index.js +3 -3
  58. package/dist/components/debug/debug-panel-design-scaling/DebugPanelDesignScaling.svelte +146 -146
  59. package/dist/components/debug/index.js +1 -1
  60. package/dist/components/drag-drop/DragController.js +44 -44
  61. package/dist/components/drag-drop/DragDropContext.svelte +111 -111
  62. package/dist/components/drag-drop/Draggable.svelte +519 -519
  63. package/dist/components/drag-drop/DropZoneArea.svelte +119 -119
  64. package/dist/components/drag-drop/DropZoneList.svelte +125 -125
  65. package/dist/components/drag-drop/{DropZone.svelte → Dropzone.svelte} +258 -258
  66. package/dist/components/drag-drop/actions.js +26 -26
  67. package/dist/components/drag-drop/drag-state.svelte.js +322 -322
  68. package/dist/components/drag-drop/index.js +7 -7
  69. package/dist/components/drag-drop/util.js +85 -85
  70. package/dist/components/hkdev/blocks/TextBlock.svelte +46 -46
  71. package/dist/components/hkdev/buttons/CheckButton.svelte +62 -62
  72. package/dist/components/icons/HkIcon.svelte +86 -86
  73. package/dist/components/icons/HkTabIcon.svelte +116 -116
  74. package/dist/components/icons/SteezeIcon.svelte +97 -97
  75. package/dist/components/icons/index.js +6 -6
  76. package/dist/components/icons/typedef.js +16 -16
  77. package/dist/components/index.js +2 -2
  78. package/dist/components/inputs/index.js +1 -1
  79. package/dist/components/inputs/text-input/TestTextInput.svelte__ +102 -102
  80. package/dist/components/inputs/text-input/TextInput.svelte +223 -223
  81. package/dist/components/inputs/text-input/TextInput.svelte___ +83 -83
  82. package/dist/components/inputs/text-input/assets/IconInvalid.svelte +14 -14
  83. package/dist/components/inputs/text-input/assets/IconValid.svelte +12 -12
  84. package/dist/components/layout/grid-layers/GridLayers.svelte +63 -63
  85. package/dist/components/layout/grid-layers/util.js +74 -74
  86. package/dist/components/layout/index.js +1 -1
  87. package/dist/components/panels/index.js +1 -1
  88. package/dist/components/panels/panel/Panel.svelte +43 -43
  89. package/dist/components/rows/index.js +3 -3
  90. package/dist/components/rows/panel-grid-row/PanelGridRow.svelte +104 -104
  91. package/dist/components/rows/panel-row-2/PanelRow2.svelte +40 -40
  92. package/dist/components/tab-bar/HkTabBar.state.svelte.js +149 -149
  93. package/dist/components/tab-bar/HkTabBar.svelte +74 -74
  94. package/dist/components/tab-bar/HkTabBarSelector.state.svelte.js +93 -93
  95. package/dist/components/tab-bar/HkTabBarSelector.svelte +49 -49
  96. package/dist/components/tab-bar/index.js +17 -17
  97. package/dist/components/tab-bar/typedef.js +11 -11
  98. package/dist/config/imagetools-config.js +189 -189
  99. package/dist/config/imagetools.d.ts +72 -72
  100. package/dist/constants/bases.js +13 -13
  101. package/dist/constants/errors/api.js +9 -9
  102. package/dist/constants/errors/generic.js +5 -5
  103. package/dist/constants/errors/index.js +3 -3
  104. package/dist/constants/errors/jwt.js +5 -5
  105. package/dist/constants/http/headers.js +6 -6
  106. package/dist/constants/http/index.js +2 -2
  107. package/dist/constants/http/methods.js +14 -14
  108. package/dist/constants/index.js +3 -3
  109. package/dist/constants/mime/application.js +5 -5
  110. package/dist/constants/mime/audio.js +13 -13
  111. package/dist/constants/mime/image.js +3 -3
  112. package/dist/constants/mime/index.js +4 -4
  113. package/dist/constants/mime/text.js +2 -2
  114. package/dist/constants/regexp/index.js +31 -31
  115. package/dist/constants/regexp/inspiratie.js__ +95 -95
  116. package/dist/constants/regexp/text.js +49 -49
  117. package/dist/constants/regexp/user.js +32 -32
  118. package/dist/constants/regexp/web.js +3 -3
  119. package/dist/constants/state-labels/drag-states.js +6 -6
  120. package/dist/constants/state-labels/drop-states.js +6 -6
  121. package/dist/constants/state-labels/input-states.js +11 -11
  122. package/dist/constants/state-labels/submit-states.js +4 -4
  123. package/dist/constants/time.js +28 -28
  124. package/dist/css/utilities.css +43 -43
  125. package/dist/design/design-config.js +73 -73
  126. package/dist/design/tailwind-theme-extend.js +158 -158
  127. package/dist/features/button-group/ButtonGroup.svelte +82 -82
  128. package/dist/features/button-group/typedef.js +10 -10
  129. package/dist/features/compare-left-right/CompareLeftRight.svelte +179 -179
  130. package/dist/features/compare-left-right/index.js +1 -1
  131. package/dist/features/game-box/GameBox.svelte +577 -577
  132. package/dist/features/game-box/gamebox.util.js +83 -83
  133. package/dist/features/hk-app-layout/HkAppLayout.state.svelte.js +25 -25
  134. package/dist/features/hk-app-layout/HkAppLayout.svelte +251 -251
  135. package/dist/features/image-box/ImageBox.svelte +210 -210
  136. package/dist/features/image-box/index.js +5 -5
  137. package/dist/features/image-box/typedef.js +32 -32
  138. package/dist/features/index.js +23 -23
  139. package/dist/features/presenter/ImageSlide.svelte +64 -64
  140. package/dist/features/presenter/Presenter.state.svelte.js +638 -638
  141. package/dist/features/presenter/Presenter.svelte +142 -142
  142. package/dist/features/presenter/constants.js +7 -7
  143. package/dist/features/presenter/index.js +10 -10
  144. package/dist/features/presenter/typedef.js +106 -106
  145. package/dist/features/presenter/util.js +210 -210
  146. package/dist/features/virtual-viewport/VirtualViewport.svelte +196 -196
  147. package/dist/logging/adapters/console.js +114 -114
  148. package/dist/logging/adapters/pino.js +60 -60
  149. package/dist/logging/constants.js +1 -1
  150. package/dist/logging/factories/client.js +21 -21
  151. package/dist/logging/factories/server.js +22 -22
  152. package/dist/logging/factories/universal.js +23 -23
  153. package/dist/logging/index.js +8 -8
  154. package/dist/schemas/index.js +1 -1
  155. package/dist/schemas/validate-url.js +180 -180
  156. package/dist/server/index.js +1 -1
  157. package/dist/server/logger.js +94 -94
  158. package/dist/states/index.js +1 -1
  159. package/dist/states/navigation.svelte.js +55 -55
  160. package/dist/stores/index.js +1 -1
  161. package/dist/stores/theme.js +80 -80
  162. package/dist/themes/hkdev/components/blocks/text-block.css +34 -41
  163. package/dist/themes/hkdev/components/boxes/game-box.css +11 -12
  164. package/dist/themes/hkdev/components/buttons/button-icon-steeze.css +22 -22
  165. package/dist/themes/hkdev/components/buttons/button-text.css +32 -32
  166. package/dist/themes/hkdev/components/buttons/button.css +146 -146
  167. package/dist/themes/hkdev/components/buttons/skip-button.css +5 -6
  168. package/dist/themes/hkdev/components/drag-drop/draggable.css +73 -73
  169. package/dist/themes/hkdev/components/drag-drop/drop-zone.css +58 -48
  170. package/dist/themes/hkdev/components/icons/icon-steeze.css +16 -22
  171. package/dist/themes/hkdev/components/inputs/text-input.css +102 -104
  172. package/dist/themes/hkdev/components/panels/panel.css +25 -27
  173. package/dist/themes/hkdev/components/rows/panel-grid-row.css +4 -6
  174. package/dist/themes/hkdev/components/rows/panel-row-2.css +5 -7
  175. package/dist/themes/hkdev/components.css +29 -53
  176. package/dist/themes/hkdev/debug.css +1 -1
  177. package/dist/themes/hkdev/global/layout.css +32 -39
  178. package/dist/themes/hkdev/global/on-colors.css +32 -53
  179. package/dist/themes/hkdev/globals.css +4 -11
  180. package/dist/themes/hkdev/responsive.css +12 -12
  181. package/dist/themes/hkdev/theme-ext.js +12 -15
  182. package/dist/themes/hkdev/theme.css +219 -0
  183. package/dist/themes/index.d.ts +1 -1
  184. package/dist/themes/index.js +1 -1
  185. package/dist/typedef/context.js +6 -6
  186. package/dist/typedef/drag.js +25 -25
  187. package/dist/typedef/drop.js +12 -12
  188. package/dist/typedef/image.js +38 -38
  189. package/dist/typedef/index.js +4 -4
  190. package/dist/util/array/index.js +436 -436
  191. package/dist/util/bases/base58.js +262 -262
  192. package/dist/util/bases/index.js +1 -1
  193. package/dist/util/compare/index.js +247 -247
  194. package/dist/util/css/css-vars.js +83 -83
  195. package/dist/util/css/index.js +1 -1
  196. package/dist/util/design-system/components/states.js +22 -22
  197. package/dist/util/design-system/css/clamp.js +66 -66
  198. package/dist/util/design-system/css/root-design-vars.js +102 -102
  199. package/dist/util/design-system/index.js +5 -5
  200. package/dist/util/design-system/layout/scaling.js +228 -228
  201. package/dist/util/design-system/skeleton.js +208 -208
  202. package/dist/util/design-system/tailwind.js +288 -288
  203. package/dist/util/env/index.js +9 -9
  204. package/dist/util/expect/arrays.js +47 -47
  205. package/dist/util/expect/index.js +259 -259
  206. package/dist/util/expect/primitives.js +55 -55
  207. package/dist/util/expect/url.js +60 -60
  208. package/dist/util/function/index.js +218 -218
  209. package/dist/util/geo/index.js +26 -26
  210. package/dist/util/http/caching.js +263 -263
  211. package/dist/util/http/errors.js +97 -97
  212. package/dist/util/http/headers.js +75 -75
  213. package/dist/util/http/http-request.js +578 -578
  214. package/dist/util/http/index.js +22 -22
  215. package/dist/util/http/json-request.js +224 -224
  216. package/dist/util/http/mocks.js +65 -65
  217. package/dist/util/http/response.js +294 -294
  218. package/dist/util/http/typedef.js +93 -93
  219. package/dist/util/http/url.js +52 -52
  220. package/dist/util/image/index.js +86 -86
  221. package/dist/util/index.js +2 -2
  222. package/dist/util/is/index.js +140 -140
  223. package/dist/util/iterate/index.js +234 -234
  224. package/dist/util/object/index.js +1361 -1361
  225. package/dist/util/singleton/index.js +97 -97
  226. package/dist/util/string/array-path.js +75 -75
  227. package/dist/util/string/convert.js +54 -54
  228. package/dist/util/string/fs.js +226 -226
  229. package/dist/util/string/index.js +5 -5
  230. package/dist/util/string/interpolate.js +61 -61
  231. package/dist/util/string/pad.js +10 -10
  232. package/dist/util/svelte/index.js +4 -4
  233. package/dist/util/svelte/loading/loading-tracker.svelte.js +108 -108
  234. package/dist/util/svelte/observe/index.js +49 -49
  235. package/dist/util/svelte/state-context/index.js +117 -117
  236. package/dist/util/svelte/wait/index.js +38 -38
  237. package/dist/util/sveltekit/index.js +1 -1
  238. package/dist/util/sveltekit/route-folders/index.js +101 -101
  239. package/dist/util/time/index.js +323 -323
  240. package/dist/util/unique/index.js +249 -249
  241. package/dist/valibot/date.js__ +10 -10
  242. package/dist/valibot/index.js +9 -9
  243. package/dist/valibot/url.js +95 -95
  244. package/dist/valibot/user.js +23 -23
  245. package/dist/zod/all.js +33 -33
  246. package/dist/zod/generic.js +11 -11
  247. package/dist/zod/javascript.js +32 -32
  248. package/dist/zod/user.js +16 -16
  249. package/dist/zod/web.js +52 -52
  250. package/package.json +132 -129
  251. package/dist/components/layout/grid-layers/GridLayers.svelte__heightFrom__ +0 -372
  252. package/dist/themes/hkdev/theme.d.ts +0 -234
  253. package/dist/themes/hkdev/theme.js +0 -235
  254. package/dist/util/http/test-data__/content-length-test-hkdigital-small.V4HfZyBQ.avif +0 -0
@@ -1,83 +1,83 @@
1
- <script>
2
- /**
3
- * @type {{
4
- * classes?: string,
5
- * fieldClasses?: string,
6
- * legendClasses?: string,
7
- * legendTitle?: string,
8
- * error?: boolean,
9
- * type?: string,
10
- * placeholder: string,
11
- * required: boolean,
12
- * snippetWarning?: import('svelte').Snippet,
13
- * } & { [attr: string]: any }}
14
- */
15
- let {
16
- // Style
17
- classes,
18
- fieldClasses,
19
- legendClasses,
20
-
21
- // Functionality
22
- name,
23
- disabled,
24
- required,
25
-
26
- // initialValue
27
- // value
28
- // readonly
29
- // pattern
30
- // minlength
31
- // maxlength
32
-
33
- // Text placeholders
34
- legendTitle,
35
- placeholder,
36
-
37
- type,
38
- snippetWarning,
39
-
40
- // Attributes
41
- ...attrs
42
- } = $props();
43
- </script>
44
-
45
- {#snippet defaultWarning()}
46
- <svg
47
- width="17"
48
- height="16"
49
- viewBox="0 0 17 16"
50
- fill="none"
51
- xmlns="http://www.w3.org/2000/svg"
52
- >
53
- <path
54
- fill-rule="evenodd"
55
- clip-rule="evenodd"
56
- d="M6.36747 1.28014C7.3152 -0.426712 9.68492 -0.426712 10.6318 1.28014L16.6669 12.1596C17.6138 13.8664 16.429 16 14.5343 16H2.46497C0.570331 16 -0.613713 13.8664 0.333194 12.1596L6.36665 1.28014H6.36747ZM8.50006 5.75805C8.66328 5.75805 8.81981 5.82549 8.93522 5.94553C9.05063 6.06556 9.11547 6.22837 9.11547 6.39812V9.59846C9.11547 9.76822 9.05063 9.93102 8.93522 10.0511C8.81981 10.1711 8.66328 10.2385 8.50006 10.2385C8.33684 10.2385 8.18031 10.1711 8.0649 10.0511C7.94949 9.93102 7.88465 9.76822 7.88465 9.59846V6.39812C7.88465 6.22837 7.94949 6.06556 8.0649 5.94553C8.18031 5.82549 8.33684 5.75805 8.50006 5.75805ZM8.50006 12.7988C8.66328 12.7988 8.81981 12.7314 8.93522 12.6113C9.05063 12.4913 9.11547 12.3285 9.11547 12.1587C9.11547 11.989 9.05063 11.8262 8.93522 11.7061C8.81981 11.5861 8.66328 11.5187 8.50006 11.5187C8.33684 11.5187 8.18031 11.5861 8.0649 11.7061C7.94949 11.8262 7.88465 11.989 7.88465 12.1587C7.88465 12.3285 7.94949 12.4913 8.0649 12.6113C8.18031 12.7314 8.33684 12.7988 8.50006 12.7988Z"
57
- fill="#F8705E"
58
- />
59
- </svg>
60
- {/snippet}
61
-
62
- <fieldset
63
- data-input="text-input"
64
- class="flex w-full items-center rounded {fieldClasses}"
65
- >
66
- <legend class="px-2 {legendClasses}" class:error>{legendTitle}</legend>
67
- <input
68
- class="w-full border-none bg-transparent {classes}"
69
- {type}
70
- {placeholder}
71
- {name}
72
- {required}
73
- {...attrs}
74
- />
75
- {#if error}
76
- {#if snippetWarning}
77
- {@render snippetWarning()}
78
- {:else}
79
- {@render defaultWarning()}
80
- {/if}
81
- <!-- <img src={warningSymbol} class="mb-2 mr-8" alt="Warning" /> -->
82
- {/if}
83
- </fieldset>
1
+ <script>
2
+ /**
3
+ * @type {{
4
+ * classes?: string,
5
+ * fieldClasses?: string,
6
+ * legendClasses?: string,
7
+ * legendTitle?: string,
8
+ * error?: boolean,
9
+ * type?: string,
10
+ * placeholder: string,
11
+ * required: boolean,
12
+ * snippetWarning?: import('svelte').Snippet,
13
+ * } & { [attr: string]: any }}
14
+ */
15
+ let {
16
+ // Style
17
+ classes,
18
+ fieldClasses,
19
+ legendClasses,
20
+
21
+ // Functionality
22
+ name,
23
+ disabled,
24
+ required,
25
+
26
+ // initialValue
27
+ // value
28
+ // readonly
29
+ // pattern
30
+ // minlength
31
+ // maxlength
32
+
33
+ // Text placeholders
34
+ legendTitle,
35
+ placeholder,
36
+
37
+ type,
38
+ snippetWarning,
39
+
40
+ // Attributes
41
+ ...attrs
42
+ } = $props();
43
+ </script>
44
+
45
+ {#snippet defaultWarning()}
46
+ <svg
47
+ width="17"
48
+ height="16"
49
+ viewBox="0 0 17 16"
50
+ fill="none"
51
+ xmlns="http://www.w3.org/2000/svg"
52
+ >
53
+ <path
54
+ fill-rule="evenodd"
55
+ clip-rule="evenodd"
56
+ d="M6.36747 1.28014C7.3152 -0.426712 9.68492 -0.426712 10.6318 1.28014L16.6669 12.1596C17.6138 13.8664 16.429 16 14.5343 16H2.46497C0.570331 16 -0.613713 13.8664 0.333194 12.1596L6.36665 1.28014H6.36747ZM8.50006 5.75805C8.66328 5.75805 8.81981 5.82549 8.93522 5.94553C9.05063 6.06556 9.11547 6.22837 9.11547 6.39812V9.59846C9.11547 9.76822 9.05063 9.93102 8.93522 10.0511C8.81981 10.1711 8.66328 10.2385 8.50006 10.2385C8.33684 10.2385 8.18031 10.1711 8.0649 10.0511C7.94949 9.93102 7.88465 9.76822 7.88465 9.59846V6.39812C7.88465 6.22837 7.94949 6.06556 8.0649 5.94553C8.18031 5.82549 8.33684 5.75805 8.50006 5.75805ZM8.50006 12.7988C8.66328 12.7988 8.81981 12.7314 8.93522 12.6113C9.05063 12.4913 9.11547 12.3285 9.11547 12.1587C9.11547 11.989 9.05063 11.8262 8.93522 11.7061C8.81981 11.5861 8.66328 11.5187 8.50006 11.5187C8.33684 11.5187 8.18031 11.5861 8.0649 11.7061C7.94949 11.8262 7.88465 11.989 7.88465 12.1587C7.88465 12.3285 7.94949 12.4913 8.0649 12.6113C8.18031 12.7314 8.33684 12.7988 8.50006 12.7988Z"
57
+ fill="#F8705E"
58
+ />
59
+ </svg>
60
+ {/snippet}
61
+
62
+ <fieldset
63
+ data-input="text-input"
64
+ class="flex w-full items-center rounded {fieldClasses}"
65
+ >
66
+ <legend class="px-2 {legendClasses}" class:error>{legendTitle}</legend>
67
+ <input
68
+ class="w-full border-none bg-transparent {classes}"
69
+ {type}
70
+ {placeholder}
71
+ {name}
72
+ {required}
73
+ {...attrs}
74
+ />
75
+ {#if error}
76
+ {#if snippetWarning}
77
+ {@render snippetWarning()}
78
+ {:else}
79
+ {@render defaultWarning()}
80
+ {/if}
81
+ <!-- <img src={warningSymbol} class="mb-2 mr-8" alt="Warning" /> -->
82
+ {/if}
83
+ </fieldset>
@@ -1,14 +1,14 @@
1
- <svg
2
- width="17"
3
- height="16"
4
- viewBox="0 0 17 16"
5
- fill="none"
6
- xmlns="http://www.w3.org/2000/svg"
7
- >
8
- <path
9
- fill-rule="evenodd"
10
- clip-rule="evenodd"
11
- d="M6.36747 1.28014C7.3152 -0.426712 9.68492 -0.426712 10.6318 1.28014L16.6669 12.1596C17.6138 13.8664 16.429 16 14.5343 16H2.46497C0.570331 16 -0.613713 13.8664 0.333194 12.1596L6.36665 1.28014H6.36747ZM8.50006 5.75805C8.66328 5.75805 8.81981 5.82549 8.93522 5.94553C9.05063 6.06556 9.11547 6.22837 9.11547 6.39812V9.59846C9.11547 9.76822 9.05063 9.93102 8.93522 10.0511C8.81981 10.1711 8.66328 10.2385 8.50006 10.2385C8.33684 10.2385 8.18031 10.1711 8.0649 10.0511C7.94949 9.93102 7.88465 9.76822 7.88465 9.59846V6.39812C7.88465 6.22837 7.94949 6.06556 8.0649 5.94553C8.18031 5.82549 8.33684 5.75805 8.50006 5.75805ZM8.50006 12.7988C8.66328 12.7988 8.81981 12.7314 8.93522 12.6113C9.05063 12.4913 9.11547 12.3285 9.11547 12.1587C9.11547 11.989 9.05063 11.8262 8.93522 11.7061C8.81981 11.5861 8.66328 11.5187 8.50006 11.5187C8.33684 11.5187 8.18031 11.5861 8.0649 11.7061C7.94949 11.8262 7.88465 11.989 7.88465 12.1587C7.88465 12.3285 7.94949 12.4913 8.0649 12.6113C8.18031 12.7314 8.33684 12.7988 8.50006 12.7988Z"
12
- fill="currentColor"
13
- />
14
- </svg>
1
+ <svg
2
+ width="17"
3
+ height="16"
4
+ viewBox="0 0 17 16"
5
+ fill="none"
6
+ xmlns="http://www.w3.org/2000/svg"
7
+ >
8
+ <path
9
+ fill-rule="evenodd"
10
+ clip-rule="evenodd"
11
+ d="M6.36747 1.28014C7.3152 -0.426712 9.68492 -0.426712 10.6318 1.28014L16.6669 12.1596C17.6138 13.8664 16.429 16 14.5343 16H2.46497C0.570331 16 -0.613713 13.8664 0.333194 12.1596L6.36665 1.28014H6.36747ZM8.50006 5.75805C8.66328 5.75805 8.81981 5.82549 8.93522 5.94553C9.05063 6.06556 9.11547 6.22837 9.11547 6.39812V9.59846C9.11547 9.76822 9.05063 9.93102 8.93522 10.0511C8.81981 10.1711 8.66328 10.2385 8.50006 10.2385C8.33684 10.2385 8.18031 10.1711 8.0649 10.0511C7.94949 9.93102 7.88465 9.76822 7.88465 9.59846V6.39812C7.88465 6.22837 7.94949 6.06556 8.0649 5.94553C8.18031 5.82549 8.33684 5.75805 8.50006 5.75805ZM8.50006 12.7988C8.66328 12.7988 8.81981 12.7314 8.93522 12.6113C9.05063 12.4913 9.11547 12.3285 9.11547 12.1587C9.11547 11.989 9.05063 11.8262 8.93522 11.7061C8.81981 11.5861 8.66328 11.5187 8.50006 11.5187C8.33684 11.5187 8.18031 11.5861 8.0649 11.7061C7.94949 11.8262 7.88465 11.989 7.88465 12.1587C7.88465 12.3285 7.94949 12.4913 8.0649 12.6113C8.18031 12.7314 8.33684 12.7988 8.50006 12.7988Z"
12
+ fill="currentColor"
13
+ />
14
+ </svg>
@@ -1,12 +1,12 @@
1
- <svg
2
- xmlns="http://www.w3.org/2000/svg"
3
- viewBox="0 0 24 24"
4
- fill="currentColor"
5
- class="size-6"
6
- >
7
- <path
8
- fill-rule="evenodd"
9
- d="M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm13.36-1.814a.75.75 0 1 0-1.22-.872l-3.236 4.53L9.53 12.22a.75.75 0 0 0-1.06 1.06l2.25 2.25a.75.75 0 0 0 1.14-.094l3.75-5.25Z"
10
- clip-rule="evenodd"
11
- />
12
- </svg>
1
+ <svg
2
+ xmlns="http://www.w3.org/2000/svg"
3
+ viewBox="0 0 24 24"
4
+ fill="currentColor"
5
+ class="size-6"
6
+ >
7
+ <path
8
+ fill-rule="evenodd"
9
+ d="M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm13.36-1.814a.75.75 0 1 0-1.22-.872l-3.236 4.53L9.53 12.22a.75.75 0 0 0-1.06 1.06l2.25 2.25a.75.75 0 0 0 1.14-.094l3.75-5.25Z"
10
+ clip-rule="evenodd"
11
+ />
12
+ </svg>
@@ -1,63 +1,63 @@
1
- <script>
2
- /**
3
- * GridLayers Component
4
- *
5
- * Creates a single-cell grid where all children occupy the same space,
6
- * enabling layered layouts with natural height behavior.
7
- *
8
- * @type {{
9
- * base?: string,
10
- * bg?: string,
11
- * padding?: string,
12
- * margin?: string,
13
- * classes?: string,
14
- * style?: string,
15
- * overflow?: string,
16
- * children: import('svelte').Snippet,
17
- * [attr: string]: any
18
- * }}
19
- */
20
- const {
21
- // Container styles
22
- base = '',
23
- bg = '',
24
- padding = '',
25
- margin = '',
26
- classes = '',
27
- style = '',
28
- overflow = '',
29
-
30
- // Content
31
- children,
32
-
33
- // Attributes
34
- ...attrs
35
- } = $props();
36
-
37
- // Build the inline style
38
- let containerStyle = $derived.by(() => {
39
- const styles = ['grid-template: 1fr / 1fr;'];
40
-
41
- if (style) {
42
- styles.push(style);
43
- }
44
-
45
- return styles.join(' ');
46
- });
47
- </script>
48
-
49
- <div
50
- data-component="grid-layers"
51
- class="grid {base} {bg} {classes} {margin} {padding} {overflow}"
52
- style={containerStyle}
53
- {...attrs}
54
- >
55
- {@render children()}
56
- </div>
57
-
58
- <style>
59
- /* All direct children occupy the same grid area */
60
- div > :global(*) {
61
- grid-area: 1 / 1;
62
- }
63
- </style>
1
+ <script>
2
+ /**
3
+ * GridLayers Component
4
+ *
5
+ * Creates a single-cell grid where all children occupy the same space,
6
+ * enabling layered layouts with natural height behavior.
7
+ *
8
+ * @type {{
9
+ * base?: string,
10
+ * bg?: string,
11
+ * padding?: string,
12
+ * margin?: string,
13
+ * classes?: string,
14
+ * style?: string,
15
+ * overflow?: string,
16
+ * children: import('svelte').Snippet,
17
+ * [attr: string]: any
18
+ * }}
19
+ */
20
+ const {
21
+ // Container styles
22
+ base = '',
23
+ bg = '',
24
+ padding = '',
25
+ margin = '',
26
+ classes = '',
27
+ style = '',
28
+ overflow = '',
29
+
30
+ // Content
31
+ children,
32
+
33
+ // Attributes
34
+ ...attrs
35
+ } = $props();
36
+
37
+ // Build the inline style
38
+ let containerStyle = $derived.by(() => {
39
+ const styles = ['grid-template: 1fr / 1fr;'];
40
+
41
+ if (style) {
42
+ styles.push(style);
43
+ }
44
+
45
+ return styles.join(' ');
46
+ });
47
+ </script>
48
+
49
+ <div
50
+ data-component="grid-layers"
51
+ class="grid {base} {bg} {classes} {margin} {padding} {overflow}"
52
+ style={containerStyle}
53
+ {...attrs}
54
+ >
55
+ {@render children()}
56
+ </div>
57
+
58
+ <style>
59
+ /* All direct children occupy the same grid area */
60
+ div > :global(*) {
61
+ grid-area: 1 / 1;
62
+ }
63
+ </style>
@@ -1,74 +1,74 @@
1
- // lib/components/layout/gridLayers.utils.js
2
-
3
- /**
4
- * Sets up a ResizeObserver on the target layer
5
- *
6
- * @param {HTMLElement|null} targetLayer - The layer element to observe
7
- * @param {Function} onHeightChange - Callback when height changes
8
- * @returns {ResizeObserver|null} - The created observer or null
9
- */
10
- export function setupLayerObserver(targetLayer, onHeightChange) {
11
- if (!targetLayer || !window.ResizeObserver) return null;
12
-
13
- // Create new observer
14
- const observer = new ResizeObserver(entries => {
15
- for (const entry of entries) {
16
- if (entry.target === targetLayer) {
17
- // Get the computed style to access margin values
18
- const computedStyle = window.getComputedStyle(targetLayer);
19
- const marginTop = parseInt(computedStyle.marginTop, 10);
20
- const marginBottom = parseInt(computedStyle.marginBottom, 10);
21
-
22
- // Calculate height including border box and margins
23
- let elementHeight = 0;
24
-
25
- if (entry.borderBoxSize) {
26
- const borderBoxSize = Array.isArray(entry.borderBoxSize)
27
- ? entry.borderBoxSize[0]
28
- : entry.borderBoxSize;
29
- elementHeight = borderBoxSize.blockSize;
30
- } else {
31
- // Fallback to getBoundingClientRect
32
- const rect = targetLayer.getBoundingClientRect();
33
- elementHeight = rect.height;
34
- }
35
-
36
- // Add margins to the height
37
- const totalHeight = elementHeight + marginTop + marginBottom;
38
- onHeightChange(totalHeight);
39
- }
40
- }
41
- });
42
-
43
- // Start observing
44
- observer.observe(targetLayer);
45
- return observer;
46
- }
47
-
48
- /**
49
- * Measures the height of the specified layer, including margins
50
- *
51
- * @param {HTMLElement|null} container - The container to search in
52
- * @param {string} layerId - The data-layer attribute value to find
53
- * @returns {{ element: HTMLElement|null, height: number }} The element and its height
54
- */
55
- export function measureTargetLayer(container, layerId) {
56
- if (!layerId || !container) return { element: null, height: 0 };
57
-
58
- const layerElement = container.querySelector(`[data-layer="${layerId}"]`);
59
-
60
- if (!layerElement) return { element: null, height: 0 };
61
-
62
- // Get the computed style to access margin values
63
- const computedStyle = window.getComputedStyle(layerElement);
64
- const marginTop = parseInt(computedStyle.marginTop, 10);
65
- const marginBottom = parseInt(computedStyle.marginBottom, 10);
66
-
67
- // Get the element's border box height
68
- const rect = layerElement.getBoundingClientRect();
69
-
70
- // Calculate total height including margins
71
- const height = rect.height > 0 ? rect.height + marginTop + marginBottom : 0;
72
-
73
- return { element: layerElement, height };
74
- }
1
+ // lib/components/layout/gridLayers.utils.js
2
+
3
+ /**
4
+ * Sets up a ResizeObserver on the target layer
5
+ *
6
+ * @param {HTMLElement|null} targetLayer - The layer element to observe
7
+ * @param {Function} onHeightChange - Callback when height changes
8
+ * @returns {ResizeObserver|null} - The created observer or null
9
+ */
10
+ export function setupLayerObserver(targetLayer, onHeightChange) {
11
+ if (!targetLayer || !window.ResizeObserver) return null;
12
+
13
+ // Create new observer
14
+ const observer = new ResizeObserver(entries => {
15
+ for (const entry of entries) {
16
+ if (entry.target === targetLayer) {
17
+ // Get the computed style to access margin values
18
+ const computedStyle = window.getComputedStyle(targetLayer);
19
+ const marginTop = parseInt(computedStyle.marginTop, 10);
20
+ const marginBottom = parseInt(computedStyle.marginBottom, 10);
21
+
22
+ // Calculate height including border box and margins
23
+ let elementHeight = 0;
24
+
25
+ if (entry.borderBoxSize) {
26
+ const borderBoxSize = Array.isArray(entry.borderBoxSize)
27
+ ? entry.borderBoxSize[0]
28
+ : entry.borderBoxSize;
29
+ elementHeight = borderBoxSize.blockSize;
30
+ } else {
31
+ // Fallback to getBoundingClientRect
32
+ const rect = targetLayer.getBoundingClientRect();
33
+ elementHeight = rect.height;
34
+ }
35
+
36
+ // Add margins to the height
37
+ const totalHeight = elementHeight + marginTop + marginBottom;
38
+ onHeightChange(totalHeight);
39
+ }
40
+ }
41
+ });
42
+
43
+ // Start observing
44
+ observer.observe(targetLayer);
45
+ return observer;
46
+ }
47
+
48
+ /**
49
+ * Measures the height of the specified layer, including margins
50
+ *
51
+ * @param {HTMLElement|null} container - The container to search in
52
+ * @param {string} layerId - The data-layer attribute value to find
53
+ * @returns {{ element: HTMLElement|null, height: number }} The element and its height
54
+ */
55
+ export function measureTargetLayer(container, layerId) {
56
+ if (!layerId || !container) return { element: null, height: 0 };
57
+
58
+ const layerElement = container.querySelector(`[data-layer="${layerId}"]`);
59
+
60
+ if (!layerElement) return { element: null, height: 0 };
61
+
62
+ // Get the computed style to access margin values
63
+ const computedStyle = window.getComputedStyle(layerElement);
64
+ const marginTop = parseInt(computedStyle.marginTop, 10);
65
+ const marginBottom = parseInt(computedStyle.marginBottom, 10);
66
+
67
+ // Get the element's border box height
68
+ const rect = layerElement.getBoundingClientRect();
69
+
70
+ // Calculate total height including margins
71
+ const height = rect.height > 0 ? rect.height + marginTop + marginBottom : 0;
72
+
73
+ return { element: layerElement, height };
74
+ }
@@ -1 +1 @@
1
- export { default as GridLayers } from './grid-layers/GridLayers.svelte';
1
+ export { default as GridLayers } from './grid-layers/GridLayers.svelte';
@@ -1 +1 @@
1
- export { default as Panel } from './panel/Panel.svelte';
1
+ export { default as Panel } from './panel/Panel.svelte';
@@ -1,43 +1,43 @@
1
- <script>
2
- /**
3
- * @example
4
- *
5
- *
6
- */
7
-
8
- /**
9
- * @type {{
10
- * base?: string,
11
- * bg?: string,
12
- * classes?: string,
13
- * width?: 'sm' | 'md' | 'lg',
14
- * variant?: string,
15
- * children?: import('svelte').Snippet,
16
- * } & { [attr: string]: any }}
17
- */
18
- const {
19
- // Style
20
- base,
21
- bg,
22
- classes,
23
-
24
- width = 'md',
25
- variant = 'light',
26
-
27
- // Snippets
28
- children,
29
-
30
- // Attributes
31
- ...attrs
32
- } = $props();
33
- </script>
34
-
35
- <div
36
- data-component="panel"
37
- data-width={width}
38
- data-variant={variant}
39
- class="{base} {bg} {classes}"
40
- {...attrs}
41
- >
42
- {@render children()}
43
- </div>
1
+ <script>
2
+ /**
3
+ * @example
4
+ *
5
+ *
6
+ */
7
+
8
+ /**
9
+ * @type {{
10
+ * base?: string,
11
+ * bg?: string,
12
+ * classes?: string,
13
+ * width?: 'sm' | 'md' | 'lg',
14
+ * variant?: string,
15
+ * children?: import('svelte').Snippet,
16
+ * } & { [attr: string]: any }}
17
+ */
18
+ const {
19
+ // Style
20
+ base,
21
+ bg,
22
+ classes,
23
+
24
+ width = 'md',
25
+ variant = 'light',
26
+
27
+ // Snippets
28
+ children,
29
+
30
+ // Attributes
31
+ ...attrs
32
+ } = $props();
33
+ </script>
34
+
35
+ <div
36
+ data-component="panel"
37
+ data-width={width}
38
+ data-variant={variant}
39
+ class="{base} {bg} {classes}"
40
+ {...attrs}
41
+ >
42
+ {@render children()}
43
+ </div>
@@ -1,3 +1,3 @@
1
- export { default as PanelGridRow } from './panel-grid-row/PanelGridRow.svelte';
2
-
3
- export { default as PanelRow2 } from './panel-row-2/PanelRow2.svelte';
1
+ export { default as PanelGridRow } from './panel-grid-row/PanelGridRow.svelte';
2
+
3
+ export { default as PanelRow2 } from './panel-row-2/PanelRow2.svelte';