@hkdigital/lib-core 0.3.11 → 0.3.13
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.
- package/README.md +173 -149
- package/dist/assets/autospuiten/car-paint-picker.js +41 -41
- package/dist/assets/autospuiten/labels.js +7 -7
- package/dist/classes/data/IterableTree.js +242 -242
- package/dist/classes/data/Selector.js +190 -190
- package/dist/classes/data/index.js +2 -2
- package/dist/classes/data/typedef.js +9 -9
- package/dist/classes/event-emitter/EventEmitter.js +273 -273
- package/dist/classes/event-emitter/index.js +2 -2
- package/dist/classes/index.js +4 -4
- package/dist/classes/promise/HkPromise.js +384 -384
- package/dist/classes/promise/index.js +1 -1
- package/dist/classes/stores/SubscribersCount.js +107 -107
- package/dist/classes/stores/index.js +1 -1
- package/dist/classes/streams/LogTransformStream.js +19 -19
- package/dist/classes/streams/ServerEventsStore.js +111 -111
- package/dist/classes/streams/TimeStampSource.js +26 -26
- package/dist/classes/streams/index.js +3 -3
- package/dist/classes/svelte/finite-state-machine/FiniteStateMachine.svelte.js +133 -133
- package/dist/classes/svelte/finite-state-machine/index.js +1 -1
- package/dist/classes/svelte/index.js +1 -11
- package/dist/classes/svelte/loading-state-machine/LoadingStateMachine.svelte.js +109 -109
- package/dist/classes/svelte/loading-state-machine/constants.js +16 -16
- package/dist/classes/svelte/loading-state-machine/index.js +3 -3
- package/dist/config/README.md +197 -196
- package/dist/config/generators/imagetools.js +189 -189
- package/dist/config/generators/vite.js +148 -142
- package/dist/config/imagetools.d.ts +72 -72
- package/dist/config/vite.js +4 -4
- package/dist/constants/bases/index.js +13 -13
- package/dist/constants/http/headers.js +6 -6
- package/dist/constants/http/index.js +2 -2
- package/dist/constants/http/methods.js +14 -14
- package/dist/constants/index.js +6 -6
- package/dist/constants/mime/application.js +5 -5
- package/dist/constants/mime/audio.js +13 -13
- package/dist/constants/mime/image.js +3 -3
- package/dist/constants/mime/index.js +4 -4
- package/dist/constants/mime/text.js +2 -2
- package/dist/constants/regexp/README.md +96 -95
- package/dist/constants/regexp/index.js +31 -31
- package/dist/constants/regexp/inspiratie.js__ +95 -95
- package/dist/constants/regexp/text.d.ts +4 -4
- package/dist/constants/regexp/text.js +49 -49
- package/dist/constants/regexp/url.js +3 -3
- package/dist/constants/regexp/user.js +29 -29
- package/dist/constants/states/drag.js +6 -6
- package/dist/constants/states/drop.js +6 -6
- package/dist/constants/states/index.js +4 -4
- package/dist/constants/states/input.js +11 -11
- package/dist/constants/states/submit.js +4 -4
- package/dist/constants/time/index.js +28 -28
- package/dist/css/utilities.css +43 -43
- package/dist/design/README.md +405 -405
- package/dist/design/config/design-config.js +73 -73
- package/dist/design/generators/index.js +288 -288
- package/dist/design/index.js +96 -96
- package/dist/design/plugins/skeleton.js +208 -208
- package/dist/design/tailwind-theme-extend.js +158 -158
- package/dist/design/themes/README.md +102 -102
- package/dist/design/themes/hkdev/components/blocks/text-block.css +34 -34
- package/dist/design/themes/hkdev/components/boxes/game-box.css +11 -11
- package/dist/design/themes/hkdev/components/buttons/button-icon-steeze.css +22 -22
- package/dist/design/themes/hkdev/components/buttons/button-text.css +32 -32
- package/dist/design/themes/hkdev/components/buttons/button.css +146 -146
- package/dist/design/themes/hkdev/components/buttons/skip-button.css +5 -5
- package/dist/design/themes/hkdev/components/drag-drop/draggable.css +73 -73
- package/dist/design/themes/hkdev/components/drag-drop/drop-zone.css +58 -58
- package/dist/design/themes/hkdev/components/icons/icon-steeze.css +15 -15
- package/dist/design/themes/hkdev/components/inputs/text-input.css +102 -102
- package/dist/design/themes/hkdev/components/panels/panel.css +25 -25
- package/dist/design/themes/hkdev/components/rows/panel-grid-row.css +4 -4
- package/dist/design/themes/hkdev/components/rows/panel-row-2.css +5 -5
- package/dist/design/themes/hkdev/components.css +29 -29
- package/dist/design/themes/hkdev/debug.css +1 -1
- package/dist/design/themes/hkdev/global/layout.css +32 -32
- package/dist/design/themes/hkdev/global/on-colors.css +32 -32
- package/dist/design/themes/hkdev/globals.css +3 -3
- package/dist/design/themes/hkdev/responsive.css +12 -12
- package/dist/design/themes/hkdev/theme-ext.js +12 -12
- package/dist/design/themes/hkdev/theme.css +218 -218
- package/dist/design/utils/clamp.js +66 -66
- package/dist/design/utils/root-vars.js +102 -102
- package/dist/design/utils/scaling.js +228 -228
- package/dist/design/utils/states.js +22 -22
- package/dist/errors/api.js +9 -9
- package/dist/errors/generic.js +20 -20
- package/dist/errors/http.js +16 -16
- package/dist/errors/index.js +5 -5
- package/dist/errors/jwt.js +5 -5
- package/dist/errors/promise.js +25 -25
- package/dist/logging/README.md +158 -0
- package/dist/logging/index.d.ts +3 -1
- package/dist/logging/index.js +11 -7
- package/dist/logging/internal/adapters/console.js +114 -114
- package/dist/logging/internal/adapters/index.js +2 -2
- package/dist/logging/internal/adapters/pino.js +160 -142
- package/dist/logging/internal/adapters/typedef.js +10 -10
- package/dist/logging/internal/{unified-logger/constants.js → constants.js} +22 -22
- package/dist/logging/internal/factories/client.d.ts +1 -1
- package/dist/logging/internal/factories/client.js +21 -21
- package/dist/logging/internal/factories/server.d.ts +1 -1
- package/dist/logging/internal/factories/server.js +22 -22
- package/dist/logging/internal/factories/universal.d.ts +2 -2
- package/dist/logging/internal/factories/universal.js +22 -22
- package/dist/logging/internal/{unified-logger → logger}/Logger.d.ts +2 -2
- package/dist/logging/internal/{unified-logger → logger}/Logger.js +217 -217
- package/dist/logging/internal/logger/index.d.ts +1 -0
- package/dist/logging/internal/logger/index.js +1 -0
- package/dist/logging/internal/{unified-logger/typedef.d.ts → typedef.d.ts} +2 -1
- package/dist/logging/internal/{unified-logger/typedef.js → typedef.js} +21 -17
- package/dist/network/README.md +172 -172
- package/dist/network/cache/IndexedDbCache.js +1407 -1407
- package/dist/network/cache/MemoryResponseCache.js +138 -138
- package/dist/network/cache/index.js +5 -5
- package/dist/network/cache/typedef.js +41 -41
- package/dist/network/cache.js +3 -3
- package/dist/network/http/caching.js +261 -261
- package/dist/network/http/errors.js +97 -97
- package/dist/network/http/headers.js +75 -75
- package/dist/network/http/http-request.js +578 -578
- package/dist/network/http/index.js +22 -22
- package/dist/network/http/json-request.js +224 -224
- package/dist/network/http/mocks.js +65 -65
- package/dist/network/http/response.js +318 -318
- package/dist/network/http/test-data__/content-length-test-hkdigital-small.V4HfZyBQ.avif +0 -0
- package/dist/network/http/typedef.js +93 -93
- package/dist/network/http/url.js +52 -52
- package/dist/network/http.js +5 -5
- package/dist/network/loaders/README.md +254 -254
- package/dist/network/loaders/audio/AudioLoader.svelte.js +58 -58
- package/dist/network/loaders/audio/AudioScene.svelte.js +324 -324
- package/dist/network/loaders/audio/mocks.js +35 -35
- package/dist/network/loaders/audio.js +1 -1
- package/dist/network/loaders/image/ImageLoader.svelte.js +44 -44
- package/dist/network/loaders/image/ImageScene.svelte.js +248 -248
- package/dist/network/loaders/image/ImageVariantsLoader.svelte.js +150 -150
- package/dist/network/loaders/image/index.js +4 -4
- package/dist/network/loaders/image/mocks.js +35 -35
- package/dist/network/loaders/image/typedef.js +8 -8
- package/dist/network/loaders/image/utils/index.js +86 -86
- package/dist/network/loaders/image.js +7 -7
- package/dist/network/loaders/typedef.js +38 -38
- package/dist/network/loaders.js +2 -2
- package/dist/network/states/NetworkLoader.svelte.js +338 -338
- package/dist/network/states/constants.js +3 -3
- package/dist/network/states/index.js +3 -3
- package/dist/network/states/mocks.js +30 -30
- package/dist/network/states/typedef.js +8 -8
- package/dist/network/typedef.js +9 -9
- package/dist/services/README.md +200 -0
- package/dist/services/index.d.ts +6 -1
- package/dist/services/index.js +8 -1
- package/dist/services/{internal/service-base → service-base}/ServiceBase.d.ts +2 -2
- package/dist/services/{internal/service-base → service-base}/ServiceBase.js +462 -462
- package/dist/services/{internal/service-base → service-base}/constants.d.ts +0 -12
- package/dist/services/{internal/service-base → service-base}/constants.js +98 -110
- package/dist/services/{internal/service-base → service-base}/index.js +3 -3
- package/dist/services/{internal/service-base → service-base}/typedef.d.ts +1 -1
- package/dist/services/{internal/service-base → service-base}/typedef.js +101 -101
- package/dist/services/{internal/service-manager → service-manager}/ServiceManager.d.ts +2 -2
- package/dist/services/{internal/service-manager → service-manager}/ServiceManager.js +608 -608
- package/dist/services/{internal/service-manager → service-manager}/constants.js +6 -6
- package/dist/services/{internal/service-manager → service-manager}/typedef.js +90 -90
- package/dist/states/index.js +1 -1
- package/dist/states/navigation.svelte.js +55 -55
- package/dist/stores/index.js +1 -1
- package/dist/stores/theme.js +80 -80
- package/dist/typedef/context.js +6 -6
- package/dist/typedef/drag.js +25 -25
- package/dist/typedef/drop.js +12 -12
- package/dist/typedef/index.d.ts +1 -0
- package/dist/typedef/index.js +4 -4
- package/dist/ui/components/button-group/ButtonGroup.svelte +82 -82
- package/dist/ui/components/button-group/typedef.js +10 -10
- package/dist/ui/components/compare-left-right/CompareLeftRight.svelte +179 -179
- package/dist/ui/components/compare-left-right/index.js +1 -1
- package/dist/ui/components/game-box/GameBox.svelte +577 -577
- package/dist/ui/components/game-box/gamebox.util.js +83 -83
- package/dist/ui/components/hk-app-layout/HkAppLayout.state.svelte.js +25 -25
- package/dist/ui/components/hk-app-layout/HkAppLayout.svelte +251 -251
- package/dist/ui/components/image-box/ImageBox.svelte +210 -210
- package/dist/ui/components/image-box/index.js +5 -5
- package/dist/ui/components/image-box/typedef.js +32 -32
- package/dist/ui/components/index.js +23 -23
- package/dist/ui/components/presenter/ImageSlide.svelte +64 -64
- package/dist/ui/components/presenter/Presenter.state.svelte.js +638 -638
- package/dist/ui/components/presenter/Presenter.svelte +142 -142
- package/dist/ui/components/presenter/constants.js +7 -7
- package/dist/ui/components/presenter/index.js +10 -10
- package/dist/ui/components/presenter/typedef.js +106 -106
- package/dist/ui/components/presenter/util.js +210 -210
- package/dist/ui/components/virtual-viewport/VirtualViewport.svelte +196 -196
- package/dist/ui/primitives/area/HkArea.svelte +49 -49
- package/dist/ui/primitives/area/HkGridArea.svelte +77 -77
- package/dist/ui/primitives/area/index.js +2 -2
- package/dist/ui/primitives/buttons/button/Button.svelte +82 -82
- package/dist/ui/primitives/buttons/button-icon-steeze/SteezeIconButton.svelte +30 -30
- package/dist/ui/primitives/buttons/button-text/TextButton.svelte +21 -21
- package/dist/ui/primitives/buttons/index.js +3 -3
- package/dist/ui/primitives/debug/debug-panel-design-scaling/DebugPanelDesignScaling.svelte +146 -146
- package/dist/ui/primitives/debug/index.js +1 -1
- package/dist/ui/primitives/drag-drop/DragController.js +44 -44
- package/dist/ui/primitives/drag-drop/DragDropContext.svelte +111 -111
- package/dist/ui/primitives/drag-drop/Draggable.svelte +519 -519
- package/dist/ui/primitives/drag-drop/DropZone.svelte +258 -258
- package/dist/ui/primitives/drag-drop/DropZoneArea.svelte +119 -119
- package/dist/ui/primitives/drag-drop/DropZoneList.svelte +125 -125
- package/dist/ui/primitives/drag-drop/actions.js +26 -26
- package/dist/ui/primitives/drag-drop/drag-state.svelte.js +322 -322
- package/dist/ui/primitives/drag-drop/index.js +7 -7
- package/dist/ui/primitives/drag-drop/util.js +85 -85
- package/dist/ui/primitives/hkdev/blocks/TextBlock.svelte +46 -46
- package/dist/ui/primitives/hkdev/buttons/CheckButton.svelte +62 -62
- package/dist/ui/primitives/icons/HkIcon.svelte +86 -86
- package/dist/ui/primitives/icons/HkTabIcon.svelte +116 -116
- package/dist/ui/primitives/icons/SteezeIcon.svelte +97 -97
- package/dist/ui/primitives/icons/index.js +6 -6
- package/dist/ui/primitives/icons/typedef.js +16 -16
- package/dist/ui/primitives/index.js +2 -2
- package/dist/ui/primitives/inputs/index.js +1 -1
- package/dist/ui/primitives/inputs/text-input/TestTextInput.svelte__ +102 -0
- package/dist/ui/primitives/inputs/text-input/TextInput.svelte +223 -223
- package/dist/ui/primitives/inputs/text-input/TextInput.svelte___ +83 -0
- package/dist/ui/primitives/inputs/text-input/assets/IconInvalid.svelte +14 -14
- package/dist/ui/primitives/inputs/text-input/assets/IconValid.svelte +12 -12
- package/dist/ui/primitives/layout/grid-layers/GridLayers.svelte +63 -63
- package/dist/ui/primitives/layout/grid-layers/GridLayers.svelte__heightFrom__ +372 -0
- package/dist/ui/primitives/layout/grid-layers/util.js +74 -74
- package/dist/ui/primitives/layout/index.js +1 -1
- package/dist/ui/primitives/panels/index.js +1 -1
- package/dist/ui/primitives/panels/panel/Panel.svelte +43 -43
- package/dist/ui/primitives/rows/index.js +3 -3
- package/dist/ui/primitives/rows/panel-grid-row/PanelGridRow.svelte +104 -104
- package/dist/ui/primitives/rows/panel-row-2/PanelRow2.svelte +40 -40
- package/dist/ui/primitives/tab-bar/HkTabBar.state.svelte.js +149 -149
- package/dist/ui/primitives/tab-bar/HkTabBar.svelte +74 -74
- package/dist/ui/primitives/tab-bar/HkTabBarSelector.state.svelte.js +93 -93
- package/dist/ui/primitives/tab-bar/HkTabBarSelector.svelte +49 -49
- package/dist/ui/primitives/tab-bar/index.js +17 -17
- package/dist/ui/primitives/tab-bar/typedef.js +11 -11
- package/dist/util/array/index.js +436 -436
- package/dist/util/bases/base58.js +262 -262
- package/dist/util/bases/index.js +1 -1
- package/dist/util/compare/index.js +247 -247
- package/dist/util/css/css-vars.js +83 -83
- package/dist/util/css/index.js +1 -1
- package/dist/util/env/index.js +9 -9
- package/dist/util/exceptions/index.d.ts +4 -3
- package/dist/util/exceptions/index.js +26 -23
- package/dist/util/expect/arrays.js +47 -47
- package/dist/util/expect/index.js +259 -259
- package/dist/util/expect/primitives.js +55 -55
- package/dist/util/expect/url.js +60 -60
- package/dist/util/function/index.js +218 -218
- package/dist/util/geo/index.js +26 -26
- package/dist/util/index.js +7 -7
- package/dist/util/is/index.js +147 -147
- package/dist/util/iterate/index.js +204 -204
- package/dist/util/object/index.js +1345 -1345
- package/dist/util/singleton/index.js +97 -97
- package/dist/util/string/array-path.js +75 -75
- package/dist/util/string/convert.js +54 -54
- package/dist/util/string/fs.js +226 -226
- package/dist/util/string/index.js +5 -5
- package/dist/util/string/interpolate.js +61 -61
- package/dist/util/string/pad.js +10 -10
- package/dist/util/svelte/index.js +4 -4
- package/dist/util/svelte/loading/loading-tracker.svelte.js +108 -108
- package/dist/util/svelte/observe/index.js +49 -49
- package/dist/util/svelte/state-context/index.js +117 -117
- package/dist/util/svelte/wait/index.js +38 -38
- package/dist/util/sveltekit/index.js +1 -1
- package/dist/util/sveltekit/route-folders/index.js +101 -101
- package/dist/util/time/index.js +328 -328
- package/dist/util/unique/index.js +231 -231
- package/dist/valibot/README.md +61 -50
- package/dist/valibot/index.js +8 -8
- package/dist/valibot/parsers/date.js__ +10 -0
- package/dist/valibot/parsers/email.d.ts +12 -0
- package/dist/valibot/parsers/email.js +34 -0
- package/dist/valibot/parsers/url.js +110 -110
- package/dist/valibot/parsers/user.js +23 -23
- package/dist/valibot/parsers.js +3 -3
- package/package.json +131 -131
- package/dist/logging/internal/unified-logger/index.d.ts +0 -3
- package/dist/logging/internal/unified-logger/index.js +0 -6
- package/dist/services/internal/index.d.ts +0 -6
- package/dist/services/internal/index.js +0 -8
- /package/dist/logging/internal/{unified-logger/constants.d.ts → constants.d.ts} +0 -0
- /package/dist/services/{internal/service-base → service-base}/index.d.ts +0 -0
- /package/dist/services/{internal/service-manager → service-manager}/constants.d.ts +0 -0
- /package/dist/services/{internal/service-manager → service-manager}/typedef.d.ts +0 -0
|
@@ -3,13 +3,14 @@
|
|
|
3
3
|
* to the originating Error
|
|
4
4
|
* - The originating Error is set as `cause` property
|
|
5
5
|
*
|
|
6
|
-
* @param {string} message -
|
|
7
|
-
* @param {Error|string}
|
|
6
|
+
* @param {string} message - New error message
|
|
7
|
+
* @param {Error|string} originalError
|
|
8
8
|
* @param {string|Object.<string, any>|null} [details]
|
|
9
|
+
* New error details (a DetailError will be thrown)
|
|
9
10
|
*
|
|
10
11
|
* @throws {DetailedError}
|
|
11
12
|
* @returns {never} This function never returns
|
|
12
13
|
*/
|
|
13
|
-
export function rethrow(message: string,
|
|
14
|
+
export function rethrow(message: string, originalError: Error | string, details?: string | {
|
|
14
15
|
[x: string]: any;
|
|
15
16
|
} | null): never;
|
|
@@ -1,23 +1,26 @@
|
|
|
1
|
-
|
|
2
|
-
import { DetailedError } from "../../errors/generic.js";
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Creates a new Error from the error message and throws it with a reference
|
|
6
|
-
* to the originating Error
|
|
7
|
-
* - The originating Error is set as `cause` property
|
|
8
|
-
*
|
|
9
|
-
* @param {string} message -
|
|
10
|
-
* @param {Error|string}
|
|
11
|
-
* @param {string|Object.<string, any>|null} [details]
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
* @
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
}
|
|
1
|
+
|
|
2
|
+
import { DetailedError } from "../../errors/generic.js";
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Creates a new Error from the error message and throws it with a reference
|
|
6
|
+
* to the originating Error
|
|
7
|
+
* - The originating Error is set as `cause` property
|
|
8
|
+
*
|
|
9
|
+
* @param {string} message - New error message
|
|
10
|
+
* @param {Error|string} originalError
|
|
11
|
+
* @param {string|Object.<string, any>|null} [details]
|
|
12
|
+
* New error details (a DetailError will be thrown)
|
|
13
|
+
*
|
|
14
|
+
* @throws {DetailedError}
|
|
15
|
+
* @returns {never} This function never returns
|
|
16
|
+
*/
|
|
17
|
+
export function rethrow(message, originalError, details ) {
|
|
18
|
+
let error;
|
|
19
|
+
|
|
20
|
+
if (!(originalError instanceof Error)) {
|
|
21
|
+
// Convert non-Error values to Error objects
|
|
22
|
+
error = new Error(String(originalError));
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
throw new DetailedError(message, details, error ?? originalError );
|
|
26
|
+
}
|
|
@@ -1,47 +1,47 @@
|
|
|
1
|
-
import * as v from 'valibot';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Throws a validation error if value is not an array
|
|
5
|
-
*
|
|
6
|
-
* @param {any} value
|
|
7
|
-
*/
|
|
8
|
-
function array_(value) {
|
|
9
|
-
v.parse(v.instance(Array), value);
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
export { array_ as array };
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* Throws a validation error if value is not an array of strings
|
|
16
|
-
*
|
|
17
|
-
* @param {any} value
|
|
18
|
-
*/
|
|
19
|
-
export function stringArray(value) {
|
|
20
|
-
v.parse(v.array(v.string()), value);
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
/**
|
|
24
|
-
* Throws a validation error if value is not an array of objects
|
|
25
|
-
*
|
|
26
|
-
* @param {any} value
|
|
27
|
-
*/
|
|
28
|
-
export function objectArray(value) {
|
|
29
|
-
v.parse(v.array(v.looseObject({})), value);
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* Throws an exception if the value is not an Array or the array is empty
|
|
34
|
-
*/
|
|
35
|
-
export function notEmptyArray(value) {
|
|
36
|
-
v.parse(v.pipe(v.instance(Array), v.nonEmpty()), value);
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
/**
|
|
40
|
-
* Throws a validation error if value is not array like
|
|
41
|
-
* - Checks if the value is an object and has a property `length`
|
|
42
|
-
*
|
|
43
|
-
* @param {any} value
|
|
44
|
-
*/
|
|
45
|
-
export function arrayLike(value) {
|
|
46
|
-
v.parse(v.object({ length: v.number() }), value);
|
|
47
|
-
}
|
|
1
|
+
import * as v from 'valibot';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Throws a validation error if value is not an array
|
|
5
|
+
*
|
|
6
|
+
* @param {any} value
|
|
7
|
+
*/
|
|
8
|
+
function array_(value) {
|
|
9
|
+
v.parse(v.instance(Array), value);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export { array_ as array };
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Throws a validation error if value is not an array of strings
|
|
16
|
+
*
|
|
17
|
+
* @param {any} value
|
|
18
|
+
*/
|
|
19
|
+
export function stringArray(value) {
|
|
20
|
+
v.parse(v.array(v.string()), value);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Throws a validation error if value is not an array of objects
|
|
25
|
+
*
|
|
26
|
+
* @param {any} value
|
|
27
|
+
*/
|
|
28
|
+
export function objectArray(value) {
|
|
29
|
+
v.parse(v.array(v.looseObject({})), value);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Throws an exception if the value is not an Array or the array is empty
|
|
34
|
+
*/
|
|
35
|
+
export function notEmptyArray(value) {
|
|
36
|
+
v.parse(v.pipe(v.instance(Array), v.nonEmpty()), value);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* Throws a validation error if value is not array like
|
|
41
|
+
* - Checks if the value is an object and has a property `length`
|
|
42
|
+
*
|
|
43
|
+
* @param {any} value
|
|
44
|
+
*/
|
|
45
|
+
export function arrayLike(value) {
|
|
46
|
+
v.parse(v.object({ length: v.number() }), value);
|
|
47
|
+
}
|
|
@@ -1,259 +1,259 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Validation functions that can be used as safe guards in your code
|
|
3
|
-
*
|
|
4
|
-
* @example
|
|
5
|
-
*
|
|
6
|
-
* import * as expect from '<path>/expect.js';
|
|
7
|
-
*
|
|
8
|
-
* function logText( text )
|
|
9
|
-
* {
|
|
10
|
-
* expect.string( text );
|
|
11
|
-
* expect.true( 1 > 0 );
|
|
12
|
-
*
|
|
13
|
-
* console.log( text );
|
|
14
|
-
* }
|
|
15
|
-
*
|
|
16
|
-
* logText( 'Hello' );
|
|
17
|
-
* logText( 123 ); // <- Will throw an exception
|
|
18
|
-
*/
|
|
19
|
-
|
|
20
|
-
import * as v from 'valibot';
|
|
21
|
-
|
|
22
|
-
import * as is from '../is/index.js';
|
|
23
|
-
|
|
24
|
-
/** Internals */
|
|
25
|
-
|
|
26
|
-
const ObjectSchema = v.custom(is.object, `Invalid type: Expected object`);
|
|
27
|
-
|
|
28
|
-
/** Exports */
|
|
29
|
-
|
|
30
|
-
export * from './arrays.js';
|
|
31
|
-
export * from './primitives.js';
|
|
32
|
-
export * from './url.js';
|
|
33
|
-
|
|
34
|
-
// > Base objects
|
|
35
|
-
|
|
36
|
-
/**
|
|
37
|
-
* Throws a validation error if value is not an object
|
|
38
|
-
*
|
|
39
|
-
* @param {any} value
|
|
40
|
-
*/
|
|
41
|
-
function object_(value) {
|
|
42
|
-
v.parse(ObjectSchema, value);
|
|
43
|
-
// v.parse(v.looseObject({}), value);
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
export { object_ as object };
|
|
47
|
-
|
|
48
|
-
/**
|
|
49
|
-
* Throws a validation error if value is not a function
|
|
50
|
-
*
|
|
51
|
-
* @param {any} value
|
|
52
|
-
*/
|
|
53
|
-
function function_(value) {
|
|
54
|
-
v.parse(v.function(), value);
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
export { function_ as function };
|
|
58
|
-
|
|
59
|
-
export { function_ as class };
|
|
60
|
-
|
|
61
|
-
/**
|
|
62
|
-
* Throws a validation error if value is not a Promise
|
|
63
|
-
*
|
|
64
|
-
* @param {any} value
|
|
65
|
-
*/
|
|
66
|
-
function promise_(value) {
|
|
67
|
-
v.parse(v.instance(Promise), value);
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
export { promise_ as promise };
|
|
71
|
-
|
|
72
|
-
/**
|
|
73
|
-
* Throws a validation error if value is not a Map
|
|
74
|
-
*
|
|
75
|
-
* @param {any} value
|
|
76
|
-
*/
|
|
77
|
-
function map_(value) {
|
|
78
|
-
v.parse(v.instance(Map), value);
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
export { map_ as map };
|
|
82
|
-
|
|
83
|
-
/**
|
|
84
|
-
* Throws a validation error if value is not a Set
|
|
85
|
-
*
|
|
86
|
-
* @param {any} value
|
|
87
|
-
*/
|
|
88
|
-
function set_(value) {
|
|
89
|
-
v.parse(v.instance(Set), value);
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
export { set_ as set };
|
|
93
|
-
|
|
94
|
-
/**
|
|
95
|
-
* Throws a validation error if value is not an Error instance
|
|
96
|
-
*
|
|
97
|
-
* @param {any} value
|
|
98
|
-
*/
|
|
99
|
-
export function error_(value) {
|
|
100
|
-
v.parse(v.instance(Map), value);
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
export { error_ as error };
|
|
104
|
-
|
|
105
|
-
// > Common values
|
|
106
|
-
|
|
107
|
-
/**
|
|
108
|
-
* Expect a value not to be null
|
|
109
|
-
*
|
|
110
|
-
* @param {any} value
|
|
111
|
-
*/
|
|
112
|
-
export function notNull(value) {
|
|
113
|
-
v.notValue(null, value);
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
/**
|
|
117
|
-
* Expect a value to be a boolean and true
|
|
118
|
-
*
|
|
119
|
-
* @param {any} value
|
|
120
|
-
*/
|
|
121
|
-
export function _true(value) {
|
|
122
|
-
v.value(true, value);
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
export { _true as true };
|
|
126
|
-
|
|
127
|
-
// > Compounds
|
|
128
|
-
|
|
129
|
-
/**
|
|
130
|
-
* Expect a positive number
|
|
131
|
-
*
|
|
132
|
-
* @param {any} value
|
|
133
|
-
*/
|
|
134
|
-
export function positiveNumber(value) {
|
|
135
|
-
const schema = v.pipe(v.number(), v.minValue(0));
|
|
136
|
-
v.parse(schema, value);
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
// notNegativeNumber
|
|
140
|
-
// positiveInteger
|
|
141
|
-
// notNegativeInteger
|
|
142
|
-
|
|
143
|
-
// stringOrNull
|
|
144
|
-
// stringOrUndefined
|
|
145
|
-
|
|
146
|
-
/**
|
|
147
|
-
* Throws a validation error if value is not a string
|
|
148
|
-
*
|
|
149
|
-
* @param {any} value
|
|
150
|
-
*/
|
|
151
|
-
export function notEmptyString(value) {
|
|
152
|
-
const schema = v.pipe(v.string(), v.minLength(1));
|
|
153
|
-
|
|
154
|
-
v.parse(schema, value);
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
// notEmptyStringOrNull
|
|
158
|
-
|
|
159
|
-
// asyncIterator
|
|
160
|
-
// iterable
|
|
161
|
-
|
|
162
|
-
/**
|
|
163
|
-
* Throws a validation error if value is not iterable
|
|
164
|
-
*
|
|
165
|
-
* @param {any} value
|
|
166
|
-
*/
|
|
167
|
-
export function iterable(value) {
|
|
168
|
-
const schema = v.pipe(v.looseObject({ [Symbol.iterator]: v.function() }));
|
|
169
|
-
|
|
170
|
-
v.parse(schema, value);
|
|
171
|
-
}
|
|
172
|
-
|
|
173
|
-
// iterator
|
|
174
|
-
|
|
175
|
-
/**
|
|
176
|
-
* Throws a validation error if value is not a a store (has not subscribe
|
|
177
|
-
* method)
|
|
178
|
-
*
|
|
179
|
-
* @param {any} value
|
|
180
|
-
*/
|
|
181
|
-
export function store(value) {
|
|
182
|
-
v.parse(
|
|
183
|
-
v.custom((value) => {
|
|
184
|
-
if (!is.object(value) || typeof value.subscribe !== 'function') {
|
|
185
|
-
return false;
|
|
186
|
-
}
|
|
187
|
-
|
|
188
|
-
return true;
|
|
189
|
-
}),
|
|
190
|
-
value
|
|
191
|
-
);
|
|
192
|
-
}
|
|
193
|
-
|
|
194
|
-
// ArrayBuffer
|
|
195
|
-
// arrayOrUndefined
|
|
196
|
-
// arangoCollectionId
|
|
197
|
-
// uriComponent
|
|
198
|
-
|
|
199
|
-
/**
|
|
200
|
-
* Throws a validation error if value is not an object or the value
|
|
201
|
-
* is an array
|
|
202
|
-
*
|
|
203
|
-
* @param {any} value
|
|
204
|
-
*/
|
|
205
|
-
export function objectNoArray(value) {
|
|
206
|
-
v.parse(
|
|
207
|
-
v.custom((value) => {
|
|
208
|
-
if (!is.object(value) || value instanceof Array) {
|
|
209
|
-
return false;
|
|
210
|
-
}
|
|
211
|
-
|
|
212
|
-
return true;
|
|
213
|
-
}),
|
|
214
|
-
value
|
|
215
|
-
);
|
|
216
|
-
}
|
|
217
|
-
|
|
218
|
-
/**
|
|
219
|
-
* Throws a validation error if value is not an object or the value
|
|
220
|
-
* is a function
|
|
221
|
-
*
|
|
222
|
-
* @param {any} value
|
|
223
|
-
*/
|
|
224
|
-
export function objectNoFunction(value) {
|
|
225
|
-
v.parse(
|
|
226
|
-
v.custom((value) => {
|
|
227
|
-
if (!is.object(value) || typeof value === 'function') {
|
|
228
|
-
return false;
|
|
229
|
-
}
|
|
230
|
-
|
|
231
|
-
return true;
|
|
232
|
-
}),
|
|
233
|
-
value
|
|
234
|
-
);
|
|
235
|
-
}
|
|
236
|
-
|
|
237
|
-
/**
|
|
238
|
-
* Throws a validation error if value is not an object or null
|
|
239
|
-
*
|
|
240
|
-
* @param {any} value
|
|
241
|
-
*/
|
|
242
|
-
export function objectOrNull(value) {
|
|
243
|
-
v.parse(v.union([v.value(null), v.looseObject({})]), value);
|
|
244
|
-
}
|
|
245
|
-
|
|
246
|
-
// objectOrUndefined
|
|
247
|
-
// objectPath
|
|
248
|
-
|
|
249
|
-
/**
|
|
250
|
-
* Throws a validation error if value is not an array or Set
|
|
251
|
-
*
|
|
252
|
-
* @param {any} value
|
|
253
|
-
*/
|
|
254
|
-
export function arrayOrSet(value) {
|
|
255
|
-
v.parse(v.union([v.instance(Array), v.instance(Set)]), value);
|
|
256
|
-
}
|
|
257
|
-
|
|
258
|
-
// setOfStrings
|
|
259
|
-
// emptyStringOrSymbol
|
|
1
|
+
/**
|
|
2
|
+
* Validation functions that can be used as safe guards in your code
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
*
|
|
6
|
+
* import * as expect from '<path>/expect.js';
|
|
7
|
+
*
|
|
8
|
+
* function logText( text )
|
|
9
|
+
* {
|
|
10
|
+
* expect.string( text );
|
|
11
|
+
* expect.true( 1 > 0 );
|
|
12
|
+
*
|
|
13
|
+
* console.log( text );
|
|
14
|
+
* }
|
|
15
|
+
*
|
|
16
|
+
* logText( 'Hello' );
|
|
17
|
+
* logText( 123 ); // <- Will throw an exception
|
|
18
|
+
*/
|
|
19
|
+
|
|
20
|
+
import * as v from 'valibot';
|
|
21
|
+
|
|
22
|
+
import * as is from '../is/index.js';
|
|
23
|
+
|
|
24
|
+
/** Internals */
|
|
25
|
+
|
|
26
|
+
const ObjectSchema = v.custom(is.object, `Invalid type: Expected object`);
|
|
27
|
+
|
|
28
|
+
/** Exports */
|
|
29
|
+
|
|
30
|
+
export * from './arrays.js';
|
|
31
|
+
export * from './primitives.js';
|
|
32
|
+
export * from './url.js';
|
|
33
|
+
|
|
34
|
+
// > Base objects
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Throws a validation error if value is not an object
|
|
38
|
+
*
|
|
39
|
+
* @param {any} value
|
|
40
|
+
*/
|
|
41
|
+
function object_(value) {
|
|
42
|
+
v.parse(ObjectSchema, value);
|
|
43
|
+
// v.parse(v.looseObject({}), value);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export { object_ as object };
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Throws a validation error if value is not a function
|
|
50
|
+
*
|
|
51
|
+
* @param {any} value
|
|
52
|
+
*/
|
|
53
|
+
function function_(value) {
|
|
54
|
+
v.parse(v.function(), value);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
export { function_ as function };
|
|
58
|
+
|
|
59
|
+
export { function_ as class };
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* Throws a validation error if value is not a Promise
|
|
63
|
+
*
|
|
64
|
+
* @param {any} value
|
|
65
|
+
*/
|
|
66
|
+
function promise_(value) {
|
|
67
|
+
v.parse(v.instance(Promise), value);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
export { promise_ as promise };
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Throws a validation error if value is not a Map
|
|
74
|
+
*
|
|
75
|
+
* @param {any} value
|
|
76
|
+
*/
|
|
77
|
+
function map_(value) {
|
|
78
|
+
v.parse(v.instance(Map), value);
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
export { map_ as map };
|
|
82
|
+
|
|
83
|
+
/**
|
|
84
|
+
* Throws a validation error if value is not a Set
|
|
85
|
+
*
|
|
86
|
+
* @param {any} value
|
|
87
|
+
*/
|
|
88
|
+
function set_(value) {
|
|
89
|
+
v.parse(v.instance(Set), value);
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
export { set_ as set };
|
|
93
|
+
|
|
94
|
+
/**
|
|
95
|
+
* Throws a validation error if value is not an Error instance
|
|
96
|
+
*
|
|
97
|
+
* @param {any} value
|
|
98
|
+
*/
|
|
99
|
+
export function error_(value) {
|
|
100
|
+
v.parse(v.instance(Map), value);
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
export { error_ as error };
|
|
104
|
+
|
|
105
|
+
// > Common values
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* Expect a value not to be null
|
|
109
|
+
*
|
|
110
|
+
* @param {any} value
|
|
111
|
+
*/
|
|
112
|
+
export function notNull(value) {
|
|
113
|
+
v.notValue(null, value);
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
/**
|
|
117
|
+
* Expect a value to be a boolean and true
|
|
118
|
+
*
|
|
119
|
+
* @param {any} value
|
|
120
|
+
*/
|
|
121
|
+
export function _true(value) {
|
|
122
|
+
v.value(true, value);
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
export { _true as true };
|
|
126
|
+
|
|
127
|
+
// > Compounds
|
|
128
|
+
|
|
129
|
+
/**
|
|
130
|
+
* Expect a positive number
|
|
131
|
+
*
|
|
132
|
+
* @param {any} value
|
|
133
|
+
*/
|
|
134
|
+
export function positiveNumber(value) {
|
|
135
|
+
const schema = v.pipe(v.number(), v.minValue(0));
|
|
136
|
+
v.parse(schema, value);
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
// notNegativeNumber
|
|
140
|
+
// positiveInteger
|
|
141
|
+
// notNegativeInteger
|
|
142
|
+
|
|
143
|
+
// stringOrNull
|
|
144
|
+
// stringOrUndefined
|
|
145
|
+
|
|
146
|
+
/**
|
|
147
|
+
* Throws a validation error if value is not a string
|
|
148
|
+
*
|
|
149
|
+
* @param {any} value
|
|
150
|
+
*/
|
|
151
|
+
export function notEmptyString(value) {
|
|
152
|
+
const schema = v.pipe(v.string(), v.minLength(1));
|
|
153
|
+
|
|
154
|
+
v.parse(schema, value);
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
// notEmptyStringOrNull
|
|
158
|
+
|
|
159
|
+
// asyncIterator
|
|
160
|
+
// iterable
|
|
161
|
+
|
|
162
|
+
/**
|
|
163
|
+
* Throws a validation error if value is not iterable
|
|
164
|
+
*
|
|
165
|
+
* @param {any} value
|
|
166
|
+
*/
|
|
167
|
+
export function iterable(value) {
|
|
168
|
+
const schema = v.pipe(v.looseObject({ [Symbol.iterator]: v.function() }));
|
|
169
|
+
|
|
170
|
+
v.parse(schema, value);
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
// iterator
|
|
174
|
+
|
|
175
|
+
/**
|
|
176
|
+
* Throws a validation error if value is not a a store (has not subscribe
|
|
177
|
+
* method)
|
|
178
|
+
*
|
|
179
|
+
* @param {any} value
|
|
180
|
+
*/
|
|
181
|
+
export function store(value) {
|
|
182
|
+
v.parse(
|
|
183
|
+
v.custom((value) => {
|
|
184
|
+
if (!is.object(value) || typeof value.subscribe !== 'function') {
|
|
185
|
+
return false;
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
return true;
|
|
189
|
+
}),
|
|
190
|
+
value
|
|
191
|
+
);
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
// ArrayBuffer
|
|
195
|
+
// arrayOrUndefined
|
|
196
|
+
// arangoCollectionId
|
|
197
|
+
// uriComponent
|
|
198
|
+
|
|
199
|
+
/**
|
|
200
|
+
* Throws a validation error if value is not an object or the value
|
|
201
|
+
* is an array
|
|
202
|
+
*
|
|
203
|
+
* @param {any} value
|
|
204
|
+
*/
|
|
205
|
+
export function objectNoArray(value) {
|
|
206
|
+
v.parse(
|
|
207
|
+
v.custom((value) => {
|
|
208
|
+
if (!is.object(value) || value instanceof Array) {
|
|
209
|
+
return false;
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
return true;
|
|
213
|
+
}),
|
|
214
|
+
value
|
|
215
|
+
);
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
/**
|
|
219
|
+
* Throws a validation error if value is not an object or the value
|
|
220
|
+
* is a function
|
|
221
|
+
*
|
|
222
|
+
* @param {any} value
|
|
223
|
+
*/
|
|
224
|
+
export function objectNoFunction(value) {
|
|
225
|
+
v.parse(
|
|
226
|
+
v.custom((value) => {
|
|
227
|
+
if (!is.object(value) || typeof value === 'function') {
|
|
228
|
+
return false;
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
return true;
|
|
232
|
+
}),
|
|
233
|
+
value
|
|
234
|
+
);
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
/**
|
|
238
|
+
* Throws a validation error if value is not an object or null
|
|
239
|
+
*
|
|
240
|
+
* @param {any} value
|
|
241
|
+
*/
|
|
242
|
+
export function objectOrNull(value) {
|
|
243
|
+
v.parse(v.union([v.value(null), v.looseObject({})]), value);
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
// objectOrUndefined
|
|
247
|
+
// objectPath
|
|
248
|
+
|
|
249
|
+
/**
|
|
250
|
+
* Throws a validation error if value is not an array or Set
|
|
251
|
+
*
|
|
252
|
+
* @param {any} value
|
|
253
|
+
*/
|
|
254
|
+
export function arrayOrSet(value) {
|
|
255
|
+
v.parse(v.union([v.instance(Array), v.instance(Set)]), value);
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
// setOfStrings
|
|
259
|
+
// emptyStringOrSymbol
|