sveltekit-ui 1.1.74 → 1.1.76
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +34 -0
- package/LICENSE +21 -0
- package/README.md +45 -18
- package/dist/Components/Alert/index.svelte +8 -1
- package/dist/Components/Alert/index.svelte.d.ts +15 -0
- package/dist/Components/Alert/manager.svelte.d.ts +13 -0
- package/dist/Components/Alert/{index.svelte.js → manager.svelte.js} +30 -5
- package/dist/Components/ArrowToggle/index.svelte.d.ts +15 -0
- package/dist/Components/Attachment/index.svelte +18 -8
- package/dist/Components/Attachment/index.svelte.d.ts +11 -0
- package/dist/Components/Attachment/manager.svelte.d.ts +14 -0
- package/dist/Components/Attachment/manager.svelte.js +224 -0
- package/dist/Components/Audio/index.svelte +20 -16
- package/dist/Components/Audio/index.svelte.d.ts +11 -0
- package/dist/Components/Audio/manager.svelte.d.ts +55 -0
- package/dist/Components/Audio/{index.svelte.js → manager.svelte.js} +225 -66
- package/dist/Components/AudioEditor/index.svelte +6 -3
- package/dist/Components/AudioEditor/index.svelte.d.ts +13 -0
- package/dist/Components/AudioEditor/manager.svelte.d.ts +254 -0
- package/dist/Components/AudioEditor/{index.svelte.js → manager.svelte.js} +249 -157
- package/dist/Components/AuthCodeInput/index.svelte +2 -0
- package/dist/Components/AuthCodeInput/index.svelte.d.ts +11 -0
- package/dist/Components/AuthCodeInput/manager.svelte.d.ts +18 -0
- package/dist/Components/AuthCodeInput/{index.svelte.js → manager.svelte.js} +16 -6
- package/dist/Components/Breadcrumbs/index.svelte +2 -2
- package/dist/Components/Breadcrumbs/index.svelte.d.ts +11 -0
- package/dist/Components/Breadcrumbs/manager.svelte.d.ts +8 -0
- package/{src/lib/Components/Breadcrumbs/index.svelte.js → dist/Components/Breadcrumbs/manager.svelte.js} +12 -4
- package/dist/Components/Button/index.svelte +4 -2
- package/dist/Components/Button/index.svelte.d.ts +13 -0
- package/dist/Components/Button/manager.svelte.d.ts +79 -0
- package/dist/Components/Button/{index.svelte.js → manager.svelte.js} +46 -10
- package/dist/Components/Chart/Klines/index.svelte.d.ts +11 -0
- package/dist/Components/Chart/index.svelte.d.ts +11 -0
- package/dist/Components/Chart/manager.svelte.d.ts +46 -0
- package/{src/lib/Components/Chart/index.svelte.js → dist/Components/Chart/manager.svelte.js} +37 -46
- package/dist/Components/ChartInput/DisplayNav/Klines/index.svelte.d.ts +21 -0
- package/dist/Components/ChartInput/DisplayNav/Lines/index.svelte.d.ts +19 -0
- package/dist/Components/ChartInput/DisplayNav/index.svelte.d.ts +11 -0
- package/dist/Components/ChartInput/EditPanel/index.svelte.d.ts +11 -0
- package/dist/Components/ChartInput/index.svelte.d.ts +11 -0
- package/dist/Components/ChartInput/manager.svelte.d.ts +34 -0
- package/dist/Components/ChartInput/{index.svelte.js → manager.svelte.js} +12 -21
- package/dist/Components/Checkbox/index.svelte +7 -9
- package/dist/Components/Checkbox/index.svelte.d.ts +11 -0
- package/dist/Components/Checkbox/manager.svelte.d.ts +97 -0
- package/dist/Components/Checkbox/{index.svelte.js → manager.svelte.js} +11 -5
- package/dist/Components/Code/index.svelte +2 -1
- package/dist/Components/Code/index.svelte.d.ts +11 -0
- package/dist/Components/Code/manager.svelte.d.ts +7 -0
- package/dist/Components/Code/{index.svelte.js → manager.svelte.js} +6 -1
- package/dist/Components/Color/index.svelte +29 -24
- package/dist/Components/Color/index.svelte.d.ts +11 -0
- package/dist/Components/Color/manager.svelte.d.ts +9 -0
- package/{src/lib/Components/Color/index.svelte.js → dist/Components/Color/manager.svelte.js} +10 -2
- package/dist/Components/ColorInput/ChromaPicker/index.svelte +13 -8
- package/dist/Components/ColorInput/ChromaPicker/index.svelte.d.ts +11 -0
- package/dist/Components/ColorInput/ColorPalette/index.svelte +17 -10
- package/dist/Components/ColorInput/ColorPalette/index.svelte.d.ts +11 -0
- package/dist/Components/ColorInput/OpacityPicker/index.svelte +14 -9
- package/dist/Components/ColorInput/OpacityPicker/index.svelte.d.ts +11 -0
- package/dist/Components/ColorInput/ShowcasePicker/index.svelte +18 -10
- package/dist/Components/ColorInput/ShowcasePicker/index.svelte.d.ts +11 -0
- package/dist/Components/ColorInput/index.svelte.d.ts +11 -0
- package/dist/Components/ColorInput/manager.svelte.d.ts +41 -0
- package/dist/Components/ColorInput/{index.svelte.js → manager.svelte.js} +38 -16
- package/dist/Components/ConditionsInput/index.svelte.d.ts +11 -0
- package/dist/Components/ConditionsInput/manager.svelte.d.ts +16 -0
- package/dist/Components/ConditionsInput/{index.svelte.js → manager.svelte.js} +5 -8
- package/dist/Components/Confetti/index.svelte +15 -1
- package/dist/Components/Confetti/index.svelte.d.ts +11 -0
- package/dist/Components/Confetti/manager.svelte.d.ts +12 -0
- package/dist/Components/Confetti/{index.svelte.js → manager.svelte.js} +22 -5
- package/dist/Components/Content/index.svelte +92 -23
- package/dist/Components/Content/index.svelte.d.ts +11 -0
- package/dist/Components/Content/manager.svelte.d.ts +7 -0
- package/dist/Components/Content/{index.svelte.js → manager.svelte.js} +30 -34
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Audio/index.svelte.d.ts +11 -0
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Audio/manager.svelte.d.ts +39 -0
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Audio/{index.svelte.js → manager.svelte.js} +4 -5
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/AudioAdvanced/index.svelte.d.ts +11 -0
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/AudioAdvanced/manager.svelte.d.ts +39 -0
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/AudioAdvanced/{index.svelte.js → manager.svelte.js} +4 -5
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Dropdown/index.svelte.d.ts +11 -0
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Dropdown/manager.svelte.d.ts +19 -0
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Dropdown/{index.svelte.js → manager.svelte.js} +5 -5
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Image/index.svelte.d.ts +11 -0
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Image/manager.svelte.d.ts +34 -0
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Image/{index.svelte.js → manager.svelte.js} +4 -5
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Number/index.svelte +1 -5
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Number/index.svelte.d.ts +11 -0
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Number/manager.svelte.d.ts +23 -0
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Number/{index.svelte.js → manager.svelte.js} +14 -7
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Qr/index.svelte.d.ts +11 -0
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Qr/manager.svelte.d.ts +19 -0
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Qr/{index.svelte.js → manager.svelte.js} +6 -6
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Slider/index.svelte.d.ts +11 -0
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Slider/manager.svelte.d.ts +10 -0
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Slider/{index.svelte.js → manager.svelte.js} +4 -4
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/TableAdvanced/index.svelte.d.ts +11 -0
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/TableAdvanced/manager.svelte.d.ts +44 -0
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/TableAdvanced/{index.svelte.js → manager.svelte.js} +10 -12
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Tag/index.svelte.d.ts +11 -0
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Tag/manager.svelte.d.ts +190 -0
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Tag/{index.svelte.js → manager.svelte.js} +7 -9
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/TextInput/index.svelte.d.ts +11 -0
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/TextInput/manager.svelte.d.ts +19 -0
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/TextInput/{index.svelte.js → manager.svelte.js} +5 -5
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/TimeInput/index.svelte.d.ts +11 -0
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/TimeInput/manager.svelte.d.ts +8 -0
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/TimeInput/{index.svelte.js → manager.svelte.js} +4 -4
- package/dist/Components/ContentInput/AttributesInput/DefinedTypeInput/index.svelte.d.ts +13 -0
- package/dist/Components/ContentInput/AttributesInput/DefinedTypeInput/manager.svelte.d.ts +11 -0
- package/dist/Components/ContentInput/AttributesInput/DefinedTypeInput/{index.svelte.js → manager.svelte.js} +3 -3
- package/dist/Components/ContentInput/AttributesInput/index.svelte +2 -0
- package/dist/Components/ContentInput/AttributesInput/index.svelte.d.ts +11 -0
- package/dist/Components/ContentInput/AttributesInput/manager.svelte.d.ts +13 -0
- package/dist/Components/ContentInput/AttributesInput/{index.svelte.js → manager.svelte.js} +28 -24
- package/dist/Components/ContentInput/ContentPanelBuilder/AddElement/index.svelte.d.ts +11 -0
- package/dist/Components/ContentInput/ContentPanelBuilder/AddElement/manager.svelte.d.ts +9 -0
- package/dist/Components/ContentInput/ContentPanelBuilder/AddElement/{index.svelte.js → manager.svelte.js} +3 -3
- package/dist/Components/ContentInput/ContentPanelBuilder/ElementList/index.svelte +4 -6
- package/dist/Components/ContentInput/ContentPanelBuilder/ElementList/index.svelte.d.ts +13 -0
- package/dist/Components/ContentInput/ContentPanelBuilder/index.svelte +1 -1
- package/dist/Components/ContentInput/ContentPanelBuilder/index.svelte.d.ts +11 -0
- package/dist/Components/ContentInput/index.svelte +1 -1
- package/dist/Components/ContentInput/index.svelte.d.ts +13 -0
- package/dist/Components/ContentInput/manager.svelte.d.ts +59 -0
- package/dist/Components/ContentInput/{index.svelte.js → manager.svelte.js} +8 -8
- package/dist/Components/CronInput/index.svelte +2 -2
- package/dist/Components/CronInput/index.svelte.d.ts +11 -0
- package/dist/Components/CronInput/manager.svelte.d.ts +19 -0
- package/dist/Components/CronInput/{index.svelte.js → manager.svelte.js} +6 -4
- package/dist/Components/DataTypeInput/index.svelte +3 -3
- package/dist/Components/DataTypeInput/index.svelte.d.ts +11 -0
- package/dist/Components/DataTypeInput/manager.svelte.d.ts +36 -0
- package/dist/Components/DataTypeInput/{index.svelte.js → manager.svelte.js} +11 -12
- package/dist/Components/Dropdown/index.svelte.d.ts +11 -0
- package/dist/Components/Dropdown/manager.svelte.d.ts +51 -0
- package/dist/Components/Dropdown/{index.svelte.js → manager.svelte.js} +39 -19
- package/dist/Components/EmailAddress/index.svelte.d.ts +11 -0
- package/dist/Components/EmailAddress/manager.svelte.d.ts +164 -0
- package/dist/Components/EmailAddress/manager.svelte.js +52 -0
- package/dist/Components/ErrorX/index.svelte +2 -0
- package/dist/Components/ErrorX/index.svelte.d.ts +15 -0
- package/dist/Components/Eye/index.svelte.d.ts +19 -0
- package/dist/Components/FileInput/index.svelte +6 -3
- package/dist/Components/FileInput/index.svelte.d.ts +11 -0
- package/dist/Components/FileInput/manager.svelte.d.ts +31 -0
- package/dist/Components/FileInput/{index.svelte.js → manager.svelte.js} +22 -13
- package/dist/Components/Hamburger/index.svelte.d.ts +19 -0
- package/dist/Components/HorizScrollBox/index.svelte +72 -31
- package/dist/Components/HorizScrollBox/index.svelte.d.ts +13 -0
- package/dist/Components/Icon/index.svelte +2 -2
- package/dist/Components/Icon/index.svelte.d.ts +11 -0
- package/dist/Components/Icon/manager.svelte.d.ts +23 -0
- package/dist/Components/IconInput/index.svelte.d.ts +11 -0
- package/dist/Components/IconInput/manager.svelte.d.ts +17 -0
- package/dist/Components/IconInput/{index.svelte.js → manager.svelte.js} +5 -5
- package/dist/Components/Image/index.svelte.d.ts +11 -0
- package/dist/Components/Image/manager.svelte.d.ts +18 -0
- package/dist/Components/Image/{index.svelte.js → manager.svelte.js} +17 -5
- package/dist/Components/ImageEditor/Image/CropBox/index.svelte.d.ts +11 -0
- package/dist/Components/ImageEditor/Image/index.svelte +6 -1
- package/dist/Components/ImageEditor/Image/index.svelte.d.ts +11 -0
- package/dist/Components/ImageEditor/Panels/AI/index.svelte.d.ts +11 -0
- package/dist/Components/ImageEditor/Panels/Crop/index.svelte.d.ts +11 -0
- package/dist/Components/ImageEditor/Panels/File/QualityPicker/index.svelte.d.ts +11 -0
- package/dist/Components/ImageEditor/Panels/File/index.svelte.d.ts +11 -0
- package/dist/Components/ImageEditor/Panels/Filters/index.svelte.d.ts +11 -0
- package/dist/Components/ImageEditor/Panels/Resize/index.svelte.d.ts +11 -0
- package/dist/Components/ImageEditor/index.svelte.d.ts +11 -0
- package/dist/Components/ImageEditor/manager.svelte.d.ts +117 -0
- package/dist/Components/ImageEditor/{index.svelte.js → manager.svelte.js} +259 -132
- package/dist/Components/ImageSlider/index.svelte.d.ts +11 -0
- package/dist/Components/ImageSlider/manager.svelte.d.ts +91 -0
- package/dist/Components/ImageSlider/{index.svelte.js → manager.svelte.js} +3 -3
- package/dist/Components/InfoBox/index.svelte +9 -4
- package/dist/Components/InfoBox/index.svelte.d.ts +29 -0
- package/dist/Components/Json/Nested/index.svelte.d.ts +13 -0
- package/dist/Components/Json/index.svelte.d.ts +11 -0
- package/dist/Components/Json/manager.svelte.d.ts +21 -0
- package/dist/Components/Json/{index.svelte.js → manager.svelte.js} +19 -22
- package/dist/Components/LabeledItem/index.svelte.d.ts +41 -0
- package/dist/Components/Layout/NavBar/FullNav/index.svelte.d.ts +13 -0
- package/dist/Components/Layout/NavBar/NavGuts/index.svelte.d.ts +15 -0
- package/dist/Components/Layout/NavBar/index.svelte +2 -2
- package/dist/Components/Layout/NavBar/index.svelte.d.ts +19 -0
- package/dist/Components/Layout/index.svelte +13 -7
- package/dist/Components/Layout/index.svelte.d.ts +23 -0
- package/dist/Components/Layout/manager.svelte.d.ts +80 -0
- package/dist/Components/Layout/{index.svelte.js → manager.svelte.js} +10 -7
- package/dist/Components/Link/index.svelte +30 -20
- package/dist/Components/Link/index.svelte.d.ts +13 -0
- package/dist/Components/Link/manager.svelte.d.ts +18 -0
- package/dist/Components/Link/{index.svelte.js → manager.svelte.js} +22 -8
- package/dist/Components/LoadingSuccessDiv/index.svelte +3 -0
- package/dist/Components/LoadingSuccessDiv/index.svelte.d.ts +25 -0
- package/dist/Components/LoadingWheel/index.svelte +8 -2
- package/dist/Components/LoadingWheel/index.svelte.d.ts +19 -0
- package/dist/Components/Location/index.svelte +31 -6
- package/dist/Components/Location/index.svelte.d.ts +11 -0
- package/dist/Components/Location/manager.svelte.d.ts +17 -0
- package/dist/Components/Location/manager.svelte.js +303 -0
- package/dist/Components/LocationInput/index.svelte +23 -5
- package/dist/Components/LocationInput/index.svelte.d.ts +11 -0
- package/dist/Components/LocationInput/manager.svelte.d.ts +36 -0
- package/dist/Components/LocationInput/{index.svelte.js → manager.svelte.js} +59 -54
- package/dist/Components/Number/index.svelte.d.ts +11 -0
- package/dist/Components/Number/manager.svelte.d.ts +4 -0
- package/dist/Components/Number/manager.svelte.js +132 -0
- package/dist/Components/PhoneCountryCode/index.svelte +3 -1
- package/dist/Components/PhoneCountryCode/index.svelte.d.ts +11 -0
- package/dist/Components/PhoneCountryCode/manager.svelte.d.ts +5 -0
- package/{src/lib/Components/PhoneCountryCode/index.svelte.js → dist/Components/PhoneCountryCode/manager.svelte.js} +4 -3
- package/dist/Components/PhoneNumber/index.svelte.d.ts +11 -0
- package/dist/Components/PhoneNumber/manager.svelte.d.ts +84 -0
- package/dist/Components/PhoneNumber/manager.svelte.js +51 -0
- package/dist/Components/Popover/index.svelte +46 -6
- package/dist/Components/Popover/index.svelte.d.ts +19 -0
- package/dist/Components/Popover/manager.svelte.d.ts +115 -0
- package/dist/Components/Popover/{index.svelte.js → manager.svelte.js} +26 -13
- package/dist/Components/Qr/index.svelte +7 -4
- package/dist/Components/Qr/index.svelte.d.ts +11 -0
- package/dist/Components/Qr/manager.svelte.d.ts +34 -0
- package/{src/lib/Components/Qr/index.svelte.js → dist/Components/Qr/manager.svelte.js} +107 -54
- package/dist/Components/QrInput/index.svelte.d.ts +11 -0
- package/dist/Components/QrInput/manager.svelte.d.ts +37 -0
- package/dist/Components/QrInput/{index.svelte.js → manager.svelte.js} +12 -9
- package/dist/Components/Slider/index.svelte +16 -8
- package/dist/Components/Slider/index.svelte.d.ts +11 -0
- package/dist/Components/Slider/manager.svelte.d.ts +54 -0
- package/dist/Components/Slider/{index.svelte.js → manager.svelte.js} +34 -12
- package/dist/Components/Spacer/index.svelte.d.ts +25 -0
- package/dist/Components/StoragePicker/DisplayFile/index.svelte.d.ts +11 -0
- package/dist/Components/StoragePicker/index.svelte +6 -0
- package/dist/Components/StoragePicker/index.svelte.d.ts +11 -0
- package/dist/Components/StoragePicker/manager.svelte.d.ts +48 -0
- package/dist/Components/StoragePicker/{index.svelte.js → manager.svelte.js} +233 -137
- package/dist/Components/SuccessCheck/index.svelte +2 -0
- package/dist/Components/SuccessCheck/index.svelte.d.ts +15 -0
- package/dist/Components/TableAdvanced/ColumnInput/index.svelte.d.ts +11 -0
- package/dist/Components/TableAdvanced/ColumnInput/manager.svelte.d.ts +62 -0
- package/dist/Components/TableAdvanced/ColumnInput/{index.svelte.js → manager.svelte.js} +9 -11
- package/dist/Components/TableAdvanced/FilterInput/index.svelte.d.ts +11 -0
- package/dist/Components/TableAdvanced/FilterInput/manager.svelte.d.ts +17 -0
- package/dist/Components/TableAdvanced/FilterInput/{index.svelte.js → manager.svelte.js} +6 -8
- package/dist/Components/TableAdvanced/Pagination/index.svelte.d.ts +11 -0
- package/dist/Components/TableAdvanced/Pagination/manager.svelte.d.ts +12 -0
- package/dist/Components/TableAdvanced/Pagination/{index.svelte.js → manager.svelte.js} +1 -1
- package/dist/Components/TableAdvanced/SortByInput/index.svelte.d.ts +11 -0
- package/dist/Components/TableAdvanced/SortByInput/manager.svelte.d.ts +17 -0
- package/dist/Components/TableAdvanced/SortByInput/{index.svelte.js → manager.svelte.js} +4 -5
- package/dist/Components/TableAdvanced/index.svelte.d.ts +13 -0
- package/dist/Components/TableAdvanced/manager.svelte.d.ts +89 -0
- package/dist/Components/TableAdvanced/{index.svelte.js → manager.svelte.js} +20 -29
- package/dist/Components/Tag/index.svelte +3 -3
- package/dist/Components/Tag/index.svelte.d.ts +11 -0
- package/dist/Components/Tag/manager.svelte.d.ts +10 -0
- package/dist/Components/Tag/manager.svelte.js +118 -0
- package/dist/Components/TextArrayInput/index.svelte.d.ts +11 -0
- package/dist/Components/TextArrayInput/manager.svelte.d.ts +26 -0
- package/dist/Components/TextArrayInput/{index.svelte.js → manager.svelte.js} +10 -3
- package/dist/Components/TextInput/PasswordTooltip/index.svelte.d.ts +21 -0
- package/dist/Components/TextInput/index.svelte +3 -3
- package/dist/Components/TextInput/index.svelte.d.ts +11 -0
- package/dist/Components/TextInput/manager.svelte.d.ts +56 -0
- package/dist/Components/TextInput/{index.svelte.js → manager.svelte.js} +49 -21
- package/dist/Components/Time/index.svelte.d.ts +11 -0
- package/dist/Components/Time/manager.svelte.d.ts +31 -0
- package/dist/Components/Time/manager.svelte.js +44 -0
- package/dist/Components/TimeInput/NumberToggler/index.svelte.d.ts +11 -0
- package/dist/Components/TimeInput/NumberToggler/manager.svelte.d.ts +8 -0
- package/{src/lib/Components/TimeInput/NumberToggler/index.svelte.js → dist/Components/TimeInput/NumberToggler/manager.svelte.js} +4 -2
- package/dist/Components/TimeInput/index.d.ts +193 -0
- package/dist/Components/TimeInput/index.js +36 -12
- package/dist/Components/TimeInput/index.svelte +8 -4
- package/dist/Components/TimeInput/index.svelte.d.ts +11 -0
- package/dist/Components/TimeInput/manager.svelte.d.ts +67 -0
- package/dist/Components/TimeInput/{index.svelte.js → manager.svelte.js} +26 -13
- package/dist/Components/Tooltip/index.svelte +13 -5
- package/dist/Components/Tooltip/index.svelte.d.ts +15 -0
- package/dist/Components/TransparentBackground/index.svelte.d.ts +17 -0
- package/dist/Components/TypingDots/index.svelte.d.ts +11 -0
- package/dist/Components/VariablePathInput/index.svelte.d.ts +11 -0
- package/dist/Components/VariablePathInput/manager.svelte.d.ts +13 -0
- package/dist/Components/VariablePathInput/{index.svelte.js → manager.svelte.js} +7 -7
- package/dist/Components/VideoTBD/index.svelte.d.ts +6 -0
- package/dist/Components/XFollow/index.svelte +34 -6
- package/dist/Components/XFollow/index.svelte.d.ts +13 -0
- package/dist/Components/XPost/index.svelte +12 -4
- package/dist/Components/XPost/index.svelte.d.ts +11 -0
- package/dist/Components/XPost/manager.svelte.d.ts +14 -0
- package/dist/Components/XPost/manager.svelte.js +173 -0
- package/dist/Components/YoutubeChannelButton/index.svelte +23 -5
- package/dist/Components/YoutubeChannelButton/index.svelte.d.ts +13 -0
- package/dist/Components/YoutubeVideo/index.svelte +14 -6
- package/dist/Components/YoutubeVideo/index.svelte.d.ts +11 -0
- package/dist/Components/YoutubeVideo/manager.svelte.d.ts +24 -0
- package/dist/Components/YoutubeVideo/manager.svelte.js +186 -0
- package/dist/actions/draggable.d.ts +3 -0
- package/dist/actions/draggable.js +16 -8
- package/dist/actions/index.d.ts +3 -0
- package/dist/actions/no_spaces.d.ts +4 -0
- package/dist/actions/no_spaces.js +1 -1
- package/dist/actions/numbers_only.d.ts +3 -0
- package/dist/actions/numbers_only.js +1 -1
- package/dist/actions/scroll_y.d.ts +3 -0
- package/dist/actions/scroll_y.js +6 -2
- package/dist/actions/stop_scroll_propagation_y.d.ts +3 -0
- package/dist/actions/stop_scroll_propagation_y.js +20 -12
- package/dist/actions/swipe_handler.d.ts +3 -0
- package/dist/actions/swipe_handler.js +26 -9
- package/dist/client/astc_formatting/index.d.ts +25 -0
- package/dist/client/astc_formatting/index.js +113 -60
- package/dist/client/index.d.ts +61 -0
- package/dist/client/index.js +221 -89
- package/dist/client/links.d.ts +7 -0
- package/dist/client/links.js +68 -0
- package/dist/client/mapkit.d.ts +4 -0
- package/dist/client/mapkit.js +103 -0
- package/dist/client/types/index.d.ts +5678 -0
- package/dist/client/types/index.js +1 -21
- package/dist/index.d.ts +117 -0
- package/dist/index.js +56 -45
- package/package.json +44 -7
- package/dist/Components/Attachment/index.svelte.js +0 -119
- package/dist/Components/Breadcrumbs/index.svelte.js +0 -88
- package/dist/Components/Chart/index.svelte.js +0 -1917
- package/dist/Components/Color/index.svelte.js +0 -31
- package/dist/Components/EmailAddress/index.svelte.js +0 -45
- package/dist/Components/Location/index.svelte.js +0 -288
- package/dist/Components/Number/index.svelte.js +0 -151
- package/dist/Components/PhoneCountryCode/index.svelte.js +0 -260
- package/dist/Components/PhoneNumber/index.svelte.js +0 -41
- package/dist/Components/Qr/index.svelte.js +0 -301
- package/dist/Components/Tag/index.svelte.js +0 -76
- package/dist/Components/Time/index.svelte.js +0 -38
- package/dist/Components/TimeInput/NumberToggler/index.svelte.js +0 -79
- package/dist/Components/XPost/index.svelte.js +0 -64
- package/dist/Components/YoutubeVideo/index.svelte.js +0 -133
- package/dist/client/docs/index.js +0 -7670
- package/jsconfig.json +0 -9
- package/scripts/clean-dist.js +0 -11
- package/scripts/use-next-npm-version.js +0 -80
- package/src/app.html +0 -17
- package/src/hooks.server.js +0 -7
- package/src/lib/Components/Alert/index.svelte +0 -88
- package/src/lib/Components/Alert/index.svelte.js +0 -101
- package/src/lib/Components/ArrowToggle/index.svelte +0 -62
- package/src/lib/Components/Attachment/index.svelte +0 -77
- package/src/lib/Components/Attachment/index.svelte.js +0 -119
- package/src/lib/Components/Audio/index.svelte +0 -199
- package/src/lib/Components/Audio/index.svelte.js +0 -543
- package/src/lib/Components/AudioEditor/index.svelte +0 -252
- package/src/lib/Components/AudioEditor/index.svelte.js +0 -977
- package/src/lib/Components/AudioEditor/samples/alloy-voice-sample.mp3 +0 -0
- package/src/lib/Components/AudioEditor/samples/echo-voice-sample.mp3 +0 -0
- package/src/lib/Components/AudioEditor/samples/fable-voice-sample.mp3 +0 -0
- package/src/lib/Components/AudioEditor/samples/nova-voice-sample.mp3 +0 -0
- package/src/lib/Components/AudioEditor/samples/onyx-voice-sample.mp3 +0 -0
- package/src/lib/Components/AudioEditor/samples/shimmer-voice-sample.mp3 +0 -0
- package/src/lib/Components/AuthCodeInput/index.svelte +0 -85
- package/src/lib/Components/AuthCodeInput/index.svelte.js +0 -95
- package/src/lib/Components/Breadcrumbs/index.svelte +0 -27
- package/src/lib/Components/Button/index.svelte +0 -735
- package/src/lib/Components/Button/index.svelte.js +0 -408
- package/src/lib/Components/Chart/Klines/index.svelte +0 -87
- package/src/lib/Components/Chart/index.svelte +0 -279
- package/src/lib/Components/ChartInput/DisplayNav/Klines/index.svelte +0 -157
- package/src/lib/Components/ChartInput/DisplayNav/Lines/index.svelte +0 -55
- package/src/lib/Components/ChartInput/DisplayNav/index.svelte +0 -297
- package/src/lib/Components/ChartInput/EditPanel/index.svelte +0 -155
- package/src/lib/Components/ChartInput/index.svelte +0 -21
- package/src/lib/Components/ChartInput/index.svelte.js +0 -671
- package/src/lib/Components/Checkbox/index.svelte +0 -410
- package/src/lib/Components/Checkbox/index.svelte.js +0 -178
- package/src/lib/Components/Code/index.svelte +0 -23
- package/src/lib/Components/Code/index.svelte.js +0 -33
- package/src/lib/Components/Color/index.svelte +0 -51
- package/src/lib/Components/ColorInput/ChromaPicker/index.svelte +0 -50
- package/src/lib/Components/ColorInput/ColorPalette/index.svelte +0 -62
- package/src/lib/Components/ColorInput/OpacityPicker/index.svelte +0 -68
- package/src/lib/Components/ColorInput/ShowcasePicker/index.svelte +0 -136
- package/src/lib/Components/ColorInput/index.svelte +0 -70
- package/src/lib/Components/ColorInput/index.svelte.js +0 -386
- package/src/lib/Components/ConditionsInput/index.svelte +0 -46
- package/src/lib/Components/ConditionsInput/index.svelte.js +0 -201
- package/src/lib/Components/Confetti/index.svelte +0 -98
- package/src/lib/Components/Confetti/index.svelte.js +0 -94
- package/src/lib/Components/Content/index.svelte +0 -500
- package/src/lib/Components/Content/index.svelte.js +0 -910
- package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Audio/index.svelte +0 -31
- package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Audio/index.svelte.js +0 -258
- package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/AudioAdvanced/index.svelte +0 -31
- package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/AudioAdvanced/index.svelte.js +0 -258
- package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Dropdown/index.svelte +0 -58
- package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Dropdown/index.svelte.js +0 -206
- package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Image/index.svelte +0 -28
- package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Image/index.svelte.js +0 -224
- package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Number/index.svelte +0 -44
- package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Number/index.svelte.js +0 -272
- package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Qr/index.svelte +0 -41
- package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Qr/index.svelte.js +0 -202
- package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Slider/index.svelte +0 -19
- package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Slider/index.svelte.js +0 -117
- package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/TableAdvanced/index.svelte +0 -60
- package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/TableAdvanced/index.svelte.js +0 -542
- package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Tag/index.svelte +0 -47
- package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Tag/index.svelte.js +0 -185
- package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/TextInput/index.svelte +0 -35
- package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/TextInput/index.svelte.js +0 -222
- package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/TimeInput/index.svelte +0 -20
- package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/TimeInput/index.svelte.js +0 -84
- package/src/lib/Components/ContentInput/AttributesInput/DefinedTypeInput/index.svelte +0 -25
- package/src/lib/Components/ContentInput/AttributesInput/DefinedTypeInput/index.svelte.js +0 -91
- package/src/lib/Components/ContentInput/AttributesInput/index.svelte +0 -352
- package/src/lib/Components/ContentInput/AttributesInput/index.svelte.js +0 -1436
- package/src/lib/Components/ContentInput/ContentPanelBuilder/AddElement/index.svelte +0 -64
- package/src/lib/Components/ContentInput/ContentPanelBuilder/AddElement/index.svelte.js +0 -97
- package/src/lib/Components/ContentInput/ContentPanelBuilder/ElementList/index.svelte +0 -184
- package/src/lib/Components/ContentInput/ContentPanelBuilder/index.svelte +0 -41
- package/src/lib/Components/ContentInput/index.svelte +0 -78
- package/src/lib/Components/ContentInput/index.svelte.js +0 -1197
- package/src/lib/Components/CronInput/index.svelte +0 -78
- package/src/lib/Components/CronInput/index.svelte.js +0 -198
- package/src/lib/Components/DataTypeInput/index.svelte +0 -174
- package/src/lib/Components/DataTypeInput/index.svelte.js +0 -565
- package/src/lib/Components/Dropdown/index.svelte +0 -116
- package/src/lib/Components/Dropdown/index.svelte.js +0 -403
- package/src/lib/Components/EmailAddress/index.svelte +0 -22
- package/src/lib/Components/EmailAddress/index.svelte.js +0 -45
- package/src/lib/Components/ErrorX/index.svelte +0 -58
- package/src/lib/Components/Eye/index.svelte +0 -57
- package/src/lib/Components/FileInput/index.svelte +0 -146
- package/src/lib/Components/FileInput/index.svelte.js +0 -249
- package/src/lib/Components/Hamburger/index.svelte +0 -99
- package/src/lib/Components/HorizScrollBox/index.svelte +0 -145
- package/src/lib/Components/Icon/index.svelte +0 -412
- package/src/lib/Components/Icon/index.svelte.js +0 -116
- package/src/lib/Components/IconInput/index.svelte +0 -77
- package/src/lib/Components/IconInput/index.svelte.js +0 -259
- package/src/lib/Components/Image/index.svelte +0 -128
- package/src/lib/Components/Image/index.svelte.js +0 -116
- package/src/lib/Components/ImageEditor/Image/CropBox/index.svelte +0 -165
- package/src/lib/Components/ImageEditor/Image/index.svelte +0 -104
- package/src/lib/Components/ImageEditor/Panels/AI/index.svelte +0 -44
- package/src/lib/Components/ImageEditor/Panels/Crop/index.svelte +0 -96
- package/src/lib/Components/ImageEditor/Panels/File/QualityPicker/index.svelte +0 -124
- package/src/lib/Components/ImageEditor/Panels/File/index.svelte +0 -74
- package/src/lib/Components/ImageEditor/Panels/Filters/index.svelte +0 -46
- package/src/lib/Components/ImageEditor/Panels/Resize/index.svelte +0 -58
- package/src/lib/Components/ImageEditor/index.svelte +0 -93
- package/src/lib/Components/ImageEditor/index.svelte.js +0 -1961
- package/src/lib/Components/ImageSlider/index.svelte +0 -124
- package/src/lib/Components/ImageSlider/index.svelte.js +0 -99
- package/src/lib/Components/InfoBox/index.svelte +0 -89
- package/src/lib/Components/Json/Nested/index.svelte +0 -157
- package/src/lib/Components/Json/index.svelte +0 -60
- package/src/lib/Components/Json/index.svelte.js +0 -594
- package/src/lib/Components/LabeledItem/index.svelte +0 -102
- package/src/lib/Components/Layout/NavBar/FullNav/index.svelte +0 -52
- package/src/lib/Components/Layout/NavBar/NavGuts/index.svelte +0 -87
- package/src/lib/Components/Layout/NavBar/index.svelte +0 -72
- package/src/lib/Components/Layout/index.svelte +0 -149
- package/src/lib/Components/Layout/index.svelte.js +0 -363
- package/src/lib/Components/Link/index.svelte +0 -47
- package/src/lib/Components/Link/index.svelte.js +0 -133
- package/src/lib/Components/LoadingSuccessDiv/index.svelte +0 -51
- package/src/lib/Components/LoadingWheel/index.svelte +0 -38
- package/src/lib/Components/Location/index.svelte +0 -79
- package/src/lib/Components/Location/index.svelte.js +0 -288
- package/src/lib/Components/LocationInput/index.svelte +0 -197
- package/src/lib/Components/LocationInput/index.svelte.js +0 -965
- package/src/lib/Components/Number/index.svelte +0 -47
- package/src/lib/Components/Number/index.svelte.js +0 -151
- package/src/lib/Components/PhoneCountryCode/index.svelte +0 -7
- package/src/lib/Components/PhoneNumber/index.svelte +0 -22
- package/src/lib/Components/PhoneNumber/index.svelte.js +0 -41
- package/src/lib/Components/Popover/index.svelte +0 -396
- package/src/lib/Components/Popover/index.svelte.js +0 -319
- package/src/lib/Components/Qr/index.svelte +0 -85
- package/src/lib/Components/QrInput/index.svelte +0 -47
- package/src/lib/Components/QrInput/index.svelte.js +0 -218
- package/src/lib/Components/Slider/index.svelte +0 -239
- package/src/lib/Components/Slider/index.svelte.js +0 -469
- package/src/lib/Components/Spacer/index.svelte +0 -41
- package/src/lib/Components/StoragePicker/DisplayFile/index.svelte +0 -15
- package/src/lib/Components/StoragePicker/index.svelte +0 -187
- package/src/lib/Components/StoragePicker/index.svelte.js +0 -592
- package/src/lib/Components/SuccessCheck/index.svelte +0 -56
- package/src/lib/Components/TableAdvanced/ColumnInput/index.svelte +0 -117
- package/src/lib/Components/TableAdvanced/ColumnInput/index.svelte.js +0 -456
- package/src/lib/Components/TableAdvanced/FilterInput/index.svelte +0 -54
- package/src/lib/Components/TableAdvanced/FilterInput/index.svelte.js +0 -247
- package/src/lib/Components/TableAdvanced/Pagination/index.svelte +0 -43
- package/src/lib/Components/TableAdvanced/Pagination/index.svelte.js +0 -97
- package/src/lib/Components/TableAdvanced/SortByInput/index.svelte +0 -72
- package/src/lib/Components/TableAdvanced/SortByInput/index.svelte.js +0 -176
- package/src/lib/Components/TableAdvanced/index.svelte +0 -275
- package/src/lib/Components/TableAdvanced/index.svelte.js +0 -1565
- package/src/lib/Components/Tag/index.svelte +0 -45
- package/src/lib/Components/Tag/index.svelte.js +0 -76
- package/src/lib/Components/TextArrayInput/index.svelte +0 -108
- package/src/lib/Components/TextArrayInput/index.svelte.js +0 -239
- package/src/lib/Components/TextInput/PasswordTooltip/index.svelte +0 -89
- package/src/lib/Components/TextInput/index.svelte +0 -223
- package/src/lib/Components/TextInput/index.svelte.js +0 -424
- package/src/lib/Components/Time/index.svelte +0 -7
- package/src/lib/Components/Time/index.svelte.js +0 -38
- package/src/lib/Components/TimeInput/NumberToggler/index.svelte +0 -34
- package/src/lib/Components/TimeInput/index.js +0 -702
- package/src/lib/Components/TimeInput/index.svelte +0 -211
- package/src/lib/Components/TimeInput/index.svelte.js +0 -638
- package/src/lib/Components/Tooltip/index.svelte +0 -143
- package/src/lib/Components/TransparentBackground/index.svelte +0 -153
- package/src/lib/Components/TypingDots/index.svelte +0 -84
- package/src/lib/Components/VariablePathInput/index.svelte +0 -63
- package/src/lib/Components/VariablePathInput/index.svelte.js +0 -273
- package/src/lib/Components/VideoTBD/index.svelte +0 -100
- package/src/lib/Components/XFollow/index.svelte +0 -42
- package/src/lib/Components/XPost/index.svelte +0 -52
- package/src/lib/Components/XPost/index.svelte.js +0 -64
- package/src/lib/Components/YoutubeChannelButton/index.svelte +0 -82
- package/src/lib/Components/YoutubeVideo/index.svelte +0 -164
- package/src/lib/Components/YoutubeVideo/index.svelte.js +0 -133
- package/src/lib/actions/draggable.js +0 -49
- package/src/lib/actions/index.js +0 -24
- package/src/lib/actions/no_spaces.js +0 -33
- package/src/lib/actions/numbers_only.js +0 -26
- package/src/lib/actions/scroll_y.js +0 -28
- package/src/lib/actions/stop_scroll_propagation_y.js +0 -42
- package/src/lib/actions/swipe_handler.js +0 -295
- package/src/lib/client/astc_formatting/index.js +0 -1128
- package/src/lib/client/docs/index.js +0 -7670
- package/src/lib/client/index.js +0 -735
- package/src/lib/client/types/index.js +0 -2815
- package/src/lib/index.js +0 -181
- package/src/lib/style.css +0 -682
- package/src/routes/+layout.js +0 -8
- package/src/routes/+layout.svelte +0 -241
- package/src/routes/+page.svelte +0 -369
- package/src/routes/components/[component]/+page.svelte +0 -174
- package/src/routes/components/[component]/Showcase/Alert/index.svelte +0 -26
- package/src/routes/components/[component]/Showcase/Audio/index.svelte +0 -87
- package/src/routes/components/[component]/Showcase/AudioEditor/index.svelte +0 -93
- package/src/routes/components/[component]/Showcase/AuthCodeInput/index.svelte +0 -13
- package/src/routes/components/[component]/Showcase/Breadcrumbs/index.svelte +0 -44
- package/src/routes/components/[component]/Showcase/Button/index.svelte +0 -350
- package/src/routes/components/[component]/Showcase/Chart/index.svelte +0 -11117
- package/src/routes/components/[component]/Showcase/Checkbox/index.svelte +0 -52
- package/src/routes/components/[component]/Showcase/Code/index.svelte +0 -13
- package/src/routes/components/[component]/Showcase/Color/index.svelte +0 -28
- package/src/routes/components/[component]/Showcase/ColorInput/index.svelte +0 -35
- package/src/routes/components/[component]/Showcase/ConditionsInput/index.svelte +0 -18
- package/src/routes/components/[component]/Showcase/Confetti/index.svelte +0 -22
- package/src/routes/components/[component]/Showcase/Content/index.svelte +0 -110
- package/src/routes/components/[component]/Showcase/ContentInput/index.svelte +0 -1943
- package/src/routes/components/[component]/Showcase/CronInput/index.svelte +0 -30
- package/src/routes/components/[component]/Showcase/DocsDefinition/index.svelte +0 -155
- package/src/routes/components/[component]/Showcase/Dropdown/index.svelte +0 -88
- package/src/routes/components/[component]/Showcase/FileInput/index.svelte +0 -40
- package/src/routes/components/[component]/Showcase/Icon/index.svelte +0 -120
- package/src/routes/components/[component]/Showcase/IconInput/index.svelte +0 -15
- package/src/routes/components/[component]/Showcase/Image/index.svelte +0 -167
- package/src/routes/components/[component]/Showcase/ImageEditor/index.svelte +0 -90
- package/src/routes/components/[component]/Showcase/ImageSlider/index.svelte +0 -26
- package/src/routes/components/[component]/Showcase/InfoBox/index.svelte +0 -44
- package/src/routes/components/[component]/Showcase/Json/index.svelte +0 -80
- package/src/routes/components/[component]/Showcase/LabeledItem/index.svelte +0 -18
- package/src/routes/components/[component]/Showcase/Link/index.svelte +0 -15
- package/src/routes/components/[component]/Showcase/LoadingWheel/index.svelte +0 -10
- package/src/routes/components/[component]/Showcase/Location/index.svelte +0 -681
- package/src/routes/components/[component]/Showcase/LocationInput/index.svelte +0 -121
- package/src/routes/components/[component]/Showcase/Number/index.svelte +0 -55
- package/src/routes/components/[component]/Showcase/Popover/index.svelte +0 -225
- package/src/routes/components/[component]/Showcase/Qr/index.svelte +0 -77
- package/src/routes/components/[component]/Showcase/QrInput/index.svelte +0 -34
- package/src/routes/components/[component]/Showcase/Slider/index.svelte +0 -92
- package/src/routes/components/[component]/Showcase/Spacer/index.svelte +0 -27
- package/src/routes/components/[component]/Showcase/StoragePicker/index.svelte +0 -139
- package/src/routes/components/[component]/Showcase/TableAdvanced/index.svelte +0 -1568
- package/src/routes/components/[component]/Showcase/Tag/index.svelte +0 -27
- package/src/routes/components/[component]/Showcase/TextArrayInput/index.svelte +0 -23
- package/src/routes/components/[component]/Showcase/TextInput/index.svelte +0 -95
- package/src/routes/components/[component]/Showcase/Time/index.svelte +0 -43
- package/src/routes/components/[component]/Showcase/TimeInput/index.svelte +0 -100
- package/src/routes/components/[component]/Showcase/Tooltip/index.svelte +0 -37
- package/src/routes/components/[component]/Showcase/TransparentBackground/index.svelte +0 -26
- package/src/routes/components/[component]/Showcase/XFollow/index.svelte +0 -7
- package/src/routes/components/[component]/Showcase/XPost/index.svelte +0 -24
- package/src/routes/components/[component]/Showcase/YoutubeChannelButton/index.svelte +0 -7
- package/src/routes/components/[component]/Showcase/YoutubeVideo/index.svelte +0 -15
- package/src/routes/sitemap.xml/+server.js +0 -80
- package/src/routes/test/+page.svelte +0 -53
- package/src/routes/test2/+page.svelte +0 -10908
- package/src/routes/test3/+page.server.js +0 -9469
- package/src/routes/test3/+page.svelte +0 -109
- package/static/android-chrome-192x192.png +0 -0
- package/static/android-chrome-512x512.png +0 -0
- package/static/apple-touch-icon.png +0 -0
- package/static/favicon-inactive.svg +0 -4
- package/static/favicon-themed.svg +0 -11
- package/static/favicon-transparent-bg.webp +0 -0
- package/static/favicon-transparent.webp +0 -0
- package/static/favicon.png +0 -0
- package/static/favicon.svg +0 -3
- package/static/favicon.webp +0 -0
- package/static/fonts/ProximaVara.woff2 +0 -0
- package/static/fonts/Quicksand-VariableFont.woff2 +0 -0
- package/static/fonts/RobotoSerif-VariableFont.woff2 +0 -0
- package/static/full_logo.webp +0 -0
- package/static/icon.png +0 -0
- package/static/site.webmanifest +0 -21
- package/static/thumbnail.png +0 -0
- package/static/thumbnail.webp +0 -0
- package/svelte.config.js +0 -12
- package/vite.config.js +0 -6
- /package/dist/Components/Icon/{index.svelte.js → manager.svelte.js} +0 -0
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## Unreleased
|
|
4
|
+
|
|
5
|
+
### Component fixes
|
|
6
|
+
|
|
7
|
+
- Preserve native button activation, including popover toggles and form submission, when an `on_click` callback starts an async loading state, while still blocking repeated actions until it settles.
|
|
8
|
+
|
|
9
|
+
## 1.1.75 - 2026-07-25
|
|
10
|
+
|
|
11
|
+
### Security and resilience
|
|
12
|
+
|
|
13
|
+
- Reject executable or malformed link targets in `Link`, `Button`, `InfoBox`, and rendered content.
|
|
14
|
+
- Escape generated email HTML and restrict emitted attributes, URLs, and inline style values.
|
|
15
|
+
- Generate identifiers with cryptographically secure randomness when available, and harden theme cookies.
|
|
16
|
+
- Make browser-dependent utilities safe to import and call during server rendering.
|
|
17
|
+
- Harden CSV parsing against malformed input and prototype-key mutation.
|
|
18
|
+
|
|
19
|
+
### Component fixes
|
|
20
|
+
|
|
21
|
+
- Correct manager/view contracts across content, table, number, tag, cron, code, icon, location, media, and input components.
|
|
22
|
+
- Fix stale Svelte 5 state, disabled input behavior, keyboard interaction, labels, popovers, tooltips, and horizontal scrolling.
|
|
23
|
+
- Prevent invalid paragraph nesting and hydration mismatches when rich content contains interactive or block elements.
|
|
24
|
+
- Add accessible names and document landmarks to icon-only controls, theme toggles, navigation, and documentation pages.
|
|
25
|
+
- Improve MapKit loading and failure states, embedded media URL handling, and object URL cleanup.
|
|
26
|
+
- Restore missing public exports and aliases, including `Alert`, `Confetti`, `PhoneCountryCode`, and `YouTubeVideo`.
|
|
27
|
+
|
|
28
|
+
### Packaging and quality
|
|
29
|
+
|
|
30
|
+
- Publish generated type declarations and a restricted package file set.
|
|
31
|
+
- Move Svelte to peer dependencies and add explicit Svelte 5 / SvelteKit 2 compatibility metadata.
|
|
32
|
+
- Add automated component, manager, utility, action, security, public API, and package-content checks.
|
|
33
|
+
- Load documentation showcases on demand and replace the oversized home-page documentation dump with a lightweight summary.
|
|
34
|
+
- Update development dependencies and resolve known dependency audit findings.
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 SvelteKit UI contributors
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,35 +1,62 @@
|
|
|
1
|
-
|
|
1
|
+
# SvelteKit UI
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
SvelteKit UI is a Svelte 5 component library built around paired components and reactive manager functions. It is intended for SvelteKit 2 applications.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
`npm install sveltekit-ui`
|
|
5
|
+
The component documentation and interactive examples live at [sveltekit-ui.com](https://www.sveltekit-ui.com).
|
|
7
6
|
|
|
8
|
-
|
|
7
|
+
## Install
|
|
9
8
|
|
|
10
|
-
|
|
9
|
+
```sh
|
|
10
|
+
npm install sveltekit-ui
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
Import the shared styles once in your root layout:
|
|
14
|
+
|
|
15
|
+
```svelte
|
|
16
|
+
<script>
|
|
17
|
+
import "sveltekit-ui/style.css"
|
|
18
|
+
import { Button, create_button_manager } from "sveltekit-ui"
|
|
11
19
|
|
|
12
|
-
|
|
20
|
+
const button = create_button_manager({
|
|
21
|
+
text: "Save",
|
|
22
|
+
on_click: () => console.log("saved"),
|
|
23
|
+
})
|
|
24
|
+
</script>
|
|
25
|
+
|
|
26
|
+
<Button manager={button} />
|
|
27
|
+
```
|
|
13
28
|
|
|
14
|
-
`
|
|
29
|
+
Most interactive components expose a `create_*_manager` function. The manager owns state and behavior; the Svelte component renders that manager. Components that depend on browser APIs should be initialized or used in the browser, while imports remain safe during SvelteKit server rendering.
|
|
15
30
|
|
|
16
|
-
##
|
|
31
|
+
## Starter project
|
|
17
32
|
|
|
18
|
-
|
|
33
|
+
To create a new site using the library:
|
|
19
34
|
|
|
20
|
-
|
|
35
|
+
```sh
|
|
36
|
+
npx create-sveltekit-ui-site my-project
|
|
37
|
+
```
|
|
21
38
|
|
|
22
|
-
|
|
39
|
+
## Development
|
|
23
40
|
|
|
24
|
-
```
|
|
25
|
-
npm
|
|
41
|
+
```sh
|
|
42
|
+
npm install
|
|
26
43
|
npm run dev
|
|
27
44
|
```
|
|
28
45
|
|
|
29
|
-
|
|
46
|
+
Copy `.env.example` to `.env` and provide `PUBLIC_APPLE_MAPKIT_JS_API_KEY` if you want to run the MapKit showcases locally.
|
|
47
|
+
|
|
48
|
+
Before publishing, run the complete verification suite:
|
|
49
|
+
|
|
50
|
+
```sh
|
|
51
|
+
npm run verify
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
This checks the Svelte source, runs tests, generates the distributable package and type declarations, and builds the documentation site.
|
|
30
55
|
|
|
31
|
-
|
|
56
|
+
## Compatibility and releases
|
|
32
57
|
|
|
33
|
-
|
|
58
|
+
- Svelte 5 is required.
|
|
59
|
+
- SvelteKit 2 is required because some components use SvelteKit navigation and environment modules.
|
|
60
|
+
- Public API changes are documented with package releases. Consumers should review release notes before adopting a new minor version.
|
|
34
61
|
|
|
35
|
-
|
|
62
|
+
The experimental Contibase code generator is available at [contibase.com/code_generator](https://www.contibase.com/code_generator).
|
|
@@ -6,13 +6,20 @@
|
|
|
6
6
|
import { fly } from "svelte/transition"
|
|
7
7
|
|
|
8
8
|
let { manager = null, options = null, on_alert_added } = $props()
|
|
9
|
+
|
|
10
|
+
$effect(() => {
|
|
11
|
+
const current_manager = manager
|
|
12
|
+
current_manager?.run_auto_delete?.()
|
|
13
|
+
return () => current_manager?.destroy?.()
|
|
14
|
+
})
|
|
9
15
|
</script>
|
|
10
16
|
|
|
11
|
-
<div class="alerts_container">
|
|
17
|
+
<div class="alerts_container" role="region" aria-label="Notifications" aria-live="polite">
|
|
12
18
|
{#if Array.isArray(manager?.alerts) && manager?.alerts.length > 0}
|
|
13
19
|
{#each manager?.alerts as alert, i (alert)}
|
|
14
20
|
<div
|
|
15
21
|
class="card alert_box"
|
|
22
|
+
role="status"
|
|
16
23
|
class:alert_container={!manager?.is_small_screen}
|
|
17
24
|
class:small_alert_container={manager?.is_small_screen}
|
|
18
25
|
style="--br: {manager?.border_radius}rem;"
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export default Index;
|
|
2
|
+
type Index = {
|
|
3
|
+
$on?(type: string, callback: (e: any) => void): () => void;
|
|
4
|
+
$set?(props: Partial<$$ComponentProps>): void;
|
|
5
|
+
};
|
|
6
|
+
declare const Index: import("svelte").Component<{
|
|
7
|
+
manager?: any;
|
|
8
|
+
options?: any;
|
|
9
|
+
on_alert_added: any;
|
|
10
|
+
}, {}, "">;
|
|
11
|
+
type $$ComponentProps = {
|
|
12
|
+
manager?: any;
|
|
13
|
+
options?: any;
|
|
14
|
+
on_alert_added: any;
|
|
15
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export function create_alert_manager(config: any): {
|
|
2
|
+
readonly interval: null;
|
|
3
|
+
readonly alerts: any[];
|
|
4
|
+
readonly is_small_screen: boolean;
|
|
5
|
+
readonly x_color: string;
|
|
6
|
+
readonly border_radius: number;
|
|
7
|
+
readonly success_icon_color: string;
|
|
8
|
+
readonly error_icon_color: string;
|
|
9
|
+
add_alert: (header: any, message: any, icon: any) => void;
|
|
10
|
+
delete_alert: (id: any) => void;
|
|
11
|
+
run_auto_delete: () => void;
|
|
12
|
+
destroy: () => void;
|
|
13
|
+
};
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { create_unique_id } from "../../client/index.js"
|
|
2
|
-
import { create_button_manager } from "../Button/
|
|
2
|
+
import { create_button_manager } from "../Button/manager.svelte.js"
|
|
3
|
+
import { browser } from "$app/environment"
|
|
3
4
|
|
|
4
5
|
export function create_alert_manager(config) {
|
|
5
6
|
let alerts = $state([])
|
|
@@ -15,7 +16,7 @@ export function create_alert_manager(config) {
|
|
|
15
16
|
clearInterval(interval)
|
|
16
17
|
interval = null
|
|
17
18
|
}
|
|
18
|
-
if (Array.isArray(alerts) && alerts.length > 0) {
|
|
19
|
+
if (browser && Array.isArray(alerts) && alerts.length > 0) {
|
|
19
20
|
interval = setInterval(function () {
|
|
20
21
|
if (Array.isArray(alerts) && alerts.length > 0) {
|
|
21
22
|
alerts.sort((a, b) => a?.epoch - b?.epoch)
|
|
@@ -50,6 +51,7 @@ export function create_alert_manager(config) {
|
|
|
50
51
|
type: "soft",
|
|
51
52
|
support_icon: "x",
|
|
52
53
|
is_uniform: true,
|
|
54
|
+
aria_label: "Dismiss notification",
|
|
53
55
|
on_click: () => delete_alert(id),
|
|
54
56
|
}),
|
|
55
57
|
}
|
|
@@ -63,13 +65,34 @@ export function create_alert_manager(config) {
|
|
|
63
65
|
}
|
|
64
66
|
|
|
65
67
|
function init(config) {
|
|
66
|
-
alerts = config?.alerts
|
|
68
|
+
alerts = Array.isArray(config?.alerts)
|
|
69
|
+
? config.alerts.map((alert) => {
|
|
70
|
+
const id = alert?.id ?? create_unique_id(null, 20)
|
|
71
|
+
return {
|
|
72
|
+
...alert,
|
|
73
|
+
id,
|
|
74
|
+
epoch: alert?.epoch ?? Math.floor(Date.now() / 1000),
|
|
75
|
+
x_button_manager:
|
|
76
|
+
alert?.x_button_manager ??
|
|
77
|
+
create_button_manager({
|
|
78
|
+
type: "soft",
|
|
79
|
+
support_icon: "x",
|
|
80
|
+
is_uniform: true,
|
|
81
|
+
aria_label: "Dismiss notification",
|
|
82
|
+
on_click: () => delete_alert(id),
|
|
83
|
+
}),
|
|
84
|
+
}
|
|
85
|
+
})
|
|
86
|
+
: []
|
|
67
87
|
is_small_screen = config?.is_small_screen ?? false
|
|
68
88
|
x_color = config?.x_color ?? "var(--g7-t)"
|
|
69
89
|
border_radius = config?.border_radius ?? 1
|
|
70
90
|
success_icon_color = config?.success_icon_color ?? "var(--success-t)"
|
|
71
|
-
error_icon_color = config?.
|
|
72
|
-
|
|
91
|
+
error_icon_color = config?.error_icon_color ?? "var(--error-t)"
|
|
92
|
+
}
|
|
93
|
+
function destroy() {
|
|
94
|
+
if (interval) clearInterval(interval)
|
|
95
|
+
interval = null
|
|
73
96
|
}
|
|
74
97
|
init(config)
|
|
75
98
|
|
|
@@ -97,5 +120,7 @@ export function create_alert_manager(config) {
|
|
|
97
120
|
},
|
|
98
121
|
add_alert,
|
|
99
122
|
delete_alert,
|
|
123
|
+
run_auto_delete,
|
|
124
|
+
destroy,
|
|
100
125
|
}
|
|
101
126
|
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export default Index;
|
|
2
|
+
type Index = {
|
|
3
|
+
$on?(type: string, callback: (e: any) => void): () => void;
|
|
4
|
+
$set?(props: Partial<$$ComponentProps>): void;
|
|
5
|
+
};
|
|
6
|
+
declare const Index: import("svelte").Component<{
|
|
7
|
+
direction?: string;
|
|
8
|
+
is_open?: boolean;
|
|
9
|
+
color_one?: string;
|
|
10
|
+
}, {}, "">;
|
|
11
|
+
type $$ComponentProps = {
|
|
12
|
+
direction?: string;
|
|
13
|
+
is_open?: boolean;
|
|
14
|
+
color_one?: string;
|
|
15
|
+
};
|
|
@@ -7,14 +7,19 @@
|
|
|
7
7
|
import Icon from "../Icon/index.svelte"
|
|
8
8
|
|
|
9
9
|
let { manager } = $props()
|
|
10
|
+
|
|
11
|
+
$effect(() => {
|
|
12
|
+
const current_manager = manager
|
|
13
|
+
return () => current_manager?.destroy?.()
|
|
14
|
+
})
|
|
10
15
|
</script>
|
|
11
16
|
|
|
12
17
|
{#snippet display_content()}
|
|
13
|
-
{#if ["image/webp", "image/jpeg", "image/png", "image/gif"].includes(manager?.val_prepped?.content_type)}
|
|
18
|
+
{#if ["image/webp", "image/jpeg", "image/png", "image/gif"].includes(manager?.val_prepped?.content_type) && manager?.val_prepped?.image_manager}
|
|
14
19
|
<Image manager={manager?.val_prepped?.image_manager} />
|
|
15
|
-
{:else if ["audio/mpeg", "audio/wav", "audio/ogg", "audio/aac"].includes(manager?.val_prepped?.content_type)}
|
|
20
|
+
{:else if ["audio/mpeg", "audio/wav", "audio/ogg", "audio/aac"].includes(manager?.val_prepped?.content_type) && manager?.val_prepped?.audio_manager}
|
|
16
21
|
<Audio manager={manager?.val_prepped?.audio_manager} />
|
|
17
|
-
{:else if ["application/json"].includes(manager?.val_prepped?.content_type)}
|
|
22
|
+
{:else if ["application/json"].includes(manager?.val_prepped?.content_type) && manager?.val_prepped?.json_manager}
|
|
18
23
|
<Json manager={manager?.val_prepped?.json_manager} />
|
|
19
24
|
{/if}
|
|
20
25
|
{/snippet}
|
|
@@ -27,11 +32,9 @@
|
|
|
27
32
|
<p class="file_name">{manager?.val_prepped?.name}</p>
|
|
28
33
|
<p style="margin-top: 0; line-height: 1.4rem; color: var(--g10-t); font-size: 1.2rem;">
|
|
29
34
|
{manager?.val_prepped?.content_type}
|
|
30
|
-
<span style="color: var(--g6-t); font-size: 1.2rem; margin-left: 1rem;"
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
: ""}</span
|
|
34
|
-
>
|
|
35
|
+
<span style="color: var(--g6-t); font-size: 1.2rem; margin-left: 1rem;">
|
|
36
|
+
{manager?.val_prepped?.size_label ?? ""}
|
|
37
|
+
</span>
|
|
35
38
|
</p>
|
|
36
39
|
</div>
|
|
37
40
|
</div>
|
|
@@ -42,6 +45,9 @@
|
|
|
42
45
|
{/if}
|
|
43
46
|
</div>
|
|
44
47
|
</div>
|
|
48
|
+
{#if manager?.error_message}
|
|
49
|
+
<p class="error_message" role="alert">{manager.error_message}</p>
|
|
50
|
+
{/if}
|
|
45
51
|
{#if manager?.is_show_content}
|
|
46
52
|
{@render display_content()}
|
|
47
53
|
{/if}
|
|
@@ -74,4 +80,8 @@
|
|
|
74
80
|
overflow: hidden;
|
|
75
81
|
min-width: 0;
|
|
76
82
|
}
|
|
83
|
+
.error_message {
|
|
84
|
+
color: oklch(var(--l3-t) var(--c16) var(--h3));
|
|
85
|
+
margin: 0.5rem 0;
|
|
86
|
+
}
|
|
77
87
|
</style>
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export default Index;
|
|
2
|
+
type Index = {
|
|
3
|
+
$on?(type: string, callback: (e: any) => void): () => void;
|
|
4
|
+
$set?(props: Partial<$$ComponentProps>): void;
|
|
5
|
+
};
|
|
6
|
+
declare const Index: import("svelte").Component<{
|
|
7
|
+
manager: any;
|
|
8
|
+
}, {}, "">;
|
|
9
|
+
type $$ComponentProps = {
|
|
10
|
+
manager: any;
|
|
11
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export function create_attachment_manager(config: any): {
|
|
2
|
+
readonly val_prepped: null;
|
|
3
|
+
readonly show_content_popover_manager: null;
|
|
4
|
+
readonly show_content_button_manager: null;
|
|
5
|
+
readonly download_button_manager: null;
|
|
6
|
+
readonly is_show_content: any;
|
|
7
|
+
readonly error_message: string;
|
|
8
|
+
readonly download_is_loading: boolean;
|
|
9
|
+
readonly content_error_message: string;
|
|
10
|
+
readonly download_error_message: string;
|
|
11
|
+
download_attachment: (input?: null) => Promise<void>;
|
|
12
|
+
set_val_prepped: (input: any) => void;
|
|
13
|
+
destroy: () => void;
|
|
14
|
+
};
|
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
import { create_button_manager } from "../Button/manager.svelte.js"
|
|
2
|
+
import { create_popover_manager } from "../Popover/manager.svelte.js"
|
|
3
|
+
import { create_image_manager } from "../Image/manager.svelte.js"
|
|
4
|
+
import { create_audio_manager } from "../Audio/manager.svelte.js"
|
|
5
|
+
import { create_json_manager } from "../Json/manager.svelte.js"
|
|
6
|
+
import { create_icon_manager } from "../Icon/manager.svelte.js"
|
|
7
|
+
import { set_closurable } from "../../client/index.js"
|
|
8
|
+
|
|
9
|
+
export function create_attachment_manager(config) {
|
|
10
|
+
let val_prepped = $state(null)
|
|
11
|
+
let show_content_popover_manager = $state(null)
|
|
12
|
+
let show_content_button_manager = $state(null)
|
|
13
|
+
let download_button_manager = $state(null)
|
|
14
|
+
let content_error_message = $state("")
|
|
15
|
+
let download_error_message = $state("")
|
|
16
|
+
let error_message = $derived(content_error_message || download_error_message)
|
|
17
|
+
let download_is_loading = $state(false)
|
|
18
|
+
let is_show_content = $derived(set_closurable(config?.is_show_content, false))
|
|
19
|
+
const object_urls = new Set()
|
|
20
|
+
const revoke_timeout_ids = new Set()
|
|
21
|
+
|
|
22
|
+
function destroy_embedded_content(input) {
|
|
23
|
+
input?.image_manager?.destroy?.()
|
|
24
|
+
input?.audio_manager?.destroy?.()
|
|
25
|
+
input?.json_manager?.destroy?.()
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
function decode_json_content(content) {
|
|
29
|
+
const binary_content = atob(String(content ?? ""))
|
|
30
|
+
const bytes = Uint8Array.from(binary_content, (character) => character.charCodeAt(0))
|
|
31
|
+
return JSON.parse(new TextDecoder().decode(bytes))
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
function get_content_size(content) {
|
|
35
|
+
const normalized_content = String(content ?? "").replace(/\s/g, "")
|
|
36
|
+
if (!normalized_content) return 0
|
|
37
|
+
const padding = normalized_content.endsWith("==") ? 2 : normalized_content.endsWith("=") ? 1 : 0
|
|
38
|
+
return Math.max(0, Math.floor((normalized_content.length * 3) / 4) - padding)
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
function format_file_size(size) {
|
|
42
|
+
if (!size) return ""
|
|
43
|
+
if (size < 1000) return `${size} B`
|
|
44
|
+
if (size < 1000000) return `${Math.round(size / 1000)} KB`
|
|
45
|
+
return `${(size / 1000000).toFixed(1)} MB`
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
function set_val_prepped(input) {
|
|
49
|
+
destroy_embedded_content(val_prepped)
|
|
50
|
+
content_error_message = ""
|
|
51
|
+
download_error_message = ""
|
|
52
|
+
|
|
53
|
+
if (!input || typeof input != "object" || Array.isArray(input)) {
|
|
54
|
+
val_prepped = null
|
|
55
|
+
content_error_message = "Attachment data is missing or invalid."
|
|
56
|
+
return
|
|
57
|
+
}
|
|
58
|
+
let val_prepped_loc = {
|
|
59
|
+
...input,
|
|
60
|
+
size_label: format_file_size(get_content_size(input?.content)),
|
|
61
|
+
}
|
|
62
|
+
if (["image/webp", "image/jpeg", "image/png", "image/gif"].includes(input?.content_type)) {
|
|
63
|
+
val_prepped_loc.image_manager = create_image_manager({
|
|
64
|
+
src: `data:${input.content_type};base64,${input.content}`,
|
|
65
|
+
mime_type: input?.content_type,
|
|
66
|
+
display_max_height: 280,
|
|
67
|
+
display_max_width: 380,
|
|
68
|
+
bg_img_blur: 20,
|
|
69
|
+
bg_img_opacity: 0.01,
|
|
70
|
+
})
|
|
71
|
+
val_prepped_loc.icon_manager = create_icon_manager({
|
|
72
|
+
icon_id: "photo",
|
|
73
|
+
sw: 30,
|
|
74
|
+
})
|
|
75
|
+
} else if (["audio/mpeg", "audio/wav", "audio/ogg", "audio/aac"].includes(input?.content_type)) {
|
|
76
|
+
val_prepped_loc.audio_manager = create_audio_manager({
|
|
77
|
+
// ui_type: "short",
|
|
78
|
+
src: `data:${input.content_type};base64,${input.content}`,
|
|
79
|
+
type: input?.content_type,
|
|
80
|
+
})
|
|
81
|
+
val_prepped_loc.icon_manager = create_icon_manager({
|
|
82
|
+
icon_id: "file", // tbd
|
|
83
|
+
sw: 30,
|
|
84
|
+
})
|
|
85
|
+
} else if (["application/json"].includes(input?.content_type)) {
|
|
86
|
+
try {
|
|
87
|
+
const extracted_json = decode_json_content(input.content)
|
|
88
|
+
val_prepped_loc.json_manager = create_json_manager({
|
|
89
|
+
is_edit_mode: false,
|
|
90
|
+
is_popover: false,
|
|
91
|
+
is_show_buttons: true,
|
|
92
|
+
val: extracted_json,
|
|
93
|
+
})
|
|
94
|
+
} catch {
|
|
95
|
+
content_error_message = "This attachment does not contain valid JSON."
|
|
96
|
+
}
|
|
97
|
+
val_prepped_loc.icon_manager = create_icon_manager({
|
|
98
|
+
icon_id: "file", // tbd
|
|
99
|
+
sw: 30,
|
|
100
|
+
})
|
|
101
|
+
} else {
|
|
102
|
+
val_prepped_loc.icon_manager = create_icon_manager({
|
|
103
|
+
icon_id: "file",
|
|
104
|
+
sw: 30,
|
|
105
|
+
})
|
|
106
|
+
}
|
|
107
|
+
val_prepped = val_prepped_loc
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
function sanitize_file_name(input) {
|
|
111
|
+
return String(input ?? "attachment")
|
|
112
|
+
.replace(/[\\/:*?"<>|\u0000-\u001f]/g, "_")
|
|
113
|
+
.trim()
|
|
114
|
+
.slice(0, 180) || "attachment"
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
function create_attachment_blob(input) {
|
|
118
|
+
const binary_content = atob(String(input?.content ?? "").replace(/\s/g, ""))
|
|
119
|
+
const bytes = Uint8Array.from(binary_content, (character) => character.charCodeAt(0))
|
|
120
|
+
return new Blob([bytes], { type: input?.content_type || "application/octet-stream" })
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
async function download_attachment(input = val_prepped) {
|
|
124
|
+
download_error_message = ""
|
|
125
|
+
if (typeof document === "undefined" || !input?.content) {
|
|
126
|
+
download_error_message = "This attachment has no downloadable content."
|
|
127
|
+
return
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
download_is_loading = true
|
|
131
|
+
try {
|
|
132
|
+
const object_url = URL.createObjectURL(create_attachment_blob(input))
|
|
133
|
+
object_urls.add(object_url)
|
|
134
|
+
const link = document.createElement("a")
|
|
135
|
+
link.href = object_url
|
|
136
|
+
link.download = sanitize_file_name(input?.name)
|
|
137
|
+
document.body.appendChild(link)
|
|
138
|
+
link.click()
|
|
139
|
+
link.remove()
|
|
140
|
+
|
|
141
|
+
const timeout_id = window.setTimeout(() => {
|
|
142
|
+
URL.revokeObjectURL(object_url)
|
|
143
|
+
object_urls.delete(object_url)
|
|
144
|
+
revoke_timeout_ids.delete(timeout_id)
|
|
145
|
+
}, 1000)
|
|
146
|
+
revoke_timeout_ids.add(timeout_id)
|
|
147
|
+
} catch {
|
|
148
|
+
download_error_message = "The attachment could not be downloaded."
|
|
149
|
+
} finally {
|
|
150
|
+
download_is_loading = false
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
function init(config) {
|
|
155
|
+
set_val_prepped(config?.attachment)
|
|
156
|
+
show_content_popover_manager = create_popover_manager({
|
|
157
|
+
header: "Attachment",
|
|
158
|
+
target_width: 400,
|
|
159
|
+
target_height: 340,
|
|
160
|
+
})
|
|
161
|
+
download_button_manager = create_button_manager({
|
|
162
|
+
type: "outlined",
|
|
163
|
+
is_uniform: true,
|
|
164
|
+
support_icon: "download",
|
|
165
|
+
aria_label: "Download attachment",
|
|
166
|
+
is_loading: () => download_is_loading,
|
|
167
|
+
is_disabled: () => !val_prepped?.content,
|
|
168
|
+
on_click: () => download_attachment(),
|
|
169
|
+
})
|
|
170
|
+
show_content_button_manager = create_button_manager({
|
|
171
|
+
type: "outlined",
|
|
172
|
+
text: "View",
|
|
173
|
+
is_compressed: true,
|
|
174
|
+
aria_label: "View attachment contents",
|
|
175
|
+
is_disabled: () => !!content_error_message,
|
|
176
|
+
popover_target: () => `popover_${show_content_popover_manager?.id}`,
|
|
177
|
+
})
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
function destroy() {
|
|
181
|
+
destroy_embedded_content(val_prepped)
|
|
182
|
+
if (typeof window !== "undefined") {
|
|
183
|
+
revoke_timeout_ids.forEach((timeout_id) => window.clearTimeout(timeout_id))
|
|
184
|
+
object_urls.forEach((object_url) => URL.revokeObjectURL(object_url))
|
|
185
|
+
}
|
|
186
|
+
revoke_timeout_ids.clear()
|
|
187
|
+
object_urls.clear()
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
init(config)
|
|
191
|
+
|
|
192
|
+
return {
|
|
193
|
+
get val_prepped() {
|
|
194
|
+
return val_prepped
|
|
195
|
+
},
|
|
196
|
+
get show_content_popover_manager() {
|
|
197
|
+
return show_content_popover_manager
|
|
198
|
+
},
|
|
199
|
+
get show_content_button_manager() {
|
|
200
|
+
return show_content_button_manager
|
|
201
|
+
},
|
|
202
|
+
get download_button_manager() {
|
|
203
|
+
return download_button_manager
|
|
204
|
+
},
|
|
205
|
+
get is_show_content() {
|
|
206
|
+
return is_show_content
|
|
207
|
+
},
|
|
208
|
+
get error_message() {
|
|
209
|
+
return error_message
|
|
210
|
+
},
|
|
211
|
+
get download_is_loading() {
|
|
212
|
+
return download_is_loading
|
|
213
|
+
},
|
|
214
|
+
get content_error_message() {
|
|
215
|
+
return content_error_message
|
|
216
|
+
},
|
|
217
|
+
get download_error_message() {
|
|
218
|
+
return download_error_message
|
|
219
|
+
},
|
|
220
|
+
download_attachment,
|
|
221
|
+
set_val_prepped,
|
|
222
|
+
destroy,
|
|
223
|
+
}
|
|
224
|
+
}
|
|
@@ -3,14 +3,16 @@
|
|
|
3
3
|
import Popover from "../Popover/index.svelte"
|
|
4
4
|
import LoadingWheel from "../LoadingWheel/index.svelte"
|
|
5
5
|
import Slider from "../Slider/index.svelte"
|
|
6
|
-
import { onMount } from "svelte"
|
|
7
6
|
|
|
8
7
|
let { manager } = $props()
|
|
9
8
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
9
|
+
$effect(() => {
|
|
10
|
+
const current_manager = manager
|
|
11
|
+
if (typeof current_manager?.handle_mount == "function") {
|
|
12
|
+
current_manager.handle_mount()
|
|
13
13
|
}
|
|
14
|
+
|
|
15
|
+
return () => current_manager?.destroy?.()
|
|
14
16
|
})
|
|
15
17
|
</script>
|
|
16
18
|
|
|
@@ -24,26 +26,20 @@
|
|
|
24
26
|
{#if manager?.is_show_download_button}
|
|
25
27
|
<Button manager={manager?.download_audio_button_manager} />
|
|
26
28
|
{/if}
|
|
29
|
+
{#if manager?.download_error_message}
|
|
30
|
+
<p class="error_message" role="alert">{manager.download_error_message}</p>
|
|
31
|
+
{/if}
|
|
27
32
|
</div>
|
|
28
33
|
{/snippet}
|
|
29
34
|
</Popover>
|
|
30
35
|
{/snippet}
|
|
31
36
|
|
|
32
|
-
<!-- onloadstart={() => console.log('Load start')}
|
|
33
|
-
onwaiting={() => console.log('Waiting')}
|
|
34
|
-
onstalled={() => console.log('Stalled')}
|
|
35
|
-
onseeked={() => console.log('seeked')}
|
|
36
|
-
onseeking={() => console.log('seeking')}
|
|
37
|
-
ondurationchange={(e) => console.log('durationchange',e)}
|
|
38
|
-
onloadeddata={(e) => console.log('onloadeddata',e)}
|
|
39
|
-
oncanplaythrough={() => console.log('can_play_through')}
|
|
40
|
-
onerror={(e) => console.log('error',e)}
|
|
41
|
-
onabort={(e) => console.log('abort',e)} -->
|
|
42
37
|
<div class="container">
|
|
43
38
|
<audio
|
|
44
39
|
id={`audio_${manager?.id}`}
|
|
45
|
-
onplaying={() => manager?.
|
|
46
|
-
onended={() => manager?.
|
|
40
|
+
onplaying={() => manager?.handle_playing()}
|
|
41
|
+
onended={() => manager?.handle_ended()}
|
|
42
|
+
onerror={() => manager?.handle_audio_error()}
|
|
47
43
|
ontimeupdate={() => manager?.handle_time_update()}
|
|
48
44
|
oncanplay={() => manager?.handle_can_play()}
|
|
49
45
|
onloadedmetadata={(e) => manager?.handle_loaded_metadata(e)}
|
|
@@ -140,12 +136,16 @@ onabort={(e) => console.log('abort',e)} -->
|
|
|
140
136
|
{/if}
|
|
141
137
|
</div>
|
|
142
138
|
{/if}
|
|
139
|
+
{#if manager?.playback_error_message}
|
|
140
|
+
<p class="error_message" role="alert">{manager.playback_error_message}</p>
|
|
141
|
+
{/if}
|
|
143
142
|
</div>
|
|
144
143
|
|
|
145
144
|
<style>
|
|
146
145
|
.container {
|
|
147
146
|
display: flex;
|
|
148
147
|
flex: 0;
|
|
148
|
+
flex-direction: column;
|
|
149
149
|
}
|
|
150
150
|
.container_line {
|
|
151
151
|
display: flex;
|
|
@@ -196,4 +196,8 @@ onabort={(e) => console.log('abort',e)} -->
|
|
|
196
196
|
.is_short {
|
|
197
197
|
flex: 0;
|
|
198
198
|
}
|
|
199
|
+
.error_message {
|
|
200
|
+
color: oklch(var(--l3-t) var(--c16) var(--h3));
|
|
201
|
+
margin: 0.5rem 0 0;
|
|
202
|
+
}
|
|
199
203
|
</style>
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export default Index;
|
|
2
|
+
type Index = {
|
|
3
|
+
$on?(type: string, callback: (e: any) => void): () => void;
|
|
4
|
+
$set?(props: Partial<$$ComponentProps>): void;
|
|
5
|
+
};
|
|
6
|
+
declare const Index: import("svelte").Component<{
|
|
7
|
+
manager: any;
|
|
8
|
+
}, {}, "">;
|
|
9
|
+
type $$ComponentProps = {
|
|
10
|
+
manager: any;
|
|
11
|
+
};
|