@bysages/solid 0.4.4 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/ai-NX47X8sz.mjs +365 -0
- package/dist/ai-prompt-input-CEnnpkgi.mjs +486 -0
- package/dist/{ai-response-CJ-uEAgj.mjs → ai-response-BM_DVIDY.mjs} +25 -27
- package/dist/{chevron-BHQrYKPM.mjs → chevron-DGKPHc2O.mjs} +2 -3
- package/dist/components/accordion/index.d.mts +1 -2
- package/dist/components/accordion/index.mjs +9 -16
- package/dist/components/affix/index.d.mts +1 -3
- package/dist/components/affix/index.mjs +19 -18
- package/dist/components/ai/index.d.mts +95 -2
- package/dist/components/ai/index.mjs +7 -69
- package/dist/components/ai-action/index.d.mts +0 -2
- package/dist/components/ai-action/index.mjs +4 -5
- package/dist/components/ai-attachments/index.d.mts +0 -2
- package/dist/components/ai-attachments/index.mjs +39 -52
- package/dist/components/ai-message/index.d.mts +2 -15
- package/dist/components/ai-message/index.mjs +18 -15
- package/dist/components/ai-prompt-input/index.d.mts +19 -15
- package/dist/components/ai-prompt-input/index.mjs +1 -168
- package/dist/components/ai-reasoning/index.d.mts +0 -2
- package/dist/components/ai-reasoning/index.mjs +8 -13
- package/dist/components/ai-response/index.d.mts +1 -3
- package/dist/components/ai-response/index.mjs +1 -2
- package/dist/components/ai-source/index.d.mts +0 -2
- package/dist/components/ai-source/index.mjs +25 -26
- package/dist/components/ai-suggestion/index.d.mts +0 -2
- package/dist/components/ai-suggestion/index.mjs +3 -4
- package/dist/components/ai-tool/index.d.mts +2 -25
- package/dist/components/ai-tool/index.mjs +75 -40
- package/dist/components/alert/index.d.mts +1 -2
- package/dist/components/alert/index.mjs +38 -33
- package/dist/components/angle-slider/index.d.mts +1 -2
- package/dist/components/angle-slider/index.mjs +6 -9
- package/dist/components/aspect-ratio/index.d.mts +1 -3
- package/dist/components/aspect-ratio/index.mjs +18 -17
- package/dist/components/autocomplete/index.d.mts +1 -2
- package/dist/components/autocomplete/index.mjs +6 -8
- package/dist/components/avatar/index.d.mts +1 -2
- package/dist/components/avatar/index.mjs +6 -7
- package/dist/components/avatar-group/index.d.mts +1 -3
- package/dist/components/avatar-group/index.mjs +15 -14
- package/dist/components/back-top/index.d.mts +1 -3
- package/dist/components/back-top/index.mjs +29 -34
- package/dist/components/badge/index.d.mts +1 -3
- package/dist/components/badge/index.mjs +18 -17
- package/dist/components/banner/index.d.mts +1 -2
- package/dist/components/banner/index.mjs +32 -31
- package/dist/components/bento/index.d.mts +1 -3
- package/dist/components/bento/index.mjs +30 -31
- package/dist/components/block-ui/index.d.mts +1 -3
- package/dist/components/block-ui/index.mjs +30 -33
- package/dist/components/breadcrumb/index.d.mts +1 -2
- package/dist/components/breadcrumb/index.mjs +8 -13
- package/dist/components/browser/index.d.mts +1 -3
- package/dist/components/browser/index.mjs +50 -51
- package/dist/components/button/index.d.mts +1 -3
- package/dist/components/button/index.mjs +31 -30
- package/dist/components/button-group/index.d.mts +1 -3
- package/dist/components/button-group/index.mjs +21 -20
- package/dist/components/calendar/index.d.mts +0 -2
- package/dist/components/calendar/index.mjs +73 -116
- package/dist/components/card/index.d.mts +1 -3
- package/dist/components/card/index.mjs +3 -4
- package/dist/components/carousel/index.d.mts +1 -2
- package/dist/components/carousel/index.mjs +6 -7
- package/dist/components/cascade-select/index.d.mts +1 -3
- package/dist/components/cascade-select/index.mjs +127 -167
- package/dist/components/checkbox/index.d.mts +1 -2
- package/dist/components/checkbox/index.mjs +7 -10
- package/dist/components/checkbox-group/index.d.mts +1 -2
- package/dist/components/checkbox-group/index.mjs +9 -12
- package/dist/components/chip/index.d.mts +1 -3
- package/dist/components/chip/index.mjs +22 -25
- package/dist/components/client-only/index.d.mts +0 -2
- package/dist/components/client-only/index.mjs +2 -3
- package/dist/components/clipboard/index.d.mts +1 -2
- package/dist/components/clipboard/index.mjs +10 -17
- package/dist/components/collapsible/index.d.mts +1 -2
- package/dist/components/collapsible/index.mjs +7 -14
- package/dist/components/collection/index.mjs +1 -2
- package/dist/components/color-picker/index.d.mts +1 -2
- package/dist/components/color-picker/index.mjs +10 -14
- package/dist/components/combobox/index.d.mts +1 -2
- package/dist/components/combobox/index.mjs +9 -14
- package/dist/components/command/index.d.mts +1 -2
- package/dist/components/command/index.mjs +63 -80
- package/dist/components/comment/index.d.mts +1 -3
- package/dist/components/comment/index.mjs +64 -80
- package/dist/components/config-provider/index.d.mts +1 -3
- package/dist/components/config-provider/index.mjs +10 -13
- package/dist/components/container/index.d.mts +1 -3
- package/dist/components/container/index.mjs +18 -17
- package/dist/components/data-view/index.d.mts +1 -3
- package/dist/components/data-view/index.mjs +81 -90
- package/dist/components/date-input/index.d.mts +1 -2
- package/dist/components/date-input/index.mjs +6 -9
- package/dist/components/date-picker/index.d.mts +1 -2
- package/dist/components/date-picker/index.mjs +11 -16
- package/dist/components/deferred-content/index.d.mts +1 -3
- package/dist/components/deferred-content/index.mjs +24 -25
- package/dist/components/descriptions/index.d.mts +1 -2
- package/dist/components/descriptions/index.mjs +40 -39
- package/dist/components/dialog/index.d.mts +11 -2
- package/dist/components/dialog/index.mjs +78 -40
- package/dist/components/dock/index.d.mts +1 -3
- package/dist/components/dock/index.mjs +29 -30
- package/dist/components/download-trigger/index.d.mts +0 -2
- package/dist/components/download-trigger/index.mjs +2 -3
- package/dist/components/drawer/index.d.mts +1 -2
- package/dist/components/drawer/index.mjs +9 -18
- package/dist/components/dynamic-input/index.d.mts +1 -3
- package/dist/components/dynamic-input/index.mjs +73 -77
- package/dist/components/editable/index.d.mts +1 -2
- package/dist/components/editable/index.mjs +7 -10
- package/dist/components/ellipsis/index.d.mts +1 -3
- package/dist/components/ellipsis/index.mjs +21 -20
- package/dist/components/empty/index.d.mts +1 -3
- package/dist/components/empty/index.mjs +3 -4
- package/dist/components/field/index.d.mts +1 -2
- package/dist/components/field/index.mjs +4 -5
- package/dist/components/fieldset/index.d.mts +1 -2
- package/dist/components/fieldset/index.mjs +6 -9
- package/dist/components/file-upload/index.d.mts +1 -2
- package/dist/components/file-upload/index.mjs +6 -7
- package/dist/components/float-button/index.d.mts +1 -2
- package/dist/components/float-button/index.mjs +41 -43
- package/dist/components/floating-panel/index.d.mts +1 -2
- package/dist/components/floating-panel/index.mjs +10 -21
- package/dist/components/focus-trap/index.d.mts +0 -2
- package/dist/components/focus-trap/index.mjs +2 -3
- package/dist/components/form/index.d.mts +0 -2
- package/dist/components/form/index.mjs +42 -58
- package/dist/components/format/index.d.mts +1 -3
- package/dist/components/format/index.mjs +1 -2
- package/dist/components/frame/index.d.mts +1 -2
- package/dist/components/frame/index.mjs +3 -4
- package/dist/components/grid/index.d.mts +1 -3
- package/dist/components/grid/index.mjs +23 -22
- package/dist/components/highlight/index.d.mts +1 -3
- package/dist/components/highlight/index.mjs +2 -3
- package/dist/components/hover-card/index.d.mts +1 -2
- package/dist/components/hover-card/index.mjs +12 -27
- package/dist/components/icon/index.d.mts +1 -3
- package/dist/components/icon/index.mjs +35 -36
- package/dist/components/image/index.d.mts +1 -3
- package/dist/components/image/index.mjs +48 -52
- package/dist/components/image-cropper/index.d.mts +1 -2
- package/dist/components/image-cropper/index.mjs +5 -6
- package/dist/components/image-viewer/index.d.mts +1 -1
- package/dist/components/image-viewer/index.mjs +1 -2
- package/dist/components/input/index.d.mts +1 -3
- package/dist/components/input/index.mjs +1 -2
- package/dist/components/input-group/index.d.mts +1 -2
- package/dist/components/input-group/index.mjs +19 -16
- package/dist/components/json-tree-view/index.d.mts +1 -2
- package/dist/components/json-tree-view/index.mjs +5 -6
- package/dist/components/kbd/index.d.mts +1 -3
- package/dist/components/kbd/index.mjs +12 -11
- package/dist/components/layout/index.d.mts +1 -2
- package/dist/components/layout/index.mjs +92 -84
- package/dist/components/link/index.d.mts +1 -3
- package/dist/components/link/index.mjs +15 -15
- package/dist/components/list/index.d.mts +1 -2
- package/dist/components/list/index.mjs +57 -61
- package/dist/components/listbox/index.d.mts +1 -2
- package/dist/components/listbox/index.mjs +8 -11
- package/dist/components/marquee/index.d.mts +1 -2
- package/dist/components/marquee/index.mjs +7 -8
- package/dist/components/masonry/index.d.mts +1 -3
- package/dist/components/masonry/index.mjs +19 -18
- package/dist/components/media-player/index.d.mts +1 -1
- package/dist/components/media-player/index.mjs +1 -2
- package/dist/components/mentions/index.d.mts +2 -2
- package/dist/components/mentions/index.mjs +1 -3
- package/dist/components/menu/index.d.mts +1 -2
- package/dist/components/menu/index.mjs +8 -17
- package/dist/components/menubar/index.d.mts +1 -2
- package/dist/components/menubar/index.mjs +66 -72
- package/dist/components/meter/index.d.mts +1 -2
- package/dist/components/meter/index.mjs +42 -43
- package/dist/components/navigation-menu/index.d.mts +1 -2
- package/dist/components/navigation-menu/index.mjs +7 -12
- package/dist/components/number-input/index.d.mts +1 -2
- package/dist/components/number-input/index.mjs +7 -10
- package/dist/components/order-list/index.d.mts +1 -3
- package/dist/components/order-list/index.mjs +86 -101
- package/dist/components/page-header/index.d.mts +1 -3
- package/dist/components/page-header/index.mjs +3 -4
- package/dist/components/pagination/index.d.mts +1 -2
- package/dist/components/pagination/index.mjs +31 -42
- package/dist/components/password-input/index.d.mts +1 -2
- package/dist/components/password-input/index.mjs +6 -7
- package/dist/components/pin-input/index.d.mts +1 -2
- package/dist/components/pin-input/index.mjs +6 -9
- package/dist/components/popconfirm/index.d.mts +2 -3
- package/dist/components/popconfirm/index.mjs +15 -23
- package/dist/components/popover/index.d.mts +2 -26
- package/dist/components/popover/index.mjs +10 -21
- package/dist/components/presence/index.d.mts +0 -2
- package/dist/components/presence/index.mjs +2 -3
- package/dist/components/progress/index.d.mts +1 -2
- package/dist/components/progress/index.mjs +14 -26
- package/dist/components/progress-group/index.d.mts +1 -3
- package/dist/components/progress-group/index.mjs +60 -68
- package/dist/components/qr-code/index.d.mts +1 -2
- package/dist/components/qr-code/index.mjs +5 -8
- package/dist/components/radio-group/index.d.mts +1 -2
- package/dist/components/radio-group/index.mjs +6 -9
- package/dist/components/rating-group/index.d.mts +1 -2
- package/dist/components/rating-group/index.mjs +7 -10
- package/dist/components/result/index.d.mts +1 -2
- package/dist/components/result/index.mjs +28 -29
- package/dist/components/scroll-area/index.d.mts +8 -3
- package/dist/components/scroll-area/index.mjs +19 -11
- package/dist/components/segment-group/index.d.mts +1 -2
- package/dist/components/segment-group/index.mjs +5 -8
- package/dist/components/select/index.d.mts +1 -1
- package/dist/components/select/index.mjs +1 -2
- package/dist/components/separator/index.d.mts +1 -3
- package/dist/components/separator/index.mjs +21 -20
- package/dist/components/signature-pad/index.d.mts +1 -2
- package/dist/components/signature-pad/index.mjs +7 -10
- package/dist/components/skeleton/index.d.mts +1 -3
- package/dist/components/skeleton/index.mjs +12 -11
- package/dist/components/slider/index.d.mts +1 -2
- package/dist/components/slider/index.mjs +6 -9
- package/dist/components/spinner/index.d.mts +1 -3
- package/dist/components/spinner/index.mjs +20 -19
- package/dist/components/split-button/index.d.mts +1 -2
- package/dist/components/split-button/index.mjs +92 -94
- package/dist/components/splitter/index.d.mts +1 -2
- package/dist/components/splitter/index.mjs +5 -8
- package/dist/components/spotlight/index.d.mts +1 -3
- package/dist/components/spotlight/index.mjs +22 -23
- package/dist/components/stack/index.d.mts +1 -3
- package/dist/components/stack/index.mjs +24 -23
- package/dist/components/stat/index.d.mts +1 -2
- package/dist/components/stat/index.mjs +15 -14
- package/dist/components/steps/index.d.mts +0 -2
- package/dist/components/steps/index.mjs +10 -17
- package/dist/components/swap/index.d.mts +1 -2
- package/dist/components/swap/index.mjs +5 -6
- package/dist/components/switch/index.d.mts +1 -2
- package/dist/components/switch/index.mjs +6 -9
- package/dist/components/table/index.d.mts +0 -2
- package/dist/components/table/index.mjs +233 -320
- package/dist/components/tabs/index.d.mts +8 -12
- package/dist/components/tabs/index.mjs +83 -34
- package/dist/components/tag/index.d.mts +1 -2
- package/dist/components/tag/index.mjs +46 -70
- package/dist/components/tags-input/index.d.mts +1 -2
- package/dist/components/tags-input/index.mjs +7 -10
- package/dist/components/terminal/index.d.mts +3 -3
- package/dist/components/terminal/index.mjs +61 -56
- package/dist/components/textarea/index.d.mts +1 -3
- package/dist/components/textarea/index.mjs +10 -11
- package/dist/components/timeline/index.d.mts +1 -2
- package/dist/components/timeline/index.mjs +15 -14
- package/dist/components/timer/index.d.mts +1 -2
- package/dist/components/timer/index.mjs +5 -6
- package/dist/components/toast/index.d.mts +0 -2
- package/dist/components/toast/index.mjs +5 -6
- package/dist/components/toc/index.d.mts +1 -1
- package/dist/components/toc/index.mjs +1 -2
- package/dist/components/toggle/index.d.mts +1 -2
- package/dist/components/toggle/index.mjs +5 -6
- package/dist/components/toggle-group/index.d.mts +1 -2
- package/dist/components/toggle-group/index.mjs +11 -16
- package/dist/components/toolbar/index.d.mts +1 -3
- package/dist/components/toolbar/index.mjs +27 -31
- package/dist/components/tooltip/index.d.mts +1 -2
- package/dist/components/tooltip/index.mjs +7 -16
- package/dist/components/tour/index.d.mts +0 -2
- package/dist/components/tour/index.mjs +11 -16
- package/dist/components/transfer/index.d.mts +1 -2
- package/dist/components/transfer/index.mjs +115 -126
- package/dist/components/tree-select/index.d.mts +2 -3
- package/dist/components/tree-select/index.mjs +24 -33
- package/dist/components/tree-view/index.d.mts +10 -4
- package/dist/components/tree-view/index.mjs +32 -23
- package/dist/components/typography/index.d.mts +2 -3
- package/dist/components/typography/index.mjs +4 -4
- package/dist/components/user/index.d.mts +1 -3
- package/dist/components/user/index.mjs +40 -57
- package/dist/components/virtual-list/index.d.mts +1 -3
- package/dist/components/virtual-list/index.mjs +39 -45
- package/dist/components/watermark/index.d.mts +1 -3
- package/dist/components/watermark/index.mjs +15 -22
- package/dist/{element-dGIhOTJ6.mjs → element-liigPBUh.mjs} +1 -2
- package/dist/{family-Cmd8HEyK.mjs → family-B5HtE0on.mjs} +1 -2
- package/dist/generative/index.d.mts +0 -2
- package/dist/generative/index.mjs +28 -53
- package/dist/{icon-DTqmJCd5.mjs → icon-DQqYA2fO.mjs} +11 -17
- package/dist/{id-2ygNzPHF.mjs → id-DGvz-2rQ.mjs} +1 -2
- package/dist/{image-viewer-19s75Hz_.mjs → image-viewer-TEia4PaY.mjs} +73 -101
- package/dist/{index-BU5U5w04.d.mts → index-B4WyTngM.d.mts} +0 -4
- package/dist/index-BRvSfkKs.d.mts +25 -0
- package/dist/{index-DhripUtf.d.mts → index-CTsFsYdA.d.mts} +0 -4
- package/dist/index-CutrHCzU.d.mts +153 -0
- package/dist/{index-wW28BYf1.d.mts → index-CwmZdzxT.d.mts} +0 -8
- package/dist/index-DK7YgaAU.d.mts +37 -0
- package/dist/index-Dms00480.d.mts +115 -0
- package/dist/{index-ID48LCMU.d.mts → index-Dv6mwzIr.d.mts} +3 -7
- package/dist/index.d.mts +13 -13
- package/dist/index.mjs +12 -12
- package/dist/{input-BL3N3L8g.mjs → input-2xfPP-7Z.mjs} +11 -13
- package/dist/{media-player-yF7KVUxM.mjs → media-player-LHnTiSiN.mjs} +248 -259
- package/dist/mentions-CvY9IGzc.mjs +438 -0
- package/dist/{select-DI7pFspF.mjs → select-NaNlrYUT.mjs} +72 -96
- package/dist/{toc-DRHr8_eD.mjs → toc-RnPG3w7q.mjs} +5 -7
- package/dist/{use-component-messages-C4SCVYjD.mjs → use-component-messages-DS9ppb4C.mjs} +1 -2
- package/package.json +13 -13
- package/dist/index-DEArHiFI.d.mts +0 -104
- package/dist/index-DVc1L_zt.d.mts +0 -10435
- package/dist/mentions-DKUG7eHt.mjs +0 -279
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import { r as iconNode } from "./icon-
|
|
2
|
-
import { t as Select } from "./select-
|
|
3
|
-
import { createComponent, effect, insert, memo, mergeProps,
|
|
1
|
+
import { r as iconNode } from "./icon-DQqYA2fO.mjs";
|
|
2
|
+
import { t as Select } from "./select-NaNlrYUT.mjs";
|
|
3
|
+
import { Dynamic, createComponent, effect, insert, memo, mergeProps, setAttribute, spread, template, use } from "solid-js/web";
|
|
4
4
|
import { injectComponentStyle } from "@bysages/core/styling";
|
|
5
5
|
import { For, Show, createContext, createEffect, createSignal, onCleanup, splitProps, useContext } from "solid-js";
|
|
6
|
-
|
|
7
|
-
//#region src/components/media-player/use-media-controls.ts
|
|
6
|
+
// src/components/media-player/use-media-controls.ts
|
|
8
7
|
/** The shared HTMLMediaElement state: one source of truth for both the
|
|
9
8
|
* audio and video faces, so their controls never drift apart. */
|
|
10
9
|
function useMediaControls(media) {
|
|
@@ -147,9 +146,8 @@ function formatMediaTime(seconds) {
|
|
|
147
146
|
const secs = String(whole % 3600 % 60).padStart(2, "0");
|
|
148
147
|
return hours > 0 ? `${hours}:${String(minutes).padStart(2, "0")}:${secs}` : `${minutes}:${secs}`;
|
|
149
148
|
}
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
var _tmpl$$1 = /* @__PURE__ */ template(`<div>`);
|
|
149
|
+
// src/components/media-player/shell.tsx
|
|
150
|
+
var _tmpl$$1 = /*#__PURE__*/ template(`<div>`);
|
|
153
151
|
const MediaPlayerProvider = createContext();
|
|
154
152
|
function useMediaPlayer() {
|
|
155
153
|
const context = useContext(MediaPlayerProvider);
|
|
@@ -240,30 +238,26 @@ function MediaPlayerShell(props) {
|
|
|
240
238
|
value: context,
|
|
241
239
|
get children() {
|
|
242
240
|
var _el$ = _tmpl$$1();
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
root.current = element;
|
|
246
|
-
};
|
|
241
|
+
use((element) => {
|
|
242
|
+
root.current = element;
|
|
247
243
|
}, _el$);
|
|
248
|
-
spread(_el$,
|
|
244
|
+
spread(_el$, mergeProps(rest, {
|
|
249
245
|
"data-scope": "media-player",
|
|
250
246
|
"data-part": "root",
|
|
251
|
-
get "data-kind"() {
|
|
247
|
+
get ["data-kind"]() {
|
|
252
248
|
return local.kind;
|
|
253
249
|
},
|
|
254
|
-
get "data-playing"() {
|
|
250
|
+
get ["data-playing"]() {
|
|
255
251
|
return controls.playing();
|
|
256
252
|
},
|
|
257
|
-
get "data-muted"() {
|
|
253
|
+
get ["data-muted"]() {
|
|
258
254
|
return controls.muted();
|
|
259
255
|
},
|
|
260
|
-
get "data-error"() {
|
|
256
|
+
get ["data-error"]() {
|
|
261
257
|
return controls.error() ? "" : void 0;
|
|
262
258
|
}
|
|
263
|
-
}
|
|
264
|
-
insert(_el$, () =>
|
|
265
|
-
return local.children;
|
|
266
|
-
});
|
|
259
|
+
}), false, true);
|
|
260
|
+
insert(_el$, () => local.children);
|
|
267
261
|
return _el$;
|
|
268
262
|
}
|
|
269
263
|
});
|
|
@@ -295,27 +289,26 @@ function splitShellProps(props) {
|
|
|
295
289
|
"onError"
|
|
296
290
|
]);
|
|
297
291
|
}
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
var _tmpl$ =
|
|
301
|
-
var _tmpl$
|
|
302
|
-
var _tmpl$
|
|
303
|
-
var _tmpl$
|
|
304
|
-
var _tmpl$
|
|
305
|
-
var _tmpl$6 = /* @__PURE__ */ template(`<input>`);
|
|
292
|
+
// src/components/media-player/parts.tsx
|
|
293
|
+
var _tmpl$ = /*#__PURE__*/ template(`<div>`);
|
|
294
|
+
var _tmpl$2 = /*#__PURE__*/ template(`<source>`);
|
|
295
|
+
var _tmpl$3 = /*#__PURE__*/ template(`<track>`);
|
|
296
|
+
var _tmpl$4 = /*#__PURE__*/ template(`<button>`);
|
|
297
|
+
var _tmpl$5 = /*#__PURE__*/ template(`<span> / `);
|
|
298
|
+
var _tmpl$6 = /*#__PURE__*/ template(`<input>`);
|
|
306
299
|
function part(name) {
|
|
307
300
|
function MediaPart(props) {
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
301
|
+
return (() => {
|
|
302
|
+
var _el$ = _tmpl$();
|
|
303
|
+
spread(_el$, mergeProps(props, {
|
|
304
|
+
"data-scope": "media-player",
|
|
305
|
+
get ["data-part"]() {
|
|
306
|
+
return name.toLowerCase();
|
|
307
|
+
}
|
|
308
|
+
}), false, true);
|
|
309
|
+
insert(_el$, () => props.children);
|
|
310
|
+
return _el$;
|
|
311
|
+
})();
|
|
319
312
|
}
|
|
320
313
|
return MediaPart;
|
|
321
314
|
}
|
|
@@ -327,9 +320,7 @@ function Media(props) {
|
|
|
327
320
|
return element();
|
|
328
321
|
} }, props, {
|
|
329
322
|
get src() {
|
|
330
|
-
return memo(() =>
|
|
331
|
-
return context.sources.length > 0;
|
|
332
|
-
})() ? void 0 : context.src;
|
|
323
|
+
return memo(() => context.sources.length > 0)() ? void 0 : context.src;
|
|
333
324
|
},
|
|
334
325
|
"data-scope": "media-player",
|
|
335
326
|
"data-part": "media",
|
|
@@ -354,7 +345,7 @@ function Media(props) {
|
|
|
354
345
|
ref: (value) => {
|
|
355
346
|
context.media.current = value;
|
|
356
347
|
},
|
|
357
|
-
get "aria-label"() {
|
|
348
|
+
get ["aria-label"]() {
|
|
358
349
|
return context.label;
|
|
359
350
|
},
|
|
360
351
|
onPlay: (event) => context.emit("play", event),
|
|
@@ -371,14 +362,14 @@ function Media(props) {
|
|
|
371
362
|
},
|
|
372
363
|
children: (source) => (() => {
|
|
373
364
|
var _el$2 = _tmpl$2();
|
|
374
|
-
effect(() => {
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
},
|
|
380
|
-
e
|
|
381
|
-
t
|
|
365
|
+
effect((_p$) => {
|
|
366
|
+
var _v$ = source.src, _v$2 = source.type;
|
|
367
|
+
_v$ !== _p$.e && setAttribute(_el$2, "src", _p$.e = _v$);
|
|
368
|
+
_v$2 !== _p$.t && setAttribute(_el$2, "type", _p$.t = _v$2);
|
|
369
|
+
return _p$;
|
|
370
|
+
}, {
|
|
371
|
+
e: void 0,
|
|
372
|
+
t: void 0
|
|
382
373
|
});
|
|
383
374
|
return _el$2;
|
|
384
375
|
})()
|
|
@@ -388,20 +379,20 @@ function Media(props) {
|
|
|
388
379
|
},
|
|
389
380
|
children: (track) => (() => {
|
|
390
381
|
var _el$3 = _tmpl$3();
|
|
391
|
-
effect(() => {
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
},
|
|
400
|
-
e
|
|
401
|
-
t
|
|
402
|
-
a
|
|
403
|
-
o
|
|
404
|
-
i
|
|
382
|
+
effect((_p$) => {
|
|
383
|
+
var _v$3 = track.src, _v$4 = track.kind ?? "subtitles", _v$5 = track.label, _v$6 = track.srcLang, _v$7 = track.default;
|
|
384
|
+
_v$3 !== _p$.e && setAttribute(_el$3, "src", _p$.e = _v$3);
|
|
385
|
+
_v$4 !== _p$.t && setAttribute(_el$3, "kind", _p$.t = _v$4);
|
|
386
|
+
_v$5 !== _p$.a && setAttribute(_el$3, "label", _p$.a = _v$5);
|
|
387
|
+
_v$6 !== _p$.o && setAttribute(_el$3, "srclang", _p$.o = _v$6);
|
|
388
|
+
_v$7 !== _p$.i && (_el$3.default = _p$.i = _v$7);
|
|
389
|
+
return _p$;
|
|
390
|
+
}, {
|
|
391
|
+
e: void 0,
|
|
392
|
+
t: void 0,
|
|
393
|
+
a: void 0,
|
|
394
|
+
o: void 0,
|
|
395
|
+
i: void 0
|
|
405
396
|
});
|
|
406
397
|
return _el$3;
|
|
407
398
|
})()
|
|
@@ -415,87 +406,85 @@ function PlayButton(props) {
|
|
|
415
406
|
const context = useMediaPlayer();
|
|
416
407
|
const [local, rest] = splitProps(props, ["label"]);
|
|
417
408
|
const label = () => local.label ?? (context.controls.playing() ? "Pause" : "Play");
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
409
|
+
return (() => {
|
|
410
|
+
var _el$4 = _tmpl$4();
|
|
411
|
+
spread(_el$4, mergeProps(rest, {
|
|
412
|
+
"type": "button",
|
|
413
|
+
"data-scope": "media-player",
|
|
414
|
+
"data-part": "play-button",
|
|
415
|
+
get ["aria-label"]() {
|
|
416
|
+
return label();
|
|
417
|
+
},
|
|
418
|
+
get ["aria-pressed"]() {
|
|
419
|
+
return context.controls.playing();
|
|
420
|
+
},
|
|
421
|
+
get title() {
|
|
422
|
+
return label();
|
|
423
|
+
},
|
|
424
|
+
get disabled() {
|
|
425
|
+
return context.disabled;
|
|
426
|
+
},
|
|
427
|
+
"onClick": () => void context.controls.toggle()
|
|
428
|
+
}), false, true);
|
|
429
|
+
insert(_el$4, () => iconNode(context.controls.playing() ? "pause" : "play", {
|
|
439
430
|
width: "16",
|
|
440
431
|
height: "16"
|
|
441
|
-
});
|
|
442
|
-
|
|
443
|
-
|
|
432
|
+
}));
|
|
433
|
+
return _el$4;
|
|
434
|
+
})();
|
|
444
435
|
}
|
|
445
436
|
/** The elapsed and total time bracket the timeline. */
|
|
446
437
|
function Time(props) {
|
|
447
438
|
const context = useMediaPlayer();
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
return
|
|
457
|
-
}
|
|
458
|
-
insert(_el$5, () => {
|
|
459
|
-
return formatMediaTime(context.controls.duration());
|
|
460
|
-
}, _el$7);
|
|
461
|
-
return _el$5;
|
|
439
|
+
return (() => {
|
|
440
|
+
var _el$5 = _tmpl$5(), _el$6 = _el$5.firstChild;
|
|
441
|
+
spread(_el$5, mergeProps(props, {
|
|
442
|
+
"data-scope": "media-player",
|
|
443
|
+
"data-part": "time"
|
|
444
|
+
}), false, true);
|
|
445
|
+
insert(_el$5, () => formatMediaTime(context.controls.currentTime()), _el$6);
|
|
446
|
+
insert(_el$5, () => formatMediaTime(context.controls.duration()), null);
|
|
447
|
+
return _el$5;
|
|
448
|
+
})();
|
|
462
449
|
}
|
|
463
450
|
/** The timeline is the sheet on which the listener writes their place. */
|
|
464
451
|
function Timeline(props) {
|
|
465
452
|
const context = useMediaPlayer();
|
|
466
453
|
const [local, rest] = splitProps(props, ["label"]);
|
|
467
454
|
const progress = () => context.controls.duration() > 0 ? context.controls.currentTime() / context.controls.duration() * 100 : 0;
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
455
|
+
return (() => {
|
|
456
|
+
var _el$8 = _tmpl$6();
|
|
457
|
+
spread(_el$8, mergeProps(rest, {
|
|
458
|
+
"type": "range",
|
|
459
|
+
"data-scope": "media-player",
|
|
460
|
+
"data-part": "timeline",
|
|
461
|
+
"min": 0,
|
|
462
|
+
get max() {
|
|
463
|
+
return context.controls.duration();
|
|
464
|
+
},
|
|
465
|
+
"step": .1,
|
|
466
|
+
get value() {
|
|
467
|
+
return context.controls.currentTime();
|
|
468
|
+
},
|
|
469
|
+
get disabled() {
|
|
470
|
+
return context.disabled || context.controls.duration() <= 0;
|
|
471
|
+
},
|
|
472
|
+
get ["aria-label"]() {
|
|
473
|
+
return local.label ?? "Seek";
|
|
474
|
+
},
|
|
475
|
+
get ["aria-valuetext"]() {
|
|
476
|
+
return formatMediaTime(context.controls.currentTime());
|
|
477
|
+
},
|
|
478
|
+
get style() {
|
|
479
|
+
return {
|
|
480
|
+
...props.style,
|
|
481
|
+
"--bs-media-progress": `${progress()}%`
|
|
482
|
+
};
|
|
483
|
+
},
|
|
484
|
+
"onInput": (event) => context.controls.seek(Number(event.currentTarget.value))
|
|
485
|
+
}), false, false);
|
|
486
|
+
return _el$8;
|
|
487
|
+
})();
|
|
499
488
|
}
|
|
500
489
|
/** Muting stays at the left of the volume well, the way a hand expects. */
|
|
501
490
|
function MuteButton(props) {
|
|
@@ -503,97 +492,101 @@ function MuteButton(props) {
|
|
|
503
492
|
const [local, rest] = splitProps(props, ["label"]);
|
|
504
493
|
const muted = () => context.controls.muted() || context.controls.volume() === 0;
|
|
505
494
|
const label = () => local.label ?? (muted() ? "Unmute" : "Mute");
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
495
|
+
return (() => {
|
|
496
|
+
var _el$9 = _tmpl$4();
|
|
497
|
+
spread(_el$9, mergeProps(rest, {
|
|
498
|
+
"type": "button",
|
|
499
|
+
"data-scope": "media-player",
|
|
500
|
+
"data-part": "mute-button",
|
|
501
|
+
get ["aria-label"]() {
|
|
502
|
+
return label();
|
|
503
|
+
},
|
|
504
|
+
get ["aria-pressed"]() {
|
|
505
|
+
return muted();
|
|
506
|
+
},
|
|
507
|
+
get title() {
|
|
508
|
+
return label();
|
|
509
|
+
},
|
|
510
|
+
get disabled() {
|
|
511
|
+
return context.disabled;
|
|
512
|
+
},
|
|
513
|
+
"onClick": () => context.controls.toggleMuted()
|
|
514
|
+
}), false, true);
|
|
515
|
+
insert(_el$9, () => iconNode(muted() ? "volume-x" : "volume-2", {
|
|
527
516
|
width: "16",
|
|
528
517
|
height: "16"
|
|
529
|
-
});
|
|
530
|
-
|
|
531
|
-
|
|
518
|
+
}));
|
|
519
|
+
return _el$9;
|
|
520
|
+
})();
|
|
532
521
|
}
|
|
533
522
|
function Volume(props) {
|
|
534
523
|
const context = useMediaPlayer();
|
|
535
524
|
const [local, rest] = splitProps(props, ["label"]);
|
|
536
525
|
const volume = () => context.controls.muted() ? 0 : context.controls.volume();
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
526
|
+
return (() => {
|
|
527
|
+
var _el$0 = _tmpl$6();
|
|
528
|
+
spread(_el$0, mergeProps(rest, {
|
|
529
|
+
"type": "range",
|
|
530
|
+
"data-scope": "media-player",
|
|
531
|
+
"data-part": "volume",
|
|
532
|
+
"min": 0,
|
|
533
|
+
"max": 1,
|
|
534
|
+
"step": .01,
|
|
535
|
+
get value() {
|
|
536
|
+
return volume();
|
|
537
|
+
},
|
|
538
|
+
get disabled() {
|
|
539
|
+
return context.disabled;
|
|
540
|
+
},
|
|
541
|
+
get ["aria-label"]() {
|
|
542
|
+
return local.label ?? "Volume";
|
|
543
|
+
},
|
|
544
|
+
get ["aria-valuetext"]() {
|
|
545
|
+
return `${Math.round(volume() * 100)}%`;
|
|
546
|
+
},
|
|
547
|
+
get style() {
|
|
548
|
+
return {
|
|
549
|
+
...props.style,
|
|
550
|
+
"--bs-media-progress": `${volume() * 100}%`
|
|
551
|
+
};
|
|
552
|
+
},
|
|
553
|
+
"onInput": (event) => context.controls.setVolume(Number(event.currentTarget.value))
|
|
554
|
+
}), false, false);
|
|
555
|
+
return _el$0;
|
|
556
|
+
})();
|
|
566
557
|
}
|
|
567
558
|
/** Playback rate is a real choice, not hidden behind native menus. */
|
|
568
559
|
function Rate(props) {
|
|
569
560
|
const context = useMediaPlayer();
|
|
570
561
|
const [local, rest] = splitProps(props, ["label"]);
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
562
|
+
return (() => {
|
|
563
|
+
var _el$1 = _tmpl$();
|
|
564
|
+
spread(_el$1, mergeProps(rest, {
|
|
565
|
+
"data-scope": "media-player",
|
|
566
|
+
"data-part": "rate"
|
|
567
|
+
}), false, true);
|
|
568
|
+
insert(_el$1, createComponent(Select, {
|
|
569
|
+
clearable: false,
|
|
570
|
+
get disabled() {
|
|
571
|
+
return context.disabled;
|
|
572
|
+
},
|
|
573
|
+
get options() {
|
|
574
|
+
return context.playbackRates.map((rate) => ({
|
|
575
|
+
label: `${rate}×`,
|
|
576
|
+
value: String(rate)
|
|
577
|
+
}));
|
|
578
|
+
},
|
|
579
|
+
get placeholder() {
|
|
580
|
+
return local.label ?? "Playback speed";
|
|
581
|
+
},
|
|
582
|
+
size: "sm",
|
|
583
|
+
get value() {
|
|
584
|
+
return String(context.controls.playbackRate());
|
|
585
|
+
},
|
|
586
|
+
onValueChange: (value) => context.controls.setPlaybackRate(Number(value))
|
|
587
|
+
}));
|
|
588
|
+
return _el$1;
|
|
589
|
+
})();
|
|
597
590
|
}
|
|
598
591
|
/** Text tracks use the browser's native model; the control chooses a
|
|
599
592
|
* track index, while rendering stays with the media element. */
|
|
@@ -605,12 +598,12 @@ function Captions(props) {
|
|
|
605
598
|
return context.tracks.length > 0;
|
|
606
599
|
},
|
|
607
600
|
get children() {
|
|
608
|
-
var _el$
|
|
609
|
-
spread(_el$
|
|
601
|
+
var _el$10 = _tmpl$();
|
|
602
|
+
spread(_el$10, mergeProps(rest, {
|
|
610
603
|
"data-scope": "media-player",
|
|
611
604
|
"data-part": "captions"
|
|
612
|
-
}
|
|
613
|
-
insert(_el$
|
|
605
|
+
}), false, true);
|
|
606
|
+
insert(_el$10, createComponent(Select, {
|
|
614
607
|
clearable: false,
|
|
615
608
|
get disabled() {
|
|
616
609
|
return context.disabled;
|
|
@@ -633,7 +626,7 @@ function Captions(props) {
|
|
|
633
626
|
},
|
|
634
627
|
onValueChange: (value) => context.controls.selectTextTrack(Number(value))
|
|
635
628
|
}));
|
|
636
|
-
return _el$
|
|
629
|
+
return _el$10;
|
|
637
630
|
}
|
|
638
631
|
});
|
|
639
632
|
}
|
|
@@ -646,12 +639,12 @@ function PipButton(props) {
|
|
|
646
639
|
return context.kind === "video";
|
|
647
640
|
},
|
|
648
641
|
get children() {
|
|
649
|
-
var _el$
|
|
650
|
-
spread(_el$
|
|
651
|
-
type: "button",
|
|
642
|
+
var _el$11 = _tmpl$4();
|
|
643
|
+
spread(_el$11, mergeProps(rest, {
|
|
644
|
+
"type": "button",
|
|
652
645
|
"data-scope": "media-player",
|
|
653
646
|
"data-part": "pip-button",
|
|
654
|
-
get "aria-label"() {
|
|
647
|
+
get ["aria-label"]() {
|
|
655
648
|
return local.label ?? "Toggle picture in picture";
|
|
656
649
|
},
|
|
657
650
|
get title() {
|
|
@@ -660,15 +653,13 @@ function PipButton(props) {
|
|
|
660
653
|
get disabled() {
|
|
661
654
|
return context.disabled;
|
|
662
655
|
},
|
|
663
|
-
onClick: () => void context.controls.togglePictureInPicture()
|
|
664
|
-
}
|
|
665
|
-
insert(_el$
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
});
|
|
671
|
-
return _el$13;
|
|
656
|
+
"onClick": () => void context.controls.togglePictureInPicture()
|
|
657
|
+
}), false, true);
|
|
658
|
+
insert(_el$11, () => iconNode("picture-in-picture", {
|
|
659
|
+
width: "16",
|
|
660
|
+
height: "16"
|
|
661
|
+
}));
|
|
662
|
+
return _el$11;
|
|
672
663
|
}
|
|
673
664
|
});
|
|
674
665
|
}
|
|
@@ -676,37 +667,36 @@ function PipButton(props) {
|
|
|
676
667
|
function FullscreenButton(props) {
|
|
677
668
|
const context = useMediaPlayer();
|
|
678
669
|
const [local, rest] = splitProps(props, ["label"]);
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
670
|
+
return (() => {
|
|
671
|
+
var _el$12 = _tmpl$4();
|
|
672
|
+
spread(_el$12, mergeProps(rest, {
|
|
673
|
+
"type": "button",
|
|
674
|
+
"data-scope": "media-player",
|
|
675
|
+
"data-part": "fullscreen-button",
|
|
676
|
+
get ["aria-label"]() {
|
|
677
|
+
return local.label ?? "Toggle fullscreen";
|
|
678
|
+
},
|
|
679
|
+
get title() {
|
|
680
|
+
return local.label ?? "Toggle fullscreen";
|
|
681
|
+
},
|
|
682
|
+
get disabled() {
|
|
683
|
+
return context.disabled;
|
|
684
|
+
},
|
|
685
|
+
"onClick": () => {
|
|
686
|
+
const root = context.root.current;
|
|
687
|
+
if (root) context.controls.toggleFullscreen(root);
|
|
688
|
+
}
|
|
689
|
+
}), false, true);
|
|
690
|
+
insert(_el$12, () => iconNode("maximize-2", {
|
|
700
691
|
width: "16",
|
|
701
692
|
height: "16"
|
|
702
|
-
});
|
|
703
|
-
|
|
704
|
-
|
|
693
|
+
}));
|
|
694
|
+
return _el$12;
|
|
695
|
+
})();
|
|
705
696
|
}
|
|
706
697
|
const Stage = part("Stage");
|
|
707
698
|
const Controls = part("Controls");
|
|
708
|
-
|
|
709
|
-
//#region src/components/media-player/index.tsx
|
|
699
|
+
// src/components/media-player/index.tsx
|
|
710
700
|
function createRoot(kind) {
|
|
711
701
|
function MediaRoot(props) {
|
|
712
702
|
return createComponent(MediaPlayerShell, mergeProps({ kind }, props));
|
|
@@ -792,5 +782,4 @@ const Video = Object.assign(VideoFacade, {
|
|
|
792
782
|
PipButton,
|
|
793
783
|
FullscreenButton
|
|
794
784
|
});
|
|
795
|
-
//#endregion
|
|
796
785
|
export { Video as n, formatMediaTime as r, Audio as t };
|