@hkdigital/lib-core 0.3.9 → 0.3.11

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 (428) hide show
  1. package/README.md +149 -149
  2. package/dist/assets/autospuiten/car-paint-picker.d.ts +7 -7
  3. package/dist/assets/autospuiten/car-paint-picker.js +41 -41
  4. package/dist/assets/autospuiten/labels.js +7 -7
  5. package/dist/classes/data/IterableTree.d.ts +15 -24
  6. package/dist/classes/data/IterableTree.js +242 -243
  7. package/dist/classes/data/Selector.js +190 -190
  8. package/dist/classes/data/index.js +2 -2
  9. package/dist/classes/data/typedef.d.ts +8 -0
  10. package/dist/classes/data/typedef.js +9 -0
  11. package/dist/classes/event-emitter/EventEmitter.js +273 -275
  12. package/dist/classes/event-emitter/index.js +2 -2
  13. package/dist/classes/index.js +4 -4
  14. package/dist/classes/promise/HkPromise.d.ts +18 -17
  15. package/dist/classes/promise/HkPromise.js +384 -377
  16. package/dist/classes/promise/index.js +1 -1
  17. package/dist/classes/stores/SubscribersCount.js +107 -107
  18. package/dist/classes/stores/index.js +1 -1
  19. package/dist/classes/streams/LogTransformStream.js +19 -19
  20. package/dist/classes/streams/ServerEventsStore.d.ts +2 -3
  21. package/dist/classes/streams/ServerEventsStore.js +111 -110
  22. package/dist/classes/streams/TimeStampSource.js +26 -26
  23. package/dist/classes/streams/index.js +3 -3
  24. package/dist/classes/svelte/finite-state-machine/FiniteStateMachine.svelte.js +133 -133
  25. package/dist/classes/svelte/finite-state-machine/index.js +1 -1
  26. package/dist/classes/svelte/index.d.ts +0 -8
  27. package/dist/classes/svelte/index.js +11 -14
  28. package/dist/classes/svelte/loading-state-machine/LoadingStateMachine.svelte.js +109 -109
  29. package/dist/classes/svelte/loading-state-machine/constants.js +16 -16
  30. package/dist/classes/svelte/loading-state-machine/index.js +3 -3
  31. package/dist/config/README.md +196 -0
  32. package/dist/config/{imagetools-config.js → generators/imagetools.js} +189 -189
  33. package/dist/config/generators/vite.d.ts +47 -0
  34. package/dist/config/generators/vite.js +142 -0
  35. package/dist/config/imagetools.d.ts +72 -72
  36. package/dist/config/vite.d.ts +1 -0
  37. package/dist/config/vite.js +5 -0
  38. package/dist/constants/bases/index.js +13 -13
  39. package/dist/constants/http/headers.js +6 -6
  40. package/dist/constants/http/index.js +2 -2
  41. package/dist/constants/http/methods.js +14 -14
  42. package/dist/constants/index.js +6 -6
  43. package/dist/constants/mime/application.js +5 -5
  44. package/dist/constants/mime/audio.js +13 -13
  45. package/dist/constants/mime/image.js +3 -3
  46. package/dist/constants/mime/index.js +4 -4
  47. package/dist/constants/mime/text.js +2 -2
  48. package/dist/constants/regexp/README.md +95 -0
  49. package/dist/constants/regexp/index.d.ts +1 -1
  50. package/dist/constants/regexp/index.js +31 -31
  51. package/dist/constants/regexp/inspiratie.js__ +95 -95
  52. package/dist/constants/regexp/text.d.ts +3 -3
  53. package/dist/constants/regexp/text.js +49 -49
  54. package/dist/constants/regexp/url.d.ts +1 -0
  55. package/dist/constants/regexp/url.js +3 -0
  56. package/dist/constants/regexp/user.d.ts +0 -1
  57. package/dist/constants/regexp/user.js +29 -33
  58. package/dist/constants/states/drag.js +6 -6
  59. package/dist/constants/states/drop.js +6 -6
  60. package/dist/constants/states/index.js +4 -4
  61. package/dist/constants/states/input.js +11 -11
  62. package/dist/constants/states/submit.js +4 -4
  63. package/dist/constants/time/index.js +28 -28
  64. package/dist/css/utilities.css +43 -43
  65. package/dist/design/README.md +405 -0
  66. package/dist/design/{design-config.js → config/design-config.js} +73 -73
  67. package/dist/{util/design-system/tailwind.js → design/generators/index.js} +288 -288
  68. package/dist/design/index.d.ts +8 -0
  69. package/dist/design/index.js +97 -0
  70. package/dist/{util/design-system → design/plugins}/skeleton.js +208 -208
  71. package/dist/design/tailwind-theme-extend.js +158 -158
  72. package/dist/design/themes/README.md +103 -0
  73. package/dist/{themes → design/themes}/hkdev/components/blocks/text-block.css +34 -34
  74. package/dist/{themes → design/themes}/hkdev/components/boxes/game-box.css +11 -11
  75. package/dist/{themes → design/themes}/hkdev/components/buttons/button-icon-steeze.css +22 -22
  76. package/dist/{themes → design/themes}/hkdev/components/buttons/button-text.css +32 -32
  77. package/dist/{themes → design/themes}/hkdev/components/buttons/button.css +146 -146
  78. package/dist/{themes → design/themes}/hkdev/components/buttons/skip-button.css +5 -5
  79. package/dist/{themes → design/themes}/hkdev/components/drag-drop/draggable.css +73 -73
  80. package/dist/{themes → design/themes}/hkdev/components/drag-drop/drop-zone.css +58 -58
  81. package/dist/{themes → design/themes}/hkdev/components/icons/icon-steeze.css +15 -15
  82. package/dist/{themes → design/themes}/hkdev/components/inputs/text-input.css +102 -102
  83. package/dist/{themes → design/themes}/hkdev/components/panels/panel.css +25 -25
  84. package/dist/{themes → design/themes}/hkdev/components/rows/panel-grid-row.css +4 -4
  85. package/dist/{themes → design/themes}/hkdev/components/rows/panel-row-2.css +5 -5
  86. package/dist/{themes → design/themes}/hkdev/components.css +29 -29
  87. package/dist/design/themes/hkdev/debug.css +2 -0
  88. package/dist/{themes → design/themes}/hkdev/global/layout.css +32 -32
  89. package/dist/{themes → design/themes}/hkdev/global/on-colors.css +32 -32
  90. package/dist/{themes → design/themes}/hkdev/globals.css +3 -3
  91. package/dist/{themes → design/themes}/hkdev/responsive.css +12 -12
  92. package/dist/{themes → design/themes}/hkdev/theme-ext.js +12 -12
  93. package/dist/{themes → design/themes}/hkdev/theme.css +218 -218
  94. package/dist/{util/design-system/css → design/utils}/clamp.js +66 -66
  95. package/dist/{util/design-system/css/root-design-vars.d.ts → design/utils/root-vars.d.ts} +2 -2
  96. package/dist/{util/design-system/css/root-design-vars.js → design/utils/root-vars.js} +102 -102
  97. package/dist/{util/design-system/layout → design/utils}/scaling.js +228 -228
  98. package/dist/{util/design-system/components → design/utils}/states.js +22 -22
  99. package/dist/errors/api.js +9 -9
  100. package/dist/errors/generic.js +20 -20
  101. package/dist/errors/http.js +16 -16
  102. package/dist/errors/index.d.ts +1 -0
  103. package/dist/errors/index.js +5 -4
  104. package/dist/errors/jwt.js +5 -5
  105. package/dist/errors/promise.d.ts +27 -0
  106. package/dist/errors/promise.js +26 -0
  107. package/dist/logging/index.js +7 -7
  108. package/dist/logging/internal/adapters/console.js +114 -114
  109. package/dist/logging/internal/adapters/index.js +2 -2
  110. package/dist/logging/internal/adapters/pino.d.ts +1 -0
  111. package/dist/logging/internal/adapters/pino.js +142 -115
  112. package/dist/logging/internal/adapters/typedef.d.ts +24 -0
  113. package/dist/logging/internal/adapters/typedef.js +10 -0
  114. package/dist/logging/internal/factories/client.js +21 -21
  115. package/dist/logging/internal/factories/server.js +22 -22
  116. package/dist/logging/internal/factories/universal.js +22 -22
  117. package/dist/logging/internal/unified-logger/Logger.js +217 -217
  118. package/dist/logging/internal/unified-logger/constants.js +22 -22
  119. package/dist/logging/internal/unified-logger/index.js +6 -6
  120. package/dist/logging/internal/unified-logger/typedef.js +17 -17
  121. package/dist/network/README.md +173 -0
  122. package/dist/{classes → network}/cache/IndexedDbCache.js +1407 -1407
  123. package/dist/{classes → network}/cache/MemoryResponseCache.js +138 -138
  124. package/dist/{classes → network}/cache/index.js +5 -5
  125. package/dist/{classes → network}/cache/typedef.js +41 -41
  126. package/dist/network/cache.d.ts +3 -0
  127. package/dist/network/cache.js +4 -0
  128. package/dist/{util → network}/http/caching.js +261 -263
  129. package/dist/{util → network}/http/errors.js +97 -97
  130. package/dist/{util → network}/http/headers.js +75 -75
  131. package/dist/{util → network}/http/http-request.js +578 -578
  132. package/dist/{util → network}/http/index.js +22 -22
  133. package/dist/{util → network}/http/json-request.js +224 -224
  134. package/dist/{util → network}/http/mocks.js +65 -65
  135. package/dist/{util → network}/http/response.js +318 -318
  136. package/dist/{util → network}/http/typedef.js +93 -93
  137. package/dist/{util → network}/http/url.js +52 -52
  138. package/dist/network/http.d.ts +6 -0
  139. package/dist/network/http.js +6 -0
  140. package/dist/network/loaders/README.md +255 -0
  141. package/dist/{classes/svelte → network/loaders}/audio/AudioLoader.svelte.d.ts +1 -1
  142. package/dist/{classes/svelte → network/loaders}/audio/AudioLoader.svelte.js +58 -58
  143. package/dist/{classes/svelte → network/loaders}/audio/AudioScene.svelte.js +324 -324
  144. package/dist/{classes/svelte → network/loaders}/audio/mocks.js +35 -35
  145. package/dist/network/loaders/audio.d.ts +2 -0
  146. package/dist/network/loaders/audio.js +2 -0
  147. package/dist/{classes/svelte → network/loaders}/image/ImageLoader.svelte.d.ts +3 -6
  148. package/dist/{classes/svelte → network/loaders}/image/ImageLoader.svelte.js +44 -45
  149. package/dist/{classes/svelte → network/loaders}/image/ImageScene.svelte.d.ts +5 -7
  150. package/dist/{classes/svelte → network/loaders}/image/ImageScene.svelte.js +248 -249
  151. package/dist/{classes/svelte → network/loaders}/image/ImageVariantsLoader.svelte.d.ts +4 -4
  152. package/dist/{classes/svelte → network/loaders}/image/ImageVariantsLoader.svelte.js +150 -152
  153. package/dist/{classes/svelte → network/loaders}/image/index.js +4 -4
  154. package/dist/{classes/svelte → network/loaders}/image/mocks.js +35 -35
  155. package/dist/{classes/svelte → network/loaders}/image/typedef.js +8 -8
  156. package/dist/{util/image → network/loaders/image/utils}/index.d.ts +2 -2
  157. package/dist/{util/image → network/loaders/image/utils}/index.js +86 -86
  158. package/dist/network/loaders/image.d.ts +5 -0
  159. package/dist/network/loaders/image.js +8 -0
  160. package/dist/{typedef/image.js → network/loaders/typedef.js} +38 -38
  161. package/dist/network/loaders.d.ts +2 -0
  162. package/dist/network/loaders.js +2 -0
  163. package/dist/{classes/svelte/network-loader → network/states}/NetworkLoader.svelte.d.ts +1 -1
  164. package/dist/{classes/svelte/network-loader → network/states}/NetworkLoader.svelte.js +338 -338
  165. package/dist/{classes/svelte/network-loader → network/states}/constants.js +3 -3
  166. package/dist/{classes/svelte/network-loader → network/states}/index.js +3 -3
  167. package/dist/{classes/svelte/network-loader → network/states}/mocks.js +30 -30
  168. package/dist/{classes/svelte/network-loader → network/states}/typedef.js +8 -8
  169. package/dist/network/typedef.d.ts +4 -0
  170. package/dist/network/typedef.js +10 -0
  171. package/dist/services/index.js +1 -1
  172. package/dist/services/internal/index.js +8 -8
  173. package/dist/services/internal/service-base/ServiceBase.js +462 -462
  174. package/dist/services/internal/service-base/constants.js +110 -110
  175. package/dist/services/internal/service-base/index.js +3 -3
  176. package/dist/services/internal/service-base/typedef.js +101 -101
  177. package/dist/services/internal/service-manager/ServiceManager.d.ts +2 -35
  178. package/dist/services/internal/service-manager/ServiceManager.js +608 -614
  179. package/dist/services/internal/service-manager/constants.js +6 -6
  180. package/dist/services/internal/service-manager/typedef.js +90 -90
  181. package/dist/states/index.js +1 -1
  182. package/dist/states/navigation.svelte.js +55 -55
  183. package/dist/stores/index.js +1 -1
  184. package/dist/stores/theme.js +80 -80
  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/index.d.ts +0 -1
  189. package/dist/typedef/index.js +4 -4
  190. package/dist/{components → ui/components}/button-group/ButtonGroup.svelte +82 -82
  191. package/dist/{components → ui/components}/button-group/typedef.js +10 -10
  192. package/dist/{components → ui/components}/compare-left-right/CompareLeftRight.svelte +179 -179
  193. package/dist/{components → ui/components}/compare-left-right/index.js +1 -1
  194. package/dist/{components → ui/components}/game-box/GameBox.svelte +577 -577
  195. package/dist/{components → ui/components}/game-box/gamebox.util.js +83 -83
  196. package/dist/ui/components/hk-app-layout/HkAppLayout.state.svelte.d.ts +6 -0
  197. package/dist/{components → ui/components}/hk-app-layout/HkAppLayout.state.svelte.js +25 -25
  198. package/dist/{components → ui/components}/hk-app-layout/HkAppLayout.svelte +251 -251
  199. package/dist/{components → ui/components}/image-box/ImageBox.svelte +210 -210
  200. package/dist/{components → ui/components}/image-box/ImageBox.svelte.d.ts +6 -6
  201. package/dist/ui/components/image-box/index.js +5 -0
  202. package/dist/{components → ui/components}/image-box/typedef.js +32 -32
  203. package/dist/{components → ui/components}/index.js +23 -23
  204. package/dist/{components → ui/components}/presenter/ImageSlide.svelte +64 -64
  205. package/dist/{components → ui/components}/presenter/ImageSlide.svelte.d.ts +2 -2
  206. package/dist/{components → ui/components}/presenter/Presenter.state.svelte.d.ts +1 -1
  207. package/dist/{components → ui/components}/presenter/Presenter.state.svelte.js +638 -638
  208. package/dist/{components → ui/components}/presenter/Presenter.svelte +142 -142
  209. package/dist/{components → ui/components}/presenter/constants.js +7 -7
  210. package/dist/{components → ui/components}/presenter/index.js +10 -10
  211. package/dist/{components → ui/components}/presenter/typedef.js +106 -106
  212. package/dist/{components → ui/components}/presenter/util.js +210 -210
  213. package/dist/{components → ui/components}/virtual-viewport/VirtualViewport.svelte +196 -196
  214. package/dist/{primitives → ui/primitives}/area/HkArea.svelte +49 -49
  215. package/dist/{primitives → ui/primitives}/area/HkGridArea.svelte +77 -77
  216. package/dist/{primitives → ui/primitives}/area/index.js +2 -2
  217. package/dist/{primitives → ui/primitives}/buttons/button/Button.svelte +82 -82
  218. package/dist/{primitives → ui/primitives}/buttons/button/Button.svelte.d.ts +1 -1
  219. package/dist/{primitives → ui/primitives}/buttons/button-icon-steeze/SteezeIconButton.svelte +30 -30
  220. package/dist/{primitives → ui/primitives}/buttons/button-text/TextButton.svelte +21 -21
  221. package/dist/{primitives → ui/primitives}/buttons/index.js +3 -3
  222. package/dist/{primitives → ui/primitives}/debug/debug-panel-design-scaling/DebugPanelDesignScaling.svelte +146 -146
  223. package/dist/{primitives → ui/primitives}/debug/index.js +1 -1
  224. package/dist/{primitives → ui/primitives}/drag-drop/DragController.js +44 -44
  225. package/dist/{primitives → ui/primitives}/drag-drop/DragDropContext.svelte +111 -111
  226. package/dist/{primitives → ui/primitives}/drag-drop/DragDropContext.svelte.d.ts +1 -1
  227. package/dist/{primitives → ui/primitives}/drag-drop/Draggable.svelte +519 -519
  228. package/dist/{primitives → ui/primitives}/drag-drop/Draggable.svelte.d.ts +1 -1
  229. package/dist/{primitives → ui/primitives}/drag-drop/DropZone.svelte +258 -258
  230. package/dist/{primitives → ui/primitives}/drag-drop/DropZone.svelte.d.ts +3 -3
  231. package/dist/{primitives → ui/primitives}/drag-drop/DropZoneArea.svelte +119 -119
  232. package/dist/{primitives → ui/primitives}/drag-drop/DropZoneArea.svelte.d.ts +3 -3
  233. package/dist/{primitives → ui/primitives}/drag-drop/DropZoneList.svelte +125 -125
  234. package/dist/{primitives → ui/primitives}/drag-drop/DropZoneList.svelte.d.ts +3 -3
  235. package/dist/{primitives → ui/primitives}/drag-drop/actions.js +26 -26
  236. package/dist/{primitives → ui/primitives}/drag-drop/drag-state.svelte.d.ts +11 -11
  237. package/dist/{primitives → ui/primitives}/drag-drop/drag-state.svelte.js +322 -322
  238. package/dist/{primitives → ui/primitives}/drag-drop/index.js +7 -7
  239. package/dist/{primitives → ui/primitives}/drag-drop/util.js +85 -85
  240. package/dist/{primitives → ui/primitives}/hkdev/blocks/TextBlock.svelte +46 -46
  241. package/dist/{primitives → ui/primitives}/hkdev/buttons/CheckButton.svelte +62 -62
  242. package/dist/{primitives → ui/primitives}/icons/HkIcon.svelte +86 -86
  243. package/dist/{primitives → ui/primitives}/icons/HkTabIcon.svelte +116 -116
  244. package/dist/{primitives → ui/primitives}/icons/SteezeIcon.svelte +97 -97
  245. package/dist/{primitives → ui/primitives}/icons/index.js +6 -6
  246. package/dist/{primitives → ui/primitives}/icons/typedef.js +16 -16
  247. package/dist/{primitives → ui/primitives}/index.js +2 -2
  248. package/dist/{primitives → ui/primitives}/inputs/index.js +1 -1
  249. package/dist/{primitives → ui/primitives}/inputs/text-input/TextInput.svelte +223 -223
  250. package/dist/{primitives → ui/primitives}/inputs/text-input/assets/IconInvalid.svelte +14 -14
  251. package/dist/{primitives → ui/primitives}/inputs/text-input/assets/IconValid.svelte +12 -12
  252. package/dist/{primitives → ui/primitives}/layout/grid-layers/GridLayers.svelte +63 -63
  253. package/dist/{primitives → ui/primitives}/layout/grid-layers/util.js +74 -74
  254. package/dist/{primitives → ui/primitives}/layout/index.js +1 -1
  255. package/dist/{primitives → ui/primitives}/panels/index.js +1 -1
  256. package/dist/{primitives → ui/primitives}/panels/panel/Panel.svelte +43 -43
  257. package/dist/{primitives → ui/primitives}/rows/index.js +3 -3
  258. package/dist/{primitives → ui/primitives}/rows/panel-grid-row/PanelGridRow.svelte +104 -104
  259. package/dist/{primitives → ui/primitives}/rows/panel-row-2/PanelRow2.svelte +40 -40
  260. package/dist/{primitives → ui/primitives}/tab-bar/HkTabBar.state.svelte.d.ts +3 -3
  261. package/dist/{primitives → ui/primitives}/tab-bar/HkTabBar.state.svelte.js +149 -149
  262. package/dist/{primitives → ui/primitives}/tab-bar/HkTabBar.svelte +74 -74
  263. package/dist/{primitives → ui/primitives}/tab-bar/HkTabBarSelector.state.svelte.d.ts +3 -3
  264. package/dist/{primitives → ui/primitives}/tab-bar/HkTabBarSelector.state.svelte.js +93 -93
  265. package/dist/{primitives → ui/primitives}/tab-bar/HkTabBarSelector.svelte +49 -49
  266. package/dist/{primitives → ui/primitives}/tab-bar/index.js +17 -17
  267. package/dist/{primitives → ui/primitives}/tab-bar/typedef.js +11 -11
  268. package/dist/util/array/index.js +436 -436
  269. package/dist/util/bases/base58.js +262 -262
  270. package/dist/util/bases/index.js +1 -1
  271. package/dist/util/compare/index.js +247 -247
  272. package/dist/util/css/css-vars.js +83 -83
  273. package/dist/util/css/index.js +1 -1
  274. package/dist/util/env/index.js +9 -9
  275. package/dist/util/exceptions/index.js +23 -23
  276. package/dist/util/expect/arrays.js +47 -47
  277. package/dist/util/expect/index.js +259 -259
  278. package/dist/util/expect/primitives.js +55 -55
  279. package/dist/util/expect/url.d.ts +6 -6
  280. package/dist/util/expect/url.js +60 -60
  281. package/dist/util/function/index.js +218 -218
  282. package/dist/util/geo/index.js +26 -26
  283. package/dist/util/index.d.ts +3 -1
  284. package/dist/util/index.js +7 -3
  285. package/dist/util/is/index.d.ts +15 -14
  286. package/dist/util/is/index.js +147 -140
  287. package/dist/util/iterate/index.d.ts +37 -69
  288. package/dist/util/iterate/index.js +204 -234
  289. package/dist/util/object/index.d.ts +38 -57
  290. package/dist/util/object/index.js +1345 -1361
  291. package/dist/util/singleton/index.js +97 -97
  292. package/dist/util/string/array-path.js +75 -75
  293. package/dist/util/string/convert.js +54 -54
  294. package/dist/util/string/fs.js +226 -226
  295. package/dist/util/string/index.js +5 -5
  296. package/dist/util/string/interpolate.js +61 -61
  297. package/dist/util/string/pad.js +10 -10
  298. package/dist/util/svelte/index.js +4 -4
  299. package/dist/util/svelte/loading/loading-tracker.svelte.js +108 -108
  300. package/dist/util/svelte/observe/index.js +49 -49
  301. package/dist/util/svelte/state-context/index.js +117 -117
  302. package/dist/util/svelte/wait/index.js +38 -38
  303. package/dist/util/sveltekit/index.js +1 -1
  304. package/dist/util/sveltekit/route-folders/index.js +101 -101
  305. package/dist/util/time/index.js +328 -323
  306. package/dist/util/unique/index.js +231 -249
  307. package/dist/valibot/README.md +50 -0
  308. package/dist/valibot/index.d.ts +4 -4
  309. package/dist/valibot/index.js +8 -9
  310. package/dist/valibot/{url.d.ts → parsers/url.d.ts} +13 -5
  311. package/dist/valibot/{url.js → parsers/url.js} +111 -95
  312. package/dist/valibot/{user.js → parsers/user.js} +23 -23
  313. package/dist/valibot/parsers.d.ts +2 -0
  314. package/dist/valibot/parsers.js +4 -0
  315. package/package.json +131 -133
  316. package/dist/components/hk-app-layout/HkAppLayout.state.svelte.d.ts +0 -6
  317. package/dist/components/image-box/index.js +0 -5
  318. package/dist/constants/regexp/web.d.ts +0 -1
  319. package/dist/constants/regexp/web.js +0 -3
  320. package/dist/primitives/inputs/text-input/TestTextInput.svelte__ +0 -102
  321. package/dist/primitives/inputs/text-input/TextInput.svelte___ +0 -83
  322. package/dist/primitives/layout/grid-layers/GridLayers.svelte__heightFrom__ +0 -372
  323. package/dist/schemas/index.d.ts +0 -1
  324. package/dist/schemas/index.js +0 -1
  325. package/dist/schemas/validate-url.d.ts +0 -30
  326. package/dist/schemas/validate-url.js +0 -180
  327. package/dist/themes/hkdev/debug.css +0 -2
  328. package/dist/themes/index.d.ts +0 -1
  329. package/dist/themes/index.js +0 -1
  330. package/dist/util/design-system/index.d.ts +0 -5
  331. package/dist/util/design-system/index.js +0 -5
  332. package/dist/util/http/test-data__/content-length-test-hkdigital-small.V4HfZyBQ.avif +0 -0
  333. package/dist/valibot/date.js__ +0 -10
  334. package/dist/zod/all.d.ts +0 -6
  335. package/dist/zod/all.js +0 -33
  336. package/dist/zod/generic.d.ts +0 -6
  337. package/dist/zod/generic.js +0 -11
  338. package/dist/zod/javascript.d.ts +0 -8
  339. package/dist/zod/javascript.js +0 -32
  340. package/dist/zod/user.d.ts +0 -9
  341. package/dist/zod/user.js +0 -16
  342. package/dist/zod/web.d.ts +0 -21
  343. package/dist/zod/web.js +0 -52
  344. /package/dist/config/{imagetools-config.d.ts → generators/imagetools.d.ts} +0 -0
  345. /package/dist/design/{design-config.d.ts → config/design-config.d.ts} +0 -0
  346. /package/dist/{util/design-system/tailwind.d.ts → design/generators/index.d.ts} +0 -0
  347. /package/dist/{util/design-system → design/plugins}/skeleton.d.ts +0 -0
  348. /package/dist/{themes → design/themes}/hkdev/theme-ext.d.ts +0 -0
  349. /package/dist/{util/design-system/css → design/utils}/clamp.d.ts +0 -0
  350. /package/dist/{util/design-system/layout → design/utils}/scaling.d.ts +0 -0
  351. /package/dist/{util/design-system/components → design/utils}/states.d.ts +0 -0
  352. /package/dist/{classes → network}/cache/IndexedDbCache.d.ts +0 -0
  353. /package/dist/{classes → network}/cache/MemoryResponseCache.d.ts +0 -0
  354. /package/dist/{classes → network}/cache/index.d.ts +0 -0
  355. /package/dist/{classes → network}/cache/typedef.d.ts +0 -0
  356. /package/dist/{util → network}/http/caching.d.ts +0 -0
  357. /package/dist/{util → network}/http/errors.d.ts +0 -0
  358. /package/dist/{util → network}/http/headers.d.ts +0 -0
  359. /package/dist/{util → network}/http/http-request.d.ts +0 -0
  360. /package/dist/{util → network}/http/index.d.ts +0 -0
  361. /package/dist/{util → network}/http/json-request.d.ts +0 -0
  362. /package/dist/{util → network}/http/mocks.d.ts +0 -0
  363. /package/dist/{util → network}/http/response.d.ts +0 -0
  364. /package/dist/{util → network}/http/typedef.d.ts +0 -0
  365. /package/dist/{util → network}/http/url.d.ts +0 -0
  366. /package/dist/{classes/svelte → network/loaders}/audio/AudioScene.svelte.d.ts +0 -0
  367. /package/dist/{classes/svelte → network/loaders}/audio/mocks.d.ts +0 -0
  368. /package/dist/{classes/svelte → network/loaders}/image/index.d.ts +0 -0
  369. /package/dist/{classes/svelte → network/loaders}/image/mocks.d.ts +0 -0
  370. /package/dist/{classes/svelte → network/loaders}/image/typedef.d.ts +0 -0
  371. /package/dist/{typedef/image.d.ts → network/loaders/typedef.d.ts} +0 -0
  372. /package/dist/{classes/svelte/network-loader → network/states}/constants.d.ts +0 -0
  373. /package/dist/{classes/svelte/network-loader → network/states}/index.d.ts +0 -0
  374. /package/dist/{classes/svelte/network-loader → network/states}/mocks.d.ts +0 -0
  375. /package/dist/{classes/svelte/network-loader → network/states}/typedef.d.ts +0 -0
  376. /package/dist/{components → ui/components}/button-group/ButtonGroup.svelte.d.ts +0 -0
  377. /package/dist/{components → ui/components}/button-group/typedef.d.ts +0 -0
  378. /package/dist/{components → ui/components}/compare-left-right/CompareLeftRight.svelte.d.ts +0 -0
  379. /package/dist/{components → ui/components}/compare-left-right/index.d.ts +0 -0
  380. /package/dist/{components → ui/components}/game-box/GameBox.svelte.d.ts +0 -0
  381. /package/dist/{components → ui/components}/game-box/gamebox.util.d.ts +0 -0
  382. /package/dist/{components → ui/components}/hk-app-layout/HkAppLayout.svelte.d.ts +0 -0
  383. /package/dist/{components → ui/components}/image-box/index.d.ts +0 -0
  384. /package/dist/{components → ui/components}/image-box/typedef.d.ts +0 -0
  385. /package/dist/{components → ui/components}/index.d.ts +0 -0
  386. /package/dist/{components → ui/components}/presenter/Presenter.svelte.d.ts +0 -0
  387. /package/dist/{components → ui/components}/presenter/constants.d.ts +0 -0
  388. /package/dist/{components → ui/components}/presenter/index.d.ts +0 -0
  389. /package/dist/{components → ui/components}/presenter/typedef.d.ts +0 -0
  390. /package/dist/{components → ui/components}/presenter/util.d.ts +0 -0
  391. /package/dist/{components → ui/components}/virtual-viewport/VirtualViewport.svelte.d.ts +0 -0
  392. /package/dist/{primitives → ui/primitives}/area/HkArea.svelte.d.ts +0 -0
  393. /package/dist/{primitives → ui/primitives}/area/HkGridArea.svelte.d.ts +0 -0
  394. /package/dist/{primitives → ui/primitives}/area/index.d.ts +0 -0
  395. /package/dist/{primitives → ui/primitives}/buttons/button-icon-steeze/SteezeIconButton.svelte.d.ts +0 -0
  396. /package/dist/{primitives → ui/primitives}/buttons/button-text/TextButton.svelte.d.ts +0 -0
  397. /package/dist/{primitives → ui/primitives}/buttons/index.d.ts +0 -0
  398. /package/dist/{primitives → ui/primitives}/debug/debug-panel-design-scaling/DebugPanelDesignScaling.svelte.d.ts +0 -0
  399. /package/dist/{primitives → ui/primitives}/debug/index.d.ts +0 -0
  400. /package/dist/{primitives → ui/primitives}/drag-drop/DragController.d.ts +0 -0
  401. /package/dist/{primitives → ui/primitives}/drag-drop/actions.d.ts +0 -0
  402. /package/dist/{primitives → ui/primitives}/drag-drop/index.d.ts +0 -0
  403. /package/dist/{primitives → ui/primitives}/drag-drop/util.d.ts +0 -0
  404. /package/dist/{primitives → ui/primitives}/hkdev/blocks/TextBlock.svelte.d.ts +0 -0
  405. /package/dist/{primitives → ui/primitives}/hkdev/buttons/CheckButton.svelte.d.ts +0 -0
  406. /package/dist/{primitives → ui/primitives}/icons/HkIcon.svelte.d.ts +0 -0
  407. /package/dist/{primitives → ui/primitives}/icons/HkTabIcon.svelte.d.ts +0 -0
  408. /package/dist/{primitives → ui/primitives}/icons/SteezeIcon.svelte.d.ts +0 -0
  409. /package/dist/{primitives → ui/primitives}/icons/index.d.ts +0 -0
  410. /package/dist/{primitives → ui/primitives}/icons/typedef.d.ts +0 -0
  411. /package/dist/{primitives → ui/primitives}/index.d.ts +0 -0
  412. /package/dist/{primitives → ui/primitives}/inputs/index.d.ts +0 -0
  413. /package/dist/{primitives → ui/primitives}/inputs/text-input/TextInput.svelte.d.ts +0 -0
  414. /package/dist/{primitives → ui/primitives}/inputs/text-input/assets/IconInvalid.svelte.d.ts +0 -0
  415. /package/dist/{primitives → ui/primitives}/inputs/text-input/assets/IconValid.svelte.d.ts +0 -0
  416. /package/dist/{primitives → ui/primitives}/layout/grid-layers/GridLayers.svelte.d.ts +0 -0
  417. /package/dist/{primitives → ui/primitives}/layout/grid-layers/util.d.ts +0 -0
  418. /package/dist/{primitives → ui/primitives}/layout/index.d.ts +0 -0
  419. /package/dist/{primitives → ui/primitives}/panels/index.d.ts +0 -0
  420. /package/dist/{primitives → ui/primitives}/panels/panel/Panel.svelte.d.ts +0 -0
  421. /package/dist/{primitives → ui/primitives}/rows/index.d.ts +0 -0
  422. /package/dist/{primitives → ui/primitives}/rows/panel-grid-row/PanelGridRow.svelte.d.ts +0 -0
  423. /package/dist/{primitives → ui/primitives}/rows/panel-row-2/PanelRow2.svelte.d.ts +0 -0
  424. /package/dist/{primitives → ui/primitives}/tab-bar/HkTabBar.svelte.d.ts +0 -0
  425. /package/dist/{primitives → ui/primitives}/tab-bar/HkTabBarSelector.svelte.d.ts +0 -0
  426. /package/dist/{primitives → ui/primitives}/tab-bar/index.d.ts +0 -0
  427. /package/dist/{primitives → ui/primitives}/tab-bar/typedef.d.ts +0 -0
  428. /package/dist/valibot/{user.d.ts → parsers/user.d.ts} +0 -0
@@ -1,234 +1,204 @@
1
- /* ------------------------------------------------------------------ Imports */
2
-
3
- import * as expect from '../expect/index.js';
4
- import { smallestFirst, largestFirst } from '../compare/index.js';
5
-
6
- import IterableTree from '../../classes/data/IterableTree.js';
7
-
8
- /* ------------------------------------------------------------------ Exports */
9
-
10
- /**
11
- * Filter all iterated elements
12
- *
13
- * @param {Iterable} iterable
14
- * @param {function} filterFn
15
- *
16
- * @returns {Generator} generator that produces items that pass the filter
17
- */
18
- export function* filter(iterable, filterFn) {
19
- expect.iterable(iterable);
20
- expect.function(filterFn);
21
-
22
- for (const value of iterable) {
23
- if (filterFn(value)) {
24
- yield value;
25
- }
26
- }
27
- }
28
-
29
- // ---------------------------------------------------------------------- Method
30
-
31
- /**
32
- * Map all iterated items
33
- * - Outputs transformed items
34
- *
35
- * @param {Iterable} iterable
36
- * @param {function} transformFn
37
- *
38
- * @returns {Generator} generator that produces transformed items
39
- */
40
- export function* map(iterable, transformFn) {
41
- expect.iterable(iterable);
42
- expect.function(transformFn);
43
-
44
- for (const value of iterable) {
45
- yield transformFn(value);
46
- }
47
- }
48
-
49
- // ---------------------------------------------------------------------- Method
50
-
51
- /**
52
- * Get an Iterator object that can be used to iterate over all
53
- * [ path, value ] entries in the object
54
- *
55
- * @param {Object} obj - Object to iterate
56
- *
57
- * @param {Object} [options] - Iteration options
58
- *
59
- * @param {boolean} [options.walkArrays=false]
60
- * If set to true, the iterator will also iterate through Array objects
61
- *
62
- * @param {object} [options.expandPathKeys=false]
63
- * If true, keys in the root object like "some.path.to" will be interpreted
64
- * as paths in the object
65
- *
66
- * @param {object} [options.outputIntermediateNodes=false]
67
- * If true, intermediate object nodes (not leaves) will be outputted too
68
- *
69
- * @param {object} [options.ignoreEmptyObjectLeaves=false]
70
- * If true, no output will be generated for empty objects at the leaves of
71
- * the object tree
72
- *
73
- * @return {Iterator} iterator object
74
- */
75
- export function iterateObjectEntries(obj, options = {}) {
76
- let objectIterator;
77
-
78
- const depthFirst = undefined === options.depthFirst ? true : options.depthFirst;
79
-
80
- options = Object.assign({}, options);
81
-
82
- delete options.depthFirst;
83
-
84
- if (depthFirst) {
85
- objectIterator = new IterableTree(obj, options);
86
- } else {
87
- throw new Error('NOT IMPLEMENTED YET');
88
-
89
- // objectIterator
90
- // = new hk.iterate._BreadthFirstIterableTree( obj, options );
91
- }
92
-
93
- return objectIterator.entries(); /* entry = [ arrPath, value ] */
94
- }
95
-
96
- // ---------------------------------------------------------------------- Method
97
-
98
- /**
99
- * Get an Iterator object that can be used to iterate over all paths in
100
- * the object
101
- *
102
- * @param {Object} obj - Object to iterate
103
- *
104
- * @param {Object} [options] - Iteration options
105
- *
106
- * @param {boolean} [options.walkArrays=false]
107
- * If set to true, the iterator will also iterate through Array objects
108
- *
109
- * @param {object} [options.expandPathKeys=false]
110
- * If true, keys in the root object like "some.path.to" will be interpreted
111
- * as paths in the object
112
- *
113
- * @param {object} [options.outputIntermediateNodes=false]
114
- * If true, intermediate object nodes (not leaves) will be outputted too
115
- *
116
- * @param {object} [options.ignoreEmptyObjectLeaves=false]
117
- * If true, no output will be generated for empty objects at the leaves of
118
- * the object tree
119
- *
120
- * @return {Iterator} iterator object
121
- */
122
- export function iterateObjectPaths(obj, options = {}) {
123
- let objectIterator;
124
-
125
- const depthFirst = undefined === options.depthFirst ? true : options.depthFirst;
126
-
127
- options = Object.assign({}, options);
128
-
129
- delete options.depthFirst;
130
-
131
- if (depthFirst) {
132
- objectIterator = new IterableTree(obj, options);
133
- } else {
134
- throw new Error('NOT IMPLEMENTED YET');
135
-
136
- // objectIterator
137
- // = new hk.iterate._BreadthFirstIterableTree( obj, options );
138
- }
139
-
140
- return objectIterator.paths();
141
- }
142
-
143
- // ---------------------------------------------------------------------- Method
144
-
145
- /**
146
- * Get an Iterator object that can be used to iterate over all values in
147
- * the object (at the leaves of the object tree)
148
- *
149
- * @param {Object} obj - Object to iterate
150
- *
151
- * @param {Object} [options] - Iteration options
152
- *
153
- * @param {boolean} [options.walkArrays=false]
154
- * If set to true, the iterator will also iterate through Array objects
155
- *
156
- * @param {object} [options.expandPathKeys=false]
157
- * If true, keys in the root object like "some.path.to" will be interpreted
158
- * as paths in the object
159
- *
160
- * @param {object} [options.outputIntermediateNodes=false]
161
- * If true, intermediate object nodes (not leaves) will be outputted too
162
- *
163
- * @param {object} [options.ignoreEmptyObjectLeaves=false]
164
- * If true, no output will be generated for empty objects at the leaves of
165
- * the object tree
166
- *
167
- * @return {Iterator} iterator object
168
- */
169
- export function iterateObjectValues(obj, options) {
170
- const objectIterator = new IterableTree(obj, options);
171
-
172
- return objectIterator.values();
173
- }
174
-
175
- // ---------------------------------------------------------------------- Method
176
-
177
- /**
178
- * Get a list of objects returned by an iterator in sorted order
179
- *
180
- * --
181
- *
182
- * @note Sorting requires that all values are evaluated, so all items must be
183
- * iterated
184
- *
185
- * --
186
- *
187
- * @param {Iterable} it - Iterable items
188
- *
189
- * @param {function} getValueFn
190
- * Function that gets the value from the iterated objects
191
- *
192
- * @param {boolean} [reversed=false]
193
- * Sort in reversed order
194
- *
195
- *
196
- * @returns {array} objects outputted in sorted order
197
- */
198
- export async function sortObjects({ it, getValueFn, reversed = false }) {
199
- expect.iterable(it);
200
- expect.function(getValueFn);
201
-
202
- const allItems = [];
203
- const valuesByItem = new WeakMap();
204
-
205
- // -- Gather all items and sort values in arrays
206
-
207
- for (const item of it) {
208
- allItems.push(item);
209
- valuesByItem.set(item, getValueFn(item));
210
- }
211
-
212
- // console.log( { sortValues } );
213
-
214
- // -- Sort all items using sortValues
215
-
216
- let compareFn;
217
-
218
- if (!reversed) {
219
- compareFn = smallestFirst;
220
- } else {
221
- compareFn = largestFirst;
222
- }
223
-
224
- allItems.sort((itemA, itemB) => {
225
- const valueA = valuesByItem.get(itemA);
226
- const valueB = valuesByItem.get(itemB);
227
-
228
- return compareFn(valueA, valueB);
229
- });
230
-
231
- // -- Return result
232
-
233
- return allItems;
234
- }
1
+ /* ------------------------------------------------------------------ Imports */
2
+
3
+ import * as expect from '../expect/index.js';
4
+ import { smallestFirst, largestFirst } from '../compare/index.js';
5
+
6
+ import IterableTree from '../../classes/data/IterableTree.js';
7
+
8
+ /**
9
+ * @typedef {import('../../classes/data/typedef.js').IterableTreeOptions} IterableTreeOptions
10
+ */
11
+
12
+ /* ------------------------------------------------------------------ Exports */
13
+
14
+ /**
15
+ * Filter all iterated elements
16
+ *
17
+ * @param {Iterable} iterable
18
+ * @param {function} filterFn
19
+ *
20
+ * @returns {Generator} generator that produces items that pass the filter
21
+ */
22
+ export function* filter(iterable, filterFn) {
23
+ expect.iterable(iterable);
24
+ expect.function(filterFn);
25
+
26
+ for (const value of iterable) {
27
+ if (filterFn(value)) {
28
+ yield value;
29
+ }
30
+ }
31
+ }
32
+
33
+ // ---------------------------------------------------------------------- Method
34
+
35
+ /**
36
+ * Map all iterated items
37
+ * - Outputs transformed items
38
+ *
39
+ * @param {Iterable} iterable
40
+ * @param {function} transformFn
41
+ *
42
+ * @returns {Generator} generator that produces transformed items
43
+ */
44
+ export function* map(iterable, transformFn) {
45
+ expect.iterable(iterable);
46
+ expect.function(transformFn);
47
+
48
+ for (const value of iterable) {
49
+ yield transformFn(value);
50
+ }
51
+ }
52
+
53
+ // ---------------------------------------------------------------------- Method
54
+
55
+ /**
56
+ * Get an Iterator object that can be used to iterate over all
57
+ * [ path, value ] entries in the object
58
+ *
59
+ * @param {object} obj - Object to iterate
60
+ *
61
+ * @param {object} [options] - Iteration options
62
+ *
63
+ * @param {boolean} [options.walkArrays=false]
64
+ * If set to true, the iterator will also iterate through Array objects
65
+ *
66
+ * @param {boolean} [options.expandPathKeys=false]
67
+ * If true, keys in the root object like "some.path.to" will be interpreted
68
+ * as paths in the object
69
+ *
70
+ * @param {boolean} [options.outputIntermediateNodes=false]
71
+ * If true, intermediate object nodes (not leaves) will be outputted too
72
+ *
73
+ * @param {boolean} [options.ignoreEmptyObjectLeaves=false]
74
+ * If true, no output will be generated for empty objects at the leaves of
75
+ * the object tree
76
+ *
77
+ * @param {boolean} [options.depthFirst=true]
78
+ * If true, use depth-first traversal, otherwise breadth-first
79
+ *
80
+ * @return {Iterator} iterator object
81
+ */
82
+ export function iterateObjectEntries(obj, options = {}) {
83
+ let objectIterator;
84
+
85
+ const depthFirst =
86
+ undefined === options.depthFirst ? true : options.depthFirst;
87
+
88
+ options = Object.assign({}, options);
89
+
90
+ delete options.depthFirst;
91
+
92
+ if (depthFirst) {
93
+ objectIterator = new IterableTree(obj, options);
94
+ } else {
95
+ throw new Error('NOT IMPLEMENTED YET');
96
+
97
+ // objectIterator
98
+ // = new hk.iterate._BreadthFirstIterableTree( obj, options );
99
+ }
100
+
101
+ return objectIterator.entries(); /* entry = [ arrPath, value ] */
102
+ }
103
+
104
+ // ---------------------------------------------------------------------- Method
105
+
106
+ /**
107
+ * Get an Iterator object that can be used to iterate over all paths in
108
+ * the object
109
+ *
110
+ * @param {object} obj - Object to iterate
111
+ * @param {IterableTreeOptions & { depthFirst: boolean}} [options]
112
+ *
113
+ * @return {Iterable<string[]>} iterable object that yields path arrays
114
+ */
115
+ export function iterateObjectPaths(obj, options) {
116
+ let objectIterator;
117
+
118
+ const depthFirst =
119
+ undefined === options.depthFirst ? true : options.depthFirst;
120
+
121
+ options = Object.assign({}, options);
122
+
123
+ delete options.depthFirst;
124
+
125
+ if (depthFirst) {
126
+ objectIterator = new IterableTree(obj, options);
127
+ } else {
128
+ throw new Error('NOT IMPLEMENTED YET');
129
+ }
130
+
131
+ return objectIterator.paths();
132
+ }
133
+
134
+ // ---------------------------------------------------------------------- Method
135
+
136
+ /**
137
+ * Get an Iterator object that can be used to iterate over all values in
138
+ * the object (at the leaves of the object tree)
139
+ *
140
+ * @param {object} obj - Object to iterate
141
+ * @param {IterableTreeOptions} [options] - Iteration options
142
+ *
143
+ * @return {Iterable<any>} iterator object
144
+ */
145
+ export function iterateObjectValues(obj, options) {
146
+ const objectIterator = new IterableTree(obj, options);
147
+
148
+ return objectIterator.values();
149
+ }
150
+
151
+ // ---------------------------------------------------------------------- Method
152
+
153
+ /**
154
+ * Get a list of objects returned by an iterator in sorted order
155
+ *
156
+ * @note Sorting requires that all values are evaluated, so all items must be
157
+ * iterated
158
+ *
159
+ * @param {object} _
160
+ * @param {Iterable} _.it - Iterable items
161
+ * @param {function} _.getValueFn
162
+ * Function that gets the value from the iterated objects
163
+ * @param {boolean} [_.reversed=false]
164
+ * Sort in reversed order
165
+ *
166
+ * @returns {Promise<array>} objects outputted in sorted order
167
+ */
168
+ export async function sortObjects({ it, getValueFn, reversed = false }) {
169
+ expect.iterable(it);
170
+ expect.function(getValueFn);
171
+
172
+ const allItems = [];
173
+ const valuesByItem = new WeakMap();
174
+
175
+ // -- Gather all items and sort values in arrays
176
+
177
+ for (const item of it) {
178
+ allItems.push(item);
179
+ valuesByItem.set(item, getValueFn(item));
180
+ }
181
+
182
+ // console.log( { sortValues } );
183
+
184
+ // -- Sort all items using sortValues
185
+
186
+ let compareFn;
187
+
188
+ if (!reversed) {
189
+ compareFn = smallestFirst;
190
+ } else {
191
+ compareFn = largestFirst;
192
+ }
193
+
194
+ allItems.sort((itemA, itemB) => {
195
+ const valueA = valuesByItem.get(itemA);
196
+ const valueB = valuesByItem.get(itemB);
197
+
198
+ return compareFn(valueA, valueB);
199
+ });
200
+
201
+ // -- Return result
202
+
203
+ return allItems;
204
+ }
@@ -1,23 +1,23 @@
1
1
  /**
2
2
  * Returns true
3
- * - if the object has no (iterable) key value pairs
3
+ * - if the object has no enumerable key value pairs
4
4
  * - if the object is an empty array
5
5
  *
6
6
  * @param {object} obj
7
7
  *
8
8
  * @return {boolean}
9
9
  * true if the object has no key value pairs or the supplied object
10
- * is `falsey`
10
+ * is falsy
11
11
  */
12
12
  export function isEmpty(obj: object): boolean;
13
13
  /**
14
- * Get the number of (iterable) key value pairs in the specified object
14
+ * Get the number of enumerable key value pairs in the specified object
15
15
  *
16
16
  * @param {object} obj
17
17
  *
18
- * @return {number} number of iterable key value pairs
18
+ * @return {number} number of enumerable key value pairs
19
19
  */
20
- export function objectSize(obj: object): number;
20
+ export function size(obj: object): number;
21
21
  /**
22
22
  * Returns a shallow copy of the object without the properties that
23
23
  * have the value [null] or [undefined]
@@ -31,19 +31,30 @@ export function objectSize(obj: object): number;
31
31
  */
32
32
  export function exportNotNull(obj: object, onlyKeys?: string[]): object;
33
33
  /**
34
- * Returns a shallow copy of the object without the properties that
35
- * are `private`
36
- * - Private properties are properties that start with an underscore
37
- * `_`.
34
+ * Create a shallow copy of the object's public properties. Properties that
35
+ * start with an underscore are considered 'internal' properties and are not
36
+ * exported.
37
+ * - This method can e.g. be used to export a data object without it's
38
+ * 'internal' properties
38
39
  *
39
40
  * @param {object} obj
40
41
  *
41
42
  * @param {string[]} [keepKeys]
42
- * If specified, the sprecified private keys will be exported (e.g. `_id`)
43
+ * If specified, the specified private keys will be exported (e.g. `_id`)
43
44
  *
44
- * @returns {object} new object without the null properties
45
+ * @returns {object} new object without properties that start with an underscore
46
+ */
47
+ export function exportPublic(obj: object, keepKeys?: string[]): object;
48
+ /**
49
+ * Creates a copy of an object or array that contains only primitive values
50
+ * - Nested objects and arrays are completely removed
51
+ * - Only string, number, boolean, null, undefined values are kept
52
+ *
53
+ * @param {object|array} objectOrArray
54
+ *
55
+ * @returns {object|array} new object or array with only primitive values
45
56
  */
46
- export function exportNotPrivate(obj: object, keepKeys?: string[]): object;
57
+ export function exportNotNested(objectOrArray: object | any[]): object | any[];
47
58
  /**
48
59
  * Keep only the specified keys in the object
49
60
  * - deletes all other key-value pairs in the object
@@ -220,26 +231,22 @@ export function getPrototypeNames(obj: object): string[];
220
231
  * { someArray.0.name: 1 }
221
232
  *
222
233
  * @param {object} [options]
223
- * @param {object} [options.shallowLeaves=false]
224
- * If set to true, the values of the leaves of the tree will be converted
225
- * to shallow objects if the leaves are nested objects.
234
+ * @param {boolean} [options.shallowLeaves=false]
235
+ * If true, when extracted leaf values are objects, they are filtered to
236
+ * contain only primitive properties. Nested objects and arrays within
237
+ * the leaves are removed.
238
+ *
239
+ * Example: { profile: { name: "John", settings: {...} } }
240
+ * becomes: { profile: { name: "John" } }
226
241
  *
227
242
  * @return {object}
228
243
  * nested object with the values that were found or defaultValues
229
244
  */
230
245
  export function getTree(obj: object, tree: object, options?: {
231
- shallowLeaves?: object;
246
+ shallowLeaves?: boolean;
232
247
  }): object;
233
248
  /**
234
249
  * Deep clone an object or any kind of other variable
235
- * - Recursively clone all nested properties
236
- * - Properties in the prototype chain are cloned too, but all copied into a
237
- * single prototype object
238
- * - This method works on objects, but also on any other JS variable type
239
- * - If a value cannot be cloned, a reference is returned. o.a. for
240
- * - Error objects
241
- * - Browser objects
242
- * - Functions
243
250
  *
244
251
  * @param {any} objectToBeCloned - Variable to clone
245
252
  *
@@ -254,14 +261,6 @@ export function clone(objectToBeCloned: any, _seenObjects: any): any;
254
261
  * @param {any} value - Value to set
255
262
  */
256
263
  export function setReadOnlyProperty(obj: object, propertyName: string, value: any): void;
257
- /**
258
- * Returns a clone of a (nested) object that has a maximum depth
259
- *
260
- * @param {object|array} obj
261
- *
262
- * @returns {object|array} shallow object or array
263
- */
264
- export function shallowClone(objectOrArray: any): object | any[];
265
264
  /**
266
265
  * Update an object
267
266
  * - Sets the path-value pairs from the updateData in the object
@@ -271,7 +270,10 @@ export function shallowClone(objectOrArray: any): object | any[];
271
270
  *
272
271
  * @param {object} [obj] - Input object
273
272
  *
274
- * @param {object|iterable} updateData - Data to update
273
+ * @param {object|Iterable} updateData - Data to update
274
+ *
275
+ * @param {Object} [options]
276
+ * @param {boolean} [options.replaceArrays=false]
275
277
  *
276
278
  * Note that if using path-value pairs, the order of the pairs is relevant:
277
279
  * {
@@ -282,7 +284,9 @@ export function shallowClone(objectOrArray: any): object | any[];
282
284
  *
283
285
  * @returns {object} updated object
284
286
  */
285
- export function updateObject(obj?: object, updateData: object | iterable, options: any): object;
287
+ export function updateObject(obj?: object, updateData?: object | Iterable<any>, options?: {
288
+ replaceArrays?: boolean;
289
+ }): object;
286
290
  /**
287
291
  * Copy own properties from an object to another object if they do not
288
292
  * exist yet.
@@ -300,27 +304,4 @@ export function copyOwnProperties(from: object, to: object): void;
300
304
  * @returns {string[]} list of path values
301
305
  */
302
306
  export function ensureArrayPath(path: string | string[]): string[];
303
- /**
304
- * Create all parent objects on the object path if they do not yet exist yet
305
- * - This method will throw an exception if there is a non-object node in
306
- * the path
307
- *
308
- * @param {object} obj
309
- * Object to create the parent objects in
310
- *
311
- * @param {string[]} arrPath
312
- * The path that specified which parent oobjects to create
313
- *
314
- * @returns {object} the input object with the created object properties
315
- */
316
- export function _ensureParent(obj: object, arrPath: string[]): object;
317
- /**
318
- * Get parent object at the specified path
319
- *
320
- * @param {object} obj - Object to work in
321
- * @param {string[]} arrPath - Path to get the parent object for
322
- *
323
- * @returns {object|array|null} parent object or null if not found
324
- */
325
- export function _getParent(obj: object, arrPath: string[]): object | any[] | null;
326
307
  export const PATH_SEPARATOR: ".";