@splendidlabz/utils 1.6.0 → 1.8.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/CHANGELOG.md +19 -0
- package/dist/cjs/dom/accessibility.cjs +53 -0
- package/dist/cjs/dom/actions/index.cjs +407 -0
- package/dist/cjs/dom/actions/masonry.cjs +149 -0
- package/dist/cjs/dom/actions/prefer-horizontal-scroll.cjs +157 -0
- package/dist/cjs/dom/actions/sticky.cjs +211 -0
- package/dist/cjs/dom/bounding-box.cjs +70 -0
- package/dist/cjs/dom/clipboard.cjs +37 -0
- package/dist/cjs/dom/cookie.cjs +57 -0
- package/dist/cjs/dom/css-vars.cjs +57 -0
- package/dist/cjs/dom/events.cjs +95 -0
- package/dist/cjs/dom/focusable.cjs +143 -0
- package/dist/cjs/dom/font-size.cjs +74 -0
- package/dist/cjs/dom/get-element.cjs +98 -0
- package/dist/cjs/dom/hash.cjs +35 -0
- package/dist/cjs/dom/index.cjs +1197 -0
- package/dist/cjs/dom/keyboard.cjs +51 -0
- package/dist/cjs/dom/local-store.cjs +79 -0
- package/dist/cjs/dom/media.cjs +59 -0
- package/dist/cjs/dom/observers/index.cjs +156 -0
- package/dist/cjs/dom/observers/intersection-observer.cjs +91 -0
- package/dist/cjs/dom/observers/mutation-observer.cjs +95 -0
- package/dist/cjs/dom/observers/observer.cjs +48 -0
- package/dist/cjs/dom/observers/resize-observer.cjs +82 -0
- package/dist/cjs/dom/pkce.cjs +53 -0
- package/dist/cjs/dom/query-params.cjs +38 -0
- package/dist/cjs/dom/random-string.cjs +38 -0
- package/dist/cjs/dom/sanitize.cjs +65 -0
- package/dist/cjs/dom/session-store.cjs +49 -0
- package/dist/cjs/dom/spam-prevention.cjs +50 -0
- package/dist/cjs/dom/trap-focus.cjs +197 -0
- package/dist/cjs/dom/ui/aria-current.cjs +43 -0
- package/dist/cjs/dom/ui/inconsistent-button-fix.cjs +35 -0
- package/dist/cjs/dom/ui/index.cjs +105 -0
- package/dist/cjs/dom/ui/scroll-container.cjs +47 -0
- package/dist/cjs/dom/ui/traverse-and-scramble.cjs +50 -0
- package/dist/cjs/lib/arrays/index.cjs +139 -0
- package/dist/cjs/lib/arrays/item-position.cjs +42 -0
- package/dist/cjs/lib/arrays/join.cjs +43 -0
- package/dist/cjs/lib/arrays/shuffle.cjs +42 -0
- package/dist/cjs/lib/arrays/sort.cjs +67 -0
- package/dist/cjs/lib/arrays/split-array.cjs +41 -0
- package/dist/cjs/lib/arrays/unique.cjs +31 -0
- package/dist/cjs/lib/auth/index.cjs +53 -0
- package/dist/cjs/lib/auth/route-manager.cjs +51 -0
- package/dist/cjs/lib/checks.cjs +58 -0
- package/dist/cjs/lib/date/days.cjs +37 -0
- package/dist/cjs/lib/date/index.cjs +208 -0
- package/dist/cjs/lib/date/months.cjs +102 -0
- package/dist/cjs/lib/date/time.cjs +117 -0
- package/dist/cjs/lib/form/form-data.cjs +83 -0
- package/dist/cjs/lib/form/index.cjs +122 -0
- package/dist/cjs/lib/form/sanitize.cjs +61 -0
- package/dist/cjs/lib/functions/debounce.cjs +43 -0
- package/dist/cjs/lib/functions/env.cjs +32 -0
- package/dist/cjs/lib/functions/functional.cjs +62 -0
- package/dist/cjs/lib/functions/index.cjs +122 -0
- package/dist/cjs/lib/functions/throttle.cjs +38 -0
- package/dist/cjs/lib/functions/timeout.cjs +41 -0
- package/dist/cjs/lib/hash.cjs +43 -0
- package/dist/cjs/lib/index.cjs +1146 -0
- package/dist/cjs/lib/numbers/index.cjs +49 -0
- package/dist/cjs/lib/numbers/math.cjs +36 -0
- package/dist/cjs/lib/objects/camelcase-keys.cjs +80 -0
- package/dist/cjs/lib/objects/empty.cjs +39 -0
- package/dist/cjs/lib/objects/equal.cjs +47 -0
- package/dist/cjs/lib/objects/extend.cjs +147 -0
- package/dist/cjs/lib/objects/flatten.cjs +48 -0
- package/dist/cjs/lib/objects/index.cjs +378 -0
- package/dist/cjs/lib/objects/json.cjs +35 -0
- package/dist/cjs/lib/objects/loop.cjs +40 -0
- package/dist/cjs/lib/objects/mix/mix.cjs +115 -0
- package/dist/cjs/lib/objects/nested-property.cjs +45 -0
- package/dist/cjs/lib/objects/normalize-object.cjs +106 -0
- package/dist/cjs/lib/objects/omit-empty.cjs +40 -0
- package/dist/cjs/lib/objects/size.cjs +63 -0
- package/dist/cjs/lib/objects/split.cjs +39 -0
- package/dist/cjs/lib/promises/index.cjs +69 -0
- package/dist/cjs/lib/promises/reject.cjs +67 -0
- package/dist/cjs/lib/sse.cjs +99 -0
- package/dist/cjs/lib/strings/convert-case/convert-case.cjs +96 -0
- package/dist/cjs/lib/strings/index.cjs +190 -0
- package/dist/cjs/lib/strings/markdown.cjs +59 -0
- package/dist/cjs/lib/strings/name.cjs +46 -0
- package/dist/cjs/lib/strings/pluralize.cjs +40 -0
- package/dist/cjs/lib/strings/query-string.cjs +43 -0
- package/dist/cjs/lib/style/index.cjs +64 -0
- package/dist/cjs/lib/symbols/index.cjs +40 -0
- package/dist/cjs/lib/symbols/symbols.cjs +38 -0
- package/dist/cjs/node/common.cjs +42 -0
- package/dist/cjs/node/dirname.cjs +49 -0
- package/dist/cjs/node/file-cache.cjs +196 -0
- package/dist/cjs/node/file.cjs +50 -0
- package/dist/cjs/node/hash.cjs +42 -0
- package/dist/cjs/node/index.cjs +290 -0
- package/dist/cjs/node/pkce.cjs +62 -0
- package/dist/cjs/node/random-string.cjs +43 -0
- package/dist/cjs/node/sanitize.cjs +65 -0
- package/dist/esm/dom/accessibility.js +27 -0
- package/dist/esm/dom/actions/index.js +379 -0
- package/dist/esm/dom/actions/masonry.js +123 -0
- package/dist/esm/dom/actions/prefer-horizontal-scroll.js +131 -0
- package/dist/esm/dom/actions/sticky.js +185 -0
- package/dist/esm/dom/bounding-box.js +45 -0
- package/dist/esm/dom/clipboard.js +13 -0
- package/dist/esm/dom/cookie.js +32 -0
- package/dist/esm/dom/css-vars.js +28 -0
- package/dist/esm/dom/events.js +67 -0
- package/dist/esm/dom/focusable.js +118 -0
- package/dist/esm/dom/font-size.js +44 -0
- package/dist/esm/dom/get-element.js +67 -0
- package/dist/esm/dom/hash.js +11 -0
- package/dist/esm/dom/index.js +1100 -0
- package/dist/esm/dom/keyboard.js +23 -0
- package/dist/esm/dom/local-store.js +55 -0
- package/dist/esm/dom/media.js +33 -0
- package/dist/esm/dom/observers/index.js +128 -0
- package/dist/esm/dom/observers/intersection-observer.js +65 -0
- package/dist/esm/dom/observers/mutation-observer.js +69 -0
- package/dist/esm/dom/observers/observer.js +22 -0
- package/dist/esm/dom/observers/resize-observer.js +56 -0
- package/dist/esm/dom/pkce.js +27 -0
- package/dist/esm/dom/query-params.js +14 -0
- package/dist/esm/dom/random-string.js +13 -0
- package/dist/esm/dom/sanitize.js +31 -0
- package/dist/esm/dom/session-store.js +25 -0
- package/dist/esm/dom/spam-prevention.js +26 -0
- package/dist/esm/dom/trap-focus.js +170 -0
- package/dist/esm/dom/ui/aria-current.js +18 -0
- package/dist/esm/dom/ui/inconsistent-button-fix.js +11 -0
- package/dist/esm/dom/ui/index.js +75 -0
- package/dist/esm/dom/ui/scroll-container.js +23 -0
- package/dist/esm/dom/ui/traverse-and-scramble.js +26 -0
- package/dist/esm/lib/arrays/index.js +106 -0
- package/dist/esm/lib/arrays/item-position.js +16 -0
- package/dist/esm/lib/arrays/join.js +17 -0
- package/dist/esm/lib/arrays/shuffle.js +18 -0
- package/dist/esm/lib/arrays/sort.js +41 -0
- package/dist/esm/lib/arrays/split-array.js +17 -0
- package/dist/esm/lib/arrays/unique.js +7 -0
- package/dist/esm/lib/auth/index.js +26 -0
- package/dist/esm/lib/auth/route-manager.js +26 -0
- package/dist/esm/lib/checks.js +31 -0
- package/dist/esm/lib/date/days.js +13 -0
- package/dist/esm/lib/date/index.js +173 -0
- package/dist/esm/lib/date/months.js +78 -0
- package/dist/esm/lib/date/time.js +84 -0
- package/dist/esm/lib/form/form-data.js +58 -0
- package/dist/esm/lib/form/index.js +92 -0
- package/dist/esm/lib/form/sanitize.js +35 -0
- package/dist/esm/lib/functions/debounce.js +19 -0
- package/dist/esm/lib/functions/env.js +8 -0
- package/dist/esm/lib/functions/functional.js +35 -0
- package/dist/esm/lib/functions/index.js +87 -0
- package/dist/esm/lib/functions/throttle.js +14 -0
- package/dist/esm/lib/functions/timeout.js +15 -0
- package/dist/esm/lib/hash.js +19 -0
- package/dist/esm/lib/index.js +1027 -0
- package/dist/esm/lib/numbers/index.js +21 -0
- package/dist/esm/lib/numbers/math.js +11 -0
- package/dist/esm/lib/objects/camelcase-keys.js +54 -0
- package/dist/esm/lib/objects/empty.js +14 -0
- package/dist/esm/lib/objects/equal.js +12 -0
- package/dist/esm/lib/objects/extend.js +121 -0
- package/dist/esm/lib/objects/flatten.js +22 -0
- package/dist/esm/lib/objects/index.js +323 -0
- package/dist/esm/lib/objects/json.js +11 -0
- package/dist/esm/lib/objects/loop.js +15 -0
- package/dist/esm/lib/objects/mix/mix.js +89 -0
- package/dist/esm/lib/objects/nested-property.js +19 -0
- package/dist/esm/lib/objects/normalize-object.js +80 -0
- package/dist/esm/lib/objects/omit-empty.js +16 -0
- package/dist/esm/lib/objects/size.js +39 -0
- package/dist/esm/lib/objects/split.js +15 -0
- package/dist/esm/lib/promises/index.js +33 -0
- package/dist/esm/lib/promises/reject.js +33 -0
- package/dist/esm/lib/sse.js +72 -0
- package/dist/esm/lib/strings/convert-case/convert-case.js +65 -0
- package/dist/esm/lib/strings/index.js +140 -0
- package/dist/esm/lib/strings/markdown.js +34 -0
- package/dist/esm/lib/strings/name.js +22 -0
- package/dist/esm/lib/strings/pluralize.js +6 -0
- package/dist/esm/lib/strings/query-string.js +17 -0
- package/dist/esm/lib/style/index.js +38 -0
- package/dist/esm/lib/symbols/index.js +13 -0
- package/dist/esm/lib/symbols/symbols.js +13 -0
- package/dist/esm/node/common.js +8 -0
- package/dist/esm/node/dirname.js +14 -0
- package/dist/esm/node/file-cache.js +158 -0
- package/dist/esm/node/file.js +15 -0
- package/dist/esm/node/hash.js +8 -0
- package/dist/esm/node/index.js +243 -0
- package/dist/esm/node/pkce.js +28 -0
- package/dist/esm/node/random-string.js +9 -0
- package/dist/esm/node/sanitize.js +31 -0
- package/dist/{dom/accessibility.d.ts → types/dom/accessibility.d.cts} +5 -3
- package/dist/types/dom/actions/index.d.cts +3 -0
- package/dist/types/dom/actions/masonry.d.cts +5 -0
- package/dist/types/dom/actions/prefer-horizontal-scroll.d.cts +5 -0
- package/dist/types/dom/actions/sticky.d.cts +5 -0
- package/dist/{dom/bounding-box.d.ts → types/dom/bounding-box.d.cts} +4 -2
- package/dist/{dom/clipboard.d.ts → types/dom/clipboard.d.cts} +3 -1
- package/dist/types/dom/cookie.d.cts +7 -0
- package/dist/types/dom/css-vars.d.cts +6 -0
- package/dist/types/dom/events.d.cts +20 -0
- package/dist/{dom/focusable.d.ts → types/dom/focusable.d.cts} +5 -3
- package/dist/types/dom/font-size.d.cts +7 -0
- package/dist/{dom/get-element.d.ts → types/dom/get-element.d.cts} +10 -8
- package/dist/types/dom/hash.d.cts +3 -0
- package/dist/types/dom/index.d.cts +30 -0
- package/dist/{dom/keyboard.d.ts → types/dom/keyboard.d.cts} +7 -5
- package/dist/{dom/local-store.d.ts → types/dom/local-store.d.cts} +3 -1
- package/dist/types/dom/media.d.cts +5 -0
- package/dist/types/dom/observers/index.d.cts +3 -0
- package/dist/{dom/observers/intersection-observer.d.ts → types/dom/observers/intersection-observer.d.cts} +3 -1
- package/dist/{dom/observers/mutation-observer.d.ts → types/dom/observers/mutation-observer.d.cts} +3 -1
- package/dist/types/dom/observers/observer.d.cts +3 -0
- package/dist/{dom/observers/resize-observer.d.ts → types/dom/observers/resize-observer.d.cts} +3 -1
- package/dist/{node/pkce.d.ts → types/dom/pkce.d.cts} +3 -1
- package/dist/{dom/query-params.d.ts → types/dom/query-params.d.cts} +3 -1
- package/dist/{dom/random-string.d.ts → types/dom/random-string.d.cts} +4 -2
- package/dist/{dom/sanitize.d.ts → types/dom/sanitize.d.cts} +3 -1
- package/dist/{dom/session-store.d.ts → types/dom/session-store.d.cts} +3 -1
- package/dist/types/dom/spam-prevention.d.cts +14 -0
- package/dist/{dom/trap-focus.d.ts → types/dom/trap-focus.d.cts} +8 -4
- package/dist/types/dom/ui/aria-current.d.cts +7 -0
- package/dist/{dom/ui/inconsistent-button-fix.d.ts → types/dom/ui/inconsistent-button-fix.d.cts} +3 -1
- package/dist/types/dom/ui/index.d.cts +4 -0
- package/dist/types/dom/ui/scroll-container.d.cts +3 -0
- package/dist/{dom/ui/traverse-and-scramble.d.ts → types/dom/ui/traverse-and-scramble.d.cts} +3 -1
- package/dist/types/lib/arrays/index.d.cts +6 -0
- package/dist/{lib/arrays/item-position.d.ts → types/lib/arrays/item-position.d.cts} +5 -3
- package/dist/{lib/arrays/join.d.ts → types/lib/arrays/join.d.cts} +3 -1
- package/dist/types/lib/arrays/shuffle.d.cts +3 -0
- package/dist/{lib/arrays/sort.d.ts → types/lib/arrays/sort.d.cts} +3 -1
- package/dist/types/lib/arrays/split-array.d.cts +6 -0
- package/dist/types/lib/arrays/unique.d.cts +3 -0
- package/dist/types/lib/auth/index.d.cts +1 -0
- package/dist/{lib/auth/route-manager.d.ts → types/lib/auth/route-manager.d.cts} +5 -2
- package/dist/{lib/checks.d.ts → types/lib/checks.d.cts} +6 -4
- package/dist/{lib/date/days.d.ts → types/lib/date/days.d.cts} +3 -1
- package/dist/types/lib/date/index.d.cts +3 -0
- package/dist/{lib/date/months.d.ts → types/lib/date/months.d.cts} +3 -1
- package/dist/types/lib/date/time.d.cts +21 -0
- package/dist/types/lib/form/form-data.d.cts +9 -0
- package/dist/types/lib/form/index.d.cts +2 -0
- package/dist/{lib/form/sanitize.d.ts → types/lib/form/sanitize.d.cts} +6 -4
- package/dist/types/lib/functions/debounce.d.cts +3 -0
- package/dist/types/lib/functions/env.d.cts +3 -0
- package/dist/types/lib/functions/functional.d.cts +6 -0
- package/dist/types/lib/functions/index.d.cts +5 -0
- package/dist/types/lib/functions/throttle.d.cts +3 -0
- package/dist/types/lib/functions/timeout.d.cts +5 -0
- package/dist/types/lib/hash.d.cts +3 -0
- package/dist/types/lib/index.d.cts +43 -0
- package/dist/types/lib/numbers/index.d.cts +5 -0
- package/dist/types/lib/numbers/math.d.cts +4 -0
- package/dist/types/lib/objects/camelcase-keys.d.cts +3 -0
- package/dist/types/lib/objects/empty.d.cts +4 -0
- package/dist/types/lib/objects/equal.d.cts +4 -0
- package/dist/types/lib/objects/extend.d.cts +6 -0
- package/dist/types/lib/objects/flatten.d.cts +6 -0
- package/dist/types/lib/objects/index.d.cts +13 -0
- package/dist/types/lib/objects/json.d.cts +3 -0
- package/dist/types/lib/objects/loop.d.cts +4 -0
- package/dist/types/lib/objects/mix/mix.d.cts +44 -0
- package/dist/{lib/objects/nested-property.d.ts → types/lib/objects/nested-property.d.cts} +5 -3
- package/dist/types/lib/objects/normalize-object.d.cts +3 -0
- package/dist/types/lib/objects/omit-empty.d.cts +3 -0
- package/dist/types/lib/objects/size.d.cts +3 -0
- package/dist/{lib/objects/split.d.ts → types/lib/objects/split.d.cts} +3 -1
- package/dist/types/lib/promises/index.d.cts +1 -0
- package/dist/types/lib/promises/reject.d.cts +5 -0
- package/dist/{lib/sse.d.ts → types/lib/sse.d.cts} +4 -2
- package/dist/types/lib/strings/convert-case/convert-case.d.cts +10 -0
- package/dist/types/lib/strings/index.d.cts +5 -0
- package/dist/{lib/strings/markdown.d.ts → types/lib/strings/markdown.d.cts} +4 -2
- package/dist/types/lib/strings/name.d.cts +7 -0
- package/dist/types/lib/strings/pluralize.d.cts +3 -0
- package/dist/types/lib/strings/query-string.d.cts +10 -0
- package/dist/types/lib/style/index.d.cts +3 -0
- package/dist/types/lib/symbols/index.d.cts +1 -0
- package/dist/types/lib/symbols/symbols.d.cts +4 -0
- package/dist/types/node/common.d.cts +3 -0
- package/dist/types/node/dirname.d.cts +9 -0
- package/dist/{node/file-cache.d.ts → types/node/file-cache.d.cts} +7 -5
- package/dist/types/node/file.d.cts +4 -0
- package/dist/types/node/hash.d.cts +3 -0
- package/dist/types/node/index.d.cts +7 -0
- package/dist/{dom/pkce.d.ts → types/node/pkce.d.cts} +3 -1
- package/dist/types/node/random-string.d.cts +3 -0
- package/dist/{node/sanitize.d.ts → types/node/sanitize.d.cts} +3 -1
- package/package.json +28 -16
- package/{dom → src/dom}/index.js +1 -0
- package/src/dom/spam-prevention.js +39 -0
- package/{dom → src/dom}/ui/aria-current.js +1 -1
- package/{lib → src/lib}/arrays/index.js +1 -0
- package/{lib → src/lib}/arrays/sort.js +6 -6
- package/src/lib/arrays/split-array.js +15 -0
- package/{lib → src/lib}/auth/route-manager.js +1 -0
- package/{lib → src/lib}/date/time.js +38 -5
- package/{lib → src/lib}/numbers/index.js +1 -1
- package/src/lib/numbers/split-unit.test.js +45 -0
- package/src/lib/objects/mix/mix.js +191 -0
- package/{lib → src/lib}/objects/mix/mix.test.js +99 -2
- package/src/lib/strings/pluralize.js +2 -0
- package/{lib → src/lib}/style/index.js +2 -0
- package/{node → src/node}/file-cache.js +1 -1
- package/tsconfig.json +6 -6
- package/tsup.config.js +38 -0
- package/tsup.config.mjs +43 -0
- package/dist/dom/actions/index.d.ts +0 -3
- package/dist/dom/actions/masonry.d.ts +0 -3
- package/dist/dom/actions/prefer-horizontal-scroll.d.ts +0 -3
- package/dist/dom/actions/sticky.d.ts +0 -3
- package/dist/dom/cookie.d.ts +0 -5
- package/dist/dom/css-vars.d.ts +0 -4
- package/dist/dom/events.d.ts +0 -18
- package/dist/dom/font-size.d.ts +0 -5
- package/dist/dom/hash.d.ts +0 -1
- package/dist/dom/index.d.ts +0 -22
- package/dist/dom/media.d.ts +0 -3
- package/dist/dom/observers/index.d.ts +0 -3
- package/dist/dom/observers/observer.d.ts +0 -1
- package/dist/dom/ui/aria-current.d.ts +0 -5
- package/dist/dom/ui/index.d.ts +0 -4
- package/dist/dom/ui/scroll-container.d.ts +0 -1
- package/dist/lib/arrays/index.d.ts +0 -5
- package/dist/lib/arrays/shuffle.d.ts +0 -1
- package/dist/lib/arrays/unique.d.ts +0 -1
- package/dist/lib/auth/index.d.ts +0 -1
- package/dist/lib/date/index.d.ts +0 -3
- package/dist/lib/date/time.d.ts +0 -8
- package/dist/lib/form/form-data.d.ts +0 -7
- package/dist/lib/form/index.d.ts +0 -2
- package/dist/lib/functions/debounce.d.ts +0 -1
- package/dist/lib/functions/env.d.ts +0 -1
- package/dist/lib/functions/functional.d.ts +0 -4
- package/dist/lib/functions/index.d.ts +0 -5
- package/dist/lib/functions/throttle.d.ts +0 -1
- package/dist/lib/functions/timeout.d.ts +0 -3
- package/dist/lib/hash.d.ts +0 -1
- package/dist/lib/index.d.ts +0 -14
- package/dist/lib/numbers/index.d.ts +0 -2
- package/dist/lib/numbers/math.d.ts +0 -2
- package/dist/lib/objects/camelcase-keys.d.ts +0 -1
- package/dist/lib/objects/empty.d.ts +0 -2
- package/dist/lib/objects/equal.d.ts +0 -2
- package/dist/lib/objects/extend.d.ts +0 -4
- package/dist/lib/objects/flatten.d.ts +0 -4
- package/dist/lib/objects/index.d.ts +0 -13
- package/dist/lib/objects/json.d.ts +0 -1
- package/dist/lib/objects/loop.d.ts +0 -2
- package/dist/lib/objects/mix/mix.d.ts +0 -1
- package/dist/lib/objects/normalize-object.d.ts +0 -1
- package/dist/lib/objects/omit-empty.d.ts +0 -1
- package/dist/lib/objects/size.d.ts +0 -1
- package/dist/lib/promises/index.d.ts +0 -1
- package/dist/lib/promises/reject.d.ts +0 -3
- package/dist/lib/strings/convert-case/convert-case.d.ts +0 -8
- package/dist/lib/strings/index.d.ts +0 -5
- package/dist/lib/strings/name.d.ts +0 -5
- package/dist/lib/strings/pluralize.d.ts +0 -1
- package/dist/lib/strings/query-string.d.ts +0 -8
- package/dist/lib/style/index.d.ts +0 -1
- package/dist/lib/symbols/index.d.ts +0 -1
- package/dist/lib/symbols/symbols.d.ts +0 -2
- package/dist/node/common.d.ts +0 -1
- package/dist/node/dirname.d.ts +0 -7
- package/dist/node/file.d.ts +0 -2
- package/dist/node/hash.d.ts +0 -1
- package/dist/node/index.d.ts +0 -7
- package/dist/node/random-string.d.ts +0 -1
- package/lib/objects/mix/mix.js +0 -102
- package/lib/strings/pluralize.js +0 -2
- /package/{dom → src/dom}/accessibility.js +0 -0
- /package/{dom → src/dom}/actions/index.js +0 -0
- /package/{dom → src/dom}/actions/masonry.js +0 -0
- /package/{dom → src/dom}/actions/prefer-horizontal-scroll.js +0 -0
- /package/{dom → src/dom}/actions/sticky.js +0 -0
- /package/{dom → src/dom}/bounding-box.js +0 -0
- /package/{dom → src/dom}/clipboard.js +0 -0
- /package/{dom → src/dom}/cookie.js +0 -0
- /package/{dom → src/dom}/css-vars.js +0 -0
- /package/{dom → src/dom}/events.js +0 -0
- /package/{dom → src/dom}/events.test.js +0 -0
- /package/{dom → src/dom}/focusable.js +0 -0
- /package/{dom → src/dom}/font-size.js +0 -0
- /package/{dom → src/dom}/get-element.js +0 -0
- /package/{dom → src/dom}/hash.js +0 -0
- /package/{dom → src/dom}/keyboard.js +0 -0
- /package/{dom → src/dom}/local-store.js +0 -0
- /package/{dom → src/dom}/media.js +0 -0
- /package/{dom → src/dom}/observers/index.js +0 -0
- /package/{dom → src/dom}/observers/intersection-observer.js +0 -0
- /package/{dom → src/dom}/observers/mutation-observer.js +0 -0
- /package/{dom → src/dom}/observers/observer.js +0 -0
- /package/{dom → src/dom}/observers/resize-observer.js +0 -0
- /package/{dom → src/dom}/pkce.js +0 -0
- /package/{dom → src/dom}/query-params.js +0 -0
- /package/{dom → src/dom}/random-string.js +0 -0
- /package/{dom → src/dom}/random-string.test.js +0 -0
- /package/{dom → src/dom}/sanitize.js +0 -0
- /package/{dom → src/dom}/session-store.js +0 -0
- /package/{dom → src/dom}/trap-focus.js +0 -0
- /package/{dom → src/dom}/ui/inconsistent-button-fix.js +0 -0
- /package/{dom → src/dom}/ui/index.js +0 -0
- /package/{dom → src/dom}/ui/scroll-container.js +0 -0
- /package/{dom → src/dom}/ui/traverse-and-scramble.js +0 -0
- /package/{lib → src/lib}/arrays/item-position.js +0 -0
- /package/{lib → src/lib}/arrays/join.js +0 -0
- /package/{lib → src/lib}/arrays/shuffle.js +0 -0
- /package/{lib → src/lib}/arrays/sort.spec.js +0 -0
- /package/{lib → src/lib}/arrays/unique.js +0 -0
- /package/{lib → src/lib}/auth/index.js +0 -0
- /package/{lib → src/lib}/checks.js +0 -0
- /package/{lib → src/lib}/date/days.js +0 -0
- /package/{lib → src/lib}/date/index.js +0 -0
- /package/{lib → src/lib}/date/months.js +0 -0
- /package/{lib → src/lib}/form/form-data.js +0 -0
- /package/{lib → src/lib}/form/index.js +0 -0
- /package/{lib → src/lib}/form/sanitize.js +0 -0
- /package/{lib → src/lib}/form/sanitize.spec.js +0 -0
- /package/{lib → src/lib}/functions/debounce.js +0 -0
- /package/{lib → src/lib}/functions/env.js +0 -0
- /package/{lib → src/lib}/functions/functional.js +0 -0
- /package/{lib → src/lib}/functions/index.js +0 -0
- /package/{lib → src/lib}/functions/throttle.js +0 -0
- /package/{lib → src/lib}/functions/timeout.js +0 -0
- /package/{lib → src/lib}/hash.js +0 -0
- /package/{lib → src/lib}/hash.spec.js +0 -0
- /package/{lib → src/lib}/index.js +0 -0
- /package/{lib → src/lib}/numbers/math.js +0 -0
- /package/{lib → src/lib}/objects/camelcase-keys.js +0 -0
- /package/{lib → src/lib}/objects/camelcase-keys.test.js +0 -0
- /package/{lib → src/lib}/objects/empty.js +0 -0
- /package/{lib → src/lib}/objects/equal.js +0 -0
- /package/{lib → src/lib}/objects/extend.js +0 -0
- /package/{lib → src/lib}/objects/extend.test.js +0 -0
- /package/{lib → src/lib}/objects/flatten.js +0 -0
- /package/{lib → src/lib}/objects/index.js +0 -0
- /package/{lib → src/lib}/objects/json.js +0 -0
- /package/{lib → src/lib}/objects/loop.js +0 -0
- /package/{lib → src/lib}/objects/loop.test.js +0 -0
- /package/{lib → src/lib}/objects/mix/mix.md +0 -0
- /package/{lib → src/lib}/objects/nested-property.js +0 -0
- /package/{lib → src/lib}/objects/normalize-object.js +0 -0
- /package/{lib → src/lib}/objects/omit-empty.js +0 -0
- /package/{lib → src/lib}/objects/omit-empty.test.js +0 -0
- /package/{lib → src/lib}/objects/size.js +0 -0
- /package/{lib → src/lib}/objects/split.js +0 -0
- /package/{lib → src/lib}/promises/index.js +0 -0
- /package/{lib → src/lib}/promises/reject.js +0 -0
- /package/{lib → src/lib}/sse.js +0 -0
- /package/{lib → src/lib}/strings/convert-case/convert-case.js +0 -0
- /package/{lib → src/lib}/strings/convert-case/convert-case.md +0 -0
- /package/{lib → src/lib}/strings/convert-case/convert-case.test.js +0 -0
- /package/{lib → src/lib}/strings/index.js +0 -0
- /package/{lib → src/lib}/strings/markdown.js +0 -0
- /package/{lib → src/lib}/strings/name.js +0 -0
- /package/{lib → src/lib}/strings/name.test.js +0 -0
- /package/{lib → src/lib}/strings/query-string.js +0 -0
- /package/{lib → src/lib}/symbols/index.js +0 -0
- /package/{lib → src/lib}/symbols/symbols.js +0 -0
- /package/{node → src/node}/common.js +0 -0
- /package/{node → src/node}/dirname.js +0 -0
- /package/{node → src/node}/file.js +0 -0
- /package/{node → src/node}/hash.js +0 -0
- /package/{node → src/node}/index.js +0 -0
- /package/{node → src/node}/pkce.js +0 -0
- /package/{node → src/node}/random-string.js +0 -0
- /package/{node → src/node}/random-string.test.js +0 -0
- /package/{node → src/node}/sanitize.js +0 -0
- /package/{node → src/node}/sanitize.spec.js +0 -0
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
|
|
19
|
+
// src/dom/ui/scroll-container.js
|
|
20
|
+
var scroll_container_exports = {};
|
|
21
|
+
__export(scroll_container_exports, {
|
|
22
|
+
findScrollContainer: () => findScrollContainer
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(scroll_container_exports);
|
|
25
|
+
function findScrollContainer(element, direction = "both") {
|
|
26
|
+
if (!element) return;
|
|
27
|
+
let parent = element.parentElement;
|
|
28
|
+
while (parent) {
|
|
29
|
+
const { overflow, overflowX, overflowY } = getComputedStyle(parent);
|
|
30
|
+
if (direction === "both") {
|
|
31
|
+
if (overflow.includes("auto") || overflow.includes("scroll"))
|
|
32
|
+
return parent;
|
|
33
|
+
}
|
|
34
|
+
if (direction === "horizontal") {
|
|
35
|
+
if (overflowX === "auto" || overflowX === "scroll") return parent;
|
|
36
|
+
}
|
|
37
|
+
if (direction === "vertical") {
|
|
38
|
+
if (overflowY === "auto" || overflowY === "scroll") return parent;
|
|
39
|
+
}
|
|
40
|
+
parent = parent.parentElement;
|
|
41
|
+
}
|
|
42
|
+
return document.documentElement;
|
|
43
|
+
}
|
|
44
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
45
|
+
0 && (module.exports = {
|
|
46
|
+
findScrollContainer
|
|
47
|
+
});
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
|
|
19
|
+
// src/dom/ui/traverse-and-scramble.js
|
|
20
|
+
var traverse_and_scramble_exports = {};
|
|
21
|
+
__export(traverse_and_scramble_exports, {
|
|
22
|
+
traverseAndScramble: () => traverseAndScramble
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(traverse_and_scramble_exports);
|
|
25
|
+
function traverseAndScramble(node, { excludes = [] } = {}) {
|
|
26
|
+
if (node instanceof Element && excludes.some((selector) => node.matches(selector))) {
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
node.childNodes.forEach((child) => {
|
|
30
|
+
if (child.nodeType === 3) {
|
|
31
|
+
child.nodeValue = scrambleText(child.nodeValue);
|
|
32
|
+
} else if (child.nodeType === 1 && child instanceof Element) {
|
|
33
|
+
traverseAndScramble(child, { excludes });
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
function scrambleText(text) {
|
|
38
|
+
return text.split("").map((char) => {
|
|
39
|
+
if (/^[A-Za-z0-9]$/.test(char)) {
|
|
40
|
+
const randomCharCode = Math.random() < 26 / 36 ? Math.floor(Math.random() * 26) + (char === char.toUpperCase() ? 65 : 97) : Math.floor(Math.random() * 10) + 48;
|
|
41
|
+
return String.fromCharCode(randomCharCode);
|
|
42
|
+
} else {
|
|
43
|
+
return char;
|
|
44
|
+
}
|
|
45
|
+
}).join("");
|
|
46
|
+
}
|
|
47
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
48
|
+
0 && (module.exports = {
|
|
49
|
+
traverseAndScramble
|
|
50
|
+
});
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
|
|
19
|
+
// src/lib/arrays/index.js
|
|
20
|
+
var arrays_exports = {};
|
|
21
|
+
__export(arrays_exports, {
|
|
22
|
+
isLastItem: () => isLastItem,
|
|
23
|
+
joinWithConjunction: () => joinWithConjunction,
|
|
24
|
+
last: () => last,
|
|
25
|
+
lastArrayItem: () => lastArrayItem,
|
|
26
|
+
shuffle: () => shuffle,
|
|
27
|
+
sort: () => sort,
|
|
28
|
+
splitArray: () => splitArray,
|
|
29
|
+
uniqueArray: () => uniqueArray
|
|
30
|
+
});
|
|
31
|
+
module.exports = __toCommonJS(arrays_exports);
|
|
32
|
+
|
|
33
|
+
// src/lib/arrays/item-position.js
|
|
34
|
+
function last(array, index) {
|
|
35
|
+
console.warn("last is deprecated. Use isLastItem instead.");
|
|
36
|
+
return index === array.length - 1;
|
|
37
|
+
}
|
|
38
|
+
function isLastItem(array, index) {
|
|
39
|
+
return index === array.length - 1;
|
|
40
|
+
}
|
|
41
|
+
function lastArrayItem(array) {
|
|
42
|
+
return array[array.length - 1];
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
// src/lib/arrays/join.js
|
|
46
|
+
function joinWithConjunction(array, { conjunction = "and" } = {}) {
|
|
47
|
+
if (!array?.length) return "";
|
|
48
|
+
if (array.length === 1) return array[0];
|
|
49
|
+
if (array.length === 2) return `${array[0]} ${conjunction} ${array[1]}`;
|
|
50
|
+
const lastItem = lastArrayItem(array);
|
|
51
|
+
const rest = array.slice(0, -1);
|
|
52
|
+
return `${rest.join(", ")} ${conjunction} ${lastItem}`;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
// src/lib/arrays/shuffle.js
|
|
56
|
+
function shuffle(array) {
|
|
57
|
+
const clone = array.slice();
|
|
58
|
+
let currentIndex = array.length;
|
|
59
|
+
let temporaryValue;
|
|
60
|
+
let randomIndex;
|
|
61
|
+
while (currentIndex !== 0) {
|
|
62
|
+
randomIndex = Math.floor(Math.random() * currentIndex);
|
|
63
|
+
currentIndex -= 1;
|
|
64
|
+
temporaryValue = clone[currentIndex];
|
|
65
|
+
clone[currentIndex] = clone[randomIndex];
|
|
66
|
+
clone[randomIndex] = temporaryValue;
|
|
67
|
+
}
|
|
68
|
+
return clone;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
// src/lib/objects/nested-property.js
|
|
72
|
+
function getNestedValue(object, path) {
|
|
73
|
+
return path.split(".").reduce((acc, part) => acc?.[part], object);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
// src/lib/arrays/sort.js
|
|
77
|
+
function sort(array, { props = null, reverse = false } = {}) {
|
|
78
|
+
const clone = array.slice();
|
|
79
|
+
if (props === null) {
|
|
80
|
+
return clone.sort((a, b) => {
|
|
81
|
+
const comparison = compareValues(a, b);
|
|
82
|
+
return reverse ? -comparison : comparison;
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
const properties = Array.isArray(props) ? props : [props];
|
|
86
|
+
return clone.sort((a, b) => {
|
|
87
|
+
for (const property of properties) {
|
|
88
|
+
const aValue = getNestedValue(a, property);
|
|
89
|
+
const bValue = getNestedValue(b, property);
|
|
90
|
+
if (aValue === bValue) continue;
|
|
91
|
+
if (aValue == null) return 1;
|
|
92
|
+
if (bValue == null) return -1;
|
|
93
|
+
const comparison = compareValues(aValue, bValue);
|
|
94
|
+
return reverse ? -comparison : comparison;
|
|
95
|
+
}
|
|
96
|
+
return 0;
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
function compareValues(a, b) {
|
|
100
|
+
if (typeof a === "number" && typeof b === "number") return a - b;
|
|
101
|
+
if (typeof a === "string" && typeof b === "string") return a.localeCompare(b);
|
|
102
|
+
const aDate = new Date(a);
|
|
103
|
+
const bDate = new Date(b);
|
|
104
|
+
const aTime = aDate.getTime();
|
|
105
|
+
const bTime = bDate.getTime();
|
|
106
|
+
if (!isNaN(aTime) && !isNaN(bTime)) return aTime - bTime;
|
|
107
|
+
return String(a).localeCompare(String(b));
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
// src/lib/arrays/split-array.js
|
|
111
|
+
function splitArray(array, predicate) {
|
|
112
|
+
const ret = {
|
|
113
|
+
picked: [],
|
|
114
|
+
omitted: []
|
|
115
|
+
};
|
|
116
|
+
array.forEach((item, index, arr) => {
|
|
117
|
+
if (predicate(item, index, arr)) ret.picked.push(item);
|
|
118
|
+
else ret.omitted.push(item);
|
|
119
|
+
});
|
|
120
|
+
ret.p = ret.picked;
|
|
121
|
+
ret.o = ret.omitted;
|
|
122
|
+
return ret;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
// src/lib/arrays/unique.js
|
|
126
|
+
function uniqueArray(array) {
|
|
127
|
+
return Array.from(new Set(array));
|
|
128
|
+
}
|
|
129
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
130
|
+
0 && (module.exports = {
|
|
131
|
+
isLastItem,
|
|
132
|
+
joinWithConjunction,
|
|
133
|
+
last,
|
|
134
|
+
lastArrayItem,
|
|
135
|
+
shuffle,
|
|
136
|
+
sort,
|
|
137
|
+
splitArray,
|
|
138
|
+
uniqueArray
|
|
139
|
+
});
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
|
|
19
|
+
// src/lib/arrays/item-position.js
|
|
20
|
+
var item_position_exports = {};
|
|
21
|
+
__export(item_position_exports, {
|
|
22
|
+
isLastItem: () => isLastItem,
|
|
23
|
+
last: () => last,
|
|
24
|
+
lastArrayItem: () => lastArrayItem
|
|
25
|
+
});
|
|
26
|
+
module.exports = __toCommonJS(item_position_exports);
|
|
27
|
+
function last(array, index) {
|
|
28
|
+
console.warn("last is deprecated. Use isLastItem instead.");
|
|
29
|
+
return index === array.length - 1;
|
|
30
|
+
}
|
|
31
|
+
function isLastItem(array, index) {
|
|
32
|
+
return index === array.length - 1;
|
|
33
|
+
}
|
|
34
|
+
function lastArrayItem(array) {
|
|
35
|
+
return array[array.length - 1];
|
|
36
|
+
}
|
|
37
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
38
|
+
0 && (module.exports = {
|
|
39
|
+
isLastItem,
|
|
40
|
+
last,
|
|
41
|
+
lastArrayItem
|
|
42
|
+
});
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
|
|
19
|
+
// src/lib/arrays/join.js
|
|
20
|
+
var join_exports = {};
|
|
21
|
+
__export(join_exports, {
|
|
22
|
+
joinWithConjunction: () => joinWithConjunction
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(join_exports);
|
|
25
|
+
|
|
26
|
+
// src/lib/arrays/item-position.js
|
|
27
|
+
function lastArrayItem(array) {
|
|
28
|
+
return array[array.length - 1];
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
// src/lib/arrays/join.js
|
|
32
|
+
function joinWithConjunction(array, { conjunction = "and" } = {}) {
|
|
33
|
+
if (!array?.length) return "";
|
|
34
|
+
if (array.length === 1) return array[0];
|
|
35
|
+
if (array.length === 2) return `${array[0]} ${conjunction} ${array[1]}`;
|
|
36
|
+
const lastItem = lastArrayItem(array);
|
|
37
|
+
const rest = array.slice(0, -1);
|
|
38
|
+
return `${rest.join(", ")} ${conjunction} ${lastItem}`;
|
|
39
|
+
}
|
|
40
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
41
|
+
0 && (module.exports = {
|
|
42
|
+
joinWithConjunction
|
|
43
|
+
});
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
|
|
19
|
+
// src/lib/arrays/shuffle.js
|
|
20
|
+
var shuffle_exports = {};
|
|
21
|
+
__export(shuffle_exports, {
|
|
22
|
+
shuffle: () => shuffle
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(shuffle_exports);
|
|
25
|
+
function shuffle(array) {
|
|
26
|
+
const clone = array.slice();
|
|
27
|
+
let currentIndex = array.length;
|
|
28
|
+
let temporaryValue;
|
|
29
|
+
let randomIndex;
|
|
30
|
+
while (currentIndex !== 0) {
|
|
31
|
+
randomIndex = Math.floor(Math.random() * currentIndex);
|
|
32
|
+
currentIndex -= 1;
|
|
33
|
+
temporaryValue = clone[currentIndex];
|
|
34
|
+
clone[currentIndex] = clone[randomIndex];
|
|
35
|
+
clone[randomIndex] = temporaryValue;
|
|
36
|
+
}
|
|
37
|
+
return clone;
|
|
38
|
+
}
|
|
39
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
40
|
+
0 && (module.exports = {
|
|
41
|
+
shuffle
|
|
42
|
+
});
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
|
|
19
|
+
// src/lib/arrays/sort.js
|
|
20
|
+
var sort_exports = {};
|
|
21
|
+
__export(sort_exports, {
|
|
22
|
+
sort: () => sort
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(sort_exports);
|
|
25
|
+
|
|
26
|
+
// src/lib/objects/nested-property.js
|
|
27
|
+
function getNestedValue(object, path) {
|
|
28
|
+
return path.split(".").reduce((acc, part) => acc?.[part], object);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
// src/lib/arrays/sort.js
|
|
32
|
+
function sort(array, { props = null, reverse = false } = {}) {
|
|
33
|
+
const clone = array.slice();
|
|
34
|
+
if (props === null) {
|
|
35
|
+
return clone.sort((a, b) => {
|
|
36
|
+
const comparison = compareValues(a, b);
|
|
37
|
+
return reverse ? -comparison : comparison;
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
const properties = Array.isArray(props) ? props : [props];
|
|
41
|
+
return clone.sort((a, b) => {
|
|
42
|
+
for (const property of properties) {
|
|
43
|
+
const aValue = getNestedValue(a, property);
|
|
44
|
+
const bValue = getNestedValue(b, property);
|
|
45
|
+
if (aValue === bValue) continue;
|
|
46
|
+
if (aValue == null) return 1;
|
|
47
|
+
if (bValue == null) return -1;
|
|
48
|
+
const comparison = compareValues(aValue, bValue);
|
|
49
|
+
return reverse ? -comparison : comparison;
|
|
50
|
+
}
|
|
51
|
+
return 0;
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
function compareValues(a, b) {
|
|
55
|
+
if (typeof a === "number" && typeof b === "number") return a - b;
|
|
56
|
+
if (typeof a === "string" && typeof b === "string") return a.localeCompare(b);
|
|
57
|
+
const aDate = new Date(a);
|
|
58
|
+
const bDate = new Date(b);
|
|
59
|
+
const aTime = aDate.getTime();
|
|
60
|
+
const bTime = bDate.getTime();
|
|
61
|
+
if (!isNaN(aTime) && !isNaN(bTime)) return aTime - bTime;
|
|
62
|
+
return String(a).localeCompare(String(b));
|
|
63
|
+
}
|
|
64
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
65
|
+
0 && (module.exports = {
|
|
66
|
+
sort
|
|
67
|
+
});
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
|
|
19
|
+
// src/lib/arrays/split-array.js
|
|
20
|
+
var split_array_exports = {};
|
|
21
|
+
__export(split_array_exports, {
|
|
22
|
+
splitArray: () => splitArray
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(split_array_exports);
|
|
25
|
+
function splitArray(array, predicate) {
|
|
26
|
+
const ret = {
|
|
27
|
+
picked: [],
|
|
28
|
+
omitted: []
|
|
29
|
+
};
|
|
30
|
+
array.forEach((item, index, arr) => {
|
|
31
|
+
if (predicate(item, index, arr)) ret.picked.push(item);
|
|
32
|
+
else ret.omitted.push(item);
|
|
33
|
+
});
|
|
34
|
+
ret.p = ret.picked;
|
|
35
|
+
ret.o = ret.omitted;
|
|
36
|
+
return ret;
|
|
37
|
+
}
|
|
38
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
39
|
+
0 && (module.exports = {
|
|
40
|
+
splitArray
|
|
41
|
+
});
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
|
|
19
|
+
// src/lib/arrays/unique.js
|
|
20
|
+
var unique_exports = {};
|
|
21
|
+
__export(unique_exports, {
|
|
22
|
+
uniqueArray: () => uniqueArray
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(unique_exports);
|
|
25
|
+
function uniqueArray(array) {
|
|
26
|
+
return Array.from(new Set(array));
|
|
27
|
+
}
|
|
28
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
29
|
+
0 && (module.exports = {
|
|
30
|
+
uniqueArray
|
|
31
|
+
});
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
|
|
19
|
+
// src/lib/auth/index.js
|
|
20
|
+
var auth_exports = {};
|
|
21
|
+
__export(auth_exports, {
|
|
22
|
+
AuthManager: () => AuthManager,
|
|
23
|
+
RouteManager: () => RouteManager
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(auth_exports);
|
|
26
|
+
|
|
27
|
+
// src/lib/auth/route-manager.js
|
|
28
|
+
function RouteManager(config) {
|
|
29
|
+
const { protectedRoutes, bypassRoutes } = config;
|
|
30
|
+
return {
|
|
31
|
+
isProtectedRoute(pathname) {
|
|
32
|
+
return isMatch(protectedRoutes, pathname);
|
|
33
|
+
},
|
|
34
|
+
isBypassRoute(pathname) {
|
|
35
|
+
return isMatch(bypassRoutes, pathname);
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
function AuthManager(config) {
|
|
40
|
+
return RouteManager(config);
|
|
41
|
+
}
|
|
42
|
+
function isMatch(routeConfig, pathname) {
|
|
43
|
+
const { is, startsWith, includes } = routeConfig;
|
|
44
|
+
const isExactMatch = is && is.some((u) => pathname === u);
|
|
45
|
+
const startsWithMatch = startsWith && startsWith.some((u) => pathname.startsWith(u));
|
|
46
|
+
const includesMatch = includes && includes.some((u) => pathname.includes(u));
|
|
47
|
+
return isExactMatch || startsWithMatch || includesMatch;
|
|
48
|
+
}
|
|
49
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
50
|
+
0 && (module.exports = {
|
|
51
|
+
AuthManager,
|
|
52
|
+
RouteManager
|
|
53
|
+
});
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
|
|
19
|
+
// src/lib/auth/route-manager.js
|
|
20
|
+
var route_manager_exports = {};
|
|
21
|
+
__export(route_manager_exports, {
|
|
22
|
+
AuthManager: () => AuthManager,
|
|
23
|
+
RouteManager: () => RouteManager
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(route_manager_exports);
|
|
26
|
+
function RouteManager(config) {
|
|
27
|
+
const { protectedRoutes, bypassRoutes } = config;
|
|
28
|
+
return {
|
|
29
|
+
isProtectedRoute(pathname) {
|
|
30
|
+
return isMatch(protectedRoutes, pathname);
|
|
31
|
+
},
|
|
32
|
+
isBypassRoute(pathname) {
|
|
33
|
+
return isMatch(bypassRoutes, pathname);
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
function AuthManager(config) {
|
|
38
|
+
return RouteManager(config);
|
|
39
|
+
}
|
|
40
|
+
function isMatch(routeConfig, pathname) {
|
|
41
|
+
const { is, startsWith, includes } = routeConfig;
|
|
42
|
+
const isExactMatch = is && is.some((u) => pathname === u);
|
|
43
|
+
const startsWithMatch = startsWith && startsWith.some((u) => pathname.startsWith(u));
|
|
44
|
+
const includesMatch = includes && includes.some((u) => pathname.includes(u));
|
|
45
|
+
return isExactMatch || startsWithMatch || includesMatch;
|
|
46
|
+
}
|
|
47
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
48
|
+
0 && (module.exports = {
|
|
49
|
+
AuthManager,
|
|
50
|
+
RouteManager
|
|
51
|
+
});
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
|
|
19
|
+
// src/lib/checks.js
|
|
20
|
+
var checks_exports = {};
|
|
21
|
+
__export(checks_exports, {
|
|
22
|
+
getType: () => getType,
|
|
23
|
+
isArray: () => isArray,
|
|
24
|
+
isObject: () => isObject,
|
|
25
|
+
notObject: () => notObject
|
|
26
|
+
});
|
|
27
|
+
module.exports = __toCommonJS(checks_exports);
|
|
28
|
+
function isObject(x) {
|
|
29
|
+
return typeof x === "object" && !Array.isArray(x) && x !== null;
|
|
30
|
+
}
|
|
31
|
+
function isArray(x) {
|
|
32
|
+
return Array.isArray(x);
|
|
33
|
+
}
|
|
34
|
+
function notObject(x) {
|
|
35
|
+
return !isObject(x);
|
|
36
|
+
}
|
|
37
|
+
function getType(x) {
|
|
38
|
+
if (typeof x === "string") return "string";
|
|
39
|
+
if (typeof x === "number") {
|
|
40
|
+
if (Number.isInteger(x)) return "integer";
|
|
41
|
+
return "float";
|
|
42
|
+
}
|
|
43
|
+
if (typeof x === "boolean") return "boolean";
|
|
44
|
+
if (typeof x === "function") return "function";
|
|
45
|
+
if (typeof x === "undefined") return "undefined";
|
|
46
|
+
if (typeof x === "symbol") return "symbol";
|
|
47
|
+
if (typeof x === "bigint") return "bigint";
|
|
48
|
+
if (Array.isArray(x)) return "array";
|
|
49
|
+
if (typeof x === "object") return "object";
|
|
50
|
+
return "unknown";
|
|
51
|
+
}
|
|
52
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
53
|
+
0 && (module.exports = {
|
|
54
|
+
getType,
|
|
55
|
+
isArray,
|
|
56
|
+
isObject,
|
|
57
|
+
notObject
|
|
58
|
+
});
|