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
|
@@ -3,15 +3,16 @@ import {
|
|
|
3
3
|
clean_custom_identifier,
|
|
4
4
|
mime_type_extensions,
|
|
5
5
|
deep_copy,
|
|
6
|
+
set_closurable,
|
|
6
7
|
url_to_file,
|
|
7
8
|
} from "../../client/index.js"
|
|
8
|
-
import { create_button_manager } from "../Button/
|
|
9
|
-
import { create_popover_manager } from "../Popover/
|
|
10
|
-
import { create_text_input_manager } from "../TextInput/
|
|
11
|
-
import { create_dropdown_manager } from "../Dropdown/
|
|
12
|
-
import { create_slider_manager } from "../Slider/
|
|
13
|
-
import { create_file_input_manager } from "../FileInput/
|
|
14
|
-
import { create_checkbox_manager } from "../Checkbox/
|
|
9
|
+
import { create_button_manager } from "../Button/manager.svelte.js"
|
|
10
|
+
import { create_popover_manager } from "../Popover/manager.svelte.js"
|
|
11
|
+
import { create_text_input_manager } from "../TextInput/manager.svelte.js"
|
|
12
|
+
import { create_dropdown_manager } from "../Dropdown/manager.svelte.js"
|
|
13
|
+
import { create_slider_manager } from "../Slider/manager.svelte.js"
|
|
14
|
+
import { create_file_input_manager } from "../FileInput/manager.svelte.js"
|
|
15
|
+
import { create_checkbox_manager } from "../Checkbox/manager.svelte.js"
|
|
15
16
|
import "context-filter-polyfill" // ctx.filter doesnt work on safari and this should fix
|
|
16
17
|
|
|
17
18
|
export function create_image_editor_manager(config) {
|
|
@@ -50,10 +51,18 @@ export function create_image_editor_manager(config) {
|
|
|
50
51
|
let start_y = $state(null)
|
|
51
52
|
let last_known_x = $state(null)
|
|
52
53
|
let last_known_y = $state(null)
|
|
53
|
-
let
|
|
54
|
+
let is_read_only = $derived(set_closurable(config?.is_read_only, false))
|
|
55
|
+
let is_disabled = $derived(set_closurable(config?.is_disabled, false) || is_read_only)
|
|
56
|
+
let is_interaction_disabled = $derived(is_disabled)
|
|
54
57
|
let ai_error_message = $state(null)
|
|
58
|
+
let error_message = $state(null)
|
|
55
59
|
let file_size_kb = $state(null)
|
|
56
60
|
|
|
61
|
+
let is_destroyed = false
|
|
62
|
+
let set_base_image_timeout_id = null
|
|
63
|
+
let crop_timeout_id = null
|
|
64
|
+
const owned_object_urls = new Set()
|
|
65
|
+
|
|
57
66
|
let popover_manager = $state(null)
|
|
58
67
|
let file_input_manager = $state(null)
|
|
59
68
|
let screen_tab_filters_button_manager = $state(null)
|
|
@@ -137,18 +146,47 @@ export function create_image_editor_manager(config) {
|
|
|
137
146
|
)
|
|
138
147
|
|
|
139
148
|
let shown_file_size_data = $derived(file_size_data?.[mime_type_input])
|
|
149
|
+
let is_ai_loading = $derived(
|
|
150
|
+
ai_image_generator_is_loading ||
|
|
151
|
+
ai_remove_background_is_loading ||
|
|
152
|
+
ai_restore_resolution_is_loading ||
|
|
153
|
+
ai_restore_face_is_loading
|
|
154
|
+
)
|
|
155
|
+
|
|
156
|
+
function create_owned_object_url(blob) {
|
|
157
|
+
const object_url = URL.createObjectURL(blob)
|
|
158
|
+
owned_object_urls.add(object_url)
|
|
159
|
+
return object_url
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
function revoke_owned_object_url(object_url) {
|
|
163
|
+
if (!object_url || !owned_object_urls.has(object_url)) return
|
|
164
|
+
URL.revokeObjectURL(object_url)
|
|
165
|
+
owned_object_urls.delete(object_url)
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
function revoke_all_owned_object_urls() {
|
|
169
|
+
for (const object_url of owned_object_urls) {
|
|
170
|
+
URL.revokeObjectURL(object_url)
|
|
171
|
+
}
|
|
172
|
+
owned_object_urls.clear()
|
|
173
|
+
}
|
|
140
174
|
|
|
141
175
|
async function set_file_size_kb() {
|
|
142
|
-
|
|
176
|
+
const image_source = selected_image_source
|
|
177
|
+
if (!image_source) {
|
|
143
178
|
return
|
|
144
179
|
}
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
180
|
+
try {
|
|
181
|
+
const target_mime_type = mime_type_input ?? mime_type
|
|
182
|
+
let data_url = await get_image_data_url(image_source, target_mime_type, file_quality_slider_manager?.val)
|
|
183
|
+
if (is_destroyed || image_source !== selected_image_source) return
|
|
184
|
+
file_size_kb = calculate_file_size(data_url, target_mime_type)
|
|
185
|
+
} catch (error) {
|
|
186
|
+
if (!is_destroyed && image_source === selected_image_source) {
|
|
187
|
+
error_message = error?.message ?? "Unable to calculate image size."
|
|
188
|
+
}
|
|
189
|
+
}
|
|
152
190
|
}
|
|
153
191
|
|
|
154
192
|
function set_crop_box_loc(w, h) {
|
|
@@ -160,17 +198,31 @@ export function create_image_editor_manager(config) {
|
|
|
160
198
|
}
|
|
161
199
|
|
|
162
200
|
function on_destroy() {
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
201
|
+
is_destroyed = true
|
|
202
|
+
if (set_base_image_timeout_id != null) {
|
|
203
|
+
clearTimeout(set_base_image_timeout_id)
|
|
204
|
+
set_base_image_timeout_id = null
|
|
205
|
+
}
|
|
206
|
+
if (crop_timeout_id != null) {
|
|
207
|
+
clearTimeout(crop_timeout_id)
|
|
208
|
+
crop_timeout_id = null
|
|
168
209
|
}
|
|
210
|
+
ai_image_generator_is_loading = false
|
|
211
|
+
ai_remove_background_is_loading = false
|
|
212
|
+
ai_restore_resolution_is_loading = false
|
|
213
|
+
ai_restore_face_is_loading = false
|
|
214
|
+
revoke_all_owned_object_urls()
|
|
169
215
|
}
|
|
170
216
|
|
|
171
217
|
function set_base_image(new_src) {
|
|
172
|
-
|
|
173
|
-
|
|
218
|
+
if (typeof document === "undefined" || is_destroyed) return
|
|
219
|
+
if (set_base_image_timeout_id != null) {
|
|
220
|
+
clearTimeout(set_base_image_timeout_id)
|
|
221
|
+
}
|
|
222
|
+
set_base_image_timeout_id = setTimeout(() => {
|
|
223
|
+
set_base_image_timeout_id = null
|
|
224
|
+
if (is_destroyed) return
|
|
225
|
+
let hidden_image_el = document.querySelector(`#${id}_hidden_image_el`)
|
|
174
226
|
if (hidden_image_el) {
|
|
175
227
|
hidden_image_el.src = "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"
|
|
176
228
|
if (new_src) {
|
|
@@ -334,11 +386,12 @@ export function create_image_editor_manager(config) {
|
|
|
334
386
|
set_base_image(new_image_src)
|
|
335
387
|
}
|
|
336
388
|
} catch (err) {
|
|
337
|
-
console.
|
|
389
|
+
console.error("Error updating image", err)
|
|
338
390
|
}
|
|
339
391
|
}
|
|
340
392
|
|
|
341
393
|
function undo() {
|
|
394
|
+
if (is_disabled || is_destroyed) return
|
|
342
395
|
if (Array.isArray(image_sources) && image_sources.length > 1 && image_source_index < image_sources.length - 1) {
|
|
343
396
|
image_source_index++
|
|
344
397
|
set_base_image(selected_image_source)
|
|
@@ -346,6 +399,7 @@ export function create_image_editor_manager(config) {
|
|
|
346
399
|
}
|
|
347
400
|
|
|
348
401
|
function redo() {
|
|
402
|
+
if (is_disabled || is_destroyed) return
|
|
349
403
|
if (Array.isArray(image_sources) && image_sources.length > 1 && image_source_index > 0) {
|
|
350
404
|
image_source_index--
|
|
351
405
|
set_base_image(selected_image_source)
|
|
@@ -353,17 +407,24 @@ export function create_image_editor_manager(config) {
|
|
|
353
407
|
}
|
|
354
408
|
|
|
355
409
|
function clear() {
|
|
410
|
+
revoke_all_owned_object_urls()
|
|
356
411
|
image_sources = []
|
|
357
412
|
image_source_index = 0
|
|
358
413
|
file_picker_file = null
|
|
359
414
|
file_name_text_input_manager.set_val(null)
|
|
415
|
+
file_size_data = null
|
|
416
|
+
file_size_kb = null
|
|
417
|
+
set_base_image(null)
|
|
360
418
|
}
|
|
361
419
|
|
|
362
420
|
async function finish() {
|
|
421
|
+
if (is_disabled || is_destroyed) return
|
|
422
|
+
const image_source = selected_image_source
|
|
363
423
|
let file_to_return = null
|
|
364
|
-
if (
|
|
365
|
-
file_to_return = await url_to_file(
|
|
424
|
+
if (image_source) {
|
|
425
|
+
file_to_return = await url_to_file(image_source, file_name_derived)
|
|
366
426
|
}
|
|
427
|
+
if (is_destroyed || image_source !== selected_image_source) return
|
|
367
428
|
if (typeof config?.on_finish == "function") {
|
|
368
429
|
config?.on_finish(file_to_return)
|
|
369
430
|
}
|
|
@@ -371,26 +432,11 @@ export function create_image_editor_manager(config) {
|
|
|
371
432
|
}
|
|
372
433
|
|
|
373
434
|
function drop_handler(e) {
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
let file = e.dataTransfer.items[i].getAsFile()
|
|
380
|
-
if (accept.includes(file?.type)) {
|
|
381
|
-
files_loc = [...files_loc, file]
|
|
382
|
-
}
|
|
383
|
-
}
|
|
384
|
-
}
|
|
385
|
-
} else {
|
|
386
|
-
for (let i = 0; i < e.dataTransfer.files.length; i++) {
|
|
387
|
-
let file = e.dataTransfer.files[i].getAsFile()
|
|
388
|
-
files_loc = [...files_loc, file]
|
|
389
|
-
}
|
|
390
|
-
}
|
|
391
|
-
if (files_loc.length > 0) {
|
|
392
|
-
init_file(files_loc[0])
|
|
393
|
-
}
|
|
435
|
+
file_input_manager?.drop_handler(e)
|
|
436
|
+
}
|
|
437
|
+
|
|
438
|
+
function drag_over_handler(e) {
|
|
439
|
+
file_input_manager?.drag_over_handler(e)
|
|
394
440
|
}
|
|
395
441
|
|
|
396
442
|
// filters ↓↓↓
|
|
@@ -466,6 +512,7 @@ export function create_image_editor_manager(config) {
|
|
|
466
512
|
// crop ↓↓↓
|
|
467
513
|
function set_crop_box(w = null, h = null) {
|
|
468
514
|
let canvas_el = document?.querySelector(`#${id}_canvas_el`)
|
|
515
|
+
if (!canvas_el) return
|
|
469
516
|
if (w != null && w > -1 && h != null && h > -1) {
|
|
470
517
|
crop_aspect_ratio = parseFloat((w / h).toPrecision(4))
|
|
471
518
|
} else {
|
|
@@ -493,6 +540,7 @@ export function create_image_editor_manager(config) {
|
|
|
493
540
|
}
|
|
494
541
|
|
|
495
542
|
function crop_image(w, h) {
|
|
543
|
+
if (is_interaction_disabled) return
|
|
496
544
|
if (crop_aspect_width != w && crop_aspect_height != h) {
|
|
497
545
|
crop_aspect_width = w
|
|
498
546
|
crop_aspect_height = h
|
|
@@ -504,7 +552,10 @@ export function create_image_editor_manager(config) {
|
|
|
504
552
|
}
|
|
505
553
|
}
|
|
506
554
|
main_image_transformer()
|
|
507
|
-
|
|
555
|
+
if (crop_timeout_id != null) clearTimeout(crop_timeout_id)
|
|
556
|
+
crop_timeout_id = setTimeout(() => {
|
|
557
|
+
crop_timeout_id = null
|
|
558
|
+
if (is_destroyed) return
|
|
508
559
|
set_crop_box()
|
|
509
560
|
set_image_pixels_crop()
|
|
510
561
|
}, 10)
|
|
@@ -512,6 +563,7 @@ export function create_image_editor_manager(config) {
|
|
|
512
563
|
|
|
513
564
|
function set_image_pixels_crop() {
|
|
514
565
|
let canvas_el = document?.querySelector(`#${id}_canvas_el`)
|
|
566
|
+
if (!canvas_el) return
|
|
515
567
|
let canv_height = canvas_el.offsetHeight
|
|
516
568
|
let canv_width = canvas_el.offsetWidth
|
|
517
569
|
image_pixels_crop_width =
|
|
@@ -722,17 +774,21 @@ export function create_image_editor_manager(config) {
|
|
|
722
774
|
}
|
|
723
775
|
|
|
724
776
|
function crop_on_down(e, type) {
|
|
725
|
-
|
|
777
|
+
if (is_interaction_disabled) return
|
|
778
|
+
e?.preventDefault?.()
|
|
726
779
|
if (e?.touches) {
|
|
727
780
|
start_x = e.touches[0].pageX
|
|
728
781
|
start_y = e.touches[0].pageY
|
|
729
782
|
last_known_x = e.touches[0].pageX
|
|
730
783
|
last_known_y = e.touches[0].pageY
|
|
731
|
-
} else
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
784
|
+
} else {
|
|
785
|
+
const pointer_x = e?.clientX ?? e?.x
|
|
786
|
+
const pointer_y = e?.clientY ?? e?.y
|
|
787
|
+
if (!Number.isFinite(pointer_x) || !Number.isFinite(pointer_y)) return
|
|
788
|
+
start_x = pointer_x
|
|
789
|
+
start_y = pointer_y
|
|
790
|
+
last_known_x = pointer_x
|
|
791
|
+
last_known_y = pointer_y
|
|
736
792
|
}
|
|
737
793
|
crop_drag_type = type
|
|
738
794
|
crop_top_start = crop_top
|
|
@@ -742,14 +798,19 @@ export function create_image_editor_manager(config) {
|
|
|
742
798
|
}
|
|
743
799
|
|
|
744
800
|
function crop_on_move(e) {
|
|
801
|
+
if (is_interaction_disabled) return
|
|
745
802
|
let canvas_el = document?.querySelector(`#${id}_canvas_el`)
|
|
803
|
+
if (!canvas_el) return
|
|
746
804
|
if ((start_x != null && !isNaN(start_x)) || (start_y != null && !isNaN(start_y))) {
|
|
747
805
|
if (e?.touches) {
|
|
748
806
|
last_known_x = e.touches[0].pageX
|
|
749
807
|
last_known_y = e.touches[0].pageY
|
|
750
|
-
} else
|
|
751
|
-
|
|
752
|
-
|
|
808
|
+
} else {
|
|
809
|
+
const pointer_x = e?.clientX ?? e?.x
|
|
810
|
+
const pointer_y = e?.clientY ?? e?.y
|
|
811
|
+
if (!Number.isFinite(pointer_x) || !Number.isFinite(pointer_y)) return
|
|
812
|
+
last_known_x = pointer_x
|
|
813
|
+
last_known_y = pointer_y
|
|
753
814
|
}
|
|
754
815
|
let canv_height = canvas_el.offsetHeight
|
|
755
816
|
let canv_width = canvas_el.offsetWidth
|
|
@@ -783,121 +844,139 @@ export function create_image_editor_manager(config) {
|
|
|
783
844
|
|
|
784
845
|
// ai ↓↓↓
|
|
785
846
|
|
|
847
|
+
async function remote_image_to_data_url(src, mime_type = "image/webp") {
|
|
848
|
+
const response = await fetch(src)
|
|
849
|
+
if (!response.ok) {
|
|
850
|
+
throw new Error(`Unable to load generated image (${response.status}).`)
|
|
851
|
+
}
|
|
852
|
+
const blob = await response.blob()
|
|
853
|
+
const blob_url = URL.createObjectURL(blob)
|
|
854
|
+
try {
|
|
855
|
+
return await get_image_data_url(blob_url, mime_type)
|
|
856
|
+
} finally {
|
|
857
|
+
URL.revokeObjectURL(blob_url)
|
|
858
|
+
}
|
|
859
|
+
}
|
|
860
|
+
|
|
786
861
|
async function ai_image_generator(input) {
|
|
862
|
+
if (is_interaction_disabled || is_ai_loading) return
|
|
787
863
|
ai_error_message = null
|
|
788
864
|
if (typeof config?.ai_image_generator != "function") {
|
|
789
865
|
ai_error_message = "ai_image_generator function not provided to config"
|
|
790
866
|
return
|
|
791
867
|
}
|
|
792
868
|
ai_image_generator_is_loading = true
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
869
|
+
try {
|
|
870
|
+
const res = await config.ai_image_generator(input)
|
|
871
|
+
if (is_destroyed) return
|
|
872
|
+
if (res?.is_success) {
|
|
796
873
|
init_file()
|
|
797
|
-
const data_url = res?.data?.data_url
|
|
874
|
+
const data_url = res?.data?.data_url ?? res?.data
|
|
875
|
+
if (!data_url) throw new Error("Image generator returned no image data.")
|
|
798
876
|
image_sources = [data_url, ...image_sources]
|
|
799
877
|
image_source_index = 0
|
|
800
878
|
set_base_image(data_url)
|
|
801
|
-
mime_type = res?.data?.mime_type || "image/webp"
|
|
879
|
+
mime_type = res?.data?.mime_type || get_mime_type_from_src(data_url) || "image/webp"
|
|
802
880
|
mime_type_input = mime_type
|
|
803
881
|
set_file_data_base()
|
|
804
|
-
}
|
|
805
|
-
ai_error_message = "
|
|
882
|
+
} else {
|
|
883
|
+
ai_error_message = res?.error_message ?? "Error generating image"
|
|
806
884
|
}
|
|
807
|
-
}
|
|
808
|
-
ai_error_message =
|
|
885
|
+
} catch (error) {
|
|
886
|
+
if (!is_destroyed) ai_error_message = error?.message ?? "Error generating image"
|
|
887
|
+
} finally {
|
|
888
|
+
if (!is_destroyed) ai_image_generator_is_loading = false
|
|
809
889
|
}
|
|
810
|
-
ai_image_generator_is_loading = false
|
|
811
890
|
}
|
|
812
891
|
|
|
813
892
|
async function ai_remove_background(input) {
|
|
893
|
+
if (is_interaction_disabled || is_ai_loading) return
|
|
814
894
|
ai_error_message = null
|
|
815
895
|
if (typeof config?.ai_remove_image_background !== "function") {
|
|
816
896
|
ai_error_message = "ai_remove_image_background function not provided to config"
|
|
817
897
|
return
|
|
818
898
|
}
|
|
819
899
|
ai_remove_background_is_loading = true
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
let
|
|
825
|
-
|
|
826
|
-
let data_url = await get_image_data_url(blob_url, "image/webp")
|
|
900
|
+
try {
|
|
901
|
+
const res = await config.ai_remove_image_background(input)
|
|
902
|
+
if (is_destroyed) return
|
|
903
|
+
if (res?.is_success) {
|
|
904
|
+
let data_url = await remote_image_to_data_url(res?.data, "image/webp")
|
|
905
|
+
if (is_destroyed) return
|
|
827
906
|
image_sources = [data_url, ...image_sources]
|
|
828
907
|
image_source_index = 0
|
|
829
908
|
set_base_image(data_url)
|
|
830
909
|
mime_type = "image/webp"
|
|
831
910
|
mime_type_input = "image/webp"
|
|
832
911
|
set_file_data_base()
|
|
833
|
-
}
|
|
834
|
-
|
|
835
|
-
ai_error_message = "Error removing image background"
|
|
912
|
+
} else {
|
|
913
|
+
ai_error_message = res?.error_message ?? "Error removing image background"
|
|
836
914
|
}
|
|
837
|
-
}
|
|
838
|
-
ai_error_message =
|
|
915
|
+
} catch (error) {
|
|
916
|
+
if (!is_destroyed) ai_error_message = error?.message ?? "Error removing image background"
|
|
917
|
+
} finally {
|
|
918
|
+
if (!is_destroyed) ai_remove_background_is_loading = false
|
|
839
919
|
}
|
|
840
|
-
ai_remove_background_is_loading = false
|
|
841
920
|
}
|
|
842
921
|
|
|
843
922
|
async function ai_restore_resolution(input) {
|
|
923
|
+
if (is_interaction_disabled || is_ai_loading) return
|
|
844
924
|
ai_error_message = null
|
|
845
925
|
if (typeof config?.ai_restore_resolution !== "function") {
|
|
846
926
|
ai_error_message = "ai_restore_resolution function not provided to config"
|
|
847
927
|
return
|
|
848
928
|
}
|
|
849
929
|
ai_restore_resolution_is_loading = true
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
let
|
|
855
|
-
|
|
856
|
-
let data_url = await get_image_data_url(blob_url, "image/webp")
|
|
930
|
+
try {
|
|
931
|
+
const res = await config.ai_restore_resolution(input)
|
|
932
|
+
if (is_destroyed) return
|
|
933
|
+
if (res?.is_success) {
|
|
934
|
+
let data_url = await remote_image_to_data_url(res?.data, "image/webp")
|
|
935
|
+
if (is_destroyed) return
|
|
857
936
|
image_sources = [data_url, ...image_sources]
|
|
858
937
|
image_source_index = 0
|
|
859
938
|
set_base_image(data_url)
|
|
860
939
|
mime_type = "image/webp"
|
|
861
940
|
mime_type_input = "image/webp"
|
|
862
941
|
set_file_data_base()
|
|
863
|
-
}
|
|
864
|
-
|
|
865
|
-
ai_error_message = "Error removing image background"
|
|
942
|
+
} else {
|
|
943
|
+
ai_error_message = res?.error_message ?? "Error restoring image resolution"
|
|
866
944
|
}
|
|
867
|
-
}
|
|
868
|
-
ai_error_message =
|
|
945
|
+
} catch (error) {
|
|
946
|
+
if (!is_destroyed) ai_error_message = error?.message ?? "Error restoring image resolution"
|
|
947
|
+
} finally {
|
|
948
|
+
if (!is_destroyed) ai_restore_resolution_is_loading = false
|
|
869
949
|
}
|
|
870
|
-
ai_restore_resolution_is_loading = false
|
|
871
950
|
}
|
|
872
951
|
|
|
873
952
|
async function ai_restore_face(input) {
|
|
953
|
+
if (is_interaction_disabled || is_ai_loading) return
|
|
874
954
|
ai_error_message = null
|
|
875
955
|
if (typeof config?.ai_restore_face !== "function") {
|
|
876
956
|
ai_error_message = "ai_restore_face function not provided to config"
|
|
877
957
|
return
|
|
878
958
|
}
|
|
879
959
|
ai_restore_face_is_loading = true
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
let
|
|
885
|
-
|
|
886
|
-
let data_url = await get_image_data_url(blob_url, "image/webp")
|
|
960
|
+
try {
|
|
961
|
+
const res = await config.ai_restore_face(input)
|
|
962
|
+
if (is_destroyed) return
|
|
963
|
+
if (res?.is_success) {
|
|
964
|
+
let data_url = await remote_image_to_data_url(res?.data, "image/webp")
|
|
965
|
+
if (is_destroyed) return
|
|
887
966
|
image_sources = [data_url, ...image_sources]
|
|
888
967
|
image_source_index = 0
|
|
889
968
|
set_base_image(data_url)
|
|
890
969
|
mime_type = "image/webp"
|
|
891
970
|
mime_type_input = "image/webp"
|
|
892
971
|
set_file_data_base()
|
|
893
|
-
}
|
|
894
|
-
|
|
895
|
-
ai_error_message = "Error removing image background"
|
|
972
|
+
} else {
|
|
973
|
+
ai_error_message = res?.error_message ?? "Error restoring face"
|
|
896
974
|
}
|
|
897
|
-
}
|
|
898
|
-
ai_error_message =
|
|
975
|
+
} catch (error) {
|
|
976
|
+
if (!is_destroyed) ai_error_message = error?.message ?? "Error restoring face"
|
|
977
|
+
} finally {
|
|
978
|
+
if (!is_destroyed) ai_restore_face_is_loading = false
|
|
899
979
|
}
|
|
900
|
-
ai_restore_face_is_loading = false
|
|
901
980
|
}
|
|
902
981
|
|
|
903
982
|
// ai ↑↑↑
|
|
@@ -912,14 +991,16 @@ export function create_image_editor_manager(config) {
|
|
|
912
991
|
let base_chart_path = "M5,35 C100,35 93,30 95,5"
|
|
913
992
|
|
|
914
993
|
async function set_file_data_base() {
|
|
915
|
-
|
|
994
|
+
const image_source = selected_image_source
|
|
995
|
+
if (image_source) {
|
|
916
996
|
file_size_data = deep_copy(file_size_data_base)
|
|
917
|
-
load_file_size_quality_data(mime_type,
|
|
997
|
+
void load_file_size_quality_data(mime_type, image_source)
|
|
918
998
|
}
|
|
919
|
-
set_file_size_kb()
|
|
999
|
+
void set_file_size_kb()
|
|
920
1000
|
}
|
|
921
1001
|
|
|
922
1002
|
function get_mime_type_from_src(image_src) {
|
|
1003
|
+
if (typeof image_src !== "string") return null
|
|
923
1004
|
let re = /^data:(image\/\w+);base64,/
|
|
924
1005
|
let result = image_src.match(re)
|
|
925
1006
|
return result && result.length > 1 ? result[1] : null
|
|
@@ -938,19 +1019,24 @@ export function create_image_editor_manager(config) {
|
|
|
938
1019
|
let image_src = selected_image_source
|
|
939
1020
|
if (image_src) {
|
|
940
1021
|
if (!file_size_data?.[mime_type] && image_src) {
|
|
941
|
-
load_file_size_quality_data(mime_type, image_src)
|
|
1022
|
+
void load_file_size_quality_data(mime_type, image_src)
|
|
942
1023
|
}
|
|
943
1024
|
}
|
|
944
1025
|
file_quality_slider_manager.set_val(quality)
|
|
945
1026
|
}
|
|
946
|
-
set_file_size_kb()
|
|
1027
|
+
void set_file_size_kb()
|
|
947
1028
|
}
|
|
948
1029
|
|
|
949
1030
|
async function set_file_from_inputs() {
|
|
950
|
-
|
|
951
|
-
|
|
1031
|
+
const image_source = selected_image_source
|
|
1032
|
+
if (image_source) {
|
|
1033
|
+
let data_url = await get_image_data_url(image_source, mime_type_input, file_quality_slider_manager?.val)
|
|
1034
|
+
if (is_destroyed || image_source !== selected_image_source) return
|
|
952
1035
|
image_sources = [data_url, ...image_sources]
|
|
1036
|
+
image_source_index = 0
|
|
953
1037
|
mime_type = mime_type_input
|
|
1038
|
+
set_base_image(data_url)
|
|
1039
|
+
void set_file_data_base()
|
|
954
1040
|
}
|
|
955
1041
|
}
|
|
956
1042
|
|
|
@@ -963,6 +1049,7 @@ export function create_image_editor_manager(config) {
|
|
|
963
1049
|
}
|
|
964
1050
|
if (mime_type == "image/png") {
|
|
965
1051
|
let data_url = await get_image_data_url(image_src, "image/png", 100)
|
|
1052
|
+
if (is_destroyed || image_src !== selected_image_source) return
|
|
966
1053
|
let file_size = calculate_file_size(data_url, "image/png")
|
|
967
1054
|
file_size_data[mime_type] = {
|
|
968
1055
|
is_loading: false,
|
|
@@ -982,6 +1069,7 @@ export function create_image_editor_manager(config) {
|
|
|
982
1069
|
let x_vals = x_vals_sets[i]
|
|
983
1070
|
for (let x_val of x_vals) {
|
|
984
1071
|
let data_url = await get_image_data_url(image_src, mime_type, x_val)
|
|
1072
|
+
if (is_destroyed || image_src !== selected_image_source) return
|
|
985
1073
|
let file_size = calculate_file_size(data_url, mime_type)
|
|
986
1074
|
file_size_xy_data.push([x_val, file_size])
|
|
987
1075
|
}
|
|
@@ -1046,6 +1134,10 @@ export function create_image_editor_manager(config) {
|
|
|
1046
1134
|
|
|
1047
1135
|
async function get_image_data_url(image_src, mime_type = "image/webp", quality = 100) {
|
|
1048
1136
|
return new Promise((resolve, reject) => {
|
|
1137
|
+
if (typeof Image === "undefined" || typeof document === "undefined") {
|
|
1138
|
+
reject(new Error("Image conversion is only available in a browser."))
|
|
1139
|
+
return
|
|
1140
|
+
}
|
|
1049
1141
|
let img = new Image()
|
|
1050
1142
|
img.crossOrigin = "Anonymous"
|
|
1051
1143
|
img.onload = function () {
|
|
@@ -1082,15 +1174,18 @@ export function create_image_editor_manager(config) {
|
|
|
1082
1174
|
// file ↑↑↑
|
|
1083
1175
|
|
|
1084
1176
|
function init_file(file_input) {
|
|
1085
|
-
|
|
1086
|
-
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
|
|
1177
|
+
if (is_interaction_disabled || is_destroyed) return
|
|
1178
|
+
error_message = null
|
|
1179
|
+
const file = file_input?.file ?? (file_input?.type ? file_input : null)
|
|
1180
|
+
if (file && !["image/png", "image/jpeg", "image/webp"].includes(file?.type)) {
|
|
1181
|
+
error_message = `${file?.name ?? "File"} is not a supported image.`
|
|
1182
|
+
return
|
|
1183
|
+
}
|
|
1184
|
+
revoke_all_owned_object_urls()
|
|
1185
|
+
if (!file) {
|
|
1092
1186
|
image_sources = []
|
|
1093
1187
|
image_source_index = null
|
|
1188
|
+
file_picker_file = null
|
|
1094
1189
|
file_name = null
|
|
1095
1190
|
file_name_text_input_manager.set_val(null)
|
|
1096
1191
|
mime_type = null
|
|
@@ -1098,14 +1193,15 @@ export function create_image_editor_manager(config) {
|
|
|
1098
1193
|
set_base_image(null)
|
|
1099
1194
|
return
|
|
1100
1195
|
}
|
|
1101
|
-
let src_url =
|
|
1196
|
+
let src_url = create_owned_object_url(file)
|
|
1102
1197
|
image_sources = [src_url]
|
|
1103
1198
|
image_source_index = 0
|
|
1104
|
-
|
|
1199
|
+
file_picker_file = file
|
|
1200
|
+
let clean_file_name = String(file_input?.file_name ?? file?.name ?? "").replace(/\..+$/, "")
|
|
1105
1201
|
file_name = clean_file_name
|
|
1106
1202
|
file_name_text_input_manager.set_val(clean_file_name)
|
|
1107
|
-
mime_type = file_input?.mime_type ??
|
|
1108
|
-
mime_type_input = file_input?.mime_type ??
|
|
1203
|
+
mime_type = file_input?.mime_type ?? file?.type ?? null
|
|
1204
|
+
mime_type_input = file_input?.mime_type ?? file?.type ?? null
|
|
1109
1205
|
set_base_image(src_url)
|
|
1110
1206
|
set_file_data_base()
|
|
1111
1207
|
}
|
|
@@ -1128,6 +1224,8 @@ export function create_image_editor_manager(config) {
|
|
|
1128
1224
|
is_multiselect: false,
|
|
1129
1225
|
is_drop_zone: true,
|
|
1130
1226
|
accept: ["image/png", "image/jpeg", "image/webp"],
|
|
1227
|
+
is_disabled: () => is_disabled,
|
|
1228
|
+
is_read_only: () => is_read_only,
|
|
1131
1229
|
on_get_file: (input) => {
|
|
1132
1230
|
init_file({ file: input })
|
|
1133
1231
|
file_input_manager.clear_files()
|
|
@@ -1140,6 +1238,7 @@ export function create_image_editor_manager(config) {
|
|
|
1140
1238
|
icon_sw: 30,
|
|
1141
1239
|
is_compressed: true,
|
|
1142
1240
|
support_icon: "sliders",
|
|
1241
|
+
is_disabled: () => is_disabled,
|
|
1143
1242
|
selected_type: () => (screen_tab == "filters" ? "selected" : null),
|
|
1144
1243
|
on_click: () => set_screen_tab("filters"),
|
|
1145
1244
|
})
|
|
@@ -1149,6 +1248,7 @@ export function create_image_editor_manager(config) {
|
|
|
1149
1248
|
is_compressed: true,
|
|
1150
1249
|
icon_sw: 30,
|
|
1151
1250
|
support_icon: "crop",
|
|
1251
|
+
is_disabled: () => is_disabled,
|
|
1152
1252
|
selected_type: () => (screen_tab == "crop" ? "selected" : null),
|
|
1153
1253
|
on_click: () => set_screen_tab("crop"),
|
|
1154
1254
|
})
|
|
@@ -1158,6 +1258,7 @@ export function create_image_editor_manager(config) {
|
|
|
1158
1258
|
icon_sw: 30,
|
|
1159
1259
|
is_compressed: true,
|
|
1160
1260
|
support_icon: "resize",
|
|
1261
|
+
is_disabled: () => is_disabled,
|
|
1161
1262
|
selected_type: () => (screen_tab == "resize" ? "selected" : null),
|
|
1162
1263
|
on_click: () => set_screen_tab("resize"),
|
|
1163
1264
|
})
|
|
@@ -1167,6 +1268,7 @@ export function create_image_editor_manager(config) {
|
|
|
1167
1268
|
icon_sw: 30,
|
|
1168
1269
|
is_compressed: true,
|
|
1169
1270
|
support_icon: "brain",
|
|
1271
|
+
is_disabled: () => is_disabled,
|
|
1170
1272
|
selected_type: () => (screen_tab == "ai" ? "selected" : null),
|
|
1171
1273
|
on_click: () => set_screen_tab("ai"),
|
|
1172
1274
|
})
|
|
@@ -1176,6 +1278,7 @@ export function create_image_editor_manager(config) {
|
|
|
1176
1278
|
icon_sw: 30,
|
|
1177
1279
|
is_compressed: true,
|
|
1178
1280
|
support_icon: "file",
|
|
1281
|
+
is_disabled: () => is_disabled,
|
|
1179
1282
|
selected_type: () => (screen_tab == "file" ? "selected" : null),
|
|
1180
1283
|
on_click: () => set_screen_tab("file"),
|
|
1181
1284
|
})
|
|
@@ -1191,7 +1294,7 @@ export function create_image_editor_manager(config) {
|
|
|
1191
1294
|
icon_sw: 30,
|
|
1192
1295
|
is_compressed: true,
|
|
1193
1296
|
support_icon: "undo_arrow",
|
|
1194
|
-
is_disabled: () => image_sources.length < 2 || image_sources.length - image_source_index < 2,
|
|
1297
|
+
is_disabled: () => is_disabled || image_sources.length < 2 || image_sources.length - image_source_index < 2,
|
|
1195
1298
|
on_click: () => undo(),
|
|
1196
1299
|
})
|
|
1197
1300
|
redo_button_manager = create_button_manager({
|
|
@@ -1201,7 +1304,7 @@ export function create_image_editor_manager(config) {
|
|
|
1201
1304
|
icon_sw: 30,
|
|
1202
1305
|
is_compressed: true,
|
|
1203
1306
|
support_icon: "redo_arrow",
|
|
1204
|
-
is_disabled: () => image_sources.length < 2 || image_source_index < 1,
|
|
1307
|
+
is_disabled: () => is_disabled || image_sources.length < 2 || image_source_index < 1,
|
|
1205
1308
|
on_click: () => redo(),
|
|
1206
1309
|
})
|
|
1207
1310
|
clear_button_manager = create_button_manager({
|
|
@@ -1210,7 +1313,7 @@ export function create_image_editor_manager(config) {
|
|
|
1210
1313
|
is_compressed: true,
|
|
1211
1314
|
icon_sw: 30,
|
|
1212
1315
|
support_icon: "trashcan",
|
|
1213
|
-
is_disabled: () => image_sources.length < 1,
|
|
1316
|
+
is_disabled: () => is_disabled || image_sources.length < 1,
|
|
1214
1317
|
on_click: () => clear(),
|
|
1215
1318
|
})
|
|
1216
1319
|
finish_button_manager = create_button_manager({
|
|
@@ -1222,7 +1325,7 @@ export function create_image_editor_manager(config) {
|
|
|
1222
1325
|
icon_sw: 30,
|
|
1223
1326
|
is_compressed: true,
|
|
1224
1327
|
support_icon: "check",
|
|
1225
|
-
is_disabled: () => image_sources.length < 1,
|
|
1328
|
+
is_disabled: () => is_disabled || image_sources.length < 1,
|
|
1226
1329
|
on_click: () => finish(),
|
|
1227
1330
|
})
|
|
1228
1331
|
filter_brightness_slider_manager = create_slider_manager({
|
|
@@ -1232,6 +1335,7 @@ export function create_image_editor_manager(config) {
|
|
|
1232
1335
|
min: 1,
|
|
1233
1336
|
max: 200,
|
|
1234
1337
|
step: 1,
|
|
1338
|
+
is_disabled: () => is_disabled,
|
|
1235
1339
|
on_change: () => main_image_transformer(),
|
|
1236
1340
|
})
|
|
1237
1341
|
filter_contrast_slider_manager = create_slider_manager({
|
|
@@ -1241,6 +1345,7 @@ export function create_image_editor_manager(config) {
|
|
|
1241
1345
|
min: 1,
|
|
1242
1346
|
max: 200,
|
|
1243
1347
|
step: 1,
|
|
1348
|
+
is_disabled: () => is_disabled,
|
|
1244
1349
|
on_change: () => main_image_transformer(),
|
|
1245
1350
|
})
|
|
1246
1351
|
filter_saturation_slider_manager = create_slider_manager({
|
|
@@ -1250,6 +1355,7 @@ export function create_image_editor_manager(config) {
|
|
|
1250
1355
|
min: 1,
|
|
1251
1356
|
max: 200,
|
|
1252
1357
|
step: 1,
|
|
1358
|
+
is_disabled: () => is_disabled,
|
|
1253
1359
|
on_change: () => main_image_transformer(),
|
|
1254
1360
|
})
|
|
1255
1361
|
filter_grayscale_slider_manager = create_slider_manager({
|
|
@@ -1259,6 +1365,7 @@ export function create_image_editor_manager(config) {
|
|
|
1259
1365
|
min: 1,
|
|
1260
1366
|
max: 200,
|
|
1261
1367
|
step: 1,
|
|
1368
|
+
is_disabled: () => is_disabled,
|
|
1262
1369
|
on_change: () => main_image_transformer(),
|
|
1263
1370
|
})
|
|
1264
1371
|
filter_hue_slider_manager = create_slider_manager({
|
|
@@ -1268,6 +1375,7 @@ export function create_image_editor_manager(config) {
|
|
|
1268
1375
|
min: 1,
|
|
1269
1376
|
max: 200,
|
|
1270
1377
|
step: 1,
|
|
1378
|
+
is_disabled: () => is_disabled,
|
|
1271
1379
|
on_change: () => main_image_transformer(),
|
|
1272
1380
|
})
|
|
1273
1381
|
filter_red_slider_manager = create_slider_manager({
|
|
@@ -1277,6 +1385,7 @@ export function create_image_editor_manager(config) {
|
|
|
1277
1385
|
min: 1,
|
|
1278
1386
|
max: 255,
|
|
1279
1387
|
step: 1,
|
|
1388
|
+
is_disabled: () => is_disabled,
|
|
1280
1389
|
on_change: () => main_image_transformer(),
|
|
1281
1390
|
})
|
|
1282
1391
|
filter_green_slider_manager = create_slider_manager({
|
|
@@ -1286,6 +1395,7 @@ export function create_image_editor_manager(config) {
|
|
|
1286
1395
|
min: 1,
|
|
1287
1396
|
max: 255,
|
|
1288
1397
|
step: 1,
|
|
1398
|
+
is_disabled: () => is_disabled,
|
|
1289
1399
|
on_change: () => main_image_transformer(),
|
|
1290
1400
|
})
|
|
1291
1401
|
filter_blue_slider_manager = create_slider_manager({
|
|
@@ -1295,6 +1405,7 @@ export function create_image_editor_manager(config) {
|
|
|
1295
1405
|
min: 1,
|
|
1296
1406
|
max: 100,
|
|
1297
1407
|
step: 1,
|
|
1408
|
+
is_disabled: () => is_disabled,
|
|
1298
1409
|
on_change: () => main_image_transformer(),
|
|
1299
1410
|
})
|
|
1300
1411
|
filter_blur_slider_manager = create_slider_manager({
|
|
@@ -1304,6 +1415,7 @@ export function create_image_editor_manager(config) {
|
|
|
1304
1415
|
min: 0,
|
|
1305
1416
|
max: 200,
|
|
1306
1417
|
step: 1,
|
|
1418
|
+
is_disabled: () => is_disabled,
|
|
1307
1419
|
on_change: () => main_image_transformer(),
|
|
1308
1420
|
})
|
|
1309
1421
|
filter_opacity_slider_manager = create_slider_manager({
|
|
@@ -1313,17 +1425,20 @@ export function create_image_editor_manager(config) {
|
|
|
1313
1425
|
min: 0,
|
|
1314
1426
|
max: 100,
|
|
1315
1427
|
step: 1,
|
|
1428
|
+
is_disabled: () => is_disabled,
|
|
1316
1429
|
on_change: () => main_image_transformer(),
|
|
1317
1430
|
})
|
|
1318
1431
|
filters_set_default_button_manager = create_button_manager({
|
|
1319
1432
|
type: "outlined",
|
|
1320
1433
|
is_no_wrap: true,
|
|
1321
1434
|
text: "Set Default Values",
|
|
1435
|
+
is_disabled: () => is_disabled,
|
|
1322
1436
|
on_click: () => reset_filters(),
|
|
1323
1437
|
})
|
|
1324
1438
|
filters_apply_filters_button_manager = create_button_manager({
|
|
1325
1439
|
is_no_wrap: true,
|
|
1326
1440
|
text: "Apply Filters",
|
|
1441
|
+
is_disabled: () => is_disabled,
|
|
1327
1442
|
on_click: () => apply_filters(),
|
|
1328
1443
|
})
|
|
1329
1444
|
crop_free_button_manager = create_button_manager({
|
|
@@ -1501,31 +1616,36 @@ export function create_image_editor_manager(config) {
|
|
|
1501
1616
|
{ key: "restore_resolution", name: "Restore Resolution" },
|
|
1502
1617
|
{ key: "restore_face", name: "Restore Face" },
|
|
1503
1618
|
],
|
|
1619
|
+
is_disabled: () => is_disabled || is_ai_loading,
|
|
1504
1620
|
})
|
|
1505
1621
|
ai_generate_image_from_text_text_input_manager = create_text_input_manager({
|
|
1506
1622
|
label: "Text Prompt",
|
|
1507
1623
|
type: "text_area",
|
|
1508
1624
|
rows: 3,
|
|
1509
1625
|
placeholder: "Describe what you want your image to be of",
|
|
1510
|
-
is_disabled: () =>
|
|
1626
|
+
is_disabled: () => is_disabled || is_ai_loading,
|
|
1511
1627
|
})
|
|
1512
1628
|
ai_generate_image_images_prompt_file_input_manager = create_file_input_manager({
|
|
1513
1629
|
label: "Image Prompt",
|
|
1514
1630
|
is_multiselect: true,
|
|
1515
1631
|
is_drop_zone: false,
|
|
1516
1632
|
accept: ["image/png", "image/jpeg", "image/webp"],
|
|
1633
|
+
is_disabled: () => is_disabled || is_ai_loading,
|
|
1634
|
+
is_read_only: () => is_read_only,
|
|
1517
1635
|
})
|
|
1518
1636
|
ai_generate_image_include_workspace_in_images_prompt_checkbox_manager = create_checkbox_manager({
|
|
1519
1637
|
label: "Include Workspace Image in Images Prompt",
|
|
1520
1638
|
type: "toggle",
|
|
1521
1639
|
val: true,
|
|
1640
|
+
is_disabled: () => is_disabled || is_ai_loading,
|
|
1641
|
+
is_read_only: () => is_read_only,
|
|
1522
1642
|
})
|
|
1523
1643
|
ai_generate_image_from_text_button_manager = create_button_manager({
|
|
1524
1644
|
text: "Generate Image",
|
|
1525
1645
|
is_compressed: true,
|
|
1526
1646
|
mt: 1,
|
|
1527
1647
|
is_loading: () => ai_image_generator_is_loading,
|
|
1528
|
-
is_disabled: () => is_disabled,
|
|
1648
|
+
is_disabled: () => is_disabled || is_ai_loading,
|
|
1529
1649
|
on_click: async () => {
|
|
1530
1650
|
const files = Array.isArray(ai_generate_image_images_prompt_file_input_manager?.val)
|
|
1531
1651
|
? [...ai_generate_image_images_prompt_file_input_manager.val]
|
|
@@ -1562,21 +1682,21 @@ export function create_image_editor_manager(config) {
|
|
|
1562
1682
|
text: "Remove Background",
|
|
1563
1683
|
is_compressed: true,
|
|
1564
1684
|
is_loading: () => ai_remove_background_is_loading,
|
|
1565
|
-
is_disabled: () => is_disabled,
|
|
1685
|
+
is_disabled: () => is_disabled || is_ai_loading || !selected_image_source,
|
|
1566
1686
|
on_click: () => ai_remove_background(selected_image_source),
|
|
1567
1687
|
})
|
|
1568
1688
|
ai_restore_resolution_button_manager = create_button_manager({
|
|
1569
1689
|
text: "Restore Resolution",
|
|
1570
1690
|
is_compressed: true,
|
|
1571
1691
|
is_loading: () => ai_restore_resolution_is_loading,
|
|
1572
|
-
is_disabled: () => is_disabled,
|
|
1692
|
+
is_disabled: () => is_disabled || is_ai_loading || !selected_image_source,
|
|
1573
1693
|
on_click: () => ai_restore_resolution(selected_image_source),
|
|
1574
1694
|
})
|
|
1575
1695
|
ai_restore_face_button_manager = create_button_manager({
|
|
1576
1696
|
text: "Restore Face",
|
|
1577
1697
|
is_compressed: true,
|
|
1578
1698
|
is_loading: () => ai_restore_face_is_loading,
|
|
1579
|
-
is_disabled: () => is_disabled,
|
|
1699
|
+
is_disabled: () => is_disabled || is_ai_loading || !selected_image_source,
|
|
1580
1700
|
on_click: () => ai_restore_face(selected_image_source),
|
|
1581
1701
|
})
|
|
1582
1702
|
resize_width_dropdown_manager = create_dropdown_manager({
|
|
@@ -1701,6 +1821,12 @@ export function create_image_editor_manager(config) {
|
|
|
1701
1821
|
get is_disabled() {
|
|
1702
1822
|
return is_disabled
|
|
1703
1823
|
},
|
|
1824
|
+
get is_read_only() {
|
|
1825
|
+
return is_read_only
|
|
1826
|
+
},
|
|
1827
|
+
get error_message() {
|
|
1828
|
+
return error_message
|
|
1829
|
+
},
|
|
1704
1830
|
get current_image_width() {
|
|
1705
1831
|
return current_image_width
|
|
1706
1832
|
},
|
|
@@ -1956,6 +2082,7 @@ export function create_image_editor_manager(config) {
|
|
|
1956
2082
|
download_image,
|
|
1957
2083
|
set_file_from_inputs,
|
|
1958
2084
|
drop_handler,
|
|
2085
|
+
drag_over_handler,
|
|
1959
2086
|
set_is_popover,
|
|
1960
2087
|
}
|
|
1961
2088
|
}
|