@design-edito/tools 0.3.0 → 1.0.1
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/agnostic/scrapers/@meteociel/index.d.ts +36 -0
- package/agnostic/scrapers/@meteociel/index.js +194 -0
- package/agnostic/scrapers/@meteociel/locations/index.d.ts +11 -0
- package/agnostic/scrapers/@meteociel/locations/index.js +6 -0
- package/agnostic/scrapers/@meteociel/types.d.ts +1 -0
- package/agnostic/weather/types.d.ts +181 -0
- package/chunks/chunk-JQLUR5LO.js +12 -0
- package/components/Comp/index.d.ts +1 -1
- package/components/Comp/index.js +0 -10
- package/package.json +2 -1
- package/agnostic/arrays/dedupe/index.d.ts +0 -7
- package/agnostic/arrays/dedupe/index.js +0 -10
- package/agnostic/arrays/find-duplicates/index.d.ts +0 -15
- package/agnostic/arrays/find-duplicates/index.js +0 -26
- package/agnostic/arrays/find-duplicates/index.test.d.ts +0 -1
- package/agnostic/arrays/is-array-of/index.d.ts +0 -16
- package/agnostic/arrays/is-array-of/index.js +0 -27
- package/agnostic/arrays/is-array-of/index.test.d.ts +0 -1
- package/agnostic/arrays/make/index.d.ts +0 -11
- package/agnostic/arrays/make/index.js +0 -9
- package/agnostic/arrays/make/index.test.d.ts +0 -1
- package/agnostic/arrays/random-pick/index.d.ts +0 -22
- package/agnostic/arrays/random-pick/index.js +0 -9
- package/agnostic/arrays/random-pick/index.test.d.ts +0 -1
- package/agnostic/arrays/shuffle/index.d.ts +0 -9
- package/agnostic/arrays/shuffle/index.js +0 -14
- package/agnostic/arrays/shuffle/index.test.d.ts +0 -1
- package/agnostic/booleans/is-falsy/index.d.ts +0 -24
- package/agnostic/booleans/is-falsy/index.js +0 -12
- package/agnostic/booleans/is-falsy/index.test.d.ts +0 -1
- package/agnostic/colors/channels/index.d.ts +0 -39
- package/agnostic/colors/channels/index.js +0 -19
- package/agnostic/colors/channels/index.test.d.ts +0 -1
- package/agnostic/colors/contrast/index.d.ts +0 -10
- package/agnostic/colors/contrast/index.js +0 -33
- package/agnostic/colors/contrast/index.test.d.ts +0 -1
- package/agnostic/colors/convert/index.d.ts +0 -164
- package/agnostic/colors/convert/index.js +0 -46
- package/agnostic/colors/convert/index.test.d.ts +0 -1
- package/agnostic/colors/distance/index.d.ts +0 -10
- package/agnostic/colors/distance/index.js +0 -56
- package/agnostic/colors/distance/index.test.d.ts +0 -1
- package/agnostic/colors/grayscale/index.d.ts +0 -10
- package/agnostic/colors/grayscale/index.js +0 -162
- package/agnostic/colors/grayscale/index.test.d.ts +0 -1
- package/agnostic/colors/invert/index.d.ts +0 -10
- package/agnostic/colors/invert/index.js +0 -51
- package/agnostic/colors/invert/index.test.d.ts +0 -1
- package/agnostic/colors/lerp/index.d.ts +0 -13
- package/agnostic/colors/lerp/index.js +0 -103
- package/agnostic/colors/lerp/index.test.d.ts +0 -1
- package/agnostic/colors/luminance/index.d.ts +0 -9
- package/agnostic/colors/luminance/index.js +0 -13
- package/agnostic/colors/luminance/index.test.d.ts +0 -1
- package/agnostic/colors/palette/index.d.ts +0 -11
- package/agnostic/colors/palette/index.js +0 -110
- package/agnostic/colors/palette/index.test.d.ts +0 -1
- package/agnostic/colors/rotate/index.d.ts +0 -11
- package/agnostic/colors/rotate/index.js +0 -14
- package/agnostic/colors/rotate/index.test.d.ts +0 -1
- package/agnostic/colors/tidy/index.d.ts +0 -10
- package/agnostic/colors/tidy/index.js +0 -12
- package/agnostic/colors/tidy/index.test.d.ts +0 -1
- package/agnostic/colors/typechecks/index.d.ts +0 -71
- package/agnostic/colors/typechecks/index.js +0 -27
- package/agnostic/colors/typechecks/index.test.d.ts +0 -1
- package/agnostic/colors/types.d.ts +0 -188
- package/agnostic/colors/types.js +0 -7
- package/agnostic/css/bem/index.d.ts +0 -30
- package/agnostic/css/bem/index.js +0 -159
- package/agnostic/css/generate-nice-color/index.d.ts +0 -8
- package/agnostic/css/generate-nice-color/index.js +0 -74
- package/agnostic/css/generate-nice-color/index.test.d.ts +0 -1
- package/agnostic/css/is-valid-css-class-name/index.d.ts +0 -13
- package/agnostic/css/is-valid-css-class-name/index.js +0 -9
- package/agnostic/css/is-valid-css-class-name/index.test.d.ts +0 -1
- package/agnostic/css/styles-set/index.d.ts +0 -39
- package/agnostic/css/styles-set/index.js +0 -173
- package/agnostic/errors/register/index.d.ts +0 -33
- package/agnostic/errors/register/index.js +0 -51
- package/agnostic/errors/unknown-to-string/index.d.ts +0 -7
- package/agnostic/errors/unknown-to-string/index.js +0 -7
- package/agnostic/errors/unknown-to-string/index.test.d.ts +0 -1
- package/agnostic/html/get-node-ancestors/index.d.ts +0 -13
- package/agnostic/html/get-node-ancestors/index.js +0 -8
- package/agnostic/html/get-node-ancestors/index.test.d.ts +0 -1
- package/agnostic/html/get-position-inside-parent/index.d.ts +0 -9
- package/agnostic/html/get-position-inside-parent/index.js +0 -11
- package/agnostic/html/get-position-inside-parent/index.test.d.ts +0 -1
- package/agnostic/html/hyper-json/cast/index.d.ts +0 -12
- package/agnostic/html/hyper-json/cast/index.js +0 -25
- package/agnostic/html/hyper-json/index.d.ts +0 -18
- package/agnostic/html/hyper-json/index.js +0 -50
- package/agnostic/html/hyper-json/method/index.d.ts +0 -7
- package/agnostic/html/hyper-json/method/index.js +0 -7
- package/agnostic/html/hyper-json/serialize/index.d.ts +0 -5
- package/agnostic/html/hyper-json/serialize/index.js +0 -11
- package/agnostic/html/hyper-json/smart-tags/coalesced/add/index.d.ts +0 -4
- package/agnostic/html/hyper-json/smart-tags/coalesced/add/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/addclass/index.d.ts +0 -5
- package/agnostic/html/hyper-json/smart-tags/coalesced/addclass/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/and/index.d.ts +0 -2
- package/agnostic/html/hyper-json/smart-tags/coalesced/and/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/append/index.d.ts +0 -6
- package/agnostic/html/hyper-json/smart-tags/coalesced/append/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/at/index.d.ts +0 -5
- package/agnostic/html/hyper-json/smart-tags/coalesced/at/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/call/index.d.ts +0 -4
- package/agnostic/html/hyper-json/smart-tags/coalesced/call/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/clone/index.d.ts +0 -2
- package/agnostic/html/hyper-json/smart-tags/coalesced/clone/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/deleteproperties/index.d.ts +0 -4
- package/agnostic/html/hyper-json/smart-tags/coalesced/deleteproperties/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/equals/index.d.ts +0 -2
- package/agnostic/html/hyper-json/smart-tags/coalesced/equals/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/getattribute/index.d.ts +0 -4
- package/agnostic/html/hyper-json/smart-tags/coalesced/getattribute/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/getproperties/index.d.ts +0 -4
- package/agnostic/html/hyper-json/smart-tags/coalesced/getproperties/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/getproperty/index.d.ts +0 -5
- package/agnostic/html/hyper-json/smart-tags/coalesced/getproperty/index.js +0 -27
- package/agnostic/html/hyper-json/smart-tags/coalesced/hjparse/index.d.ts +0 -4
- package/agnostic/html/hyper-json/smart-tags/coalesced/hjparse/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/hjstringify/index.d.ts +0 -4
- package/agnostic/html/hyper-json/smart-tags/coalesced/hjstringify/index.js +0 -29
- package/agnostic/html/hyper-json/smart-tags/coalesced/if/index.d.ts +0 -8
- package/agnostic/html/hyper-json/smart-tags/coalesced/if/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/initialize/index.d.ts +0 -4
- package/agnostic/html/hyper-json/smart-tags/coalesced/initialize/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/join/index.d.ts +0 -5
- package/agnostic/html/hyper-json/smart-tags/coalesced/join/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/length/index.d.ts +0 -4
- package/agnostic/html/hyper-json/smart-tags/coalesced/length/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/map/index.d.ts +0 -4
- package/agnostic/html/hyper-json/smart-tags/coalesced/map/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/negate/index.d.ts +0 -1
- package/agnostic/html/hyper-json/smart-tags/coalesced/negate/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/notrailing/index.d.ts +0 -5
- package/agnostic/html/hyper-json/smart-tags/coalesced/notrailing/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/or/index.d.ts +0 -2
- package/agnostic/html/hyper-json/smart-tags/coalesced/or/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/pickrandom/index.d.ts +0 -2
- package/agnostic/html/hyper-json/smart-tags/coalesced/pickrandom/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/populate/index.d.ts +0 -6
- package/agnostic/html/hyper-json/smart-tags/coalesced/populate/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/print/index.d.ts +0 -2
- package/agnostic/html/hyper-json/smart-tags/coalesced/print/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/push/index.d.ts +0 -2
- package/agnostic/html/hyper-json/smart-tags/coalesced/push/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/pusheach/index.d.ts +0 -4
- package/agnostic/html/hyper-json/smart-tags/coalesced/pusheach/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/recordtoarray/index.d.ts +0 -2
- package/agnostic/html/hyper-json/smart-tags/coalesced/recordtoarray/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/removeattribute/index.d.ts +0 -5
- package/agnostic/html/hyper-json/smart-tags/coalesced/removeattribute/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/removeclass/index.d.ts +0 -5
- package/agnostic/html/hyper-json/smart-tags/coalesced/removeclass/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/renameproperty/index.d.ts +0 -7
- package/agnostic/html/hyper-json/smart-tags/coalesced/renameproperty/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/replace/index.d.ts +0 -7
- package/agnostic/html/hyper-json/smart-tags/coalesced/replace/index.js +0 -27
- package/agnostic/html/hyper-json/smart-tags/coalesced/select/index.d.ts +0 -5
- package/agnostic/html/hyper-json/smart-tags/coalesced/select/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/set/index.d.ts +0 -4
- package/agnostic/html/hyper-json/smart-tags/coalesced/set/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/setattribute/index.d.ts +0 -5
- package/agnostic/html/hyper-json/smart-tags/coalesced/setattribute/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/setproperty/index.d.ts +0 -7
- package/agnostic/html/hyper-json/smart-tags/coalesced/setproperty/index.js +0 -27
- package/agnostic/html/hyper-json/smart-tags/coalesced/sorton/index.d.ts +0 -5
- package/agnostic/html/hyper-json/smart-tags/coalesced/sorton/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/split/index.d.ts +0 -5
- package/agnostic/html/hyper-json/smart-tags/coalesced/split/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/spread/index.d.ts +0 -4
- package/agnostic/html/hyper-json/smart-tags/coalesced/spread/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/toarray/index.d.ts +0 -2
- package/agnostic/html/hyper-json/smart-tags/coalesced/toarray/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/toboolean/index.d.ts +0 -2
- package/agnostic/html/hyper-json/smart-tags/coalesced/toboolean/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/toelement/index.d.ts +0 -4
- package/agnostic/html/hyper-json/smart-tags/coalesced/toelement/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/toggleclass/index.d.ts +0 -5
- package/agnostic/html/hyper-json/smart-tags/coalesced/toggleclass/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/tonodelist/index.d.ts +0 -4
- package/agnostic/html/hyper-json/smart-tags/coalesced/tonodelist/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/tonull/index.d.ts +0 -2
- package/agnostic/html/hyper-json/smart-tags/coalesced/tonull/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/tonumber/index.d.ts +0 -2
- package/agnostic/html/hyper-json/smart-tags/coalesced/tonumber/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/torecord/index.d.ts +0 -2
- package/agnostic/html/hyper-json/smart-tags/coalesced/torecord/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/toref/index.d.ts +0 -2
- package/agnostic/html/hyper-json/smart-tags/coalesced/toref/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/tostring/index.d.ts +0 -2
- package/agnostic/html/hyper-json/smart-tags/coalesced/tostring/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/totext/index.d.ts +0 -2
- package/agnostic/html/hyper-json/smart-tags/coalesced/totext/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/transformselected/index.d.ts +0 -9
- package/agnostic/html/hyper-json/smart-tags/coalesced/transformselected/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/coalesced/trim/index.d.ts +0 -4
- package/agnostic/html/hyper-json/smart-tags/coalesced/trim/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/index.d.ts +0 -4
- package/agnostic/html/hyper-json/smart-tags/index.js +0 -10
- package/agnostic/html/hyper-json/smart-tags/isolated/any/index.d.ts +0 -2
- package/agnostic/html/hyper-json/smart-tags/isolated/any/index.js +0 -11
- package/agnostic/html/hyper-json/smart-tags/isolated/array/index.d.ts +0 -2
- package/agnostic/html/hyper-json/smart-tags/isolated/array/index.js +0 -11
- package/agnostic/html/hyper-json/smart-tags/isolated/boolean/index.d.ts +0 -4
- package/agnostic/html/hyper-json/smart-tags/isolated/boolean/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/isolated/element/index.d.ts +0 -4
- package/agnostic/html/hyper-json/smart-tags/isolated/element/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/isolated/get/index.d.ts +0 -4
- package/agnostic/html/hyper-json/smart-tags/isolated/get/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/isolated/global/index.d.ts +0 -2
- package/agnostic/html/hyper-json/smart-tags/isolated/global/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/isolated/guess/index.d.ts +0 -2
- package/agnostic/html/hyper-json/smart-tags/isolated/guess/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/isolated/nodelist/index.d.ts +0 -4
- package/agnostic/html/hyper-json/smart-tags/isolated/nodelist/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/isolated/null/index.d.ts +0 -2
- package/agnostic/html/hyper-json/smart-tags/isolated/null/index.js +0 -11
- package/agnostic/html/hyper-json/smart-tags/isolated/number/index.d.ts +0 -4
- package/agnostic/html/hyper-json/smart-tags/isolated/number/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/isolated/record/index.d.ts +0 -4
- package/agnostic/html/hyper-json/smart-tags/isolated/record/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/isolated/ref/index.d.ts +0 -7
- package/agnostic/html/hyper-json/smart-tags/isolated/ref/index.js +0 -27
- package/agnostic/html/hyper-json/smart-tags/isolated/string/index.d.ts +0 -4
- package/agnostic/html/hyper-json/smart-tags/isolated/string/index.js +0 -25
- package/agnostic/html/hyper-json/smart-tags/isolated/text/index.d.ts +0 -4
- package/agnostic/html/hyper-json/smart-tags/isolated/text/index.js +0 -25
- package/agnostic/html/hyper-json/transformer/index.d.ts +0 -33
- package/agnostic/html/hyper-json/transformer/index.js +0 -9
- package/agnostic/html/hyper-json/tree/index.d.ts +0 -47
- package/agnostic/html/hyper-json/tree/index.js +0 -25
- package/agnostic/html/hyper-json/types/index.d.ts +0 -143
- package/agnostic/html/hyper-json/types/index.js +0 -7
- package/agnostic/html/hyper-json/utils/index.d.ts +0 -57
- package/agnostic/html/hyper-json/utils/index.js +0 -25
- package/agnostic/html/insert-node/index.d.ts +0 -19
- package/agnostic/html/insert-node/index.js +0 -7
- package/agnostic/html/insert-node/index.test.d.ts +0 -1
- package/agnostic/html/placeholders/index.d.ts +0 -7
- package/agnostic/html/placeholders/index.js +0 -39
- package/agnostic/html/replace-in-element/index.d.ts +0 -15
- package/agnostic/html/replace-in-element/index.js +0 -26
- package/agnostic/html/replace-in-element/index.test.d.ts +0 -1
- package/agnostic/html/selector-to-element/index.d.ts +0 -16
- package/agnostic/html/selector-to-element/index.js +0 -34
- package/agnostic/html/selector-to-element/index.test.d.ts +0 -1
- package/agnostic/html/string-to-nodes/index.d.ts +0 -14
- package/agnostic/html/string-to-nodes/index.js +0 -20
- package/agnostic/html/string-to-nodes/index.test.d.ts +0 -1
- package/agnostic/misc/assert/index.d.ts +0 -5
- package/agnostic/misc/assert/index.js +0 -64
- package/agnostic/misc/cast/index.d.ts +0 -81
- package/agnostic/misc/cast/index.js +0 -23
- package/agnostic/misc/cast/index.test.d.ts +0 -1
- package/agnostic/misc/connection/index.d.ts +0 -26
- package/agnostic/misc/connection/index.js +0 -39
- package/agnostic/misc/connection/index.test.d.ts +0 -1
- package/agnostic/misc/crawler/index.d.ts +0 -63
- package/agnostic/misc/crawler/index.js +0 -35
- package/agnostic/misc/crawler/index.test.d.ts +0 -1
- package/agnostic/misc/crossenv/detect-runtime/index.d.ts +0 -12
- package/agnostic/misc/crossenv/detect-runtime/index.js +0 -17
- package/agnostic/misc/crossenv/detect-runtime/index.test.d.ts +0 -1
- package/agnostic/misc/crossenv/types.d.ts +0 -40
- package/agnostic/misc/crossenv/types.js +0 -7
- package/agnostic/misc/crossenv/window/index.d.ts +0 -28
- package/agnostic/misc/crossenv/window/index.js +0 -13
- package/agnostic/misc/crossenv/window/index.test.d.ts +0 -1
- package/agnostic/misc/data-size/index.d.ts +0 -87
- package/agnostic/misc/data-size/index.js +0 -297
- package/agnostic/misc/data-size/index.test.d.ts +0 -1
- package/agnostic/misc/data-size/types.d.ts +0 -37
- package/agnostic/misc/elo/index.d.ts +0 -29
- package/agnostic/misc/elo/index.js +0 -31
- package/agnostic/misc/is-constructor-function/index.d.ts +0 -13
- package/agnostic/misc/is-constructor-function/index.js +0 -7
- package/agnostic/misc/is-constructor-function/index.test.d.ts +0 -1
- package/agnostic/misc/is-nullish/index.d.ts +0 -26
- package/agnostic/misc/is-nullish/index.js +0 -11
- package/agnostic/misc/is-nullish/index.test.d.ts +0 -1
- package/agnostic/misc/logs/logger/index.d.ts +0 -45
- package/agnostic/misc/logs/logger/index.js +0 -112
- package/agnostic/misc/logs/make-text-block/index.d.ts +0 -1
- package/agnostic/misc/logs/make-text-block/index.js +0 -7
- package/agnostic/misc/logs/styles/index.d.ts +0 -11
- package/agnostic/misc/logs/styles/index.js +0 -8
- package/agnostic/misc/lorem-ipsum/index.d.ts +0 -3
- package/agnostic/misc/lorem-ipsum/index.js +0 -190
- package/agnostic/misc/lorem-ipsum/index.test.d.ts +0 -1
- package/agnostic/misc/normalize-extension/index.d.ts +0 -11
- package/agnostic/misc/normalize-extension/index.js +0 -92
- package/agnostic/misc/normalize-extension/index.test.d.ts +0 -1
- package/agnostic/misc/outcome/index.d.ts +0 -56
- package/agnostic/misc/outcome/index.js +0 -11
- package/agnostic/misc/outcome/index.test.d.ts +0 -1
- package/agnostic/numbers/absolute-modulo/index.d.ts +0 -8
- package/agnostic/numbers/absolute-modulo/index.js +0 -7
- package/agnostic/numbers/absolute-modulo/index.test.d.ts +0 -1
- package/agnostic/numbers/approximate-rational/index.d.ts +0 -22
- package/agnostic/numbers/approximate-rational/index.js +0 -72
- package/agnostic/numbers/approximate-rational/index.test.d.ts +0 -1
- package/agnostic/numbers/clamp/index.d.ts +0 -9
- package/agnostic/numbers/clamp/index.js +0 -7
- package/agnostic/numbers/clamp/index.test.d.ts +0 -1
- package/agnostic/numbers/interpolate/index.d.ts +0 -21
- package/agnostic/numbers/interpolate/index.js +0 -14
- package/agnostic/numbers/interpolate/index.test.d.ts +0 -1
- package/agnostic/numbers/responsive-harmonics/index.d.ts +0 -30
- package/agnostic/numbers/responsive-harmonics/index.js +0 -54
- package/agnostic/numbers/round/index.d.ts +0 -24
- package/agnostic/numbers/round/index.js +0 -11
- package/agnostic/numbers/round/index.test.d.ts +0 -1
- package/agnostic/objects/deep-get-property/index.d.ts +0 -9
- package/agnostic/objects/deep-get-property/index.js +0 -27
- package/agnostic/objects/enums/is-in-enum/index.d.ts +0 -11
- package/agnostic/objects/enums/is-in-enum/index.js +0 -7
- package/agnostic/objects/flatten-getters/index.d.ts +0 -7
- package/agnostic/objects/flatten-getters/index.js +0 -25
- package/agnostic/objects/is-object/index.d.ts +0 -14
- package/agnostic/objects/is-object/index.js +0 -9
- package/agnostic/objects/is-record/index.d.ts +0 -7
- package/agnostic/objects/is-record/index.js +0 -7
- package/agnostic/objects/record-format/index.d.ts +0 -38
- package/agnostic/objects/record-format/index.js +0 -18
- package/agnostic/objects/record-map/index.d.ts +0 -12
- package/agnostic/objects/record-map/index.js +0 -7
- package/agnostic/objects/validation/index.d.ts +0 -11
- package/agnostic/objects/validation/index.js +0 -11
- package/agnostic/optim/memoize/index.d.ts +0 -12
- package/agnostic/optim/memoize/index.js +0 -19
- package/agnostic/optim/throttle-debounce/index.d.ts +0 -30
- package/agnostic/optim/throttle-debounce/index.js +0 -114
- package/agnostic/optim/throttle-debounce/types.d.ts +0 -2
- package/agnostic/random/hex-char/index.d.ts +0 -4
- package/agnostic/random/hex-char/index.js +0 -9
- package/agnostic/random/random/index.d.ts +0 -17
- package/agnostic/random/random/index.js +0 -9
- package/agnostic/random/uuid/index.d.ts +0 -21
- package/agnostic/random/uuid/index.js +0 -12
- package/agnostic/regexps/index.d.ts +0 -95
- package/agnostic/regexps/index.js +0 -88
- package/agnostic/sanitization/file-name/index.d.ts +0 -13
- package/agnostic/sanitization/file-name/index.js +0 -7
- package/agnostic/sanitization/html/index.d.ts +0 -61
- package/agnostic/sanitization/html/index.js +0 -121
- package/agnostic/sanitization/path/index.d.ts +0 -11
- package/agnostic/sanitization/path/index.js +0 -14
- package/agnostic/sanitization/types.d.ts +0 -37
- package/agnostic/sanitization/types.js +0 -0
- package/agnostic/sanitization/user-input/index.d.ts +0 -13
- package/agnostic/sanitization/user-input/index.js +0 -23
- package/agnostic/strings/char-codes/index.d.ts +0 -82
- package/agnostic/strings/char-codes/index.js +0 -70
- package/agnostic/strings/matches/index.d.ts +0 -28
- package/agnostic/strings/matches/index.js +0 -11
- package/agnostic/strings/normalize-indent/index.d.ts +0 -23
- package/agnostic/strings/normalize-indent/index.js +0 -19
- package/agnostic/strings/parse-table/index.d.ts +0 -145
- package/agnostic/strings/parse-table/index.js +0 -87
- package/agnostic/strings/replace-all/index.d.ts +0 -21
- package/agnostic/strings/replace-all/index.js +0 -7
- package/agnostic/strings/to-alphanum/index.d.ts +0 -19
- package/agnostic/strings/to-alphanum/index.js +0 -11
- package/agnostic/strings/trim/index.d.ts +0 -20
- package/agnostic/strings/trim/index.js +0 -9
- package/agnostic/time/dates/format-date/index.d.ts +0 -48
- package/agnostic/time/dates/format-date/index.js +0 -61
- package/agnostic/time/duration/index.d.ts +0 -39
- package/agnostic/time/duration/index.js +0 -112
- package/agnostic/time/timeout/index.d.ts +0 -9
- package/agnostic/time/timeout/index.js +0 -19
- package/agnostic/time/transitions/index.d.ts +0 -74
- package/agnostic/time/transitions/index.js +0 -161
- package/agnostic/time/wait/index.d.ts +0 -7
- package/agnostic/time/wait/index.js +0 -7
- package/agnostic/typescript/types.d.ts +0 -37
- package/agnostic/typescript/types.js +0 -0
- package/chunks/chunk-2WSVYQ5Q.js +0 -77
- package/chunks/chunk-33SNWUIB.js +0 -103
- package/chunks/chunk-3MPXVP4L.js +0 -25
- package/chunks/chunk-4CIS3R7T.js +0 -10
- package/chunks/chunk-4WE2WEXL.js +0 -12
- package/chunks/chunk-54KPQCVI.js +0 -25
- package/chunks/chunk-5CFQCSKJ.js +0 -23
- package/chunks/chunk-5NTPCRFH.js +0 -32
- package/chunks/chunk-5O52VUI6.js +0 -31
- package/chunks/chunk-5X76KDYN.js +0 -60
- package/chunks/chunk-65BFQP3T.js +0 -25
- package/chunks/chunk-66BURDRK.js +0 -29
- package/chunks/chunk-6BGIDRU5.js +0 -36
- package/chunks/chunk-6XL25OZX.js +0 -12
- package/chunks/chunk-6YVXSCRH.js +0 -37
- package/chunks/chunk-75BICI4L.js +0 -20
- package/chunks/chunk-7B2E2NGH.js +0 -40
- package/chunks/chunk-AKNR3U25.js +0 -20
- package/chunks/chunk-AOEOW5XW.js +0 -40
- package/chunks/chunk-AOR2M2H3.js +0 -34
- package/chunks/chunk-ASNS7K6J.js +0 -34
- package/chunks/chunk-ASWI3EO6.js +0 -25
- package/chunks/chunk-AV373PHY.js +0 -56
- package/chunks/chunk-AXMAF3J2.js +0 -38
- package/chunks/chunk-AYGAQQXD.js +0 -27
- package/chunks/chunk-BHGRXDTS.js +0 -28
- package/chunks/chunk-BQABPH3I.js +0 -31
- package/chunks/chunk-BQXTV2GG.js +0 -36
- package/chunks/chunk-BXFRBV67.js +0 -28
- package/chunks/chunk-D3ERTRDW.js +0 -17
- package/chunks/chunk-DBNCEHTT.js +0 -22
- package/chunks/chunk-DBZAJJUF.js +0 -39
- package/chunks/chunk-DNIOWD7K.js +0 -8
- package/chunks/chunk-DUCLFPGE.js +0 -78
- package/chunks/chunk-E6MSDKON.js +0 -13
- package/chunks/chunk-EBQRPRRC.js +0 -22
- package/chunks/chunk-EEPLTO3E.js +0 -31
- package/chunks/chunk-EPUHVR7J.js +0 -17
- package/chunks/chunk-FENXVJYO.js +0 -11
- package/chunks/chunk-FH74QWR6.js +0 -47
- package/chunks/chunk-FM3HGCFL.js +0 -56
- package/chunks/chunk-FSI422YG.js +0 -31
- package/chunks/chunk-H4PP6AHP.js +0 -15
- package/chunks/chunk-HC6ZOHCS.js +0 -14
- package/chunks/chunk-HEY7J6GI.js +0 -37
- package/chunks/chunk-HQLRJ7XW.js +0 -12
- package/chunks/chunk-HYPEWMYZ.js +0 -10
- package/chunks/chunk-IBQQCUYV.js +0 -36
- package/chunks/chunk-IK2S6ZYP.js +0 -29
- package/chunks/chunk-ISJONMNA.js +0 -16
- package/chunks/chunk-J5D4OQ5U.js +0 -27
- package/chunks/chunk-JDINERKY.js +0 -107
- package/chunks/chunk-JFXEMK66.js +0 -33
- package/chunks/chunk-JN2UETL4.js +0 -32
- package/chunks/chunk-JU23NBY2.js +0 -22
- package/chunks/chunk-JVMFT3IT.js +0 -134
- package/chunks/chunk-K5UF634H.js +0 -25
- package/chunks/chunk-KRYJVBO5.js +0 -155
- package/chunks/chunk-L3OCRR3V.js +0 -25
- package/chunks/chunk-LFHDJTZJ.js +0 -12552
- package/chunks/chunk-LU47ASMQ.js +0 -633
- package/chunks/chunk-MHNUCHPP.js +0 -26
- package/chunks/chunk-NEMHJSNM.js +0 -24
- package/chunks/chunk-NIIAUOBO.js +0 -36
- package/chunks/chunk-NR7STUY3.js +0 -28
- package/chunks/chunk-O66PEU62.js +0 -27
- package/chunks/chunk-O7UCJNVF.js +0 -38
- package/chunks/chunk-OF2W4ZRG.js +0 -53
- package/chunks/chunk-OGBUSUE6.js +0 -12
- package/chunks/chunk-OSAXBA7G.js +0 -10
- package/chunks/chunk-P6K7NPUZ.js +0 -47
- package/chunks/chunk-PC62QFWI.js +0 -60
- package/chunks/chunk-PTJO2TGI.js +0 -23
- package/chunks/chunk-PTN2V757.js +0 -35
- package/chunks/chunk-QEKI6WGQ.js +0 -27
- package/chunks/chunk-QHEWBOQI.js +0 -19
- package/chunks/chunk-QQO4QKH2.js +0 -2684
- package/chunks/chunk-QWBT7W6I.js +0 -26
- package/chunks/chunk-QXAJXTXV.js +0 -19
- package/chunks/chunk-R3AWQXMY.js +0 -20
- package/chunks/chunk-RCO57B6F.js +0 -9
- package/chunks/chunk-RGQNRTBI.js +0 -55
- package/chunks/chunk-RJK53Q5I.js +0 -39
- package/chunks/chunk-ROWPCMQY.js +0 -29
- package/chunks/chunk-RW7VAKJW.js +0 -15
- package/chunks/chunk-S2I77NEE.js +0 -35
- package/chunks/chunk-S6ZFFGWH.js +0 -34
- package/chunks/chunk-SBBIQ5UH.js +0 -36
- package/chunks/chunk-THWQ7NVE.js +0 -48
- package/chunks/chunk-UL4SNGRK.js +0 -207
- package/chunks/chunk-ULYGDEW2.js +0 -25
- package/chunks/chunk-USIYKRNX.js +0 -20
- package/chunks/chunk-UZ4SWSOZ.js +0 -41
- package/chunks/chunk-VU6JYR3W.js +0 -64
- package/chunks/chunk-VYDUHDXW.js +0 -35
- package/chunks/chunk-W5A2TON3.js +0 -10
- package/chunks/chunk-W5VY535B.js +0 -37
- package/chunks/chunk-WNDMYNDU.js +0 -8
- package/chunks/chunk-XA4HVHJ4.js +0 -18
- package/chunks/chunk-XCBH6NLF.js +0 -42
- package/chunks/chunk-XEQ2PBT2.js +0 -20
- package/chunks/chunk-XIIJYVJZ.js +0 -15
- package/chunks/chunk-XNF5MLCQ.js +0 -14
- package/chunks/chunk-Y6FD4ASO.js +0 -32
- package/chunks/chunk-YA2YCZUF.js +0 -8
- package/chunks/chunk-YDIBNEGA.js +0 -9
- package/chunks/chunk-YOP6WVCF.js +0 -45
- package/chunks/chunk-YWSXCFYY.js +0 -61
- package/chunks/chunk-ZKIQ753F.js +0 -23
- package/chunks/chunk-ZTPRFEPV.js +0 -32
- package/node/@aws-s3/storage/directory/copy-dir/index.d.ts +0 -27
- package/node/@aws-s3/storage/directory/copy-dir/index.js +0 -9
- package/node/@aws-s3/storage/directory/list/index.d.ts +0 -17
- package/node/@aws-s3/storage/directory/list/index.js +0 -9
- package/node/@aws-s3/storage/directory/move-dir/index.d.ts +0 -33
- package/node/@aws-s3/storage/directory/move-dir/index.js +0 -9
- package/node/@aws-s3/storage/directory/remove-dir/index.d.ts +0 -31
- package/node/@aws-s3/storage/directory/remove-dir/index.js +0 -9
- package/node/@aws-s3/storage/file/copy/index.d.ts +0 -30
- package/node/@aws-s3/storage/file/copy/index.js +0 -9
- package/node/@aws-s3/storage/file/download/index.d.ts +0 -22
- package/node/@aws-s3/storage/file/download/index.js +0 -9
- package/node/@aws-s3/storage/file/exists/index.d.ts +0 -23
- package/node/@aws-s3/storage/file/exists/index.js +0 -9
- package/node/@aws-s3/storage/file/move/index.d.ts +0 -33
- package/node/@aws-s3/storage/file/move/index.js +0 -9
- package/node/@aws-s3/storage/file/remove/index.d.ts +0 -17
- package/node/@aws-s3/storage/file/remove/index.js +0 -9
- package/node/@aws-s3/storage/file/stat/index.d.ts +0 -24
- package/node/@aws-s3/storage/file/stat/index.js +0 -9
- package/node/@aws-s3/storage/file/upload/index.d.ts +0 -22
- package/node/@aws-s3/storage/file/upload/index.js +0 -9
- package/node/@express/@multer/index.d.ts +0 -56
- package/node/@express/@multer/index.js +0 -47
- package/node/@google-cloud/storage/bucket/get-metadata/index.d.ts +0 -18
- package/node/@google-cloud/storage/bucket/get-metadata/index.js +0 -22
- package/node/@google-cloud/storage/directory/copy-dir/index.d.ts +0 -22
- package/node/@google-cloud/storage/directory/copy-dir/index.js +0 -9
- package/node/@google-cloud/storage/directory/list/index.d.ts +0 -17
- package/node/@google-cloud/storage/directory/list/index.js +0 -9
- package/node/@google-cloud/storage/directory/move-dir/index.d.ts +0 -31
- package/node/@google-cloud/storage/directory/move-dir/index.js +0 -9
- package/node/@google-cloud/storage/directory/remove-dir/index.d.ts +0 -31
- package/node/@google-cloud/storage/directory/remove-dir/index.js +0 -9
- package/node/@google-cloud/storage/file/copy/index.d.ts +0 -32
- package/node/@google-cloud/storage/file/copy/index.js +0 -9
- package/node/@google-cloud/storage/file/download/index.d.ts +0 -21
- package/node/@google-cloud/storage/file/download/index.js +0 -9
- package/node/@google-cloud/storage/file/exists/index.d.ts +0 -19
- package/node/@google-cloud/storage/file/exists/index.js +0 -9
- package/node/@google-cloud/storage/file/generate-signed-url/index.d.ts +0 -23
- package/node/@google-cloud/storage/file/generate-signed-url/index.js +0 -28
- package/node/@google-cloud/storage/file/get-metadata/index.d.ts +0 -22
- package/node/@google-cloud/storage/file/get-metadata/index.js +0 -24
- package/node/@google-cloud/storage/file/get-permissions/index.d.ts +0 -19
- package/node/@google-cloud/storage/file/get-permissions/index.js +0 -24
- package/node/@google-cloud/storage/file/move/index.d.ts +0 -36
- package/node/@google-cloud/storage/file/move/index.js +0 -9
- package/node/@google-cloud/storage/file/remove/index.d.ts +0 -24
- package/node/@google-cloud/storage/file/remove/index.js +0 -9
- package/node/@google-cloud/storage/file/revoke-signed-urls/index.d.ts +0 -26
- package/node/@google-cloud/storage/file/revoke-signed-urls/index.js +0 -30
- package/node/@google-cloud/storage/file/stat/index.d.ts +0 -25
- package/node/@google-cloud/storage/file/stat/index.js +0 -9
- package/node/@google-cloud/storage/file/update-metadata/index.d.ts +0 -24
- package/node/@google-cloud/storage/file/update-metadata/index.js +0 -24
- package/node/@google-cloud/storage/file/upload/index.d.ts +0 -24
- package/node/@google-cloud/storage/file/upload/index.js +0 -9
- package/node/cloud-storage/clients/index.d.ts +0 -40
- package/node/cloud-storage/clients/index.js +0 -13
- package/node/cloud-storage/operations/copy-dir/index.d.ts +0 -60
- package/node/cloud-storage/operations/copy-dir/index.js +0 -35
- package/node/cloud-storage/operations/copy-file/index.d.ts +0 -60
- package/node/cloud-storage/operations/copy-file/index.js +0 -35
- package/node/cloud-storage/operations/download-file/index.d.ts +0 -65
- package/node/cloud-storage/operations/download-file/index.js +0 -35
- package/node/cloud-storage/operations/exists-file/index.d.ts +0 -56
- package/node/cloud-storage/operations/exists-file/index.js +0 -35
- package/node/cloud-storage/operations/list-dir/index.d.ts +0 -52
- package/node/cloud-storage/operations/list-dir/index.js +0 -35
- package/node/cloud-storage/operations/move-dir/index.d.ts +0 -60
- package/node/cloud-storage/operations/move-dir/index.js +0 -35
- package/node/cloud-storage/operations/move-file/index.d.ts +0 -60
- package/node/cloud-storage/operations/move-file/index.js +0 -35
- package/node/cloud-storage/operations/remove-dir/index.d.ts +0 -56
- package/node/cloud-storage/operations/remove-dir/index.js +0 -35
- package/node/cloud-storage/operations/remove-file/index.d.ts +0 -56
- package/node/cloud-storage/operations/remove-file/index.js +0 -35
- package/node/cloud-storage/operations/stat-file/index.d.ts +0 -54
- package/node/cloud-storage/operations/stat-file/index.js +0 -35
- package/node/cloud-storage/operations/upload-file/index.d.ts +0 -61
- package/node/cloud-storage/operations/upload-file/index.js +0 -35
- package/node/encryption/@aes-256-gcm/buffer/index.d.ts +0 -20
- package/node/encryption/@aes-256-gcm/buffer/index.js +0 -28
- package/node/encryption/@aes-256-gcm/uint8-array/index.d.ts +0 -21
- package/node/encryption/@aes-256-gcm/uint8-array/index.js +0 -11
- package/node/encryption/key/index.d.ts +0 -16
- package/node/encryption/key/index.js +0 -15
- package/node/files/is-in-directory/index.d.ts +0 -8
- package/node/files/is-in-directory/index.js +0 -11
- package/node/files/read-write/index.d.ts +0 -53
- package/node/files/read-write/index.js +0 -18
- package/node/files/subpaths/index.d.ts +0 -63
- package/node/files/subpaths/index.js +0 -122
- package/node/ftps/directory/copy-dir/index.d.ts +0 -28
- package/node/ftps/directory/copy-dir/index.js +0 -9
- package/node/ftps/directory/list/index.d.ts +0 -12
- package/node/ftps/directory/list/index.js +0 -9
- package/node/ftps/directory/move-dir/index.d.ts +0 -26
- package/node/ftps/directory/move-dir/index.js +0 -9
- package/node/ftps/directory/remove-dir/index.d.ts +0 -25
- package/node/ftps/directory/remove-dir/index.js +0 -9
- package/node/ftps/file/copy/index.d.ts +0 -28
- package/node/ftps/file/copy/index.js +0 -9
- package/node/ftps/file/download/index.d.ts +0 -22
- package/node/ftps/file/download/index.js +0 -9
- package/node/ftps/file/exists/index.d.ts +0 -21
- package/node/ftps/file/exists/index.js +0 -9
- package/node/ftps/file/move/index.d.ts +0 -38
- package/node/ftps/file/move/index.js +0 -9
- package/node/ftps/file/remove/index.d.ts +0 -20
- package/node/ftps/file/remove/index.js +0 -9
- package/node/ftps/file/stat/index.d.ts +0 -17
- package/node/ftps/file/stat/index.js +0 -9
- package/node/ftps/file/upload/index.d.ts +0 -24
- package/node/ftps/file/upload/index.js +0 -9
- package/node/images/create/index.d.ts +0 -9
- package/node/images/create/index.js +0 -19
- package/node/images/format/index.d.ts +0 -62
- package/node/images/format/index.js +0 -269
- package/node/images/metadata/index.d.ts +0 -9
- package/node/images/metadata/index.js +0 -19
- package/node/images/transform/index.d.ts +0 -27
- package/node/images/transform/index.js +0 -205
- package/node/images/transform/operations/blur/index.d.ts +0 -5
- package/node/images/transform/operations/blur/index.js +0 -11
- package/node/images/transform/operations/brighten/index.d.ts +0 -5
- package/node/images/transform/operations/brighten/index.js +0 -11
- package/node/images/transform/operations/extend/index.d.ts +0 -5
- package/node/images/transform/operations/extend/index.js +0 -18
- package/node/images/transform/operations/extract/index.d.ts +0 -5
- package/node/images/transform/operations/extract/index.js +0 -11
- package/node/images/transform/operations/flatten/index.d.ts +0 -5
- package/node/images/transform/operations/flatten/index.js +0 -18
- package/node/images/transform/operations/flip/index.d.ts +0 -2
- package/node/images/transform/operations/flip/index.js +0 -7
- package/node/images/transform/operations/flop/index.d.ts +0 -2
- package/node/images/transform/operations/flop/index.js +0 -7
- package/node/images/transform/operations/hue/index.d.ts +0 -5
- package/node/images/transform/operations/hue/index.js +0 -11
- package/node/images/transform/operations/level/index.d.ts +0 -5
- package/node/images/transform/operations/level/index.js +0 -11
- package/node/images/transform/operations/lighten/index.d.ts +0 -5
- package/node/images/transform/operations/lighten/index.js +0 -11
- package/node/images/transform/operations/normalize/index.d.ts +0 -5
- package/node/images/transform/operations/normalize/index.js +0 -11
- package/node/images/transform/operations/overlay/index.d.ts +0 -5
- package/node/images/transform/operations/overlay/index.js +0 -18
- package/node/images/transform/operations/resize/index.d.ts +0 -5
- package/node/images/transform/operations/resize/index.js +0 -18
- package/node/images/transform/operations/rotate/index.d.ts +0 -5
- package/node/images/transform/operations/rotate/index.js +0 -18
- package/node/images/transform/operations/saturate/index.d.ts +0 -5
- package/node/images/transform/operations/saturate/index.js +0 -11
- package/node/images/types.d.ts +0 -387
- package/node/images/types.js +0 -9
- package/node/images/utils/index.d.ts +0 -27
- package/node/images/utils/index.js +0 -19
- package/node/process/on-exit/index.d.ts +0 -28
- package/node/process/on-exit/index.js +0 -32
- package/node/process/prompt-continue/index.d.ts +0 -18
- package/node/process/prompt-continue/index.js +0 -1680
- package/node/process/spawner/index.d.ts +0 -18
- package/node/process/spawner/index.js +0 -83
- package/node/sftp/directory/copy-dir/index.d.ts +0 -28
- package/node/sftp/directory/copy-dir/index.js +0 -9
- package/node/sftp/directory/list/index.d.ts +0 -12
- package/node/sftp/directory/list/index.js +0 -9
- package/node/sftp/directory/move-dir/index.d.ts +0 -26
- package/node/sftp/directory/move-dir/index.js +0 -9
- package/node/sftp/directory/remove-dir/index.d.ts +0 -25
- package/node/sftp/directory/remove-dir/index.js +0 -9
- package/node/sftp/file/copy/index.d.ts +0 -28
- package/node/sftp/file/copy/index.js +0 -9
- package/node/sftp/file/download/index.d.ts +0 -20
- package/node/sftp/file/download/index.js +0 -9
- package/node/sftp/file/exists/index.d.ts +0 -21
- package/node/sftp/file/exists/index.js +0 -9
- package/node/sftp/file/move/index.d.ts +0 -38
- package/node/sftp/file/move/index.js +0 -9
- package/node/sftp/file/remove/index.d.ts +0 -20
- package/node/sftp/file/remove/index.js +0 -9
- package/node/sftp/file/stat/index.d.ts +0 -18
- package/node/sftp/file/stat/index.js +0 -9
- package/node/sftp/file/upload/index.d.ts +0 -24
- package/node/sftp/file/upload/index.js +0 -9
- /package/agnostic/{arrays/dedupe → scrapers/@meteociel}/index.test.d.ts +0 -0
- /package/agnostic/{misc/data-size → scrapers/@meteociel}/types.js +0 -0
- /package/agnostic/{optim/throttle-debounce → weather}/types.js +0 -0
- /package/node/{@design-edito/index.d.ts → index.d.ts} +0 -0
- /package/node/{@design-edito/index.js → index.js} +0 -0
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { type CityName } from './locations/index.js';
|
|
2
|
+
import type { WeatherForecast } from '../../weather/types.js';
|
|
3
|
+
import type { ForecastMode } from './types.js';
|
|
4
|
+
/**
|
|
5
|
+
* Builds the Meteociel forecast page URL for a given city and forecast mode.
|
|
6
|
+
*
|
|
7
|
+
* @param cityName - The city identifier used to resolve Meteociel location data.
|
|
8
|
+
* @param mode - The forecast mode to use when building the URL.
|
|
9
|
+
* @returns The fully qualified Meteociel URL for the requested city and mode.
|
|
10
|
+
* @throws If the provided forecast mode is not supported.
|
|
11
|
+
*/
|
|
12
|
+
export declare function getCityAndModeUrl(cityName: CityName, mode: ForecastMode): string;
|
|
13
|
+
/**
|
|
14
|
+
* Fetches a remote HTML page and decodes it using ISO-8859-1 encoding.
|
|
15
|
+
*
|
|
16
|
+
* @param url - The URL of the page to fetch.
|
|
17
|
+
* @returns The decoded HTML content of the fetched page.
|
|
18
|
+
*/
|
|
19
|
+
export declare function fetchPage(url: string): Promise<string>;
|
|
20
|
+
/**
|
|
21
|
+
* Retrieves and scrapes weather forecast data for a given city and forecast mode.
|
|
22
|
+
*
|
|
23
|
+
* @param cityName - The city for which to retrieve weather forecasts.
|
|
24
|
+
* @param mode - The forecast mode determining the scraping strategy.
|
|
25
|
+
* @returns An array of weather forecasts enriched with city location metadata.
|
|
26
|
+
* @throws If the forecast mode is unknown or unsupported.
|
|
27
|
+
*/
|
|
28
|
+
export declare function scrap(cityName: CityName, mode: ForecastMode): Promise<WeatherForecast[]>;
|
|
29
|
+
/**
|
|
30
|
+
* Scrapes 3-day GFS weather simple forecasts from a Meteociel HTML page.
|
|
31
|
+
*
|
|
32
|
+
* @param pageContent - The raw HTML content of the Meteociel forecast page.
|
|
33
|
+
* @returns An array of weather forecasts parsed from the page content.
|
|
34
|
+
* @throws If required data such as issue time or geolocation cannot be extracted.
|
|
35
|
+
*/
|
|
36
|
+
export declare function scrapSimpleGfsPrevisions(pageContent: string): WeatherForecast[];
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
import {
|
|
2
|
+
citiesData
|
|
3
|
+
} from "../../../chunks/chunk-JQLUR5LO.js";
|
|
4
|
+
|
|
5
|
+
// src/agnostic/scrapers/@meteociel/index.ts
|
|
6
|
+
import { JSDOM } from "jsdom";
|
|
7
|
+
function getCityAndModeUrl(cityName, mode) {
|
|
8
|
+
const modeUrlChunk = mode === "simple-gfs" ? "previsions" : null;
|
|
9
|
+
if (modeUrlChunk === null) throw "invalid mode";
|
|
10
|
+
return `https://www.meteociel.fr/${modeUrlChunk}/${citiesData[cityName].id}/${citiesData[cityName].urlSuffix}.htm`;
|
|
11
|
+
}
|
|
12
|
+
async function fetchPage(url) {
|
|
13
|
+
const fetched = await fetch(url);
|
|
14
|
+
const buffer = await fetched.arrayBuffer();
|
|
15
|
+
const html = new TextDecoder("iso-8859-1").decode(buffer);
|
|
16
|
+
return html;
|
|
17
|
+
}
|
|
18
|
+
async function scrap(cityName, mode) {
|
|
19
|
+
const url = getCityAndModeUrl(cityName, mode);
|
|
20
|
+
const fetched = await fetchPage(url);
|
|
21
|
+
switch (mode) {
|
|
22
|
+
case "simple-gfs": {
|
|
23
|
+
const scraped = scrapSimpleGfsPrevisions(fetched);
|
|
24
|
+
return scraped.map((i) => ({
|
|
25
|
+
...i,
|
|
26
|
+
location: {
|
|
27
|
+
...i.location,
|
|
28
|
+
name: cityName
|
|
29
|
+
}
|
|
30
|
+
}));
|
|
31
|
+
}
|
|
32
|
+
default:
|
|
33
|
+
throw "unknown-mode";
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
function scrapSimpleGfsPrevisions(pageContent) {
|
|
37
|
+
const dom = new JSDOM(pageContent);
|
|
38
|
+
const { document } = dom.window;
|
|
39
|
+
const COLLECTED_ON = /* @__PURE__ */ new Date();
|
|
40
|
+
const h3Parent = Array.from(document.querySelectorAll("h3")).find((n) => n.textContent.includes("Pr\xE9visions m\xE9t\xE9o \xE0 3 jours"))?.parentElement;
|
|
41
|
+
const issueTimeNode = Array.from(h3Parent?.childNodes ?? []).find((n) => n.textContent?.includes("R\xE9actualis\xE9 \xE0"));
|
|
42
|
+
const dataTableNode = Array.from(document.querySelectorAll("tbody")).find((n) => {
|
|
43
|
+
const trChldCnt = n.querySelectorAll("tr").length;
|
|
44
|
+
return trChldCnt > 25 && trChldCnt < 35;
|
|
45
|
+
});
|
|
46
|
+
const forecastTableRows = Array.from(dataTableNode?.querySelectorAll("tr") ?? []).slice(2);
|
|
47
|
+
const locationNode = Array.from(
|
|
48
|
+
Array.from(document.querySelectorAll("p")).find((n) => n.textContent.includes("sont exp\xE9rimentales et d\xE9termin\xE9es \xE0 partir des donn\xE9es brutes de GFS, un mod\xE8le num\xE9rique am\xE9ricain"))?.childNodes ?? []
|
|
49
|
+
).find((n) => n.textContent?.startsWith("Localisation de"));
|
|
50
|
+
const issuedOnRaw = issueTimeNode?.textContent?.match(/\b([0-9]{1,2}):([0-5][0-9])\b/)?.[0];
|
|
51
|
+
if (issuedOnRaw === void 0) throw "no-refresh-time-found";
|
|
52
|
+
const [issuedOnH, issuedOnM] = issuedOnRaw.split(":");
|
|
53
|
+
const issuedOnYesteredayMaybe = /* @__PURE__ */ new Date();
|
|
54
|
+
issuedOnYesteredayMaybe.setDate((/* @__PURE__ */ new Date()).getDate() - 1);
|
|
55
|
+
issuedOnYesteredayMaybe.setHours(parseInt(issuedOnH));
|
|
56
|
+
issuedOnYesteredayMaybe.setMinutes(parseInt(issuedOnM));
|
|
57
|
+
issuedOnYesteredayMaybe.setSeconds(0);
|
|
58
|
+
issuedOnYesteredayMaybe.setMilliseconds(0);
|
|
59
|
+
const issuedOnYesteredayMaybeNowDiff = Math.abs((/* @__PURE__ */ new Date()).getTime() - issuedOnYesteredayMaybe.getTime());
|
|
60
|
+
const issuedOnTodayMaybe = /* @__PURE__ */ new Date();
|
|
61
|
+
issuedOnTodayMaybe.setHours(parseInt(issuedOnH));
|
|
62
|
+
issuedOnTodayMaybe.setMinutes(parseInt(issuedOnM));
|
|
63
|
+
issuedOnTodayMaybe.setSeconds(0);
|
|
64
|
+
issuedOnTodayMaybe.setMilliseconds(0);
|
|
65
|
+
const issuedOnTodayMaybeNowDiff = Math.abs((/* @__PURE__ */ new Date()).getTime() - issuedOnTodayMaybe.getTime());
|
|
66
|
+
const ISSUED_ON = issuedOnYesteredayMaybeNowDiff > issuedOnTodayMaybeNowDiff ? issuedOnTodayMaybe : issuedOnYesteredayMaybe;
|
|
67
|
+
function parseLocation(input) {
|
|
68
|
+
const regex = /Latitude\s+([NS])\s+(\d+)°(\d+)'\s+\/\s+Longitude\s+([EW])\s+(\d+)°(\d+)'\s+\/\s+Altitude\s*:\s*(\d+)\s*m/;
|
|
69
|
+
const match = input.match(regex);
|
|
70
|
+
if (!match) throw new Error("Format de coordonn\xE9es invalide");
|
|
71
|
+
const [, latDir, latDeg, latMin, lonDir, lonDeg, lonMin, altStr] = match;
|
|
72
|
+
let lat = Number(latDeg) + Number(latMin) / 60;
|
|
73
|
+
let lon = Number(lonDeg) + Number(lonMin) / 60;
|
|
74
|
+
if (latDir === "S") lat = -1 * lat;
|
|
75
|
+
if (lonDir === "W") lon = -1 * lon;
|
|
76
|
+
const alt = Number(altStr);
|
|
77
|
+
return {
|
|
78
|
+
latitudeDeg: lat,
|
|
79
|
+
longitudeDeg: lon,
|
|
80
|
+
elevationM: alt
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
let LOCATION;
|
|
84
|
+
try {
|
|
85
|
+
LOCATION = parseLocation(locationNode?.textContent ?? "");
|
|
86
|
+
} catch (err) {
|
|
87
|
+
throw "no-geolocation-found";
|
|
88
|
+
}
|
|
89
|
+
let currentDateLabel = null;
|
|
90
|
+
const currentHour = /* @__PURE__ */ new Date();
|
|
91
|
+
currentHour.setMinutes(0);
|
|
92
|
+
currentHour.setSeconds(0);
|
|
93
|
+
currentHour.setMilliseconds(0);
|
|
94
|
+
let RETURNED = [];
|
|
95
|
+
for (const row of forecastTableRows) {
|
|
96
|
+
const cells = Array.from(row.querySelectorAll("td"));
|
|
97
|
+
if (cells.length < 10 || cells.length > 11) continue;
|
|
98
|
+
let dateCell = void 0;
|
|
99
|
+
let otherCells = [];
|
|
100
|
+
if (cells.length === 11) {
|
|
101
|
+
dateCell = cells[0];
|
|
102
|
+
otherCells.push(...cells.slice(1));
|
|
103
|
+
} else {
|
|
104
|
+
otherCells.push(...cells);
|
|
105
|
+
}
|
|
106
|
+
if (dateCell !== void 0) {
|
|
107
|
+
currentDateLabel = dateCell.textContent;
|
|
108
|
+
}
|
|
109
|
+
const [
|
|
110
|
+
hourCell,
|
|
111
|
+
tempCell,
|
|
112
|
+
_emptyCell1,
|
|
113
|
+
windDirCell,
|
|
114
|
+
windSpeedCell,
|
|
115
|
+
gustSpeedCell,
|
|
116
|
+
rainAmountCell,
|
|
117
|
+
hygrometryCell,
|
|
118
|
+
airPressureCell,
|
|
119
|
+
weatherCell
|
|
120
|
+
] = otherCells;
|
|
121
|
+
const hour = hourCell?.textContent ?? null;
|
|
122
|
+
const temp = tempCell?.textContent ?? null;
|
|
123
|
+
const windDir = windDirCell?.querySelector("img")?.getAttribute("title") ?? null;
|
|
124
|
+
const [windDirName = null, windDirAngle = null] = windDir?.split(" : ") ?? [];
|
|
125
|
+
const windSpeed = windSpeedCell?.textContent ?? null;
|
|
126
|
+
const gustSpeed = gustSpeedCell?.textContent ?? null;
|
|
127
|
+
const rainAmount = rainAmountCell?.textContent === "--" ? null : rainAmountCell?.textContent ?? null;
|
|
128
|
+
const hygrometry = hygrometryCell?.textContent ?? null;
|
|
129
|
+
const airPressure = airPressureCell?.textContent ?? null;
|
|
130
|
+
const weather = weatherCell?.querySelector("img")?.getAttribute("title") ?? null;
|
|
131
|
+
const rawDay = currentDateLabel;
|
|
132
|
+
const foundDate = rawDay?.slice(3) ?? "0";
|
|
133
|
+
const pMonthFullDate = new Date(currentHour);
|
|
134
|
+
pMonthFullDate.setMonth(currentHour.getMonth() - 1);
|
|
135
|
+
pMonthFullDate.setDate(parseInt(foundDate));
|
|
136
|
+
pMonthFullDate.setHours(parseInt(hour ?? "00"));
|
|
137
|
+
const curMonthFullDate = new Date(currentHour);
|
|
138
|
+
curMonthFullDate.setDate(parseInt(foundDate));
|
|
139
|
+
curMonthFullDate.setHours(parseInt(hour ?? "00"));
|
|
140
|
+
const nMonthFullDate = new Date(currentHour);
|
|
141
|
+
nMonthFullDate.setMonth(currentHour.getMonth() + 1);
|
|
142
|
+
nMonthFullDate.setDate(parseInt(foundDate));
|
|
143
|
+
nMonthFullDate.setHours(parseInt(hour ?? "00"));
|
|
144
|
+
const eligibleDateTimesDiff = [
|
|
145
|
+
Math.abs(currentHour.getTime() - pMonthFullDate.getTime()),
|
|
146
|
+
Math.abs(currentHour.getTime() - curMonthFullDate.getTime()),
|
|
147
|
+
Math.abs(currentHour.getTime() - nMonthFullDate.getTime())
|
|
148
|
+
];
|
|
149
|
+
const minDateDiff = Math.min(...eligibleDateTimesDiff);
|
|
150
|
+
const indexOfMinDateDiff = eligibleDateTimesDiff.indexOf(minDateDiff);
|
|
151
|
+
const date = indexOfMinDateDiff === 0 ? pMonthFullDate : indexOfMinDateDiff === 1 ? curMonthFullDate : indexOfMinDateDiff === 2 ? nMonthFullDate : currentHour;
|
|
152
|
+
const validityTo = new Date(date);
|
|
153
|
+
validityTo.setHours(date.getHours() + 3);
|
|
154
|
+
const VALIDITY = {
|
|
155
|
+
from: date,
|
|
156
|
+
to: validityTo
|
|
157
|
+
};
|
|
158
|
+
const TEMPERATURE = { tempC: parseFloat(temp?.replace(" \xB0C", "") ?? "") };
|
|
159
|
+
const HUMIDITY = { relativePercent: parseFloat(hygrometry?.replace(" %", "") ?? "") };
|
|
160
|
+
const WIND = {
|
|
161
|
+
speedMs: parseFloat(windSpeed ?? ""),
|
|
162
|
+
directionDeg: parseFloat(windDirAngle?.replace(" \xB0", "") ?? ""),
|
|
163
|
+
gustMs: parseFloat(gustSpeed ?? "")
|
|
164
|
+
};
|
|
165
|
+
const PRESSURE = { stationLevelHpa: parseFloat(airPressure?.replace(" hPa", "") ?? "") };
|
|
166
|
+
const SOURCE = {
|
|
167
|
+
provider: "M\xE9t\xE9ociel",
|
|
168
|
+
type: "model",
|
|
169
|
+
model: "GFS"
|
|
170
|
+
};
|
|
171
|
+
RETURNED.push({
|
|
172
|
+
issuedOn: ISSUED_ON,
|
|
173
|
+
location: LOCATION,
|
|
174
|
+
validity: VALIDITY,
|
|
175
|
+
temperature: TEMPERATURE,
|
|
176
|
+
humidity: HUMIDITY,
|
|
177
|
+
wind: WIND,
|
|
178
|
+
pressure: PRESSURE,
|
|
179
|
+
precipitationMmh: parseFloat(rainAmount ?? ""),
|
|
180
|
+
metadata: {
|
|
181
|
+
source: SOURCE,
|
|
182
|
+
description: weather ?? "unknown",
|
|
183
|
+
collectedOn: COLLECTED_ON
|
|
184
|
+
}
|
|
185
|
+
});
|
|
186
|
+
}
|
|
187
|
+
return RETURNED;
|
|
188
|
+
}
|
|
189
|
+
export {
|
|
190
|
+
fetchPage,
|
|
191
|
+
getCityAndModeUrl,
|
|
192
|
+
scrap,
|
|
193
|
+
scrapSimpleGfsPrevisions
|
|
194
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type ForecastMode = 'simple-gfs';
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Core weather data types for archiving and exchanging meteorological information.
|
|
3
|
+
*
|
|
4
|
+
* The structures are inspired by WMO (World Meteorological Organization) guidance
|
|
5
|
+
* and CF Conventions. Units are encoded explicitly in property names to avoid
|
|
6
|
+
* ambiguity and to make transformations between systems easier and safer.
|
|
7
|
+
*/
|
|
8
|
+
/** Geographic location following the WGS84 reference system. */
|
|
9
|
+
export type GeoLocation = {
|
|
10
|
+
/** Latitude in decimal degrees (-90 to +90). */ latitudeDeg: number;
|
|
11
|
+
/** Longitude in decimal degrees (-180 to +180). */ longitudeDeg: number;
|
|
12
|
+
/** Elevation in meters above mean sea level. */ elevationM?: number;
|
|
13
|
+
/** Human-readable place name (city, station, etc.). */ name?: string;
|
|
14
|
+
/** Country code in ISO 3166-1 alpha-2 format (e.g. "FR", "US"). */ countryCode31661a2?: string;
|
|
15
|
+
/** Administrative region, state, or province name. */ region?: string;
|
|
16
|
+
};
|
|
17
|
+
/** Source of observed meteorological data. */
|
|
18
|
+
export type ObservationDataSource = {
|
|
19
|
+
/** Data provider name */ provider: string;
|
|
20
|
+
/** High-level type of source */ type: 'satellite' | 'radar' | 'station' | 'derived' | 'manual' | 'other';
|
|
21
|
+
/** Identifier of the observing station or sensor when applicable. */ stationId?: string;
|
|
22
|
+
/** URL pointing to the data source or documentation. */ url?: string;
|
|
23
|
+
/** Data license or usage terms (short free-text). */ license?: string;
|
|
24
|
+
};
|
|
25
|
+
/** Source of forecast data. Describes both deterministic and ensemble-based forecast systems. */
|
|
26
|
+
export type ForecastDataSource = {
|
|
27
|
+
/** Provider or operator name */ provider: string;
|
|
28
|
+
/** Type of forecast product. */ type: 'model' | 'ensemble' | 'derived' | 'other';
|
|
29
|
+
/** Model name or product identifier (e.g. "GFS", "AROME"). */ model?: string;
|
|
30
|
+
/** Model version, configuration, or cycle identifier. */ modelVersion?: string;
|
|
31
|
+
/** Model initialization date */ runTime?: Date;
|
|
32
|
+
/** Ensemble member identifier for probabilistic forecasts. */ ensembleMember?: string;
|
|
33
|
+
/** URL pointing to model documentation or the data endpoint. */ url?: string;
|
|
34
|
+
/** Data license or usage terms for the forecast. */ license?: string;
|
|
35
|
+
};
|
|
36
|
+
/** Temperature-related fields. */
|
|
37
|
+
export type Temperature = {
|
|
38
|
+
/** Air temperature in degrees Celsius. */ tempC: number;
|
|
39
|
+
/** Feels-like temperature in °C (wind chill or heat index depending on conditions). */ feelsLikeC?: number;
|
|
40
|
+
/** Dew point temperature in °C. */ dewPointC?: number;
|
|
41
|
+
/** Minimum temperature over the period in °C. */ minC?: number;
|
|
42
|
+
/** Maximum temperature over the period in °C. */ maxC?: number;
|
|
43
|
+
};
|
|
44
|
+
/** Humidity parameters. */
|
|
45
|
+
export type Humidity = {
|
|
46
|
+
/** Relative humidity in percent (0–100). */ relativePercent: number;
|
|
47
|
+
/** Absolute humidity in grams per cubic meter. */ absoluteGm3?: number;
|
|
48
|
+
};
|
|
49
|
+
/** Wind according to common WMO conventions. */
|
|
50
|
+
export type Wind = {
|
|
51
|
+
/** Mean wind speed in meters per second. */ speedMs: number;
|
|
52
|
+
/** Wind direction in degrees (0–360, where 0/360 = North, 90 = East). */ directionDeg: number;
|
|
53
|
+
/** Maximum gust speed in meters per second over the period. */ gustMs?: number;
|
|
54
|
+
};
|
|
55
|
+
/** Canonical list of WMO cloud genera. */
|
|
56
|
+
export type CloudType = 'cirrus' | 'cirrocumulus' | 'cirrostratus' | 'altocumulus' | 'altostratus' | 'nimbostratus' | 'stratocumulus' | 'stratus' | 'cumulus' | 'cumulonimbus';
|
|
57
|
+
/** Cloud cover information following common WMO recommendations. */
|
|
58
|
+
export type CloudCover = {
|
|
59
|
+
/** Total cloud cover in percent (0–100). */ totalPercent: number;
|
|
60
|
+
/** Low-level cloud fraction in percent (0–100). */ lowPercent?: number;
|
|
61
|
+
/** Mid-level cloud fraction in percent (0–100). */ middlePercent?: number;
|
|
62
|
+
/** High-level cloud fraction in percent (0–100). */ highPercent?: number;
|
|
63
|
+
/** Cloud base height in meters above ground level. */ cloudBaseHeightM?: number;
|
|
64
|
+
/** Dominant cloud genus when it can be identified. */ dominantGenre?: CloudType;
|
|
65
|
+
};
|
|
66
|
+
/** Canonical list of atmospheric phenomena based on WMO classification. */
|
|
67
|
+
export type AtmosphericPhenomenon = 'rain' | 'drizzle' | 'freezing-rain' | 'snow' | 'snow-grains' | 'ice-pellets' | 'hail' | 'fog' | 'mist' | 'haze' | 'smoke' | 'dust' | 'sand' | 'volcanic-ash' | 'thunderstorm' | 'squall' | 'funnel-cloud';
|
|
68
|
+
/** Single atmospheric phenomenon, observed or forecast. */
|
|
69
|
+
export type WeatherPhenomenon = {
|
|
70
|
+
/** Phenomenon type according to the WMO-inspired list. */ phenomenon: AtmosphericPhenomenon;
|
|
71
|
+
/** Qualitative intensity: "+" for heavy, "-" for light, or null for normal. */ intensity: '+' | '-' | null;
|
|
72
|
+
/** Optional free-text remark describing special characteristics. */ remark?: string;
|
|
73
|
+
};
|
|
74
|
+
/** Atmospheric pressure. */
|
|
75
|
+
export type Pressure = {
|
|
76
|
+
/** Sea-level pressure in hectopascals (millibars). */ seaLevelHpa?: number;
|
|
77
|
+
/** Station-level pressure in hectopascals at the observing elevation. */ stationLevelHpa: number;
|
|
78
|
+
};
|
|
79
|
+
/** Visibility metrics. */
|
|
80
|
+
export type Visibility = {
|
|
81
|
+
/** Horizontal visibility in meters. */ horizontalM?: number;
|
|
82
|
+
/** Vertical visibility in meters (e.g. ceiling height). */ verticalM?: number;
|
|
83
|
+
};
|
|
84
|
+
/** Solar radiation and UV information. */
|
|
85
|
+
export type Solar = {
|
|
86
|
+
/** Global solar radiation in watts per square meter. */ radiationWm2?: number;
|
|
87
|
+
/** Dimensionless UV index, typically between 0 and ~12. */ uvIndex?: number;
|
|
88
|
+
};
|
|
89
|
+
/** Air quality indicators. */
|
|
90
|
+
export type AirQuality = {
|
|
91
|
+
/** Fine particulate matter PM2.5 in micrograms per cubic meter. */ pm25Ugm3?: number;
|
|
92
|
+
/** Particulate matter PM10 in micrograms per cubic meter. */ pm10Ugm3?: number;
|
|
93
|
+
/** Ozone (O₃) concentration in micrograms per cubic meter. */ o3Ugm3?: number;
|
|
94
|
+
/** Nitrogen dioxide (NO₂) concentration in micrograms per cubic meter. */ no2Ugm3?: number;
|
|
95
|
+
/** Sulfur dioxide (SO₂) concentration in micrograms per cubic meter. */ so2Ugm3?: number;
|
|
96
|
+
/** Carbon monoxide (CO) concentration in micrograms per cubic meter. */ coUgm3?: number;
|
|
97
|
+
};
|
|
98
|
+
/** Quality metadata attached to an observation or measurement. */
|
|
99
|
+
export type ObservationQualityMetadata = {
|
|
100
|
+
/** Status of the data, typically resulting from QC checks or post-processing. */ status?: 'verified' | 'unverified' | 'estimated' | 'interpolated' | 'suspect';
|
|
101
|
+
/** Free-text notes or comments about the data quality. */ notes?: string;
|
|
102
|
+
};
|
|
103
|
+
/** Validity period of a forecast or alert. */
|
|
104
|
+
export type ValidityPeriod = {
|
|
105
|
+
/** Start of validity */ from: Date;
|
|
106
|
+
/** End of validity */ to: Date;
|
|
107
|
+
};
|
|
108
|
+
/** Weather alert or warning issued by an authority or provider. */
|
|
109
|
+
export type WeatherAlert = {
|
|
110
|
+
/** Alert type or category (e.g. "wind", "flood", "heat"). */ type: string;
|
|
111
|
+
/** Severity level as a normalized qualitative scale. */ severity: 'minor' | 'moderate' | 'severe' | 'extreme';
|
|
112
|
+
/** Human-readable description of the alert and its expected impacts. */ description?: string;
|
|
113
|
+
/** Validity period of a forecast or alert. */ validity?: ValidityPeriod;
|
|
114
|
+
};
|
|
115
|
+
/** Probabilistic forecast data for a single parameter. */
|
|
116
|
+
export type ProbabilisticData = {
|
|
117
|
+
/** Confidence level for the forecast (0–100%). */ confidencePercent?: number;
|
|
118
|
+
/** Temperature 10th percentile in °C (optimistic or cooler scenario). */ tempP10C?: number;
|
|
119
|
+
/** Temperature 90th percentile in °C (pessimistic or warmer scenario). */ tempP90C?: number;
|
|
120
|
+
};
|
|
121
|
+
/**
|
|
122
|
+
* Core weather data structure containing essential meteorological measurements.
|
|
123
|
+
*
|
|
124
|
+
* This type represents the fundamental weather parameters that can be used
|
|
125
|
+
* for both observations and forecasts. It follows WMO conventions and uses
|
|
126
|
+
* explicit unit encoding in property names to ensure clarity and type safety.
|
|
127
|
+
*
|
|
128
|
+
* All core measurements are required, while some extended parameters
|
|
129
|
+
* (visibility, solar, air quality, alerts) are optional.
|
|
130
|
+
*
|
|
131
|
+
* @see WeatherObservation - For observation-specific data with location and time
|
|
132
|
+
* @see WeatherForecast - For forecast-specific data with validity periods
|
|
133
|
+
*/
|
|
134
|
+
export type WeatherDataCore = {
|
|
135
|
+
/** Temperature-related measurements at the observation time. */ temperature: Temperature;
|
|
136
|
+
/** Humidity-related measurements at the observation time. */ humidity: Humidity;
|
|
137
|
+
/** Wind conditions at the observation time. */ wind: Wind;
|
|
138
|
+
/** Instantaneous precipitation rates at the observation time. */ precipitationMmh: number;
|
|
139
|
+
/** Atmospheric pressure at or reduced to station/sea level. */ pressure: Pressure;
|
|
140
|
+
/** List of significant weather phenomena observed. */ phenomena?: WeatherPhenomenon[];
|
|
141
|
+
/** Cloud cover information at the observation time. */ clouds?: CloudCover;
|
|
142
|
+
/** Visibility metrics at the observation time. */ visibility?: Visibility;
|
|
143
|
+
/** Solar radiation and UV information at the observation time. */ solar?: Solar;
|
|
144
|
+
/** Air quality indicators at or near the observation site. */ airQuality?: AirQuality;
|
|
145
|
+
/** Weather alerts that are active for this forecast period and location. */ alerts?: WeatherAlert[];
|
|
146
|
+
};
|
|
147
|
+
/**
|
|
148
|
+
* Weather observation.
|
|
149
|
+
*
|
|
150
|
+
* Represents a real-world measurement or observation at a specific point in time,
|
|
151
|
+
* typically coming from an instrumented station or human report.
|
|
152
|
+
*/
|
|
153
|
+
export type WeatherObservation = WeatherDataCore & {
|
|
154
|
+
/** Exact time when the observation was made. */ observedOn: Date;
|
|
155
|
+
/** Geographic location of the observation. */ location: GeoLocation;
|
|
156
|
+
/** Observation metadata */ metadata?: {
|
|
157
|
+
/** Observation source metadata (station, provider, license...). */ source?: ObservationDataSource;
|
|
158
|
+
/** Time when the data was collected or ingested by the system. */ collectedOn?: Date;
|
|
159
|
+
/** Human-readable description or summary of the observation. */ description?: string;
|
|
160
|
+
/** Raw source data as received from the provider. */ rawData?: Record<string, any> | string;
|
|
161
|
+
/** Quality control and processing metadata for the observation. */ observationQuality?: ObservationQualityMetadata;
|
|
162
|
+
};
|
|
163
|
+
};
|
|
164
|
+
/**
|
|
165
|
+
* Weather forecast.
|
|
166
|
+
*
|
|
167
|
+
* Represents a forecast for a given future period, possibly including a mix
|
|
168
|
+
* of deterministic and probabilistic information as provided by a model.
|
|
169
|
+
*/
|
|
170
|
+
export type WeatherForecast = WeatherDataCore & {
|
|
171
|
+
/** Time when the forecast was issued. */ issuedOn: Date;
|
|
172
|
+
/** Period of time this forecast is valid for. */ validity: ValidityPeriod;
|
|
173
|
+
/** Geographic location to which the forecast applies. */ location: GeoLocation;
|
|
174
|
+
/** Observation metadata */ metadata?: {
|
|
175
|
+
/** Forecast model and source metadata. */ source?: ForecastDataSource;
|
|
176
|
+
/** Time when the data was collected or ingested by the system. */ collectedOn?: Date;
|
|
177
|
+
/** Human-readable description or summary of the observation. */ description?: string;
|
|
178
|
+
/** Raw source data as received from the provider. */ rawData?: Record<string, any> | string;
|
|
179
|
+
/** Associated probabilistic forecast information, if available. */ probabilistic?: ProbabilisticData;
|
|
180
|
+
};
|
|
181
|
+
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export
|
|
1
|
+
export {};
|
package/components/Comp/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@design-edito/tools",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "1.0.1",
|
|
4
4
|
"description": "",
|
|
5
5
|
"author": "Maxime Fabas",
|
|
6
6
|
"license": "ISC",
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
"dependencies": {
|
|
15
15
|
"@aws-sdk/client-s3": "^3.907.0",
|
|
16
16
|
"@aws-sdk/lib-storage": "^3.907.0",
|
|
17
|
+
"@design-edito/tools": "^0.2.41",
|
|
17
18
|
"@google-cloud/storage": "^7.17.2",
|
|
18
19
|
"@inquirer/prompts": "^8.2.0",
|
|
19
20
|
"ansi-regex": "^6.2.2",
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Finds duplicate elements in an array.
|
|
3
|
-
*
|
|
4
|
-
* @param arr - The array to search for duplicates.
|
|
5
|
-
* @param [stopAtFirst=false] - If `true`, returns immediately after finding the first duplicate.
|
|
6
|
-
* @returns An array of duplicate elements found in the input array.
|
|
7
|
-
*/
|
|
8
|
-
export declare function findDuplicates<T>(arr: T[], stopAtFirst?: boolean): T[];
|
|
9
|
-
/**
|
|
10
|
-
* Finds the positions of duplicate elements in an array.
|
|
11
|
-
*
|
|
12
|
-
* @param arr - The array to search for duplicates positions.
|
|
13
|
-
* @returns An array of the positions of duplicate elements found in the input array.
|
|
14
|
-
*/
|
|
15
|
-
export declare function findDuplicatesPositions(arr: any[]): number[];
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import "../../../chunks/chunk-XCBH6NLF.js";
|
|
2
|
-
|
|
3
|
-
// src/agnostic/arrays/find-duplicates/index.ts
|
|
4
|
-
function findDuplicates(arr, stopAtFirst = false) {
|
|
5
|
-
const seen = /* @__PURE__ */ new Set();
|
|
6
|
-
const duplicates = /* @__PURE__ */ new Set();
|
|
7
|
-
for (const item of arr) {
|
|
8
|
-
if (seen.has(item) && stopAtFirst) return [item];
|
|
9
|
-
if (seen.has(item)) duplicates.add(item);
|
|
10
|
-
seen.add(item);
|
|
11
|
-
}
|
|
12
|
-
return Array.from(duplicates);
|
|
13
|
-
}
|
|
14
|
-
function findDuplicatesPositions(arr) {
|
|
15
|
-
const seen = /* @__PURE__ */ new Set();
|
|
16
|
-
const duplicatesPos = [];
|
|
17
|
-
arr.forEach((item, pos) => {
|
|
18
|
-
if (seen.has(item)) return duplicatesPos.push(pos);
|
|
19
|
-
seen.add(item);
|
|
20
|
-
});
|
|
21
|
-
return duplicatesPos;
|
|
22
|
-
}
|
|
23
|
-
export {
|
|
24
|
-
findDuplicates,
|
|
25
|
-
findDuplicatesPositions
|
|
26
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { type ConstructorFunction } from '../../misc/is-constructor-function/index.js';
|
|
2
|
-
/** Type guard function that checks if input is of type T. */
|
|
3
|
-
type TypeCheckerFunction<T> = (input: unknown) => input is T;
|
|
4
|
-
/** Type checker that can be either a constructor function or a type guard function. */
|
|
5
|
-
type TypeChecker<T> = ConstructorFunction<T> | TypeCheckerFunction<T>;
|
|
6
|
-
/** Infer the type from a TypeChecker */
|
|
7
|
-
type TypeOfChecker<C> = C extends ConstructorFunction<infer U> ? U : C extends TypeCheckerFunction<infer U> ? U : never;
|
|
8
|
-
/**
|
|
9
|
-
* Type guard to check if an input is an array and optionally if all elements match a type.
|
|
10
|
-
*
|
|
11
|
-
* If no type checkers are provided, only checks if the input is an array.
|
|
12
|
-
* Supports constructor functions (e.g., `Number`, `String`, `Boolean`, custom classes)
|
|
13
|
-
* and custom type guard functions.
|
|
14
|
-
*/
|
|
15
|
-
export declare function isArrayOf<C extends TypeChecker<any> | TypeChecker<any>[]>(input: unknown, _types?: C): input is Array<TypeOfChecker<C extends any[] ? C[number] : C>>;
|
|
16
|
-
export {};
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
isConstructorFunction
|
|
3
|
-
} from "../../../chunks/chunk-RCO57B6F.js";
|
|
4
|
-
import "../../../chunks/chunk-XCBH6NLF.js";
|
|
5
|
-
|
|
6
|
-
// src/agnostic/arrays/is-array-of/index.ts
|
|
7
|
-
function isArrayOf(input, _types) {
|
|
8
|
-
if (!Array.isArray(input)) return false;
|
|
9
|
-
if (!_types) return true;
|
|
10
|
-
const types = Array.isArray(_types) ? _types : [_types];
|
|
11
|
-
const primitiveTypeMap = /* @__PURE__ */ new Map([
|
|
12
|
-
[Number, "number"],
|
|
13
|
-
[String, "string"],
|
|
14
|
-
[Boolean, "boolean"]
|
|
15
|
-
]);
|
|
16
|
-
return input.every(
|
|
17
|
-
(entry) => types.some((typeChecker) => {
|
|
18
|
-
if (!isConstructorFunction(typeChecker)) return typeChecker(entry);
|
|
19
|
-
const primitiveType = primitiveTypeMap.get(typeChecker);
|
|
20
|
-
if (primitiveType) return typeof entry === primitiveType;
|
|
21
|
-
return entry instanceof typeChecker;
|
|
22
|
-
})
|
|
23
|
-
);
|
|
24
|
-
}
|
|
25
|
-
export {
|
|
26
|
-
isArrayOf
|
|
27
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/** Function that generates a value for each array position. */
|
|
2
|
-
type Filler<T = any> = (pos?: number) => T;
|
|
3
|
-
/**
|
|
4
|
-
* Creates an array of a specified length using a filler function.
|
|
5
|
-
*
|
|
6
|
-
* @param filler - Function called for each position to generate the array element.
|
|
7
|
-
* @param length - Desired length of the array.
|
|
8
|
-
* @returns A new array with elements generated by the filler function.
|
|
9
|
-
*/
|
|
10
|
-
export declare function make<T>(filler: Filler<T>, length: number): T[];
|
|
11
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Picks a random element from an array, optionally excluding certain elements.
|
|
3
|
-
*
|
|
4
|
-
* @param arr - The array to pick from.
|
|
5
|
-
* @param [exclude] - Array of elements to exclude from selection.
|
|
6
|
-
* @returns A randomly selected element from the array.
|
|
7
|
-
* @throws Throws an error if no elements are available after exclusions.
|
|
8
|
-
*/
|
|
9
|
-
export declare function randomPick<T>(arr: T[], exclude?: T[]): T;
|
|
10
|
-
/**
|
|
11
|
-
* Picks multiple random elements from an array without replacement.
|
|
12
|
-
*
|
|
13
|
-
* Each picked element is removed from the pool before the next selection, ensuring
|
|
14
|
-
* no duplicates in the result.
|
|
15
|
-
*
|
|
16
|
-
* @param howMuch - Number of elements to pick.
|
|
17
|
-
* @param arr - The array to pick from.
|
|
18
|
-
* @param [exclude] - Array of elements to exclude from selection.
|
|
19
|
-
* @returns An array of randomly selected elements.
|
|
20
|
-
* @throws Propagates the error thrown by `randomPick` if not enough elements are available.
|
|
21
|
-
*/
|
|
22
|
-
export declare function randomPickMany<T>(howMuch: number, arr: T[], exclude?: T[]): T[];
|