@design-edito/tools 0.3.3 → 0.3.4
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/arrays/dedupe/index.js +0 -2
- package/agnostic/arrays/find-duplicates/index.js +0 -2
- package/agnostic/arrays/is-array-of/index.js +2 -4
- package/agnostic/arrays/make/index.js +0 -2
- package/agnostic/arrays/random-pick/index.js +20 -5
- package/agnostic/arrays/shuffle/index.js +0 -2
- package/agnostic/booleans/is-falsy/index.js +10 -7
- package/agnostic/colors/channels/index.js +194 -12
- package/agnostic/colors/contrast/index.js +2 -13
- package/agnostic/colors/convert/index.js +553 -25
- package/agnostic/colors/distance/index.js +1 -10
- package/agnostic/colors/grayscale/index.js +6 -13
- package/agnostic/colors/invert/index.js +2 -14
- package/agnostic/colors/lerp/index.js +12 -19
- package/agnostic/colors/luminance/index.js +16 -10
- package/agnostic/colors/palette/index.js +1 -12
- package/agnostic/colors/rotate/index.js +36 -11
- package/agnostic/colors/tidy/index.js +55 -9
- package/agnostic/colors/typechecks/index.js +90 -14
- package/agnostic/colors/types.js +151 -4
- package/agnostic/css/bem/index.js +2 -9
- package/agnostic/css/generate-nice-color/index.js +0 -2
- package/agnostic/css/is-valid-css-class-name/index.js +5 -5
- package/agnostic/css/scale/index.js +2 -8
- package/agnostic/css/styles-set/index.js +1 -6
- package/agnostic/errors/register/index.js +0 -2
- package/agnostic/errors/unknown-to-string/index.js +7 -4
- package/agnostic/html/get-node-ancestors/index.js +18 -5
- package/agnostic/html/get-position-inside-parent/index.js +0 -2
- package/agnostic/html/hyper-json/cast/index.js +105 -22
- package/agnostic/html/hyper-json/index.js +16 -43
- package/agnostic/html/hyper-json/method/index.js +11 -4
- package/agnostic/html/hyper-json/serialize/index.js +67 -8
- package/agnostic/html/hyper-json/smart-tags/coalesced/add/index.js +17 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/addclass/index.js +31 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/and/index.js +16 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/append/index.js +39 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/at/index.js +41 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/call/index.js +31 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/clone/index.js +12 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/deleteproperties/index.js +42 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/equals/index.js +28 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/getattribute/index.js +26 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/getproperties/index.js +21 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/getproperty/index.js +55 -23
- package/agnostic/html/hyper-json/smart-tags/coalesced/hjparse/index.js +23 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/hjstringify/index.js +68 -24
- package/agnostic/html/hyper-json/smart-tags/coalesced/if/index.js +21 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/initialize/index.js +34 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/join/index.js +18 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/length/index.js +19 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/map/index.js +33 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/negate/index.js +12 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/notrailing/index.js +35 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/or/index.js +16 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/pickrandom/index.js +19 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/populate/index.js +68 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/print/index.js +24 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/push/index.js +12 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/pusheach/index.js +32 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/recordtoarray/index.js +12 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/removeattribute/index.js +48 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/removeclass/index.js +31 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/renameproperty/index.js +40 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/replace/index.js +48 -23
- package/agnostic/html/hyper-json/smart-tags/coalesced/select/index.js +34 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/set/index.js +28 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/setattribute/index.js +48 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/setproperty/index.js +170 -23
- package/agnostic/html/hyper-json/smart-tags/coalesced/sorton/index.js +78 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/split/index.js +20 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/spread/index.js +22 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/toarray/index.js +13 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/toboolean/index.js +13 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/toelement/index.js +18 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/toggleclass/index.js +31 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/tonodelist/index.js +13 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/tonull/index.js +12 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/tonumber/index.js +13 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/torecord/index.js +13 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/toref/index.js +14 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/tostring/index.js +13 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/totext/index.js +13 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/transformselected/index.js +78 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/trim/index.js +15 -22
- package/agnostic/html/hyper-json/smart-tags/index.js +28 -7
- package/agnostic/html/hyper-json/smart-tags/isolated/any/index.js +14 -8
- package/agnostic/html/hyper-json/smart-tags/isolated/array/index.js +11 -8
- package/agnostic/html/hyper-json/smart-tags/isolated/boolean/index.js +13 -22
- package/agnostic/html/hyper-json/smart-tags/isolated/element/index.js +24 -22
- package/agnostic/html/hyper-json/smart-tags/isolated/get/index.js +20 -22
- package/agnostic/html/hyper-json/smart-tags/isolated/global/index.js +15 -22
- package/agnostic/html/hyper-json/smart-tags/isolated/guess/index.js +47 -22
- package/agnostic/html/hyper-json/smart-tags/isolated/nodelist/index.js +22 -22
- package/agnostic/html/hyper-json/smart-tags/isolated/null/index.js +11 -8
- package/agnostic/html/hyper-json/smart-tags/isolated/number/index.js +19 -22
- package/agnostic/html/hyper-json/smart-tags/isolated/record/index.js +15 -22
- package/agnostic/html/hyper-json/smart-tags/isolated/ref/index.js +38 -23
- package/agnostic/html/hyper-json/smart-tags/isolated/string/index.js +19 -22
- package/agnostic/html/hyper-json/smart-tags/isolated/text/index.js +19 -22
- package/agnostic/html/hyper-json/transformer/index.js +124 -6
- package/agnostic/html/hyper-json/tree/index.js +423 -22
- package/agnostic/html/hyper-json/types/index.js +16 -4
- package/agnostic/html/hyper-json/utils/index.js +426 -22
- package/agnostic/html/insert-node/index.js +14 -4
- package/agnostic/html/placeholders/index.js +0 -2
- package/agnostic/html/replace-in-element/index.js +1 -6
- package/agnostic/html/selector-to-element/index.js +2 -6
- package/agnostic/html/string-to-nodes/index.js +2 -6
- package/agnostic/misc/assert/index.js +8 -15
- package/agnostic/misc/cast/index.js +1 -6
- package/agnostic/misc/connection/index.js +2 -6
- package/agnostic/misc/crawler/index.js +1 -5
- package/agnostic/misc/crossenv/detect-runtime/index.js +8 -10
- package/agnostic/misc/crossenv/types.js +11 -4
- package/agnostic/misc/crossenv/window/index.js +22 -7
- package/agnostic/misc/data-size/index.js +0 -2
- package/agnostic/misc/is-constructor-function/index.js +4 -4
- package/agnostic/misc/is-nullish/index.js +8 -6
- package/agnostic/misc/logs/logger/index.js +0 -2
- package/agnostic/misc/logs/make-text-block/index.js +11 -4
- package/agnostic/misc/logs/styles/index.js +18 -5
- package/agnostic/misc/lorem-ipsum/index.js +2 -8
- package/agnostic/misc/normalize-extension/index.js +0 -2
- package/agnostic/misc/outcome/index.js +10 -6
- package/agnostic/numbers/absolute-modulo/index.js +4 -4
- package/agnostic/numbers/approximate-rational/index.js +0 -2
- package/agnostic/numbers/clamp/index.js +6 -4
- package/agnostic/numbers/geometric-progressions/index.js +14 -4
- package/agnostic/numbers/interpolate/index.js +0 -2
- package/agnostic/numbers/round/index.js +13 -6
- package/agnostic/objects/deep-get-property/index.js +1 -5
- package/agnostic/objects/enums/is-in-enum/index.js +9 -4
- package/agnostic/objects/flatten-getters/index.js +0 -2
- package/agnostic/objects/is-object/index.js +7 -5
- package/agnostic/objects/is-record/index.js +5 -4
- package/agnostic/objects/record-format/index.js +0 -2
- package/agnostic/objects/record-map/index.js +10 -4
- package/agnostic/objects/validation/index.js +0 -2
- package/agnostic/optim/memoize/index.js +0 -2
- package/agnostic/optim/throttle-debounce/index.js +0 -2
- package/agnostic/random/hex-char/index.js +7 -5
- package/agnostic/random/random/index.js +12 -5
- package/agnostic/random/uuid/index.js +11 -7
- package/agnostic/regexps/index.js +0 -2
- package/agnostic/sanitization/file-name/index.js +6 -4
- package/agnostic/sanitization/html/index.js +3 -7
- package/agnostic/sanitization/path/index.js +1 -5
- package/agnostic/sanitization/user-input/index.js +0 -2
- package/agnostic/strings/char-codes/index.js +0 -2
- package/agnostic/strings/matches/index.js +14 -6
- package/agnostic/strings/normalize-indent/index.js +0 -2
- package/agnostic/strings/parse-table/index.js +6 -11
- package/agnostic/strings/replace-all/index.js +13 -4
- package/agnostic/strings/to-alphanum/index.js +0 -2
- package/agnostic/strings/trim/index.js +7 -5
- package/agnostic/time/dates/format-date/index.js +0 -2
- package/agnostic/time/duration/index.js +0 -2
- package/agnostic/time/timeout/index.js +0 -2
- package/agnostic/time/transitions/index.js +1 -5
- package/agnostic/time/wait/index.js +6 -4
- package/components/Comp/index.js +0 -2
- package/node/@aws-s3/storage/directory/copy-dir/index.js +53 -5
- package/node/@aws-s3/storage/directory/list/index.js +22 -5
- package/node/@aws-s3/storage/directory/move-dir/index.js +66 -5
- package/node/@aws-s3/storage/directory/remove-dir/index.js +49 -5
- package/node/@aws-s3/storage/file/copy/index.js +34 -5
- package/node/@aws-s3/storage/file/download/index.js +20 -5
- package/node/@aws-s3/storage/file/exists/index.js +25 -5
- package/node/@aws-s3/storage/file/move/index.js +45 -5
- package/node/@aws-s3/storage/file/remove/index.js +25 -5
- package/node/@aws-s3/storage/file/stat/index.js +27 -5
- package/node/@aws-s3/storage/file/upload/index.js +45 -5
- package/node/@express/@multer/index.js +5 -12
- package/node/@google-cloud/storage/bucket/get-metadata/index.js +4 -11
- package/node/@google-cloud/storage/directory/copy-dir/index.js +26 -6
- package/node/@google-cloud/storage/directory/list/index.js +18 -6
- package/node/@google-cloud/storage/directory/move-dir/index.js +26 -6
- package/node/@google-cloud/storage/directory/remove-dir/index.js +22 -6
- package/node/@google-cloud/storage/file/copy/index.js +24 -6
- package/node/@google-cloud/storage/file/download/index.js +17 -6
- package/node/@google-cloud/storage/file/exists/index.js +14 -6
- package/node/@google-cloud/storage/file/generate-signed-url/index.js +4 -11
- package/node/@google-cloud/storage/file/get-metadata/index.js +4 -11
- package/node/@google-cloud/storage/file/get-permissions/index.js +4 -11
- package/node/@google-cloud/storage/file/move/index.js +26 -6
- package/node/@google-cloud/storage/file/remove/index.js +19 -6
- package/node/@google-cloud/storage/file/revoke-signed-urls/index.js +5 -16
- package/node/@google-cloud/storage/file/stat/index.js +21 -6
- package/node/@google-cloud/storage/file/update-metadata/index.js +4 -11
- package/node/@google-cloud/storage/file/upload/index.js +31 -6
- package/node/cloud-storage/clients/index.js +9 -7
- package/node/cloud-storage/operations/copy-dir/index.js +21 -26
- package/node/cloud-storage/operations/copy-file/index.js +12 -25
- package/node/cloud-storage/operations/download-file/index.js +12 -25
- package/node/cloud-storage/operations/exists-file/index.js +12 -25
- package/node/cloud-storage/operations/list-dir/index.js +12 -25
- package/node/cloud-storage/operations/move-dir/index.js +14 -27
- package/node/cloud-storage/operations/move-file/index.js +12 -25
- package/node/cloud-storage/operations/remove-dir/index.js +14 -27
- package/node/cloud-storage/operations/remove-file/index.js +12 -25
- package/node/cloud-storage/operations/stat-file/index.js +12 -25
- package/node/cloud-storage/operations/upload-file/index.js +12 -25
- package/node/encryption/@aes-256-gcm/buffer/index.js +7 -12
- package/node/encryption/@aes-256-gcm/uint8-array/index.js +36 -7
- package/node/encryption/key/index.js +0 -2
- package/node/files/is-in-directory/index.js +0 -2
- package/node/files/read-write/index.js +0 -2
- package/node/files/subpaths/index.js +3 -7
- package/node/ftps/directory/copy-dir/index.js +45 -6
- package/node/ftps/directory/list/index.js +12 -6
- package/node/ftps/directory/move-dir/index.js +25 -6
- package/node/ftps/directory/remove-dir/index.js +27 -6
- package/node/ftps/file/copy/index.js +30 -6
- package/node/ftps/file/download/index.js +15 -6
- package/node/ftps/file/exists/index.js +17 -6
- package/node/ftps/file/move/index.js +29 -6
- package/node/ftps/file/remove/index.js +25 -6
- package/node/ftps/file/stat/index.js +21 -6
- package/node/ftps/file/upload/index.js +30 -6
- package/node/images/create/index.js +1 -11
- package/node/images/format/index.js +87 -104
- package/node/images/metadata/index.js +1 -11
- package/node/images/transform/index.js +73 -130
- package/node/images/transform/operations/blur/index.js +12 -7
- package/node/images/transform/operations/brighten/index.js +12 -7
- package/node/images/transform/operations/extend/index.js +24 -14
- package/node/images/transform/operations/extract/index.js +17 -7
- package/node/images/transform/operations/flatten/index.js +19 -14
- package/node/images/transform/operations/flip/index.js +4 -4
- package/node/images/transform/operations/flop/index.js +4 -4
- package/node/images/transform/operations/hue/index.js +14 -7
- package/node/images/transform/operations/level/index.js +18 -7
- package/node/images/transform/operations/lighten/index.js +14 -7
- package/node/images/transform/operations/normalize/index.js +15 -7
- package/node/images/transform/operations/overlay/index.js +87 -14
- package/node/images/transform/operations/resize/index.js +45 -14
- package/node/images/transform/operations/rotate/index.js +19 -14
- package/node/images/transform/operations/saturate/index.js +16 -7
- package/node/images/types.js +27 -5
- package/node/images/utils/index.js +35 -13
- package/node/process/on-exit/index.js +0 -2
- package/node/process/prompt-continue/index.js +2 -1667
- package/node/process/spawner/index.js +8 -20
- package/node/sftp/directory/copy-dir/index.js +43 -6
- package/node/sftp/directory/list/index.js +12 -6
- package/node/sftp/directory/move-dir/index.js +22 -6
- package/node/sftp/directory/remove-dir/index.js +27 -6
- package/node/sftp/file/copy/index.js +28 -6
- package/node/sftp/file/download/index.js +15 -6
- package/node/sftp/file/exists/index.js +12 -6
- package/node/sftp/file/move/index.js +25 -6
- package/node/sftp/file/remove/index.js +18 -6
- package/node/sftp/file/stat/index.js +21 -6
- package/node/sftp/file/upload/index.js +22 -6
- package/package.json +1 -1
- package/chunks/chunk-2WSVYQ5Q.js +0 -77
- 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-5H3IRSOB.js +0 -8
- 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-6KOJFWH3.js +0 -47
- 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-ASWI3EO6.js +0 -25
- package/chunks/chunk-ASXK7XCC.js +0 -18
- 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-FXISVWGE.js +0 -60
- package/chunks/chunk-H4PP6AHP.js +0 -15
- package/chunks/chunk-HC6ZOHCS.js +0 -14
- package/chunks/chunk-HEY7J6GI.js +0 -37
- package/chunks/chunk-HMPY32F7.js +0 -34
- 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-MHNUCHPP.js +0 -26
- package/chunks/chunk-MSAAQTCE.js +0 -207
- package/chunks/chunk-MZYCKOLN.js +0 -103
- 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-PTJO2TGI.js +0 -23
- package/chunks/chunk-PTN2V757.js +0 -35
- package/chunks/chunk-QEKI6WGQ.js +0 -27
- package/chunks/chunk-QFBVETGF.js +0 -34
- package/chunks/chunk-QHEWBOQI.js +0 -19
- package/chunks/chunk-QXAJXTXV.js +0 -19
- package/chunks/chunk-R3AWQXMY.js +0 -20
- package/chunks/chunk-RGQNRTBI.js +0 -55
- package/chunks/chunk-RNXRHCHQ.js +0 -633
- 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-TAURL7GX.js +0 -2684
- package/chunks/chunk-TLWVLCIQ.js +0 -39
- package/chunks/chunk-TTJXJX4E.js +0 -48
- package/chunks/chunk-ULYGDEW2.js +0 -25
- package/chunks/chunk-UR5BUIPU.js +0 -26
- 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-ZKIQ753F.js +0 -23
- package/chunks/chunk-ZTPRFEPV.js +0 -32
|
@@ -1,25 +1,108 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
import "
|
|
5
|
-
import "
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
1
|
+
// src/agnostic/html/hyper-json/cast/index.ts
|
|
2
|
+
import { isRecord } from "../../../objects/is-record/index.js";
|
|
3
|
+
import * as Window from "../../../misc/crossenv/window/index.js";
|
|
4
|
+
import { Utils } from "../utils/index.js";
|
|
5
|
+
import { Method } from "../method/index.js";
|
|
6
|
+
var Cast;
|
|
7
|
+
((Cast2) => {
|
|
8
|
+
Cast2.toNull = () => null;
|
|
9
|
+
Cast2.toBoolean = (input) => {
|
|
10
|
+
const { Text } = Window.get();
|
|
11
|
+
if (input === null) return false;
|
|
12
|
+
if (typeof input === "boolean") return input;
|
|
13
|
+
if (typeof input === "number") return input !== 0;
|
|
14
|
+
if (typeof input === "string" || input instanceof Text) {
|
|
15
|
+
const strInput = (0, Cast2.toString)(input);
|
|
16
|
+
if (strInput.trim() === "") return false;
|
|
17
|
+
if (strInput.trim().toLowerCase() === "false") return false;
|
|
18
|
+
return true;
|
|
19
|
+
}
|
|
20
|
+
return true;
|
|
21
|
+
};
|
|
22
|
+
Cast2.toNumber = (input) => {
|
|
23
|
+
const { Text } = Window.get();
|
|
24
|
+
if (typeof input === "boolean") return input ? 1 : 0;
|
|
25
|
+
if (typeof input === "number") return input;
|
|
26
|
+
if (typeof input === "string") return parseFloat(`${input}`);
|
|
27
|
+
if (input instanceof Text) return parseFloat(`${input.textContent}`);
|
|
28
|
+
return 0;
|
|
29
|
+
};
|
|
30
|
+
Cast2.toString = (input) => {
|
|
31
|
+
if (typeof input === "string") return input;
|
|
32
|
+
if (typeof input === "number" || typeof input === "boolean" || input === null) return `${input}`;
|
|
33
|
+
const { Element, Text, NodeList } = Window.get();
|
|
34
|
+
if (input instanceof Element) return input.outerHTML;
|
|
35
|
+
if (input instanceof Text) return input.textContent ?? "";
|
|
36
|
+
if (input instanceof NodeList) return Array.from(input).map((e) => {
|
|
37
|
+
if (e instanceof Element) return e.outerHTML;
|
|
38
|
+
return e.textContent;
|
|
39
|
+
}).join("");
|
|
40
|
+
if (Array.isArray(input)) return input.map(Cast2.toString).join("");
|
|
41
|
+
if (input instanceof Method) return `[Method:${input.transformer.name}]`;
|
|
42
|
+
return `{${Object.entries(input).map(([key, val]) => `${key}:"${(0, Cast2.toString)(val)}"`).join(",")}}`;
|
|
43
|
+
};
|
|
44
|
+
Cast2.toText = (input) => {
|
|
45
|
+
const { Text, document } = Window.get();
|
|
46
|
+
if (input instanceof Text) return input.cloneNode(true);
|
|
47
|
+
return document.createTextNode((0, Cast2.toString)(input));
|
|
48
|
+
};
|
|
49
|
+
Cast2.toElement = (input, tagName) => {
|
|
50
|
+
const { Element, Text, NodeList, document } = Window.get();
|
|
51
|
+
if (input instanceof Element) return input.cloneNode(true);
|
|
52
|
+
const returned = document.createElement(tagName ?? "div");
|
|
53
|
+
if (input instanceof Text) {
|
|
54
|
+
returned.append(input.cloneNode(true));
|
|
55
|
+
return returned;
|
|
56
|
+
}
|
|
57
|
+
if (input instanceof NodeList) {
|
|
58
|
+
returned.append(...Array.from(input).map((e) => e.cloneNode(true)));
|
|
59
|
+
return returned;
|
|
60
|
+
}
|
|
61
|
+
if (Array.isArray(input)) return returned;
|
|
62
|
+
if (isRecord(input)) return returned;
|
|
63
|
+
returned.innerHTML = `${input}`;
|
|
64
|
+
return returned;
|
|
65
|
+
};
|
|
66
|
+
Cast2.toNodeList = (input) => {
|
|
67
|
+
const { Element, Text, NodeList, document } = Window.get();
|
|
68
|
+
const parentDiv = document.createElement("div");
|
|
69
|
+
if (input instanceof NodeList) {
|
|
70
|
+
parentDiv.append(...Array.from(input).map((i) => i.cloneNode(true)));
|
|
71
|
+
return parentDiv.childNodes;
|
|
72
|
+
}
|
|
73
|
+
if (input instanceof Element || input instanceof Text) {
|
|
74
|
+
parentDiv.append(input.cloneNode(true));
|
|
75
|
+
return parentDiv.childNodes;
|
|
76
|
+
}
|
|
77
|
+
if (Array.isArray(input)) {
|
|
78
|
+
input.forEach((item) => {
|
|
79
|
+
if (typeof item === "number" || typeof item === "boolean" || item === null) parentDiv.append(`${item}`);
|
|
80
|
+
else if (typeof item === "string" || item instanceof Text || item instanceof Element) parentDiv.append(item);
|
|
81
|
+
else if (item instanceof NodeList) parentDiv.append(...Array.from(item));
|
|
82
|
+
else if (Array.isArray(item)) parentDiv.append(...Array.from((0, Cast2.toNodeList)(item)));
|
|
83
|
+
else parentDiv.append((0, Cast2.toString)(item));
|
|
84
|
+
});
|
|
85
|
+
return parentDiv.childNodes;
|
|
86
|
+
}
|
|
87
|
+
if (isRecord(input)) {
|
|
88
|
+
parentDiv.append((0, Cast2.toString)(input));
|
|
89
|
+
return parentDiv.childNodes;
|
|
90
|
+
}
|
|
91
|
+
parentDiv.innerHTML = `${input}`;
|
|
92
|
+
return parentDiv.childNodes;
|
|
93
|
+
};
|
|
94
|
+
Cast2.toArray = (input) => {
|
|
95
|
+
const { NodeList } = Window.get();
|
|
96
|
+
if (Array.isArray(input)) return [...input];
|
|
97
|
+
if (input instanceof NodeList) return Array.from(input);
|
|
98
|
+
return [input];
|
|
99
|
+
};
|
|
100
|
+
Cast2.toRecord = (input) => {
|
|
101
|
+
const isRecord2 = Utils.Tree.TypeChecks.typeCheck(input, "record");
|
|
102
|
+
if (isRecord2.success) return { ...isRecord2.payload };
|
|
103
|
+
return {};
|
|
104
|
+
};
|
|
105
|
+
})(Cast || (Cast = {}));
|
|
23
106
|
export {
|
|
24
107
|
Cast
|
|
25
108
|
};
|
|
@@ -1,49 +1,22 @@
|
|
|
1
|
-
import {
|
|
2
|
-
Cast,
|
|
3
|
-
Tree,
|
|
4
|
-
Utils
|
|
5
|
-
} from "../../../chunks/chunk-TAURL7GX.js";
|
|
6
|
-
import "../../../chunks/chunk-AKNR3U25.js";
|
|
7
|
-
import "../../../chunks/chunk-ZKIQ753F.js";
|
|
8
|
-
import "../../../chunks/chunk-USIYKRNX.js";
|
|
9
|
-
import {
|
|
10
|
-
Types
|
|
11
|
-
} from "../../../chunks/chunk-XEQ2PBT2.js";
|
|
12
|
-
import {
|
|
13
|
-
Serialize
|
|
14
|
-
} from "../../../chunks/chunk-DUCLFPGE.js";
|
|
15
|
-
import {
|
|
16
|
-
SmartTags
|
|
17
|
-
} from "../../../chunks/chunk-HEY7J6GI.js";
|
|
18
|
-
import {
|
|
19
|
-
Transformer
|
|
20
|
-
} from "../../../chunks/chunk-JVMFT3IT.js";
|
|
21
|
-
import {
|
|
22
|
-
Method
|
|
23
|
-
} from "../../../chunks/chunk-RW7VAKJW.js";
|
|
24
|
-
import "../../../chunks/chunk-XA4HVHJ4.js";
|
|
25
|
-
import "../../../chunks/chunk-XNF5MLCQ.js";
|
|
26
|
-
import "../../../chunks/chunk-E6MSDKON.js";
|
|
27
|
-
import "../../../chunks/chunk-YDIBNEGA.js";
|
|
28
|
-
import "../../../chunks/chunk-EPUHVR7J.js";
|
|
29
|
-
import "../../../chunks/chunk-6XL25OZX.js";
|
|
30
|
-
import "../../../chunks/chunk-QEKI6WGQ.js";
|
|
31
|
-
import "../../../chunks/chunk-ROWPCMQY.js";
|
|
32
|
-
import "../../../chunks/chunk-FENXVJYO.js";
|
|
33
|
-
import "../../../chunks/chunk-HQLRJ7XW.js";
|
|
34
|
-
import "../../../chunks/chunk-XCBH6NLF.js";
|
|
35
|
-
|
|
36
1
|
// src/agnostic/html/hyper-json/index.ts
|
|
2
|
+
import { Cast as CastNamespace } from "./cast/index.js";
|
|
3
|
+
import { Method as MethodClass } from "./method/index.js";
|
|
4
|
+
import { Serialize as SerializeNamespace } from "./serialize/index.js";
|
|
5
|
+
import { SmartTags as SmartTagsNamespace } from "./smart-tags/index.js";
|
|
6
|
+
import { Transformer as TransformerClass } from "./transformer/index.js";
|
|
7
|
+
import { Tree as TreeNamespace } from "./tree/index.js";
|
|
8
|
+
import { Types as TypesNamespace } from "./types/index.js";
|
|
9
|
+
import { Utils as UtilsNamespace } from "./utils/index.js";
|
|
37
10
|
var HyperJson;
|
|
38
11
|
((HyperJson2) => {
|
|
39
|
-
HyperJson2.Cast =
|
|
40
|
-
HyperJson2.Method =
|
|
41
|
-
HyperJson2.Serialize =
|
|
42
|
-
HyperJson2.SmartTags =
|
|
43
|
-
HyperJson2.Transformer =
|
|
44
|
-
HyperJson2.Tree =
|
|
45
|
-
HyperJson2.Types =
|
|
46
|
-
HyperJson2.Utils =
|
|
12
|
+
HyperJson2.Cast = CastNamespace;
|
|
13
|
+
HyperJson2.Method = MethodClass;
|
|
14
|
+
HyperJson2.Serialize = SerializeNamespace;
|
|
15
|
+
HyperJson2.SmartTags = SmartTagsNamespace;
|
|
16
|
+
HyperJson2.Transformer = TransformerClass;
|
|
17
|
+
HyperJson2.Tree = TreeNamespace;
|
|
18
|
+
HyperJson2.Types = TypesNamespace;
|
|
19
|
+
HyperJson2.Utils = UtilsNamespace;
|
|
47
20
|
})(HyperJson || (HyperJson = {}));
|
|
48
21
|
export {
|
|
49
22
|
HyperJson
|
|
@@ -1,7 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
// src/agnostic/html/hyper-json/method/index.ts
|
|
2
|
+
var Method = class _Method {
|
|
3
|
+
transformer;
|
|
4
|
+
static clone(method) {
|
|
5
|
+
const { transformer } = method;
|
|
6
|
+
return new _Method(transformer);
|
|
7
|
+
}
|
|
8
|
+
constructor(transformer) {
|
|
9
|
+
this.transformer = transformer;
|
|
10
|
+
}
|
|
11
|
+
};
|
|
5
12
|
export {
|
|
6
13
|
Method
|
|
7
14
|
};
|
|
@@ -1,11 +1,70 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
} from "
|
|
4
|
-
import "
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
// src/agnostic/html/hyper-json/serialize/index.ts
|
|
2
|
+
import * as Window from "../../../misc/crossenv/window/index.js";
|
|
3
|
+
import { Transformer } from "../transformer/index.js";
|
|
4
|
+
import { Method } from "../method/index.js";
|
|
5
|
+
var Serialize;
|
|
6
|
+
((Serialize2) => {
|
|
7
|
+
function serialize(value) {
|
|
8
|
+
const { Text, Element, NodeList } = Window.get();
|
|
9
|
+
if (value === null) return { type: "null", value: null };
|
|
10
|
+
if (typeof value === "boolean" || typeof value === "number" || typeof value === "string") return { type: typeof value, value };
|
|
11
|
+
if (value instanceof Text) return { type: "text", value: value.textContent ?? "" };
|
|
12
|
+
if (value instanceof Element) return { type: "element", value: value.outerHTML };
|
|
13
|
+
if (value instanceof NodeList) return {
|
|
14
|
+
type: "nodelist",
|
|
15
|
+
value: Array.from(value).map(serialize)
|
|
16
|
+
};
|
|
17
|
+
if (Array.isArray(value)) return { type: "array", value: value.map(serialize) };
|
|
18
|
+
if (value instanceof Transformer) return { type: "transformer", value: Transformer.clone(value) };
|
|
19
|
+
if (value instanceof Method) return { type: "method", value: Method.clone(value) };
|
|
20
|
+
return {
|
|
21
|
+
type: "record",
|
|
22
|
+
value: Object.entries(value).reduce((reduced, [key, val]) => ({
|
|
23
|
+
...reduced,
|
|
24
|
+
[key]: serialize(val)
|
|
25
|
+
}), {})
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
Serialize2.serialize = serialize;
|
|
29
|
+
function deserialize(serialized) {
|
|
30
|
+
const { document } = Window.get();
|
|
31
|
+
if (serialized.type === "null") return null;
|
|
32
|
+
if (serialized.type === "boolean") return serialized.value;
|
|
33
|
+
if (serialized.type === "number") return serialized.value;
|
|
34
|
+
if (serialized.type === "string") return serialized.value;
|
|
35
|
+
if (serialized.type === "text") return document.createTextNode(serialized.value);
|
|
36
|
+
if (serialized.type === "element") {
|
|
37
|
+
const elt = document.createElement("div");
|
|
38
|
+
elt.innerHTML = serialized.value;
|
|
39
|
+
const firstChild = elt.firstElementChild;
|
|
40
|
+
return firstChild ?? document.createElement("div");
|
|
41
|
+
}
|
|
42
|
+
if (serialized.type === "nodelist") {
|
|
43
|
+
const frag = document.createDocumentFragment();
|
|
44
|
+
const deserialized = serialized.value.filter((e) => e.type === "text" || e.type === "element").map(deserialize);
|
|
45
|
+
deserialized.forEach((elt) => frag.append(elt.cloneNode(true)));
|
|
46
|
+
return frag.childNodes;
|
|
47
|
+
}
|
|
48
|
+
if (serialized.type === "array") {
|
|
49
|
+
let toRet = [];
|
|
50
|
+
for (const val of serialized.value) {
|
|
51
|
+
const deserialized = deserialize(val);
|
|
52
|
+
if (deserialized instanceof Transformer) continue;
|
|
53
|
+
toRet.push(deserialized);
|
|
54
|
+
}
|
|
55
|
+
return toRet;
|
|
56
|
+
}
|
|
57
|
+
if (serialized.type === "transformer") return Transformer.clone(serialized.value);
|
|
58
|
+
if (serialized.type === "method") return Method.clone(serialized.value);
|
|
59
|
+
return Object.entries(serialized.value).reduce((reduced, [key, serialized2]) => {
|
|
60
|
+
return {
|
|
61
|
+
...reduced,
|
|
62
|
+
[key]: deserialize(serialized2)
|
|
63
|
+
};
|
|
64
|
+
}, {});
|
|
65
|
+
}
|
|
66
|
+
Serialize2.deserialize = deserialize;
|
|
67
|
+
})(Serialize || (Serialize = {}));
|
|
9
68
|
export {
|
|
10
69
|
Serialize
|
|
11
70
|
};
|
|
@@ -1,25 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
} from "
|
|
4
|
-
import "
|
|
5
|
-
import "
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
import "../../../../../../chunks/chunk-QEKI6WGQ.js";
|
|
19
|
-
import "../../../../../../chunks/chunk-ROWPCMQY.js";
|
|
20
|
-
import "../../../../../../chunks/chunk-FENXVJYO.js";
|
|
21
|
-
import "../../../../../../chunks/chunk-HQLRJ7XW.js";
|
|
22
|
-
import "../../../../../../chunks/chunk-XCBH6NLF.js";
|
|
1
|
+
// src/agnostic/html/hyper-json/smart-tags/coalesced/add/index.ts
|
|
2
|
+
import * as Outcome from "../../../../../misc/outcome/index.js";
|
|
3
|
+
import { Cast } from "../../../cast/index.js";
|
|
4
|
+
import { Utils } from "../../../utils/index.js";
|
|
5
|
+
import { SmartTags } from "../../index.js";
|
|
6
|
+
var add = SmartTags.makeSmartTag({
|
|
7
|
+
name: "add",
|
|
8
|
+
defaultMode: "coalescion",
|
|
9
|
+
isolationInitType: "array",
|
|
10
|
+
mainValueCheck: (m) => Utils.Tree.TypeChecks.typeCheck(m, "number", "string", "text"),
|
|
11
|
+
argsValueCheck: (a) => Utils.Tree.TypeChecks.typeCheckMany(a, "number", "string", "text"),
|
|
12
|
+
func: (main, args) => {
|
|
13
|
+
const numMain = Cast.toNumber(main);
|
|
14
|
+
const numArgs = args.map(Cast.toNumber);
|
|
15
|
+
return Outcome.makeSuccess(numArgs.reduce((reduced, arg) => reduced + arg, numMain));
|
|
16
|
+
}
|
|
17
|
+
});
|
|
23
18
|
export {
|
|
24
19
|
add
|
|
25
20
|
};
|
|
@@ -1,25 +1,34 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
import "
|
|
5
|
-
import "
|
|
6
|
-
import "
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
1
|
+
// src/agnostic/html/hyper-json/smart-tags/coalesced/addclass/index.ts
|
|
2
|
+
import * as Window from "../../../../../misc/crossenv/window/index.js";
|
|
3
|
+
import * as Outcome from "../../../../../misc/outcome/index.js";
|
|
4
|
+
import { Cast } from "../../../cast/index.js";
|
|
5
|
+
import { Utils } from "../../../utils/index.js";
|
|
6
|
+
import { SmartTags } from "../../index.js";
|
|
7
|
+
var addclass = SmartTags.makeSmartTag({
|
|
8
|
+
name: "addclass",
|
|
9
|
+
defaultMode: "coalescion",
|
|
10
|
+
isolationInitType: "array",
|
|
11
|
+
mainValueCheck: (m) => Utils.Tree.TypeChecks.typeCheck(m, "element", "nodelist"),
|
|
12
|
+
argsValueCheck: (a) => Utils.Tree.TypeChecks.typeCheckMany(a, "string", "text"),
|
|
13
|
+
func: (main, args) => {
|
|
14
|
+
const { Element, document } = Window.get();
|
|
15
|
+
if (main instanceof Element) {
|
|
16
|
+
main.classList.add(...args.map((arg) => Cast.toString(arg)));
|
|
17
|
+
return Outcome.makeSuccess(main);
|
|
18
|
+
}
|
|
19
|
+
const children = Array.from(main).map((child) => {
|
|
20
|
+
if (child instanceof Element) {
|
|
21
|
+
child.classList.add(...args.map((arg) => Cast.toString(arg)));
|
|
22
|
+
return child;
|
|
23
|
+
}
|
|
24
|
+
return child;
|
|
25
|
+
});
|
|
26
|
+
const frag = document.createDocumentFragment();
|
|
27
|
+
frag.append(...children);
|
|
28
|
+
const nodelist = frag.childNodes;
|
|
29
|
+
return Outcome.makeSuccess(nodelist);
|
|
30
|
+
}
|
|
31
|
+
});
|
|
23
32
|
export {
|
|
24
33
|
addclass
|
|
25
34
|
};
|
|
@@ -1,25 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
} from "
|
|
4
|
-
import "
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
import "../../../../../../chunks/chunk-6XL25OZX.js";
|
|
18
|
-
import "../../../../../../chunks/chunk-QEKI6WGQ.js";
|
|
19
|
-
import "../../../../../../chunks/chunk-ROWPCMQY.js";
|
|
20
|
-
import "../../../../../../chunks/chunk-FENXVJYO.js";
|
|
21
|
-
import "../../../../../../chunks/chunk-HQLRJ7XW.js";
|
|
22
|
-
import "../../../../../../chunks/chunk-XCBH6NLF.js";
|
|
1
|
+
// src/agnostic/html/hyper-json/smart-tags/coalesced/and/index.ts
|
|
2
|
+
import * as Outcome from "../../../../../misc/outcome/index.js";
|
|
3
|
+
import { Cast } from "../../../cast/index.js";
|
|
4
|
+
import { SmartTags } from "../../index.js";
|
|
5
|
+
var and = SmartTags.makeSmartTag({
|
|
6
|
+
name: "and",
|
|
7
|
+
defaultMode: "coalescion",
|
|
8
|
+
isolationInitType: "array",
|
|
9
|
+
mainValueCheck: (m) => Outcome.makeSuccess(m),
|
|
10
|
+
argsValueCheck: (a) => Outcome.makeSuccess(a),
|
|
11
|
+
func: (main, args) => {
|
|
12
|
+
const all = [main, ...args];
|
|
13
|
+
const returned = all.every(Cast.toBoolean);
|
|
14
|
+
return Outcome.makeSuccess(returned);
|
|
15
|
+
}
|
|
16
|
+
});
|
|
23
17
|
export {
|
|
24
18
|
and
|
|
25
19
|
};
|
|
@@ -1,25 +1,42 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
import "
|
|
5
|
-
import "
|
|
6
|
-
import "
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
1
|
+
// src/agnostic/html/hyper-json/smart-tags/coalesced/append/index.ts
|
|
2
|
+
import * as Outcome from "../../../../../misc/outcome/index.js";
|
|
3
|
+
import * as Window from "../../../../../misc/crossenv/window/index.js";
|
|
4
|
+
import { Cast } from "../../../cast/index.js";
|
|
5
|
+
import { Utils } from "../../../utils/index.js";
|
|
6
|
+
import { SmartTags } from "../../index.js";
|
|
7
|
+
var append = SmartTags.makeSmartTag({
|
|
8
|
+
name: "append",
|
|
9
|
+
defaultMode: "coalescion",
|
|
10
|
+
isolationInitType: "array",
|
|
11
|
+
mainValueCheck: (m) => Utils.Tree.TypeChecks.typeCheck(m, "string", "text", "nodelist", "element", "array"),
|
|
12
|
+
argsValueCheck: (a) => Utils.Tree.TypeChecks.typeCheckMany(a, "string", "text", "nodelist", "element", "array"),
|
|
13
|
+
func: (main, args) => {
|
|
14
|
+
const { makeSuccess } = Outcome;
|
|
15
|
+
const { Text, Element, NodeList, document } = Window.get();
|
|
16
|
+
if (Array.isArray(main)) return makeSuccess([...main, ...args]);
|
|
17
|
+
if (main instanceof Element) {
|
|
18
|
+
main.append(...Array.from(Cast.toNodeList(args)));
|
|
19
|
+
return makeSuccess(main);
|
|
20
|
+
}
|
|
21
|
+
if (main instanceof NodeList) {
|
|
22
|
+
const frag = document.createDocumentFragment();
|
|
23
|
+
frag.append(
|
|
24
|
+
...Array.from(main),
|
|
25
|
+
...Array.from(Cast.toNodeList(args))
|
|
26
|
+
);
|
|
27
|
+
return makeSuccess(frag.childNodes);
|
|
28
|
+
}
|
|
29
|
+
if (main instanceof Text) {
|
|
30
|
+
const reducedString = args.reduce((reduced, arg) => {
|
|
31
|
+
return `${reduced}${Cast.toString(arg)}`;
|
|
32
|
+
}, Cast.toString(main));
|
|
33
|
+
return makeSuccess(Cast.toText(reducedString));
|
|
34
|
+
}
|
|
35
|
+
return makeSuccess(args.reduce((reduced, arg) => {
|
|
36
|
+
return `${reduced}${Cast.toString(arg)}`;
|
|
37
|
+
}, main));
|
|
38
|
+
}
|
|
39
|
+
});
|
|
23
40
|
export {
|
|
24
41
|
append
|
|
25
42
|
};
|
|
@@ -1,25 +1,44 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
import "
|
|
5
|
-
import "
|
|
6
|
-
import "
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
1
|
+
// src/agnostic/html/hyper-json/smart-tags/coalesced/at/index.ts
|
|
2
|
+
import * as Outcome from "../../../../../misc/outcome/index.js";
|
|
3
|
+
import * as Window from "../../../../../misc/crossenv/window/index.js";
|
|
4
|
+
import { Cast } from "../../../cast/index.js";
|
|
5
|
+
import { Utils } from "../../../utils/index.js";
|
|
6
|
+
import { SmartTags } from "../../index.js";
|
|
7
|
+
var at = SmartTags.makeSmartTag({
|
|
8
|
+
name: "at",
|
|
9
|
+
defaultMode: "coalescion",
|
|
10
|
+
isolationInitType: "array",
|
|
11
|
+
mainValueCheck: (m) => Utils.Tree.TypeChecks.typeCheck(m, "string", "text", "array", "nodelist"),
|
|
12
|
+
argsValueCheck: (a) => {
|
|
13
|
+
const { makeFailure, makeSuccess } = Outcome;
|
|
14
|
+
const { makeArgsValueError } = Utils.SmartTags;
|
|
15
|
+
const { getType, typeCheckMany } = Utils.Tree.TypeChecks;
|
|
16
|
+
if (a.length === 0) return makeFailure(makeArgsValueError("number | string | text", "undefined", 0));
|
|
17
|
+
if (a.length > 1) return makeFailure(makeArgsValueError("undefined", getType(a[1]) ?? "undefined", 1));
|
|
18
|
+
const checked = typeCheckMany(a, "number", "string", "text");
|
|
19
|
+
if (checked.success) return makeSuccess(a);
|
|
20
|
+
return checked;
|
|
21
|
+
},
|
|
22
|
+
func: (main, args) => {
|
|
23
|
+
const { makeFailure, makeSuccess } = Outcome;
|
|
24
|
+
const { makeTransformationError } = Utils.SmartTags;
|
|
25
|
+
const pos = args[0];
|
|
26
|
+
const numPos = Cast.toNumber(pos);
|
|
27
|
+
let found;
|
|
28
|
+
const { NodeList } = Window.get();
|
|
29
|
+
if (typeof main === "string" || Array.isArray(main) || main instanceof NodeList) {
|
|
30
|
+
found = main[numPos];
|
|
31
|
+
} else {
|
|
32
|
+
const strMain = Cast.toString(main);
|
|
33
|
+
found = strMain[numPos];
|
|
34
|
+
}
|
|
35
|
+
if (found === void 0) return makeFailure(makeTransformationError({
|
|
36
|
+
message: "Property does not exist"
|
|
37
|
+
// [WIP] maybe more details here ?
|
|
38
|
+
}));
|
|
39
|
+
return makeSuccess(found);
|
|
40
|
+
}
|
|
41
|
+
});
|
|
23
42
|
export {
|
|
24
43
|
at
|
|
25
44
|
};
|