@openreachtech/furo-vue 1.3.1

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 (310) hide show
  1. package/LICENSE +9 -0
  2. package/README.ja.md +334 -0
  3. package/README.md +333 -0
  4. package/index.js +11 -0
  5. package/lib/assets/css/furo/0010.variables-palette-color-scale.css +298 -0
  6. package/lib/assets/css/furo/0020.variables-z-index.css +10 -0
  7. package/lib/assets/css/furo/0030.variables-semantic-color.css +178 -0
  8. package/lib/assets/css/furo/0035.variables-semantic-dimension.css +104 -0
  9. package/lib/assets/css/furo/0040.variables-component-furo.css +28 -0
  10. package/lib/assets/css/furo/0050.furo-editor-content.css +22 -0
  11. package/lib/assets/css/furo.css +15 -0
  12. package/lib/components/atoms/FuroAvatar/FuroAvatar.vue +135 -0
  13. package/lib/components/atoms/FuroAvatar/FuroAvatarContext.js +147 -0
  14. package/lib/components/atoms/FuroBadge/FuroBadge.vue +240 -0
  15. package/lib/components/atoms/FuroBadge/FuroBadgeContext.js +298 -0
  16. package/lib/components/atoms/FuroButton/ButtonEmitPayload.js +44 -0
  17. package/lib/components/atoms/FuroButton/FuroButton.vue +301 -0
  18. package/lib/components/atoms/FuroButton/FuroButtonContext.js +328 -0
  19. package/lib/components/atoms/FuroCheckbox/CheckboxEmitPayload.js +106 -0
  20. package/lib/components/atoms/FuroCheckbox/FuroCheckbox.vue +173 -0
  21. package/lib/components/atoms/FuroCheckbox/FuroCheckboxContext.js +682 -0
  22. package/lib/components/atoms/FuroEmailField/EmailFieldEmitPayload.js +74 -0
  23. package/lib/components/atoms/FuroEmailField/FuroEmailField.vue +119 -0
  24. package/lib/components/atoms/FuroEmailField/FuroEmailFieldContext.js +311 -0
  25. package/lib/components/atoms/FuroFileField/FileFieldEmitPayload.js +80 -0
  26. package/lib/components/atoms/FuroFileField/FuroFileField.vue +128 -0
  27. package/lib/components/atoms/FuroFileField/FuroFileFieldContext.js +195 -0
  28. package/lib/components/atoms/FuroIcon/FuroIcon.vue +74 -0
  29. package/lib/components/atoms/FuroIcon/FuroIconContext.js +293 -0
  30. package/lib/components/atoms/FuroIcon/FuroIconRegistry.js +617 -0
  31. package/lib/components/atoms/FuroIcon/FuroIconifyRendererContext.js +101 -0
  32. package/lib/components/atoms/FuroIcon/furoIconData.js +164 -0
  33. package/lib/components/atoms/FuroIcon/iconRenderers.js +62 -0
  34. package/lib/components/atoms/FuroIcon/icons.js +7 -0
  35. package/lib/components/atoms/FuroNumberField/FuroNumberField.vue +213 -0
  36. package/lib/components/atoms/FuroNumberField/FuroNumberFieldContext.js +442 -0
  37. package/lib/components/atoms/FuroNumberField/NumberFieldEmitPayload.js +162 -0
  38. package/lib/components/atoms/FuroPasswordField/FuroPasswordField.vue +119 -0
  39. package/lib/components/atoms/FuroPasswordField/FuroPasswordFieldContext.js +311 -0
  40. package/lib/components/atoms/FuroPasswordField/PasswordFieldEmitPayload.js +74 -0
  41. package/lib/components/atoms/FuroRadio/FuroRadio.vue +193 -0
  42. package/lib/components/atoms/FuroRadio/FuroRadioContext.js +557 -0
  43. package/lib/components/atoms/FuroRadio/RadioEmitPayload.js +72 -0
  44. package/lib/components/atoms/FuroSwitch/FuroSwitch.vue +165 -0
  45. package/lib/components/atoms/FuroSwitch/FuroSwitchContext.js +440 -0
  46. package/lib/components/atoms/FuroSwitch/SwitchEmitPayload.js +86 -0
  47. package/lib/components/atoms/FuroTextField/FuroTextField.vue +119 -0
  48. package/lib/components/atoms/FuroTextField/FuroTextFieldContext.js +311 -0
  49. package/lib/components/atoms/FuroTextField/TextFieldEmitPayload.js +83 -0
  50. package/lib/components/atoms/FuroTextarea/FuroTextarea.vue +121 -0
  51. package/lib/components/atoms/FuroTextarea/FuroTextareaContext.js +322 -0
  52. package/lib/components/atoms/FuroTextarea/TextareaEmitPayload.js +83 -0
  53. package/lib/components/atoms/FuroToggle/FuroToggle.vue +172 -0
  54. package/lib/components/atoms/FuroToggle/FuroToggleContext.js +410 -0
  55. package/lib/components/atoms/FuroToggle/ToggleEmitPayload.js +86 -0
  56. package/lib/components/molecules/FuroAccordion/AccordionEmitPayload.js +80 -0
  57. package/lib/components/molecules/FuroAccordion/FuroAccordion.vue +219 -0
  58. package/lib/components/molecules/FuroAccordion/FuroAccordionContext.js +547 -0
  59. package/lib/components/molecules/FuroAttachment/FuroAttachment.vue +376 -0
  60. package/lib/components/molecules/FuroAttachment/FuroAttachmentContext.js +628 -0
  61. package/lib/components/molecules/FuroAutocompleteField/AutocompleteEmitPayload.js +225 -0
  62. package/lib/components/molecules/FuroAutocompleteField/FuroAutocompleteField.vue +669 -0
  63. package/lib/components/molecules/FuroAutocompleteField/FuroAutocompleteFieldContext.js +1525 -0
  64. package/lib/components/molecules/FuroAvatarGroup/FuroAvatarGroup.vue +126 -0
  65. package/lib/components/molecules/FuroAvatarGroup/FuroAvatarGroupContext.js +245 -0
  66. package/lib/components/molecules/FuroBreadcrumb/FuroBreadcrumb.vue +219 -0
  67. package/lib/components/molecules/FuroBreadcrumb/FuroBreadcrumbContext.js +257 -0
  68. package/lib/components/molecules/FuroCollapsible/CollapsibleEmitPayload.js +69 -0
  69. package/lib/components/molecules/FuroCollapsible/FuroCollapsible.vue +177 -0
  70. package/lib/components/molecules/FuroCollapsible/FuroCollapsibleContext.js +389 -0
  71. package/lib/components/molecules/FuroControlBlock/FuroControlBlock.vue +149 -0
  72. package/lib/components/molecules/FuroControlBlock/FuroControlBlockContext.js +81 -0
  73. package/lib/components/molecules/FuroDatePicker/DatePickerEmitPayload.js +74 -0
  74. package/lib/components/molecules/FuroDatePicker/FuroDatePicker.vue +661 -0
  75. package/lib/components/molecules/FuroDatePicker/FuroDatePickerContext.js +1038 -0
  76. package/lib/components/molecules/FuroDateTimePicker/DateTimePickerEmitPayload.js +96 -0
  77. package/lib/components/molecules/FuroDateTimePicker/FuroDateTimePicker.vue +153 -0
  78. package/lib/components/molecules/FuroDateTimePicker/FuroDateTimePickerContext.js +840 -0
  79. package/lib/components/molecules/FuroDropdownMenu/DropdownMenuOptionSelectEmitPayload.js +100 -0
  80. package/lib/components/molecules/FuroDropdownMenu/FuroDropdownMenu.vue +348 -0
  81. package/lib/components/molecules/FuroDropdownMenu/FuroDropdownMenuContext.js +714 -0
  82. package/lib/components/molecules/FuroDropdownMenu/FuroDropdownMenuOptionRows.vue +222 -0
  83. package/lib/components/molecules/FuroEditableField/EditableEmitPayload.js +89 -0
  84. package/lib/components/molecules/FuroEditableField/FuroEditableField.vue +314 -0
  85. package/lib/components/molecules/FuroEditableField/FuroEditableFieldContext.js +1018 -0
  86. package/lib/components/molecules/FuroEditableField/processors/EditorCollisionProcessor.js +236 -0
  87. package/lib/components/molecules/FuroEditableField/processors/ObjectProcessor.js +101 -0
  88. package/lib/components/molecules/FuroEmptyState/FuroEmptyState.vue +124 -0
  89. package/lib/components/molecules/FuroEmptyState/FuroEmptyStateContext.js +42 -0
  90. package/lib/components/molecules/FuroErrorState/FuroErrorState.vue +125 -0
  91. package/lib/components/molecules/FuroErrorState/FuroErrorStateContext.js +42 -0
  92. package/lib/components/molecules/FuroPagination/FuroPagination.vue +246 -0
  93. package/lib/components/molecules/FuroPagination/FuroPaginationContext.js +489 -0
  94. package/lib/components/molecules/FuroPopover/FuroPopover.vue +171 -0
  95. package/lib/components/molecules/FuroPopover/FuroPopoverContext.js +279 -0
  96. package/lib/components/molecules/FuroScrollArea/FuroScrollArea.vue +181 -0
  97. package/lib/components/molecules/FuroScrollArea/FuroScrollAreaContext.js +149 -0
  98. package/lib/components/molecules/FuroSearchField/FuroSearchField.vue +155 -0
  99. package/lib/components/molecules/FuroSearchField/FuroSearchFieldContext.js +231 -0
  100. package/lib/components/molecules/FuroSectionHeader/FuroSectionHeader.vue +140 -0
  101. package/lib/components/molecules/FuroSectionHeader/FuroSectionHeaderContext.js +204 -0
  102. package/lib/components/molecules/FuroSelect/FuroSelect.vue +474 -0
  103. package/lib/components/molecules/FuroSelect/FuroSelectContext.js +743 -0
  104. package/lib/components/molecules/FuroSelect/SelectEmitPayload.js +181 -0
  105. package/lib/components/molecules/FuroSeparator/FuroSeparator.vue +88 -0
  106. package/lib/components/molecules/FuroSeparator/FuroSeparatorContext.js +40 -0
  107. package/lib/components/molecules/FuroSkeleton/FuroSkeleton.vue +101 -0
  108. package/lib/components/molecules/FuroSkeleton/FuroSkeletonContext.js +82 -0
  109. package/lib/components/molecules/FuroSplitter/FuroSplitter.vue +237 -0
  110. package/lib/components/molecules/FuroSplitter/FuroSplitterContext.js +429 -0
  111. package/lib/components/molecules/FuroSplitter/SplitterEmitPayload.js +69 -0
  112. package/lib/components/molecules/FuroTimeField/FuroTimeField.vue +251 -0
  113. package/lib/components/molecules/FuroTimeField/FuroTimeFieldContext.js +1138 -0
  114. package/lib/components/molecules/FuroTimeField/TimeFieldEmitPayload.js +74 -0
  115. package/lib/components/molecules/FuroToggleGroup/FuroToggleGroup.vue +211 -0
  116. package/lib/components/molecules/FuroToggleGroup/FuroToggleGroupContext.js +551 -0
  117. package/lib/components/molecules/FuroToggleGroup/ToggleGroupEmitPayload.js +80 -0
  118. package/lib/components/molecules/FuroToolBar/FuroToolBar.vue +91 -0
  119. package/lib/components/molecules/FuroToolBar/FuroToolBarContext.js +75 -0
  120. package/lib/components/molecules/FuroTooltip/FuroTooltip.vue +183 -0
  121. package/lib/components/molecules/FuroTooltip/FuroTooltipContext.js +290 -0
  122. package/lib/components/organisms/FuroAlertDialog/FuroAlertDialog.vue +324 -0
  123. package/lib/components/organisms/FuroAlertDialog/FuroAlertDialogContext.js +608 -0
  124. package/lib/components/organisms/FuroDialog/FuroDialog.vue +362 -0
  125. package/lib/components/organisms/FuroDialog/FuroDialogContext.js +535 -0
  126. package/lib/components/organisms/FuroDrawer/FuroDrawer.vue +618 -0
  127. package/lib/components/organisms/FuroDrawer/FuroDrawerContext.js +676 -0
  128. package/lib/components/organisms/FuroEditor/FuroEditor.vue +613 -0
  129. package/lib/components/organisms/FuroEditor/FuroEditorCommandContext.js +420 -0
  130. package/lib/components/organisms/FuroEditor/FuroEditorContext.js +2048 -0
  131. package/lib/components/organisms/FuroEditor/FuroEditorMentionMenu.vue +120 -0
  132. package/lib/components/organisms/FuroEditor/FuroEditorMentionMenuContext.js +261 -0
  133. package/lib/components/organisms/FuroEditor/PreserveNewlinesPasteExtension.js +267 -0
  134. package/lib/components/organisms/FuroEditor/build-editor-extensions.js +97 -0
  135. package/lib/components/organisms/FuroEditor/mention-suggestion.js +320 -0
  136. package/lib/components/organisms/FuroEditor/paste-link-segments.js +124 -0
  137. package/lib/components/organisms/FuroSidebar/FuroSidebar.vue +473 -0
  138. package/lib/components/organisms/FuroSidebar/FuroSidebarContext.js +1014 -0
  139. package/lib/components/organisms/FuroStepper/FuroStepper.vue +345 -0
  140. package/lib/components/organisms/FuroStepper/FuroStepperContext.js +481 -0
  141. package/lib/components/organisms/FuroTable/FuroTable.vue +707 -0
  142. package/lib/components/organisms/FuroTable/FuroTableContext.js +1965 -0
  143. package/lib/components/organisms/FuroTable/FuroTableRowItemContext.js +111 -0
  144. package/lib/components/organisms/FuroTabs/FuroTabs.vue +403 -0
  145. package/lib/components/organisms/FuroTabs/FuroTabsContext.js +846 -0
  146. package/lib/components/organisms/FuroToast/FuroToast.vue +624 -0
  147. package/lib/components/organisms/FuroToast/FuroToastContext.js +1089 -0
  148. package/lib/components/organisms/FuroToast/FuroToaster.vue +44 -0
  149. package/lib/components/organisms/FuroToast/FuroToasterContext.js +113 -0
  150. package/lib/components/organisms/FuroToast/ToastQueue.js +325 -0
  151. package/lib/components/organisms/FuroToast/toast.js +64 -0
  152. package/lib/contexts/BaseFuroContext.js +318 -0
  153. package/lib/contexts/BaseFuroContextAccessor.js +47 -0
  154. package/lib/emit-payload/BaseEmitPayload.js +91 -0
  155. package/lib/index.components.js +61 -0
  156. package/lib/index.core.js +18 -0
  157. package/lib/tools/TimerClerk.js +75 -0
  158. package/nuxt/index.js +109 -0
  159. package/nuxt/runtime/furo-icon-renderer.js +24 -0
  160. package/package.json +137 -0
  161. package/public/furo-vue/components.json +4619 -0
  162. package/public/furo-vue/llms.txt +66 -0
  163. package/types/furo-nuxt.d.ts +48 -0
  164. package/types/generated/components/atoms/FuroAvatar/FuroAvatar.vue.d.ts +74 -0
  165. package/types/generated/components/atoms/FuroAvatar/FuroAvatarContext.d.ts +82 -0
  166. package/types/generated/components/atoms/FuroBadge/FuroBadge.vue.d.ts +12 -0
  167. package/types/generated/components/atoms/FuroBadge/FuroBadgeContext.d.ts +160 -0
  168. package/types/generated/components/atoms/FuroButton/ButtonEmitPayload.d.ts +19 -0
  169. package/types/generated/components/atoms/FuroButton/FuroButton.vue.d.ts +53 -0
  170. package/types/generated/components/atoms/FuroButton/FuroButtonContext.d.ts +156 -0
  171. package/types/generated/components/atoms/FuroCheckbox/CheckboxEmitPayload.d.ts +55 -0
  172. package/types/generated/components/atoms/FuroCheckbox/FuroCheckbox.vue.d.ts +87 -0
  173. package/types/generated/components/atoms/FuroCheckbox/FuroCheckboxContext.d.ts +342 -0
  174. package/types/generated/components/atoms/FuroEmailField/EmailFieldEmitPayload.d.ts +46 -0
  175. package/types/generated/components/atoms/FuroEmailField/FuroEmailField.vue.d.ts +458 -0
  176. package/types/generated/components/atoms/FuroEmailField/FuroEmailFieldContext.d.ts +161 -0
  177. package/types/generated/components/atoms/FuroFileField/FileFieldEmitPayload.d.ts +46 -0
  178. package/types/generated/components/atoms/FuroFileField/FuroFileField.vue.d.ts +454 -0
  179. package/types/generated/components/atoms/FuroFileField/FuroFileFieldContext.d.ts +109 -0
  180. package/types/generated/components/atoms/FuroIcon/FuroIcon.vue.d.ts +14 -0
  181. package/types/generated/components/atoms/FuroIcon/FuroIconContext.d.ts +152 -0
  182. package/types/generated/components/atoms/FuroIcon/FuroIconRegistry.d.ts +457 -0
  183. package/types/generated/components/atoms/FuroIcon/FuroIconifyRendererContext.d.ts +65 -0
  184. package/types/generated/components/atoms/FuroIcon/furoIconData.d.ts +154 -0
  185. package/types/generated/components/atoms/FuroIcon/iconRenderers.d.ts +6 -0
  186. package/types/generated/components/atoms/FuroIcon/icons.d.ts +6 -0
  187. package/types/generated/components/atoms/FuroNumberField/FuroNumberField.vue.d.ts +500 -0
  188. package/types/generated/components/atoms/FuroNumberField/FuroNumberFieldContext.d.ts +243 -0
  189. package/types/generated/components/atoms/FuroNumberField/NumberFieldEmitPayload.d.ts +74 -0
  190. package/types/generated/components/atoms/FuroPasswordField/FuroPasswordField.vue.d.ts +458 -0
  191. package/types/generated/components/atoms/FuroPasswordField/FuroPasswordFieldContext.d.ts +161 -0
  192. package/types/generated/components/atoms/FuroPasswordField/PasswordFieldEmitPayload.d.ts +46 -0
  193. package/types/generated/components/atoms/FuroRadio/FuroRadio.vue.d.ts +96 -0
  194. package/types/generated/components/atoms/FuroRadio/FuroRadioContext.d.ts +290 -0
  195. package/types/generated/components/atoms/FuroRadio/RadioEmitPayload.d.ts +39 -0
  196. package/types/generated/components/atoms/FuroSwitch/FuroSwitch.vue.d.ts +74 -0
  197. package/types/generated/components/atoms/FuroSwitch/FuroSwitchContext.d.ts +218 -0
  198. package/types/generated/components/atoms/FuroSwitch/SwitchEmitPayload.d.ts +42 -0
  199. package/types/generated/components/atoms/FuroTextField/FuroTextField.vue.d.ts +458 -0
  200. package/types/generated/components/atoms/FuroTextField/FuroTextFieldContext.d.ts +161 -0
  201. package/types/generated/components/atoms/FuroTextField/TextFieldEmitPayload.d.ts +52 -0
  202. package/types/generated/components/atoms/FuroTextarea/FuroTextarea.vue.d.ts +422 -0
  203. package/types/generated/components/atoms/FuroTextarea/FuroTextareaContext.d.ts +161 -0
  204. package/types/generated/components/atoms/FuroTextarea/TextareaEmitPayload.d.ts +52 -0
  205. package/types/generated/components/atoms/FuroToggle/FuroToggle.vue.d.ts +51 -0
  206. package/types/generated/components/atoms/FuroToggle/FuroToggleContext.d.ts +191 -0
  207. package/types/generated/components/atoms/FuroToggle/ToggleEmitPayload.d.ts +42 -0
  208. package/types/generated/components/molecules/FuroAccordion/AccordionEmitPayload.d.ts +41 -0
  209. package/types/generated/components/molecules/FuroAccordion/FuroAccordion.vue.d.ts +133 -0
  210. package/types/generated/components/molecules/FuroAccordion/FuroAccordionContext.d.ts +279 -0
  211. package/types/generated/components/molecules/FuroAttachment/FuroAttachment.vue.d.ts +79 -0
  212. package/types/generated/components/molecules/FuroAttachment/FuroAttachmentContext.d.ts +363 -0
  213. package/types/generated/components/molecules/FuroAutocompleteField/AutocompleteEmitPayload.d.ts +129 -0
  214. package/types/generated/components/molecules/FuroAutocompleteField/FuroAutocompleteField.vue.d.ts +751 -0
  215. package/types/generated/components/molecules/FuroAutocompleteField/FuroAutocompleteFieldContext.d.ts +722 -0
  216. package/types/generated/components/molecules/FuroAvatarGroup/FuroAvatarGroup.vue.d.ts +84 -0
  217. package/types/generated/components/molecules/FuroAvatarGroup/FuroAvatarGroupContext.d.ts +150 -0
  218. package/types/generated/components/molecules/FuroBreadcrumb/FuroBreadcrumb.vue.d.ts +24 -0
  219. package/types/generated/components/molecules/FuroBreadcrumb/FuroBreadcrumbContext.d.ts +152 -0
  220. package/types/generated/components/molecules/FuroCollapsible/CollapsibleEmitPayload.d.ts +36 -0
  221. package/types/generated/components/molecules/FuroCollapsible/FuroCollapsible.vue.d.ts +98 -0
  222. package/types/generated/components/molecules/FuroCollapsible/FuroCollapsibleContext.d.ts +191 -0
  223. package/types/generated/components/molecules/FuroControlBlock/FuroControlBlock.vue.d.ts +30 -0
  224. package/types/generated/components/molecules/FuroControlBlock/FuroControlBlockContext.d.ts +57 -0
  225. package/types/generated/components/molecules/FuroDatePicker/DatePickerEmitPayload.d.ts +41 -0
  226. package/types/generated/components/molecules/FuroDatePicker/FuroDatePicker.vue.d.ts +456 -0
  227. package/types/generated/components/molecules/FuroDatePicker/FuroDatePickerContext.d.ts +516 -0
  228. package/types/generated/components/molecules/FuroDateTimePicker/DateTimePickerEmitPayload.d.ts +55 -0
  229. package/types/generated/components/molecules/FuroDateTimePicker/FuroDateTimePicker.vue.d.ts +1365 -0
  230. package/types/generated/components/molecules/FuroDateTimePicker/FuroDateTimePickerContext.d.ts +435 -0
  231. package/types/generated/components/molecules/FuroDropdownMenu/DropdownMenuOptionSelectEmitPayload.d.ts +48 -0
  232. package/types/generated/components/molecules/FuroDropdownMenu/FuroDropdownMenu.vue.d.ts +773 -0
  233. package/types/generated/components/molecules/FuroDropdownMenu/FuroDropdownMenuContext.d.ts +380 -0
  234. package/types/generated/components/molecules/FuroDropdownMenu/FuroDropdownMenuOptionRows.vue.d.ts +261 -0
  235. package/types/generated/components/molecules/FuroEditableField/EditableEmitPayload.d.ts +39 -0
  236. package/types/generated/components/molecules/FuroEditableField/FuroEditableField.vue.d.ts +646 -0
  237. package/types/generated/components/molecules/FuroEditableField/FuroEditableFieldContext.d.ts +477 -0
  238. package/types/generated/components/molecules/FuroEditableField/processors/EditorCollisionProcessor.d.ts +121 -0
  239. package/types/generated/components/molecules/FuroEditableField/processors/ObjectProcessor.d.ts +45 -0
  240. package/types/generated/components/molecules/FuroEmptyState/FuroEmptyState.vue.d.ts +21 -0
  241. package/types/generated/components/molecules/FuroEmptyState/FuroEmptyStateContext.d.ts +32 -0
  242. package/types/generated/components/molecules/FuroErrorState/FuroErrorState.vue.d.ts +21 -0
  243. package/types/generated/components/molecules/FuroErrorState/FuroErrorStateContext.d.ts +32 -0
  244. package/types/generated/components/molecules/FuroPagination/FuroPagination.vue.d.ts +534 -0
  245. package/types/generated/components/molecules/FuroPagination/FuroPaginationContext.d.ts +271 -0
  246. package/types/generated/components/molecules/FuroPopover/FuroPopover.vue.d.ts +513 -0
  247. package/types/generated/components/molecules/FuroPopover/FuroPopoverContext.d.ts +160 -0
  248. package/types/generated/components/molecules/FuroScrollArea/FuroScrollArea.vue.d.ts +124 -0
  249. package/types/generated/components/molecules/FuroScrollArea/FuroScrollAreaContext.d.ts +86 -0
  250. package/types/generated/components/molecules/FuroSearchField/FuroSearchField.vue.d.ts +487 -0
  251. package/types/generated/components/molecules/FuroSearchField/FuroSearchFieldContext.d.ts +137 -0
  252. package/types/generated/components/molecules/FuroSectionHeader/FuroSectionHeader.vue.d.ts +49 -0
  253. package/types/generated/components/molecules/FuroSectionHeader/FuroSectionHeaderContext.d.ts +121 -0
  254. package/types/generated/components/molecules/FuroSelect/FuroSelect.vue.d.ts +719 -0
  255. package/types/generated/components/molecules/FuroSelect/FuroSelectContext.d.ts +402 -0
  256. package/types/generated/components/molecules/FuroSelect/SelectEmitPayload.d.ts +102 -0
  257. package/types/generated/components/molecules/FuroSeparator/FuroSeparator.vue.d.ts +39 -0
  258. package/types/generated/components/molecules/FuroSeparator/FuroSeparatorContext.d.ts +31 -0
  259. package/types/generated/components/molecules/FuroSkeleton/FuroSkeleton.vue.d.ts +27 -0
  260. package/types/generated/components/molecules/FuroSkeleton/FuroSkeletonContext.d.ts +61 -0
  261. package/types/generated/components/molecules/FuroSplitter/FuroSplitter.vue.d.ts +139 -0
  262. package/types/generated/components/molecules/FuroSplitter/FuroSplitterContext.d.ts +226 -0
  263. package/types/generated/components/molecules/FuroSplitter/SplitterEmitPayload.d.ts +41 -0
  264. package/types/generated/components/molecules/FuroTimeField/FuroTimeField.vue.d.ts +498 -0
  265. package/types/generated/components/molecules/FuroTimeField/FuroTimeFieldContext.d.ts +555 -0
  266. package/types/generated/components/molecules/FuroTimeField/TimeFieldEmitPayload.d.ts +41 -0
  267. package/types/generated/components/molecules/FuroToggleGroup/FuroToggleGroup.vue.d.ts +70 -0
  268. package/types/generated/components/molecules/FuroToggleGroup/FuroToggleGroupContext.d.ts +270 -0
  269. package/types/generated/components/molecules/FuroToggleGroup/ToggleGroupEmitPayload.d.ts +41 -0
  270. package/types/generated/components/molecules/FuroToolBar/FuroToolBar.vue.d.ts +30 -0
  271. package/types/generated/components/molecules/FuroToolBar/FuroToolBarContext.d.ts +48 -0
  272. package/types/generated/components/molecules/FuroTooltip/FuroTooltip.vue.d.ts +524 -0
  273. package/types/generated/components/molecules/FuroTooltip/FuroTooltipContext.d.ts +166 -0
  274. package/types/generated/components/organisms/FuroAlertDialog/FuroAlertDialog.vue.d.ts +651 -0
  275. package/types/generated/components/organisms/FuroAlertDialog/FuroAlertDialogContext.d.ts +299 -0
  276. package/types/generated/components/organisms/FuroDialog/FuroDialog.vue.d.ts +583 -0
  277. package/types/generated/components/organisms/FuroDialog/FuroDialogContext.d.ts +264 -0
  278. package/types/generated/components/organisms/FuroDrawer/FuroDrawer.vue.d.ts +635 -0
  279. package/types/generated/components/organisms/FuroDrawer/FuroDrawerContext.d.ts +347 -0
  280. package/types/generated/components/organisms/FuroEditor/FuroEditor.vue.d.ts +2487 -0
  281. package/types/generated/components/organisms/FuroEditor/FuroEditorCommandContext.d.ts +192 -0
  282. package/types/generated/components/organisms/FuroEditor/FuroEditorContext.d.ts +904 -0
  283. package/types/generated/components/organisms/FuroEditor/FuroEditorMentionMenu.vue.d.ts +43 -0
  284. package/types/generated/components/organisms/FuroEditor/FuroEditorMentionMenuContext.d.ts +159 -0
  285. package/types/generated/components/organisms/FuroEditor/PreserveNewlinesPasteExtension.d.ts +43 -0
  286. package/types/generated/components/organisms/FuroEditor/build-editor-extensions.d.ts +22 -0
  287. package/types/generated/components/organisms/FuroEditor/mention-suggestion.d.ts +25 -0
  288. package/types/generated/components/organisms/FuroEditor/paste-link-segments.d.ts +31 -0
  289. package/types/generated/components/organisms/FuroSidebar/FuroSidebar.vue.d.ts +898 -0
  290. package/types/generated/components/organisms/FuroSidebar/FuroSidebarContext.d.ts +596 -0
  291. package/types/generated/components/organisms/FuroStepper/FuroStepper.vue.d.ts +589 -0
  292. package/types/generated/components/organisms/FuroStepper/FuroStepperContext.d.ts +266 -0
  293. package/types/generated/components/organisms/FuroTable/FuroTable.vue.d.ts +528 -0
  294. package/types/generated/components/organisms/FuroTable/FuroTableContext.d.ts +1035 -0
  295. package/types/generated/components/organisms/FuroTable/FuroTableRowItemContext.d.ts +62 -0
  296. package/types/generated/components/organisms/FuroTabs/FuroTabs.vue.d.ts +515 -0
  297. package/types/generated/components/organisms/FuroTabs/FuroTabsContext.d.ts +438 -0
  298. package/types/generated/components/organisms/FuroToast/FuroToast.vue.d.ts +725 -0
  299. package/types/generated/components/organisms/FuroToast/FuroToastContext.d.ts +543 -0
  300. package/types/generated/components/organisms/FuroToast/FuroToaster.vue.d.ts +729 -0
  301. package/types/generated/components/organisms/FuroToast/FuroToasterContext.d.ts +62 -0
  302. package/types/generated/components/organisms/FuroToast/ToastQueue.d.ts +201 -0
  303. package/types/generated/components/organisms/FuroToast/toast.d.ts +23 -0
  304. package/types/generated/contexts/BaseFuroContext.d.ts +207 -0
  305. package/types/generated/contexts/BaseFuroContextAccessor.d.ts +28 -0
  306. package/types/generated/emit-payload/BaseEmitPayload.d.ts +62 -0
  307. package/types/generated/index.components.d.ts +50 -0
  308. package/types/generated/index.core.d.ts +6 -0
  309. package/types/generated/tools/TimerClerk.d.ts +50 -0
  310. package/types/index.d.ts +12 -0
@@ -0,0 +1,551 @@
1
+ import {
2
+ ref,
3
+ } from 'vue'
4
+
5
+ import BaseFuroContext from '../../../contexts/BaseFuroContext.js'
6
+
7
+ import ToggleGroupEmitPayload from './ToggleGroupEmitPayload.js'
8
+
9
+ /**
10
+ * Furo-owned parcel keys (not forwarded to the underlying primitive root).
11
+ */
12
+ const FURO_TOGGLE_GROUP_PARCEL_KEYS = new Set([
13
+ 'value',
14
+ 'selectionMode',
15
+ 'options',
16
+ 'variant',
17
+ 'size',
18
+ 'disabled',
19
+ 'orientation',
20
+ ])
21
+
22
+ /**
23
+ * Context class for managing FuroToggleGroup component.
24
+ *
25
+ * @extends {BaseFuroContext<null, Props, EmitEventName>}
26
+ */
27
+ export default class FuroToggleGroupContext extends BaseFuroContext {
28
+ /**
29
+ * Constructor.
30
+ *
31
+ * @param {FuroToggleGroupContextParams} params
32
+ */
33
+ constructor ({
34
+ props,
35
+ componentContext,
36
+ refHash,
37
+ }) {
38
+ super({
39
+ props,
40
+ componentContext,
41
+ })
42
+
43
+ this.refHash = refHash
44
+ }
45
+
46
+ /**
47
+ * Factory method.
48
+ *
49
+ * @template {X extends typeof FuroToggleGroupContext ? X : never} T, X
50
+ * @override
51
+ * @param {FuroToggleGroupContextFactoryParams} params - Parameters of this factory method.
52
+ * @returns {InstanceType<T>} An instance of this class.
53
+ * @this {T}
54
+ */
55
+ static create ({
56
+ props,
57
+ componentContext,
58
+
59
+ refHash = this.buildRefHash(),
60
+ }) {
61
+ return /** @type {InstanceType<T>} */ (
62
+ new this({
63
+ props,
64
+ componentContext,
65
+
66
+ refHash,
67
+ })
68
+ )
69
+ }
70
+
71
+ /**
72
+ * Build ref hash.
73
+ *
74
+ * @override
75
+ */
76
+ static buildRefHash () {
77
+ return {
78
+ internalValueRef: ref(null),
79
+ groupRootElementRef: ref(null),
80
+ }
81
+ }
82
+
83
+ /**
84
+ * Get emit event name.
85
+ *
86
+ * @override
87
+ * @returns {Readonly<{
88
+ * CHANGE_VALUE: 'change-value'
89
+ * UPDATE_VALUE: 'update:value'
90
+ * }>}
91
+ */
92
+ static get EMIT_EVENT_NAME () {
93
+ return {
94
+ CHANGE_VALUE: 'change-value',
95
+ UPDATE_VALUE: 'update:value',
96
+ }
97
+ }
98
+
99
+ /**
100
+ * Get emit options.
101
+ *
102
+ * @returns {{
103
+ * 'change-value': (payload: import('./ToggleGroupEmitPayload.js').default) => void
104
+ * 'update:value': (value: FuroToggleGroupValue) => void
105
+ * }}
106
+ */
107
+ static get EMIT_EVENT_HASH () {
108
+ return {
109
+ [this.EMIT_EVENT_NAME.CHANGE_VALUE]: payload => {},
110
+ [this.EMIT_EVENT_NAME.UPDATE_VALUE]: value => {},
111
+ }
112
+ }
113
+
114
+ /**
115
+ * get: Constructor of `EmitPayload`.
116
+ *
117
+ * @returns {typeof ToggleGroupEmitPayload}
118
+ */
119
+ static get EmitPayloadCtor () {
120
+ return ToggleGroupEmitPayload
121
+ }
122
+
123
+ /**
124
+ * get: Constructor of this class.
125
+ *
126
+ * @override
127
+ * @returns {typeof FuroToggleGroupContext}
128
+ */
129
+ get Ctor () {
130
+ return /** @type {typeof FuroToggleGroupContext} */ (
131
+ this.constructor
132
+ )
133
+ }
134
+
135
+ /**
136
+ * Get internal value ref (synced selection model).
137
+ *
138
+ * @returns {import('vue').Ref<FuroToggleGroupValue>}
139
+ */
140
+ get internalValueRef () {
141
+ return this.refHash.internalValueRef
142
+ }
143
+
144
+ /**
145
+ * Get group root element ref.
146
+ *
147
+ * @returns {import('vue').Ref<HTMLElement | null>}
148
+ */
149
+ get groupRootElementRef () {
150
+ return this.refHash.groupRootElementRef
151
+ }
152
+
153
+ /**
154
+ * Parcel passed from parent via props (merged with defaults).
155
+ *
156
+ * @override
157
+ * @returns {FuroToggleGroupParcel}
158
+ */
159
+ get parcel () {
160
+ return {
161
+ selectionMode: 'single',
162
+ options: [],
163
+ variant: 'default',
164
+ size: 'default',
165
+ disabled: false,
166
+ orientation: 'horizontal',
167
+ ...this.props.parcel,
168
+ }
169
+ }
170
+
171
+ /**
172
+ * Get the toggle options.
173
+ *
174
+ * @returns {Array<FuroToggleGroupOption>}
175
+ */
176
+ get options () {
177
+ return this.parcel.options
178
+ ?? []
179
+ }
180
+
181
+ /**
182
+ * Resolve the selection mode (maps to the primitive's selection type).
183
+ *
184
+ * @returns {FuroToggleGroupSelectionMode}
185
+ */
186
+ resolveSelectionMode () {
187
+ return this.parcel.selectionMode
188
+ ?? 'single'
189
+ }
190
+
191
+ /**
192
+ * Resolve the layout orientation.
193
+ *
194
+ * @returns {FuroToggleGroupOrientation}
195
+ */
196
+ resolveOrientation () {
197
+ return this.parcel.orientation
198
+ ?? 'horizontal'
199
+ }
200
+
201
+ /**
202
+ * Whether multiple values can be selected.
203
+ *
204
+ * @returns {boolean}
205
+ */
206
+ isMultiple () {
207
+ return this.resolveSelectionMode() === 'multiple'
208
+ }
209
+
210
+ /**
211
+ * Resolve the default empty selection for the current selection mode.
212
+ *
213
+ * @returns {FuroToggleGroupValue}
214
+ */
215
+ resolveDefaultValue () {
216
+ if (this.isMultiple()) {
217
+ return []
218
+ }
219
+
220
+ return null
221
+ }
222
+
223
+ /**
224
+ * Whether the parent controls `parcel.value`.
225
+ *
226
+ * @returns {boolean}
227
+ */
228
+ isControlled () {
229
+ const { parcel } = this.props
230
+
231
+ return parcel !== null
232
+ && Object.hasOwn(parcel, 'value')
233
+ }
234
+
235
+ /**
236
+ * Resolve synced selection value from parcel or fallthrough attrs.
237
+ *
238
+ * @returns {FuroToggleGroupValue}
239
+ */
240
+ resolveSyncedValue () {
241
+ const { parcel: parcelSource } = this.props
242
+
243
+ const hasParcelValue = parcelSource !== null
244
+ && Object.hasOwn(parcelSource, 'value')
245
+
246
+ if (hasParcelValue) {
247
+ return parcelSource.value
248
+ ?? this.resolveDefaultValue()
249
+ }
250
+
251
+ const { value: attrsValue } = this.attrs ?? {}
252
+
253
+ if (attrsValue !== undefined) {
254
+ return /** @type {FuroToggleGroupValue} */ (attrsValue)
255
+ }
256
+
257
+ return this.resolveDefaultValue()
258
+ }
259
+
260
+ /**
261
+ * Whether the group is disabled.
262
+ *
263
+ * @returns {boolean}
264
+ */
265
+ isDisabled () {
266
+ return Boolean(this.parcel.disabled)
267
+ || this.hasBooleanAttribute({ name: 'disabled' })
268
+ }
269
+
270
+ /**
271
+ * Whether a single option is disabled.
272
+ *
273
+ * @param {{
274
+ * option: FuroToggleGroupOption
275
+ * }} params - Parameters.
276
+ * @returns {boolean}
277
+ */
278
+ isOptionDisabled ({
279
+ option,
280
+ }) {
281
+ return this.isDisabled()
282
+ || Boolean(option.disabled)
283
+ }
284
+
285
+ /**
286
+ * Whether the given option value is currently selected.
287
+ *
288
+ * @param {{
289
+ * value: string
290
+ * }} params - Parameters.
291
+ * @returns {boolean}
292
+ */
293
+ isSelected ({
294
+ value,
295
+ }) {
296
+ const selectedValue = this.internalValueRef.value
297
+
298
+ if (Array.isArray(selectedValue)) {
299
+ return selectedValue.includes(value)
300
+ }
301
+
302
+ return selectedValue === value
303
+ }
304
+
305
+ /**
306
+ * Extract the display label for an option.
307
+ *
308
+ * @param {{
309
+ * option: FuroToggleGroupOption
310
+ * }} params - Parameters.
311
+ * @returns {string}
312
+ */
313
+ extractOptionLabel ({
314
+ option,
315
+ }) {
316
+ return option.label
317
+ ?? option.value
318
+ }
319
+
320
+ /**
321
+ * Extract CSS class map for the group root.
322
+ *
323
+ * @returns {Record<string, boolean>}
324
+ */
325
+ extractRootClassNames () {
326
+ const orientation = this.resolveOrientation()
327
+
328
+ return Object.fromEntries([
329
+ ['unit-toggle-group', true],
330
+ [orientation, true],
331
+ ['disabled', this.isDisabled()],
332
+ ])
333
+ }
334
+
335
+ /**
336
+ * Extract CSS class map for a single toggle item.
337
+ *
338
+ * @param {{
339
+ * option: FuroToggleGroupOption
340
+ * }} params - Parameters.
341
+ * @returns {Record<string, boolean>}
342
+ */
343
+ extractItemClassNames ({
344
+ option,
345
+ }) {
346
+ const variant = this.parcel.variant
347
+ ?? 'default'
348
+
349
+ const size = this.parcel.size
350
+ ?? 'default'
351
+
352
+ const sizeClassEntries = size === 'default'
353
+ ? []
354
+ : [[`size-${size}`, true]]
355
+
356
+ return Object.fromEntries([
357
+ ['unit-toggle-group-item', true],
358
+ [variant, true],
359
+ ...sizeClassEntries,
360
+ ['disabled', this.isOptionDisabled({ option })],
361
+ ])
362
+ }
363
+
364
+ /**
365
+ * Extract root attributes forwarded to the underlying primitive.
366
+ *
367
+ * @returns {Record<string, unknown>}
368
+ */
369
+ extractRootAttributes () {
370
+ const parcelEntries = Object.entries(this.parcel)
371
+
372
+ return Object.fromEntries(
373
+ parcelEntries.filter(([key]) => !FURO_TOGGLE_GROUP_PARCEL_KEYS.has(key))
374
+ )
375
+ }
376
+
377
+ /**
378
+ * Build a custom event for selection changes.
379
+ *
380
+ * @param {{
381
+ * name: string
382
+ * value: FuroToggleGroupValue
383
+ * }} params - Parameters.
384
+ * @returns {import('./ToggleGroupEmitPayload.js').ToggleGroupRawEvent}
385
+ */
386
+ buildCustomEvent ({
387
+ name,
388
+ value,
389
+ }) {
390
+ return new CustomEvent(
391
+ name,
392
+ {
393
+ detail: {
394
+ target: this.groupRootElementRef.value,
395
+ value,
396
+ },
397
+ }
398
+ )
399
+ }
400
+
401
+ /**
402
+ * Setup component context.
403
+ *
404
+ * @template {X extends FuroToggleGroupContext ? X : never} T, X
405
+ * @override
406
+ * @returns {T} - For method chaining.
407
+ * @this {T}
408
+ */
409
+ setupComponent () {
410
+ this.watch(
411
+ () => this.resolveSyncedValue(),
412
+ syncedValue => {
413
+ if (!this.isControlled()) {
414
+ return
415
+ }
416
+
417
+ this.internalValueRef.value = syncedValue
418
+ },
419
+ {
420
+ immediate: true,
421
+ }
422
+ )
423
+
424
+ return this
425
+ }
426
+
427
+ /**
428
+ * Handle selection update emitted by the underlying primitive.
429
+ *
430
+ * @param {{
431
+ * rawValue: FuroToggleGroupValue
432
+ * }} params - Parameters.
433
+ */
434
+ onChangeValue ({
435
+ rawValue,
436
+ }) {
437
+ const value = rawValue
438
+ ?? this.resolveDefaultValue()
439
+
440
+ this.internalValueRef.value = value
441
+
442
+ const customEvent = this.buildCustomEvent({
443
+ name: this.EMIT_EVENT_NAME.CHANGE_VALUE,
444
+ value,
445
+ })
446
+
447
+ const payload = this.Ctor.EmitPayloadCtor.create({
448
+ rawEvent: customEvent,
449
+ })
450
+
451
+ this.emit(
452
+ this.EMIT_EVENT_NAME.CHANGE_VALUE,
453
+ payload
454
+ )
455
+
456
+ this.emit(
457
+ this.EMIT_EVENT_NAME.UPDATE_VALUE,
458
+ value
459
+ )
460
+ }
461
+ }
462
+
463
+ /**
464
+ * @typedef {import('../../../contexts/BaseFuroContext.js').BaseFuroContextParams & {
465
+ * props: Props
466
+ * componentContext: ComponentContext
467
+ * refHash: {
468
+ * internalValueRef: import('vue').Ref<FuroToggleGroupValue>
469
+ * groupRootElementRef: import('vue').Ref<HTMLElement | null>
470
+ * }
471
+ * }} FuroToggleGroupContextParams
472
+ */
473
+
474
+ /**
475
+ * @typedef {Omit<FuroToggleGroupContextParams, 'refHash'> & {
476
+ * refHash?: {
477
+ * internalValueRef: import('vue').Ref<FuroToggleGroupValue>
478
+ * groupRootElementRef: import('vue').Ref<HTMLElement | null>
479
+ * }
480
+ * }} FuroToggleGroupContextFactoryParams
481
+ */
482
+
483
+ /**
484
+ * @typedef {keyof typeof FuroToggleGroupContext.EMIT_EVENT_NAME} EmitEventName
485
+ */
486
+
487
+ /**
488
+ * Public selection model (`v-model:value`, `parcel.value`).
489
+ * A single value in `single` mode, an array in `multiple` mode.
490
+ *
491
+ * @typedef {string | Array<string> | null} FuroToggleGroupValue
492
+ */
493
+
494
+ /**
495
+ * @typedef {'single' | 'multiple'} FuroToggleGroupSelectionMode
496
+ */
497
+
498
+ /**
499
+ * @typedef {'horizontal' | 'vertical'} FuroToggleGroupOrientation
500
+ */
501
+
502
+ /**
503
+ * @typedef {'default' | 'outline'} FuroToggleGroupVariant
504
+ */
505
+
506
+ /**
507
+ * @typedef {'default' | 'sm' | 'lg'} FuroToggleGroupSize
508
+ */
509
+
510
+ /**
511
+ * @typedef {{
512
+ * value: string
513
+ * label?: string
514
+ * disabled?: boolean
515
+ * }} FuroToggleGroupOption
516
+ */
517
+
518
+ /**
519
+ * @typedef {{
520
+ * parcel?: FuroToggleGroupParcel | null
521
+ * }} Props
522
+ */
523
+
524
+ /**
525
+ * @typedef {{
526
+ * value?: FuroToggleGroupValue
527
+ * selectionMode?: FuroToggleGroupSelectionMode
528
+ * options?: Array<FuroToggleGroupOption>
529
+ * variant?: FuroToggleGroupVariant
530
+ * size?: FuroToggleGroupSize
531
+ * disabled?: boolean
532
+ * orientation?: FuroToggleGroupOrientation
533
+ * }} FuroToggleGroupParcel
534
+ */
535
+
536
+ /**
537
+ * @typedef {typeof FuroToggleGroupContext.EMIT_EVENT_HASH} FuroToggleGroupEmitHash
538
+ */
539
+
540
+ /**
541
+ * @typedef {import('vue').SetupContext<FuroToggleGroupEmitHash>} ComponentContext
542
+ */
543
+
544
+ /**
545
+ * @typedef {(
546
+ * props: Props,
547
+ * componentContext: ComponentContext
548
+ * ) => {
549
+ * context: FuroToggleGroupContext
550
+ * }} FuroToggleGroupSetup
551
+ */
@@ -0,0 +1,80 @@
1
+ import BaseEmitPayload from '../../../emit-payload/BaseEmitPayload.js'
2
+
3
+ /**
4
+ * ToggleGroupEmitPayload.
5
+ *
6
+ * @extends {BaseEmitPayload<ToggleGroupRawEvent, HTMLElement>}
7
+ */
8
+ export default class ToggleGroupEmitPayload extends BaseEmitPayload {
9
+ /**
10
+ * Get the event detail.
11
+ *
12
+ * @returns {ToggleGroupRawEvent['detail'] | null}
13
+ */
14
+ get eventDetail () {
15
+ return this.rawEvent?.detail
16
+ ?? null
17
+ }
18
+
19
+ /**
20
+ * Get the control element from the raw event.
21
+ *
22
+ * @override
23
+ * @returns {HTMLElement | null}
24
+ */
25
+ get controlElement () {
26
+ return this.eventDetail?.target
27
+ ?? null
28
+ }
29
+
30
+ /**
31
+ * Selected value(s) after the change.
32
+ *
33
+ * @returns {FuroToggleGroupValue | null}
34
+ */
35
+ get value () {
36
+ return this.eventDetail?.value
37
+ ?? null
38
+ }
39
+
40
+ /**
41
+ * Whether the given option value is selected after the change.
42
+ *
43
+ * @param {{
44
+ * value: string
45
+ * }} params - Parameters.
46
+ * @returns {boolean}
47
+ */
48
+ isSelected ({
49
+ value,
50
+ }) {
51
+ const selectedValue = this.value
52
+
53
+ if (Array.isArray(selectedValue)) {
54
+ return selectedValue.includes(value)
55
+ }
56
+
57
+ return selectedValue === value
58
+ }
59
+ }
60
+
61
+ /**
62
+ * @typedef {import('./FuroToggleGroupContext.js').FuroToggleGroupValue} FuroToggleGroupValue
63
+ */
64
+
65
+ /**
66
+ * @typedef {{
67
+ * rawEvent: ToggleGroupRawEvent
68
+ * }} ToggleGroupEmitPayloadParams
69
+ */
70
+
71
+ /**
72
+ * @typedef {CustomEvent<{
73
+ * target: HTMLElement | null
74
+ * value: FuroToggleGroupValue | null
75
+ * }>} ToggleGroupRawEvent
76
+ */
77
+
78
+ /**
79
+ * @typedef {ToggleGroupEmitPayloadParams} ToggleGroupEmitPayloadFactoryParams
80
+ */
@@ -0,0 +1,91 @@
1
+ <script>
2
+ import {
3
+ defineComponent,
4
+ } from 'vue'
5
+
6
+ import {
7
+ ToolbarRoot as RekaToolbarRoot,
8
+ } from 'reka-ui'
9
+
10
+ import FuroToolBarContext from './FuroToolBarContext.js'
11
+
12
+ export default defineComponent({
13
+ name: 'FuroToolBar',
14
+
15
+ components: {
16
+ RekaToolbarRoot,
17
+ },
18
+
19
+ inheritAttrs: false,
20
+
21
+ props: {
22
+ parcel: {
23
+ /** @type {import('vue').PropType<import('./FuroToolBarContext.js').Props['parcel']>} */
24
+ type: [
25
+ Object,
26
+ null,
27
+ ],
28
+ default: null,
29
+ },
30
+ },
31
+
32
+ /**
33
+ * Setup of this component.
34
+ *
35
+ * @param {import('./FuroToolBarContext.js').Props} props - Props.
36
+ * @param {import('vue').SetupContext} componentContext - Setup context.
37
+ * @returns {{ context: FuroToolBarContext }} Render context.
38
+ */
39
+ setup (
40
+ props,
41
+ componentContext
42
+ ) {
43
+ const context = FuroToolBarContext.create({
44
+ props,
45
+ componentContext,
46
+ })
47
+ .setupComponent()
48
+
49
+ return {
50
+ context,
51
+ }
52
+ },
53
+ })
54
+ </script>
55
+
56
+ <template>
57
+ <RekaToolbarRoot
58
+ :class="context.extractRootClassNames()"
59
+ :orientation="context.orientation"
60
+ :dir="context.extractTextDirectionValue()"
61
+ :loop="context.isLoopingFocus()"
62
+ v-bind="$attrs"
63
+ >
64
+ <slot />
65
+ </RekaToolbarRoot>
66
+ </template>
67
+
68
+ <style scoped>
69
+ @layer furo {
70
+ .unit-tool-bar {
71
+ display: flex;
72
+ align-items: center;
73
+ gap: var(--size-space-tiny);
74
+
75
+ min-width: 0;
76
+
77
+ border: var(--size-thinnest) solid var(--color-border);
78
+ border-radius: var(--size-border-radius-medium);
79
+
80
+ padding-block: 0.25rem;
81
+ padding-inline: 0.25rem;
82
+
83
+ background-color: var(--color-background);
84
+ }
85
+
86
+ .unit-tool-bar.vertical {
87
+ flex-direction: column;
88
+ align-items: stretch;
89
+ }
90
+ }
91
+ </style>