@design-edito/tools 0.4.4 → 0.4.5
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/index.d.ts +2 -2
- package/agnostic/arrays/index.js +2 -2
- package/agnostic/arrays/is-array-of/index.js +4 -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 +12 -7
- package/agnostic/colors/channels/index.js +936 -13
- package/agnostic/colors/contrast/index.js +624 -12
- package/agnostic/colors/convert/index.js +845 -26
- package/agnostic/colors/distance/index.js +493 -9
- package/agnostic/colors/grayscale/index.js +751 -15
- package/agnostic/colors/index.d.ts +2 -2
- package/agnostic/colors/index.js +2 -2
- package/agnostic/colors/invert/index.js +687 -13
- package/agnostic/colors/lerp/index.js +735 -20
- package/agnostic/colors/luminance/index.js +624 -10
- package/agnostic/colors/palette/index.js +838 -11
- package/agnostic/colors/rotate/index.js +838 -11
- package/agnostic/colors/tidy/index.js +528 -9
- package/agnostic/colors/typechecks/index.js +247 -14
- package/agnostic/css/bem/index.js +23 -11
- package/agnostic/css/clss/index.js +28 -4
- package/agnostic/css/generate-nice-color/index.js +0 -2
- package/agnostic/css/index.d.ts +2 -2
- package/agnostic/css/index.js +2 -2
- package/agnostic/css/is-valid-css-class-name/index.js +5 -5
- package/agnostic/css/scale/index.js +20 -7
- package/agnostic/css/styles-set/index.js +15 -6
- package/agnostic/errors/index.d.ts +1 -1
- package/agnostic/errors/index.js +1 -1
- package/agnostic/errors/register/index.js +0 -2
- package/agnostic/errors/unknown-to-string/index.js +8 -4
- package/agnostic/html/get-node-ancestors/index.js +28 -5
- package/agnostic/html/get-position-inside-parent/index.js +0 -2
- package/agnostic/html/hyper-json/cast/index.js +2937 -21
- package/agnostic/html/hyper-json/index.js +2939 -35
- package/agnostic/html/hyper-json/method/index.js +11 -4
- package/agnostic/html/hyper-json/serialize/index.js +222 -8
- package/agnostic/html/hyper-json/smart-tags/coalesced/add/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/addclass/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/and/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/append/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/at/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/call/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/clone/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/deleteproperties/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/equals/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/getattribute/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/getproperties/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/getproperty/index.js +2937 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/hjparse/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/hjstringify/index.js +2937 -23
- package/agnostic/html/hyper-json/smart-tags/coalesced/if/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/index.d.ts +12 -12
- package/agnostic/html/hyper-json/smart-tags/coalesced/index.js +12 -12
- package/agnostic/html/hyper-json/smart-tags/coalesced/initialize/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/join/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/length/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/map/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/negate/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/notrailing/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/or/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/pickrandom/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/populate/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/print/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/push/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/pusheach/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/recordtoarray/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/removeattribute/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/removeclass/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/renameproperty/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/replace/index.js +2937 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/select/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/set/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/setattribute/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/setproperty/index.js +2937 -22
- package/agnostic/html/hyper-json/smart-tags/coalesced/sorton/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/split/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/spread/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/toarray/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/toboolean/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/toelement/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/toggleclass/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/tonodelist/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/tonull/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/tonumber/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/torecord/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/toref/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/tostring/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/totext/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/transformselected/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/coalesced/trim/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/index.js +181 -7
- package/agnostic/html/hyper-json/smart-tags/isolated/any/index.js +194 -8
- package/agnostic/html/hyper-json/smart-tags/isolated/array/index.js +194 -8
- package/agnostic/html/hyper-json/smart-tags/isolated/boolean/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/isolated/element/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/isolated/get/index.js +2938 -22
- package/agnostic/html/hyper-json/smart-tags/isolated/guess/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/isolated/nodelist/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/isolated/null/index.js +191 -8
- package/agnostic/html/hyper-json/smart-tags/isolated/number/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/isolated/record/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/isolated/ref/index.js +2937 -22
- package/agnostic/html/hyper-json/smart-tags/isolated/string/index.js +2937 -21
- package/agnostic/html/hyper-json/smart-tags/isolated/text/index.js +2937 -21
- package/agnostic/html/hyper-json/transformer/index.js +146 -6
- package/agnostic/html/hyper-json/tree/index.js +2937 -21
- package/agnostic/html/hyper-json/types/index.js +16 -4
- package/agnostic/html/hyper-json/utils/index.js +2937 -21
- package/agnostic/html/index.d.ts +2 -2
- package/agnostic/html/index.js +2 -2
- 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 +28 -5
- package/agnostic/html/selector-to-element/index.js +10 -4
- package/agnostic/html/string-to-nodes/index.js +10 -4
- package/agnostic/index.d.ts +5 -5
- package/agnostic/index.js +5 -5
- package/agnostic/misc/assert/index.js +16 -8
- package/agnostic/misc/cast/index.js +56 -13
- package/agnostic/misc/connection/index.js +10 -4
- package/agnostic/misc/crawler/index.js +6 -4
- package/agnostic/misc/crossenv/detect-runtime/index.js +0 -3
- 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/index.d.ts +5 -5
- package/agnostic/misc/index.js +5 -5
- 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 +47 -5
- package/agnostic/misc/lorem-ipsum/index.js +22 -7
- 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/index.d.ts +1 -1
- package/agnostic/numbers/index.js +1 -1
- package/agnostic/numbers/interpolate/index.js +0 -2
- package/agnostic/numbers/round/index.js +13 -6
- package/agnostic/objects/deep-get-property/index.js +5 -4
- package/agnostic/objects/enums/is-in-enum/index.js +9 -4
- package/agnostic/objects/flatten-getters/index.js +0 -2
- package/agnostic/objects/index.d.ts +3 -3
- package/agnostic/objects/index.js +3 -3
- 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/sort-keys/index.js +0 -2
- 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/index.d.ts +1 -1
- package/agnostic/random/index.js +1 -1
- package/agnostic/random/random/index.js +12 -5
- package/agnostic/random/uuid/index.js +18 -7
- package/agnostic/regexps/index.js +0 -2
- package/agnostic/sanitization/file-name/index.js +6 -4
- package/agnostic/sanitization/html/index.js +10 -4
- package/agnostic/sanitization/path/index.js +6 -4
- 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 +7 -5
- package/agnostic/strings/replace-all/index.js +0 -2
- 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 +6 -4
- package/agnostic/time/wait/index.js +6 -4
- package/components/BeforeAfter/index.js +51 -14
- package/components/Disclaimer/index.js +107 -6
- package/components/Drawer/index.js +133 -24
- package/components/EventListener/index.js +44 -11
- package/components/Gallery/index.js +42 -11
- package/components/Image/index.js +222 -34
- package/components/IntersectionObserver/index.js +107 -6
- package/components/Overlayer/index.js +51 -14
- package/components/Paginator/index.js +153 -6
- package/components/ResizeObserver/index.js +118 -6
- package/components/Scrllgngn/index.js +332 -42
- package/components/ScrollListener/index.js +135 -30
- package/components/Sequencer/index.js +139 -37
- package/components/ShadowRoot/index.js +44 -11
- package/components/Subtitles/index.js +241 -10
- package/components/Theatre/index.js +134 -6
- package/components/UIModule/index.js +74 -21
- package/components/Video/index.d.ts +10 -0
- package/components/Video/index.js +448 -94
- package/components/index.d.ts +4 -4
- package/components/index.js +4 -4
- package/components/utils/index.js +9 -4
- package/index.d.ts +0 -1
- package/index.js +0 -1
- package/node/@aws-s3/storage/directory/copy-dir/index.js +70 -5
- package/node/@aws-s3/storage/directory/index.d.ts +1 -1
- package/node/@aws-s3/storage/directory/index.js +1 -1
- package/node/@aws-s3/storage/directory/list/index.js +39 -5
- package/node/@aws-s3/storage/directory/move-dir/index.js +83 -5
- package/node/@aws-s3/storage/directory/remove-dir/index.js +66 -5
- package/node/@aws-s3/storage/file/copy/index.js +51 -5
- package/node/@aws-s3/storage/file/download/index.js +37 -5
- package/node/@aws-s3/storage/file/exists/index.js +41 -5
- package/node/@aws-s3/storage/file/index.d.ts +1 -1
- package/node/@aws-s3/storage/file/index.js +1 -1
- package/node/@aws-s3/storage/file/move/index.js +62 -5
- package/node/@aws-s3/storage/file/remove/index.js +42 -5
- package/node/@aws-s3/storage/file/stat/index.js +44 -5
- package/node/@aws-s3/storage/file/upload/index.js +62 -5
- package/node/@express/@multer/index.js +19 -9
- package/node/@google-cloud/storage/bucket/get-metadata/index.js +16 -8
- package/node/@google-cloud/storage/directory/copy-dir/index.js +41 -6
- package/node/@google-cloud/storage/directory/index.d.ts +1 -1
- package/node/@google-cloud/storage/directory/index.js +1 -1
- package/node/@google-cloud/storage/directory/list/index.js +33 -6
- package/node/@google-cloud/storage/directory/move-dir/index.js +41 -6
- package/node/@google-cloud/storage/directory/remove-dir/index.js +37 -6
- package/node/@google-cloud/storage/file/copy/index.js +39 -6
- package/node/@google-cloud/storage/file/download/index.js +32 -6
- package/node/@google-cloud/storage/file/exists/index.js +29 -6
- package/node/@google-cloud/storage/file/generate-signed-url/index.js +16 -8
- package/node/@google-cloud/storage/file/get-metadata/index.js +16 -8
- package/node/@google-cloud/storage/file/get-permissions/index.js +16 -8
- package/node/@google-cloud/storage/file/index.d.ts +3 -3
- package/node/@google-cloud/storage/file/index.js +3 -3
- package/node/@google-cloud/storage/file/move/index.js +41 -6
- package/node/@google-cloud/storage/file/remove/index.js +34 -6
- package/node/@google-cloud/storage/file/revoke-signed-urls/index.js +80 -14
- package/node/@google-cloud/storage/file/stat/index.js +36 -6
- package/node/@google-cloud/storage/file/update-metadata/index.js +16 -8
- package/node/@google-cloud/storage/file/upload/index.js +46 -6
- package/node/@google-cloud/storage/index.d.ts +1 -1
- package/node/@google-cloud/storage/index.js +1 -1
- package/node/cloud-storage/clients/index.js +9 -7
- package/node/cloud-storage/operations/copy-dir/index.js +191 -22
- package/node/cloud-storage/operations/copy-file/index.js +140 -22
- package/node/cloud-storage/operations/download-file/index.js +91 -22
- package/node/cloud-storage/operations/exists-file/index.js +91 -22
- package/node/cloud-storage/operations/index.d.ts +2 -2
- package/node/cloud-storage/operations/index.js +2 -2
- package/node/cloud-storage/operations/list-dir/index.js +86 -22
- package/node/cloud-storage/operations/move-dir/index.js +157 -22
- package/node/cloud-storage/operations/move-file/index.js +145 -22
- package/node/cloud-storage/operations/remove-dir/index.js +147 -22
- package/node/cloud-storage/operations/remove-file/index.js +109 -22
- package/node/cloud-storage/operations/stat-file/index.js +112 -22
- package/node/cloud-storage/operations/upload-file/index.js +150 -22
- package/node/encryption/@aes-256-gcm/buffer/index.js +58 -12
- package/node/encryption/@aes-256-gcm/index.d.ts +1 -1
- package/node/encryption/@aes-256-gcm/index.js +1 -1
- package/node/encryption/@aes-256-gcm/uint8-array/index.js +53 -7
- package/node/encryption/key/index.js +0 -2
- package/node/files/index.d.ts +1 -1
- package/node/files/index.js +1 -1
- 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 +13 -5
- package/node/ftps/directory/copy-dir/index.js +62 -6
- package/node/ftps/directory/index.d.ts +1 -1
- package/node/ftps/directory/index.js +1 -1
- package/node/ftps/directory/list/index.js +27 -6
- package/node/ftps/directory/move-dir/index.js +38 -6
- package/node/ftps/directory/remove-dir/index.js +42 -6
- package/node/ftps/file/copy/index.js +47 -6
- package/node/ftps/file/download/index.js +32 -6
- package/node/ftps/file/exists/index.js +34 -6
- package/node/ftps/file/index.d.ts +1 -1
- package/node/ftps/file/index.js +1 -1
- package/node/ftps/file/move/index.js +44 -6
- package/node/ftps/file/remove/index.js +40 -6
- package/node/ftps/file/stat/index.js +36 -6
- package/node/ftps/file/upload/index.js +45 -6
- package/node/images/create/index.js +556 -12
- package/node/images/format/index.js +583 -19
- package/node/images/index.d.ts +1 -1
- package/node/images/index.js +1 -1
- package/node/images/metadata/index.js +563 -10
- package/node/images/transform/index.js +895 -77
- package/node/images/transform/operations/blur/index.js +21 -6
- package/node/images/transform/operations/brighten/index.js +21 -6
- package/node/images/transform/operations/extend/index.js +586 -13
- package/node/images/transform/operations/extract/index.js +26 -6
- package/node/images/transform/operations/flatten/index.js +581 -13
- 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 +23 -6
- package/node/images/transform/operations/index.d.ts +3 -3
- package/node/images/transform/operations/index.js +3 -3
- package/node/images/transform/operations/level/index.js +27 -6
- package/node/images/transform/operations/lighten/index.js +23 -6
- package/node/images/transform/operations/normalize/index.js +24 -6
- package/node/images/transform/operations/overlay/index.js +670 -13
- package/node/images/transform/operations/resize/index.js +607 -13
- package/node/images/transform/operations/rotate/index.js +581 -13
- package/node/images/transform/operations/saturate/index.js +25 -6
- package/node/images/types.js +27 -5
- package/node/images/utils/index.js +563 -13
- package/node/index.d.ts +2 -2
- package/node/index.js +2 -2
- package/node/process/on-exit/index.js +0 -2
- package/node/process/prompt-continue/index.js +0 -2
- package/node/process/spawner/index.js +67 -13
- package/node/sftp/directory/copy-dir/index.js +60 -6
- package/node/sftp/directory/index.d.ts +1 -1
- package/node/sftp/directory/index.js +1 -1
- package/node/sftp/directory/list/index.js +27 -6
- package/node/sftp/directory/move-dir/index.js +35 -6
- package/node/sftp/directory/remove-dir/index.js +42 -6
- package/node/sftp/file/copy/index.js +45 -6
- package/node/sftp/file/download/index.js +30 -6
- package/node/sftp/file/exists/index.js +27 -6
- package/node/sftp/file/index.d.ts +2 -2
- package/node/sftp/file/index.js +2 -2
- package/node/sftp/file/move/index.js +38 -6
- package/node/sftp/file/remove/index.js +33 -6
- package/node/sftp/file/stat/index.js +36 -6
- package/node/sftp/file/upload/index.js +37 -6
- package/package.json +1 -8
- package/chunks/chunk-2FNCUXAX.js +0 -27
- package/chunks/chunk-2GJSPEO4.js +0 -31
- package/chunks/chunk-2IGP6V77.js +0 -22
- package/chunks/chunk-3QI2MSDK.js +0 -34
- package/chunks/chunk-3RNLPW7B.js +0 -101
- package/chunks/chunk-3RZMW72G.js +0 -33
- package/chunks/chunk-4KLCJX2T.js +0 -36
- package/chunks/chunk-4LTN4SCD.js +0 -55
- package/chunks/chunk-4Q4T7QQO.js +0 -27
- package/chunks/chunk-4Q5TKOIG.js +0 -53
- package/chunks/chunk-57YKZBJR.js +0 -29
- package/chunks/chunk-5H3IRSOB.js +0 -8
- package/chunks/chunk-5NTPCRFH.js +0 -32
- package/chunks/chunk-5TM235Z3.js +0 -40
- package/chunks/chunk-5WVGUZL5.js +0 -35
- package/chunks/chunk-6XL25OZX.js +0 -12
- package/chunks/chunk-75BICI4L.js +0 -20
- package/chunks/chunk-77SWZUHV.js +0 -31
- package/chunks/chunk-AC4UMIWM.js +0 -124
- package/chunks/chunk-AG4VERYN.js +0 -25
- package/chunks/chunk-AP3VYSVF.js +0 -36
- package/chunks/chunk-ASXK7XCC.js +0 -18
- package/chunks/chunk-AVIMGMTP.js +0 -17
- package/chunks/chunk-B4HGXMP3.js +0 -20
- package/chunks/chunk-B5V7D2ZL.js +0 -77
- package/chunks/chunk-B6653QJD.js +0 -37
- package/chunks/chunk-BCX4HPD7.js +0 -33
- package/chunks/chunk-CVMYA5XK.js +0 -632
- package/chunks/chunk-DMWGHBIL.js +0 -25
- package/chunks/chunk-DNIOWD7K.js +0 -8
- package/chunks/chunk-E2ZY3SEW.js +0 -26
- package/chunks/chunk-E6MSDKON.js +0 -13
- package/chunks/chunk-E7BBN5JC.js +0 -22
- package/chunks/chunk-EX2QKFY5.js +0 -41
- package/chunks/chunk-EYYNCLVR.js +0 -33
- package/chunks/chunk-F2YJXIT7.js +0 -78
- package/chunks/chunk-FSNNEPY5.js +0 -37
- package/chunks/chunk-GG4EFNMU.js +0 -89
- package/chunks/chunk-GQBFMP6N.js +0 -32
- package/chunks/chunk-H3HRQ52T.js +0 -32
- package/chunks/chunk-H4PP6AHP.js +0 -15
- package/chunks/chunk-HC6ZOHCS.js +0 -14
- package/chunks/chunk-HMMPT3UM.js +0 -47
- package/chunks/chunk-HQLRJ7XW.js +0 -12
- package/chunks/chunk-HYGUIF2O.js +0 -23
- package/chunks/chunk-HYPEWMYZ.js +0 -10
- package/chunks/chunk-I5MRXMHR.js +0 -32
- package/chunks/chunk-I6ZP5T5V.js +0 -10
- package/chunks/chunk-IEZ3O5OF.js +0 -40
- package/chunks/chunk-IPRWXI27.js +0 -31
- package/chunks/chunk-IRKZUMWZ.js +0 -38
- package/chunks/chunk-ISJONMNA.js +0 -16
- package/chunks/chunk-JB27MAKY.js +0 -22
- package/chunks/chunk-JZ6GM444.js +0 -43
- package/chunks/chunk-K5UF634H.js +0 -25
- package/chunks/chunk-LEBGVBYD.js +0 -138
- package/chunks/chunk-LJ5MGLLU.js +0 -56
- package/chunks/chunk-LUAYN7VJ.js +0 -27
- package/chunks/chunk-MDVGDZU6.js +0 -25
- package/chunks/chunk-ML22TIBW.js +0 -37
- package/chunks/chunk-MO4TRYNI.js +0 -29
- package/chunks/chunk-MSU7JU63.js +0 -49
- package/chunks/chunk-NIBRPZJD.js +0 -58
- package/chunks/chunk-O32IRXDX.js +0 -78
- package/chunks/chunk-OAX7GS7C.js +0 -36
- package/chunks/chunk-OBSTP7YR.js +0 -257
- package/chunks/chunk-OFCSIK6J.js +0 -13
- package/chunks/chunk-OFYGPRWE.js +0 -21
- package/chunks/chunk-OGBUSUE6.js +0 -12
- package/chunks/chunk-OSAXBA7G.js +0 -10
- package/chunks/chunk-OT7QXCH6.js +0 -23
- package/chunks/chunk-P4J6S2WQ.js +0 -64
- package/chunks/chunk-PUQUSA6S.js +0 -12
- package/chunks/chunk-PYJKFOMV.js +0 -193
- package/chunks/chunk-QHEWBOQI.js +0 -19
- package/chunks/chunk-QXAJXTXV.js +0 -19
- package/chunks/chunk-R3AWQXMY.js +0 -20
- package/chunks/chunk-R66GH2MQ.js +0 -38
- package/chunks/chunk-RART44AF.js +0 -21
- package/chunks/chunk-REXSJULD.js +0 -28
- package/chunks/chunk-RJRNYRPM.js +0 -23
- package/chunks/chunk-RKX6KLPQ.js +0 -47
- package/chunks/chunk-RW7VAKJW.js +0 -15
- package/chunks/chunk-RZOR7ZC3.js +0 -35
- package/chunks/chunk-S2UZ3HZR.js +0 -31
- package/chunks/chunk-SYH5LYQC.js +0 -28
- package/chunks/chunk-TAXFCVFE.js +0 -30
- package/chunks/chunk-TNZGRXKJ.js +0 -24
- package/chunks/chunk-TRFZSKNB.js +0 -32
- package/chunks/chunk-U664BT44.js +0 -45
- package/chunks/chunk-U6SGKHHA.js +0 -32
- package/chunks/chunk-UTQNGKGQ.js +0 -60
- package/chunks/chunk-VPBZS3S4.js +0 -27
- package/chunks/chunk-W5A2TON3.js +0 -10
- package/chunks/chunk-W7PJ5NQQ.js +0 -23
- package/chunks/chunk-WGRQXVBK.js +0 -207
- package/chunks/chunk-WIFHP4X7.js +0 -56
- package/chunks/chunk-WL4WNJ2Y.js +0 -39
- package/chunks/chunk-WNDMYNDU.js +0 -8
- package/chunks/chunk-WSFCRVEQ.js +0 -9
- package/chunks/chunk-WZS4Q3G3.js +0 -36
- package/chunks/chunk-X4YSGOKG.js +0 -2673
- package/chunks/chunk-XA4HVHJ4.js +0 -18
- package/chunks/chunk-XEQ2PBT2.js +0 -20
- package/chunks/chunk-XFB4PUXO.js +0 -78
- package/chunks/chunk-XIIJYVJZ.js +0 -15
- package/chunks/chunk-XNF5MLCQ.js +0 -14
- package/chunks/chunk-XQUMWHCH.js +0 -25
- package/chunks/chunk-YA2YCZUF.js +0 -8
- package/chunks/chunk-YDIBNEGA.js +0 -9
- package/chunks/chunk-YHMR7IBA.js +0 -24
- package/chunks/chunk-YWSXCFYY.js +0 -61
- package/chunks/chunk-YY3TSU22.js +0 -48
- package/chunks/chunk-ZAP3ELDE.js +0 -40
- package/chunks/chunk-ZJNQRKEJ.js +0 -105
- package/chunks/chunk-ZJR5ASR3.js +0 -26
- package/chunks/index.d.ts +0 -1
- package/chunks/index.js +0 -1
|
@@ -1,36 +1,390 @@
|
|
|
1
|
+
// src/components/Video/index.tsx
|
|
1
2
|
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
3
|
+
useCallback as useCallback3,
|
|
4
|
+
useEffect as useEffect4,
|
|
5
|
+
useMemo,
|
|
6
|
+
useRef as useRef4,
|
|
7
|
+
useState as useState4
|
|
8
|
+
} from "react";
|
|
9
|
+
|
|
10
|
+
// src/agnostic/css/clss/index.ts
|
|
11
|
+
function clss(blockNames, options) {
|
|
12
|
+
const blockNamesArr = Array.isArray(blockNames) ? blockNames : [blockNames];
|
|
13
|
+
return (eltNames = null, modNames = []) => {
|
|
14
|
+
const eltNamesArr = Array.isArray(eltNames) ? eltNames : [eltNames];
|
|
15
|
+
const modNamesArr = (Array.isArray(modNames) ? modNames : [modNames]).map((modName) => {
|
|
16
|
+
if (typeof modName === "string") return modName;
|
|
17
|
+
const trueModNames = Object.entries(modName).filter((entry) => entry[1] === true).map(([key]) => key);
|
|
18
|
+
return trueModNames;
|
|
19
|
+
}).flat();
|
|
20
|
+
const outputClassesArr = [];
|
|
21
|
+
blockNamesArr.forEach((compName) => {
|
|
22
|
+
eltNamesArr.forEach((eltName) => {
|
|
23
|
+
const targetPublicClss = eltName === null ? compName : `${compName}__${eltName}`;
|
|
24
|
+
const targetPrivateClss = eltName === null ? options?.cssModule[options.cssModuleRoot ?? "root"] : options?.cssModule[eltName];
|
|
25
|
+
outputClassesArr.push(targetPublicClss);
|
|
26
|
+
if (targetPrivateClss !== void 0) outputClassesArr.push(targetPrivateClss);
|
|
27
|
+
modNamesArr.forEach((modName) => {
|
|
28
|
+
const targetModifiedPublicClss = `${targetPublicClss}--${modName}`;
|
|
29
|
+
const targetModifiedPrivateClss = eltName === null ? options?.cssModule[`${options.cssModuleRoot ?? "root"}--${modName}`] : options?.cssModule[`${eltName}--${modName}`];
|
|
30
|
+
outputClassesArr.push(targetModifiedPublicClss);
|
|
31
|
+
if (targetModifiedPrivateClss !== void 0) outputClassesArr.push(targetModifiedPrivateClss);
|
|
32
|
+
});
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
return outputClassesArr.join(" ");
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
// src/components/Disclaimer/index.tsx
|
|
17
40
|
import {
|
|
18
|
-
|
|
19
|
-
|
|
41
|
+
useState,
|
|
42
|
+
useEffect,
|
|
43
|
+
useRef
|
|
44
|
+
} from "react";
|
|
45
|
+
|
|
46
|
+
// src/components/utils/index.tsx
|
|
47
|
+
function mergeClassNames(...names) {
|
|
48
|
+
return names.map((name) => {
|
|
49
|
+
if (typeof name !== "string" && !Array.isArray(name)) return false;
|
|
50
|
+
if (Array.isArray(name)) return mergeClassNames(...name);
|
|
51
|
+
if (name.trim() === "") return false;
|
|
52
|
+
return name.trim();
|
|
53
|
+
}).filter((name) => typeof name === "string").join(" ");
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
// src/components/public-classnames.ts
|
|
57
|
+
var disclaimer = "dsed-disclaimer";
|
|
58
|
+
var intersectionObserver = "dsed-intersection-observer";
|
|
59
|
+
var subtitles = "dsed-subtitles";
|
|
60
|
+
var video = "dsed-video";
|
|
61
|
+
|
|
62
|
+
// src/components/Disclaimer/index.tsx
|
|
63
|
+
import cssModule from "./styles.module.css";
|
|
64
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
65
|
+
var Disclaimer = ({
|
|
66
|
+
content,
|
|
67
|
+
togglerContent,
|
|
68
|
+
isOn: isOnProp,
|
|
69
|
+
defaultIsOn: defaultIsOnProp,
|
|
70
|
+
stateHandlers,
|
|
71
|
+
actionHandlers,
|
|
72
|
+
children,
|
|
73
|
+
className
|
|
74
|
+
}) => {
|
|
75
|
+
const [internalIsOn, setInternalIsOn] = useState(isOnProp ?? defaultIsOnProp ?? true);
|
|
76
|
+
const isOn = isOnProp ?? internalIsOn;
|
|
77
|
+
const pIsOn = useRef(isOn);
|
|
78
|
+
useEffect(() => {
|
|
79
|
+
if (pIsOn.current === isOn) return;
|
|
80
|
+
stateHandlers?.toggled?.(isOn);
|
|
81
|
+
pIsOn.current = isOn;
|
|
82
|
+
}, [isOn]);
|
|
83
|
+
const handleDismissClick = () => {
|
|
84
|
+
actionHandlers?.dismissClick?.(isOn);
|
|
85
|
+
if (isOnProp !== void 0) return;
|
|
86
|
+
setInternalIsOn(false);
|
|
87
|
+
};
|
|
88
|
+
const c = clss(disclaimer, { cssModule });
|
|
89
|
+
const rootClss = mergeClassNames(
|
|
90
|
+
c(null, {
|
|
91
|
+
on: isOn,
|
|
92
|
+
off: !isOn
|
|
93
|
+
}),
|
|
94
|
+
className
|
|
95
|
+
);
|
|
96
|
+
const panelClss = c("panel");
|
|
97
|
+
const contentClss = c("content");
|
|
98
|
+
const btnClss = c("toggler");
|
|
99
|
+
const sensitiveClss = c("sensitive");
|
|
100
|
+
return /* @__PURE__ */ jsxs("div", { className: rootClss, children: [
|
|
101
|
+
/* @__PURE__ */ jsxs("div", { className: panelClss, children: [
|
|
102
|
+
content !== void 0 && /* @__PURE__ */ jsx(
|
|
103
|
+
"div",
|
|
104
|
+
{
|
|
105
|
+
className: contentClss,
|
|
106
|
+
children: content
|
|
107
|
+
}
|
|
108
|
+
),
|
|
109
|
+
togglerContent !== void 0 && /* @__PURE__ */ jsx(
|
|
110
|
+
"div",
|
|
111
|
+
{
|
|
112
|
+
className: btnClss,
|
|
113
|
+
onClick: handleDismissClick,
|
|
114
|
+
children: togglerContent
|
|
115
|
+
}
|
|
116
|
+
)
|
|
117
|
+
] }),
|
|
118
|
+
/* @__PURE__ */ jsx("div", { className: sensitiveClss, children })
|
|
119
|
+
] });
|
|
120
|
+
};
|
|
121
|
+
|
|
122
|
+
// src/components/IntersectionObserver/index.tsx
|
|
20
123
|
import {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
124
|
+
useState as useState2,
|
|
125
|
+
useRef as useRef2,
|
|
126
|
+
useEffect as useEffect2,
|
|
127
|
+
useCallback
|
|
128
|
+
} from "react";
|
|
129
|
+
import cssModule2 from "./styles.module.css";
|
|
130
|
+
import { jsx as jsx2 } from "react/jsx-runtime";
|
|
131
|
+
var IntersectionObserverComponent = ({
|
|
132
|
+
onIntersected,
|
|
133
|
+
root,
|
|
134
|
+
rootMargin,
|
|
135
|
+
threshold,
|
|
136
|
+
className,
|
|
137
|
+
children
|
|
138
|
+
}) => {
|
|
139
|
+
const [ioEntry, setIoEntry] = useState2(null);
|
|
140
|
+
const rootRef = useRef2(null);
|
|
141
|
+
const observerRef = useRef2(null);
|
|
142
|
+
const observation = useCallback((entries, observer) => {
|
|
143
|
+
const thisEntry = entries[0];
|
|
144
|
+
if (thisEntry === void 0) return setIoEntry(null);
|
|
145
|
+
onIntersected?.({ ioEntry: thisEntry, observer });
|
|
146
|
+
setIoEntry(thisEntry);
|
|
147
|
+
}, [onIntersected]);
|
|
148
|
+
const forceObservation = useCallback(() => {
|
|
149
|
+
const rootEl = rootRef.current;
|
|
150
|
+
const observer = observerRef.current;
|
|
151
|
+
if (rootEl === null || observer === null) return;
|
|
152
|
+
observer.unobserve(rootEl);
|
|
153
|
+
observer.observe(rootEl);
|
|
154
|
+
}, []);
|
|
155
|
+
useEffect2(() => {
|
|
156
|
+
const rootEl = rootRef.current;
|
|
157
|
+
if (rootEl === null) return console.warn("rootRef.current should not be null");
|
|
158
|
+
const observer = new IntersectionObserver(observation, { root, rootMargin, threshold });
|
|
159
|
+
observerRef.current = observer;
|
|
160
|
+
observer.observe(rootEl);
|
|
161
|
+
return () => observer.disconnect();
|
|
162
|
+
}, [root, rootMargin, threshold, observation]);
|
|
163
|
+
useEffect2(() => {
|
|
164
|
+
const timeout1 = window.setTimeout(forceObservation, 100);
|
|
165
|
+
const timeout2 = window.setTimeout(forceObservation, 500);
|
|
166
|
+
return () => {
|
|
167
|
+
window.clearTimeout(timeout1);
|
|
168
|
+
window.clearTimeout(timeout2);
|
|
169
|
+
};
|
|
170
|
+
}, [forceObservation]);
|
|
171
|
+
const c = clss(intersectionObserver, { cssModule: cssModule2 });
|
|
172
|
+
const isIntersecting = ioEntry?.isIntersecting ?? false;
|
|
173
|
+
const rootClss = mergeClassNames(
|
|
174
|
+
c(null, { "is-intersecting": isIntersecting }),
|
|
175
|
+
className
|
|
176
|
+
);
|
|
177
|
+
return /* @__PURE__ */ jsx2(
|
|
178
|
+
"div",
|
|
179
|
+
{
|
|
180
|
+
className: rootClss,
|
|
181
|
+
ref: rootRef,
|
|
182
|
+
children
|
|
183
|
+
}
|
|
184
|
+
);
|
|
185
|
+
};
|
|
24
186
|
|
|
25
|
-
// src/components/
|
|
187
|
+
// src/components/Subtitles/index.tsx
|
|
26
188
|
import {
|
|
27
|
-
useCallback,
|
|
28
|
-
useEffect,
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
useState
|
|
189
|
+
useCallback as useCallback2,
|
|
190
|
+
useEffect as useEffect3,
|
|
191
|
+
useRef as useRef3,
|
|
192
|
+
useState as useState3
|
|
32
193
|
} from "react";
|
|
33
194
|
|
|
195
|
+
// src/agnostic/misc/is-nullish/index.ts
|
|
196
|
+
var nullishValues = [null, void 0];
|
|
197
|
+
|
|
198
|
+
// src/agnostic/booleans/is-falsy/index.ts
|
|
199
|
+
var falsyValues = [...nullishValues, false, "", 0, -0, NaN];
|
|
200
|
+
if (typeof BigInt === "function") falsyValues.push(BigInt(0));
|
|
201
|
+
|
|
202
|
+
// src/agnostic/misc/cast/index.ts
|
|
203
|
+
function toString(value) {
|
|
204
|
+
if (typeof value === "string") return value;
|
|
205
|
+
return String(value);
|
|
206
|
+
}
|
|
207
|
+
function toError(value) {
|
|
208
|
+
if (value instanceof Error) return value;
|
|
209
|
+
if (typeof value === "string") return new Error(value);
|
|
210
|
+
return new Error(toString(value));
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
// src/agnostic/errors/unknown-to-string/index.ts
|
|
214
|
+
function unknownToString(unk, encoding) {
|
|
215
|
+
if (unk instanceof Error) return unk.message;
|
|
216
|
+
if (unk instanceof Buffer) return unk.toString(encoding ?? "utf-8");
|
|
217
|
+
if (typeof unk === "string") return unk;
|
|
218
|
+
if (typeof unk === "object" && unk !== null) return JSON.stringify(unk);
|
|
219
|
+
return `${unk}`;
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
// src/components/Subtitles/utils.ts
|
|
223
|
+
var getTimecodeToMs = (timecode) => {
|
|
224
|
+
const [hours = "0", minutes = "0", secondsAndMs = "0,0"] = timecode.split(":");
|
|
225
|
+
const [seconds = "0", milliseconds = "0"] = secondsAndMs.split(",");
|
|
226
|
+
let result = parseInt(hours) * 60 * 60 * 1e3;
|
|
227
|
+
result += parseInt(minutes) * 60 * 1e3;
|
|
228
|
+
result += parseInt(seconds) * 1e3;
|
|
229
|
+
result += parseInt(milliseconds);
|
|
230
|
+
return result;
|
|
231
|
+
};
|
|
232
|
+
var parseSubs = (rawSubs) => {
|
|
233
|
+
const numberRegex = /^\d+$/;
|
|
234
|
+
const timecodeRegex = /^[0-9]+:[0-9]+:[0-9]+,[0-9]+\s*-->\s*[0-9]+:[0-9]+:[0-9]+,[0-9]+$/;
|
|
235
|
+
const parsedSubs = [];
|
|
236
|
+
rawSubs.split("\n").forEach((line) => {
|
|
237
|
+
if (line.trim() === "") return;
|
|
238
|
+
const lastParsedSub = parsedSubs[parsedSubs.length - 1];
|
|
239
|
+
const matchId = line.match(numberRegex);
|
|
240
|
+
const matchTimecode = line.match(timecodeRegex);
|
|
241
|
+
if (matchId !== null) {
|
|
242
|
+
if (lastParsedSub === void 0 || lastParsedSub.content !== void 0) {
|
|
243
|
+
const parsedSub = { id: parseInt(line) };
|
|
244
|
+
parsedSubs.push(parsedSub);
|
|
245
|
+
return;
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
if (matchTimecode !== null) {
|
|
249
|
+
if (lastParsedSub?.id !== void 0) {
|
|
250
|
+
const [rawStart = "", rawEnd = ""] = line.split("-->");
|
|
251
|
+
const startTime = rawStart.trim();
|
|
252
|
+
const endTime = rawEnd.trim();
|
|
253
|
+
lastParsedSub.start = getTimecodeToMs(startTime);
|
|
254
|
+
lastParsedSub.end = getTimecodeToMs(endTime);
|
|
255
|
+
return;
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
if (lastParsedSub?.id !== void 0 && lastParsedSub?.start !== void 0 && lastParsedSub?.end !== void 0) {
|
|
259
|
+
if (lastParsedSub?.content !== void 0) {
|
|
260
|
+
lastParsedSub.content += "\n" + line;
|
|
261
|
+
return;
|
|
262
|
+
}
|
|
263
|
+
lastParsedSub.content = line;
|
|
264
|
+
}
|
|
265
|
+
});
|
|
266
|
+
return parsedSubs;
|
|
267
|
+
};
|
|
268
|
+
var computeSubGroupsWithBoundaries = (subsGroups, highestSubId) => {
|
|
269
|
+
const fallback = [{ startId: 1, endId: highestSubId }];
|
|
270
|
+
if (subsGroups === void 0 || subsGroups.length === 0) return fallback;
|
|
271
|
+
const emptySubGroupBoundaries = [];
|
|
272
|
+
return subsGroups?.reduce(
|
|
273
|
+
(acc, curr, currIndex) => {
|
|
274
|
+
const lastInAcc = acc[acc.length - 1];
|
|
275
|
+
const startId = lastInAcc === void 0 ? 1 : lastInAcc.endId + 1;
|
|
276
|
+
const endId = curr;
|
|
277
|
+
if (currIndex === (subsGroups?.length ?? 0) - 1 && endId !== highestSubId) {
|
|
278
|
+
return [
|
|
279
|
+
...acc,
|
|
280
|
+
{ startId, endId },
|
|
281
|
+
{ startId: endId + 1, endId: highestSubId }
|
|
282
|
+
];
|
|
283
|
+
}
|
|
284
|
+
return [...acc, { startId, endId }];
|
|
285
|
+
},
|
|
286
|
+
emptySubGroupBoundaries
|
|
287
|
+
) ?? fallback;
|
|
288
|
+
};
|
|
289
|
+
var getCurrentGroup = (subsGroupsWithBoundaries, lastPrevSubId, isEnded) => {
|
|
290
|
+
const previousGroups = subsGroupsWithBoundaries.filter((group) => group.startId <= (lastPrevSubId ?? 0));
|
|
291
|
+
if (previousGroups.length === 0) return isEnded === true ? subsGroupsWithBoundaries[subsGroupsWithBoundaries.length - 1] : subsGroupsWithBoundaries[0];
|
|
292
|
+
return previousGroups[previousGroups.length - 1];
|
|
293
|
+
};
|
|
294
|
+
|
|
295
|
+
// src/components/Subtitles/index.tsx
|
|
296
|
+
import cssModule3 from "./styles.module.css";
|
|
297
|
+
import { jsx as jsx3 } from "react/jsx-runtime";
|
|
298
|
+
var Subtitles = ({
|
|
299
|
+
src,
|
|
300
|
+
srtFileContent,
|
|
301
|
+
subsGroups,
|
|
302
|
+
timecodeMs,
|
|
303
|
+
isEnded,
|
|
304
|
+
className,
|
|
305
|
+
onLoaded,
|
|
306
|
+
onParsed,
|
|
307
|
+
onLoadFailed
|
|
308
|
+
}) => {
|
|
309
|
+
const [isLoading, setIsLoading] = useState3(false);
|
|
310
|
+
const [loadError, setLoadError] = useState3(null);
|
|
311
|
+
const [parsedSubs, setParsedSubs] = useState3([]);
|
|
312
|
+
const pParsedSubs = useRef3(parsedSubs);
|
|
313
|
+
useEffect3(() => {
|
|
314
|
+
if (pParsedSubs.current === parsedSubs) return;
|
|
315
|
+
onParsed?.(parsedSubs);
|
|
316
|
+
}, [parsedSubs]);
|
|
317
|
+
const fetchAndParseSubs = useCallback2(async (src2, srtFileContent2) => {
|
|
318
|
+
if (src2 === void 0) return;
|
|
319
|
+
if (srtFileContent2 !== void 0) return setParsedSubs(parseSubs(srtFileContent2));
|
|
320
|
+
setIsLoading(true);
|
|
321
|
+
setLoadError(null);
|
|
322
|
+
try {
|
|
323
|
+
const response = await fetch(src2);
|
|
324
|
+
const srtContent = await response.text();
|
|
325
|
+
onLoaded?.(srtContent);
|
|
326
|
+
const parsedSubs2 = parseSubs(srtContent);
|
|
327
|
+
setParsedSubs(parsedSubs2);
|
|
328
|
+
} catch (error) {
|
|
329
|
+
setLoadError(error instanceof Error ? error : new Error(unknownToString(error)));
|
|
330
|
+
console.error(error);
|
|
331
|
+
onLoadFailed?.(toError(error));
|
|
332
|
+
} finally {
|
|
333
|
+
setIsLoading(false);
|
|
334
|
+
}
|
|
335
|
+
}, [onLoadFailed, onLoaded]);
|
|
336
|
+
useEffect3(() => {
|
|
337
|
+
fetchAndParseSubs(src, srtFileContent).catch((error) => {
|
|
338
|
+
console.error(error);
|
|
339
|
+
});
|
|
340
|
+
}, [fetchAndParseSubs, src, srtFileContent]);
|
|
341
|
+
const c = clss(subtitles, { cssModule: cssModule3 });
|
|
342
|
+
const rootClss = mergeClassNames(
|
|
343
|
+
c(null, {
|
|
344
|
+
loading: isLoading,
|
|
345
|
+
error: loadError !== null
|
|
346
|
+
}),
|
|
347
|
+
className
|
|
348
|
+
);
|
|
349
|
+
const prevSubs = parsedSubs.filter(({ start }) => start != null && start < (timecodeMs ?? 0));
|
|
350
|
+
const lastPrevSub = prevSubs[prevSubs.length - 1];
|
|
351
|
+
const highestSubId = Math.max(...parsedSubs.map((sub) => sub.id));
|
|
352
|
+
const subsGroupsWithBoundaries = computeSubGroupsWithBoundaries(subsGroups, highestSubId);
|
|
353
|
+
const currentGroup = getCurrentGroup(subsGroupsWithBoundaries, lastPrevSub?.id, isEnded);
|
|
354
|
+
return /* @__PURE__ */ jsx3("div", { className: rootClss, children: timecodeMs !== void 0 && parsedSubs.length > 0 && subsGroupsWithBoundaries.map((group) => {
|
|
355
|
+
const groupSubs = parsedSubs.filter((sub) => sub.id >= group.startId && sub.id <= group.endId);
|
|
356
|
+
const totalSubs = groupSubs.length;
|
|
357
|
+
const groupClass = c("group", { curr: currentGroup?.startId === group.startId });
|
|
358
|
+
const subsNodes = groupSubs.map((sub, subIndex) => {
|
|
359
|
+
let subText = sub.content?.trim() ?? "";
|
|
360
|
+
if (subIndex !== totalSubs - 1) subText += " ";
|
|
361
|
+
const subClass = c("sub", {
|
|
362
|
+
prev: sub.start !== void 0 && lastPrevSub?.start !== void 0 && sub.start <= lastPrevSub.start,
|
|
363
|
+
curr: sub.start !== void 0 && timecodeMs >= sub.start && sub.end !== void 0 && timecodeMs <= sub.end
|
|
364
|
+
});
|
|
365
|
+
return /* @__PURE__ */ jsx3(
|
|
366
|
+
"span",
|
|
367
|
+
{
|
|
368
|
+
className: subClass,
|
|
369
|
+
"data-sub-pos": sub.id,
|
|
370
|
+
children: subText
|
|
371
|
+
},
|
|
372
|
+
sub.id
|
|
373
|
+
);
|
|
374
|
+
});
|
|
375
|
+
return /* @__PURE__ */ jsx3(
|
|
376
|
+
"div",
|
|
377
|
+
{
|
|
378
|
+
className: groupClass,
|
|
379
|
+
"data-start-sub-pos": group.startId,
|
|
380
|
+
"data-end-sub-pos": group.endId,
|
|
381
|
+
children: subsNodes
|
|
382
|
+
},
|
|
383
|
+
group.startId
|
|
384
|
+
);
|
|
385
|
+
}) });
|
|
386
|
+
};
|
|
387
|
+
|
|
34
388
|
// src/components/Video/utils.ts
|
|
35
389
|
var muteAttributeWorkaround = (video2, shouldMute, setIsSoundOn) => {
|
|
36
390
|
if (video2 === null) return;
|
|
@@ -154,8 +508,8 @@ var getTimelineClickProgress = (event, timeline, video2) => {
|
|
|
154
508
|
};
|
|
155
509
|
|
|
156
510
|
// src/components/Video/index.tsx
|
|
157
|
-
import
|
|
158
|
-
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
511
|
+
import cssModule4 from "./styles.module.css";
|
|
512
|
+
import { Fragment, jsx as jsx4, jsxs as jsxs2 } from "react/jsx-runtime";
|
|
159
513
|
var Video = ({
|
|
160
514
|
sources,
|
|
161
515
|
tracks,
|
|
@@ -164,8 +518,8 @@ var Video = ({
|
|
|
164
518
|
loudBtnContent,
|
|
165
519
|
muteBtnContent,
|
|
166
520
|
fullScreenBtnContent,
|
|
167
|
-
subtitles,
|
|
168
|
-
disclaimer,
|
|
521
|
+
subtitles: subtitles2,
|
|
522
|
+
disclaimer: disclaimer2,
|
|
169
523
|
autoPlayWhenVisible,
|
|
170
524
|
autoPauseWhenHidden,
|
|
171
525
|
autoLoudWhenVisible,
|
|
@@ -176,30 +530,30 @@ var Video = ({
|
|
|
176
530
|
className,
|
|
177
531
|
...intrinsicVideoAttributes
|
|
178
532
|
}) => {
|
|
179
|
-
const [isPlaying, setIsPlaying] =
|
|
180
|
-
const [isFullScreen, setIsFullScreen] =
|
|
181
|
-
const [isLoud, setIsLoud] =
|
|
182
|
-
const [currentTime, setCurrentTime] =
|
|
183
|
-
const [totalTime, setTotalTime] =
|
|
184
|
-
const [volume, setVolume] =
|
|
185
|
-
const [playbackRate, setPlaybackRate] =
|
|
186
|
-
const [hasBeenAutoPlayed, setHasBeenAutoPlayed] =
|
|
187
|
-
const [isDisclaimerOn, setIsDisclaimerOn] =
|
|
188
|
-
|
|
533
|
+
const [isPlaying, setIsPlaying] = useState4(false);
|
|
534
|
+
const [isFullScreen, setIsFullScreen] = useState4(false);
|
|
535
|
+
const [isLoud, setIsLoud] = useState4(false);
|
|
536
|
+
const [currentTime, setCurrentTime] = useState4(0);
|
|
537
|
+
const [totalTime, setTotalTime] = useState4(0);
|
|
538
|
+
const [volume, setVolume] = useState4(0);
|
|
539
|
+
const [playbackRate, setPlaybackRate] = useState4(0);
|
|
540
|
+
const [hasBeenAutoPlayed, setHasBeenAutoPlayed] = useState4(false);
|
|
541
|
+
const [isDisclaimerOn, setIsDisclaimerOn] = useState4(
|
|
542
|
+
disclaimer2?.isOn === true || disclaimer2?.defaultIsOn === true || disclaimer2 !== void 0 && disclaimer2.defaultIsOn === void 0
|
|
189
543
|
);
|
|
190
544
|
let shouldDisclaimerBeOn = isDisclaimerOn;
|
|
191
|
-
if (
|
|
545
|
+
if (disclaimer2?.isOn === true) {
|
|
192
546
|
shouldDisclaimerBeOn = true;
|
|
193
547
|
}
|
|
194
|
-
if (
|
|
548
|
+
if (disclaimer2?.isOn === false) {
|
|
195
549
|
shouldDisclaimerBeOn = false;
|
|
196
550
|
}
|
|
197
551
|
const currentTimeMs = secondsToMs(currentTime);
|
|
198
552
|
const totalTimeMs = useMemo(() => secondsToMs(totalTime), [totalTime]);
|
|
199
553
|
const volumePercent = useMemo(() => volume * 100, [volume]);
|
|
200
|
-
const videoRef =
|
|
201
|
-
const $root =
|
|
202
|
-
const handleMetadataLoadEvent =
|
|
554
|
+
const videoRef = useRef4(null);
|
|
555
|
+
const $root = useRef4(null);
|
|
556
|
+
const handleMetadataLoadEvent = useCallback3((e) => {
|
|
203
557
|
if (videoRef.current === null) return;
|
|
204
558
|
const video2 = videoRef.current;
|
|
205
559
|
muteAttributeWorkaround(
|
|
@@ -213,72 +567,72 @@ var Video = ({
|
|
|
213
567
|
setIsLoud(!video2.muted);
|
|
214
568
|
intrinsicVideoAttributes.onLoadedMetadata?.(e);
|
|
215
569
|
}, [intrinsicVideoAttributes.onLoadedMetadata, intrinsicVideoAttributes.muted]);
|
|
216
|
-
const handleVolumeChangeEvent =
|
|
570
|
+
const handleVolumeChangeEvent = useCallback3((e) => {
|
|
217
571
|
const volume2 = e.currentTarget.volume;
|
|
218
572
|
setVolume(volume2);
|
|
219
573
|
intrinsicVideoAttributes.onVolumeChange?.(e);
|
|
220
574
|
}, [intrinsicVideoAttributes.onVolumeChange]);
|
|
221
|
-
const handlePlayEvent =
|
|
575
|
+
const handlePlayEvent = useCallback3((e) => {
|
|
222
576
|
setIsPlaying(true);
|
|
223
577
|
setHasBeenAutoPlayed(true);
|
|
224
578
|
intrinsicVideoAttributes.onPlay?.(e);
|
|
225
579
|
}, [intrinsicVideoAttributes.onPlay]);
|
|
226
|
-
const handlePauseEvent =
|
|
580
|
+
const handlePauseEvent = useCallback3((e) => {
|
|
227
581
|
setIsPlaying(false);
|
|
228
582
|
intrinsicVideoAttributes.onPause?.(e);
|
|
229
583
|
}, [intrinsicVideoAttributes.onPause]);
|
|
230
|
-
const handleRateChangeEvent =
|
|
584
|
+
const handleRateChangeEvent = useCallback3((e) => {
|
|
231
585
|
const currentRate = e.currentTarget.playbackRate;
|
|
232
586
|
setPlaybackRate(currentRate);
|
|
233
587
|
intrinsicVideoAttributes.onRateChange?.(e);
|
|
234
588
|
}, [intrinsicVideoAttributes.onRateChange]);
|
|
235
|
-
const handleTimeUpdateEvent =
|
|
589
|
+
const handleTimeUpdateEvent = useCallback3((e) => {
|
|
236
590
|
const currentTime2 = e.currentTarget.currentTime;
|
|
237
591
|
setCurrentTime(currentTime2);
|
|
238
592
|
intrinsicVideoAttributes?.onTimeUpdate?.(e);
|
|
239
593
|
}, [totalTime, intrinsicVideoAttributes.onTimeUpdate]);
|
|
240
|
-
const handleVolumeRangeChange =
|
|
594
|
+
const handleVolumeRangeChange = useCallback3((e) => {
|
|
241
595
|
const targetVolume = Number(e.currentTarget.value);
|
|
242
596
|
actionHandlers?.volumeRangeChange?.(e, targetVolume, volume, videoRef.current);
|
|
243
597
|
forceVolume(videoRef.current, targetVolume, setVolume);
|
|
244
598
|
}, [actionHandlers?.volumeRangeChange, volume]);
|
|
245
|
-
const handleLoudButtonClick =
|
|
599
|
+
const handleLoudButtonClick = useCallback3((e) => {
|
|
246
600
|
actionHandlers?.loudButtonClick?.(e, isLoud, videoRef.current);
|
|
247
601
|
forceLoud(videoRef.current, setIsLoud);
|
|
248
602
|
}, [actionHandlers?.loudButtonClick, isLoud]);
|
|
249
|
-
const handleMuteButtonClick =
|
|
603
|
+
const handleMuteButtonClick = useCallback3((e) => {
|
|
250
604
|
actionHandlers?.muteButtonClick?.(e, isLoud, videoRef.current);
|
|
251
605
|
forceMute(videoRef.current, setIsLoud);
|
|
252
606
|
}, [actionHandlers?.muteButtonClick, isLoud]);
|
|
253
|
-
const handlePlayButtonClick =
|
|
607
|
+
const handlePlayButtonClick = useCallback3((e) => {
|
|
254
608
|
actionHandlers?.playButtonClick?.(e, isPlaying, videoRef.current);
|
|
255
609
|
void forcePlay(videoRef.current, shouldDisclaimerBeOn, setIsPlaying);
|
|
256
610
|
}, [actionHandlers?.playButtonClick, isPlaying, shouldDisclaimerBeOn]);
|
|
257
|
-
const handlePauseButtonClick =
|
|
611
|
+
const handlePauseButtonClick = useCallback3((e) => {
|
|
258
612
|
actionHandlers?.pauseButtonClick?.(e, isPlaying, videoRef.current);
|
|
259
613
|
forcePause(videoRef.current, setIsPlaying);
|
|
260
614
|
}, [actionHandlers?.pauseButtonClick, isPlaying]);
|
|
261
|
-
const handleFullScreenButtonClick =
|
|
615
|
+
const handleFullScreenButtonClick = useCallback3((e) => {
|
|
262
616
|
actionHandlers?.fullscreenButtonClick?.(e, isFullScreen, videoRef.current);
|
|
263
617
|
if (isFullScreen) void forceExitFullScreen(videoRef.current, setIsFullScreen);
|
|
264
618
|
else void forceFullScreen(videoRef.current, shouldDisclaimerBeOn, setIsFullScreen);
|
|
265
619
|
}, [isFullScreen, shouldDisclaimerBeOn]);
|
|
266
|
-
const handleRateRangeChange =
|
|
620
|
+
const handleRateRangeChange = useCallback3((e) => {
|
|
267
621
|
const rate = Number(e.currentTarget.value);
|
|
268
622
|
actionHandlers?.rateRangeChange?.(e, rate, playbackRate, videoRef.current);
|
|
269
623
|
forcePlaybackRate(videoRef.current, rate, setPlaybackRate);
|
|
270
624
|
}, [actionHandlers?.rateRangeChange, playbackRate]);
|
|
271
|
-
const handleTimelineClick =
|
|
625
|
+
const handleTimelineClick = useCallback3((e) => {
|
|
272
626
|
const progress = getTimelineClickProgress(e, e.currentTarget, videoRef.current);
|
|
273
627
|
const time = progress * totalTime;
|
|
274
628
|
actionHandlers?.timelineClick?.(e, time, currentTime, videoRef.current);
|
|
275
629
|
forceCurrentTime(videoRef.current, time, setCurrentTime);
|
|
276
630
|
}, [actionHandlers?.timelineClick, totalTime, currentTime]);
|
|
277
|
-
const handleDisclaimerDismiss =
|
|
631
|
+
const handleDisclaimerDismiss = useCallback3(() => {
|
|
278
632
|
setIsDisclaimerOn(false);
|
|
279
633
|
if (intrinsicVideoAttributes.autoPlay === true && !hasBeenAutoPlayed) void forcePlay(videoRef.current, shouldDisclaimerBeOn, setIsPlaying);
|
|
280
|
-
}, [
|
|
281
|
-
|
|
634
|
+
}, [disclaimer2, intrinsicVideoAttributes.autoPlay, shouldDisclaimerBeOn]);
|
|
635
|
+
useEffect4(() => {
|
|
282
636
|
if (isDisclaimerOn !== shouldDisclaimerBeOn) setIsDisclaimerOn(shouldDisclaimerBeOn);
|
|
283
637
|
if (shouldDisclaimerBeOn) {
|
|
284
638
|
forceMute(videoRef.current, setIsLoud);
|
|
@@ -294,22 +648,22 @@ var Video = ({
|
|
|
294
648
|
intrinsicVideoAttributes,
|
|
295
649
|
hasBeenAutoPlayed
|
|
296
650
|
]);
|
|
297
|
-
|
|
651
|
+
useEffect4(() => {
|
|
298
652
|
stateHandlers?.isPlaying?.(isPlaying);
|
|
299
653
|
}, [isPlaying, stateHandlers?.isPlaying]);
|
|
300
|
-
|
|
654
|
+
useEffect4(() => {
|
|
301
655
|
stateHandlers?.isFullScreen?.(isFullScreen);
|
|
302
656
|
}, [isFullScreen, stateHandlers?.isFullScreen]);
|
|
303
|
-
|
|
657
|
+
useEffect4(() => {
|
|
304
658
|
stateHandlers?.isLoud?.(isLoud);
|
|
305
659
|
}, [isLoud, stateHandlers?.isLoud]);
|
|
306
|
-
|
|
660
|
+
useEffect4(() => {
|
|
307
661
|
stateHandlers?.volume?.(volume);
|
|
308
662
|
}, [volume, stateHandlers?.volume]);
|
|
309
|
-
|
|
663
|
+
useEffect4(() => {
|
|
310
664
|
stateHandlers?.playbackRate?.(playbackRate);
|
|
311
665
|
}, [playbackRate, stateHandlers?.playbackRate]);
|
|
312
|
-
|
|
666
|
+
useEffect4(() => {
|
|
313
667
|
stateHandlers?.currentTime?.(currentTime);
|
|
314
668
|
}, [currentTime, stateHandlers?.currentTime]);
|
|
315
669
|
const parsedSources = useMemo(() => {
|
|
@@ -332,7 +686,7 @@ var Video = ({
|
|
|
332
686
|
}
|
|
333
687
|
return [];
|
|
334
688
|
}, [tracks]);
|
|
335
|
-
const c = clss(video, { cssModule });
|
|
689
|
+
const c = clss(video, { cssModule: cssModule4 });
|
|
336
690
|
const rootClss = mergeClassNames(c(null, {
|
|
337
691
|
"play-on": isPlaying,
|
|
338
692
|
"play-off": !isPlaying,
|
|
@@ -373,8 +727,8 @@ var Video = ({
|
|
|
373
727
|
const currentTimeClss = c("current-time");
|
|
374
728
|
const totalTimeClss = c("total-time");
|
|
375
729
|
const timelineClss = c("timeline");
|
|
376
|
-
const sensitiveContent = /* @__PURE__ */
|
|
377
|
-
/* @__PURE__ */
|
|
730
|
+
const sensitiveContent = /* @__PURE__ */ jsxs2(Fragment, { children: [
|
|
731
|
+
/* @__PURE__ */ jsxs2(
|
|
378
732
|
"video",
|
|
379
733
|
{
|
|
380
734
|
ref: videoRef,
|
|
@@ -390,13 +744,13 @@ var Video = ({
|
|
|
390
744
|
muted: shouldDisclaimerBeOn ? true : intrinsicVideoAttributes.muted,
|
|
391
745
|
children: [
|
|
392
746
|
parsedSources.map(
|
|
393
|
-
(source, index) => typeof source === "string" ? /* @__PURE__ */
|
|
747
|
+
(source, index) => typeof source === "string" ? /* @__PURE__ */ jsx4(
|
|
394
748
|
"source",
|
|
395
749
|
{
|
|
396
750
|
src: source
|
|
397
751
|
},
|
|
398
752
|
index
|
|
399
|
-
) : /* @__PURE__ */
|
|
753
|
+
) : /* @__PURE__ */ jsx4(
|
|
400
754
|
"source",
|
|
401
755
|
{
|
|
402
756
|
src: source.src,
|
|
@@ -406,13 +760,13 @@ var Video = ({
|
|
|
406
760
|
)
|
|
407
761
|
),
|
|
408
762
|
parsedTracks.map(
|
|
409
|
-
(track, index) => typeof track === "string" ? /* @__PURE__ */
|
|
763
|
+
(track, index) => typeof track === "string" ? /* @__PURE__ */ jsx4(
|
|
410
764
|
"track",
|
|
411
765
|
{
|
|
412
766
|
src: track
|
|
413
767
|
},
|
|
414
768
|
index
|
|
415
|
-
) : /* @__PURE__ */
|
|
769
|
+
) : /* @__PURE__ */ jsx4(
|
|
416
770
|
"track",
|
|
417
771
|
{
|
|
418
772
|
src: track.src,
|
|
@@ -428,12 +782,12 @@ var Video = ({
|
|
|
428
782
|
]
|
|
429
783
|
}
|
|
430
784
|
),
|
|
431
|
-
/* @__PURE__ */
|
|
432
|
-
/* @__PURE__ */
|
|
433
|
-
/* @__PURE__ */
|
|
434
|
-
/* @__PURE__ */
|
|
435
|
-
/* @__PURE__ */
|
|
436
|
-
/* @__PURE__ */
|
|
785
|
+
/* @__PURE__ */ jsxs2("div", { className: videoControlsClss, children: [
|
|
786
|
+
/* @__PURE__ */ jsx4("button", { className: playBtnClss, onClick: handlePlayButtonClick, children: playBtnContent }),
|
|
787
|
+
/* @__PURE__ */ jsx4("button", { className: pauseBtnClss, onClick: handlePauseButtonClick, children: pauseBtnContent }),
|
|
788
|
+
/* @__PURE__ */ jsx4("button", { className: loudBtnClss, onClick: handleLoudButtonClick, children: loudBtnContent }),
|
|
789
|
+
/* @__PURE__ */ jsx4("button", { className: muteBtnClss, onClick: handleMuteButtonClick, children: muteBtnContent }),
|
|
790
|
+
/* @__PURE__ */ jsx4(
|
|
437
791
|
"input",
|
|
438
792
|
{
|
|
439
793
|
type: "range",
|
|
@@ -445,9 +799,9 @@ var Video = ({
|
|
|
445
799
|
step: 1
|
|
446
800
|
}
|
|
447
801
|
),
|
|
448
|
-
/* @__PURE__ */
|
|
449
|
-
/* @__PURE__ */
|
|
450
|
-
/* @__PURE__ */
|
|
802
|
+
/* @__PURE__ */ jsx4("span", { className: volumePcntClss, children: volumePercent }),
|
|
803
|
+
/* @__PURE__ */ jsx4("button", { className: fullScreenBtnClss, onClick: handleFullScreenButtonClick, children: fullScreenBtnContent }),
|
|
804
|
+
/* @__PURE__ */ jsx4(
|
|
451
805
|
"input",
|
|
452
806
|
{
|
|
453
807
|
type: "range",
|
|
@@ -459,25 +813,25 @@ var Video = ({
|
|
|
459
813
|
step: 0.25
|
|
460
814
|
}
|
|
461
815
|
),
|
|
462
|
-
/* @__PURE__ */
|
|
816
|
+
/* @__PURE__ */ jsx4("span", { className: playbackRateClss, children: playbackRate })
|
|
463
817
|
] }),
|
|
464
|
-
/* @__PURE__ */
|
|
465
|
-
/* @__PURE__ */
|
|
466
|
-
/* @__PURE__ */
|
|
467
|
-
/* @__PURE__ */
|
|
818
|
+
/* @__PURE__ */ jsxs2("div", { className: timeControlsClss, children: [
|
|
819
|
+
/* @__PURE__ */ jsx4("span", { className: currentTimeClss, children: formatTime(currentTimeMs, "mm:ss:ms") }),
|
|
820
|
+
/* @__PURE__ */ jsx4("span", { className: totalTimeClss, children: formatTime(totalTimeMs, "mm:ss:ms") }),
|
|
821
|
+
/* @__PURE__ */ jsx4("div", { className: timelineClss, onClick: handleTimelineClick })
|
|
468
822
|
] }),
|
|
469
|
-
|
|
823
|
+
subtitles2 !== void 0 && /* @__PURE__ */ jsx4(
|
|
470
824
|
Subtitles,
|
|
471
825
|
{
|
|
472
|
-
...
|
|
826
|
+
...subtitles2,
|
|
473
827
|
timecodeMs: currentTimeMs
|
|
474
828
|
}
|
|
475
829
|
)
|
|
476
830
|
] });
|
|
477
|
-
const disclaimedContent =
|
|
831
|
+
const disclaimedContent = disclaimer2 !== void 0 ? /* @__PURE__ */ jsx4(
|
|
478
832
|
Disclaimer,
|
|
479
833
|
{
|
|
480
|
-
...
|
|
834
|
+
...disclaimer2,
|
|
481
835
|
isOn: shouldDisclaimerBeOn,
|
|
482
836
|
actionHandlers: {
|
|
483
837
|
dismissClick: handleDisclaimerDismiss
|
|
@@ -485,14 +839,14 @@ var Video = ({
|
|
|
485
839
|
children: sensitiveContent
|
|
486
840
|
}
|
|
487
841
|
) : sensitiveContent;
|
|
488
|
-
const observedContent = autoLoudWhenVisible === true || autoMuteWhenHidden === true || autoPlayWhenVisible === true || autoPauseWhenHidden === true ? /* @__PURE__ */
|
|
842
|
+
const observedContent = autoLoudWhenVisible === true || autoMuteWhenHidden === true || autoPlayWhenVisible === true || autoPauseWhenHidden === true ? /* @__PURE__ */ jsx4(IntersectionObserverComponent, { onIntersected: ({ ioEntry }) => {
|
|
489
843
|
const { isIntersecting = false } = ioEntry ?? {};
|
|
490
844
|
if (autoMuteWhenHidden === true && !isIntersecting) forceMute(videoRef.current, setIsLoud);
|
|
491
845
|
if (autoPauseWhenHidden === true && !isIntersecting) forcePause(videoRef.current, setIsPlaying);
|
|
492
846
|
if (autoPlayWhenVisible === true && !hasBeenAutoPlayed && !shouldDisclaimerBeOn && isIntersecting) void forcePlay(videoRef.current, shouldDisclaimerBeOn, setIsPlaying);
|
|
493
847
|
if (autoLoudWhenVisible === true && !hasBeenAutoPlayed && !shouldDisclaimerBeOn && isIntersecting) forceLoud(videoRef.current, setIsLoud);
|
|
494
848
|
}, children: disclaimedContent }) : disclaimedContent;
|
|
495
|
-
return /* @__PURE__ */
|
|
849
|
+
return /* @__PURE__ */ jsx4(
|
|
496
850
|
"figure",
|
|
497
851
|
{
|
|
498
852
|
className: rootClss,
|