@scalar/components 0.27.10 → 0.27.11
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/dist/components/ScalarButton/ScalarButton.vue.script.js +2 -2
- package/dist/components/ScalarButton/ScalarButton.vue.script.js.map +1 -1
- package/dist/components/ScalarButton/constants.js.map +1 -1
- package/dist/components/ScalarCard/ScalarCard.vue.script.js +1 -1
- package/dist/components/ScalarCard/ScalarCard.vue.script.js.map +1 -1
- package/dist/components/ScalarCard/ScalarCardFooter.vue.script.js +1 -1
- package/dist/components/ScalarCard/ScalarCardFooter.vue.script.js.map +1 -1
- package/dist/components/ScalarCard/ScalarCardHeader.vue.script.js +1 -1
- package/dist/components/ScalarCard/ScalarCardHeader.vue.script.js.map +1 -1
- package/dist/components/ScalarCard/ScalarCardSection.vue.script.js +1 -1
- package/dist/components/ScalarCard/ScalarCardSection.vue.script.js.map +1 -1
- package/dist/components/ScalarCard/useCardHeading.js +3 -1
- package/dist/components/ScalarCard/useCardHeading.js.map +1 -1
- package/dist/components/ScalarCheckboxInput/ScalarCheckbox.vue.script.js +1 -1
- package/dist/components/ScalarCheckboxInput/ScalarCheckbox.vue.script.js.map +1 -1
- package/dist/components/ScalarCheckboxInput/ScalarCheckboxGroup.vue.d.ts.map +1 -1
- package/dist/components/ScalarCheckboxInput/ScalarCheckboxGroup.vue.js.map +1 -1
- package/dist/components/ScalarCheckboxInput/ScalarCheckboxGroup.vue.script.js +3 -3
- package/dist/components/ScalarCheckboxInput/ScalarCheckboxGroup.vue.script.js.map +1 -1
- package/dist/components/ScalarCheckboxInput/ScalarCheckboxInput.vue.script.js +2 -2
- package/dist/components/ScalarCheckboxInput/ScalarCheckboxInput.vue.script.js.map +1 -1
- package/dist/components/ScalarCheckboxInput/ScalarCheckboxRadioGroup.vue.d.ts.map +1 -1
- package/dist/components/ScalarCheckboxInput/ScalarCheckboxRadioGroup.vue.script.js +2 -2
- package/dist/components/ScalarCheckboxInput/ScalarCheckboxRadioGroup.vue.script.js.map +1 -1
- package/dist/components/ScalarCodeBlock/ScalarCodeBlock.vue.script.js +1 -1
- package/dist/components/ScalarCodeBlock/ScalarCodeBlock.vue.script.js.map +1 -1
- package/dist/components/ScalarCodeBlock/ScalarCodeBlockCopy.vue.script.js +2 -2
- package/dist/components/ScalarCodeBlock/ScalarCodeBlockCopy.vue.script.js.map +1 -1
- package/dist/components/ScalarCodeBlock/constants.js.map +1 -1
- package/dist/components/ScalarColorModeToggle/ScalarColorModeToggle.vue.d.ts.map +1 -1
- package/dist/components/ScalarColorModeToggle/ScalarColorModeToggle.vue.script.js +1 -1
- package/dist/components/ScalarColorModeToggle/ScalarColorModeToggle.vue.script.js.map +1 -1
- package/dist/components/ScalarColorModeToggle/ScalarColorModeToggleButton.vue.script.js +1 -1
- package/dist/components/ScalarColorModeToggle/ScalarColorModeToggleButton.vue.script.js.map +1 -1
- package/dist/components/ScalarColorModeToggle/ScalarColorModeToggleIcon.vue.js +1 -1
- package/dist/components/ScalarColorModeToggle/ScalarColorModeToggleIcon.vue.script.js +1 -1
- package/dist/components/ScalarColorModeToggle/ScalarColorModeToggleIcon.vue.script.js.map +1 -1
- package/dist/components/ScalarCombobox/ScalarCombobox.vue.d.ts +1 -1
- package/dist/components/ScalarCombobox/ScalarCombobox.vue.d.ts.map +1 -1
- package/dist/components/ScalarCombobox/ScalarCombobox.vue.script.js +3 -3
- package/dist/components/ScalarCombobox/ScalarCombobox.vue.script.js.map +1 -1
- package/dist/components/ScalarCombobox/ScalarComboboxMultiselect.vue.d.ts +1 -1
- package/dist/components/ScalarCombobox/ScalarComboboxMultiselect.vue.d.ts.map +1 -1
- package/dist/components/ScalarCombobox/ScalarComboboxMultiselect.vue.js.map +1 -1
- package/dist/components/ScalarCombobox/ScalarComboboxMultiselect.vue.script.js +4 -4
- package/dist/components/ScalarCombobox/ScalarComboboxMultiselect.vue.script.js.map +1 -1
- package/dist/components/ScalarCombobox/ScalarComboboxOption.vue.script.js +1 -1
- package/dist/components/ScalarCombobox/ScalarComboboxOption.vue.script.js.map +1 -1
- package/dist/components/ScalarCombobox/ScalarComboboxOptionGroup.vue.script.js +1 -1
- package/dist/components/ScalarCombobox/ScalarComboboxOptionGroup.vue.script.js.map +1 -1
- package/dist/components/ScalarCombobox/ScalarComboboxOptions.vue.d.ts +1 -1
- package/dist/components/ScalarCombobox/ScalarComboboxOptions.vue.d.ts.map +1 -1
- package/dist/components/ScalarCombobox/ScalarComboboxOptions.vue.js.map +1 -1
- package/dist/components/ScalarCombobox/ScalarComboboxOptions.vue.script.js +6 -10
- package/dist/components/ScalarCombobox/ScalarComboboxOptions.vue.script.js.map +1 -1
- package/dist/components/ScalarCombobox/ScalarComboboxPopover.vue.d.ts.map +1 -1
- package/dist/components/ScalarCombobox/ScalarComboboxPopover.vue.script.js +1 -1
- package/dist/components/ScalarCombobox/ScalarComboboxPopover.vue.script.js.map +1 -1
- package/dist/components/ScalarCombobox/filter-by-option-label.js.map +1 -1
- package/dist/components/ScalarCombobox/types.js.map +1 -1
- package/dist/components/ScalarCopy/ScalarCopy.vue.d.ts.map +1 -1
- package/dist/components/ScalarCopy/ScalarCopy.vue.script.js +2 -2
- package/dist/components/ScalarCopy/ScalarCopy.vue.script.js.map +1 -1
- package/dist/components/ScalarCopy/ScalarCopyBackdrop.vue.script.js +1 -1
- package/dist/components/ScalarCopy/ScalarCopyBackdrop.vue.script.js.map +1 -1
- package/dist/components/ScalarCopy/ScalarCopyButton.vue.script.js +2 -2
- package/dist/components/ScalarCopy/ScalarCopyButton.vue.script.js.map +1 -1
- package/dist/components/ScalarDropdown/ScalarDropdown.vue.script.js +2 -2
- package/dist/components/ScalarDropdown/ScalarDropdown.vue.script.js.map +1 -1
- package/dist/components/ScalarDropdown/ScalarDropdownButton.vue.js +1 -1
- package/dist/components/ScalarDropdown/ScalarDropdownButton.vue.script.js +1 -1
- package/dist/components/ScalarDropdown/ScalarDropdownButton.vue.script.js.map +1 -1
- package/dist/components/ScalarDropdown/ScalarDropdownDivider.vue.js +1 -1
- package/dist/components/ScalarDropdown/ScalarDropdownDivider.vue.js.map +1 -1
- package/dist/components/ScalarDropdown/ScalarDropdownDivider.vue.script.js.map +1 -1
- package/dist/components/ScalarDropdown/ScalarDropdownItem.vue.d.ts.map +1 -1
- package/dist/components/ScalarDropdown/ScalarDropdownItem.vue.js +1 -1
- package/dist/components/ScalarDropdown/ScalarDropdownItem.vue.script.js +1 -1
- package/dist/components/ScalarDropdown/ScalarDropdownItem.vue.script.js.map +1 -1
- package/dist/components/ScalarDropdown/ScalarDropdownMenu.vue.script.js +1 -1
- package/dist/components/ScalarDropdown/ScalarDropdownMenu.vue.script.js.map +1 -1
- package/dist/components/ScalarDropdown/useDropdown.js.map +1 -1
- package/dist/components/ScalarErrorBoundary/ScalarErrorBoundary.vue.script.js +2 -2
- package/dist/components/ScalarErrorBoundary/ScalarErrorBoundary.vue.script.js.map +1 -1
- package/dist/components/ScalarFileUpload/ScalarFileUpload.vue.d.ts.map +1 -1
- package/dist/components/ScalarFileUpload/ScalarFileUpload.vue.script.js +3 -3
- package/dist/components/ScalarFileUpload/ScalarFileUpload.vue.script.js.map +1 -1
- package/dist/components/ScalarFileUpload/ScalarFileUploadDropTarget.vue.script.js +1 -1
- package/dist/components/ScalarFileUpload/ScalarFileUploadDropTarget.vue.script.js.map +1 -1
- package/dist/components/ScalarFileUpload/ScalarFileUploadError.vue.script.js +1 -1
- package/dist/components/ScalarFileUpload/ScalarFileUploadError.vue.script.js.map +1 -1
- package/dist/components/ScalarFileUpload/ScalarFileUploadFileList.vue.d.ts.map +1 -1
- package/dist/components/ScalarFileUpload/ScalarFileUploadFileList.vue.script.js +2 -2
- package/dist/components/ScalarFileUpload/ScalarFileUploadFileList.vue.script.js.map +1 -1
- package/dist/components/ScalarFileUpload/ScalarFileUploadInput.vue.d.ts.map +1 -1
- package/dist/components/ScalarFileUpload/ScalarFileUploadInput.vue.script.js +1 -1
- package/dist/components/ScalarFileUpload/ScalarFileUploadInput.vue.script.js.map +1 -1
- package/dist/components/ScalarFileUpload/ScalarFileUploadInputCompact.vue.script.js +1 -1
- package/dist/components/ScalarFileUpload/ScalarFileUploadInputCompact.vue.script.js.map +1 -1
- package/dist/components/ScalarFileUpload/ScalarFileUploadLoading.vue.script.js +1 -1
- package/dist/components/ScalarFileUpload/ScalarFileUploadLoading.vue.script.js.map +1 -1
- package/dist/components/ScalarFileUpload/types.js.map +1 -1
- package/dist/components/ScalarFloating/ScalarFloating.vue.script.js +4 -2
- package/dist/components/ScalarFloating/ScalarFloating.vue.script.js.map +1 -1
- package/dist/components/ScalarFloating/ScalarFloatingBackdrop.vue.script.js +1 -1
- package/dist/components/ScalarFloating/ScalarFloatingBackdrop.vue.script.js.map +1 -1
- package/dist/components/ScalarFloating/useResizeWithTarget.js.map +1 -1
- package/dist/components/ScalarForm/ScalarForm.vue.script.js +1 -1
- package/dist/components/ScalarForm/ScalarForm.vue.script.js.map +1 -1
- package/dist/components/ScalarForm/ScalarFormError.vue.script.js +1 -1
- package/dist/components/ScalarForm/ScalarFormError.vue.script.js.map +1 -1
- package/dist/components/ScalarForm/ScalarFormField.vue.script.js +1 -1
- package/dist/components/ScalarForm/ScalarFormField.vue.script.js.map +1 -1
- package/dist/components/ScalarForm/ScalarFormInput.vue.script.js +1 -1
- package/dist/components/ScalarForm/ScalarFormInput.vue.script.js.map +1 -1
- package/dist/components/ScalarForm/ScalarFormInputGroup.vue.script.js +1 -1
- package/dist/components/ScalarForm/ScalarFormInputGroup.vue.script.js.map +1 -1
- package/dist/components/ScalarForm/ScalarFormSection.vue.js +1 -1
- package/dist/components/ScalarForm/ScalarFormSection.vue.js.map +1 -1
- package/dist/components/ScalarForm/ScalarFormSection.vue.script.js.map +1 -1
- package/dist/components/ScalarForm/useFormGroups.js.map +1 -1
- package/dist/components/ScalarHeader/ScalarHeader.vue.script.js +1 -1
- package/dist/components/ScalarHeader/ScalarHeader.vue.script.js.map +1 -1
- package/dist/components/ScalarHeader/ScalarHeaderButton.vue.script.js +1 -1
- package/dist/components/ScalarHeader/ScalarHeaderButton.vue.script.js.map +1 -1
- package/dist/components/ScalarHotkey/ScalarHotkey.vue.script.js +1 -1
- package/dist/components/ScalarHotkey/ScalarHotkey.vue.script.js.map +1 -1
- package/dist/components/ScalarHotkey/constants.js.map +1 -1
- package/dist/components/ScalarHotkey/formatHotkey.js +1 -8
- package/dist/components/ScalarHotkey/formatHotkey.js.map +1 -1
- package/dist/components/ScalarIcon/IconList.vue.d.ts.map +1 -1
- package/dist/components/ScalarIcon/ScalarIcon.vue.js +1 -1
- package/dist/components/ScalarIcon/ScalarIcon.vue.script.js +1 -1
- package/dist/components/ScalarIcon/ScalarIcon.vue.script.js.map +1 -1
- package/dist/components/ScalarIcon/ScalarIconLegacyAdapter.vue.script.js +1 -1
- package/dist/components/ScalarIcon/ScalarIconLegacyAdapter.vue.script.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Add.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Add.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/AddTab.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/AddTab.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Alert.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Alert.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/ArrowLeft.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/ArrowLeft.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/ArrowRight.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/ArrowRight.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Brackets.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Brackets.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Branch.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Branch.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Changelog.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Changelog.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Checkmark.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Checkmark.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/ChevronDown.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/ChevronDown.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/ChevronLeft.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/ChevronLeft.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/ChevronRight.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/ChevronRight.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/ChevronUp.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/ChevronUp.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Clipboard.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Clipboard.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Close.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Close.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/CloseTab.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/CloseTab.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/CloseTabs.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/CloseTabs.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Cloud.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Cloud.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/CodeFolder.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/CodeFolder.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Cog.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Cog.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Collection.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Collection.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Cookie.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Cookie.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/DarkMode.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/DarkMode.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Delete.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Delete.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Discord.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Discord.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/DocsPage.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/DocsPage.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Download.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Download.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Duplicate.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Duplicate.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Edit.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Edit.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Ellipses.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Ellipses.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Email.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Email.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Error.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Error.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Example.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Example.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/ExternalLink.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/ExternalLink.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/FilterList.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/FilterList.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Folder.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Folder.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/GitHub.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/GitHub.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/GitHubLine.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/GitHubLine.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Globe.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Globe.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Google.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Google.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Help.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Help.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Hide.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Hide.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/History.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/History.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/House.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/House.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Import.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Import.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Info.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Info.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Key.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Key.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Leave.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Leave.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/LightDarkModeToggle.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/LightDarkModeToggle.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/LightMode.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/LightMode.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Link.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Link.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Lock.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Lock.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Logo.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Logo.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Magic.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Magic.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Markdown.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Markdown.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Menu.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Menu.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/NotAllowed.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/NotAllowed.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Page.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Page.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Pencil.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Pencil.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Play.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Play.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Refresh.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Refresh.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Roadmap.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Roadmap.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Scribble.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Scribble.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Search.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Search.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Server.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Server.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Settings.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Settings.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Show.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Show.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Sort.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Sort.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Terminal.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Terminal.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Trash.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Trash.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Unlock.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Unlock.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Unwatch.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Unwatch.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Upload.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Upload.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/User.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/User.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/UserSwitch.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/UserSwitch.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Users.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Users.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Versions.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Versions.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Wallet.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Wallet.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Watch.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Watch.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/Workspace.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/Workspace.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-framework-angular.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-framework-angular.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-framework-astro.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-framework-astro.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-framework-laravel.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-framework-laravel.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-framework-nextdotjs.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-framework-nextdotjs.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-framework-react.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-framework-react.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-framework-vuedotjs.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-framework-vuedotjs.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-c.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-c.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-clojure.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-clojure.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-csharp.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-csharp.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-css3.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-css3.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-dart.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-dart.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-fsharp.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-fsharp.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-go.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-go.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-html5.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-html5.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-http.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-http.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-java.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-java.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-javascript.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-javascript.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-json.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-json.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-kotlin.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-kotlin.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-node.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-node.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-objc.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-objc.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-ocaml.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-ocaml.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-php.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-php.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-powershell.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-powershell.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-python.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-python.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-r.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-r.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-ruby.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-ruby.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-rust.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-rust.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-scala.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-scala.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-shell.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-shell.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-swift.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-swift.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-typescript.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-language-typescript.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-script-code.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-script-code.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-tool-git.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-tool-git.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/icons/programming-tool-tailwindcss.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/icons/programming-tool-tailwindcss.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/logos/Adonisjs.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/logos/Adonisjs.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/logos/Astro.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/logos/Astro.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/logos/Docusaurus.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/logos/Docusaurus.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/logos/Dotnet.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/logos/Dotnet.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/logos/Elysiajs.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/logos/Elysiajs.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/logos/Express.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/logos/Express.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/logos/Fastapi.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/logos/Fastapi.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/logos/Fastify.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/logos/Fastify.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/logos/Go.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/logos/Go.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/logos/Hono.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/logos/Hono.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/logos/Laravel.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/logos/Laravel.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/logos/Litestar.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/logos/Litestar.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/logos/Nestjs.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/logos/Nestjs.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/logos/Nextjs.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/logos/Nextjs.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/logos/Nitro.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/logos/Nitro.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/logos/Nuxt.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/logos/Nuxt.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/logos/Openapi.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/logos/Openapi.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/logos/Platformatic.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/logos/Platformatic.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/logos/React.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/logos/React.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/logos/Rust.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/logos/Rust.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/logos/Svelte.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/logos/Svelte.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/logos/Vue.svg.virtual.js +1 -1
- package/dist/components/ScalarIcon/logos/Vue.svg.virtual.js.map +1 -1
- package/dist/components/ScalarIcon/utils/index.js +2 -2
- package/dist/components/ScalarIcon/utils/index.js.map +1 -1
- package/dist/components/ScalarIcon/variants.js.map +1 -1
- package/dist/components/ScalarIconButton/ScalarIconButton.vue.script.js +1 -1
- package/dist/components/ScalarIconButton/ScalarIconButton.vue.script.js.map +1 -1
- package/dist/components/ScalarListbox/ScalarListbox.vue.d.ts.map +1 -1
- package/dist/components/ScalarListbox/ScalarListbox.vue.script.js +1 -1
- package/dist/components/ScalarListbox/ScalarListbox.vue.script.js.map +1 -1
- package/dist/components/ScalarListbox/ScalarListboxCheckbox.vue.script.js +1 -1
- package/dist/components/ScalarListbox/ScalarListboxCheckbox.vue.script.js.map +1 -1
- package/dist/components/ScalarListbox/ScalarListboxInput.vue.script.js +1 -1
- package/dist/components/ScalarListbox/ScalarListboxInput.vue.script.js.map +1 -1
- package/dist/components/ScalarListbox/ScalarListboxItem.vue.script.js +1 -1
- package/dist/components/ScalarListbox/ScalarListboxItem.vue.script.js.map +1 -1
- package/dist/components/ScalarLoading/ScalarLoading.vue.js +1 -1
- package/dist/components/ScalarLoading/ScalarLoading.vue.script.js +1 -1
- package/dist/components/ScalarLoading/ScalarLoading.vue.script.js.map +1 -1
- package/dist/components/ScalarLoading/useLoadingState.js.map +1 -1
- package/dist/components/ScalarMarkdown/ScalarMarkdown.vue.script.js +1 -1
- package/dist/components/ScalarMarkdown/ScalarMarkdown.vue.script.js.map +1 -1
- package/dist/components/ScalarMarkdown/ScalarMarkdownSummary.vue.script.js +2 -2
- package/dist/components/ScalarMarkdown/ScalarMarkdownSummary.vue.script.js.map +1 -1
- package/dist/components/ScalarMenu/ScalarMenu.vue.script.js +1 -1
- package/dist/components/ScalarMenu/ScalarMenu.vue.script.js.map +1 -1
- package/dist/components/ScalarMenu/ScalarMenuButton.vue.script.js +1 -1
- package/dist/components/ScalarMenu/ScalarMenuButton.vue.script.js.map +1 -1
- package/dist/components/ScalarMenu/ScalarMenuLink.vue.script.js +1 -1
- package/dist/components/ScalarMenu/ScalarMenuLink.vue.script.js.map +1 -1
- package/dist/components/ScalarMenu/ScalarMenuProduct.vue.script.js +1 -1
- package/dist/components/ScalarMenu/ScalarMenuProduct.vue.script.js.map +1 -1
- package/dist/components/ScalarMenu/ScalarMenuProducts.vue.d.ts.map +1 -1
- package/dist/components/ScalarMenu/ScalarMenuProducts.vue.script.js +1 -1
- package/dist/components/ScalarMenu/ScalarMenuProducts.vue.script.js.map +1 -1
- package/dist/components/ScalarMenu/ScalarMenuResources.vue.script.js +1 -1
- package/dist/components/ScalarMenu/ScalarMenuResources.vue.script.js.map +1 -1
- package/dist/components/ScalarMenu/ScalarMenuSection.vue.script.js +1 -1
- package/dist/components/ScalarMenu/ScalarMenuSection.vue.script.js.map +1 -1
- package/dist/components/ScalarMenu/ScalarMenuSupport.vue.script.js +1 -1
- package/dist/components/ScalarMenu/ScalarMenuSupport.vue.script.js.map +1 -1
- package/dist/components/ScalarMenu/ScalarMenuTeamPicker.vue.d.ts.map +1 -1
- package/dist/components/ScalarMenu/ScalarMenuTeamPicker.vue.script.js +1 -1
- package/dist/components/ScalarMenu/ScalarMenuTeamPicker.vue.script.js.map +1 -1
- package/dist/components/ScalarMenu/ScalarMenuTeamProfile.vue.script.js +1 -1
- package/dist/components/ScalarMenu/ScalarMenuTeamProfile.vue.script.js.map +1 -1
- package/dist/components/ScalarMenu/ScalarMenuWorkspacePicker.vue.d.ts.map +1 -1
- package/dist/components/ScalarMenu/ScalarMenuWorkspacePicker.vue.script.js +3 -3
- package/dist/components/ScalarMenu/ScalarMenuWorkspacePicker.vue.script.js.map +1 -1
- package/dist/components/ScalarModal/ScalarModal.vue.d.ts.map +1 -1
- package/dist/components/ScalarModal/ScalarModal.vue.js +3 -3
- package/dist/components/ScalarModal/ScalarModal.vue.script.js +1 -1
- package/dist/components/ScalarModal/ScalarModal.vue.script.js.map +1 -1
- package/dist/components/ScalarPopover/ScalarPopover.vue.script.js +1 -1
- package/dist/components/ScalarPopover/ScalarPopover.vue.script.js.map +1 -1
- package/dist/components/ScalarSavePrompt/ScalarSavePrompt.vue.d.ts.map +1 -1
- package/dist/components/ScalarSavePrompt/ScalarSavePrompt.vue.script.js +3 -3
- package/dist/components/ScalarSavePrompt/ScalarSavePrompt.vue.script.js.map +1 -1
- package/dist/components/ScalarSearchInput/ScalarSearchInput.vue.d.ts.map +1 -1
- package/dist/components/ScalarSearchInput/ScalarSearchInput.vue.script.js +2 -2
- package/dist/components/ScalarSearchInput/ScalarSearchInput.vue.script.js.map +1 -1
- package/dist/components/ScalarSearchResults/ScalarSearchResultItem.vue.script.js +1 -1
- package/dist/components/ScalarSearchResults/ScalarSearchResultItem.vue.script.js.map +1 -1
- package/dist/components/ScalarSearchResults/ScalarSearchResultList.vue.script.js +3 -3
- package/dist/components/ScalarSearchResults/ScalarSearchResultList.vue.script.js.map +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebar.vue.script.js +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebar.vue.script.js.map +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarButton.vue.js.map +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarButton.vue.script.js +3 -3
- package/dist/components/ScalarSidebar/ScalarSidebarButton.vue.script.js.map +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarFooter.vue.script.js +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarFooter.vue.script.js.map +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarGroup.vue.d.ts.map +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarGroup.vue.script.js +6 -12
- package/dist/components/ScalarSidebar/ScalarSidebarGroup.vue.script.js.map +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarGroupToggle.vue.script.js +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarGroupToggle.vue.script.js.map +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarIndent.vue.js +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarIndent.vue.script.js +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarIndent.vue.script.js.map +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarItem.vue.script.js +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarItem.vue.script.js.map +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarItems.vue.script.js +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarItems.vue.script.js.map +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarLoading.vue.script.js +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarLoading.vue.script.js.map +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarNestedItems.vue.d.ts.map +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarNestedItems.vue.script.js +4 -4
- package/dist/components/ScalarSidebar/ScalarSidebarNestedItems.vue.script.js.map +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarSearchButton.vue.d.ts.map +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarSearchButton.vue.js.map +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarSearchButton.vue.script.js +6 -6
- package/dist/components/ScalarSidebar/ScalarSidebarSearchButton.vue.script.js.map +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarSearchInput.vue.d.ts.map +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarSearchInput.vue.script.js +2 -2
- package/dist/components/ScalarSidebar/ScalarSidebarSearchInput.vue.script.js.map +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarSection.vue.script.js +2 -2
- package/dist/components/ScalarSidebar/ScalarSidebarSection.vue.script.js.map +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarSpacer.vue.script.js +1 -1
- package/dist/components/ScalarSidebar/ScalarSidebarSpacer.vue.script.js.map +1 -1
- package/dist/components/ScalarSidebar/findScrollContainer.js.map +1 -1
- package/dist/components/ScalarSidebar/useSidebarGroups.js +1 -1
- package/dist/components/ScalarSidebar/useSidebarGroups.js.map +1 -1
- package/dist/components/ScalarSidebar/useSidebarNestedItems.js +3 -1
- package/dist/components/ScalarSidebar/useSidebarNestedItems.js.map +1 -1
- package/dist/components/ScalarTeleport/ScalarTeleport.vue.script.js +1 -1
- package/dist/components/ScalarTeleport/ScalarTeleport.vue.script.js.map +1 -1
- package/dist/components/ScalarTeleport/ScalarTeleportRoot.vue.script.js +1 -1
- package/dist/components/ScalarTeleport/ScalarTeleportRoot.vue.script.js.map +1 -1
- package/dist/components/ScalarTeleport/useTeleport.js.map +1 -1
- package/dist/components/ScalarTextArea/ScalarTextArea.vue.d.ts.map +1 -1
- package/dist/components/ScalarTextArea/ScalarTextArea.vue.js.map +1 -1
- package/dist/components/ScalarTextArea/ScalarTextArea.vue.script.js +2 -2
- package/dist/components/ScalarTextArea/ScalarTextArea.vue.script.js.map +1 -1
- package/dist/components/ScalarTextInput/ScalarTextInput.vue.d.ts.map +1 -1
- package/dist/components/ScalarTextInput/ScalarTextInput.vue.js.map +1 -1
- package/dist/components/ScalarTextInput/ScalarTextInput.vue.script.js +4 -4
- package/dist/components/ScalarTextInput/ScalarTextInput.vue.script.js.map +1 -1
- package/dist/components/ScalarTextInput/ScalarTextInputCopy.vue.d.ts.map +1 -1
- package/dist/components/ScalarTextInput/ScalarTextInputCopy.vue.js.map +1 -1
- package/dist/components/ScalarTextInput/ScalarTextInputCopy.vue.script.js +4 -4
- package/dist/components/ScalarTextInput/ScalarTextInputCopy.vue.script.js.map +1 -1
- package/dist/components/ScalarThemeSwatches/ScalarThemeSwatches.vue.script.js +1 -1
- package/dist/components/ScalarThemeSwatches/ScalarThemeSwatches.vue.script.js.map +1 -1
- package/dist/components/ScalarThemeSwatches/useThemeSwatches.js.map +1 -1
- package/dist/components/ScalarToggle/ScalarToggle.vue.d.ts.map +1 -1
- package/dist/components/ScalarToggle/ScalarToggle.vue.script.js +2 -2
- package/dist/components/ScalarToggle/ScalarToggle.vue.script.js.map +1 -1
- package/dist/components/ScalarToggle/ScalarToggleGroup.vue.d.ts.map +1 -1
- package/dist/components/ScalarToggle/ScalarToggleGroup.vue.js.map +1 -1
- package/dist/components/ScalarToggle/ScalarToggleGroup.vue.script.js +3 -3
- package/dist/components/ScalarToggle/ScalarToggleGroup.vue.script.js.map +1 -1
- package/dist/components/ScalarToggle/ScalarToggleInput.vue.script.js +1 -1
- package/dist/components/ScalarToggle/ScalarToggleInput.vue.script.js.map +1 -1
- package/dist/components/ScalarToggle/ScalarToggleSlider.vue.script.js +1 -1
- package/dist/components/ScalarToggle/ScalarToggleSlider.vue.script.js.map +1 -1
- package/dist/components/ScalarToggle/ScalarTristateToggle.vue.d.ts.map +1 -1
- package/dist/components/ScalarToggle/ScalarTristateToggle.vue.script.js +2 -2
- package/dist/components/ScalarToggle/ScalarTristateToggle.vue.script.js.map +1 -1
- package/dist/components/ScalarToggle/ScalarTristateToggleGroup.vue.d.ts.map +1 -1
- package/dist/components/ScalarToggle/ScalarTristateToggleGroup.vue.js.map +1 -1
- package/dist/components/ScalarToggle/ScalarTristateToggleGroup.vue.script.js +3 -3
- package/dist/components/ScalarToggle/ScalarTristateToggleGroup.vue.script.js.map +1 -1
- package/dist/components/ScalarToggle/ScalarTristateToggleInput.vue.script.js +1 -1
- package/dist/components/ScalarToggle/ScalarTristateToggleInput.vue.script.js.map +1 -1
- package/dist/components/ScalarTooltip/ScalarHotkeyTooltip.vue.script.js +1 -1
- package/dist/components/ScalarTooltip/ScalarHotkeyTooltip.vue.script.js.map +1 -1
- package/dist/components/ScalarTooltip/ScalarTooltip.vue.d.ts.map +1 -1
- package/dist/components/ScalarTooltip/ScalarTooltip.vue.js.map +1 -1
- package/dist/components/ScalarTooltip/ScalarTooltip.vue.script.js +1 -1
- package/dist/components/ScalarTooltip/ScalarTooltip.vue.script.js.map +1 -1
- package/dist/components/ScalarTooltip/useTooltip.d.ts.map +1 -1
- package/dist/components/ScalarTooltip/useTooltip.js +40 -1
- package/dist/components/ScalarTooltip/useTooltip.js.map +1 -1
- package/dist/components/ScalarVirtualCodeBlock/ScalarVirtualCodeBlock.vue.script.js +1 -1
- package/dist/components/ScalarVirtualCodeBlock/ScalarVirtualCodeBlock.vue.script.js.map +1 -1
- package/dist/components/ScalarVirtualText/ScalarVirtualText.vue.d.ts.map +1 -1
- package/dist/components/ScalarVirtualText/ScalarVirtualText.vue.js +1 -1
- package/dist/components/ScalarVirtualText/ScalarVirtualText.vue.script.js +1 -1
- package/dist/components/ScalarVirtualText/ScalarVirtualText.vue.script.js.map +1 -1
- package/dist/components/ScalarVirtualText/ScalarVirtualTextSearch.vue.js +1 -1
- package/dist/components/ScalarVirtualText/ScalarVirtualTextSearch.vue.script.js +1 -1
- package/dist/components/ScalarVirtualText/ScalarVirtualTextSearch.vue.script.js.map +1 -1
- package/dist/components/ScalarWrappingText/ScalarWrappingText.vue.d.ts.map +1 -1
- package/dist/components/ScalarWrappingText/ScalarWrappingText.vue.script.js +1 -1
- package/dist/components/ScalarWrappingText/ScalarWrappingText.vue.script.js.map +1 -1
- package/dist/components/ScalarWrappingText/constants.js +5 -0
- package/dist/components/ScalarWrappingText/constants.js.map +1 -1
- package/dist/helpers/add-scalar-classes.js.map +1 -1
- package/dist/style.css +72 -46
- package/dist/vue-styles.css +20 -21
- package/package.json +11 -11
|
@@ -26,7 +26,9 @@ var useSidebarNestedItems = () => {
|
|
|
26
26
|
return false;
|
|
27
27
|
});
|
|
28
28
|
provide(SIDEBAR_NESTED_ITEMS_SYMBOL, children);
|
|
29
|
-
return {
|
|
29
|
+
return {
|
|
30
|
+
/** Whether or not any nested child items are open */
|
|
31
|
+
open };
|
|
30
32
|
};
|
|
31
33
|
//#endregion
|
|
32
34
|
export { useSidebarNestedItem, useSidebarNestedItems };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSidebarNestedItems.js","names":[],"sources":["../../../src/components/ScalarSidebar/useSidebarNestedItems.ts"],"sourcesContent":["import { type InjectionKey, computed, inject, onBeforeUnmount, provide, shallowReactive } from 'vue'\n\ntype SidebarNestedItemOpenGetter = () => boolean\n\n/**\n * Tracks the open state of the nearest nested child items\n */\nconst SIDEBAR_NESTED_ITEMS_SYMBOL = Symbol() as InjectionKey<Set<SidebarNestedItemOpenGetter>>\n\n/**\n * Get the open / closed model for the nearest nested child items\n */\nexport const useSidebarNestedItem = (\n /** The getter for the open state of the current nested items */\n open: SidebarNestedItemOpenGetter,\n): void => {\n const parentList = inject(SIDEBAR_NESTED_ITEMS_SYMBOL)\n\n if (parentList) {\n // Add this child to the parent list when the component is mounted\n parentList.add(open)\n\n onBeforeUnmount(() => {\n // Remove the reference to this child from the parent list when the component is unmounted\n parentList.delete(open)\n })\n }\n}\n/**\n * Get whether or not any nested child items are open\n */\nexport const useSidebarNestedItems = () => {\n // Create a reactive set with getters for each child's open state\n const children = shallowReactive(new Set<SidebarNestedItemOpenGetter>())\n\n const open = computed(() => {\n // Track the child list and each child's open state\n for (const getIsChildOpen of children) {\n if (getIsChildOpen()) {\n return true\n }\n }\n\n return false\n })\n\n provide(SIDEBAR_NESTED_ITEMS_SYMBOL, children)\n\n return {\n /** Whether or not any nested child items are open */\n open,\n }\n}\n"],"mappings":";;;;;AAOA,IAAM,8BAA8B,
|
|
1
|
+
{"version":3,"file":"useSidebarNestedItems.js","names":[],"sources":["../../../src/components/ScalarSidebar/useSidebarNestedItems.ts"],"sourcesContent":["import { type InjectionKey, computed, inject, onBeforeUnmount, provide, shallowReactive } from 'vue'\n\ntype SidebarNestedItemOpenGetter = () => boolean\n\n/**\n * Tracks the open state of the nearest nested child items\n */\nconst SIDEBAR_NESTED_ITEMS_SYMBOL = Symbol() as InjectionKey<Set<SidebarNestedItemOpenGetter>>\n\n/**\n * Get the open / closed model for the nearest nested child items\n */\nexport const useSidebarNestedItem = (\n /** The getter for the open state of the current nested items */\n open: SidebarNestedItemOpenGetter,\n): void => {\n const parentList = inject(SIDEBAR_NESTED_ITEMS_SYMBOL)\n\n if (parentList) {\n // Add this child to the parent list when the component is mounted\n parentList.add(open)\n\n onBeforeUnmount(() => {\n // Remove the reference to this child from the parent list when the component is unmounted\n parentList.delete(open)\n })\n }\n}\n/**\n * Get whether or not any nested child items are open\n */\nexport const useSidebarNestedItems = () => {\n // Create a reactive set with getters for each child's open state\n const children = shallowReactive(new Set<SidebarNestedItemOpenGetter>())\n\n const open = computed(() => {\n // Track the child list and each child's open state\n for (const getIsChildOpen of children) {\n if (getIsChildOpen()) {\n return true\n }\n }\n\n return false\n })\n\n provide(SIDEBAR_NESTED_ITEMS_SYMBOL, children)\n\n return {\n /** Whether or not any nested child items are open */\n open,\n }\n}\n"],"mappings":";;;;;AAOA,IAAM,8BAA8B,OAAO;;;;AAK3C,IAAa,wBAEX,SACS;CACT,MAAM,aAAa,OAAO,2BAA2B;CAErD,IAAI,YAAY;EAEd,WAAW,IAAI,IAAI;EAEnB,sBAAsB;GAEpB,WAAW,OAAO,IAAI;EACxB,CAAC;CACH;AACF;;;;AAIA,IAAa,8BAA8B;CAEzC,MAAM,WAAW,gCAAgB,IAAI,IAAiC,CAAC;CAEvE,MAAM,OAAO,eAAe;EAE1B,KAAK,MAAM,kBAAkB,UAC3B,IAAI,eAAe,GACjB,OAAO;EAIX,OAAO;CACT,CAAC;CAED,QAAQ,6BAA6B,QAAQ;CAE7C,OAAO;;AAEL,KACF;AACF"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { useTeleport } from "./useTeleport.js";
|
|
2
2
|
import { Teleport, createBlock, createElementVNode, defineComponent, mergeProps, openBlock, renderSlot, unref } from "vue";
|
|
3
|
-
var ScalarTeleport_vue_vue_type_script_setup_true_lang_default =
|
|
3
|
+
var ScalarTeleport_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
4
4
|
inheritAttrs: false,
|
|
5
5
|
__name: "ScalarTeleport",
|
|
6
6
|
props: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScalarTeleport.vue.script.js","names":["$attrs"],"sources":["../../../src/components/ScalarTeleport/ScalarTeleport.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar teleport component\n *\n * Teleports the contents to the nearest <ScalarTeleportRoot>\n * Falls back to the default teleport target (body) if no root is found\n *\n * Is a wrapper around the Vue <Teleport> component and takes the same props\n *\n * @example\n * <ScalarTeleport>\n * <div>Teleported Content</div>\n * </ScalarTeleport>\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport type { TeleportProps } from 'vue'\n\nimport { useTeleport } from './useTeleport'\n\ndefineProps<{\n /**\n * Override the default teleport target\n */\n to?: TeleportProps['to']\n /**\n * Whether to teleport immediately, disables the default defer behavior\n *\n * @see https://vuejs.org/guide/built-ins/teleport#deferred-teleport\n */\n immediate?: boolean\n /**\n * Whether to disable teleportation\n */\n disabled?: TeleportProps['disabled']\n}>()\n\ndefineSlots<{\n /** The element to be teleported */\n default(): unknown\n}>()\n\ndefineOptions({ inheritAttrs: false })\n\nconst root = useTeleport()\n</script>\n<template>\n <Teleport\n :defer=\"!immediate\"\n :disabled=\"disabled\"\n :to=\"to || root\">\n <div\n class=\"scalar-app\"\n style=\"display: contents\"\n v-bind=\"$attrs\">\n <slot />\n </div>\n </Teleport>\n</template>\n"],"mappings":";;;;;;;;;;;EA6CA,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"ScalarTeleport.vue.script.js","names":["$attrs"],"sources":["../../../src/components/ScalarTeleport/ScalarTeleport.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar teleport component\n *\n * Teleports the contents to the nearest <ScalarTeleportRoot>\n * Falls back to the default teleport target (body) if no root is found\n *\n * Is a wrapper around the Vue <Teleport> component and takes the same props\n *\n * @example\n * <ScalarTeleport>\n * <div>Teleported Content</div>\n * </ScalarTeleport>\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport type { TeleportProps } from 'vue'\n\nimport { useTeleport } from './useTeleport'\n\ndefineProps<{\n /**\n * Override the default teleport target\n */\n to?: TeleportProps['to']\n /**\n * Whether to teleport immediately, disables the default defer behavior\n *\n * @see https://vuejs.org/guide/built-ins/teleport#deferred-teleport\n */\n immediate?: boolean\n /**\n * Whether to disable teleportation\n */\n disabled?: TeleportProps['disabled']\n}>()\n\ndefineSlots<{\n /** The element to be teleported */\n default(): unknown\n}>()\n\ndefineOptions({ inheritAttrs: false })\n\nconst root = useTeleport()\n</script>\n<template>\n <Teleport\n :defer=\"!immediate\"\n :disabled=\"disabled\"\n :to=\"to || root\">\n <div\n class=\"scalar-app\"\n style=\"display: contents\"\n v-bind=\"$attrs\">\n <slot />\n </div>\n </Teleport>\n</template>\n"],"mappings":";;;;;;;;;;;EA6CA,MAAM,OAAO,YAAY;;uBAGvB,YAUW,UAAA;IATR,OAAK,CAAG,QAAA;IACR,UAAU,QAAA;IACV,IAAI,QAAA,MAAM,MAAA,IAAA;OACX,mBAKM,OALN,WAKM;IAJJ,OAAM;IACN,OAAA,EAAA,WAAA,WAAA;MACQA,KAAAA,MAAM,GAAA,CACd,WAAQ,KAAA,QAAA,SAAA,CAAA,GAAA,EAAA,CAAA,GAAA,GAAA"}
|
|
@@ -2,7 +2,7 @@ import { useProvideTeleport } from "./useTeleport.js";
|
|
|
2
2
|
import { Fragment, createElementBlock, createElementVNode, defineComponent, openBlock, renderSlot, unref } from "vue";
|
|
3
3
|
//#region src/components/ScalarTeleport/ScalarTeleportRoot.vue?vue&type=script&setup=true&lang.ts
|
|
4
4
|
var _hoisted_1 = ["id"];
|
|
5
|
-
var ScalarTeleportRoot_vue_vue_type_script_setup_true_lang_default =
|
|
5
|
+
var ScalarTeleportRoot_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
6
6
|
inheritAttrs: false,
|
|
7
7
|
__name: "ScalarTeleportRoot",
|
|
8
8
|
props: { id: {} },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScalarTeleportRoot.vue.script.js","names":[],"sources":["../../../src/components/ScalarTeleport/ScalarTeleportRoot.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar teleport root component\n *\n * Provides a teleport target for nested <ScalarTeleport> components\n *\n * @example\n * <ScalarTeleportRoot>\n * ...\n * <ScalarTeleport>\n * <div>Teleported Content</div>\n * </ScalarTeleport>\n * ...\n * </ScalarTeleportRoot>\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport { useProvideTeleport } from './useTeleport'\n\nconst props = defineProps<{\n /**\n * Override the default teleport target id\n */\n id?: string\n}>()\n\ndefineSlots<{\n /** The content which contains <ScalarTeleports> */\n default(): unknown\n}>()\n\ndefineOptions({ inheritAttrs: false })\n\nconst id = useProvideTeleport(props.id)\n</script>\n<template>\n <slot />\n <div\n :id=\"id\"\n class=\"scalar-teleport-root contents\" />\n</template>\n"],"mappings":";;;;;;;;;EAkCA,MAAM,KAAK,
|
|
1
|
+
{"version":3,"file":"ScalarTeleportRoot.vue.script.js","names":[],"sources":["../../../src/components/ScalarTeleport/ScalarTeleportRoot.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar teleport root component\n *\n * Provides a teleport target for nested <ScalarTeleport> components\n *\n * @example\n * <ScalarTeleportRoot>\n * ...\n * <ScalarTeleport>\n * <div>Teleported Content</div>\n * </ScalarTeleport>\n * ...\n * </ScalarTeleportRoot>\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport { useProvideTeleport } from './useTeleport'\n\nconst props = defineProps<{\n /**\n * Override the default teleport target id\n */\n id?: string\n}>()\n\ndefineSlots<{\n /** The content which contains <ScalarTeleports> */\n default(): unknown\n}>()\n\ndefineOptions({ inheritAttrs: false })\n\nconst id = useProvideTeleport(props.id)\n</script>\n<template>\n <slot />\n <div\n :id=\"id\"\n class=\"scalar-teleport-root contents\" />\n</template>\n"],"mappings":";;;;;;;;;EAkCA,MAAM,KAAK,mBAAmB,QAAM,EAAE;;2DAGpC,WAAQ,KAAA,QAAA,SAAA,GACR,mBAE0C,OAAA;IADvC,IAAI,MAAA,EAAA;IACL,OAAM"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTeleport.js","names":[],"sources":["../../../src/components/ScalarTeleport/useTeleport.ts"],"sourcesContent":["import { type InjectionKey, inject, provide, useId } from 'vue'\n\n/**\n * The teleport target\n */\nexport const TELEPORT_SYMBOL = Symbol() as InjectionKey<string>\n\n/**\n * Get the nearest teleport target id from `useProvideTeleport`\n *\n * Falls back to `body` if no teleport target id is found\n *\n * @see {@link useProvideTeleport}\n */\nexport const useTeleport = () => inject(TELEPORT_SYMBOL, 'body')\n\n/**\n * Provides a teleport target id using Vue's `provide`\n *\n * @see https://vuejs.org/guide/components/provide-inject.html#provide-inject\n */\nexport const useProvideTeleport = (id?: string) => {\n // `useId` produces ids that are stable across SSR and client hydration,\n // avoiding a mismatch on the teleport target id.\n const targetId = id ?? `scalar-teleport-${useId()}`\n provide(TELEPORT_SYMBOL, `#${targetId}`)\n return targetId\n}\n"],"mappings":";;;;;AAKA,IAAa,kBAAkB,
|
|
1
|
+
{"version":3,"file":"useTeleport.js","names":[],"sources":["../../../src/components/ScalarTeleport/useTeleport.ts"],"sourcesContent":["import { type InjectionKey, inject, provide, useId } from 'vue'\n\n/**\n * The teleport target\n */\nexport const TELEPORT_SYMBOL = Symbol() as InjectionKey<string>\n\n/**\n * Get the nearest teleport target id from `useProvideTeleport`\n *\n * Falls back to `body` if no teleport target id is found\n *\n * @see {@link useProvideTeleport}\n */\nexport const useTeleport = () => inject(TELEPORT_SYMBOL, 'body')\n\n/**\n * Provides a teleport target id using Vue's `provide`\n *\n * @see https://vuejs.org/guide/components/provide-inject.html#provide-inject\n */\nexport const useProvideTeleport = (id?: string) => {\n // `useId` produces ids that are stable across SSR and client hydration,\n // avoiding a mismatch on the teleport target id.\n const targetId = id ?? `scalar-teleport-${useId()}`\n provide(TELEPORT_SYMBOL, `#${targetId}`)\n return targetId\n}\n"],"mappings":";;;;;AAKA,IAAa,kBAAkB,OAAO;;;;;;;;AAStC,IAAa,oBAAoB,OAAO,iBAAiB,MAAM;;;;;;AAO/D,IAAa,sBAAsB,OAAgB;CAGjD,MAAM,WAAW,MAAM,mBAAmB,MAAM;CAChD,QAAQ,iBAAiB,IAAI,UAAU;CACvC,OAAO;AACT"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScalarTextArea.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ScalarTextArea/ScalarTextArea.vue"],"names":[],"mappings":"AA2DA;;;;;;;GAOG;wBACkB,OAAO,YAAY;AAAxC,wBAAyC;AAGzC,QAAA,MAAM,YAAY;iBAqBL,MAAM;;;;iBAAN,MAAM;;;
|
|
1
|
+
{"version":3,"file":"ScalarTextArea.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ScalarTextArea/ScalarTextArea.vue"],"names":[],"mappings":"AA2DA;;;;;;;GAOG;wBACkB,OAAO,YAAY;AAAxC,wBAAyC;AAGzC,QAAA,MAAM,YAAY;iBAqBL,MAAM;;;;iBAAN,MAAM;;;kFAwFf,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScalarTextArea.vue.js","names":[],"sources":["../../../src/components/ScalarTextArea/ScalarTextArea.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Text Area component\n *\n * A wrapper around the HTML textarea element with a focusable container.\n *\n * @example\n * <ScalarTextArea v-model=\"model\" />\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport { useBindCx } from '@scalar/use-hooks/useBindCx'\nimport { useTextareaAutosize } from '@vueuse/core'\nimport { onMounted } from 'vue'\n\nimport { ScalarFormInput } from '../ScalarForm'\n\nconst model = defineModel<string>({ default: '' })\n\nconst { textarea } = useTextareaAutosize({\n input: model,\n styleProp: 'minHeight',\n})\n\ndefineOptions({ inheritAttrs: false })\nconst { stylingAttrsCx, otherAttrs } = useBindCx()\n\nonMounted(() => {\n // Force autofocus if the textarea has the autofocus attribute\n if ('autofocus' in otherAttrs.value) textarea.value?.focus()\n})\n</script>\n<template>\n <ScalarFormInput\n is=\"div\"\n v-bind=\"\n stylingAttrsCx(\n 'custom-scroll flex
|
|
1
|
+
{"version":3,"file":"ScalarTextArea.vue.js","names":[],"sources":["../../../src/components/ScalarTextArea/ScalarTextArea.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Text Area component\n *\n * A wrapper around the HTML textarea element with a focusable container.\n *\n * @example\n * <ScalarTextArea v-model=\"model\" />\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport { useBindCx } from '@scalar/use-hooks/useBindCx'\nimport { useTextareaAutosize } from '@vueuse/core'\nimport { onMounted } from 'vue'\n\nimport { ScalarFormInput } from '../ScalarForm'\n\nconst model = defineModel<string>({ default: '' })\n\nconst { textarea } = useTextareaAutosize({\n input: model,\n styleProp: 'minHeight',\n})\n\ndefineOptions({ inheritAttrs: false })\nconst { stylingAttrsCx, otherAttrs } = useBindCx()\n\nonMounted(() => {\n // Force autofocus if the textarea has the autofocus attribute\n if ('autofocus' in otherAttrs.value) textarea.value?.focus()\n})\n</script>\n<template>\n <ScalarFormInput\n is=\"div\"\n v-bind=\"\n stylingAttrsCx(\n 'custom-scroll flex min-h-0 shrink cursor-text items-start bg-b-1 text-c-1 leading-snug dark:bg-b-1.5',\n )\n \"\n @click=\"textarea?.focus()\">\n <textarea\n ref=\"textarea\"\n v-model=\"model\"\n v-bind=\"otherAttrs\"\n class=\"w-full resize-none rounded-none border-none bg-transparent placeholder:font-[inherit] focus-within:outline-none\" />\n </ScalarFormInput>\n</template>\n"],"mappings":""}
|
|
@@ -2,7 +2,7 @@ import ScalarFormInput_default from "../ScalarForm/ScalarFormInput.vue.js";
|
|
|
2
2
|
import { useBindCx } from "@scalar/use-hooks/useBindCx";
|
|
3
3
|
import { createBlock, createElementVNode, defineComponent, mergeProps, onMounted, openBlock, unref, useModel, vModelText, withCtx, withDirectives } from "vue";
|
|
4
4
|
import { useTextareaAutosize } from "@vueuse/core";
|
|
5
|
-
var ScalarTextArea_vue_vue_type_script_setup_true_lang_default =
|
|
5
|
+
var ScalarTextArea_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
6
6
|
inheritAttrs: false,
|
|
7
7
|
__name: "ScalarTextArea",
|
|
8
8
|
props: {
|
|
@@ -21,7 +21,7 @@ var ScalarTextArea_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */
|
|
|
21
21
|
if ("autofocus" in otherAttrs.value) textarea.value?.focus();
|
|
22
22
|
});
|
|
23
23
|
return (_ctx, _cache) => {
|
|
24
|
-
return openBlock(), createBlock(unref(ScalarFormInput_default), mergeProps({ is: "div" }, unref(stylingAttrsCx)("custom-scroll flex
|
|
24
|
+
return openBlock(), createBlock(unref(ScalarFormInput_default), mergeProps({ is: "div" }, unref(stylingAttrsCx)("custom-scroll flex min-h-0 shrink cursor-text items-start bg-b-1 text-c-1 leading-snug dark:bg-b-1.5"), { onClick: _cache[1] || (_cache[1] = ($event) => unref(textarea)?.focus()) }), {
|
|
25
25
|
default: withCtx(() => [withDirectives(createElementVNode("textarea", mergeProps({
|
|
26
26
|
ref_key: "textarea",
|
|
27
27
|
ref: textarea,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScalarTextArea.vue.script.js","names":[],"sources":["../../../src/components/ScalarTextArea/ScalarTextArea.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Text Area component\n *\n * A wrapper around the HTML textarea element with a focusable container.\n *\n * @example\n * <ScalarTextArea v-model=\"model\" />\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport { useBindCx } from '@scalar/use-hooks/useBindCx'\nimport { useTextareaAutosize } from '@vueuse/core'\nimport { onMounted } from 'vue'\n\nimport { ScalarFormInput } from '../ScalarForm'\n\nconst model = defineModel<string>({ default: '' })\n\nconst { textarea } = useTextareaAutosize({\n input: model,\n styleProp: 'minHeight',\n})\n\ndefineOptions({ inheritAttrs: false })\nconst { stylingAttrsCx, otherAttrs } = useBindCx()\n\nonMounted(() => {\n // Force autofocus if the textarea has the autofocus attribute\n if ('autofocus' in otherAttrs.value) textarea.value?.focus()\n})\n</script>\n<template>\n <ScalarFormInput\n is=\"div\"\n v-bind=\"\n stylingAttrsCx(\n 'custom-scroll flex
|
|
1
|
+
{"version":3,"file":"ScalarTextArea.vue.script.js","names":[],"sources":["../../../src/components/ScalarTextArea/ScalarTextArea.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Text Area component\n *\n * A wrapper around the HTML textarea element with a focusable container.\n *\n * @example\n * <ScalarTextArea v-model=\"model\" />\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport { useBindCx } from '@scalar/use-hooks/useBindCx'\nimport { useTextareaAutosize } from '@vueuse/core'\nimport { onMounted } from 'vue'\n\nimport { ScalarFormInput } from '../ScalarForm'\n\nconst model = defineModel<string>({ default: '' })\n\nconst { textarea } = useTextareaAutosize({\n input: model,\n styleProp: 'minHeight',\n})\n\ndefineOptions({ inheritAttrs: false })\nconst { stylingAttrsCx, otherAttrs } = useBindCx()\n\nonMounted(() => {\n // Force autofocus if the textarea has the autofocus attribute\n if ('autofocus' in otherAttrs.value) textarea.value?.focus()\n})\n</script>\n<template>\n <ScalarFormInput\n is=\"div\"\n v-bind=\"\n stylingAttrsCx(\n 'custom-scroll flex min-h-0 shrink cursor-text items-start bg-b-1 text-c-1 leading-snug dark:bg-b-1.5',\n )\n \"\n @click=\"textarea?.focus()\">\n <textarea\n ref=\"textarea\"\n v-model=\"model\"\n v-bind=\"otherAttrs\"\n class=\"w-full resize-none rounded-none border-none bg-transparent placeholder:font-[inherit] focus-within:outline-none\" />\n </ScalarFormInput>\n</template>\n"],"mappings":";;;;;;;;;;;;;EAkBA,MAAM,QAAQ,SAAmB,SAAA,YAAgB;EAEjD,MAAM,EAAE,aAAa,oBAAoB;GACvC,OAAO;GACP,WAAW;EACb,CAAC;EAGD,MAAM,EAAE,gBAAgB,eAAe,UAAU;EAEjD,gBAAgB;GAEd,IAAI,eAAe,WAAW,OAAO,SAAS,OAAO,MAAM;EAC7D,CAAC;;uBAGC,YAakB,MAAA,uBAAA,GAblB,WAakB,EAZhB,IAAG,MAAK,GACO,MAAA,cAAA,CAAc,CAAA,sGAAA,GAAA,EAK5B,SAAK,OAAA,OAAA,OAAA,MAAA,WAAE,MAAA,QAAA,CAAQ,EAAE,MAAK,GAAA,CAAA,GAAA;2BAKqG,CAAA,eAJ5H,mBAI4H,YAJ5H,WAI4H;cAHtH;KAAJ,KAAI;wEACU,QAAA;OACN,MAAA,UAAA,GAAU,EAClB,OAAM,kHAAiH,CAAA,GAAA,MAAA,EAAA,GAAA,CAAA,CAAA,YAF9G,MAAA,KAAK,CAAA,CAAA,CAAA,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScalarTextInput.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ScalarTextInput/ScalarTextInput.vue"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ScalarTextInput.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ScalarTextInput/ScalarTextInput.vue"],"names":[],"mappings":"AAwGA;;;;;;;GAOG;wBACkB,OAAO,YAAY;AAAxC,wBAAyC;AAGzC,QAAA,MAAM,YAAY;eAEL,OAAO;;iBA8CP,MAAM;;;;;;eA9CN,OAAO;;iBA8CP,MAAM;;;;;aAjCR,MAAM,OAAO;aAEb,MAAM,OAAO;YAEd,MAAM,OAAO;EAiKnB,CAAC;AACL,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScalarTextInput.vue.js","names":[],"sources":["../../../src/components/ScalarTextInput/ScalarTextInput.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Text Input component\n *\n * A wrapper around the HTML input element with a focusable container.\n *\n * @example\n * <ScalarTextInput v-model=\"model\" />\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport { useBindCx } from '@scalar/use-hooks/useBindCx'\nimport { onMounted, ref } from 'vue'\n\nimport { ScalarFormInput } from '../ScalarForm'\n\nconst { readonly } = defineProps<{\n readonly?: boolean\n}>()\n\nconst emit = defineEmits<{\n /** Emitted when the input is clicked */\n (e: 'click', event: MouseEvent): void\n}>()\n\ndefineSlots<{\n /* Text content to display before the input text */\n prefix?: () => unknown\n /*Text content to display after the input text */\n suffix?: () => unknown\n /* Text content to display to the right of the input */\n aside?: () => unknown\n}>()\n\nconst model = defineModel<string>()\n\nconst input = ref<HTMLInputElement>()\n\ndefineOptions({ inheritAttrs: false })\nconst { stylingAttrsCx, otherAttrs } = useBindCx()\n\nonMounted(() => {\n // Force autofocus if the input has the autofocus attribute\n if ('autofocus' in otherAttrs.value) input.value?.focus()\n})\n\nfunction handleClick(event: MouseEvent) {\n // Re-emit the click event to any consumers\n emit('click', event)\n\n if (readonly) {\n input.value?.select() // If readonly, select the input on click\n } else {\n input.value?.focus() // If not readonly, focus the input on click\n }\n}\n</script>\n<template>\n <ScalarFormInput\n is=\"div\"\n v-bind=\"
|
|
1
|
+
{"version":3,"file":"ScalarTextInput.vue.js","names":[],"sources":["../../../src/components/ScalarTextInput/ScalarTextInput.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Text Input component\n *\n * A wrapper around the HTML input element with a focusable container.\n *\n * @example\n * <ScalarTextInput v-model=\"model\" />\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport { useBindCx } from '@scalar/use-hooks/useBindCx'\nimport { onMounted, ref } from 'vue'\n\nimport { ScalarFormInput } from '../ScalarForm'\n\nconst { readonly } = defineProps<{\n readonly?: boolean\n}>()\n\nconst emit = defineEmits<{\n /** Emitted when the input is clicked */\n (e: 'click', event: MouseEvent): void\n}>()\n\ndefineSlots<{\n /* Text content to display before the input text */\n prefix?: () => unknown\n /*Text content to display after the input text */\n suffix?: () => unknown\n /* Text content to display to the right of the input */\n aside?: () => unknown\n}>()\n\nconst model = defineModel<string>()\n\nconst input = ref<HTMLInputElement>()\n\ndefineOptions({ inheritAttrs: false })\nconst { stylingAttrsCx, otherAttrs } = useBindCx()\n\nonMounted(() => {\n // Force autofocus if the input has the autofocus attribute\n if ('autofocus' in otherAttrs.value) input.value?.focus()\n})\n\nfunction handleClick(event: MouseEvent) {\n // Re-emit the click event to any consumers\n emit('click', event)\n\n if (readonly) {\n input.value?.select() // If readonly, select the input on click\n } else {\n input.value?.focus() // If not readonly, focus the input on click\n }\n}\n</script>\n<template>\n <ScalarFormInput\n is=\"div\"\n v-bind=\"stylingAttrsCx('cursor-text bg-b-1 text-c-1 dark:bg-b-1.5')\"\n @click=\"handleClick\">\n <div class=\"flex items-center flex-1 relative\">\n <div\n v-if=\"$slots.prefix\"\n class=\"select-none whitespace-nowrap text-transparent\">\n <slot name=\"prefix\" />\n </div>\n <input\n ref=\"input\"\n v-model=\"model\"\n :aria-readonly=\"readonly || undefined\"\n class=\"z-1 min-w-0 flex-1 rounded-none border-none bg-transparent placeholder:font-[inherit] focus-within:outline-none\"\n :readonly\n v-bind=\"otherAttrs\" />\n <div\n v-if=\"$slots.prefix || $slots.suffix\"\n class=\"absolute flex items-center inset-0 select-none overflow-hidden whitespace-nowrap\">\n <span\n v-if=\"$slots.prefix\"\n class=\"text-c-2\">\n <slot name=\"prefix\" />\n </span>\n <span class=\"text-transparent\">{{ model || $attrs.placeholder }}</span>\n <span\n v-if=\"$slots.suffix\"\n class=\"text-c-2\">\n <slot name=\"suffix\" />\n </span>\n </div>\n </div>\n <slot name=\"aside\" />\n </ScalarFormInput>\n</template>\n"],"mappings":""}
|
|
@@ -21,14 +21,14 @@ var _hoisted_7 = {
|
|
|
21
21
|
key: 1,
|
|
22
22
|
class: "text-c-2"
|
|
23
23
|
};
|
|
24
|
-
var ScalarTextInput_vue_vue_type_script_setup_true_lang_default =
|
|
24
|
+
var ScalarTextInput_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
25
25
|
inheritAttrs: false,
|
|
26
26
|
__name: "ScalarTextInput",
|
|
27
|
-
props:
|
|
27
|
+
props: /*@__PURE__*/ mergeModels({ readonly: { type: Boolean } }, {
|
|
28
28
|
"modelValue": {},
|
|
29
29
|
"modelModifiers": {}
|
|
30
30
|
}),
|
|
31
|
-
emits:
|
|
31
|
+
emits: /*@__PURE__*/ mergeModels(["click"], ["update:modelValue"]),
|
|
32
32
|
setup(__props, { emit: __emit }) {
|
|
33
33
|
const emit = __emit;
|
|
34
34
|
const model = useModel(__props, "modelValue");
|
|
@@ -43,7 +43,7 @@ var ScalarTextInput_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ *
|
|
|
43
43
|
else input.value?.focus();
|
|
44
44
|
}
|
|
45
45
|
return (_ctx, _cache) => {
|
|
46
|
-
return openBlock(), createBlock(unref(ScalarFormInput_default), mergeProps({ is: "div" }, unref(stylingAttrsCx)("cursor-text text-c-1
|
|
46
|
+
return openBlock(), createBlock(unref(ScalarFormInput_default), mergeProps({ is: "div" }, unref(stylingAttrsCx)("cursor-text bg-b-1 text-c-1 dark:bg-b-1.5"), { onClick: handleClick }), {
|
|
47
47
|
default: withCtx(() => [createElementVNode("div", _hoisted_1, [
|
|
48
48
|
_ctx.$slots.prefix ? (openBlock(), createElementBlock("div", _hoisted_2, [renderSlot(_ctx.$slots, "prefix")])) : createCommentVNode("", true),
|
|
49
49
|
withDirectives(createElementVNode("input", mergeProps({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScalarTextInput.vue.script.js","names":["$slots","$attrs"],"sources":["../../../src/components/ScalarTextInput/ScalarTextInput.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Text Input component\n *\n * A wrapper around the HTML input element with a focusable container.\n *\n * @example\n * <ScalarTextInput v-model=\"model\" />\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport { useBindCx } from '@scalar/use-hooks/useBindCx'\nimport { onMounted, ref } from 'vue'\n\nimport { ScalarFormInput } from '../ScalarForm'\n\nconst { readonly } = defineProps<{\n readonly?: boolean\n}>()\n\nconst emit = defineEmits<{\n /** Emitted when the input is clicked */\n (e: 'click', event: MouseEvent): void\n}>()\n\ndefineSlots<{\n /* Text content to display before the input text */\n prefix?: () => unknown\n /*Text content to display after the input text */\n suffix?: () => unknown\n /* Text content to display to the right of the input */\n aside?: () => unknown\n}>()\n\nconst model = defineModel<string>()\n\nconst input = ref<HTMLInputElement>()\n\ndefineOptions({ inheritAttrs: false })\nconst { stylingAttrsCx, otherAttrs } = useBindCx()\n\nonMounted(() => {\n // Force autofocus if the input has the autofocus attribute\n if ('autofocus' in otherAttrs.value) input.value?.focus()\n})\n\nfunction handleClick(event: MouseEvent) {\n // Re-emit the click event to any consumers\n emit('click', event)\n\n if (readonly) {\n input.value?.select() // If readonly, select the input on click\n } else {\n input.value?.focus() // If not readonly, focus the input on click\n }\n}\n</script>\n<template>\n <ScalarFormInput\n is=\"div\"\n v-bind=\"
|
|
1
|
+
{"version":3,"file":"ScalarTextInput.vue.script.js","names":["$slots","$attrs"],"sources":["../../../src/components/ScalarTextInput/ScalarTextInput.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Text Input component\n *\n * A wrapper around the HTML input element with a focusable container.\n *\n * @example\n * <ScalarTextInput v-model=\"model\" />\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport { useBindCx } from '@scalar/use-hooks/useBindCx'\nimport { onMounted, ref } from 'vue'\n\nimport { ScalarFormInput } from '../ScalarForm'\n\nconst { readonly } = defineProps<{\n readonly?: boolean\n}>()\n\nconst emit = defineEmits<{\n /** Emitted when the input is clicked */\n (e: 'click', event: MouseEvent): void\n}>()\n\ndefineSlots<{\n /* Text content to display before the input text */\n prefix?: () => unknown\n /*Text content to display after the input text */\n suffix?: () => unknown\n /* Text content to display to the right of the input */\n aside?: () => unknown\n}>()\n\nconst model = defineModel<string>()\n\nconst input = ref<HTMLInputElement>()\n\ndefineOptions({ inheritAttrs: false })\nconst { stylingAttrsCx, otherAttrs } = useBindCx()\n\nonMounted(() => {\n // Force autofocus if the input has the autofocus attribute\n if ('autofocus' in otherAttrs.value) input.value?.focus()\n})\n\nfunction handleClick(event: MouseEvent) {\n // Re-emit the click event to any consumers\n emit('click', event)\n\n if (readonly) {\n input.value?.select() // If readonly, select the input on click\n } else {\n input.value?.focus() // If not readonly, focus the input on click\n }\n}\n</script>\n<template>\n <ScalarFormInput\n is=\"div\"\n v-bind=\"stylingAttrsCx('cursor-text bg-b-1 text-c-1 dark:bg-b-1.5')\"\n @click=\"handleClick\">\n <div class=\"flex items-center flex-1 relative\">\n <div\n v-if=\"$slots.prefix\"\n class=\"select-none whitespace-nowrap text-transparent\">\n <slot name=\"prefix\" />\n </div>\n <input\n ref=\"input\"\n v-model=\"model\"\n :aria-readonly=\"readonly || undefined\"\n class=\"z-1 min-w-0 flex-1 rounded-none border-none bg-transparent placeholder:font-[inherit] focus-within:outline-none\"\n :readonly\n v-bind=\"otherAttrs\" />\n <div\n v-if=\"$slots.prefix || $slots.suffix\"\n class=\"absolute flex items-center inset-0 select-none overflow-hidden whitespace-nowrap\">\n <span\n v-if=\"$slots.prefix\"\n class=\"text-c-2\">\n <slot name=\"prefix\" />\n </span>\n <span class=\"text-transparent\">{{ model || $attrs.placeholder }}</span>\n <span\n v-if=\"$slots.suffix\"\n class=\"text-c-2\">\n <slot name=\"suffix\" />\n </span>\n </div>\n </div>\n <slot name=\"aside\" />\n </ScalarFormInput>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqBA,MAAM,OAAO;EAcb,MAAM,QAAQ,SAAmB,SAAA,YAAC;EAElC,MAAM,QAAQ,IAAsB;EAGpC,MAAM,EAAE,gBAAgB,eAAe,UAAU;EAEjD,gBAAgB;GAEd,IAAI,eAAe,WAAW,OAAO,MAAM,OAAO,MAAM;EAC1D,CAAC;EAED,SAAS,YAAY,OAAmB;GAEtC,KAAK,SAAS,KAAK;GAEnB,IAAI,QAAA,UACF,MAAM,OAAO,OAAO;QAEpB,MAAM,OAAO,MAAM;EAEvB;;uBAGE,YAkCkB,MAAA,uBAAA,GAlClB,WAkCkB,EAjChB,IAAG,MAAK,GACA,MAAA,cAAA,CAAc,CAAA,2CAAA,GAAA,EACrB,SAAO,YAAW,CAAA,GAAA;2BA6Bb,CA5BN,mBA4BM,OA5BN,YA4BM;KA1BIA,KAAAA,OAAO,UAAA,UAAA,GADf,mBAIM,OAJN,YAIM,CADJ,WAAsB,KAAA,QAAA,QAAA,CAAA,CAAA,KAAA,mBAAA,IAAA,IAAA;oBAExB,mBAMwB,SANxB,WAMwB;eALlB;MAAJ,KAAI;yEACU,QAAA;MACb,iBAAe,QAAA,YAAY,KAAA;MAC5B,OAAM;MACL,UAAA,QAAA;QACO,MAAA,UAAA,CAAU,GAAA,MAAA,IAAA,UAAA,GAAA,CAAA,CAAA,eAJT,MAAA,KAAK,CAAA,CAAA;KAMRA,KAAAA,OAAO,UAAUA,KAAAA,OAAO,UAAA,UAAA,GADhC,mBAcM,OAdN,YAcM;MAVIA,KAAAA,OAAO,UAAA,UAAA,GADf,mBAIO,QAJP,YAIO,CADL,WAAsB,KAAA,QAAA,QAAA,CAAA,CAAA,KAAA,mBAAA,IAAA,IAAA;MAExB,mBAAuE,QAAvE,YAAuE,gBAArC,MAAA,SAASC,KAAAA,OAAO,WAAW,GAAA,CAAA;MAErDD,KAAAA,OAAO,UAAA,UAAA,GADf,mBAIO,QAJP,YAIO,CADL,WAAsB,KAAA,QAAA,QAAA,CAAA,CAAA,KAAA,mBAAA,IAAA,IAAA;;QAI5B,WAAqB,KAAA,QAAA,OAAA,CAAA,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScalarTextInputCopy.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ScalarTextInput/ScalarTextInputCopy.vue"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ScalarTextInputCopy.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ScalarTextInput/ScalarTextInputCopy.vue"],"names":[],"mappings":"AAiGA;;;;;;;;GAQG;wBACkB,OAAO,YAAY;AAAxC,wBAAyC;AAGzC,QAAA,MAAM,YAAY;IAEhB,uCAAuC;eAC5B,MAAM;IACjB,oCAAoC;eACzB,OAAO;IAClB,2DAA2D;gBAC/C,OAAO;;iBAyCR,MAAM;aACR,OAAO;;;;;IA/ChB,uCAAuC;eAC5B,MAAM;IACjB,oCAAoC;eACzB,OAAO;IAClB,2DAA2D;gBAC/C,OAAO;;iBAyCR,MAAM;aACR,OAAO;;;;;aAnCP,MAAM,OAAO;aAEb,MAAM,OAAO;YAEd,MAAM,OAAO;WAEd,MAAM,OAAO;aAEX,MAAM,OAAO;EA0KpB,CAAC;AACL,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScalarTextInputCopy.vue.js","names":[],"sources":["../../../src/components/ScalarTextInput/ScalarTextInputCopy.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Text Input Copy component\n *\n * A wrapper around the ScalarTextInput component that provides a\n * copy button and allows copying of the input content to the clipboard.\n *\n * @example\n * <ScalarTextInputCopy v-model=\"model\" />\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport { useClipboard } from '@vueuse/core'\nimport { onMounted, watch } from 'vue'\n\nimport { ScalarCopyBackdrop, ScalarCopyButton } from '../ScalarCopy'\nimport ScalarTextInput from './ScalarTextInput.vue'\n\nconst { duration = 1500, immediate } = defineProps<{\n /** The placement of the copy button */\n duration?: number\n /** Whether the input is writable */\n editable?: boolean\n /** Whether to copy the model value immediately on mount */\n immediate?: boolean\n}>()\n\ndefineSlots<{\n /* Text content to display before the input text */\n prefix?: () => unknown\n /*Text content to display after the input text */\n suffix?: () => unknown\n /* Text content to display to the right of the input */\n aside?: () => unknown\n /* Override the label for the copy button */\n copy?: () => unknown\n /* Override the label for the copy button when the content has been copied */\n copied?: () => unknown\n}>()\n\nonMounted(() => {\n // Copy the model value immediately on mount if immediate is true\n if (immediate && model.value) copy(model.value)\n})\n\nconst model = defineModel<string>()\n\nconst copied = defineModel<boolean>('copied', { default: false })\n\nconst { copy, copied: clipboardCopied } = useClipboard({\n legacy: true,\n copiedDuring: duration,\n})\n\n/** Watch the clipboard copied state and emit it to the consuming component */\nwatch(clipboardCopied, (v) => (copied.value = v))\n</script>\n<template>\n <ScalarTextInput\n v-model=\"model\"\n :readonly=\"!editable\"\n @click=\"model && copy(model)\">\n <template #aside>\n <ScalarCopyButton\n class=\"z-1\"\n :copied=\"copied || clipboardCopied\"\n placement=\"left\"\n @click.stop=\"model && copy(model)\">\n <template\n v-if=\"$slots.copy\"\n #copy>\n <slot name=\"copy\" />\n </template>\n <template\n v-if=\"$slots.copied\"\n #copied>\n <slot name=\"copied\" />\n </template>\n <template #backdrop>\n <ScalarCopyBackdrop
|
|
1
|
+
{"version":3,"file":"ScalarTextInputCopy.vue.js","names":[],"sources":["../../../src/components/ScalarTextInput/ScalarTextInputCopy.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Text Input Copy component\n *\n * A wrapper around the ScalarTextInput component that provides a\n * copy button and allows copying of the input content to the clipboard.\n *\n * @example\n * <ScalarTextInputCopy v-model=\"model\" />\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport { useClipboard } from '@vueuse/core'\nimport { onMounted, watch } from 'vue'\n\nimport { ScalarCopyBackdrop, ScalarCopyButton } from '../ScalarCopy'\nimport ScalarTextInput from './ScalarTextInput.vue'\n\nconst { duration = 1500, immediate } = defineProps<{\n /** The placement of the copy button */\n duration?: number\n /** Whether the input is writable */\n editable?: boolean\n /** Whether to copy the model value immediately on mount */\n immediate?: boolean\n}>()\n\ndefineSlots<{\n /* Text content to display before the input text */\n prefix?: () => unknown\n /*Text content to display after the input text */\n suffix?: () => unknown\n /* Text content to display to the right of the input */\n aside?: () => unknown\n /* Override the label for the copy button */\n copy?: () => unknown\n /* Override the label for the copy button when the content has been copied */\n copied?: () => unknown\n}>()\n\nonMounted(() => {\n // Copy the model value immediately on mount if immediate is true\n if (immediate && model.value) copy(model.value)\n})\n\nconst model = defineModel<string>()\n\nconst copied = defineModel<boolean>('copied', { default: false })\n\nconst { copy, copied: clipboardCopied } = useClipboard({\n legacy: true,\n copiedDuring: duration,\n})\n\n/** Watch the clipboard copied state and emit it to the consuming component */\nwatch(clipboardCopied, (v) => (copied.value = v))\n</script>\n<template>\n <ScalarTextInput\n v-model=\"model\"\n :readonly=\"!editable\"\n @click=\"model && copy(model)\">\n <template #aside>\n <ScalarCopyButton\n class=\"z-1 bg-b-1 hover:bg-b-1.5 dark:bg-b-2 dark:hover:bg-b-2\"\n :copied=\"copied || clipboardCopied\"\n placement=\"left\"\n @click.stop=\"model && copy(model)\">\n <template\n v-if=\"$slots.copy\"\n #copy>\n <slot name=\"copy\" />\n </template>\n <template\n v-if=\"$slots.copied\"\n #copied>\n <slot name=\"copied\" />\n </template>\n <template #backdrop>\n <ScalarCopyBackdrop\n class=\"bg-b-1 group-hover/copy-button:bg-b-1.5 dark:bg-b-1.5 dark:group-hover/copy-button:bg-b-1.5\" />\n </template>\n </ScalarCopyButton>\n </template>\n </ScalarTextInput>\n</template>\n"],"mappings":""}
|
|
@@ -3,9 +3,9 @@ import ScalarCopyButton_default from "../ScalarCopy/ScalarCopyButton.vue.js";
|
|
|
3
3
|
import ScalarTextInput_default from "./ScalarTextInput.vue.js";
|
|
4
4
|
import { createBlock, createSlots, createVNode, defineComponent, mergeModels, onMounted, openBlock, renderSlot, unref, useModel, watch, withCtx, withModifiers } from "vue";
|
|
5
5
|
import { useClipboard } from "@vueuse/core";
|
|
6
|
-
var ScalarTextInputCopy_vue_vue_type_script_setup_true_lang_default =
|
|
6
|
+
var ScalarTextInputCopy_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
7
7
|
__name: "ScalarTextInputCopy",
|
|
8
|
-
props:
|
|
8
|
+
props: /*@__PURE__*/ mergeModels({
|
|
9
9
|
duration: { default: 1500 },
|
|
10
10
|
editable: { type: Boolean },
|
|
11
11
|
immediate: { type: Boolean }
|
|
@@ -39,12 +39,12 @@ var ScalarTextInputCopy_vue_vue_type_script_setup_true_lang_default = /* @__PURE
|
|
|
39
39
|
onClick: _cache[2] || (_cache[2] = ($event) => model.value && unref(copy)(model.value))
|
|
40
40
|
}, {
|
|
41
41
|
aside: withCtx(() => [createVNode(unref(ScalarCopyButton_default), {
|
|
42
|
-
class: "z-1",
|
|
42
|
+
class: "z-1 bg-b-1 hover:bg-b-1.5 dark:bg-b-2 dark:hover:bg-b-2",
|
|
43
43
|
copied: copied.value || unref(clipboardCopied),
|
|
44
44
|
placement: "left",
|
|
45
45
|
onClick: _cache[0] || (_cache[0] = withModifiers(($event) => model.value && unref(copy)(model.value), ["stop"]))
|
|
46
46
|
}, createSlots({
|
|
47
|
-
backdrop: withCtx(() => [createVNode(unref(ScalarCopyBackdrop_default), { class: "bg-b-1.5" })]),
|
|
47
|
+
backdrop: withCtx(() => [createVNode(unref(ScalarCopyBackdrop_default), { class: "bg-b-1 group-hover/copy-button:bg-b-1.5 dark:bg-b-1.5 dark:group-hover/copy-button:bg-b-1.5" })]),
|
|
48
48
|
_: 2
|
|
49
49
|
}, [_ctx.$slots.copy ? {
|
|
50
50
|
name: "copy",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScalarTextInputCopy.vue.script.js","names":["$slots"],"sources":["../../../src/components/ScalarTextInput/ScalarTextInputCopy.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Text Input Copy component\n *\n * A wrapper around the ScalarTextInput component that provides a\n * copy button and allows copying of the input content to the clipboard.\n *\n * @example\n * <ScalarTextInputCopy v-model=\"model\" />\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport { useClipboard } from '@vueuse/core'\nimport { onMounted, watch } from 'vue'\n\nimport { ScalarCopyBackdrop, ScalarCopyButton } from '../ScalarCopy'\nimport ScalarTextInput from './ScalarTextInput.vue'\n\nconst { duration = 1500, immediate } = defineProps<{\n /** The placement of the copy button */\n duration?: number\n /** Whether the input is writable */\n editable?: boolean\n /** Whether to copy the model value immediately on mount */\n immediate?: boolean\n}>()\n\ndefineSlots<{\n /* Text content to display before the input text */\n prefix?: () => unknown\n /*Text content to display after the input text */\n suffix?: () => unknown\n /* Text content to display to the right of the input */\n aside?: () => unknown\n /* Override the label for the copy button */\n copy?: () => unknown\n /* Override the label for the copy button when the content has been copied */\n copied?: () => unknown\n}>()\n\nonMounted(() => {\n // Copy the model value immediately on mount if immediate is true\n if (immediate && model.value) copy(model.value)\n})\n\nconst model = defineModel<string>()\n\nconst copied = defineModel<boolean>('copied', { default: false })\n\nconst { copy, copied: clipboardCopied } = useClipboard({\n legacy: true,\n copiedDuring: duration,\n})\n\n/** Watch the clipboard copied state and emit it to the consuming component */\nwatch(clipboardCopied, (v) => (copied.value = v))\n</script>\n<template>\n <ScalarTextInput\n v-model=\"model\"\n :readonly=\"!editable\"\n @click=\"model && copy(model)\">\n <template #aside>\n <ScalarCopyButton\n class=\"z-1\"\n :copied=\"copied || clipboardCopied\"\n placement=\"left\"\n @click.stop=\"model && copy(model)\">\n <template\n v-if=\"$slots.copy\"\n #copy>\n <slot name=\"copy\" />\n </template>\n <template\n v-if=\"$slots.copied\"\n #copied>\n <slot name=\"copied\" />\n </template>\n <template #backdrop>\n <ScalarCopyBackdrop
|
|
1
|
+
{"version":3,"file":"ScalarTextInputCopy.vue.script.js","names":["$slots"],"sources":["../../../src/components/ScalarTextInput/ScalarTextInputCopy.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Text Input Copy component\n *\n * A wrapper around the ScalarTextInput component that provides a\n * copy button and allows copying of the input content to the clipboard.\n *\n * @example\n * <ScalarTextInputCopy v-model=\"model\" />\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport { useClipboard } from '@vueuse/core'\nimport { onMounted, watch } from 'vue'\n\nimport { ScalarCopyBackdrop, ScalarCopyButton } from '../ScalarCopy'\nimport ScalarTextInput from './ScalarTextInput.vue'\n\nconst { duration = 1500, immediate } = defineProps<{\n /** The placement of the copy button */\n duration?: number\n /** Whether the input is writable */\n editable?: boolean\n /** Whether to copy the model value immediately on mount */\n immediate?: boolean\n}>()\n\ndefineSlots<{\n /* Text content to display before the input text */\n prefix?: () => unknown\n /*Text content to display after the input text */\n suffix?: () => unknown\n /* Text content to display to the right of the input */\n aside?: () => unknown\n /* Override the label for the copy button */\n copy?: () => unknown\n /* Override the label for the copy button when the content has been copied */\n copied?: () => unknown\n}>()\n\nonMounted(() => {\n // Copy the model value immediately on mount if immediate is true\n if (immediate && model.value) copy(model.value)\n})\n\nconst model = defineModel<string>()\n\nconst copied = defineModel<boolean>('copied', { default: false })\n\nconst { copy, copied: clipboardCopied } = useClipboard({\n legacy: true,\n copiedDuring: duration,\n})\n\n/** Watch the clipboard copied state and emit it to the consuming component */\nwatch(clipboardCopied, (v) => (copied.value = v))\n</script>\n<template>\n <ScalarTextInput\n v-model=\"model\"\n :readonly=\"!editable\"\n @click=\"model && copy(model)\">\n <template #aside>\n <ScalarCopyButton\n class=\"z-1 bg-b-1 hover:bg-b-1.5 dark:bg-b-2 dark:hover:bg-b-2\"\n :copied=\"copied || clipboardCopied\"\n placement=\"left\"\n @click.stop=\"model && copy(model)\">\n <template\n v-if=\"$slots.copy\"\n #copy>\n <slot name=\"copy\" />\n </template>\n <template\n v-if=\"$slots.copied\"\n #copied>\n <slot name=\"copied\" />\n </template>\n <template #backdrop>\n <ScalarCopyBackdrop\n class=\"bg-b-1 group-hover/copy-button:bg-b-1.5 dark:bg-b-1.5 dark:group-hover/copy-button:bg-b-1.5\" />\n </template>\n </ScalarCopyButton>\n </template>\n </ScalarTextInput>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;EAyCA,gBAAgB;GAEd,IAAI,QAAA,aAAa,MAAM,OAAO,KAAK,MAAM,KAAK;EAChD,CAAC;EAED,MAAM,QAAQ,SAAmB,SAAA,YAAC;EAElC,MAAM,SAAS,SAAoB,SAAC,QAA4B;EAEhE,MAAM,EAAE,MAAM,QAAQ,oBAAoB,aAAa;GACrD,QAAQ;GACR,cAAc,QAAA;EAChB,CAAC;;EAGD,MAAM,kBAAkB,MAAO,OAAO,QAAQ,CAAE;;uBAG9C,YA0BkB,yBAAA;gBAzBP,MAAA;uEAAK,QAAA;IACb,UAAQ,CAAG,QAAA;IACX,SAAK,OAAA,OAAA,OAAA,MAAA,WAAE,MAAA,SAAS,MAAA,IAAA,CAAI,CAAC,MAAA,KAAK;;IAChB,OAAK,cAoBK,CAnBnB,YAmBmB,MAAA,wBAAA,GAAA;KAlBjB,OAAM;KACL,QAAQ,OAAA,SAAU,MAAA,eAAA;KACnB,WAAU;KACT,SAAK,OAAA,OAAA,OAAA,KAAA,eAAA,WAAO,MAAA,SAAS,MAAA,IAAA,CAAI,CAAC,MAAA,KAAK,GAAA,CAAA,MAAA,CAAA;;KAWrB,UAAQ,cAEuF,CADxG,YACwG,MAAA,0BAAA,GAAA,EAAtG,OAAM,8FAA6F,CAAA,CAAA,CAAA;;QAX/FA,KAAAA,OAAO,OAAA;WACZ;uBACmB,CAApB,WAAoB,KAAA,QAAA,MAAA,CAAA,CAAA;;gBAGdA,KAAAA,OAAO,SAAA;WACZ;uBACqB,CAAtB,WAAsB,KAAA,QAAA,QAAA,CAAA,CAAA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { THEME_CSS_VARS, useThemeSwatches } from "./useThemeSwatches.js";
|
|
2
2
|
import { useBindCx } from "@scalar/use-hooks/useBindCx";
|
|
3
3
|
import { Fragment, createElementBlock, defineComponent, mergeProps, normalizeStyle, openBlock, renderList, unref } from "vue";
|
|
4
|
-
var ScalarThemeSwatches_vue_vue_type_script_setup_true_lang_default =
|
|
4
|
+
var ScalarThemeSwatches_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
5
5
|
inheritAttrs: false,
|
|
6
6
|
__name: "ScalarThemeSwatches",
|
|
7
7
|
props: { css: {} },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScalarThemeSwatches.vue.script.js","names":[],"sources":["../../../src/components/ScalarThemeSwatches/ScalarThemeSwatches.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Theme Swatches component\n *\n * Displays the light and dark mode swatches for a given theme CSS string\n *\n * @example\n * <ScalarThemeSwatches :css=\"theme\" />\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport { useBindCx } from '@scalar/use-hooks/useBindCx'\n\nimport { THEME_CSS_VARS, useThemeSwatches } from './useThemeSwatches'\n\nconst { css } = defineProps<{\n css: string\n}>()\n\nconst { colors } = useThemeSwatches(() => css)\n\ndefineOptions({ inheritAttrs: false })\nconst { cx } = useBindCx()\n</script>\n<template>\n <div\n :style=\"{\n '--bg-light': colors.light['--scalar-background-1'],\n '--bg-dark': colors.dark['--scalar-background-1'],\n }\"\n v-bind=\"\n cx(\n 'flex *:size-3 overflow-hidden rounded',\n 'bg-(--bg-light) dark:bg-(--bg-dark)',\n )\n \">\n <div\n v-for=\"v in THEME_CSS_VARS\"\n :key=\"v\"\n class=\"bg-(--bg-light) dark:bg-(--bg-dark)\"\n :style=\"{ '--bg-light': colors.light[v], '--bg-dark': colors.dark[v] }\" />\n </div>\n</template>\n"],"mappings":";;;;;;;;EAoBA,MAAM,EAAE,WAAW,uBAAuB,QAAA,
|
|
1
|
+
{"version":3,"file":"ScalarThemeSwatches.vue.script.js","names":[],"sources":["../../../src/components/ScalarThemeSwatches/ScalarThemeSwatches.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Theme Swatches component\n *\n * Displays the light and dark mode swatches for a given theme CSS string\n *\n * @example\n * <ScalarThemeSwatches :css=\"theme\" />\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport { useBindCx } from '@scalar/use-hooks/useBindCx'\n\nimport { THEME_CSS_VARS, useThemeSwatches } from './useThemeSwatches'\n\nconst { css } = defineProps<{\n css: string\n}>()\n\nconst { colors } = useThemeSwatches(() => css)\n\ndefineOptions({ inheritAttrs: false })\nconst { cx } = useBindCx()\n</script>\n<template>\n <div\n :style=\"{\n '--bg-light': colors.light['--scalar-background-1'],\n '--bg-dark': colors.dark['--scalar-background-1'],\n }\"\n v-bind=\"\n cx(\n 'flex *:size-3 overflow-hidden rounded',\n 'bg-(--bg-light) dark:bg-(--bg-dark)',\n )\n \">\n <div\n v-for=\"v in THEME_CSS_VARS\"\n :key=\"v\"\n class=\"bg-(--bg-light) dark:bg-(--bg-dark)\"\n :style=\"{ '--bg-light': colors.light[v], '--bg-dark': colors.dark[v] }\" />\n </div>\n</template>\n"],"mappings":";;;;;;;;EAoBA,MAAM,EAAE,WAAW,uBAAuB,QAAA,GAAG;EAG7C,MAAM,EAAE,OAAO,UAAU;;uBAGvB,mBAgBM,OAhBN,WAgBM,EAfH,OAAK;kBAAwB,MAAA,MAAA,CAAM,CAAC,MAAK;iBAA8C,MAAA,MAAA,CAAM,CAAC,KAAI;QAIpF,MAAA,EAAA,CAAE,CAAA,yCAAA,qCAAA,CAAA,GAAA,EAAA,UAAA,IAAA,GAMjB,mBAI4E,UAAA,MAAA,WAH9D,MAAA,cAAA,IAAL,MAAC;wBADV,mBAI4E,OAAA;KAFzE,KAAK;KACN,OAAM;KACL,OAAK,eAAA;MAAA,cAAkB,MAAA,MAAA,CAAM,CAAC,MAAM;MAAC,aAAgB,MAAA,MAAA,CAAM,CAAC,KAAK;KAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useThemeSwatches.js","names":[],"sources":["../../../src/components/ScalarThemeSwatches/useThemeSwatches.ts"],"sourcesContent":["import { type MaybeRefOrGetter, computed, toValue } from 'vue'\n\n/** Numbers 1 to 3 */\ntype OneToThree = 1 | 2 | 3\n\n/**\n * CSS variable names that can be extracted from theme CSS\n */\ntype ThemeCssVar = `--scalar-color-${OneToThree}` | `--scalar-background-${OneToThree}` | '--scalar-color-accent'\n\n/**\n * Theme colors for light and dark modes\n */\ntype ThemeColors = {\n light: ThemeCssVars\n dark: ThemeCssVars\n}\n\n/**\n * Record of theme CSS variables to their values (partial)\n */\ntype ThemeCssVars = Partial<Record<ThemeCssVar, string>>\n\n/** Theme CSS variables */\nexport const THEME_CSS_VARS = [\n '--scalar-color-1',\n '--scalar-color-2',\n '--scalar-color-3',\n '--scalar-background-1',\n '--scalar-background-2',\n '--scalar-background-3',\n '--scalar-color-accent',\n] as const satisfies ThemeCssVar[]\n\n/**\n * Parses a given css string for a css variable regexp\n */\nfunction getVars(cssVarPattern: string, css: string): Partial<Record<ThemeCssVar, string>> {\n const matches = [...css.matchAll(new RegExp(`(${cssVarPattern}): ([^;]+);`, 'gm'))]\n if (matches.length === 0) {\n return {}\n }\n return Object.fromEntries(matches.map((match) => [match[1], match[2]]))\n}\n\n/**\n * Parses a given css string for the variables we want\n */\nfunction parseRules(css?: string): ThemeCssVars {\n if (!css) {\n return {}\n }\n return {\n ...getVars('--scalar-color-[1-3]', css),\n ...getVars('--scalar-background-[1-3]', css),\n ...getVars('--scalar-color-accent', css),\n } as ThemeCssVars\n}\n\n/**\n * Returns the light and dark colors for a given css string\n */\nexport function useThemeSwatches(css: MaybeRefOrGetter<string>) {\n return {\n colors: computed<ThemeColors>(() => ({\n light: parseRules(toValue(css).match(/\\.light-mode[^{]*{[^}]*}/m)?.[0]),\n dark: parseRules(toValue(css).match(/\\.dark-mode[^{]*{[^}]*}/m)?.[0]),\n })),\n }\n}\n"],"mappings":";;;AAwBA,IAAa,iBAAiB;CAC5B;CACA;CACA;CACA;CACA;CACA;CACA;
|
|
1
|
+
{"version":3,"file":"useThemeSwatches.js","names":[],"sources":["../../../src/components/ScalarThemeSwatches/useThemeSwatches.ts"],"sourcesContent":["import { type MaybeRefOrGetter, computed, toValue } from 'vue'\n\n/** Numbers 1 to 3 */\ntype OneToThree = 1 | 2 | 3\n\n/**\n * CSS variable names that can be extracted from theme CSS\n */\ntype ThemeCssVar = `--scalar-color-${OneToThree}` | `--scalar-background-${OneToThree}` | '--scalar-color-accent'\n\n/**\n * Theme colors for light and dark modes\n */\ntype ThemeColors = {\n light: ThemeCssVars\n dark: ThemeCssVars\n}\n\n/**\n * Record of theme CSS variables to their values (partial)\n */\ntype ThemeCssVars = Partial<Record<ThemeCssVar, string>>\n\n/** Theme CSS variables */\nexport const THEME_CSS_VARS = [\n '--scalar-color-1',\n '--scalar-color-2',\n '--scalar-color-3',\n '--scalar-background-1',\n '--scalar-background-2',\n '--scalar-background-3',\n '--scalar-color-accent',\n] as const satisfies ThemeCssVar[]\n\n/**\n * Parses a given css string for a css variable regexp\n */\nfunction getVars(cssVarPattern: string, css: string): Partial<Record<ThemeCssVar, string>> {\n const matches = [...css.matchAll(new RegExp(`(${cssVarPattern}): ([^;]+);`, 'gm'))]\n if (matches.length === 0) {\n return {}\n }\n return Object.fromEntries(matches.map((match) => [match[1], match[2]]))\n}\n\n/**\n * Parses a given css string for the variables we want\n */\nfunction parseRules(css?: string): ThemeCssVars {\n if (!css) {\n return {}\n }\n return {\n ...getVars('--scalar-color-[1-3]', css),\n ...getVars('--scalar-background-[1-3]', css),\n ...getVars('--scalar-color-accent', css),\n } as ThemeCssVars\n}\n\n/**\n * Returns the light and dark colors for a given css string\n */\nexport function useThemeSwatches(css: MaybeRefOrGetter<string>) {\n return {\n colors: computed<ThemeColors>(() => ({\n light: parseRules(toValue(css).match(/\\.light-mode[^{]*{[^}]*}/m)?.[0]),\n dark: parseRules(toValue(css).match(/\\.dark-mode[^{]*{[^}]*}/m)?.[0]),\n })),\n }\n}\n"],"mappings":";;;AAwBA,IAAa,iBAAiB;CAC5B;CACA;CACA;CACA;CACA;CACA;CACA;AACF;;;;AAKA,SAAS,QAAQ,eAAuB,KAAmD;CACzF,MAAM,UAAU,CAAC,GAAG,IAAI,SAAS,IAAI,OAAO,IAAI,cAAc,cAAc,IAAI,CAAC,CAAC;CAClF,IAAI,QAAQ,WAAW,GACrB,OAAO,CAAC;CAEV,OAAO,OAAO,YAAY,QAAQ,KAAK,UAAU,CAAC,MAAM,IAAI,MAAM,EAAE,CAAC,CAAC;AACxE;;;;AAKA,SAAS,WAAW,KAA4B;CAC9C,IAAI,CAAC,KACH,OAAO,CAAC;CAEV,OAAO;EACL,GAAG,QAAQ,wBAAwB,GAAG;EACtC,GAAG,QAAQ,6BAA6B,GAAG;EAC3C,GAAG,QAAQ,yBAAyB,GAAG;CACzC;AACF;;;;AAKA,SAAgB,iBAAiB,KAA+B;CAC9D,OAAO,EACL,QAAQ,gBAA6B;EACnC,OAAO,WAAW,QAAQ,GAAG,CAAC,CAAC,MAAM,2BAA2B,CAAC,GAAG,EAAE;EACtE,MAAM,WAAW,QAAQ,GAAG,CAAC,CAAC,MAAM,0BAA0B,CAAC,GAAG,EAAE;CACtE,EAAE,EACJ;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScalarToggle.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ScalarToggle/ScalarToggle.vue"],"names":[],"mappings":"AA6CA;;;;;;;;GAQG;wBACkB,OAAO,YAAY;AAAxC,wBAAyC;AAGzC,QAAA,MAAM,YAAY;eAEL,OAAO;YACV,MAAM;;iBAkBH,OAAO;;;;eAnBP,OAAO;YACV,MAAM;;iBAkBH,OAAO;;;
|
|
1
|
+
{"version":3,"file":"ScalarToggle.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ScalarToggle/ScalarToggle.vue"],"names":[],"mappings":"AA6CA;;;;;;;;GAQG;wBACkB,OAAO,YAAY;AAAxC,wBAAyC;AAGzC,QAAA,MAAM,YAAY;eAEL,OAAO;YACV,MAAM;;iBAkBH,OAAO;;;;eAnBP,OAAO;YACV,MAAM;;iBAkBH,OAAO;;;kFA6DhB,CAAC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import ScalarToggleSlider_default from "./ScalarToggleSlider.vue.js";
|
|
2
2
|
import { createBlock, defineComponent, mergeModels, normalizeClass, openBlock, useModel } from "vue";
|
|
3
|
-
var ScalarToggle_vue_vue_type_script_setup_true_lang_default =
|
|
3
|
+
var ScalarToggle_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
4
4
|
__name: "ScalarToggle",
|
|
5
|
-
props:
|
|
5
|
+
props: /*@__PURE__*/ mergeModels({
|
|
6
6
|
disabled: { type: Boolean },
|
|
7
7
|
label: {}
|
|
8
8
|
}, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScalarToggle.vue.script.js","names":[],"sources":["../../../src/components/ScalarToggle/ScalarToggle.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Toggle component\n *\n * A switch-style toggle control with support for\n * disabled state and accessible labeling.\n *\n * @example\n * <ScalarToggle v-model=\"enabled\" label=\"Enable feature\" />\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport ScalarToggleSlider from './ScalarToggleSlider.vue'\n\nconst props = defineProps<{\n disabled?: boolean\n label?: string\n}>()\n\nconst model = defineModel<boolean>({ default: false })\n\nfunction toggle() {\n if (props.disabled) {\n return\n }\n model.value = !model.value\n}\n</script>\n<template>\n <ScalarToggleSlider\n :aria-checked=\"model\"\n :class=\"model ? 'bg-c-accent' : ''\"\n :disabled\n :label\n role=\"switch\"\n :thumb=\"model ? 'end' : 'start'\"\n @click=\"toggle\" />\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;EAeA,MAAM,QAAQ;EAKd,MAAM,QAAQ,SAAoB,SAAA,
|
|
1
|
+
{"version":3,"file":"ScalarToggle.vue.script.js","names":[],"sources":["../../../src/components/ScalarToggle/ScalarToggle.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Toggle component\n *\n * A switch-style toggle control with support for\n * disabled state and accessible labeling.\n *\n * @example\n * <ScalarToggle v-model=\"enabled\" label=\"Enable feature\" />\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport ScalarToggleSlider from './ScalarToggleSlider.vue'\n\nconst props = defineProps<{\n disabled?: boolean\n label?: string\n}>()\n\nconst model = defineModel<boolean>({ default: false })\n\nfunction toggle() {\n if (props.disabled) {\n return\n }\n model.value = !model.value\n}\n</script>\n<template>\n <ScalarToggleSlider\n :aria-checked=\"model\"\n :class=\"model ? 'bg-c-accent' : ''\"\n :disabled\n :label\n role=\"switch\"\n :thumb=\"model ? 'end' : 'start'\"\n @click=\"toggle\" />\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;EAeA,MAAM,QAAQ;EAKd,MAAM,QAAQ,SAAoB,SAAA,YAAmB;EAErD,SAAS,SAAS;GAChB,IAAI,MAAM,UACR;GAEF,MAAM,QAAQ,CAAC,MAAM;EACvB;;uBAGE,YAOoB,4BAAA;IANjB,gBAAc,MAAA;IACd,OAAK,eAAE,MAAA,QAAK,gBAAA,EAAA;IACZ,UAAA,QAAA;IACA,OAAA,QAAA;IACD,MAAK;IACJ,OAAO,MAAA,QAAK,QAAA;IACZ,SAAO"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScalarToggleGroup.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ScalarToggle/ScalarToggleGroup.vue"],"names":[],"mappings":"AAsCA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAKlE;;;;GAIG;wBACkB,OAAO,YAAY;AAAxC,wBAAyC;AAGzC,QAAA,MAAM,YAAY;cAEN,oBAAoB,EAAE;;iBAYrB,oBAAoB,EAAE;;;;cAZvB,oBAAoB,EAAE;;iBAYrB,oBAAoB,EAAE;;;
|
|
1
|
+
{"version":3,"file":"ScalarToggleGroup.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ScalarToggle/ScalarToggleGroup.vue"],"names":[],"mappings":"AAsCA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAKlE;;;;GAIG;wBACkB,OAAO,YAAY;AAAxC,wBAAyC;AAGzC,QAAA,MAAM,YAAY;cAEN,oBAAoB,EAAE;;iBAYrB,oBAAoB,EAAE;;;;cAZvB,oBAAoB,EAAE;;iBAYrB,oBAAoB,EAAE;;;kFA8E/B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScalarToggleGroup.vue.js","names":[],"sources":["../../../src/components/ScalarToggle/ScalarToggleGroup.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Toggle Group component\n *\n * A group of toggle inputs allowing for multiple selections.\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport type { ScalarCheckboxOption } from '../ScalarCheckboxInput'\nimport { ScalarFormInputGroup } from '../ScalarForm'\nimport ScalarToggleInput from './ScalarToggleInput.vue'\n\nconst { options = [] } = defineProps<{\n options?: ScalarCheckboxOption[]\n}>()\n\nconst model = defineModel<ScalarCheckboxOption[]>({ default: [] })\n</script>\n<template>\n <ScalarFormInputGroup>\n <ScalarToggleInput\n v-for=\"option in options\"\n :key=\"option.value\"\n :modelValue=\"model?.some(({ value }) => value === option.value)\"\n @update:modelValue=\"\n (checked) =>\n (model = checked\n ? [...model, option]\n : model.filter(({ value }) => value !== option.value))\n \">\n {{ option.label }}\n </ScalarToggleInput>\n </ScalarFormInputGroup>\n</template>\n"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"ScalarToggleGroup.vue.js","names":[],"sources":["../../../src/components/ScalarToggle/ScalarToggleGroup.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Toggle Group component\n *\n * A group of toggle inputs allowing for multiple selections.\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport type { ScalarCheckboxOption } from '../ScalarCheckboxInput'\nimport { ScalarFormInputGroup } from '../ScalarForm'\nimport ScalarToggleInput from './ScalarToggleInput.vue'\n\nconst { options = [] } = defineProps<{\n options?: ScalarCheckboxOption[]\n}>()\n\nconst model = defineModel<ScalarCheckboxOption[]>({ default: () => [] })\n</script>\n<template>\n <ScalarFormInputGroup>\n <ScalarToggleInput\n v-for=\"option in options\"\n :key=\"option.value\"\n :modelValue=\"model?.some(({ value }) => value === option.value)\"\n @update:modelValue=\"\n (checked) =>\n (model = checked\n ? [...model, option]\n : model.filter(({ value }) => value !== option.value))\n \">\n {{ option.label }}\n </ScalarToggleInput>\n </ScalarFormInputGroup>\n</template>\n"],"mappings":""}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import ScalarFormInputGroup_default from "../ScalarForm/ScalarFormInputGroup.vue.js";
|
|
2
2
|
import ScalarToggleInput_default from "./ScalarToggleInput.vue.js";
|
|
3
3
|
import { Fragment, createBlock, createElementBlock, createTextVNode, defineComponent, mergeModels, openBlock, renderList, toDisplayString, unref, useModel, withCtx } from "vue";
|
|
4
|
-
var ScalarToggleGroup_vue_vue_type_script_setup_true_lang_default =
|
|
4
|
+
var ScalarToggleGroup_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
5
5
|
__name: "ScalarToggleGroup",
|
|
6
|
-
props:
|
|
7
|
-
"modelValue": { default: [] },
|
|
6
|
+
props: /*@__PURE__*/ mergeModels({ options: { default: () => [] } }, {
|
|
7
|
+
"modelValue": { default: () => [] },
|
|
8
8
|
"modelModifiers": {}
|
|
9
9
|
}),
|
|
10
10
|
emits: ["update:modelValue"],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScalarToggleGroup.vue.script.js","names":[],"sources":["../../../src/components/ScalarToggle/ScalarToggleGroup.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Toggle Group component\n *\n * A group of toggle inputs allowing for multiple selections.\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport type { ScalarCheckboxOption } from '../ScalarCheckboxInput'\nimport { ScalarFormInputGroup } from '../ScalarForm'\nimport ScalarToggleInput from './ScalarToggleInput.vue'\n\nconst { options = [] } = defineProps<{\n options?: ScalarCheckboxOption[]\n}>()\n\nconst model = defineModel<ScalarCheckboxOption[]>({ default: [] })\n</script>\n<template>\n <ScalarFormInputGroup>\n <ScalarToggleInput\n v-for=\"option in options\"\n :key=\"option.value\"\n :modelValue=\"model?.some(({ value }) => value === option.value)\"\n @update:modelValue=\"\n (checked) =>\n (model = checked\n ? [...model, option]\n : model.filter(({ value }) => value !== option.value))\n \">\n {{ option.label }}\n </ScalarToggleInput>\n </ScalarFormInputGroup>\n</template>\n"],"mappings":";;;;;;;;;;;EAiBA,MAAM,QAAQ,SAAmC,SAAA,
|
|
1
|
+
{"version":3,"file":"ScalarToggleGroup.vue.script.js","names":[],"sources":["../../../src/components/ScalarToggle/ScalarToggleGroup.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Toggle Group component\n *\n * A group of toggle inputs allowing for multiple selections.\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport type { ScalarCheckboxOption } from '../ScalarCheckboxInput'\nimport { ScalarFormInputGroup } from '../ScalarForm'\nimport ScalarToggleInput from './ScalarToggleInput.vue'\n\nconst { options = [] } = defineProps<{\n options?: ScalarCheckboxOption[]\n}>()\n\nconst model = defineModel<ScalarCheckboxOption[]>({ default: () => [] })\n</script>\n<template>\n <ScalarFormInputGroup>\n <ScalarToggleInput\n v-for=\"option in options\"\n :key=\"option.value\"\n :modelValue=\"model?.some(({ value }) => value === option.value)\"\n @update:modelValue=\"\n (checked) =>\n (model = checked\n ? [...model, option]\n : model.filter(({ value }) => value !== option.value))\n \">\n {{ option.label }}\n </ScalarToggleInput>\n </ScalarFormInputGroup>\n</template>\n"],"mappings":";;;;;;;;;;;EAiBA,MAAM,QAAQ,SAAmC,SAAA,YAAsB;;uBAGrE,YAauB,MAAA,4BAAA,GAAA,MAAA;2BAXM,EAAA,UAAA,IAAA,GAD3B,mBAWoB,UAAA,MAAA,WAVD,QAAA,UAAV,WAAM;yBADf,YAWoB,2BAAA;MATjB,KAAK,OAAO;MACZ,YAAY,MAAA,OAAO,MAAI,EAAI,YAAY,UAAU,OAAO,KAAK;MAC7D,wBAA6B,YAAuB,MAAA,QAAQ,UAAA,CAAA,GAA0B,MAAA,OAAO,MAAM,IAAgB,MAAA,MAAM,QAAM,EAAI,YAAY,UAAU,OAAO,KAAK;;6BAMpJ,CAAA,gBAAA,gBAAf,OAAO,KAAK,GAAA,CAAA,CAAA,CAAA"}
|
|
@@ -4,7 +4,7 @@ import { useBindCx } from "@scalar/use-hooks/useBindCx";
|
|
|
4
4
|
import { createBlock, createElementVNode, createVNode, defineComponent, mergeProps, openBlock, renderSlot, unref, useModel, withCtx } from "vue";
|
|
5
5
|
//#region src/components/ScalarToggle/ScalarToggleInput.vue?vue&type=script&setup=true&lang.ts
|
|
6
6
|
var _hoisted_1 = { class: "flex-1 text-left min-w-0 truncate" };
|
|
7
|
-
var ScalarToggleInput_vue_vue_type_script_setup_true_lang_default =
|
|
7
|
+
var ScalarToggleInput_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
8
8
|
inheritAttrs: false,
|
|
9
9
|
__name: "ScalarToggleInput",
|
|
10
10
|
props: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScalarToggleInput.vue.script.js","names":[],"sources":["../../../src/components/ScalarToggle/ScalarToggleInput.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Toggle Input component\n *\n * A create a toggle input component for use in forms.\n *\n * @example\n * <ScalarToggleInput v-model=\"model\" type=\"checkbox\">\n * Label\n * </ScalarToggleInput>\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport { useBindCx } from '@scalar/use-hooks/useBindCx'\n\nimport { ScalarFormInput } from '../ScalarForm'\nimport ScalarToggle from './ScalarToggle.vue'\n\nconst model = defineModel<boolean>()\n\ndefineOptions({ inheritAttrs: false })\nconst { stylingAttrsCx, otherAttrs } = useBindCx()\n</script>\n<template>\n <ScalarFormInput\n is=\"label\"\n v-bind=\"\n stylingAttrsCx('cursor-pointer gap-2 hover:bg-b-2', { 'text-c-1': model })\n \">\n <div class=\"flex-1 text-left min-w-0 truncate\"><slot /></div>\n <ScalarToggle\n v-model=\"model\"\n class=\"shrink-0\"\n v-bind=\"otherAttrs\" />\n </ScalarFormInput>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;EAmBA,MAAM,QAAQ,SAAoB,SAAA,
|
|
1
|
+
{"version":3,"file":"ScalarToggleInput.vue.script.js","names":[],"sources":["../../../src/components/ScalarToggle/ScalarToggleInput.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Toggle Input component\n *\n * A create a toggle input component for use in forms.\n *\n * @example\n * <ScalarToggleInput v-model=\"model\" type=\"checkbox\">\n * Label\n * </ScalarToggleInput>\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport { useBindCx } from '@scalar/use-hooks/useBindCx'\n\nimport { ScalarFormInput } from '../ScalarForm'\nimport ScalarToggle from './ScalarToggle.vue'\n\nconst model = defineModel<boolean>()\n\ndefineOptions({ inheritAttrs: false })\nconst { stylingAttrsCx, otherAttrs } = useBindCx()\n</script>\n<template>\n <ScalarFormInput\n is=\"label\"\n v-bind=\"\n stylingAttrsCx('cursor-pointer gap-2 hover:bg-b-2', { 'text-c-1': model })\n \">\n <div class=\"flex-1 text-left min-w-0 truncate\"><slot /></div>\n <ScalarToggle\n v-model=\"model\"\n class=\"shrink-0\"\n v-bind=\"otherAttrs\" />\n </ScalarFormInput>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;EAmBA,MAAM,QAAQ,SAAoB,SAAA,YAAC;EAGnC,MAAM,EAAE,gBAAgB,eAAe,UAAU;;uBAG/C,YAUkB,MAAA,uBAAA,GAVlB,WAUkB,EAThB,IAAG,QAAO,GACK,MAAA,cAAA,CAAc,CAAA,qCAAA,EAAA,YAAoD,MAAA,MAAK,CAAA,CAAA,GAAA;2BAGzB,CAA7D,mBAA6D,OAA7D,YAA6D,CAAd,WAAQ,KAAA,QAAA,SAAA,CAAA,CAAA,GACvD,YAGwB,sBAHxB,WAGwB;iBAFb,MAAA;wEAAK,QAAA;KACd,OAAM;OACE,MAAA,UAAA,CAAU,GAAA,MAAA,IAAA,CAAA,YAAA,CAAA,CAAA,CAAA"}
|
|
@@ -6,7 +6,7 @@ var _hoisted_2 = {
|
|
|
6
6
|
key: 0,
|
|
7
7
|
class: "sr-only"
|
|
8
8
|
};
|
|
9
|
-
var ScalarToggleSlider_vue_vue_type_script_setup_true_lang_default =
|
|
9
|
+
var ScalarToggleSlider_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
10
10
|
inheritAttrs: false,
|
|
11
11
|
__name: "ScalarToggleSlider",
|
|
12
12
|
props: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScalarToggleSlider.vue.script.js","names":[],"sources":["../../../src/components/ScalarToggle/ScalarToggleSlider.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { cva, useBindCx } from '@scalar/use-hooks/useBindCx'\n\nconst {\n thumb = 'start',\n disabled,\n label,\n} = defineProps<{\n /** Resting position of the thumb within the track */\n thumb?: 'start' | 'center' | 'end'\n /** Visually dims the control and applies a not-allowed cursor */\n disabled?: boolean\n /** Accessible label announced to assistive technology */\n label?: string\n}>()\n\nconst variants = cva({\n base: 'relative h-3.5 min-w-6 w-6 cursor-pointer rounded-full bg-b-3 transition-colors duration-300',\n variants: {\n disabled: { true: 'cursor-not-allowed opacity-40' },\n },\n})\n\ndefineOptions({ inheritAttrs: false })\nconst { cx } = useBindCx()\n</script>\n<template>\n <button\n :aria-disabled=\"disabled\"\n type=\"button\"\n v-bind=\"cx(variants({ disabled }))\">\n <div\n class=\"absolute left-px top-px flex h-3 w-3 items-center justify-center rounded-full bg-b-1 transition-transform duration-300\"\n :class=\"{\n 'translate-x-1.25': thumb === 'center',\n 'translate-x-2.5': thumb === 'end',\n }\" />\n <span\n v-if=\"label\"\n class=\"sr-only\">\n {{ label }}\n </span>\n </button>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;EAgBA,MAAM,WAAW,IAAI;GACnB,MAAM;GACN,UAAU,EACR,UAAU,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"ScalarToggleSlider.vue.script.js","names":[],"sources":["../../../src/components/ScalarToggle/ScalarToggleSlider.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { cva, useBindCx } from '@scalar/use-hooks/useBindCx'\n\nconst {\n thumb = 'start',\n disabled,\n label,\n} = defineProps<{\n /** Resting position of the thumb within the track */\n thumb?: 'start' | 'center' | 'end'\n /** Visually dims the control and applies a not-allowed cursor */\n disabled?: boolean\n /** Accessible label announced to assistive technology */\n label?: string\n}>()\n\nconst variants = cva({\n base: 'relative h-3.5 min-w-6 w-6 cursor-pointer rounded-full bg-b-3 transition-colors duration-300',\n variants: {\n disabled: { true: 'cursor-not-allowed opacity-40' },\n },\n})\n\ndefineOptions({ inheritAttrs: false })\nconst { cx } = useBindCx()\n</script>\n<template>\n <button\n :aria-disabled=\"disabled\"\n type=\"button\"\n v-bind=\"cx(variants({ disabled }))\">\n <div\n class=\"absolute left-px top-px flex h-3 w-3 items-center justify-center rounded-full bg-b-1 transition-transform duration-300\"\n :class=\"{\n 'translate-x-1.25': thumb === 'center',\n 'translate-x-2.5': thumb === 'end',\n }\" />\n <span\n v-if=\"label\"\n class=\"sr-only\">\n {{ label }}\n </span>\n </button>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;EAgBA,MAAM,WAAW,IAAI;GACnB,MAAM;GACN,UAAU,EACR,UAAU,EAAE,MAAM,gCAAgC,EACpD;EACF,CAAC;EAGD,MAAM,EAAE,OAAO,UAAU;;uBAGvB,mBAeS,UAfT,WAeS;IAdN,iBAAe,QAAA;IAChB,MAAK;MACG,MAAA,EAAA,CAAE,CAAC,MAAA,QAAA,CAAQ,CAAA,EAAA,UAAG,QAAA,SAAQ,CAAA,CAAA,CAAA,GAAA,CAC9B,mBAKO,OAAA,EAJL,OAAK,eAAA,CAAC,0HAAwH;wBACxF,QAAA,UAAK;uBAA0C,QAAA,UAAK;oBAKpF,QAAA,SAAA,UAAA,GADR,mBAIO,QAJP,YAIO,gBADF,QAAA,KAAK,GAAA,CAAA,KAAA,mBAAA,IAAA,IAAA,CAAA,GAAA,IAAA,UAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScalarTristateToggle.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ScalarToggle/ScalarTristateToggle.vue"],"names":[],"mappings":"AA0EA;;;;;;;;;;GAUG;wBACkB,OAAO,YAAY;AAAxC,wBAAyC;AAGzC,QAAA,MAAM,YAAY;IAEhB,mEAAmE;eACxD,OAAO;IAClB,yDAAyD;YACjD,MAAM;;iBAqCH,OAAO,GAAG,SAAS;;;;IAxC9B,mEAAmE;eACxD,OAAO;IAClB,yDAAyD;YACjD,MAAM;;iBAqCH,OAAO,GAAG,SAAS;;;
|
|
1
|
+
{"version":3,"file":"ScalarTristateToggle.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ScalarToggle/ScalarTristateToggle.vue"],"names":[],"mappings":"AA0EA;;;;;;;;;;GAUG;wBACkB,OAAO,YAAY;AAAxC,wBAAyC;AAGzC,QAAA,MAAM,YAAY;IAEhB,mEAAmE;eACxD,OAAO;IAClB,yDAAyD;YACjD,MAAM;;iBAqCH,OAAO,GAAG,SAAS;;;;IAxC9B,mEAAmE;eACxD,OAAO;IAClB,yDAAyD;YACjD,MAAM;;iBAqCH,OAAO,GAAG,SAAS;;;kFA6D5B,CAAC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import ScalarToggleSlider_default from "./ScalarToggleSlider.vue.js";
|
|
2
2
|
import { computed, createBlock, defineComponent, mergeModels, mergeProps, openBlock, useModel } from "vue";
|
|
3
|
-
var ScalarTristateToggle_vue_vue_type_script_setup_true_lang_default =
|
|
3
|
+
var ScalarTristateToggle_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
4
4
|
__name: "ScalarTristateToggle",
|
|
5
|
-
props:
|
|
5
|
+
props: /*@__PURE__*/ mergeModels({
|
|
6
6
|
disabled: { type: Boolean },
|
|
7
7
|
label: {}
|
|
8
8
|
}, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScalarTristateToggle.vue.script.js","names":[],"sources":["../../../src/components/ScalarToggle/ScalarTristateToggle.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Tristate Toggle component\n *\n * A switch-style toggle control with three states — unset, on, and off —\n * useful for representing an optional boolean that can also be left\n * unset (e.g. \"inherit\"). Supports a disabled state and accessible\n * labeling.\n *\n * @example\n * <ScalarTristateToggle v-model=\"overridden\" label=\"Override default\" />\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport { computed } from 'vue'\n\nimport ScalarToggleSlider from './ScalarToggleSlider.vue'\n\nconst props = defineProps<{\n /** Prevents the toggle from being cycled, and dims it visually. */\n disabled?: boolean\n /** Accessible label announced to assistive technology */\n label?: string\n}>()\n\nconst model = defineModel<boolean | undefined>()\n\n/** The current tristate value, derived from the boolean | undefined model. */\nconst state = computed<'unset' | 'on' | 'off'>(() => {\n if (model.value === undefined) {\n return 'unset'\n }\n return model.value ? 'on' : 'off'\n})\n\n/** Slider appearance for each tristate value. */\nconst SLIDER_PROPS = {\n unset: { class: '', thumb: 'center' },\n on: { class: 'bg-green', thumb: 'end' },\n off: { class: 'bg-c-danger', thumb: 'start' },\n} as const\n\n/** Cycles unset -> on -> off -> unset. */\nfunction toggle() {\n if (props.disabled) {\n return\n }\n if (model.value === undefined) {\n model.value = true\n } else if (model.value === true) {\n model.value = false\n } else {\n model.value = undefined\n }\n}\n</script>\n<template>\n <ScalarToggleSlider\n :aria-checked=\"state === 'unset' ? 'mixed' : model\"\n :disabled\n :label\n role=\"checkbox\"\n v-bind=\"SLIDER_PROPS[state]\"\n @click=\"toggle\" />\n</template>\n"],"mappings":";;;;;;;;;;;;;EAmBA,MAAM,QAAQ;EAOd,MAAM,QAAQ,SAAgC,SAAA,
|
|
1
|
+
{"version":3,"file":"ScalarTristateToggle.vue.script.js","names":[],"sources":["../../../src/components/ScalarToggle/ScalarTristateToggle.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Tristate Toggle component\n *\n * A switch-style toggle control with three states — unset, on, and off —\n * useful for representing an optional boolean that can also be left\n * unset (e.g. \"inherit\"). Supports a disabled state and accessible\n * labeling.\n *\n * @example\n * <ScalarTristateToggle v-model=\"overridden\" label=\"Override default\" />\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport { computed } from 'vue'\n\nimport ScalarToggleSlider from './ScalarToggleSlider.vue'\n\nconst props = defineProps<{\n /** Prevents the toggle from being cycled, and dims it visually. */\n disabled?: boolean\n /** Accessible label announced to assistive technology */\n label?: string\n}>()\n\nconst model = defineModel<boolean | undefined>()\n\n/** The current tristate value, derived from the boolean | undefined model. */\nconst state = computed<'unset' | 'on' | 'off'>(() => {\n if (model.value === undefined) {\n return 'unset'\n }\n return model.value ? 'on' : 'off'\n})\n\n/** Slider appearance for each tristate value. */\nconst SLIDER_PROPS = {\n unset: { class: '', thumb: 'center' },\n on: { class: 'bg-green', thumb: 'end' },\n off: { class: 'bg-c-danger', thumb: 'start' },\n} as const\n\n/** Cycles unset -> on -> off -> unset. */\nfunction toggle() {\n if (props.disabled) {\n return\n }\n if (model.value === undefined) {\n model.value = true\n } else if (model.value === true) {\n model.value = false\n } else {\n model.value = undefined\n }\n}\n</script>\n<template>\n <ScalarToggleSlider\n :aria-checked=\"state === 'unset' ? 'mixed' : model\"\n :disabled\n :label\n role=\"checkbox\"\n v-bind=\"SLIDER_PROPS[state]\"\n @click=\"toggle\" />\n</template>\n"],"mappings":";;;;;;;;;;;;;EAmBA,MAAM,QAAQ;EAOd,MAAM,QAAQ,SAAgC,SAAA,YAAC;;EAG/C,MAAM,QAAQ,eAAuC;GACnD,IAAI,MAAM,UAAU,KAAA,GAClB,OAAO;GAET,OAAO,MAAM,QAAQ,OAAO;EAC9B,CAAC;;EAGD,MAAM,eAAe;GACnB,OAAO;IAAE,OAAO;IAAI,OAAO;GAAS;GACpC,IAAI;IAAE,OAAO;IAAY,OAAO;GAAM;GACtC,KAAK;IAAE,OAAO;IAAe,OAAO;GAAQ;EAC9C;;EAGA,SAAS,SAAS;GAChB,IAAI,MAAM,UACR;GAEF,IAAI,MAAM,UAAU,KAAA,GAClB,MAAM,QAAQ;QACT,IAAI,MAAM,UAAU,MACzB,MAAM,QAAQ;QAEd,MAAM,QAAQ,KAAA;EAElB;;uBAGE,YAMoB,4BANpB,WAMoB;IALjB,gBAAc,MAAA,UAAK,UAAA,UAAyB,MAAA;IAC5C,UAAA,QAAA;IACA,OAAA,QAAA;IACD,MAAK;MACG,aAAa,MAAA,QAAK,EACzB,SAAO,OAAM,CAAA,GAAA,MAAA,IAAA;IAAA;IAAA;IAAA;GAAA,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScalarTristateToggleGroup.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ScalarToggle/ScalarTristateToggleGroup.vue"],"names":[],"mappings":"AA6CA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAGlE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAGnD;;;;GAIG;wBACkB,OAAO,YAAY;AAAxC,wBAAyC;AAGzC,QAAA,MAAM,YAAY;cAEN,oBAAoB,EAAE;;iBAuBrB,oBAAoB,EAAE;;;;cAvBvB,oBAAoB,EAAE;;iBAuBrB,oBAAoB,EAAE;;;
|
|
1
|
+
{"version":3,"file":"ScalarTristateToggleGroup.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ScalarToggle/ScalarTristateToggleGroup.vue"],"names":[],"mappings":"AA6CA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAGlE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAGnD;;;;GAIG;wBACkB,OAAO,YAAY;AAAxC,wBAAyC;AAGzC,QAAA,MAAM,YAAY;cAEN,oBAAoB,EAAE;;iBAuBrB,oBAAoB,EAAE;;;;cAvBvB,oBAAoB,EAAE;;iBAuBrB,oBAAoB,EAAE;;;kFA0E/B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScalarTristateToggleGroup.vue.js","names":[],"sources":["../../../src/components/ScalarToggle/ScalarTristateToggleGroup.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Tristate Toggle Group component\n *\n * A group of tristate toggle inputs, each independently unset, on, or off.\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport type { ScalarCheckboxOption } from '../ScalarCheckboxInput'\nimport { ScalarFormInputGroup } from '../ScalarForm'\nimport ScalarTristateToggleInput from './ScalarTristateToggleInput.vue'\nimport type { ScalarTristateOption } from './types'\n\nconst { options = [] } = defineProps<{\n options?: ScalarCheckboxOption[]\n}>()\n\nconst model = defineModel<ScalarTristateOption[]>({ default: [] })\n\n/** Looks up an option's current tristate value; undefined if it has no entry in the model. */\nfunction getValue(option: ScalarCheckboxOption): boolean | undefined {\n return model.value.find((entry) => entry.value === option.value)?.checked\n}\n\n/** Upserts or removes an option's entry in the model based on its new tristate value. */\nfunction setValue(option: ScalarCheckboxOption, checked: boolean | undefined) {\n const rest = model.value.filter((entry) => entry.value !== option.value)\n model.value = checked === undefined ? rest : [...rest, { ...option, checked }]\n}\n</script>\n<template>\n <ScalarFormInputGroup>\n <ScalarTristateToggleInput\n v-for=\"option in options\"\n :key=\"option.value\"\n :modelValue=\"getValue(option)\"\n @update:modelValue=\"(checked) => setValue(option, checked)\">\n {{ option.label }}\n </ScalarTristateToggleInput>\n </ScalarFormInputGroup>\n</template>\n"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"ScalarTristateToggleGroup.vue.js","names":[],"sources":["../../../src/components/ScalarToggle/ScalarTristateToggleGroup.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Tristate Toggle Group component\n *\n * A group of tristate toggle inputs, each independently unset, on, or off.\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport type { ScalarCheckboxOption } from '../ScalarCheckboxInput'\nimport { ScalarFormInputGroup } from '../ScalarForm'\nimport ScalarTristateToggleInput from './ScalarTristateToggleInput.vue'\nimport type { ScalarTristateOption } from './types'\n\nconst { options = [] } = defineProps<{\n options?: ScalarCheckboxOption[]\n}>()\n\nconst model = defineModel<ScalarTristateOption[]>({ default: () => [] })\n\n/** Looks up an option's current tristate value; undefined if it has no entry in the model. */\nfunction getValue(option: ScalarCheckboxOption): boolean | undefined {\n return model.value.find((entry) => entry.value === option.value)?.checked\n}\n\n/** Upserts or removes an option's entry in the model based on its new tristate value. */\nfunction setValue(option: ScalarCheckboxOption, checked: boolean | undefined) {\n const rest = model.value.filter((entry) => entry.value !== option.value)\n model.value = checked === undefined ? rest : [...rest, { ...option, checked }]\n}\n</script>\n<template>\n <ScalarFormInputGroup>\n <ScalarTristateToggleInput\n v-for=\"option in options\"\n :key=\"option.value\"\n :modelValue=\"getValue(option)\"\n @update:modelValue=\"(checked) => setValue(option, checked)\">\n {{ option.label }}\n </ScalarTristateToggleInput>\n </ScalarFormInputGroup>\n</template>\n"],"mappings":""}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import ScalarFormInputGroup_default from "../ScalarForm/ScalarFormInputGroup.vue.js";
|
|
2
2
|
import ScalarTristateToggleInput_default from "./ScalarTristateToggleInput.vue.js";
|
|
3
3
|
import { Fragment, createBlock, createElementBlock, createTextVNode, defineComponent, mergeModels, openBlock, renderList, toDisplayString, unref, useModel, withCtx } from "vue";
|
|
4
|
-
var ScalarTristateToggleGroup_vue_vue_type_script_setup_true_lang_default =
|
|
4
|
+
var ScalarTristateToggleGroup_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
5
5
|
__name: "ScalarTristateToggleGroup",
|
|
6
|
-
props:
|
|
7
|
-
"modelValue": { default: [] },
|
|
6
|
+
props: /*@__PURE__*/ mergeModels({ options: { default: () => [] } }, {
|
|
7
|
+
"modelValue": { default: () => [] },
|
|
8
8
|
"modelModifiers": {}
|
|
9
9
|
}),
|
|
10
10
|
emits: ["update:modelValue"],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScalarTristateToggleGroup.vue.script.js","names":[],"sources":["../../../src/components/ScalarToggle/ScalarTristateToggleGroup.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Tristate Toggle Group component\n *\n * A group of tristate toggle inputs, each independently unset, on, or off.\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport type { ScalarCheckboxOption } from '../ScalarCheckboxInput'\nimport { ScalarFormInputGroup } from '../ScalarForm'\nimport ScalarTristateToggleInput from './ScalarTristateToggleInput.vue'\nimport type { ScalarTristateOption } from './types'\n\nconst { options = [] } = defineProps<{\n options?: ScalarCheckboxOption[]\n}>()\n\nconst model = defineModel<ScalarTristateOption[]>({ default: [] })\n\n/** Looks up an option's current tristate value; undefined if it has no entry in the model. */\nfunction getValue(option: ScalarCheckboxOption): boolean | undefined {\n return model.value.find((entry) => entry.value === option.value)?.checked\n}\n\n/** Upserts or removes an option's entry in the model based on its new tristate value. */\nfunction setValue(option: ScalarCheckboxOption, checked: boolean | undefined) {\n const rest = model.value.filter((entry) => entry.value !== option.value)\n model.value = checked === undefined ? rest : [...rest, { ...option, checked }]\n}\n</script>\n<template>\n <ScalarFormInputGroup>\n <ScalarTristateToggleInput\n v-for=\"option in options\"\n :key=\"option.value\"\n :modelValue=\"getValue(option)\"\n @update:modelValue=\"(checked) => setValue(option, checked)\">\n {{ option.label }}\n </ScalarTristateToggleInput>\n </ScalarFormInputGroup>\n</template>\n"],"mappings":";;;;;;;;;;;EAkBA,MAAM,QAAQ,SAAmC,SAAA,
|
|
1
|
+
{"version":3,"file":"ScalarTristateToggleGroup.vue.script.js","names":[],"sources":["../../../src/components/ScalarToggle/ScalarTristateToggleGroup.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Tristate Toggle Group component\n *\n * A group of tristate toggle inputs, each independently unset, on, or off.\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport type { ScalarCheckboxOption } from '../ScalarCheckboxInput'\nimport { ScalarFormInputGroup } from '../ScalarForm'\nimport ScalarTristateToggleInput from './ScalarTristateToggleInput.vue'\nimport type { ScalarTristateOption } from './types'\n\nconst { options = [] } = defineProps<{\n options?: ScalarCheckboxOption[]\n}>()\n\nconst model = defineModel<ScalarTristateOption[]>({ default: () => [] })\n\n/** Looks up an option's current tristate value; undefined if it has no entry in the model. */\nfunction getValue(option: ScalarCheckboxOption): boolean | undefined {\n return model.value.find((entry) => entry.value === option.value)?.checked\n}\n\n/** Upserts or removes an option's entry in the model based on its new tristate value. */\nfunction setValue(option: ScalarCheckboxOption, checked: boolean | undefined) {\n const rest = model.value.filter((entry) => entry.value !== option.value)\n model.value = checked === undefined ? rest : [...rest, { ...option, checked }]\n}\n</script>\n<template>\n <ScalarFormInputGroup>\n <ScalarTristateToggleInput\n v-for=\"option in options\"\n :key=\"option.value\"\n :modelValue=\"getValue(option)\"\n @update:modelValue=\"(checked) => setValue(option, checked)\">\n {{ option.label }}\n </ScalarTristateToggleInput>\n </ScalarFormInputGroup>\n</template>\n"],"mappings":";;;;;;;;;;;EAkBA,MAAM,QAAQ,SAAmC,SAAA,YAAsB;;EAGvE,SAAS,SAAS,QAAmD;GACnE,OAAO,MAAM,MAAM,MAAM,UAAU,MAAM,UAAU,OAAO,KAAK,CAAC,EAAE;EACpE;;EAGA,SAAS,SAAS,QAA8B,SAA8B;GAC5E,MAAM,OAAO,MAAM,MAAM,QAAQ,UAAU,MAAM,UAAU,OAAO,KAAK;GACvE,MAAM,QAAQ,YAAY,KAAA,IAAY,OAAO,CAAC,GAAG,MAAM;IAAE,GAAG;IAAQ;GAAQ,CAAC;EAC/E;;uBAGE,YAQuB,MAAA,4BAAA,GAAA,MAAA;2BANM,EAAA,UAAA,IAAA,GAD3B,mBAM4B,UAAA,MAAA,WALT,QAAA,UAAV,WAAM;yBADf,YAM4B,mCAAA;MAJzB,KAAK,OAAO;MACZ,YAAY,SAAS,MAAM;MAC3B,wBAAoB,YAAY,SAAS,QAAQ,OAAO;;6BACvC,CAAA,gBAAA,gBAAf,OAAO,KAAK,GAAA,CAAA,CAAA,CAAA"}
|
|
@@ -4,7 +4,7 @@ import { useBindCx } from "@scalar/use-hooks/useBindCx";
|
|
|
4
4
|
import { createBlock, createElementVNode, createVNode, defineComponent, mergeProps, openBlock, renderSlot, unref, useModel, withCtx } from "vue";
|
|
5
5
|
//#region src/components/ScalarToggle/ScalarTristateToggleInput.vue?vue&type=script&setup=true&lang.ts
|
|
6
6
|
var _hoisted_1 = { class: "flex-1 text-left min-w-0 truncate" };
|
|
7
|
-
var ScalarTristateToggleInput_vue_vue_type_script_setup_true_lang_default =
|
|
7
|
+
var ScalarTristateToggleInput_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
8
8
|
inheritAttrs: false,
|
|
9
9
|
__name: "ScalarTristateToggleInput",
|
|
10
10
|
props: {
|