@vonage/vivid 5.0.0 → 5.2.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/{shared/definition2.cjs → accordion/definition.cjs} +20 -20
- package/{shared/definition2.js → accordion/definition.js} +5 -7
- package/accordion/index.cjs +5 -5
- package/accordion/index.js +129 -3
- package/accordion-item/definition.cjs +145 -0
- package/accordion-item/definition.js +139 -0
- package/accordion-item/index.cjs +1 -5
- package/accordion-item/index.js +2 -3
- package/{shared/definition3.cjs → action-group/definition.cjs} +12 -9
- package/{shared/definition3.js → action-group/definition.js} +5 -4
- package/action-group/index.cjs +6 -5
- package/action-group/index.js +49 -3
- package/{shared/definition4.cjs → alert/definition.cjs} +33 -31
- package/{shared/definition4.js → alert/definition.js} +11 -11
- package/alert/index.cjs +30 -5
- package/alert/index.js +158 -3
- package/{shared/definition5.cjs → audio-player/definition.cjs} +95 -61
- package/{shared/definition5.js → audio-player/definition.js} +48 -16
- package/audio-player/index.cjs +68 -4
- package/audio-player/index.js +333 -2
- package/{shared/definition6.cjs → avatar/definition.cjs} +28 -26
- package/{shared/definition6.js → avatar/definition.js} +7 -7
- package/avatar/index.cjs +18 -5
- package/avatar/index.js +93 -3
- package/{shared/definition7.cjs → badge/definition.cjs} +18 -16
- package/{shared/definition7.js → badge/definition.js} +6 -6
- package/badge/index.cjs +4 -5
- package/badge/index.js +66 -3
- package/{shared/definition8.cjs → banner/definition.cjs} +26 -25
- package/{shared/definition8.js → banner/definition.js} +10 -11
- package/banner/index.cjs +29 -4
- package/banner/index.js +128 -2
- package/{shared/definition10.cjs → breadcrumb/definition.cjs} +11 -9
- package/{shared/definition10.js → breadcrumb/definition.js} +5 -5
- package/breadcrumb/index.cjs +12 -5
- package/breadcrumb/index.js +69 -3
- package/{shared/definition9.cjs → breadcrumb-item/definition.cjs} +18 -15
- package/{shared/definition9.js → breadcrumb-item/definition.js} +7 -7
- package/breadcrumb-item/index.cjs +5 -5
- package/breadcrumb-item/index.js +33 -3
- package/bundled/_has.cjs +1 -0
- package/bundled/_has.js +34 -0
- package/bundled/affix.cjs +13 -0
- package/bundled/affix.js +63 -0
- package/bundled/anchored.cjs +4 -0
- package/bundled/anchored.js +67 -0
- package/bundled/aria.cjs +1 -0
- package/bundled/aria.js +7 -0
- package/bundled/attribute-binding-behaviour.cjs +1 -0
- package/bundled/attribute-binding-behaviour.js +27 -0
- package/bundled/base-progress.cjs +1 -0
- package/bundled/base-progress.js +57 -0
- package/bundled/breadcrumb-item.cjs +1 -0
- package/bundled/breadcrumb-item.js +21 -0
- package/bundled/button.cjs +1 -0
- package/bundled/button.js +106 -0
- package/bundled/calendar-event.cjs +1 -0
- package/bundled/calendar-event.js +34 -0
- package/bundled/calendar-picker.template.cjs +148 -0
- package/bundled/calendar-picker.template.js +3371 -0
- package/bundled/char-count.cjs +13 -0
- package/bundled/char-count.js +54 -0
- package/bundled/children.cjs +1 -0
- package/bundled/children.js +38 -0
- package/bundled/class-names.cjs +1 -0
- package/bundled/class-names.js +9 -0
- package/bundled/definition.cjs +39 -0
- package/bundled/definition.js +122 -0
- package/bundled/definition10.cjs +19 -0
- package/bundled/definition10.js +73 -0
- package/bundled/definition11.cjs +10 -0
- package/bundled/definition11.js +44 -0
- package/bundled/definition12.cjs +1 -0
- package/bundled/definition12.js +20 -0
- package/bundled/definition13.cjs +73 -0
- package/bundled/definition13.js +359 -0
- package/bundled/definition14.cjs +5 -0
- package/bundled/definition14.js +29 -0
- package/bundled/definition15.cjs +30 -0
- package/bundled/definition15.js +80 -0
- package/bundled/definition16.cjs +19 -0
- package/bundled/definition16.js +103 -0
- package/bundled/definition17.cjs +13 -0
- package/bundled/definition17.js +137 -0
- package/bundled/definition18.cjs +12 -0
- package/bundled/definition18.js +94 -0
- package/bundled/definition19.cjs +70 -0
- package/bundled/definition19.js +674 -0
- package/bundled/definition2.cjs +20 -0
- package/bundled/definition2.js +180 -0
- package/bundled/definition20.cjs +20 -0
- package/bundled/definition20.js +106 -0
- package/bundled/definition21.cjs +5 -0
- package/bundled/definition21.js +19 -0
- package/bundled/definition22.cjs +24 -0
- package/bundled/definition22.js +151 -0
- package/bundled/definition3.cjs +29 -0
- package/bundled/definition3.js +195 -0
- package/bundled/definition4.cjs +6 -0
- package/bundled/definition4.js +42 -0
- package/bundled/definition5.cjs +1 -0
- package/bundled/definition5.js +345 -0
- package/bundled/definition6.cjs +31 -0
- package/bundled/definition6.js +268 -0
- package/bundled/definition7.cjs +30 -0
- package/bundled/definition7.js +288 -0
- package/bundled/definition8.cjs +19 -0
- package/bundled/definition8.js +145 -0
- package/bundled/definition9.cjs +14 -0
- package/bundled/definition9.js +1406 -0
- package/bundled/delegates-aria.cjs +1 -0
- package/bundled/delegates-aria.js +77 -0
- package/bundled/divider.cjs +1 -0
- package/bundled/divider.js +34 -0
- package/bundled/dom.cjs +1 -0
- package/bundled/dom.js +6 -0
- package/bundled/enums.cjs +1 -0
- package/bundled/enums.js +9 -0
- package/bundled/form-associated.cjs +1 -0
- package/bundled/form-associated.js +320 -0
- package/bundled/form-element.cjs +1 -0
- package/bundled/form-element.js +56 -0
- package/bundled/host-semantics.cjs +1 -0
- package/bundled/host-semantics.js +57 -0
- package/bundled/index.cjs +1 -0
- package/bundled/index.js +6 -0
- package/bundled/key-codes.cjs +1 -0
- package/bundled/key-codes.js +16 -0
- package/bundled/linkable.cjs +15 -0
- package/bundled/linkable.js +49 -0
- package/bundled/listbox.cjs +1 -0
- package/bundled/listbox.js +345 -0
- package/bundled/localized.cjs +1 -0
- package/bundled/localized.js +460 -0
- package/bundled/mixins.cjs +33 -0
- package/bundled/mixins.js +226 -0
- package/bundled/numbers.cjs +1 -0
- package/bundled/numbers.js +14 -0
- package/bundled/option.cjs +1 -0
- package/bundled/option.js +158 -0
- package/bundled/picker-field.template.cjs +67 -0
- package/bundled/picker-field.template.js +242 -0
- package/bundled/playbackRates.cjs +1 -0
- package/bundled/playbackRates.js +11 -0
- package/bundled/ref.cjs +1 -0
- package/bundled/ref.js +32 -0
- package/bundled/repeat.cjs +1 -0
- package/bundled/repeat.js +341 -0
- package/bundled/scrollIntoView.cjs +1 -0
- package/bundled/scrollIntoView.js +33 -0
- package/bundled/single-date-picker.cjs +1 -0
- package/bundled/single-date-picker.js +39 -0
- package/bundled/single-value-picker.cjs +1 -0
- package/bundled/single-value-picker.js +87 -0
- package/bundled/slider.template.cjs +41 -0
- package/bundled/slider.template.js +100 -0
- package/bundled/slotted.cjs +1 -0
- package/bundled/slotted.js +81 -0
- package/bundled/strings.cjs +1 -0
- package/bundled/strings.js +7 -0
- package/bundled/text-field.cjs +1 -0
- package/bundled/text-field.js +4 -0
- package/bundled/time-selection-picker.template.cjs +46 -0
- package/bundled/time-selection-picker.template.js +575 -0
- package/bundled/vivid-element.cjs +1 -0
- package/bundled/vivid-element.js +1761 -0
- package/bundled/when.cjs +1 -0
- package/bundled/when.js +11 -0
- package/bundled/with-contextual-help.cjs +1 -0
- package/bundled/with-contextual-help.js +32 -0
- package/bundled/with-error-text.cjs +1 -0
- package/bundled/with-error-text.js +39 -0
- package/bundled/with-success-text.cjs +1 -0
- package/bundled/with-success-text.js +16 -0
- package/button/definition.cjs +14 -0
- package/button/definition.js +4 -0
- package/button/index.cjs +1 -5
- package/button/index.js +2 -3
- package/{shared/definition13.cjs → calendar/definition.cjs} +27 -449
- package/{shared/definition13.js → calendar/definition.js} +7 -431
- package/calendar/index.cjs +53 -5
- package/calendar/index.js +431 -3
- package/{shared/definition12.cjs → calendar-event/definition.cjs} +12 -9
- package/{shared/definition12.js → calendar-event/definition.js} +6 -6
- package/calendar-event/index.cjs +9 -5
- package/calendar-event/index.js +43 -3
- package/card/definition.cjs +186 -0
- package/{shared/definition14.js → card/definition.js} +10 -11
- package/card/index.cjs +47 -5
- package/card/index.js +163 -3
- package/{shared/definition15.cjs → checkbox/definition.cjs} +30 -29
- package/{shared/definition15.js → checkbox/definition.js} +12 -13
- package/checkbox/index.cjs +1 -5
- package/checkbox/index.js +2 -3
- package/{shared/definition16.cjs → combobox/definition.cjs} +61 -56
- package/{shared/definition16.js → combobox/definition.js} +30 -27
- package/combobox/index.cjs +69 -5
- package/combobox/index.js +519 -3
- package/contextual-help/definition.cjs +62 -0
- package/contextual-help/definition.js +57 -0
- package/contextual-help/index.cjs +1 -0
- package/contextual-help/index.js +2 -0
- package/custom-elements.json +2504 -335
- package/{shared/definition17.cjs → data-grid/definition.cjs} +111 -121
- package/{shared/definition17.js → data-grid/definition.js} +11 -23
- package/data-grid/index.cjs +81 -5
- package/data-grid/index.js +1011 -3
- package/{shared/definition18.cjs → date-picker/definition.cjs} +20 -17
- package/{shared/definition18.js → date-picker/definition.js} +12 -11
- package/date-picker/index.cjs +1 -5
- package/date-picker/index.js +115 -3
- package/{shared/definition19.cjs → date-range-picker/definition.cjs} +26 -23
- package/{shared/definition19.js → date-range-picker/definition.js} +10 -9
- package/date-range-picker/index.cjs +1 -5
- package/date-range-picker/index.js +335 -3
- package/{shared/definition20.cjs → date-time-picker/definition.cjs} +27 -24
- package/{shared/definition20.js → date-time-picker/definition.js} +13 -12
- package/date-time-picker/index.cjs +8 -5
- package/date-time-picker/index.js +216 -3
- package/{shared/definition21.cjs → dial-pad/definition.cjs} +89 -40
- package/{shared/definition21.js → dial-pad/definition.js} +60 -13
- package/dial-pad/index.cjs +57 -5
- package/dial-pad/index.js +245 -3
- package/{shared/definition22.cjs → dialog/definition.cjs} +48 -47
- package/{shared/definition22.js → dialog/definition.js} +10 -11
- package/dialog/index.cjs +44 -5
- package/dialog/index.js +257 -3
- package/{shared/definition23.cjs → divider/definition.cjs} +10 -6
- package/{shared/definition23.js → divider/definition.js} +6 -5
- package/divider/index.cjs +1 -5
- package/divider/index.js +2 -3
- package/elevation/definition.cjs +11 -0
- package/elevation/definition.js +2 -0
- package/elevation/index.cjs +1 -5
- package/elevation/index.js +2 -3
- package/empty-state/definition.cjs +81 -0
- package/empty-state/definition.js +75 -0
- package/empty-state/index.cjs +14 -5
- package/empty-state/index.js +64 -3
- package/fab/definition.cjs +105 -0
- package/fab/definition.js +99 -0
- package/fab/index.cjs +20 -5
- package/fab/index.js +86 -3
- package/file-picker/definition.cjs +519 -0
- package/file-picker/definition.js +513 -0
- package/file-picker/index.cjs +61 -5
- package/file-picker/index.js +391 -3
- package/{shared/definition27.cjs → header/definition.cjs} +14 -11
- package/{shared/definition27.js → header/definition.js} +6 -5
- package/header/index.cjs +19 -5
- package/header/index.js +57 -3
- package/{shared/definition28.cjs → icon/definition.cjs} +25 -149
- package/{shared/definition28.js → icon/definition.js} +6 -132
- package/icon/index.cjs +1 -5
- package/icon/index.js +2 -3
- package/index.cjs +268 -264
- package/index.js +72 -71
- package/{shared/definition29.cjs → layout/definition.cjs} +13 -10
- package/{shared/definition29.js → layout/definition.js} +4 -3
- package/layout/index.cjs +3 -5
- package/layout/index.js +52 -3
- package/lib/accordion-item/accordion-item.d.ts +0 -1
- package/lib/action-group/action-group.d.ts +0 -1
- package/lib/alert/alert.d.ts +0 -2
- package/lib/audio-player/audio-player.d.ts +4 -1
- package/lib/avatar/avatar.d.ts +0 -1
- package/lib/badge/badge.d.ts +0 -1
- package/lib/banner/banner.d.ts +0 -3
- package/lib/breadcrumb/breadcrumb.d.ts +0 -1
- package/lib/breadcrumb-item/breadcrumb-item.d.ts +0 -1
- package/lib/button/button.d.ts +1 -3
- package/lib/calendar-event/calendar-event.d.ts +0 -1
- package/lib/card/card.d.ts +0 -1
- package/lib/checkbox/checkbox.d.ts +0 -6
- package/lib/combobox/combobox.d.ts +483 -72
- package/lib/components.d.ts +1 -0
- package/lib/contextual-help/contextual-help.d.ts +5 -0
- package/lib/contextual-help/contextual-help.template.d.ts +3 -0
- package/lib/contextual-help/definition.d.ts +1 -0
- package/lib/data-grid/data-grid-cell.d.ts +0 -2
- package/lib/data-grid/data-grid-row.d.ts +0 -1
- package/lib/date-picker/date-picker.d.ts +892 -888
- package/lib/date-range-picker/date-range-picker.d.ts +590 -588
- package/lib/date-time-picker/date-time-picker.d.ts +893 -889
- package/lib/dial-pad/dial-pad.d.ts +0 -1
- package/lib/dial-pad/dial-pad.template.d.ts +1 -1
- package/lib/dial-pad/locale.d.ts +1 -0
- package/lib/dialog/dialog.d.ts +0 -2
- package/lib/divider/divider.d.ts +0 -1
- package/lib/fab/fab.d.ts +1 -1
- package/lib/file-picker/accept.d.ts +1 -0
- package/lib/file-picker/data-transfer.d.ts +1 -0
- package/lib/file-picker/file-picker.d.ts +490 -91
- package/lib/header/header.d.ts +0 -1
- package/lib/menu/menu.d.ts +1 -2
- package/lib/menu-item/menu-item.d.ts +0 -2
- package/lib/nav/nav.d.ts +0 -1
- package/lib/nav-disclosure/nav-disclosure.d.ts +0 -2
- package/lib/nav-item/nav-item.d.ts +0 -2
- package/lib/note/note.d.ts +0 -1
- package/lib/number-field/number-field.d.ts +505 -96
- package/lib/option/option.d.ts +1 -2
- package/lib/pagination/pagination.d.ts +0 -1
- package/lib/progress/progress.d.ts +0 -1
- package/lib/progress-ring/progress-ring.d.ts +0 -1
- package/lib/radio/radio.d.ts +0 -3
- package/lib/radio-group/radio-group.d.ts +0 -1
- package/lib/range-slider/range-slider.d.ts +0 -3
- package/lib/rich-text-editor/menubar/menubar.d.ts +0 -1
- package/lib/rich-text-editor/rich-text-editor.d.ts +0 -1
- package/lib/searchable-select/option-tag.d.ts +0 -1
- package/lib/searchable-select/searchable-select.d.ts +505 -96
- package/lib/select/select.d.ts +470 -60
- package/lib/selectable-box/selectable-box.d.ts +0 -1
- package/lib/simple-color-picker/definition.d.ts +4 -0
- package/lib/simple-color-picker/locale.d.ts +4 -0
- package/lib/simple-color-picker/simple-color-picker.d.ts +1600 -0
- package/lib/simple-color-picker/simple-color-picker.template.d.ts +3 -0
- package/lib/slider/slider.d.ts +0 -3
- package/lib/split-button/split-button.d.ts +2 -3
- package/lib/switch/switch.d.ts +0 -2
- package/lib/tab/tab.d.ts +0 -3
- package/lib/tab-panel/tab-panel.d.ts +0 -1
- package/lib/tag/tag.d.ts +0 -3
- package/lib/tag-group/tag-group.d.ts +0 -1
- package/lib/tag-name-map.d.ts +2 -1
- package/lib/text-area/text-area.d.ts +494 -84
- package/lib/text-field/text-field.d.ts +505 -96
- package/lib/time-picker/time-picker.d.ts +571 -569
- package/lib/toggletip/toggletip.d.ts +0 -2
- package/lib/tooltip/tooltip.d.ts +0 -1
- package/lib/tree-item/tree-item.d.ts +0 -2
- package/lib/tree-view/tree-view.d.ts +0 -1
- package/lib/video-player/video-player.d.ts +0 -1
- package/locales/de-DE.cjs +13 -1
- package/locales/de-DE.js +13 -1
- package/locales/en-GB.cjs +13 -1
- package/locales/en-GB.js +13 -1
- package/locales/en-US.cjs +13 -1
- package/locales/en-US.js +13 -1
- package/locales/ja-JP.cjs +13 -1
- package/locales/ja-JP.js +13 -1
- package/locales/zh-CN.cjs +13 -1
- package/locales/zh-CN.js +13 -1
- package/{shared/definition31.cjs → menu/definition.cjs} +46 -42
- package/{shared/definition31.js → menu/definition.js} +16 -14
- package/menu/index.cjs +1 -5
- package/menu/index.js +2 -3
- package/menu-item/definition.cjs +14 -0
- package/menu-item/definition.js +3 -0
- package/menu-item/index.cjs +1 -5
- package/menu-item/index.js +2 -3
- package/{shared/definition34.cjs → nav/definition.cjs} +7 -4
- package/{shared/definition34.js → nav/definition.js} +4 -3
- package/nav/index.cjs +5 -5
- package/nav/index.js +13 -3
- package/nav-disclosure/definition.cjs +122 -0
- package/nav-disclosure/definition.js +116 -0
- package/nav-disclosure/index.cjs +16 -5
- package/nav-disclosure/index.js +96 -3
- package/{shared/definition33.cjs → nav-item/definition.cjs} +19 -16
- package/{shared/definition33.js → nav-item/definition.js} +9 -8
- package/nav-item/index.cjs +2 -5
- package/nav-item/index.js +59 -3
- package/{shared/definition35.cjs → note/definition.cjs} +15 -13
- package/{shared/definition35.js → note/definition.js} +6 -6
- package/note/index.cjs +9 -5
- package/note/index.js +44 -3
- package/{shared/definition36.cjs → number-field/definition.cjs} +66 -60
- package/{shared/definition36.js → number-field/definition.js} +31 -27
- package/number-field/index.cjs +60 -5
- package/number-field/index.js +370 -3
- package/option/definition.cjs +84 -0
- package/option/definition.js +78 -0
- package/option/index.cjs +1 -5
- package/option/index.js +2 -3
- package/package.json +15 -4
- package/{shared/definition38.cjs → pagination/definition.cjs} +31 -33
- package/{shared/definition38.js → pagination/definition.js} +7 -11
- package/pagination/index.cjs +43 -5
- package/pagination/index.js +194 -3
- package/popup/definition.cjs +13 -0
- package/popup/definition.js +4 -0
- package/popup/index.cjs +1 -5
- package/popup/index.js +2 -3
- package/{shared/definition40.cjs → progress/definition.cjs} +17 -15
- package/{shared/definition40.js → progress/definition.js} +6 -6
- package/progress/index.cjs +17 -5
- package/progress/index.js +69 -3
- package/{shared/definition39.cjs → progress-ring/definition.cjs} +17 -15
- package/{shared/definition39.js → progress-ring/definition.js} +7 -7
- package/progress-ring/index.cjs +1 -5
- package/progress-ring/index.js +2 -3
- package/{shared/definition42.cjs → radio/definition.cjs} +20 -19
- package/{shared/definition42.js → radio/definition.js} +8 -9
- package/radio/index.cjs +1 -5
- package/radio/index.js +2 -3
- package/{shared/definition41.cjs → radio-group/definition.cjs} +31 -30
- package/{shared/definition41.js → radio-group/definition.js} +8 -9
- package/radio-group/index.cjs +23 -5
- package/radio-group/index.js +255 -3
- package/{shared/definition43.cjs → range-slider/definition.cjs} +62 -61
- package/{shared/definition43.js → range-slider/definition.js} +13 -14
- package/range-slider/index.cjs +68 -5
- package/range-slider/index.js +456 -3
- package/rich-text-editor/definition.cjs +1206 -0
- package/rich-text-editor/definition.js +1200 -0
- package/rich-text-editor/index.cjs +133 -4
- package/rich-text-editor/index.js +10386 -2
- package/{shared/definition45.cjs → searchable-select/definition.cjs} +142 -130
- package/{shared/definition45.js → searchable-select/definition.js} +51 -41
- package/searchable-select/index.cjs +167 -5
- package/searchable-select/index.js +1034 -3
- package/{shared/definition46.cjs → select/definition.cjs} +92 -87
- package/{shared/definition46.js → select/definition.js} +32 -29
- package/select/index.cjs +1 -5
- package/select/index.js +2 -3
- package/{shared/definition47.cjs → selectable-box/definition.cjs} +26 -24
- package/{shared/definition47.js → selectable-box/definition.js} +9 -9
- package/selectable-box/index.cjs +28 -5
- package/selectable-box/index.js +136 -3
- package/shared/aria/aria-mixin.d.ts +0 -1
- package/shared/aria/delegates-aria.d.ts +0 -1
- package/shared/aria/host-semantics.d.ts +0 -1
- package/shared/color-picker/index.d.ts +2 -0
- package/shared/color-picker/types.d.ts +4 -0
- package/shared/color-picker/utils.d.ts +3 -0
- package/shared/feedback/feedback-message.d.ts +0 -1
- package/shared/feedback/mixins.d.ts +0 -2
- package/shared/foundation/button/button.d.ts +0 -2
- package/shared/foundation/form-associated/form-associated.d.ts +0 -2
- package/shared/foundation/vivid-element/vivid-element.d.ts +0 -1
- package/shared/localization/Locale.d.ts +2 -0
- package/shared/patterns/affix.d.ts +0 -2
- package/shared/patterns/anchored.d.ts +0 -2
- package/shared/patterns/char-count/char-count.d.ts +0 -1
- package/shared/patterns/form-elements/form-element.d.ts +0 -2
- package/shared/patterns/form-elements/index.d.ts +1 -0
- package/shared/patterns/form-elements/with-contextual-help.d.ts +1239 -0
- package/shared/patterns/form-elements/with-error-text.d.ts +0 -3
- package/shared/patterns/form-elements/with-success-text.d.ts +0 -1
- package/shared/patterns/linkable.d.ts +0 -1
- package/shared/patterns/localized.d.ts +0 -1
- package/shared/patterns/trapped-focus.d.ts +0 -1
- package/shared/picker-field/mixins/calendar-picker.d.ts +452 -451
- package/shared/picker-field/mixins/calendar-picker.template.d.ts +452 -451
- package/shared/picker-field/mixins/inline-time-picker/inline-time-picker.d.ts +0 -1
- package/shared/picker-field/mixins/min-max-calendar-picker.d.ts +594 -592
- package/shared/picker-field/mixins/single-date-picker.d.ts +734 -731
- package/shared/picker-field/mixins/single-value-picker.d.ts +449 -448
- package/shared/picker-field/mixins/time-selection-picker.d.ts +571 -569
- package/shared/picker-field/mixins/time-selection-picker.template.d.ts +571 -569
- package/shared/picker-field/picker-field.d.ts +483 -72
- package/{shared/definition48.cjs → side-drawer/definition.cjs} +16 -14
- package/{shared/definition48.js → side-drawer/definition.js} +5 -5
- package/side-drawer/index.cjs +17 -3
- package/side-drawer/index.js +100 -2
- package/simple-color-picker/definition.cjs +398 -0
- package/simple-color-picker/definition.js +392 -0
- package/simple-color-picker/index.cjs +31 -0
- package/simple-color-picker/index.js +250 -0
- package/{shared/definition49.cjs → slider/definition.cjs} +46 -53
- package/{shared/definition49.js → slider/definition.js} +11 -20
- package/slider/index.cjs +1 -5
- package/slider/index.js +2 -3
- package/split-button/definition.cjs +176 -0
- package/split-button/definition.js +170 -0
- package/split-button/index.cjs +26 -5
- package/split-button/index.js +149 -3
- package/styles/core/all.css +1 -1
- package/styles/core/theme.css +1 -1
- package/styles/core/typography.css +1 -1
- package/styles/tokens/theme-dark.css +4 -4
- package/styles/tokens/theme-light.css +4 -4
- package/styles/tokens/vivid-2-compat.css +1 -1
- package/{shared/definition51.cjs → switch/definition.cjs} +20 -19
- package/{shared/definition51.js → switch/definition.js} +8 -9
- package/switch/index.cjs +16 -5
- package/switch/index.js +102 -3
- package/tab/definition.cjs +127 -0
- package/tab/definition.js +121 -0
- package/tab/index.cjs +1 -5
- package/tab/index.js +2 -3
- package/{shared/definition52.cjs → tab-panel/definition.cjs} +7 -4
- package/{shared/definition52.js → tab-panel/definition.js} +4 -3
- package/tab-panel/index.cjs +1 -5
- package/tab-panel/index.js +2 -3
- package/{shared/definition54.cjs → tabs/definition.cjs} +46 -39
- package/{shared/definition54.js → tabs/definition.js} +18 -13
- package/tabs/index.cjs +31 -5
- package/tabs/index.js +321 -3
- package/tag/definition.cjs +156 -0
- package/tag/definition.js +150 -0
- package/tag/index.cjs +19 -5
- package/tag/index.js +118 -3
- package/{shared/definition55.cjs → tag-group/definition.cjs} +9 -6
- package/{shared/definition55.js → tag-group/definition.js} +5 -4
- package/tag-group/index.cjs +8 -5
- package/tag-group/index.js +26 -3
- package/{shared/definition57.cjs → text-area/definition.cjs} +62 -42
- package/{shared/definition57.js → text-area/definition.js} +38 -20
- package/text-area/index.cjs +41 -5
- package/text-area/index.js +293 -3
- package/{shared/definition58.cjs → text-field/definition.cjs} +70 -52
- package/{shared/definition58.js → text-field/definition.js} +40 -24
- package/text-field/index.cjs +1 -5
- package/text-field/index.js +2 -3
- package/time-picker/definition.cjs +43 -0
- package/{shared/definition59.js → time-picker/definition.js} +9 -8
- package/time-picker/index.cjs +1 -5
- package/time-picker/index.js +29 -3
- package/{shared/definition60.cjs → toggletip/definition.cjs} +20 -18
- package/{shared/definition60.js → toggletip/definition.js} +8 -8
- package/toggletip/index.cjs +1 -5
- package/toggletip/index.js +2 -3
- package/{shared/definition61.cjs → tooltip/definition.cjs} +16 -13
- package/{shared/definition61.js → tooltip/definition.js} +7 -6
- package/tooltip/index.cjs +1 -5
- package/tooltip/index.js +2 -3
- package/tree-item/definition.cjs +13 -0
- package/tree-item/definition.js +3 -0
- package/tree-item/index.cjs +1 -5
- package/tree-item/index.js +2 -3
- package/{shared/definition63.cjs → tree-view/definition.cjs} +41 -42
- package/{shared/definition63.js → tree-view/definition.js} +6 -9
- package/tree-view/index.cjs +13 -5
- package/tree-view/index.js +171 -3
- package/{shared → unbundled}/affix.cjs +10 -11
- package/{shared → unbundled}/affix.js +2 -3
- package/{shared → unbundled}/anchored.cjs +7 -8
- package/{shared → unbundled}/anchored.js +1 -2
- package/{shared → unbundled}/attribute-binding-behaviour.cjs +3 -3
- package/{shared → unbundled}/attribute-binding-behaviour.js +1 -1
- package/{shared → unbundled}/base-progress.cjs +6 -5
- package/{shared → unbundled}/base-progress.js +2 -1
- package/{shared → unbundled}/breadcrumb-item.cjs +3 -2
- package/{shared → unbundled}/breadcrumb-item.js +2 -1
- package/{shared → unbundled}/button.cjs +10 -9
- package/{shared → unbundled}/button.js +2 -1
- package/{shared → unbundled}/calendar-event.cjs +8 -7
- package/{shared → unbundled}/calendar-event.js +2 -1
- package/unbundled/calendar-picker.template.cjs +917 -0
- package/unbundled/calendar-picker.template.js +906 -0
- package/{shared → unbundled}/char-count.cjs +6 -7
- package/{shared → unbundled}/char-count.js +2 -3
- package/unbundled/definition.cjs +225 -0
- package/unbundled/definition.js +220 -0
- package/{shared/definition30.cjs → unbundled/definition2.cjs} +41 -42
- package/{shared/definition30.js → unbundled/definition2.js} +6 -7
- package/unbundled/definition3.cjs +207 -0
- package/{shared/definition62.js → unbundled/definition3.js} +5 -9
- package/unbundled/definition4.cjs +298 -0
- package/unbundled/definition4.js +293 -0
- package/{shared/definition65.cjs → unbundled/definition5.cjs} +7 -6
- package/{shared/definition65.js → unbundled/definition5.js} +3 -2
- package/{shared → unbundled}/delegates-aria.cjs +4 -3
- package/{shared → unbundled}/delegates-aria.js +2 -1
- package/{shared → unbundled}/divider.cjs +5 -4
- package/{shared → unbundled}/divider.js +3 -2
- package/{shared → unbundled}/form-associated.cjs +13 -13
- package/{shared → unbundled}/form-associated.js +2 -2
- package/{shared → unbundled}/form-element.cjs +3 -3
- package/{shared → unbundled}/form-element.js +1 -1
- package/{shared → unbundled}/host-semantics.cjs +2 -1
- package/{shared → unbundled}/host-semantics.js +2 -1
- package/unbundled/key-codes.cjs +10 -0
- package/unbundled/key-codes.js +7 -0
- package/{shared → unbundled}/linkable.cjs +11 -12
- package/{shared → unbundled}/linkable.js +1 -2
- package/{shared → unbundled}/listbox.cjs +21 -37
- package/{shared → unbundled}/listbox.js +3 -19
- package/{shared → unbundled}/localized.cjs +2 -2
- package/{shared → unbundled}/localized.js +1 -1
- package/{shared → unbundled}/mixins.cjs +27 -83
- package/{shared → unbundled}/mixins.js +6 -62
- package/{shared → unbundled}/option.cjs +29 -17
- package/{shared → unbundled}/option.js +14 -2
- package/{shared → unbundled}/picker-field.template.cjs +32 -24
- package/{shared → unbundled}/picker-field.template.js +18 -10
- package/{shared → unbundled}/slider.template.cjs +15 -19
- package/{shared → unbundled}/slider.template.js +3 -7
- package/unbundled/text-field.cjs +5 -0
- package/unbundled/text-field.js +3 -0
- package/{shared → unbundled}/time-selection-picker.template.cjs +28 -30
- package/{shared → unbundled}/time-selection-picker.template.js +4 -6
- package/unbundled/vivid-element.cjs +283 -0
- package/unbundled/vivid-element.js +274 -0
- package/unbundled/with-contextual-help.cjs +40 -0
- package/unbundled/with-contextual-help.js +38 -0
- package/{shared → unbundled}/with-error-text.cjs +2 -2
- package/{shared → unbundled}/with-error-text.js +1 -1
- package/{shared → unbundled}/with-success-text.cjs +2 -2
- package/{shared → unbundled}/with-success-text.js +1 -1
- package/video-player/definition.cjs +536 -0
- package/video-player/definition.js +530 -0
- package/video-player/index.cjs +536 -3
- package/video-player/index.js +35912 -2
- package/{shared/definition66.cjs → visually-hidden/definition.cjs} +6 -3
- package/{shared/definition66.js → visually-hidden/definition.js} +3 -2
- package/visually-hidden/index.cjs +1 -5
- package/visually-hidden/index.js +2 -3
- package/vivid.api.json +722 -799
- package/shared/_has.cjs +0 -58
- package/shared/_has.js +0 -54
- package/shared/aria.cjs +0 -11
- package/shared/aria.js +0 -9
- package/shared/calendar-picker.template.cjs +0 -6377
- package/shared/calendar-picker.template.js +0 -6366
- package/shared/children.cjs +0 -61
- package/shared/children.js +0 -59
- package/shared/class-names.cjs +0 -17
- package/shared/class-names.js +0 -15
- package/shared/definition.cjs +0 -145
- package/shared/definition.js +0 -141
- package/shared/definition11.cjs +0 -220
- package/shared/definition11.js +0 -215
- package/shared/definition14.cjs +0 -185
- package/shared/definition24.cjs +0 -80
- package/shared/definition24.js +0 -76
- package/shared/definition25.cjs +0 -90
- package/shared/definition25.js +0 -86
- package/shared/definition26.cjs +0 -2549
- package/shared/definition26.js +0 -2545
- package/shared/definition32.cjs +0 -120
- package/shared/definition32.js +0 -116
- package/shared/definition37.cjs +0 -71
- package/shared/definition37.js +0 -68
- package/shared/definition44.cjs +0 -14666
- package/shared/definition44.js +0 -14662
- package/shared/definition50.cjs +0 -148
- package/shared/definition50.js +0 -144
- package/shared/definition53.cjs +0 -124
- package/shared/definition53.js +0 -120
- package/shared/definition56.cjs +0 -154
- package/shared/definition56.js +0 -150
- package/shared/definition59.cjs +0 -39
- package/shared/definition62.cjs +0 -211
- package/shared/definition64.cjs +0 -69579
- package/shared/definition64.js +0 -69575
- package/shared/definition67.cjs +0 -2227
- package/shared/definition67.js +0 -2222
- package/shared/dom.cjs +0 -10
- package/shared/dom.js +0 -8
- package/shared/key-codes.cjs +0 -32
- package/shared/key-codes.js +0 -18
- package/shared/numbers.cjs +0 -38
- package/shared/numbers.js +0 -34
- package/shared/ref.cjs +0 -43
- package/shared/ref.js +0 -41
- package/shared/repeat.cjs +0 -767
- package/shared/repeat.js +0 -764
- package/shared/slotted.cjs +0 -123
- package/shared/slotted.js +0 -119
- package/shared/strings.cjs +0 -11
- package/shared/strings.js +0 -9
- package/shared/text-field.cjs +0 -5
- package/shared/text-field.js +0 -3
- package/shared/vivid-element.cjs +0 -2822
- package/shared/vivid-element.js +0 -2799
- package/shared/when.cjs +0 -31
- package/shared/when.js +0 -29
- /package/{shared → unbundled}/enums.cjs +0 -0
- /package/{shared → unbundled}/enums.js +0 -0
- /package/{shared → unbundled}/index.cjs +0 -0
- /package/{shared → unbundled}/index.js +0 -0
- /package/{shared → unbundled}/playbackRates.cjs +0 -0
- /package/{shared → unbundled}/playbackRates.js +0 -0
- /package/{shared → unbundled}/scrollIntoView.cjs +0 -0
- /package/{shared → unbundled}/scrollIntoView.js +0 -0
- /package/{shared → unbundled}/single-date-picker.cjs +0 -0
- /package/{shared → unbundled}/single-date-picker.js +0 -0
- /package/{shared → unbundled}/single-value-picker.cjs +0 -0
- /package/{shared → unbundled}/single-value-picker.js +0 -0
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const
|
|
6
|
-
const
|
|
7
|
-
const
|
|
8
|
-
const
|
|
9
|
-
const
|
|
10
|
-
const
|
|
11
|
-
const
|
|
12
|
-
const
|
|
13
|
-
const
|
|
3
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
+
|
|
5
|
+
const button_definition = require('../unbundled/definition.cjs');
|
|
6
|
+
const slider_definition = require('../slider/definition.cjs');
|
|
7
|
+
const menu_definition = require('../menu/definition.cjs');
|
|
8
|
+
const vividElement = require('../unbundled/vivid-element.cjs');
|
|
9
|
+
const menuItem_definition = require('../unbundled/definition2.cjs');
|
|
10
|
+
const fastElement = require('@microsoft/fast-element');
|
|
11
|
+
const enums = require('../unbundled/enums.cjs');
|
|
12
|
+
const localized = require('../unbundled/localized.cjs');
|
|
13
|
+
const fastWebUtilities = require('@microsoft/fast-web-utilities');
|
|
14
|
+
const playbackRates = require('../unbundled/playbackRates.cjs');
|
|
14
15
|
|
|
15
16
|
const styles = ":host{display:block}.wrapper{container-type:inline-size}.base{display:inline-flex;box-sizing:border-box;align-items:center;padding:8px;color:var(--vvd-color-canvas-text);gap:8px;inline-size:100%;user-select:none}.base.disabled{color:var(--vvd-color-neutral-300)}.base .slider{flex:1;grid-area:slider}.base .controls{display:flex;align-items:center;justify-content:center;gap:8px;grid-area:controls}.base .time-stamp{display:inline-flex}.base .time-stamp .current-time,.base .time-stamp .total-time{margin-inline:6px;min-inline-size:32px}.base .playback-button{grid-area:playback}@container (max-width: 500px){.base.two-lines{display:inline-grid;grid-template:auto auto/1fr;grid-template-areas:\"slider\" \"controls\";inline-size:100%;row-gap:4px}.base.two-lines .time-stamp{margin-inline:auto 2px}.base.two-lines.playback{grid-template-areas:\"slider slider\" \"controls playback\";grid-template-columns:1fr auto}.base.two-lines.playback .time-stamp{margin-inline:auto}.base .slider{box-sizing:border-box;min-inline-size:auto;padding-inline:2px}}";
|
|
16
17
|
|
|
@@ -73,7 +74,7 @@ class AudioPlayer extends localized.Localized(vividElement.VividElement) {
|
|
|
73
74
|
this.#setPausedState();
|
|
74
75
|
};
|
|
75
76
|
this.#updateProgress = () => {
|
|
76
|
-
|
|
77
|
+
fastElement.Observable.notify(this, "currentTime");
|
|
77
78
|
const duration = this.duration;
|
|
78
79
|
const currentTime = this.currentTime;
|
|
79
80
|
const isValid = Number.isFinite(duration) && duration > 0 && Number.isFinite(currentTime) && currentTime >= 0;
|
|
@@ -88,7 +89,7 @@ class AudioPlayer extends localized.Localized(vividElement.VividElement) {
|
|
|
88
89
|
}
|
|
89
90
|
};
|
|
90
91
|
this.#updateTotalTime = () => {
|
|
91
|
-
|
|
92
|
+
fastElement.Observable.notify(this, "duration");
|
|
92
93
|
if (!Number.isFinite(this.#playerEl.duration) || this.#playerEl.duration <= 0) {
|
|
93
94
|
if (this.durationFallback) {
|
|
94
95
|
this.#fetchAndCacheAudioBuffer();
|
|
@@ -113,31 +114,59 @@ class AudioPlayer extends localized.Localized(vividElement.VividElement) {
|
|
|
113
114
|
}
|
|
114
115
|
};
|
|
115
116
|
this.#setPausedState = () => {
|
|
116
|
-
|
|
117
|
+
fastElement.Observable.notify(this, "paused");
|
|
117
118
|
};
|
|
118
119
|
}
|
|
119
120
|
srcChanged() {
|
|
120
121
|
if (this.src === void 0) {
|
|
121
|
-
this
|
|
122
|
+
this.setSrc("");
|
|
122
123
|
} else {
|
|
123
|
-
this
|
|
124
|
+
this.setSrc(this.src);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
revokeSrc() {
|
|
128
|
+
const src = this.getCurrentSrc();
|
|
129
|
+
if (src && src.startsWith("blob:")) {
|
|
130
|
+
URL.revokeObjectURL(src);
|
|
124
131
|
}
|
|
132
|
+
}
|
|
133
|
+
getCurrentSrc() {
|
|
134
|
+
return this.#playerEl.currentSrc || this.#playerEl.src || "";
|
|
135
|
+
}
|
|
136
|
+
canPlayType(type) {
|
|
137
|
+
return this.#playerEl.canPlayType(type) !== "";
|
|
138
|
+
}
|
|
139
|
+
setSrc(url, blob) {
|
|
140
|
+
const prevSrc = this.getCurrentSrc();
|
|
141
|
+
this.revokeSrc();
|
|
125
142
|
this.#audioBuffer = void 0;
|
|
126
143
|
if (this.#fetchAbortController) {
|
|
127
144
|
this.#fetchAbortController.abort();
|
|
145
|
+
this.#fetchAbortController = void 0;
|
|
146
|
+
}
|
|
147
|
+
const newSrc = blob && (this.canPlayType(blob.type) || !url) ? URL.createObjectURL(blob) : url;
|
|
148
|
+
if (prevSrc) {
|
|
149
|
+
this.#playerEl.removeAttribute("src");
|
|
150
|
+
}
|
|
151
|
+
if (newSrc || url) {
|
|
152
|
+
try {
|
|
153
|
+
this.#playerEl.src = newSrc;
|
|
154
|
+
} catch (error) {
|
|
155
|
+
console.log("Falling back to original URL due to error:", error);
|
|
156
|
+
this.#playerEl.src = url;
|
|
157
|
+
}
|
|
128
158
|
}
|
|
129
|
-
this.#fetchAbortController = void 0;
|
|
130
159
|
}
|
|
131
160
|
get playbackRate() {
|
|
132
|
-
|
|
161
|
+
fastElement.Observable.track(this, "playbackRate");
|
|
133
162
|
return this.#playerEl.playbackRate;
|
|
134
163
|
}
|
|
135
164
|
set playbackRate(value) {
|
|
136
165
|
this.#playerEl.playbackRate = value;
|
|
137
|
-
|
|
166
|
+
fastElement.Observable.notify(this, "playbackRate");
|
|
138
167
|
}
|
|
139
168
|
get paused() {
|
|
140
|
-
|
|
169
|
+
fastElement.Observable.track(this, "paused");
|
|
141
170
|
return this.#playerEl.paused;
|
|
142
171
|
}
|
|
143
172
|
set paused(_) {
|
|
@@ -150,19 +179,24 @@ class AudioPlayer extends localized.Localized(vividElement.VividElement) {
|
|
|
150
179
|
const signal = this.#fetchAbortController.signal;
|
|
151
180
|
try {
|
|
152
181
|
const response = await fetch(this.src, { signal });
|
|
153
|
-
const
|
|
182
|
+
const blob = await response.blob();
|
|
183
|
+
this.setSrc(this.src, blob);
|
|
184
|
+
const arrayBuffer = await blob.arrayBuffer();
|
|
154
185
|
const audioContext = new window.AudioContext();
|
|
155
186
|
const audioBuffer = await audioContext.decodeAudioData(arrayBuffer);
|
|
156
187
|
audioContext.close();
|
|
157
188
|
this.#audioBuffer = audioBuffer;
|
|
158
|
-
|
|
189
|
+
fastElement.Observable.notify(this, "duration");
|
|
159
190
|
} catch (e) {
|
|
191
|
+
if (e instanceof Error && e.name !== "AbortError") {
|
|
192
|
+
console.error("Error loading audio:", e);
|
|
193
|
+
}
|
|
160
194
|
} finally {
|
|
161
195
|
this.#fetchAbortController = void 0;
|
|
162
196
|
}
|
|
163
197
|
}
|
|
164
198
|
get duration() {
|
|
165
|
-
|
|
199
|
+
fastElement.Observable.track(this, "duration");
|
|
166
200
|
const duration = this.#playerEl.duration;
|
|
167
201
|
if (Number.isFinite(duration) && duration > 0) {
|
|
168
202
|
return duration;
|
|
@@ -175,7 +209,7 @@ class AudioPlayer extends localized.Localized(vividElement.VividElement) {
|
|
|
175
209
|
set duration(_) {
|
|
176
210
|
}
|
|
177
211
|
get currentTime() {
|
|
178
|
-
|
|
212
|
+
fastElement.Observable.track(this, "currentTime");
|
|
179
213
|
return this.#playerEl.currentTime;
|
|
180
214
|
}
|
|
181
215
|
set currentTime(value) {
|
|
@@ -236,43 +270,43 @@ class AudioPlayer extends localized.Localized(vividElement.VividElement) {
|
|
|
236
270
|
}
|
|
237
271
|
}
|
|
238
272
|
__decorateClass([
|
|
239
|
-
|
|
273
|
+
fastElement.attr({ attribute: "play-button-aria-label" })
|
|
240
274
|
], AudioPlayer.prototype, "playButtonAriaLabel");
|
|
241
275
|
__decorateClass([
|
|
242
|
-
|
|
276
|
+
fastElement.attr({ attribute: "pause-button-aria-label" })
|
|
243
277
|
], AudioPlayer.prototype, "pauseButtonAriaLabel");
|
|
244
278
|
__decorateClass([
|
|
245
|
-
|
|
279
|
+
fastElement.attr({ attribute: "slider-aria-label" })
|
|
246
280
|
], AudioPlayer.prototype, "sliderAriaLabel");
|
|
247
281
|
__decorateClass([
|
|
248
|
-
|
|
282
|
+
fastElement.attr({ attribute: "skip-forward-aria-label" })
|
|
249
283
|
], AudioPlayer.prototype, "skipForwardButtonAriaLabel");
|
|
250
284
|
__decorateClass([
|
|
251
|
-
|
|
285
|
+
fastElement.attr({ attribute: "skip-backward-aria-label" })
|
|
252
286
|
], AudioPlayer.prototype, "skipBackwardButtonAriaLabel");
|
|
253
287
|
__decorateClass([
|
|
254
|
-
|
|
288
|
+
fastElement.attr
|
|
255
289
|
], AudioPlayer.prototype, "connotation");
|
|
256
290
|
__decorateClass([
|
|
257
|
-
|
|
291
|
+
fastElement.attr
|
|
258
292
|
], AudioPlayer.prototype, "src");
|
|
259
293
|
__decorateClass([
|
|
260
|
-
|
|
294
|
+
fastElement.attr({ mode: "boolean" })
|
|
261
295
|
], AudioPlayer.prototype, "disabled");
|
|
262
296
|
__decorateClass([
|
|
263
|
-
|
|
297
|
+
fastElement.attr({ mode: "boolean" })
|
|
264
298
|
], AudioPlayer.prototype, "notime");
|
|
265
299
|
__decorateClass([
|
|
266
|
-
|
|
300
|
+
fastElement.attr({
|
|
267
301
|
attribute: "skip-by",
|
|
268
302
|
converter: validSkipByConverter
|
|
269
303
|
})
|
|
270
304
|
], AudioPlayer.prototype, "skipBy");
|
|
271
305
|
__decorateClass([
|
|
272
|
-
|
|
306
|
+
fastElement.attr({ attribute: "playback-rates" })
|
|
273
307
|
], AudioPlayer.prototype, "playbackRates");
|
|
274
308
|
__decorateClass([
|
|
275
|
-
|
|
309
|
+
fastElement.attr({ mode: "boolean", attribute: "duration-fallback" })
|
|
276
310
|
], AudioPlayer.prototype, "durationFallback");
|
|
277
311
|
|
|
278
312
|
const getClasses = ({
|
|
@@ -281,7 +315,7 @@ const getClasses = ({
|
|
|
281
315
|
duration,
|
|
282
316
|
skipBy,
|
|
283
317
|
playbackRates
|
|
284
|
-
}) =>
|
|
318
|
+
}) => fastWebUtilities.classNames(
|
|
285
319
|
["disabled", Boolean(disabled) || !duration],
|
|
286
320
|
[
|
|
287
321
|
"two-lines",
|
|
@@ -293,8 +327,8 @@ const isMenuItemChekced = (playbackRate, { parent }) => {
|
|
|
293
327
|
return playbackRate === parent.playbackRate;
|
|
294
328
|
};
|
|
295
329
|
function renderButton(context) {
|
|
296
|
-
const buttonTag = context.tagFor(
|
|
297
|
-
return
|
|
330
|
+
const buttonTag = context.tagFor(button_definition.Button);
|
|
331
|
+
return fastElement.html`<${buttonTag} class="pause" @click="${(x) => x.paused ? x.play() : x.pause()}"
|
|
298
332
|
icon="${(x) => x.paused ? "play-solid" : "pause-solid"}"
|
|
299
333
|
aria-label="${(x) => x.paused ? x.playButtonAriaLabel || x.locale.audioPlayer.playButtonLabel : x.pauseButtonAriaLabel || x.locale.audioPlayer.pauseButtonLabel}"
|
|
300
334
|
size='condensed'
|
|
@@ -303,8 +337,8 @@ function renderButton(context) {
|
|
|
303
337
|
></${buttonTag}>`;
|
|
304
338
|
}
|
|
305
339
|
function renderBackwardSkipButtons(context) {
|
|
306
|
-
const buttonTag = context.tagFor(
|
|
307
|
-
return
|
|
340
|
+
const buttonTag = context.tagFor(button_definition.Button);
|
|
341
|
+
return fastElement.html`
|
|
308
342
|
<${buttonTag} class="skip backward"
|
|
309
343
|
@click="${(element) => element.skip(SKIP_DIRECTIONS.BACKWARD)}"
|
|
310
344
|
icon="${(x) => x.skipBy == enums.MediaSkipBy.Five ? "5-sec-backward-line" : x.skipBy == enums.MediaSkipBy.Thirty ? "30-sec-backward-line" : "10-sec-backward-line"}"
|
|
@@ -316,8 +350,8 @@ function renderBackwardSkipButtons(context) {
|
|
|
316
350
|
`;
|
|
317
351
|
}
|
|
318
352
|
function renderForwardSkipButtons(context) {
|
|
319
|
-
const buttonTag = context.tagFor(
|
|
320
|
-
return
|
|
353
|
+
const buttonTag = context.tagFor(button_definition.Button);
|
|
354
|
+
return fastElement.html`
|
|
321
355
|
<${buttonTag} class="skip forward"
|
|
322
356
|
@click="${(element) => element.skip(SKIP_DIRECTIONS.FORWARD)}"
|
|
323
357
|
icon="${(x) => x.skipBy == enums.MediaSkipBy.Five ? "5-sec-forward-line" : x.skipBy == enums.MediaSkipBy.Thirty ? "30-sec-forward-line" : "10-sec-forward-line"}"
|
|
@@ -329,8 +363,8 @@ function renderForwardSkipButtons(context) {
|
|
|
329
363
|
`;
|
|
330
364
|
}
|
|
331
365
|
function renderSlider(context) {
|
|
332
|
-
const sliderTag = context.tagFor(
|
|
333
|
-
return
|
|
366
|
+
const sliderTag = context.tagFor(slider_definition.VwcSliderElement);
|
|
367
|
+
return fastElement.html`
|
|
334
368
|
<${sliderTag}
|
|
335
369
|
class="slider"
|
|
336
370
|
aria-label="${(x) => x.sliderAriaLabel || x.locale.audioPlayer.sliderLabel}"
|
|
@@ -342,11 +376,11 @@ function renderSlider(context) {
|
|
|
342
376
|
</${sliderTag}>`;
|
|
343
377
|
}
|
|
344
378
|
function renderTimestamp() {
|
|
345
|
-
return
|
|
379
|
+
return fastElement.html` <div class="time-stamp">
|
|
346
380
|
<span class="current-time">${(x) => formatTime(x.currentTime)}</span>
|
|
347
|
-
${
|
|
381
|
+
${fastElement.when(
|
|
348
382
|
(x) => x.duration && x.duration !== Infinity,
|
|
349
|
-
|
|
383
|
+
fastElement.html`
|
|
350
384
|
<span>/</span>
|
|
351
385
|
<span class="total-time">${(x) => formatTime(x.duration)}</span>
|
|
352
386
|
`
|
|
@@ -358,27 +392,27 @@ function handlePlaybackRateClick(playbackRate, context) {
|
|
|
358
392
|
return true;
|
|
359
393
|
}
|
|
360
394
|
const AudioPlayerTemplate = (context) => {
|
|
361
|
-
const menuTag = context.tagFor(
|
|
362
|
-
const buttonTag = context.tagFor(
|
|
363
|
-
const menuItemTag = context.tagFor(
|
|
364
|
-
return
|
|
395
|
+
const menuTag = context.tagFor(menu_definition.VwcMenuElement);
|
|
396
|
+
const buttonTag = context.tagFor(button_definition.Button);
|
|
397
|
+
const menuItemTag = context.tagFor(menuItem_definition.MenuItem);
|
|
398
|
+
return fastElement.html` <div class="wrapper">
|
|
365
399
|
<div class="base ${getClasses}">
|
|
366
400
|
<div class="controls">
|
|
367
|
-
${
|
|
401
|
+
${fastElement.when(
|
|
368
402
|
(x) => x.skipBy && x.skipBy != enums.MediaSkipBy.Zero,
|
|
369
403
|
renderBackwardSkipButtons(context)
|
|
370
404
|
)}
|
|
371
405
|
${renderButton(context)}
|
|
372
|
-
${
|
|
406
|
+
${fastElement.when(
|
|
373
407
|
(x) => x.skipBy && x.skipBy != enums.MediaSkipBy.Zero,
|
|
374
408
|
renderForwardSkipButtons(context)
|
|
375
409
|
)}
|
|
376
|
-
${
|
|
410
|
+
${fastElement.when((x) => !x.notime, renderTimestamp())}
|
|
377
411
|
</div>
|
|
378
412
|
${renderSlider(context)}
|
|
379
|
-
${
|
|
413
|
+
${fastElement.when(
|
|
380
414
|
(x) => Boolean(x.playbackRates),
|
|
381
|
-
|
|
415
|
+
fastElement.html`
|
|
382
416
|
<${menuTag} class="playback-rates" placement="top-start" auto-dismiss id="playback-menu" position-strategy="absolute">
|
|
383
417
|
<${buttonTag} id="playback-open-button"
|
|
384
418
|
class="playback-button"
|
|
@@ -390,9 +424,9 @@ const AudioPlayerTemplate = (context) => {
|
|
|
390
424
|
?disabled="${(x) => x.disabled || !x.duration}"
|
|
391
425
|
></${buttonTag}>
|
|
392
426
|
|
|
393
|
-
${
|
|
427
|
+
${fastElement.repeat(
|
|
394
428
|
(x) => playbackRates.getPlaybackRatesArray(x.playbackRates),
|
|
395
|
-
|
|
429
|
+
fastElement.html`<${menuItemTag} @click="${handlePlaybackRateClick}"
|
|
396
430
|
control-type="radio"
|
|
397
431
|
class="playback-rate"
|
|
398
432
|
text="${(x) => x}"
|
|
@@ -409,7 +443,7 @@ const audioPlayerDefinition = vividElement.defineVividComponent(
|
|
|
409
443
|
"audio-player",
|
|
410
444
|
AudioPlayer,
|
|
411
445
|
AudioPlayerTemplate,
|
|
412
|
-
[
|
|
446
|
+
[button_definition.buttonDefinition, slider_definition.sliderDefinition, menu_definition.menuDefinition, menuItem_definition.menuItemDefinition],
|
|
413
447
|
{
|
|
414
448
|
styles
|
|
415
449
|
}
|
|
@@ -418,6 +452,6 @@ const registerAudioPlayer = vividElement.createRegisterFunction(
|
|
|
418
452
|
audioPlayerDefinition
|
|
419
453
|
);
|
|
420
454
|
|
|
421
|
-
exports.
|
|
455
|
+
exports.VwcAudioPlayerElement = AudioPlayer;
|
|
422
456
|
exports.audioPlayerDefinition = audioPlayerDefinition;
|
|
423
457
|
exports.registerAudioPlayer = registerAudioPlayer;
|
|
@@ -1,14 +1,13 @@
|
|
|
1
|
-
import { B as Button, b as buttonDefinition } from '
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { M as MenuItem, m as menuItemDefinition } from '
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import { w as when } from './when.js';
|
|
1
|
+
import { B as Button, b as buttonDefinition } from '../unbundled/definition.js';
|
|
2
|
+
import { VwcSliderElement as Slider, sliderDefinition } from '../slider/definition.js';
|
|
3
|
+
import { VwcMenuElement as Menu, menuDefinition } from '../menu/definition.js';
|
|
4
|
+
import { V as VividElement, d as defineVividComponent, c as createRegisterFunction } from '../unbundled/vivid-element.js';
|
|
5
|
+
import { M as MenuItem, m as menuItemDefinition } from '../unbundled/definition2.js';
|
|
6
|
+
import { Observable, attr, when, repeat, html } from '@microsoft/fast-element';
|
|
7
|
+
import { M as MediaSkipBy } from '../unbundled/enums.js';
|
|
8
|
+
import { L as Localized } from '../unbundled/localized.js';
|
|
9
|
+
import { classNames } from '@microsoft/fast-web-utilities';
|
|
10
|
+
import { g as getPlaybackRatesArray } from '../unbundled/playbackRates.js';
|
|
12
11
|
|
|
13
12
|
const styles = ":host{display:block}.wrapper{container-type:inline-size}.base{display:inline-flex;box-sizing:border-box;align-items:center;padding:8px;color:var(--vvd-color-canvas-text);gap:8px;inline-size:100%;user-select:none}.base.disabled{color:var(--vvd-color-neutral-300)}.base .slider{flex:1;grid-area:slider}.base .controls{display:flex;align-items:center;justify-content:center;gap:8px;grid-area:controls}.base .time-stamp{display:inline-flex}.base .time-stamp .current-time,.base .time-stamp .total-time{margin-inline:6px;min-inline-size:32px}.base .playback-button{grid-area:playback}@container (max-width: 500px){.base.two-lines{display:inline-grid;grid-template:auto auto/1fr;grid-template-areas:\"slider\" \"controls\";inline-size:100%;row-gap:4px}.base.two-lines .time-stamp{margin-inline:auto 2px}.base.two-lines.playback{grid-template-areas:\"slider slider\" \"controls playback\";grid-template-columns:1fr auto}.base.two-lines.playback .time-stamp{margin-inline:auto}.base .slider{box-sizing:border-box;min-inline-size:auto;padding-inline:2px}}";
|
|
14
13
|
|
|
@@ -116,15 +115,43 @@ class AudioPlayer extends Localized(VividElement) {
|
|
|
116
115
|
}
|
|
117
116
|
srcChanged() {
|
|
118
117
|
if (this.src === void 0) {
|
|
119
|
-
this
|
|
118
|
+
this.setSrc("");
|
|
120
119
|
} else {
|
|
121
|
-
this
|
|
120
|
+
this.setSrc(this.src);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
revokeSrc() {
|
|
124
|
+
const src = this.getCurrentSrc();
|
|
125
|
+
if (src && src.startsWith("blob:")) {
|
|
126
|
+
URL.revokeObjectURL(src);
|
|
122
127
|
}
|
|
128
|
+
}
|
|
129
|
+
getCurrentSrc() {
|
|
130
|
+
return this.#playerEl.currentSrc || this.#playerEl.src || "";
|
|
131
|
+
}
|
|
132
|
+
canPlayType(type) {
|
|
133
|
+
return this.#playerEl.canPlayType(type) !== "";
|
|
134
|
+
}
|
|
135
|
+
setSrc(url, blob) {
|
|
136
|
+
const prevSrc = this.getCurrentSrc();
|
|
137
|
+
this.revokeSrc();
|
|
123
138
|
this.#audioBuffer = void 0;
|
|
124
139
|
if (this.#fetchAbortController) {
|
|
125
140
|
this.#fetchAbortController.abort();
|
|
141
|
+
this.#fetchAbortController = void 0;
|
|
142
|
+
}
|
|
143
|
+
const newSrc = blob && (this.canPlayType(blob.type) || !url) ? URL.createObjectURL(blob) : url;
|
|
144
|
+
if (prevSrc) {
|
|
145
|
+
this.#playerEl.removeAttribute("src");
|
|
146
|
+
}
|
|
147
|
+
if (newSrc || url) {
|
|
148
|
+
try {
|
|
149
|
+
this.#playerEl.src = newSrc;
|
|
150
|
+
} catch (error) {
|
|
151
|
+
console.log("Falling back to original URL due to error:", error);
|
|
152
|
+
this.#playerEl.src = url;
|
|
153
|
+
}
|
|
126
154
|
}
|
|
127
|
-
this.#fetchAbortController = void 0;
|
|
128
155
|
}
|
|
129
156
|
get playbackRate() {
|
|
130
157
|
Observable.track(this, "playbackRate");
|
|
@@ -148,13 +175,18 @@ class AudioPlayer extends Localized(VividElement) {
|
|
|
148
175
|
const signal = this.#fetchAbortController.signal;
|
|
149
176
|
try {
|
|
150
177
|
const response = await fetch(this.src, { signal });
|
|
151
|
-
const
|
|
178
|
+
const blob = await response.blob();
|
|
179
|
+
this.setSrc(this.src, blob);
|
|
180
|
+
const arrayBuffer = await blob.arrayBuffer();
|
|
152
181
|
const audioContext = new window.AudioContext();
|
|
153
182
|
const audioBuffer = await audioContext.decodeAudioData(arrayBuffer);
|
|
154
183
|
audioContext.close();
|
|
155
184
|
this.#audioBuffer = audioBuffer;
|
|
156
185
|
Observable.notify(this, "duration");
|
|
157
186
|
} catch (e) {
|
|
187
|
+
if (e instanceof Error && e.name !== "AbortError") {
|
|
188
|
+
console.error("Error loading audio:", e);
|
|
189
|
+
}
|
|
158
190
|
} finally {
|
|
159
191
|
this.#fetchAbortController = void 0;
|
|
160
192
|
}
|
|
@@ -416,4 +448,4 @@ const registerAudioPlayer = createRegisterFunction(
|
|
|
416
448
|
audioPlayerDefinition
|
|
417
449
|
);
|
|
418
450
|
|
|
419
|
-
export { AudioPlayer as
|
|
451
|
+
export { AudioPlayer as VwcAudioPlayerElement, audioPlayerDefinition, registerAudioPlayer };
|
package/audio-player/index.cjs
CHANGED
|
@@ -1,5 +1,69 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";const u=require("../bundled/definition3.cjs"),h=require("../bundled/definition5.cjs"),y=require("../bundled/definition6.cjs"),r=require("../bundled/vivid-element.cjs"),m=require("../bundled/definition7.cjs"),c=require("../bundled/enums.cjs"),f=require("../bundled/localized.cjs"),g=require("../bundled/playbackRates.cjs"),v=require("../bundled/repeat.cjs"),B=require("../bundled/class-names.cjs"),d=require("../bundled/when.cjs"),$=':host{display:block}.wrapper{container-type:inline-size}.base{display:inline-flex;box-sizing:border-box;align-items:center;padding:8px;color:var(--vvd-color-canvas-text);gap:8px;inline-size:100%;user-select:none}.base.disabled{color:var(--vvd-color-neutral-300)}.base .slider{flex:1;grid-area:slider}.base .controls{display:flex;align-items:center;justify-content:center;gap:8px;grid-area:controls}.base .time-stamp{display:inline-flex}.base .time-stamp .current-time,.base .time-stamp .total-time{margin-inline:6px;min-inline-size:32px}.base .playback-button{grid-area:playback}@container (max-width: 500px){.base.two-lines{display:inline-grid;grid-template:auto auto/1fr;grid-template-areas:"slider" "controls";inline-size:100%;row-gap:4px}.base.two-lines .time-stamp{margin-inline:auto 2px}.base.two-lines.playback{grid-template-areas:"slider slider" "controls playback";grid-template-columns:1fr auto}.base.two-lines.playback .time-stamp{margin-inline:auto}.base .slider{box-sizing:border-box;min-inline-size:auto;padding-inline:2px}}';var w=Object.defineProperty,o=(i,e,t,s)=>{for(var a=void 0,l=i.length-1,p;l>=0;l--)(p=i[l])&&(a=p(e,t,a)||a);return a&&w(e,t,a),a};const k={FORWARD:1,BACKWARD:-1};function b(i){if(!i||Number.isNaN(i))return"0:00";const e=Math.floor(i/60),t=Math.floor(i%60);return e+":"+(t<10?"0"+t:t)}const A=!0,L=!1,T={toView(i){return i},fromView(i){return Object.values(c.MediaSkipBy).includes(i)?i:void 0}};class n extends f.Localized(r.VividElement){constructor(){super(),this.playButtonAriaLabel=null,this.pauseButtonAriaLabel=null,this.sliderAriaLabel=null,this.skipForwardButtonAriaLabel=null,this.skipBackwardButtonAriaLabel=null,this.disabled=!1,this.notime=!1,this.playbackRates=null,this.#t=new Audio,this.#n=!1,this.durationFallback=!1,this.#l=e=>{if(e===this.paused){this.#o();return}this.paused?(this.#r(),this.#t.play()):this.#t.pause(),this.#o()},this.#r=()=>{r.Observable.notify(this,"currentTime");const e=this.duration,t=this.currentTime,s=Number.isFinite(e)&&e>0&&Number.isFinite(t)&&t>=0,a=s?t/e*100:0;this.#e&&(this.#n=!0,this.#e.value=a.toString(),this.#n=!1),s&&a===100&&this.pause()},this.#s=()=>{r.Observable.notify(this,"duration"),(!Number.isFinite(this.#t.duration)||this.#t.duration<=0)&&this.durationFallback&&this.#p()},this.#u=()=>{!this.paused&&this.#e.isDragging&&(this.pause(),this.#d=window.setInterval(()=>{this.#e.isDragging||(clearInterval(this.#d),this.play())},0)),!this.#n&&this.#t&&(this.currentTime=this.duration*Number(this.#e.value)/100)},this.#o=()=>{r.Observable.notify(this,"paused")}}srcChanged(){this.src===void 0?this.setSrc(""):this.setSrc(this.src)}revokeSrc(){const e=this.getCurrentSrc();e&&e.startsWith("blob:")&&URL.revokeObjectURL(e)}getCurrentSrc(){return this.#t.currentSrc||this.#t.src||""}canPlayType(e){return this.#t.canPlayType(e)!==""}setSrc(e,t){const s=this.getCurrentSrc();this.revokeSrc(),this.#i=void 0,this.#a&&(this.#a.abort(),this.#a=void 0);const a=t&&(this.canPlayType(t.type)||!e)?URL.createObjectURL(t):e;if(s&&this.#t.removeAttribute("src"),a||e)try{this.#t.src=a}catch(l){console.log("Falling back to original URL due to error:",l),this.#t.src=e}}get playbackRate(){return r.Observable.track(this,"playbackRate"),this.#t.playbackRate}set playbackRate(e){this.#t.playbackRate=e,r.Observable.notify(this,"playbackRate")}get paused(){return r.Observable.track(this,"paused"),this.#t.paused}set paused(e){}#i;#a;async#p(){if(this.#i||!this.src)return;this.#a=new AbortController;const e=this.#a.signal;try{const s=await(await fetch(this.src,{signal:e})).blob();this.setSrc(this.src,s);const a=await s.arrayBuffer(),l=new window.AudioContext,p=await l.decodeAudioData(a);l.close(),this.#i=p,r.Observable.notify(this,"duration")}catch(t){t instanceof Error&&t.name!=="AbortError"&&console.error("Error loading audio:",t)}finally{this.#a=void 0}}get duration(){r.Observable.track(this,"duration");const e=this.#t.duration;return Number.isFinite(e)&&e>0?e:this.#i&&this.#i.duration>0?this.#i.duration:e}set duration(e){}get currentTime(){return r.Observable.track(this,"currentTime"),this.#t.currentTime}set currentTime(e){this.#t.currentTime=e}get#e(){return this.shadowRoot.querySelector(".slider")}#t;#n;connectedCallback(){super.connectedCallback(),this.#t.addEventListener("timeupdate",this.#r),this.#t.addEventListener("loadedmetadata",this.#s),this.#t.addEventListener("durationchange",this.#s),this.#c(),this.#o(),this.#r()}disconnectedCallback(){super.disconnectedCallback(),this.#c(!1),this.pause(),this.#t.removeEventListener("timeupdate",this.#r),this.#t.removeEventListener("loadedmetadata",this.#s),this.#t.removeEventListener("durationchange",this.#s)}play(){this.#l(L)}pause(){this.#l(A)}#c(e=!0){const t=e?"addEventListener":"removeEventListener";this.#e&&this.#e[t]("change",this.#u)}#l;#r;#s;#d;#u;#o;skip(e){const t=this.currentTime,s=parseInt(this.skipBy)*e,a=t+s;this.currentTime=Math.max(0,Math.min(this.duration,a))}}o([r.attr({attribute:"play-button-aria-label"})],n.prototype,"playButtonAriaLabel");o([r.attr({attribute:"pause-button-aria-label"})],n.prototype,"pauseButtonAriaLabel");o([r.attr({attribute:"slider-aria-label"})],n.prototype,"sliderAriaLabel");o([r.attr({attribute:"skip-forward-aria-label"})],n.prototype,"skipForwardButtonAriaLabel");o([r.attr({attribute:"skip-backward-aria-label"})],n.prototype,"skipBackwardButtonAriaLabel");o([r.attr],n.prototype,"connotation");o([r.attr],n.prototype,"src");o([r.attr({mode:"boolean"})],n.prototype,"disabled");o([r.attr({mode:"boolean"})],n.prototype,"notime");o([r.attr({attribute:"skip-by",converter:T})],n.prototype,"skipBy");o([r.attr({attribute:"playback-rates"})],n.prototype,"playbackRates");o([r.attr({mode:"boolean",attribute:"duration-fallback"})],n.prototype,"durationFallback");const S=({notime:i,disabled:e,duration:t,skipBy:s,playbackRates:a})=>B.classNames(["disabled",!!e||!t],["two-lines",!i&&(!!Number(s)||!!a)],["playback",!!a]),R=(i,{parent:e})=>i===e.playbackRate;function C(i){const e=i.tagFor(u.Button);return r.html`<${e} class="pause" @click="${t=>t.paused?t.play():t.pause()}"
|
|
2
|
+
icon="${t=>t.paused?"play-solid":"pause-solid"}"
|
|
3
|
+
aria-label="${t=>t.paused?t.playButtonAriaLabel||t.locale.audioPlayer.playButtonLabel:t.pauseButtonAriaLabel||t.locale.audioPlayer.pauseButtonLabel}"
|
|
4
|
+
size='condensed'
|
|
5
|
+
connotation="${t=>t.connotation}"
|
|
6
|
+
?disabled="${t=>t.disabled||!t.duration}"
|
|
7
|
+
></${e}>`}function F(i){const e=i.tagFor(u.Button);return r.html`
|
|
8
|
+
<${e} class="skip backward"
|
|
9
|
+
@click="${t=>t.skip(k.BACKWARD)}"
|
|
10
|
+
icon="${t=>t.skipBy==c.MediaSkipBy.Five?"5-sec-backward-line":t.skipBy==c.MediaSkipBy.Thirty?"30-sec-backward-line":"10-sec-backward-line"}"
|
|
11
|
+
size='condensed'
|
|
12
|
+
aria-label="${t=>t.skipBackwardButtonAriaLabel||t.locale.audioPlayer.skipBackwardButton}"
|
|
13
|
+
connotation="${t=>t.connotation}"
|
|
14
|
+
?disabled="${t=>t.disabled||!t.duration}"
|
|
15
|
+
></${e}>
|
|
16
|
+
`}function P(i){const e=i.tagFor(u.Button);return r.html`
|
|
17
|
+
<${e} class="skip forward"
|
|
18
|
+
@click="${t=>t.skip(k.FORWARD)}"
|
|
19
|
+
icon="${t=>t.skipBy==c.MediaSkipBy.Five?"5-sec-forward-line":t.skipBy==c.MediaSkipBy.Thirty?"30-sec-forward-line":"10-sec-forward-line"}"
|
|
20
|
+
size='condensed'
|
|
21
|
+
aria-label="${t=>t.skipForwardButtonAriaLabel||t.locale.audioPlayer.skipForwardButton}"
|
|
22
|
+
connotation="${t=>t.connotation}"
|
|
23
|
+
?disabled="${t=>t.disabled||!t.duration}"
|
|
24
|
+
></${e}>
|
|
25
|
+
`}function E(i){const e=i.tagFor(h.Slider);return r.html`
|
|
26
|
+
<${e}
|
|
27
|
+
class="slider"
|
|
28
|
+
aria-label="${t=>t.sliderAriaLabel||t.locale.audioPlayer.sliderLabel}"
|
|
29
|
+
max="100"
|
|
30
|
+
aria-valuetext="${t=>b(t.currentTime)}"
|
|
31
|
+
connotation="${t=>t.connotation}"
|
|
32
|
+
?disabled="${t=>t.disabled||!t.duration}"
|
|
33
|
+
internal-part>
|
|
34
|
+
</${e}>`}function O(){return r.html` <div class="time-stamp">
|
|
35
|
+
<span class="current-time">${i=>b(i.currentTime)}</span>
|
|
36
|
+
${d.when(i=>i.duration&&i.duration!==1/0,r.html`
|
|
37
|
+
<span>/</span>
|
|
38
|
+
<span class="total-time">${i=>b(i.duration)}</span>
|
|
39
|
+
`)}
|
|
40
|
+
</div>`}function M(i,e){return e.parent.playbackRate=i,!0}const z=i=>{const e=i.tagFor(y.Menu),t=i.tagFor(u.Button),s=i.tagFor(m.MenuItem);return r.html` <div class="wrapper">
|
|
41
|
+
<div class="base ${S}">
|
|
42
|
+
<div class="controls">
|
|
43
|
+
${d.when(a=>a.skipBy&&a.skipBy!=c.MediaSkipBy.Zero,F(i))}
|
|
44
|
+
${C(i)}
|
|
45
|
+
${d.when(a=>a.skipBy&&a.skipBy!=c.MediaSkipBy.Zero,P(i))}
|
|
46
|
+
${d.when(a=>!a.notime,O())}
|
|
47
|
+
</div>
|
|
48
|
+
${E(i)}
|
|
49
|
+
${d.when(a=>!!a.playbackRates,r.html`
|
|
50
|
+
<${e} class="playback-rates" placement="top-start" auto-dismiss id="playback-menu" position-strategy="absolute">
|
|
51
|
+
<${t} id="playback-open-button"
|
|
52
|
+
class="playback-button"
|
|
53
|
+
slot="anchor"
|
|
54
|
+
icon="playback-speed-line"
|
|
55
|
+
aria-label="play back rates"
|
|
56
|
+
size='condensed'
|
|
57
|
+
connotation="${a=>a.connotation}"
|
|
58
|
+
?disabled="${a=>a.disabled||!a.duration}"
|
|
59
|
+
></${t}>
|
|
2
60
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
61
|
+
${v.repeat(a=>g.getPlaybackRatesArray(a.playbackRates),r.html`<${s} @click="${M}"
|
|
62
|
+
control-type="radio"
|
|
63
|
+
class="playback-rate"
|
|
64
|
+
text="${a=>a}"
|
|
65
|
+
check-appearance="tick-only"
|
|
66
|
+
?checked="${R}"></${s}>`)}
|
|
67
|
+
</${e}>`)}
|
|
68
|
+
</div>
|
|
69
|
+
</div>`},D=r.defineVividComponent("audio-player",n,z,[u.buttonDefinition,h.sliderDefinition,y.menuDefinition,m.menuItemDefinition],{styles:$}),I=r.createRegisterFunction(D);I();
|