@scalar/components 0.21.1 → 0.21.3

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.
Files changed (189) hide show
  1. package/dist/components/ScalarButton/ScalarButton.vue.js.map +1 -1
  2. package/dist/components/ScalarButton/ScalarButton.vue.script.js +1 -1
  3. package/dist/components/ScalarButton/ScalarButton.vue.script.js.map +1 -1
  4. package/dist/components/ScalarButton/constants.d.ts +1 -1
  5. package/dist/components/ScalarButton/constants.js +1 -1
  6. package/dist/components/ScalarButton/constants.js.map +1 -1
  7. package/dist/components/ScalarCodeBlock/ScalarCodeBlock.vue.d.ts +38 -9
  8. package/dist/components/ScalarCodeBlock/ScalarCodeBlock.vue.d.ts.map +1 -1
  9. package/dist/components/ScalarCodeBlock/ScalarCodeBlock.vue.js.map +1 -1
  10. package/dist/components/ScalarCodeBlock/ScalarCodeBlock.vue.script.js +0 -5
  11. package/dist/components/ScalarCodeBlock/ScalarCodeBlock.vue.script.js.map +1 -1
  12. package/dist/components/ScalarCodeBlock/ScalarCodeBlockCopy.vue.d.ts +28 -16
  13. package/dist/components/ScalarCodeBlock/ScalarCodeBlockCopy.vue.d.ts.map +1 -1
  14. package/dist/components/ScalarCodeBlock/ScalarCodeBlockCopy.vue.js.map +1 -1
  15. package/dist/components/ScalarCodeBlock/ScalarCodeBlockCopy.vue.script.js.map +1 -1
  16. package/dist/components/ScalarCombobox/ScalarCombobox.vue.d.ts +13 -2
  17. package/dist/components/ScalarCombobox/ScalarCombobox.vue.d.ts.map +1 -1
  18. package/dist/components/ScalarCombobox/ScalarCombobox.vue.js.map +1 -1
  19. package/dist/components/ScalarCombobox/ScalarCombobox.vue.script.js +0 -1
  20. package/dist/components/ScalarCombobox/ScalarCombobox.vue.script.js.map +1 -1
  21. package/dist/components/ScalarCombobox/ScalarComboboxMultiselect.vue.d.ts +12 -2
  22. package/dist/components/ScalarCombobox/ScalarComboboxMultiselect.vue.d.ts.map +1 -1
  23. package/dist/components/ScalarCombobox/ScalarComboboxMultiselect.vue.js.map +1 -1
  24. package/dist/components/ScalarCombobox/ScalarComboboxMultiselect.vue.script.js +0 -1
  25. package/dist/components/ScalarCombobox/ScalarComboboxMultiselect.vue.script.js.map +1 -1
  26. package/dist/components/ScalarCombobox/ScalarComboboxOption.vue.d.ts +23 -13
  27. package/dist/components/ScalarCombobox/ScalarComboboxOption.vue.d.ts.map +1 -1
  28. package/dist/components/ScalarCombobox/ScalarComboboxOption.vue.js.map +1 -1
  29. package/dist/components/ScalarCombobox/ScalarComboboxOption.vue.script.js.map +1 -1
  30. package/dist/components/ScalarCombobox/ScalarComboboxOptionGroup.vue.d.ts +21 -11
  31. package/dist/components/ScalarCombobox/ScalarComboboxOptionGroup.vue.d.ts.map +1 -1
  32. package/dist/components/ScalarCombobox/ScalarComboboxOptionGroup.vue.js.map +1 -1
  33. package/dist/components/ScalarCombobox/ScalarComboboxOptionGroup.vue.script.js.map +1 -1
  34. package/dist/components/ScalarCombobox/ScalarComboboxOptions.vue.d.ts +11 -2
  35. package/dist/components/ScalarCombobox/ScalarComboboxOptions.vue.d.ts.map +1 -1
  36. package/dist/components/ScalarCombobox/ScalarComboboxOptions.vue.js.map +1 -1
  37. package/dist/components/ScalarCombobox/ScalarComboboxOptions.vue.script.js.map +1 -1
  38. package/dist/components/ScalarCombobox/ScalarComboboxPopover.vue.d.ts +16 -6
  39. package/dist/components/ScalarCombobox/ScalarComboboxPopover.vue.d.ts.map +1 -1
  40. package/dist/components/ScalarCombobox/ScalarComboboxPopover.vue.js.map +1 -1
  41. package/dist/components/ScalarCombobox/ScalarComboboxPopover.vue.script.js +0 -1
  42. package/dist/components/ScalarCombobox/ScalarComboboxPopover.vue.script.js.map +1 -1
  43. package/dist/components/ScalarErrorBoundary/ScalarErrorBoundary.vue.d.ts +14 -6
  44. package/dist/components/ScalarErrorBoundary/ScalarErrorBoundary.vue.d.ts.map +1 -1
  45. package/dist/components/ScalarErrorBoundary/ScalarErrorBoundary.vue.js.map +1 -1
  46. package/dist/components/ScalarErrorBoundary/ScalarErrorBoundary.vue.script.js.map +1 -1
  47. package/dist/components/ScalarFileUpload/ScalarFileUploadFileList.vue.js.map +1 -1
  48. package/dist/components/ScalarFileUpload/ScalarFileUploadFileList.vue.script.js +2 -2
  49. package/dist/components/ScalarFileUpload/ScalarFileUploadFileList.vue.script.js.map +1 -1
  50. package/dist/components/ScalarFloating/ScalarFloating.vue.d.ts +19 -9
  51. package/dist/components/ScalarFloating/ScalarFloating.vue.d.ts.map +1 -1
  52. package/dist/components/ScalarFloating/ScalarFloating.vue.js.map +1 -1
  53. package/dist/components/ScalarFloating/ScalarFloating.vue.script.js +0 -1
  54. package/dist/components/ScalarFloating/ScalarFloating.vue.script.js.map +1 -1
  55. package/dist/components/ScalarForm/ScalarFormError.vue.d.ts +20 -11
  56. package/dist/components/ScalarForm/ScalarFormError.vue.d.ts.map +1 -1
  57. package/dist/components/ScalarForm/ScalarFormError.vue.js.map +1 -1
  58. package/dist/components/ScalarForm/ScalarFormError.vue.script.js +0 -1
  59. package/dist/components/ScalarForm/ScalarFormError.vue.script.js.map +1 -1
  60. package/dist/components/ScalarHotkey/ScalarHotkey.vue.d.ts +15 -5
  61. package/dist/components/ScalarHotkey/ScalarHotkey.vue.d.ts.map +1 -1
  62. package/dist/components/ScalarHotkey/ScalarHotkey.vue.js.map +1 -1
  63. package/dist/components/ScalarHotkey/ScalarHotkey.vue.script.js.map +1 -1
  64. package/dist/components/ScalarIcon/IconList.vue.d.ts +15 -4
  65. package/dist/components/ScalarIcon/IconList.vue.d.ts.map +1 -1
  66. package/dist/components/ScalarListbox/ScalarListbox.vue.d.ts +37 -24
  67. package/dist/components/ScalarListbox/ScalarListbox.vue.d.ts.map +1 -1
  68. package/dist/components/ScalarListbox/ScalarListbox.vue.js.map +1 -1
  69. package/dist/components/ScalarListbox/ScalarListbox.vue.script.js.map +1 -1
  70. package/dist/components/ScalarListbox/ScalarListboxCheckbox.vue.d.ts +17 -5
  71. package/dist/components/ScalarListbox/ScalarListboxCheckbox.vue.d.ts.map +1 -1
  72. package/dist/components/ScalarListbox/ScalarListboxCheckbox.vue.js.map +1 -1
  73. package/dist/components/ScalarListbox/ScalarListboxCheckbox.vue.script.js +0 -1
  74. package/dist/components/ScalarListbox/ScalarListboxCheckbox.vue.script.js.map +1 -1
  75. package/dist/components/ScalarListbox/ScalarListboxItem.vue.d.ts +16 -5
  76. package/dist/components/ScalarListbox/ScalarListboxItem.vue.d.ts.map +1 -1
  77. package/dist/components/ScalarListbox/ScalarListboxItem.vue.js.map +1 -1
  78. package/dist/components/ScalarListbox/ScalarListboxItem.vue.script.js +0 -1
  79. package/dist/components/ScalarListbox/ScalarListboxItem.vue.script.js.map +1 -1
  80. package/dist/components/ScalarMarkdown/ScalarMarkdown.vue.d.ts +11 -2
  81. package/dist/components/ScalarMarkdown/ScalarMarkdown.vue.d.ts.map +1 -1
  82. package/dist/components/ScalarMarkdown/ScalarMarkdown.vue.js.map +1 -1
  83. package/dist/components/ScalarMarkdown/ScalarMarkdown.vue.script.js.map +1 -1
  84. package/dist/components/ScalarMarkdown/ScalarMarkdownSummary.vue.d.ts +26 -17
  85. package/dist/components/ScalarMarkdown/ScalarMarkdownSummary.vue.d.ts.map +1 -1
  86. package/dist/components/ScalarMarkdown/ScalarMarkdownSummary.vue.js.map +1 -1
  87. package/dist/components/ScalarMarkdown/ScalarMarkdownSummary.vue.script.js.map +1 -1
  88. package/dist/components/ScalarMenu/ScalarMenu.vue.d.ts +15 -6
  89. package/dist/components/ScalarMenu/ScalarMenu.vue.d.ts.map +1 -1
  90. package/dist/components/ScalarMenu/ScalarMenu.vue.js.map +1 -1
  91. package/dist/components/ScalarMenu/ScalarMenu.vue.script.js +0 -1
  92. package/dist/components/ScalarMenu/ScalarMenu.vue.script.js.map +1 -1
  93. package/dist/components/ScalarMenu/ScalarMenuButton.vue.d.ts +10 -3
  94. package/dist/components/ScalarMenu/ScalarMenuButton.vue.d.ts.map +1 -1
  95. package/dist/components/ScalarMenu/ScalarMenuButton.vue.js.map +1 -1
  96. package/dist/components/ScalarMenu/ScalarMenuButton.vue.script.js.map +1 -1
  97. package/dist/components/ScalarMenu/ScalarMenuLink.vue.d.ts +21 -10
  98. package/dist/components/ScalarMenu/ScalarMenuLink.vue.d.ts.map +1 -1
  99. package/dist/components/ScalarMenu/ScalarMenuLink.vue.js.map +1 -1
  100. package/dist/components/ScalarMenu/ScalarMenuLink.vue.script.js.map +1 -1
  101. package/dist/components/ScalarMenu/ScalarMenuProduct.vue.d.ts +21 -10
  102. package/dist/components/ScalarMenu/ScalarMenuProduct.vue.d.ts.map +1 -1
  103. package/dist/components/ScalarMenu/ScalarMenuProduct.vue.js.map +1 -1
  104. package/dist/components/ScalarMenu/ScalarMenuProduct.vue.script.js +0 -1
  105. package/dist/components/ScalarMenu/ScalarMenuProduct.vue.script.js.map +1 -1
  106. package/dist/components/ScalarMenu/ScalarMenuProducts.vue.d.ts +22 -11
  107. package/dist/components/ScalarMenu/ScalarMenuProducts.vue.d.ts.map +1 -1
  108. package/dist/components/ScalarMenu/ScalarMenuProducts.vue.js.map +1 -1
  109. package/dist/components/ScalarMenu/ScalarMenuProducts.vue.script.js +0 -1
  110. package/dist/components/ScalarMenu/ScalarMenuProducts.vue.script.js.map +1 -1
  111. package/dist/components/ScalarMenu/ScalarMenuResources.vue.d.ts +9 -1
  112. package/dist/components/ScalarMenu/ScalarMenuResources.vue.d.ts.map +1 -1
  113. package/dist/components/ScalarMenu/ScalarMenuResources.vue.js.map +1 -1
  114. package/dist/components/ScalarMenu/ScalarMenuResources.vue.script.js +0 -1
  115. package/dist/components/ScalarMenu/ScalarMenuResources.vue.script.js.map +1 -1
  116. package/dist/components/ScalarMenu/ScalarMenuSection.vue.d.ts +14 -6
  117. package/dist/components/ScalarMenu/ScalarMenuSection.vue.d.ts.map +1 -1
  118. package/dist/components/ScalarMenu/ScalarMenuSection.vue.js.map +1 -1
  119. package/dist/components/ScalarMenu/ScalarMenuSection.vue.script.js +0 -1
  120. package/dist/components/ScalarMenu/ScalarMenuSection.vue.script.js.map +1 -1
  121. package/dist/components/ScalarMenu/ScalarMenuSupport.vue.d.ts +9 -1
  122. package/dist/components/ScalarMenu/ScalarMenuSupport.vue.d.ts.map +1 -1
  123. package/dist/components/ScalarMenu/ScalarMenuSupport.vue.js.map +1 -1
  124. package/dist/components/ScalarMenu/ScalarMenuSupport.vue.script.js +0 -1
  125. package/dist/components/ScalarMenu/ScalarMenuSupport.vue.script.js.map +1 -1
  126. package/dist/components/ScalarMenu/ScalarMenuTeamPicker.vue.d.ts +19 -6
  127. package/dist/components/ScalarMenu/ScalarMenuTeamPicker.vue.d.ts.map +1 -1
  128. package/dist/components/ScalarMenu/ScalarMenuTeamPicker.vue.js.map +1 -1
  129. package/dist/components/ScalarMenu/ScalarMenuTeamPicker.vue.script.js +0 -1
  130. package/dist/components/ScalarMenu/ScalarMenuTeamPicker.vue.script.js.map +1 -1
  131. package/dist/components/ScalarMenu/ScalarMenuTeamProfile.vue.d.ts +16 -5
  132. package/dist/components/ScalarMenu/ScalarMenuTeamProfile.vue.d.ts.map +1 -1
  133. package/dist/components/ScalarMenu/ScalarMenuTeamProfile.vue.js.map +1 -1
  134. package/dist/components/ScalarMenu/ScalarMenuTeamProfile.vue.script.js.map +1 -1
  135. package/dist/components/ScalarMenu/ScalarMenuWorkspacePicker.vue.d.ts +20 -9
  136. package/dist/components/ScalarMenu/ScalarMenuWorkspacePicker.vue.d.ts.map +1 -1
  137. package/dist/components/ScalarMenu/ScalarMenuWorkspacePicker.vue.js.map +1 -1
  138. package/dist/components/ScalarMenu/ScalarMenuWorkspacePicker.vue.script.js.map +1 -1
  139. package/dist/components/ScalarModal/ScalarModal.vue.d.ts +13 -2
  140. package/dist/components/ScalarModal/ScalarModal.vue.d.ts.map +1 -1
  141. package/dist/components/ScalarModal/ScalarModal.vue.js +1 -1
  142. package/dist/components/ScalarModal/ScalarModal.vue.js.map +1 -1
  143. package/dist/components/ScalarModal/ScalarModal.vue.script.js +13 -0
  144. package/dist/components/ScalarModal/ScalarModal.vue.script.js.map +1 -1
  145. package/dist/components/ScalarPopover/ScalarPopover.vue.d.ts +19 -7
  146. package/dist/components/ScalarPopover/ScalarPopover.vue.d.ts.map +1 -1
  147. package/dist/components/ScalarPopover/ScalarPopover.vue.js.map +1 -1
  148. package/dist/components/ScalarPopover/ScalarPopover.vue.script.js +0 -1
  149. package/dist/components/ScalarPopover/ScalarPopover.vue.script.js.map +1 -1
  150. package/dist/components/ScalarSavePrompt/ScalarSavePrompt.vue.d.ts +38 -0
  151. package/dist/components/ScalarSavePrompt/ScalarSavePrompt.vue.d.ts.map +1 -0
  152. package/dist/components/ScalarSavePrompt/ScalarSavePrompt.vue.js +7 -0
  153. package/dist/components/ScalarSavePrompt/ScalarSavePrompt.vue.js.map +1 -0
  154. package/dist/components/ScalarSavePrompt/ScalarSavePrompt.vue.script.js +66 -0
  155. package/dist/components/ScalarSavePrompt/ScalarSavePrompt.vue.script.js.map +1 -0
  156. package/dist/components/ScalarSavePrompt/index.d.ts +2 -0
  157. package/dist/components/ScalarSavePrompt/index.d.ts.map +1 -0
  158. package/dist/components/ScalarSearchResults/ScalarSearchResultItem.vue.d.ts +23 -13
  159. package/dist/components/ScalarSearchResults/ScalarSearchResultItem.vue.d.ts.map +1 -1
  160. package/dist/components/ScalarSearchResults/ScalarSearchResultItem.vue.js.map +1 -1
  161. package/dist/components/ScalarSearchResults/ScalarSearchResultItem.vue.script.js.map +1 -1
  162. package/dist/components/ScalarSearchResults/ScalarSearchResultList.vue.d.ts +21 -11
  163. package/dist/components/ScalarSearchResults/ScalarSearchResultList.vue.d.ts.map +1 -1
  164. package/dist/components/ScalarSearchResults/ScalarSearchResultList.vue.js.map +1 -1
  165. package/dist/components/ScalarSearchResults/ScalarSearchResultList.vue.script.js +0 -1
  166. package/dist/components/ScalarSearchResults/ScalarSearchResultList.vue.script.js.map +1 -1
  167. package/dist/components/ScalarSidebar/ScalarSidebarSearchButton.vue.d.ts +16 -8
  168. package/dist/components/ScalarSidebar/ScalarSidebarSearchButton.vue.d.ts.map +1 -1
  169. package/dist/components/ScalarSidebar/ScalarSidebarSearchButton.vue.js.map +1 -1
  170. package/dist/components/ScalarSidebar/ScalarSidebarSearchButton.vue.script.js.map +1 -1
  171. package/dist/components/ScalarSidebar/ScalarSidebarSearchInput.vue.d.ts +21 -9
  172. package/dist/components/ScalarSidebar/ScalarSidebarSearchInput.vue.d.ts.map +1 -1
  173. package/dist/components/ScalarSidebar/ScalarSidebarSearchInput.vue.js.map +1 -1
  174. package/dist/components/ScalarSidebar/ScalarSidebarSearchInput.vue.script.js.map +1 -1
  175. package/dist/components/ScalarToggle/ScalarToggle.vue.d.ts +20 -9
  176. package/dist/components/ScalarToggle/ScalarToggle.vue.d.ts.map +1 -1
  177. package/dist/components/ScalarToggle/ScalarToggle.vue.js.map +1 -1
  178. package/dist/components/ScalarToggle/ScalarToggle.vue.script.js.map +1 -1
  179. package/dist/components/ScalarVirtualText/ScalarVirtualText.vue.d.ts +24 -5
  180. package/dist/components/ScalarVirtualText/ScalarVirtualText.vue.d.ts.map +1 -1
  181. package/dist/components/ScalarVirtualText/ScalarVirtualText.vue.js.map +1 -1
  182. package/dist/components/ScalarVirtualText/ScalarVirtualText.vue.script.js +0 -1
  183. package/dist/components/ScalarVirtualText/ScalarVirtualText.vue.script.js.map +1 -1
  184. package/dist/index.d.ts +47 -36
  185. package/dist/index.d.ts.map +1 -1
  186. package/dist/index.js +2 -6
  187. package/dist/style.css +89 -18
  188. package/package.json +12 -10
  189. package/dist/index.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ScalarToggle.vue.script.js","names":[],"sources":["../../../src/components/ScalarToggle/ScalarToggle.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { cva, cx } from '@scalar/use-hooks/useBindCx'\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\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 checked: { true: 'bg-c-accent' },\n disabled: { true: 'cursor-not-allowed opacity-40' },\n },\n})\n</script>\n<template>\n <button\n :aria-checked=\"model\"\n :aria-disabled=\"disabled\"\n :class=\"cx(variants({ checked: model, disabled }))\"\n role=\"switch\"\n type=\"button\"\n @click=\"toggle\">\n <div\n class=\"absolute left-px top-px flex h-3 w-3 items-center justify-center rounded-full bg-b-1 text-c-accent transition-transform duration-300\"\n :class=\"{ 'translate-x-2.5': model }\" />\n <span\n v-if=\"label\"\n class=\"sr-only\">\n {{ label }}\n </span>\n </button>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;EAGA,MAAM,QAAQ;EAKd,MAAM,QAAQ,SAAoB,SAAA,aAAmB;EAErD,SAAS,SAAS;AAChB,OAAI,MAAM,SACR;AAEF,SAAM,QAAQ,CAAC,MAAM;;EAGvB,MAAM,WAAW,IAAI;GACnB,MAAM;GACN,UAAU;IACR,SAAS,EAAE,MAAM,eAAe;IAChC,UAAU,EAAE,MAAM,iCAAiC;IACpD;GACF,CAAA;;uBAGC,mBAeS,UAAA;IAdN,gBAAc,MAAA;IACd,iBAAe,QAAA;IACf,OAAK,eAAE,MAAA,GAAE,CAAC,MAAA,SAAQ,CAAA;KAAA,SAAY,MAAA;KAAK,UAAE,QAAA;KAAQ,CAAA,CAAA,CAAA;IAC9C,MAAK;IACL,MAAK;IACJ,SAAO;OACR,mBAE0C,OAAA,EADxC,OAAK,eAAA,CAAC,wIAAsI,EAAA,mBAC/G,MAAA,OAAK,CAAA,CAAA,EAAA,EAAA,MAAA,EAAA,EAE5B,QAAA,SAAA,WAAA,EADR,mBAIO,QAJP,YAIO,gBADF,QAAA,MAAK,EAAA,EAAA,IAAA,mBAAA,IAAA,KAAA,CAAA,EAAA,IAAA,WAAA"}
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 { cva, cx } from '@scalar/use-hooks/useBindCx'\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\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 checked: { true: 'bg-c-accent' },\n disabled: { true: 'cursor-not-allowed opacity-40' },\n },\n})\n</script>\n<template>\n <button\n :aria-checked=\"model\"\n :aria-disabled=\"disabled\"\n :class=\"cx(variants({ checked: model, disabled }))\"\n role=\"switch\"\n type=\"button\"\n @click=\"toggle\">\n <div\n class=\"absolute left-px top-px flex h-3 w-3 items-center justify-center rounded-full bg-b-1 text-c-accent transition-transform duration-300\"\n :class=\"{ 'translate-x-2.5': model }\" />\n <span\n v-if=\"label\"\n class=\"sr-only\">\n {{ label }}\n </span>\n </button>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;EAeA,MAAM,QAAQ;EAKd,MAAM,QAAQ,SAAoB,SAAA,aAAmB;EAErD,SAAS,SAAS;AAChB,OAAI,MAAM,SACR;AAEF,SAAM,QAAQ,CAAC,MAAM;;EAGvB,MAAM,WAAW,IAAI;GACnB,MAAM;GACN,UAAU;IACR,SAAS,EAAE,MAAM,eAAe;IAChC,UAAU,EAAE,MAAM,iCAAiC;IACpD;GACF,CAAA;;uBAGC,mBAeS,UAAA;IAdN,gBAAc,MAAA;IACd,iBAAe,QAAA;IACf,OAAK,eAAE,MAAA,GAAE,CAAC,MAAA,SAAQ,CAAA;KAAA,SAAY,MAAA;KAAK,UAAE,QAAA;KAAQ,CAAA,CAAA,CAAA;IAC9C,MAAK;IACL,MAAK;IACJ,SAAO;OACR,mBAE0C,OAAA,EADxC,OAAK,eAAA,CAAC,wIAAsI,EAAA,mBAC/G,MAAA,OAAK,CAAA,CAAA,EAAA,EAAA,MAAA,EAAA,EAE5B,QAAA,SAAA,WAAA,EADR,mBAIO,QAJP,YAIO,gBADF,QAAA,MAAK,EAAA,EAAA,IAAA,mBAAA,IAAA,KAAA,CAAA,EAAA,IAAA,WAAA"}
@@ -1,4 +1,26 @@
1
- type __VLS_Props = {
1
+ /**
2
+ * Scalar Virtual Text component
3
+ *
4
+ * Renders large blocks of text efficiently using virtualized scrolling.
5
+ * Only the visible lines are rendered to the DOM.
6
+ *
7
+ * @example
8
+ * <ScalarVirtualText text="line1\nline2\nline3" :lineHeight="20" />
9
+ */
10
+ declare const _default: typeof __VLS_export;
11
+ export default _default;
12
+ declare const __VLS_export: import("vue").DefineComponent<{
13
+ /** Text to display */
14
+ text: string;
15
+ /**
16
+ * Height of each line
17
+ * @default 20
18
+ */
19
+ lineHeight?: number;
20
+ containerClass?: string;
21
+ contentClass?: string;
22
+ lineClass?: string;
23
+ }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{
2
24
  /** Text to display */
3
25
  text: string;
4
26
  /**
@@ -9,13 +31,10 @@ type __VLS_Props = {
9
31
  containerClass?: string;
10
32
  contentClass?: string;
11
33
  lineClass?: string;
12
- };
13
- declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
34
+ }> & Readonly<{}>, {
14
35
  lineHeight: number;
15
36
  containerClass: string;
16
37
  contentClass: string;
17
38
  lineClass: string;
18
39
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
19
- declare const _default: typeof __VLS_export;
20
- export default _default;
21
40
  //# sourceMappingURL=ScalarVirtualText.vue.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ScalarVirtualText.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ScalarVirtualText/ScalarVirtualText.vue"],"names":[],"mappings":"AA6HA,KAAK,WAAW,GAAG;IACf,sBAAsB;IACtB,IAAI,EAAE,MAAM,CAAA;IACZ;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAC;AAgJJ,QAAA,MAAM,YAAY;gBApJD,MAAM;oBACF,MAAM;kBACR,MAAM;eACT,MAAM;6EAoJpB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
1
+ {"version":3,"file":"ScalarVirtualText.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ScalarVirtualText/ScalarVirtualText.vue"],"names":[],"mappings":"AA0IA;;;;;;;;GAQG;wBACkB,OAAO,YAAY;AAAxC,wBAAyC;AAGzC,QAAA,MAAM,YAAY;IAEd,sBAAsB;UAChB,MAAM;IACZ;;;OAGG;iBACU,MAAM;qBACF,MAAM;mBACR,MAAM;gBACT,MAAM;;IATlB,sBAAsB;UAChB,MAAM;IACZ;;;OAGG;iBACU,MAAM;qBACF,MAAM;mBACR,MAAM;gBACT,MAAM;;gBAHL,MAAM;oBACF,MAAM;kBACR,MAAM;eACT,MAAM;6EAqJlB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ScalarVirtualText.vue.js","names":[],"sources":["../../../src/components/ScalarVirtualText/ScalarVirtualText.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, onBeforeUnmount, onMounted, ref, watchEffect } from 'vue'\n\nconst props = withDefaults(\n defineProps<{\n /** Text to display */\n text: string\n /**\n * Height of each line\n * @default 20\n */\n lineHeight?: number\n containerClass?: string\n contentClass?: string\n lineClass?: string\n }>(),\n {\n lineHeight: 20,\n containerClass: '',\n contentClass: '',\n lineClass: '',\n },\n)\n\nconst containerRef = ref<HTMLElement | null>(null)\nconst contentRef = ref<HTMLElement | null>(null)\nconst scrollPosition = ref(0)\nconst containerHeight = ref(0)\n\n/** Array of text broken into lines */\nconst lines = computed(() => props.text.split('\\n'))\n/**\n * Total height of all lines combined\n *\n * TODO: there is a problem with this calculation which screws up the scrollbar a bit\n */\nconst totalHeight = computed(() => lines.value.length * props.lineHeight)\n\n/** Index of the first visible line */\nconst visibleStartIndex = computed(() =>\n Math.floor(scrollPosition.value / props.lineHeight),\n)\n\n/** Index of the last visible line */\nconst visibleEndIndex = computed(() =>\n Math.min(\n Math.ceil(\n (scrollPosition.value + containerHeight.value) / props.lineHeight,\n ),\n lines.value.length,\n ),\n)\n\n/** Array of visible lines, including buffer for smooth scrolling */\nconst visibleLines = computed(() => {\n const buffer = 10\n const start = Math.max(0, visibleStartIndex.value - buffer)\n const end = Math.min(lines.value.length, visibleEndIndex.value + buffer)\n\n return lines.value.slice(start, end)\n})\n\n/** Style object for the content container, controls \"scrolling\" */\nconst contentStyle = computed(() => ({\n height: `${totalHeight.value}px`,\n transform: `translateY(${Math.max(0, visibleStartIndex.value - 10) * props.lineHeight}px)`,\n}))\n\n/** Updates the scroll position when the container is scrolled */\nconst handleScroll = () =>\n containerRef.value && (scrollPosition.value = containerRef.value.scrollTop)\n\n/** Updates the container height when the window is resized */\nconst updateContainerHeight = () =>\n containerRef.value &&\n (containerHeight.value = containerRef.value.clientHeight)\n\nonMounted(() => {\n updateContainerHeight()\n window.addEventListener('resize', updateContainerHeight)\n})\n\nonBeforeUnmount(() => {\n window.removeEventListener('resize', updateContainerHeight)\n})\n\nwatchEffect(() => {\n if (!contentRef.value) {\n return\n }\n\n contentRef.value.style.transform = `translateY(${Math.max(0, visibleStartIndex.value - 10) * props.lineHeight}px)`\n})\n</script>\n\n<template>\n <div\n ref=\"containerRef\"\n class=\"scalar-virtual-text overflow-auto\"\n :class=\"containerClass\"\n @scroll=\"handleScroll\">\n <code\n ref=\"contentRef\"\n class=\"scalar-virtual-text-content\"\n :class=\"contentClass\"\n :style=\"contentStyle\">\n <div\n v-for=\"(line, index) in visibleLines\"\n :key=\"visibleStartIndex + index\"\n class=\"scalar-virtual-text-line\"\n :class=\"lineClass\"\n :style=\"{\n height: `${props.lineHeight}px`,\n lineHeight: `${props.lineHeight}px`,\n }\">\n {{ line }}\n </div>\n </code>\n </div>\n</template>\n"],"mappings":""}
1
+ {"version":3,"file":"ScalarVirtualText.vue.js","names":[],"sources":["../../../src/components/ScalarVirtualText/ScalarVirtualText.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Virtual Text component\n *\n * Renders large blocks of text efficiently using virtualized scrolling.\n * Only the visible lines are rendered to the DOM.\n *\n * @example\n * <ScalarVirtualText text=\"line1\\nline2\\nline3\" :lineHeight=\"20\" />\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport { computed, onBeforeUnmount, onMounted, ref, watchEffect } from 'vue'\n\nconst props = withDefaults(\n defineProps<{\n /** Text to display */\n text: string\n /**\n * Height of each line\n * @default 20\n */\n lineHeight?: number\n containerClass?: string\n contentClass?: string\n lineClass?: string\n }>(),\n {\n lineHeight: 20,\n containerClass: '',\n contentClass: '',\n lineClass: '',\n },\n)\n\nconst containerRef = ref<HTMLElement | null>(null)\nconst contentRef = ref<HTMLElement | null>(null)\nconst scrollPosition = ref(0)\nconst containerHeight = ref(0)\n\n/** Array of text broken into lines */\nconst lines = computed(() => props.text.split('\\n'))\n/**\n * Total height of all lines combined\n *\n * TODO: there is a problem with this calculation which screws up the scrollbar a bit\n */\nconst totalHeight = computed(() => lines.value.length * props.lineHeight)\n\n/** Index of the first visible line */\nconst visibleStartIndex = computed(() =>\n Math.floor(scrollPosition.value / props.lineHeight),\n)\n\n/** Index of the last visible line */\nconst visibleEndIndex = computed(() =>\n Math.min(\n Math.ceil(\n (scrollPosition.value + containerHeight.value) / props.lineHeight,\n ),\n lines.value.length,\n ),\n)\n\n/** Array of visible lines, including buffer for smooth scrolling */\nconst visibleLines = computed(() => {\n const buffer = 10\n const start = Math.max(0, visibleStartIndex.value - buffer)\n const end = Math.min(lines.value.length, visibleEndIndex.value + buffer)\n\n return lines.value.slice(start, end)\n})\n\n/** Style object for the content container, controls \"scrolling\" */\nconst contentStyle = computed(() => ({\n height: `${totalHeight.value}px`,\n transform: `translateY(${Math.max(0, visibleStartIndex.value - 10) * props.lineHeight}px)`,\n}))\n\n/** Updates the scroll position when the container is scrolled */\nconst handleScroll = () =>\n containerRef.value && (scrollPosition.value = containerRef.value.scrollTop)\n\n/** Updates the container height when the window is resized */\nconst updateContainerHeight = () =>\n containerRef.value &&\n (containerHeight.value = containerRef.value.clientHeight)\n\nonMounted(() => {\n updateContainerHeight()\n window.addEventListener('resize', updateContainerHeight)\n})\n\nonBeforeUnmount(() => {\n window.removeEventListener('resize', updateContainerHeight)\n})\n\nwatchEffect(() => {\n if (!contentRef.value) {\n return\n }\n\n contentRef.value.style.transform = `translateY(${Math.max(0, visibleStartIndex.value - 10) * props.lineHeight}px)`\n})\n</script>\n\n<template>\n <div\n ref=\"containerRef\"\n class=\"scalar-virtual-text overflow-auto\"\n :class=\"containerClass\"\n @scroll=\"handleScroll\">\n <code\n ref=\"contentRef\"\n class=\"scalar-virtual-text-content\"\n :class=\"contentClass\"\n :style=\"contentStyle\">\n <div\n v-for=\"(line, index) in visibleLines\"\n :key=\"visibleStartIndex + index\"\n class=\"scalar-virtual-text-line\"\n :class=\"lineClass\"\n :style=\"{\n height: `${props.lineHeight}px`,\n lineHeight: `${props.lineHeight}px`,\n }\">\n {{ line }}\n </div>\n </code>\n </div>\n</template>\n"],"mappings":""}
@@ -1,5 +1,4 @@
1
1
  import { Fragment, computed, createElementBlock, createElementVNode, defineComponent, normalizeClass, normalizeStyle, onBeforeUnmount, onMounted, openBlock, ref, renderList, toDisplayString, watchEffect } from "vue";
2
- //#region src/components/ScalarVirtualText/ScalarVirtualText.vue?vue&type=script&setup=true&lang.ts
3
2
  var ScalarVirtualText_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
4
3
  __name: "ScalarVirtualText",
5
4
  props: {
@@ -1 +1 @@
1
- {"version":3,"file":"ScalarVirtualText.vue.script.js","names":[],"sources":["../../../src/components/ScalarVirtualText/ScalarVirtualText.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, onBeforeUnmount, onMounted, ref, watchEffect } from 'vue'\n\nconst props = withDefaults(\n defineProps<{\n /** Text to display */\n text: string\n /**\n * Height of each line\n * @default 20\n */\n lineHeight?: number\n containerClass?: string\n contentClass?: string\n lineClass?: string\n }>(),\n {\n lineHeight: 20,\n containerClass: '',\n contentClass: '',\n lineClass: '',\n },\n)\n\nconst containerRef = ref<HTMLElement | null>(null)\nconst contentRef = ref<HTMLElement | null>(null)\nconst scrollPosition = ref(0)\nconst containerHeight = ref(0)\n\n/** Array of text broken into lines */\nconst lines = computed(() => props.text.split('\\n'))\n/**\n * Total height of all lines combined\n *\n * TODO: there is a problem with this calculation which screws up the scrollbar a bit\n */\nconst totalHeight = computed(() => lines.value.length * props.lineHeight)\n\n/** Index of the first visible line */\nconst visibleStartIndex = computed(() =>\n Math.floor(scrollPosition.value / props.lineHeight),\n)\n\n/** Index of the last visible line */\nconst visibleEndIndex = computed(() =>\n Math.min(\n Math.ceil(\n (scrollPosition.value + containerHeight.value) / props.lineHeight,\n ),\n lines.value.length,\n ),\n)\n\n/** Array of visible lines, including buffer for smooth scrolling */\nconst visibleLines = computed(() => {\n const buffer = 10\n const start = Math.max(0, visibleStartIndex.value - buffer)\n const end = Math.min(lines.value.length, visibleEndIndex.value + buffer)\n\n return lines.value.slice(start, end)\n})\n\n/** Style object for the content container, controls \"scrolling\" */\nconst contentStyle = computed(() => ({\n height: `${totalHeight.value}px`,\n transform: `translateY(${Math.max(0, visibleStartIndex.value - 10) * props.lineHeight}px)`,\n}))\n\n/** Updates the scroll position when the container is scrolled */\nconst handleScroll = () =>\n containerRef.value && (scrollPosition.value = containerRef.value.scrollTop)\n\n/** Updates the container height when the window is resized */\nconst updateContainerHeight = () =>\n containerRef.value &&\n (containerHeight.value = containerRef.value.clientHeight)\n\nonMounted(() => {\n updateContainerHeight()\n window.addEventListener('resize', updateContainerHeight)\n})\n\nonBeforeUnmount(() => {\n window.removeEventListener('resize', updateContainerHeight)\n})\n\nwatchEffect(() => {\n if (!contentRef.value) {\n return\n }\n\n contentRef.value.style.transform = `translateY(${Math.max(0, visibleStartIndex.value - 10) * props.lineHeight}px)`\n})\n</script>\n\n<template>\n <div\n ref=\"containerRef\"\n class=\"scalar-virtual-text overflow-auto\"\n :class=\"containerClass\"\n @scroll=\"handleScroll\">\n <code\n ref=\"contentRef\"\n class=\"scalar-virtual-text-content\"\n :class=\"contentClass\"\n :style=\"contentStyle\">\n <div\n v-for=\"(line, index) in visibleLines\"\n :key=\"visibleStartIndex + index\"\n class=\"scalar-virtual-text-line\"\n :class=\"lineClass\"\n :style=\"{\n height: `${props.lineHeight}px`,\n lineHeight: `${props.lineHeight}px`,\n }\">\n {{ line }}\n </div>\n </code>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;EAGA,MAAM,QAAQ;EAqBd,MAAM,eAAe,IAAwB,KAAI;EACjD,MAAM,aAAa,IAAwB,KAAI;EAC/C,MAAM,iBAAiB,IAAI,EAAC;EAC5B,MAAM,kBAAkB,IAAI,EAAC;;EAG7B,MAAM,QAAQ,eAAe,MAAM,KAAK,MAAM,KAAK,CAAA;;;;;;EAMnD,MAAM,cAAc,eAAe,MAAM,MAAM,SAAS,MAAM,WAAU;;EAGxE,MAAM,oBAAoB,eACxB,KAAK,MAAM,eAAe,QAAQ,MAAM,WAAW,CACrD;;EAGA,MAAM,kBAAkB,eACtB,KAAK,IACH,KAAK,MACF,eAAe,QAAQ,gBAAgB,SAAS,MAAM,WACxD,EACD,MAAM,MAAM,OACb,CACH;;EAGA,MAAM,eAAe,eAAe;GAClC,MAAM,SAAS;GACf,MAAM,QAAQ,KAAK,IAAI,GAAG,kBAAkB,QAAQ,OAAM;GAC1D,MAAM,MAAM,KAAK,IAAI,MAAM,MAAM,QAAQ,gBAAgB,QAAQ,OAAM;AAEvE,UAAO,MAAM,MAAM,MAAM,OAAO,IAAG;IACpC;;EAGD,MAAM,eAAe,gBAAgB;GACnC,QAAQ,GAAG,YAAY,MAAM;GAC7B,WAAW,cAAc,KAAK,IAAI,GAAG,kBAAkB,QAAQ,GAAG,GAAG,MAAM,WAAW;GACvF,EAAC;;EAGF,MAAM,qBACJ,aAAa,UAAU,eAAe,QAAQ,aAAa,MAAM;;EAGnE,MAAM,8BACJ,aAAa,UACZ,gBAAgB,QAAQ,aAAa,MAAM;AAE9C,kBAAgB;AACd,0BAAsB;AACtB,UAAO,iBAAiB,UAAU,sBAAqB;IACxD;AAED,wBAAsB;AACpB,UAAO,oBAAoB,UAAU,sBAAqB;IAC3D;AAED,oBAAkB;AAChB,OAAI,CAAC,WAAW,MACd;AAGF,cAAW,MAAM,MAAM,YAAY,cAAc,KAAK,IAAI,GAAG,kBAAkB,QAAQ,GAAG,GAAG,MAAM,WAAW;IAC/G;;uBAIC,mBAsBM,OAAA;aArBA;IAAJ,KAAI;IACJ,OAAK,eAAA,CAAC,qCACE,QAAA,eAAc,CAAA;IACrB,UAAQ;OACT,mBAgBO,QAAA;aAfD;IAAJ,KAAI;IACJ,OAAK,eAAA,CAAC,+BACE,QAAA,aAAY,CAAA;IACnB,OAAK,eAAE,aAAA,MAAY;yBACpB,mBAUM,UAAA,MAAA,WAToB,aAAA,QAAhB,MAAM,UAAK;wBADrB,mBAUM,OAAA;KARH,KAAK,kBAAA,QAAoB;KAC1B,OAAK,eAAA,CAAC,4BACE,QAAA,UAAS,CAAA;KAChB,OAAK,eAAA;iBAAyB,MAAM,WAAU;qBAA+B,MAAM,WAAU;;uBAI3F,KAAI,EAAA,EAAA"}
1
+ {"version":3,"file":"ScalarVirtualText.vue.script.js","names":[],"sources":["../../../src/components/ScalarVirtualText/ScalarVirtualText.vue"],"sourcesContent":["<script lang=\"ts\">\n/**\n * Scalar Virtual Text component\n *\n * Renders large blocks of text efficiently using virtualized scrolling.\n * Only the visible lines are rendered to the DOM.\n *\n * @example\n * <ScalarVirtualText text=\"line1\\nline2\\nline3\" :lineHeight=\"20\" />\n */\nexport default {}\n</script>\n<script setup lang=\"ts\">\nimport { computed, onBeforeUnmount, onMounted, ref, watchEffect } from 'vue'\n\nconst props = withDefaults(\n defineProps<{\n /** Text to display */\n text: string\n /**\n * Height of each line\n * @default 20\n */\n lineHeight?: number\n containerClass?: string\n contentClass?: string\n lineClass?: string\n }>(),\n {\n lineHeight: 20,\n containerClass: '',\n contentClass: '',\n lineClass: '',\n },\n)\n\nconst containerRef = ref<HTMLElement | null>(null)\nconst contentRef = ref<HTMLElement | null>(null)\nconst scrollPosition = ref(0)\nconst containerHeight = ref(0)\n\n/** Array of text broken into lines */\nconst lines = computed(() => props.text.split('\\n'))\n/**\n * Total height of all lines combined\n *\n * TODO: there is a problem with this calculation which screws up the scrollbar a bit\n */\nconst totalHeight = computed(() => lines.value.length * props.lineHeight)\n\n/** Index of the first visible line */\nconst visibleStartIndex = computed(() =>\n Math.floor(scrollPosition.value / props.lineHeight),\n)\n\n/** Index of the last visible line */\nconst visibleEndIndex = computed(() =>\n Math.min(\n Math.ceil(\n (scrollPosition.value + containerHeight.value) / props.lineHeight,\n ),\n lines.value.length,\n ),\n)\n\n/** Array of visible lines, including buffer for smooth scrolling */\nconst visibleLines = computed(() => {\n const buffer = 10\n const start = Math.max(0, visibleStartIndex.value - buffer)\n const end = Math.min(lines.value.length, visibleEndIndex.value + buffer)\n\n return lines.value.slice(start, end)\n})\n\n/** Style object for the content container, controls \"scrolling\" */\nconst contentStyle = computed(() => ({\n height: `${totalHeight.value}px`,\n transform: `translateY(${Math.max(0, visibleStartIndex.value - 10) * props.lineHeight}px)`,\n}))\n\n/** Updates the scroll position when the container is scrolled */\nconst handleScroll = () =>\n containerRef.value && (scrollPosition.value = containerRef.value.scrollTop)\n\n/** Updates the container height when the window is resized */\nconst updateContainerHeight = () =>\n containerRef.value &&\n (containerHeight.value = containerRef.value.clientHeight)\n\nonMounted(() => {\n updateContainerHeight()\n window.addEventListener('resize', updateContainerHeight)\n})\n\nonBeforeUnmount(() => {\n window.removeEventListener('resize', updateContainerHeight)\n})\n\nwatchEffect(() => {\n if (!contentRef.value) {\n return\n }\n\n contentRef.value.style.transform = `translateY(${Math.max(0, visibleStartIndex.value - 10) * props.lineHeight}px)`\n})\n</script>\n\n<template>\n <div\n ref=\"containerRef\"\n class=\"scalar-virtual-text overflow-auto\"\n :class=\"containerClass\"\n @scroll=\"handleScroll\">\n <code\n ref=\"contentRef\"\n class=\"scalar-virtual-text-content\"\n :class=\"contentClass\"\n :style=\"contentStyle\">\n <div\n v-for=\"(line, index) in visibleLines\"\n :key=\"visibleStartIndex + index\"\n class=\"scalar-virtual-text-line\"\n :class=\"lineClass\"\n :style=\"{\n height: `${props.lineHeight}px`,\n lineHeight: `${props.lineHeight}px`,\n }\">\n {{ line }}\n </div>\n </code>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;EAeA,MAAM,QAAQ;EAqBd,MAAM,eAAe,IAAwB,KAAI;EACjD,MAAM,aAAa,IAAwB,KAAI;EAC/C,MAAM,iBAAiB,IAAI,EAAC;EAC5B,MAAM,kBAAkB,IAAI,EAAC;;EAG7B,MAAM,QAAQ,eAAe,MAAM,KAAK,MAAM,KAAK,CAAA;;;;;;EAMnD,MAAM,cAAc,eAAe,MAAM,MAAM,SAAS,MAAM,WAAU;;EAGxE,MAAM,oBAAoB,eACxB,KAAK,MAAM,eAAe,QAAQ,MAAM,WAAW,CACrD;;EAGA,MAAM,kBAAkB,eACtB,KAAK,IACH,KAAK,MACF,eAAe,QAAQ,gBAAgB,SAAS,MAAM,WACxD,EACD,MAAM,MAAM,OACb,CACH;;EAGA,MAAM,eAAe,eAAe;GAClC,MAAM,SAAS;GACf,MAAM,QAAQ,KAAK,IAAI,GAAG,kBAAkB,QAAQ,OAAM;GAC1D,MAAM,MAAM,KAAK,IAAI,MAAM,MAAM,QAAQ,gBAAgB,QAAQ,OAAM;AAEvE,UAAO,MAAM,MAAM,MAAM,OAAO,IAAG;IACpC;;EAGD,MAAM,eAAe,gBAAgB;GACnC,QAAQ,GAAG,YAAY,MAAM;GAC7B,WAAW,cAAc,KAAK,IAAI,GAAG,kBAAkB,QAAQ,GAAG,GAAG,MAAM,WAAW;GACvF,EAAC;;EAGF,MAAM,qBACJ,aAAa,UAAU,eAAe,QAAQ,aAAa,MAAM;;EAGnE,MAAM,8BACJ,aAAa,UACZ,gBAAgB,QAAQ,aAAa,MAAM;AAE9C,kBAAgB;AACd,0BAAsB;AACtB,UAAO,iBAAiB,UAAU,sBAAqB;IACxD;AAED,wBAAsB;AACpB,UAAO,oBAAoB,UAAU,sBAAqB;IAC3D;AAED,oBAAkB;AAChB,OAAI,CAAC,WAAW,MACd;AAGF,cAAW,MAAM,MAAM,YAAY,cAAc,KAAK,IAAI,GAAG,kBAAkB,QAAQ,GAAG,GAAG,MAAM,WAAW;IAC/G;;uBAIC,mBAsBM,OAAA;aArBA;IAAJ,KAAI;IACJ,OAAK,eAAA,CAAC,qCACE,QAAA,eAAc,CAAA;IACrB,UAAQ;OACT,mBAgBO,QAAA;aAfD;IAAJ,KAAI;IACJ,OAAK,eAAA,CAAC,+BACE,QAAA,aAAY,CAAA;IACnB,OAAK,eAAE,aAAA,MAAY;yBACpB,mBAUM,UAAA,MAAA,WAToB,aAAA,QAAhB,MAAM,UAAK;wBADrB,mBAUM,OAAA;KARH,KAAK,kBAAA,QAAoB;KAC1B,OAAK,eAAA,CAAC,4BACE,QAAA,UAAS,CAAA;KAChB,OAAK,eAAA;iBAAyB,MAAM,WAAU;qBAA+B,MAAM,WAAU;;uBAI3F,KAAI,EAAA,EAAA"}
package/dist/index.d.ts CHANGED
@@ -1,39 +1,50 @@
1
1
  import './style.css';
2
2
  export { compose, cva, cx, tw, useBindCx } from '@scalar/use-hooks/useBindCx';
3
- /** biome-ignore-start lint/performance/noReExportAll: re-exports indexes */
4
- export * from './components/ScalarButton';
5
- export * from './components/ScalarCard';
6
- export * from './components/ScalarCheckboxInput';
7
- export * from './components/ScalarCodeBlock';
8
- export * from './components/ScalarColorModeToggle';
9
- export * from './components/ScalarCombobox';
10
- export * from './components/ScalarCopy';
11
- export * from './components/ScalarDropdown';
12
- export * from './components/ScalarErrorBoundary';
13
- export * from './components/ScalarFileUpload';
14
- export * from './components/ScalarFloating';
15
- export * from './components/ScalarForm';
16
- export * from './components/ScalarHeader';
17
- export * from './components/ScalarHotkey';
18
- export * from './components/ScalarIcon';
19
- export * from './components/ScalarIconButton';
20
- export * from './components/ScalarListbox';
21
- export * from './components/ScalarLoading';
22
- export * from './components/ScalarMarkdown';
23
- export * from './components/ScalarMenu';
24
- export * from './components/ScalarModal';
25
- export * from './components/ScalarPopover';
26
- export * from './components/ScalarSearchInput';
27
- export * from './components/ScalarSearchResults';
28
- export * from './components/ScalarSidebar';
29
- export * from './components/ScalarTeleport';
30
- export * from './components/ScalarTextArea';
31
- export * from './components/ScalarTextInput';
32
- export * from './components/ScalarThemeSwatches';
33
- export * from './components/ScalarToggle';
34
- export * from './components/ScalarTooltip';
35
- export * from './components/ScalarVirtualText';
36
- export * from './components/ScalarWrappingText';
37
- export * from './helpers';
38
- /** biome-ignore-end lint/performance/noReExportAll: re-exports indexes */
3
+ export type { ScalarButtonSize, ScalarButtonVariant } from './components/ScalarButton';
4
+ export { ScalarButton } from './components/ScalarButton';
5
+ export { ScalarCard, ScalarCardFooter, ScalarCardHeader, ScalarCardSection } from './components/ScalarCard';
6
+ export type { ScalarCheckboxOption, ScalarCheckboxType } from './components/ScalarCheckboxInput';
7
+ export { ScalarCheckbox, ScalarCheckboxGroup, ScalarCheckboxInput, ScalarCheckboxRadioGroup, } from './components/ScalarCheckboxInput';
8
+ export { ScalarCodeBlock, ScalarCodeBlockCopy } from './components/ScalarCodeBlock';
9
+ export { ScalarColorModeToggle, ScalarColorModeToggleButton, ScalarColorModeToggleIcon, } from './components/ScalarColorModeToggle';
10
+ export type { ScalarComboboxFilterFunction, ScalarComboboxOption, ScalarComboboxOptionGroup, ScalarComboboxOptionsOrGroups, } from './components/ScalarCombobox';
11
+ export { ScalarCombobox, ScalarComboboxMultiselect, isScalarComboboxGroups } from './components/ScalarCombobox';
12
+ export { ScalarCopy, ScalarCopyBackdrop, ScalarCopyButton } from './components/ScalarCopy';
13
+ export { ScalarDropdown, ScalarDropdownButton, ScalarDropdownDivider, ScalarDropdownItem, ScalarDropdownMenu, } from './components/ScalarDropdown';
14
+ export { ScalarErrorBoundary } from './components/ScalarErrorBoundary';
15
+ export { ScalarFileUpload, ScalarFileUploadDropTarget, ScalarFileUploadError, ScalarFileUploadFileList, ScalarFileUploadInput, ScalarFileUploadInputCompact, ScalarFileUploadLoading, } from './components/ScalarFileUpload';
16
+ export type { ScalarFloatingOptions } from './components/ScalarFloating';
17
+ export { ScalarFloating, ScalarFloatingBackdrop } from './components/ScalarFloating';
18
+ export { ScalarForm, ScalarFormError, ScalarFormField, ScalarFormInput, ScalarFormInputGroup, ScalarFormSection, } from './components/ScalarForm';
19
+ export { ScalarHeader, ScalarHeaderButton } from './components/ScalarHeader';
20
+ export type { ScalarHotkeyModifier } from './components/ScalarHotkey';
21
+ export { ScalarHotkey, formatHotkeySymbols } from './components/ScalarHotkey';
22
+ export type { Icon } from './components/ScalarIcon';
23
+ export { ScalarIcon, ScalarIconLegacyAdapter } from './components/ScalarIcon';
24
+ export { ScalarIconButton } from './components/ScalarIconButton';
25
+ export type { ScalarListboxOption } from './components/ScalarListbox';
26
+ export { ScalarListbox, ScalarListboxCheckbox, ScalarListboxInput, ScalarListboxItem } from './components/ScalarListbox';
27
+ export type { LoadingState } from './components/ScalarLoading';
28
+ export { ScalarLoading, useLoadingState } from './components/ScalarLoading';
29
+ export { ScalarMarkdown, ScalarMarkdownSummary } from './components/ScalarMarkdown';
30
+ export type { ScalarMenuTeamOption, WorkspaceGroup } from './components/ScalarMenu';
31
+ export { ScalarMenu, ScalarMenuButton, ScalarMenuLink, ScalarMenuProduct, ScalarMenuProducts, ScalarMenuResources, ScalarMenuSection, ScalarMenuSupport, ScalarMenuTeamPicker, ScalarMenuTeamProfile, ScalarMenuWorkspacePicker, } from './components/ScalarMenu';
32
+ export type { ModalState } from './components/ScalarModal';
33
+ export { ScalarModal, useModal } from './components/ScalarModal';
34
+ export type { ScalarPopoverSlots } from './components/ScalarPopover';
35
+ export { ScalarPopover } from './components/ScalarPopover';
36
+ export { ScalarSavePrompt } from './components/ScalarSavePrompt';
37
+ export { ScalarSearchInput } from './components/ScalarSearchInput';
38
+ export { ScalarSearchResultItem, ScalarSearchResultList } from './components/ScalarSearchResults';
39
+ export { ScalarSidebar, ScalarSidebarButton, ScalarSidebarFooter, ScalarSidebarGroup, ScalarSidebarGroupToggle, ScalarSidebarIndent, ScalarSidebarItem, ScalarSidebarItems, ScalarSidebarNestedItems, ScalarSidebarSearchButton, ScalarSidebarSearchInput, ScalarSidebarSection, ScalarSidebarSpacer, } from './components/ScalarSidebar';
40
+ export { ScalarTeleport, ScalarTeleportRoot, TELEPORT_SYMBOL, useProvideTeleport, useTeleport, } from './components/ScalarTeleport';
41
+ export { ScalarTextArea } from './components/ScalarTextArea';
42
+ export { ScalarTextInput, ScalarTextInputCopy } from './components/ScalarTextInput';
43
+ export { ScalarThemeSwatches, useThemeSwatches } from './components/ScalarThemeSwatches';
44
+ export { ScalarToggle, ScalarToggleGroup, ScalarToggleInput } from './components/ScalarToggle';
45
+ export type { ScalarTooltipPlacement, TooltipConfiguration } from './components/ScalarTooltip';
46
+ export { ScalarHotkeyTooltip, ScalarTooltip, useTooltip } from './components/ScalarTooltip';
47
+ export { ScalarVirtualText } from './components/ScalarVirtualText';
48
+ export { ScalarWrappingText } from './components/ScalarWrappingText';
49
+ export { addScalarClassesToHeadless } from './helpers';
39
50
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAA;AAEpB,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAE7E,4EAA4E;AAC5E,cAAc,2BAA2B,CAAA;AACzC,cAAc,yBAAyB,CAAA;AACvC,cAAc,kCAAkC,CAAA;AAChD,cAAc,8BAA8B,CAAA;AAC5C,cAAc,oCAAoC,CAAA;AAClD,cAAc,6BAA6B,CAAA;AAC3C,cAAc,yBAAyB,CAAA;AACvC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,kCAAkC,CAAA;AAChD,cAAc,+BAA+B,CAAA;AAC7C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,yBAAyB,CAAA;AACvC,cAAc,2BAA2B,CAAA;AACzC,cAAc,2BAA2B,CAAA;AACzC,cAAc,yBAAyB,CAAA;AACvC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,yBAAyB,CAAA;AACvC,cAAc,0BAA0B,CAAA;AACxC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,kCAAkC,CAAA;AAChD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,kCAAkC,CAAA;AAChD,cAAc,2BAA2B,CAAA;AACzC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,iCAAiC,CAAA;AAC/C,cAAc,WAAW,CAAA;AACzB,0EAA0E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -75,6 +75,7 @@ import ScalarMenuWorkspacePicker_default from "./components/ScalarMenu/ScalarMen
75
75
  import { useModal } from "./components/ScalarModal/ScalarModal.vue.script.js";
76
76
  import ScalarModal_default from "./components/ScalarModal/ScalarModal.vue.js";
77
77
  import ScalarPopover_default from "./components/ScalarPopover/ScalarPopover.vue.js";
78
+ import ScalarSavePrompt_default from "./components/ScalarSavePrompt/ScalarSavePrompt.vue.js";
78
79
  import ScalarSearchInput_default from "./components/ScalarSearchInput/ScalarSearchInput.vue.js";
79
80
  import ScalarSearchResultItem_default from "./components/ScalarSearchResults/ScalarSearchResultItem.vue.js";
80
81
  import ScalarSearchResultList_default from "./components/ScalarSearchResults/ScalarSearchResultList.vue.js";
@@ -103,9 +104,4 @@ import ScalarVirtualText_default from "./components/ScalarVirtualText/ScalarVirt
103
104
  import ScalarWrappingText_default from "./components/ScalarWrappingText/ScalarWrappingText.vue.js";
104
105
  import { addScalarClassesToHeadless } from "./helpers/add-scalar-classes.js";
105
106
  import { compose, cva, cx, tw, useBindCx } from "@scalar/use-hooks/useBindCx";
106
- //#region src/index.ts
107
- /** biome-ignore-end lint/performance/noReExportAll: re-exports indexes */
108
- //#endregion
109
- export { ScalarButton_default as ScalarButton, ScalarCard_default as ScalarCard, ScalarCardFooter_default as ScalarCardFooter, ScalarCardHeader_default as ScalarCardHeader, ScalarCardSection_default as ScalarCardSection, ScalarCheckbox_default as ScalarCheckbox, ScalarCheckboxGroup_default as ScalarCheckboxGroup, ScalarCheckboxInput_default as ScalarCheckboxInput, ScalarCheckboxRadioGroup_default as ScalarCheckboxRadioGroup, ScalarCodeBlock_default as ScalarCodeBlock, ScalarCodeBlockCopy_default as ScalarCodeBlockCopy, ScalarColorModeToggle_default as ScalarColorModeToggle, ScalarColorModeToggleButton_default as ScalarColorModeToggleButton, ScalarColorModeToggleIcon_default as ScalarColorModeToggleIcon, ScalarCombobox_default as ScalarCombobox, ScalarComboboxMultiselect_default as ScalarComboboxMultiselect, ScalarCopy_default as ScalarCopy, ScalarCopyBackdrop_default as ScalarCopyBackdrop, ScalarCopyButton_default as ScalarCopyButton, ScalarDropdown_default as ScalarDropdown, ScalarDropdownButton_default as ScalarDropdownButton, ScalarDropdownDivider_default as ScalarDropdownDivider, ScalarDropdownItem_default as ScalarDropdownItem, ScalarDropdownMenu_default as ScalarDropdownMenu, ScalarErrorBoundary_default as ScalarErrorBoundary, ScalarFileUpload_default as ScalarFileUpload, ScalarFileUploadDropTarget_default as ScalarFileUploadDropTarget, ScalarFileUploadError_default as ScalarFileUploadError, ScalarFileUploadFileList_default as ScalarFileUploadFileList, ScalarFileUploadInput_default as ScalarFileUploadInput, ScalarFileUploadInputCompact_default as ScalarFileUploadInputCompact, ScalarFileUploadLoading_default as ScalarFileUploadLoading, ScalarFloating_default as ScalarFloating, ScalarFloatingBackdrop_default as ScalarFloatingBackdrop, ScalarForm_default as ScalarForm, ScalarFormError_default as ScalarFormError, ScalarFormField_default as ScalarFormField, ScalarFormInput_default as ScalarFormInput, ScalarFormInputGroup_default as ScalarFormInputGroup, ScalarFormSection_default as ScalarFormSection, ScalarHeader_default as ScalarHeader, ScalarHeaderButton_default as ScalarHeaderButton, ScalarHotkey_default as ScalarHotkey, ScalarHotkeyTooltip_default as ScalarHotkeyTooltip, ScalarIcon_default as ScalarIcon, ScalarIconButton_default as ScalarIconButton, ScalarIconLegacyAdapter_default as ScalarIconLegacyAdapter, ScalarListbox_default as ScalarListbox, ScalarListboxCheckbox_default as ScalarListboxCheckbox, ScalarListboxInput_default as ScalarListboxInput, ScalarListboxItem_default as ScalarListboxItem, ScalarLoading_default as ScalarLoading, ScalarMarkdown_default as ScalarMarkdown, ScalarMarkdownSummary_default as ScalarMarkdownSummary, ScalarMenu_default as ScalarMenu, ScalarMenuButton_default as ScalarMenuButton, ScalarMenuLink_default as ScalarMenuLink, ScalarMenuProduct_default as ScalarMenuProduct, ScalarMenuProducts_default as ScalarMenuProducts, ScalarMenuResources_default as ScalarMenuResources, ScalarMenuSection_default as ScalarMenuSection, ScalarMenuSupport_default as ScalarMenuSupport, ScalarMenuTeamPicker_default as ScalarMenuTeamPicker, ScalarMenuTeamProfile_default as ScalarMenuTeamProfile, ScalarMenuWorkspacePicker_default as ScalarMenuWorkspacePicker, ScalarModal_default as ScalarModal, ScalarPopover_default as ScalarPopover, ScalarSearchInput_default as ScalarSearchInput, ScalarSearchResultItem_default as ScalarSearchResultItem, ScalarSearchResultList_default as ScalarSearchResultList, ScalarSidebar_default as ScalarSidebar, ScalarSidebarButton_default as ScalarSidebarButton, ScalarSidebarFooter_default as ScalarSidebarFooter, ScalarSidebarGroup_default as ScalarSidebarGroup, ScalarSidebarGroupToggle_default as ScalarSidebarGroupToggle, ScalarSidebarIndent_default as ScalarSidebarIndent, ScalarSidebarItem_default as ScalarSidebarItem, ScalarSidebarItems_default as ScalarSidebarItems, ScalarSidebarNestedItems_default as ScalarSidebarNestedItems, ScalarSidebarSearchButton_default as ScalarSidebarSearchButton, ScalarSidebarSearchInput_default as ScalarSidebarSearchInput, ScalarSidebarSection_default as ScalarSidebarSection, ScalarSidebarSpacer_default as ScalarSidebarSpacer, ScalarTeleport_default as ScalarTeleport, ScalarTeleportRoot_default as ScalarTeleportRoot, ScalarTextArea_default as ScalarTextArea, ScalarTextInput_default as ScalarTextInput, ScalarTextInputCopy_default as ScalarTextInputCopy, ScalarThemeSwatches_default as ScalarThemeSwatches, ScalarToggle_default as ScalarToggle, ScalarToggleGroup_default as ScalarToggleGroup, ScalarToggleInput_default as ScalarToggleInput, ScalarTooltip_default as ScalarTooltip, ScalarVirtualText_default as ScalarVirtualText, ScalarWrappingText_default as ScalarWrappingText, TELEPORT_SYMBOL, addScalarClassesToHeadless, compose, cva, cx, formatHotkeySymbols, isGroups as isScalarComboboxGroups, tw, useBindCx, useLoadingState, useModal, useProvideTeleport, useTeleport, useThemeSwatches, useTooltip };
110
-
111
- //# sourceMappingURL=index.js.map
107
+ export { ScalarButton_default as ScalarButton, ScalarCard_default as ScalarCard, ScalarCardFooter_default as ScalarCardFooter, ScalarCardHeader_default as ScalarCardHeader, ScalarCardSection_default as ScalarCardSection, ScalarCheckbox_default as ScalarCheckbox, ScalarCheckboxGroup_default as ScalarCheckboxGroup, ScalarCheckboxInput_default as ScalarCheckboxInput, ScalarCheckboxRadioGroup_default as ScalarCheckboxRadioGroup, ScalarCodeBlock_default as ScalarCodeBlock, ScalarCodeBlockCopy_default as ScalarCodeBlockCopy, ScalarColorModeToggle_default as ScalarColorModeToggle, ScalarColorModeToggleButton_default as ScalarColorModeToggleButton, ScalarColorModeToggleIcon_default as ScalarColorModeToggleIcon, ScalarCombobox_default as ScalarCombobox, ScalarComboboxMultiselect_default as ScalarComboboxMultiselect, ScalarCopy_default as ScalarCopy, ScalarCopyBackdrop_default as ScalarCopyBackdrop, ScalarCopyButton_default as ScalarCopyButton, ScalarDropdown_default as ScalarDropdown, ScalarDropdownButton_default as ScalarDropdownButton, ScalarDropdownDivider_default as ScalarDropdownDivider, ScalarDropdownItem_default as ScalarDropdownItem, ScalarDropdownMenu_default as ScalarDropdownMenu, ScalarErrorBoundary_default as ScalarErrorBoundary, ScalarFileUpload_default as ScalarFileUpload, ScalarFileUploadDropTarget_default as ScalarFileUploadDropTarget, ScalarFileUploadError_default as ScalarFileUploadError, ScalarFileUploadFileList_default as ScalarFileUploadFileList, ScalarFileUploadInput_default as ScalarFileUploadInput, ScalarFileUploadInputCompact_default as ScalarFileUploadInputCompact, ScalarFileUploadLoading_default as ScalarFileUploadLoading, ScalarFloating_default as ScalarFloating, ScalarFloatingBackdrop_default as ScalarFloatingBackdrop, ScalarForm_default as ScalarForm, ScalarFormError_default as ScalarFormError, ScalarFormField_default as ScalarFormField, ScalarFormInput_default as ScalarFormInput, ScalarFormInputGroup_default as ScalarFormInputGroup, ScalarFormSection_default as ScalarFormSection, ScalarHeader_default as ScalarHeader, ScalarHeaderButton_default as ScalarHeaderButton, ScalarHotkey_default as ScalarHotkey, ScalarHotkeyTooltip_default as ScalarHotkeyTooltip, ScalarIcon_default as ScalarIcon, ScalarIconButton_default as ScalarIconButton, ScalarIconLegacyAdapter_default as ScalarIconLegacyAdapter, ScalarListbox_default as ScalarListbox, ScalarListboxCheckbox_default as ScalarListboxCheckbox, ScalarListboxInput_default as ScalarListboxInput, ScalarListboxItem_default as ScalarListboxItem, ScalarLoading_default as ScalarLoading, ScalarMarkdown_default as ScalarMarkdown, ScalarMarkdownSummary_default as ScalarMarkdownSummary, ScalarMenu_default as ScalarMenu, ScalarMenuButton_default as ScalarMenuButton, ScalarMenuLink_default as ScalarMenuLink, ScalarMenuProduct_default as ScalarMenuProduct, ScalarMenuProducts_default as ScalarMenuProducts, ScalarMenuResources_default as ScalarMenuResources, ScalarMenuSection_default as ScalarMenuSection, ScalarMenuSupport_default as ScalarMenuSupport, ScalarMenuTeamPicker_default as ScalarMenuTeamPicker, ScalarMenuTeamProfile_default as ScalarMenuTeamProfile, ScalarMenuWorkspacePicker_default as ScalarMenuWorkspacePicker, ScalarModal_default as ScalarModal, ScalarPopover_default as ScalarPopover, ScalarSavePrompt_default as ScalarSavePrompt, ScalarSearchInput_default as ScalarSearchInput, ScalarSearchResultItem_default as ScalarSearchResultItem, ScalarSearchResultList_default as ScalarSearchResultList, ScalarSidebar_default as ScalarSidebar, ScalarSidebarButton_default as ScalarSidebarButton, ScalarSidebarFooter_default as ScalarSidebarFooter, ScalarSidebarGroup_default as ScalarSidebarGroup, ScalarSidebarGroupToggle_default as ScalarSidebarGroupToggle, ScalarSidebarIndent_default as ScalarSidebarIndent, ScalarSidebarItem_default as ScalarSidebarItem, ScalarSidebarItems_default as ScalarSidebarItems, ScalarSidebarNestedItems_default as ScalarSidebarNestedItems, ScalarSidebarSearchButton_default as ScalarSidebarSearchButton, ScalarSidebarSearchInput_default as ScalarSidebarSearchInput, ScalarSidebarSection_default as ScalarSidebarSection, ScalarSidebarSpacer_default as ScalarSidebarSpacer, ScalarTeleport_default as ScalarTeleport, ScalarTeleportRoot_default as ScalarTeleportRoot, ScalarTextArea_default as ScalarTextArea, ScalarTextInput_default as ScalarTextInput, ScalarTextInputCopy_default as ScalarTextInputCopy, ScalarThemeSwatches_default as ScalarThemeSwatches, ScalarToggle_default as ScalarToggle, ScalarToggleGroup_default as ScalarToggleGroup, ScalarToggleInput_default as ScalarToggleInput, ScalarTooltip_default as ScalarTooltip, ScalarVirtualText_default as ScalarVirtualText, ScalarWrappingText_default as ScalarWrappingText, TELEPORT_SYMBOL, addScalarClassesToHeadless, compose, cva, cx, formatHotkeySymbols, isGroups as isScalarComboboxGroups, tw, useBindCx, useLoadingState, useModal, useProvideTeleport, useTeleport, useThemeSwatches, useTooltip };
package/dist/style.css CHANGED
@@ -1005,19 +1005,19 @@ img,
1005
1005
  }
1006
1006
  }
1007
1007
  /*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
1008
- .scalar-modal-layout[data-v-c36b47da] {
1009
- animation: .3s ease-in-out forwards fadein-layout-c36b47da;
1008
+ .scalar-modal-layout[data-v-5bb1dcc2] {
1009
+ animation: .3s ease-in-out forwards fadein-layout-5bb1dcc2;
1010
1010
  }
1011
- .scalar-modal[data-v-c36b47da] {
1011
+ .scalar-modal[data-v-5bb1dcc2] {
1012
1012
  box-shadow: var(--scalar-shadow-2);
1013
- animation: .3s ease-in-out .1s forwards fadein-modal-c36b47da;
1013
+ animation: .3s ease-in-out .1s forwards fadein-modal-5bb1dcc2;
1014
1014
  transform: translate3d(0, 10px, 0);
1015
1015
  }
1016
- .scalar-modal-layout-full[data-v-c36b47da] {
1016
+ .scalar-modal-layout-full[data-v-5bb1dcc2] {
1017
1017
  opacity: 1 !important;
1018
1018
  background: none !important;
1019
1019
  }
1020
- .modal-content-search .modal-body[data-v-c36b47da] {
1020
+ .modal-content-search .modal-body[data-v-5bb1dcc2] {
1021
1021
  flex-direction: column;
1022
1022
  max-height: 440px;
1023
1023
  padding: 0;
@@ -1025,12 +1025,12 @@ img,
1025
1025
  overflow: hidden;
1026
1026
  }
1027
1027
  @media (max-width: 720px) and (max-height: 480px) {
1028
- .scalar-modal-layout .scalar-modal[data-v-c36b47da] {
1028
+ .scalar-modal-layout .scalar-modal[data-v-5bb1dcc2] {
1029
1029
  max-height: 90svh;
1030
1030
  margin-top: 5svh;
1031
1031
  }
1032
1032
  }
1033
- @keyframes fadein-layout-c36b47da {
1033
+ @keyframes fadein-layout-5bb1dcc2 {
1034
1034
  0% {
1035
1035
  opacity: 0;
1036
1036
  }
@@ -1038,7 +1038,7 @@ img,
1038
1038
  opacity: 1;
1039
1039
  }
1040
1040
  }
1041
- @keyframes fadein-modal-c36b47da {
1041
+ @keyframes fadein-modal-5bb1dcc2 {
1042
1042
  0% {
1043
1043
  opacity: 0;
1044
1044
  transform: translate3d(0, 10px, 0);
@@ -1048,10 +1048,10 @@ img,
1048
1048
  transform: translate3d(0, 0, 0);
1049
1049
  }
1050
1050
  }
1051
- .full-size-styles[data-v-c36b47da] {
1051
+ .full-size-styles[data-v-5bb1dcc2] {
1052
1052
  margin: initial;
1053
1053
  border-right: var(--scalar-border-width) solid var(--scalar-border-color);
1054
- animation: .3s ease-in-out forwards fadein-layout-c36b47da;
1054
+ animation: .3s ease-in-out forwards fadein-layout-5bb1dcc2;
1055
1055
  left: 0;
1056
1056
  transform: translate3d(0, 0, 0);
1057
1057
  background-color: var(--scalar-background-1) !important;
@@ -1062,11 +1062,11 @@ img,
1062
1062
  top: 0 !important;
1063
1063
  }
1064
1064
  @media (min-width: 800px) {
1065
- .full-size-styles[data-v-c36b47da] {
1065
+ .full-size-styles[data-v-5bb1dcc2] {
1066
1066
  width: 50dvw !important;
1067
1067
  }
1068
1068
  }
1069
- .full-size-styles[data-v-c36b47da]:after {
1069
+ .full-size-styles[data-v-5bb1dcc2]:after {
1070
1070
  content: "";
1071
1071
  width: 50dvw;
1072
1072
  height: 100dvh;
@@ -1998,10 +1998,18 @@ img,
1998
1998
  right: 10px;
1999
1999
  }
2000
2000
 
2001
+ .scalar-app .bottom-4 {
2002
+ bottom: 16px;
2003
+ }
2004
+
2001
2005
  .scalar-app .left-0 {
2002
2006
  left: 0;
2003
2007
  }
2004
2008
 
2009
+ .scalar-app .left-1\/2 {
2010
+ left: 50%;
2011
+ }
2012
+
2005
2013
  .scalar-app .left-2 {
2006
2014
  left: 8px;
2007
2015
  }
@@ -2119,6 +2127,10 @@ img,
2119
2127
  margin: -6px;
2120
2128
  }
2121
2129
 
2130
+ .scalar-app .-m-2 {
2131
+ margin: -8px;
2132
+ }
2133
+
2122
2134
  .scalar-app .-m-px {
2123
2135
  margin: -1px;
2124
2136
  }
@@ -2318,11 +2330,6 @@ img,
2318
2330
  height: 14px;
2319
2331
  }
2320
2332
 
2321
- .scalar-app .size-3\.25 {
2322
- width: 13px;
2323
- height: 13px;
2324
- }
2325
-
2326
2333
  .scalar-app .size-4 {
2327
2334
  width: 16px;
2328
2335
  height: 16px;
@@ -2539,6 +2546,10 @@ img,
2539
2546
  width: var(--scalar-border-width);
2540
2547
  }
2541
2548
 
2549
+ .scalar-app .w-content {
2550
+ width: 720px;
2551
+ }
2552
+
2542
2553
  .scalar-app .w-dvw {
2543
2554
  width: 100dvw;
2544
2555
  }
@@ -2587,6 +2598,10 @@ img,
2587
2598
  max-width: inherit;
2588
2599
  }
2589
2600
 
2601
+ .scalar-app .max-w-screen-padded-4 {
2602
+ max-width: calc(100vw - 32px);
2603
+ }
2604
+
2590
2605
  .scalar-app .max-w-xs {
2591
2606
  max-width: 320px;
2592
2607
  }
@@ -2619,6 +2634,11 @@ img,
2619
2634
  flex-shrink: 0;
2620
2635
  }
2621
2636
 
2637
+ .scalar-app .-translate-x-1\/2 {
2638
+ --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
2639
+ translate: var(--tw-translate-x) var(--tw-translate-y);
2640
+ }
2641
+
2622
2642
  .scalar-app .-translate-x-full {
2623
2643
  --tw-translate-x: -100%;
2624
2644
  translate: var(--tw-translate-x) var(--tw-translate-y);
@@ -2664,6 +2684,11 @@ img,
2664
2684
  translate: var(--tw-translate-x) var(--tw-translate-y);
2665
2685
  }
2666
2686
 
2687
+ .scalar-app .translate-y-\[200\%\] {
2688
+ --tw-translate-y: 200%;
2689
+ translate: var(--tw-translate-x) var(--tw-translate-y);
2690
+ }
2691
+
2667
2692
  .scalar-app .scale-0 {
2668
2693
  --tw-scale-x: 0%;
2669
2694
  --tw-scale-y: 0%;
@@ -3619,6 +3644,11 @@ img,
3619
3644
  transition-duration: .3s;
3620
3645
  }
3621
3646
 
3647
+ .scalar-app .duration-400 {
3648
+ --tw-duration: .4s;
3649
+ transition-duration: .4s;
3650
+ }
3651
+
3622
3652
  .scalar-app .ease-in {
3623
3653
  --tw-ease: var(--ease-in);
3624
3654
  transition-timing-function: var(--ease-in);
@@ -3634,6 +3664,47 @@ img,
3634
3664
  transition-timing-function: var(--ease-out);
3635
3665
  }
3636
3666
 
3667
+ .scalar-app .ease-spring {
3668
+ --tw-ease: linear(0,
3669
+ .008 1.1%,
3670
+ .034 2.3%,
3671
+ .134 4.9%,
3672
+ .264 7.3%,
3673
+ .683 14.3%,
3674
+ .797 16.5%,
3675
+ .89 18.6%,
3676
+ .967 20.7%,
3677
+ 1.027 22.8%,
3678
+ 1.073 25%,
3679
+ 1.104 27.3%,
3680
+ 1.123 30.6%,
3681
+ 1.119 34.3%,
3682
+ 1.018 49.5%,
3683
+ .988 58.6%,
3684
+ .985 65.2%,
3685
+ 1 84.5%,
3686
+ 1);
3687
+ transition-timing-function: linear(0,
3688
+ .008 1.1%,
3689
+ .034 2.3%,
3690
+ .134 4.9%,
3691
+ .264 7.3%,
3692
+ .683 14.3%,
3693
+ .797 16.5%,
3694
+ .89 18.6%,
3695
+ .967 20.7%,
3696
+ 1.027 22.8%,
3697
+ 1.073 25%,
3698
+ 1.104 27.3%,
3699
+ 1.123 30.6%,
3700
+ 1.119 34.3%,
3701
+ 1.018 49.5%,
3702
+ .988 58.6%,
3703
+ .985 65.2%,
3704
+ 1 84.5%,
3705
+ 1);
3706
+ }
3707
+
3637
3708
  .scalar-app .outline-none {
3638
3709
  --tw-outline-style: none;
3639
3710
  outline-style: none;
package/package.json CHANGED
@@ -10,18 +10,19 @@
10
10
  "url": "git+https://github.com/scalar/scalar.git",
11
11
  "directory": "packages/components"
12
12
  },
13
- "version": "0.21.1",
13
+ "version": "0.21.3",
14
14
  "engines": {
15
15
  "node": ">=22"
16
16
  },
17
17
  "type": "module",
18
- "main": "./dist/index.cjs",
18
+ "main": "./dist/index.js",
19
19
  "module": "./dist/index.js",
20
20
  "types": "./dist/index.d.ts",
21
21
  "exports": {
22
22
  ".": {
23
23
  "import": "./dist/index.js",
24
- "require": "./dist/index.cjs"
24
+ "types": "./dist/index.d.ts",
25
+ "default": "./dist/index.js"
25
26
  },
26
27
  "./style.css": "./dist/style.css"
27
28
  },
@@ -35,15 +36,14 @@
35
36
  "@vueuse/core": "13.9.0",
36
37
  "cva": "1.0.0-beta.4",
37
38
  "nanoid": "^5.1.6",
38
- "pretty-bytes": "^7.1.0",
39
39
  "radix-vue": "^1.9.17",
40
- "vue": "^3.5.26",
40
+ "vue": "^3.5.30",
41
41
  "vue-component-type-helpers": "^3.2.2",
42
- "@scalar/code-highlight": "0.3.1",
43
- "@scalar/helpers": "0.4.2",
44
- "@scalar/icons": "0.7.0",
45
- "@scalar/use-hooks": "0.4.1",
46
- "@scalar/themes": "0.15.1"
42
+ "@scalar/code-highlight": "0.3.2",
43
+ "@scalar/icons": "0.7.2",
44
+ "@scalar/themes": "0.15.2",
45
+ "@scalar/use-hooks": "0.4.2",
46
+ "@scalar/helpers": "0.4.3"
47
47
  },
48
48
  "devDependencies": {
49
49
  "@headlessui/tailwindcss": "^0.2.2",
@@ -57,6 +57,7 @@
57
57
  "@vitejs/plugin-vue": "^6.0.3",
58
58
  "@vue/test-utils": "2.4.6",
59
59
  "@vueless/storybook-dark-mode": "^10.0.6",
60
+ "concurrently": "9.1.2",
60
61
  "jsdom": "27.4.0",
61
62
  "storybook": "10.2.19",
62
63
  "svglint": "^4.1.2",
@@ -68,6 +69,7 @@
68
69
  "scripts": {
69
70
  "build": "pnpm typegen:icons && vite build && vue-tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json",
70
71
  "build:storybook": "storybook build",
72
+ "build:watch": "concurrently \"vite build --watch\" \"vue-tsc --watch -p tsconfig.build.json\" \"tsc-alias -p tsconfig.build.json --watch\"",
71
73
  "clean:snapshots": "shx rm -rf \"**/snapshots\"",
72
74
  "dev": "storybook dev -p 5100 --ci",
73
75
  "lint:check": "pnpm lint:icons",
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../src/index.ts"],"sourcesContent":["import './style.css'\n\nexport { compose, cva, cx, tw, useBindCx } from '@scalar/use-hooks/useBindCx'\n\n/** biome-ignore-start lint/performance/noReExportAll: re-exports indexes */\nexport * from './components/ScalarButton'\nexport * from './components/ScalarCard'\nexport * from './components/ScalarCheckboxInput'\nexport * from './components/ScalarCodeBlock'\nexport * from './components/ScalarColorModeToggle'\nexport * from './components/ScalarCombobox'\nexport * from './components/ScalarCopy'\nexport * from './components/ScalarDropdown'\nexport * from './components/ScalarErrorBoundary'\nexport * from './components/ScalarFileUpload'\nexport * from './components/ScalarFloating'\nexport * from './components/ScalarForm'\nexport * from './components/ScalarHeader'\nexport * from './components/ScalarHotkey'\nexport * from './components/ScalarIcon'\nexport * from './components/ScalarIconButton'\nexport * from './components/ScalarListbox'\nexport * from './components/ScalarLoading'\nexport * from './components/ScalarMarkdown'\nexport * from './components/ScalarMenu'\nexport * from './components/ScalarModal'\nexport * from './components/ScalarPopover'\nexport * from './components/ScalarSearchInput'\nexport * from './components/ScalarSearchResults'\nexport * from './components/ScalarSidebar'\nexport * from './components/ScalarTeleport'\nexport * from './components/ScalarTextArea'\nexport * from './components/ScalarTextInput'\nexport * from './components/ScalarThemeSwatches'\nexport * from './components/ScalarToggle'\nexport * from './components/ScalarTooltip'\nexport * from './components/ScalarVirtualText'\nexport * from './components/ScalarWrappingText'\nexport * from './helpers'\n/** biome-ignore-end lint/performance/noReExportAll: re-exports indexes */\n"],"mappings":""}