@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,904 @@
1
+ /**
2
+ * Context for the FuroEditor organism.
3
+ *
4
+ * Owns the editor lifecycle, the value/attachment surface, the formatting toolbar
5
+ * model, and the link dialog. Selection and command execution are delegated to a
6
+ * {@link FuroEditorCommandContext} sub-context. Paste behavior (markdown detection,
7
+ * font-style stripping, newline preservation) is wired onto the editor on mount.
8
+ *
9
+ * Domain concerns (mention search, attachment uploads) are exposed as adapter
10
+ * callbacks and slots — this component never touches GraphQL or domain schemas.
11
+ *
12
+ * @extends {BaseFuroContext<null, FuroEditorContextParams['props'], string>}
13
+ */
14
+ export default class FuroEditorContext extends BaseFuroContext<null, {
15
+ parcel?: FuroEditorParcel | null;
16
+ } & {
17
+ parcel?: any;
18
+ }, string> {
19
+ /**
20
+ * Factory method to create a new instance of this class.
21
+ *
22
+ * @template {X extends typeof FuroEditorContext ? X : never} T, X
23
+ * @override
24
+ * @param {FuroEditorContextFactoryParams} params - Parameters of this factory method.
25
+ * @returns {InstanceType<T>} - New instance of this class.
26
+ * @this {T}
27
+ */
28
+ static override create<T extends X extends typeof FuroEditorContext ? X : never, X>(this: T, { props, componentContext, editorRef, reactiveHash, }: FuroEditorContextFactoryParams): InstanceType<T>;
29
+ /** @override */
30
+ static override get EMIT_EVENT_NAME(): {
31
+ UPDATE_VALUE: string;
32
+ CHANGE_VALUE: string;
33
+ COMMIT_VALUE: string;
34
+ UPDATE_ATTACHED_FILES: string;
35
+ ADD_MENTION: string;
36
+ ADD_FILES: string;
37
+ IMAGE_ERROR: string;
38
+ };
39
+ /**
40
+ * Build reactive hash.
41
+ *
42
+ * @override
43
+ * @returns {FuroEditorContextParams['reactiveHash']}
44
+ */
45
+ static override buildReactiveHash(): FuroEditorContextParams["reactiveHash"];
46
+ /**
47
+ * get: default toolbar labels.
48
+ *
49
+ * @returns {typeof DEFAULT_LABELS} - Default labels.
50
+ */
51
+ static get DEFAULT_LABELS(): typeof DEFAULT_LABELS;
52
+ /**
53
+ * Build the option object for the `useEditor()` composable.
54
+ *
55
+ * Keeps all editor-assembly logic out of the component's `setup()`: the SFC only
56
+ * passes the result to `useEditor()` and hands the ref to {@link create}.
57
+ *
58
+ * The Tiptap builders are injected (not imported) so this context module — and the
59
+ * unit tests that load it — stay free of the editor runtime.
60
+ *
61
+ * @param {{
62
+ * props: { parcel?: FuroEditorParcel | null }
63
+ * componentContext: import('vue').SetupContext<*>
64
+ * buildExtensions: typeof import('./build-editor-extensions.js').buildEditorExtensions
65
+ * createMention: typeof import('./mention-suggestion.js').createMentionExtension
66
+ * }} params - Parameters of this method.
67
+ * @returns {Partial<import('@tiptap/core').EditorOptions>} - useEditor() options.
68
+ */
69
+ static buildEditorOptions({ props, componentContext, buildExtensions, createMention, }: {
70
+ props: {
71
+ parcel?: FuroEditorParcel | null;
72
+ };
73
+ componentContext: import("vue").SetupContext<any>;
74
+ buildExtensions: typeof import("./build-editor-extensions.js").buildEditorExtensions;
75
+ createMention: typeof import("./mention-suggestion.js").createMentionExtension;
76
+ }): Partial<import("@tiptap/core").EditorOptions>;
77
+ /**
78
+ * Build the mention extension via the injected factory.
79
+ *
80
+ * Always registers the mention node so saved chips render in any editor (including
81
+ * read-only / display). The live `@` popup is wired only when a search adapter is
82
+ * supplied.
83
+ *
84
+ * @param {{
85
+ * parcel: FuroEditorParcel
86
+ * componentContext: import('vue').SetupContext<*>
87
+ * createMention: typeof import('./mention-suggestion.js').createMentionExtension
88
+ * }} params - Parameters of this method.
89
+ * @returns {import('@tiptap/core').AnyExtension} - Mention extension.
90
+ */
91
+ static buildMentionExtension({ parcel, componentContext, createMention, }: {
92
+ parcel: FuroEditorParcel;
93
+ componentContext: import("vue").SetupContext<any>;
94
+ createMention: typeof import("./mention-suggestion.js").createMentionExtension;
95
+ }): import("@tiptap/core").AnyExtension;
96
+ /**
97
+ * Constructor.
98
+ *
99
+ * @param {FuroEditorContextParams} params - Parameters of this constructor.
100
+ */
101
+ constructor({ props, componentContext, reactiveHash, editorRef, }: FuroEditorContextParams);
102
+ reactiveHash: {
103
+ statusReactive: import("vue").Reactive<FuroEditorStatusReactive>;
104
+ addLinkReactive: import("vue").Reactive<FuroEditorAddLinkReactive>;
105
+ };
106
+ editorRef: import("vue").ShallowRef<import("@tiptap/vue-3").Editor, import("@tiptap/vue-3").Editor>;
107
+ commandContext: FuroEditorCommandContext;
108
+ /** @type {{ from: number, to: number } | null} */
109
+ linkRange: {
110
+ from: number;
111
+ to: number;
112
+ } | null;
113
+ /**
114
+ * get: live editor instance, or null before it mounts.
115
+ *
116
+ * @returns {import('@tiptap/vue-3').Editor | null} - Editor instance.
117
+ */
118
+ get editor(): import("@tiptap/vue-3").Editor | null;
119
+ /**
120
+ * get: the command sub-context.
121
+ *
122
+ * @returns {FuroEditorCommandContext} - Command facade.
123
+ */
124
+ get command(): FuroEditorCommandContext;
125
+ /**
126
+ * get: status reactive (link dialog open state).
127
+ *
128
+ * @returns {{ isLinkDialogOpen: boolean }} - Status reactive.
129
+ */
130
+ get statusReactive(): {
131
+ isLinkDialogOpen: boolean;
132
+ };
133
+ /**
134
+ * get: add-link reactive (url + display text).
135
+ *
136
+ * @returns {{ url: string, displayText: string }} - Link reactive.
137
+ */
138
+ get addLinkReactive(): {
139
+ url: string;
140
+ displayText: string;
141
+ };
142
+ /**
143
+ * get: current HTML value from parcel.
144
+ *
145
+ * @returns {string} - HTML content.
146
+ */
147
+ get value(): string;
148
+ /**
149
+ * get: placeholder text.
150
+ *
151
+ * @returns {string} - Placeholder.
152
+ */
153
+ get placeholder(): string;
154
+ /**
155
+ * get: attached files passed in by the consumer.
156
+ *
157
+ * @returns {Array<*>} - Attached files.
158
+ */
159
+ get attachedFiles(): Array<any>;
160
+ /**
161
+ * Whether the editor is read-only.
162
+ *
163
+ * @returns {boolean} - true when read-only.
164
+ */
165
+ isReadOnly(): boolean;
166
+ /**
167
+ * Whether the editor renders as plain text (no chrome: toolbar, border, padding).
168
+ *
169
+ * @returns {boolean} - true in plain appearance.
170
+ */
171
+ isPlain(): boolean;
172
+ /**
173
+ * Whether the editor is display-only (read-only or plain) — never editable.
174
+ *
175
+ * @returns {boolean} - true when display-only.
176
+ */
177
+ isDisplayOnly(): boolean;
178
+ /**
179
+ * Whether the editor instance is currently editable.
180
+ *
181
+ * @returns {boolean} - true when editable.
182
+ */
183
+ isEditorEditable(): boolean;
184
+ /**
185
+ * Whether the mention feature is enabled (a search adapter was supplied).
186
+ *
187
+ * @returns {boolean} - true when mentions are available.
188
+ */
189
+ hasMentionFeature(): boolean;
190
+ /**
191
+ * Whether inline images are enabled (an upload adapter was supplied).
192
+ *
193
+ * @returns {boolean} - true when inline images are available.
194
+ */
195
+ hasImageFeature(): boolean;
196
+ /**
197
+ * Whether the link dialog is open.
198
+ *
199
+ * @returns {boolean} - true when open.
200
+ */
201
+ isLinkDialogOpen(): boolean;
202
+ /**
203
+ * Merge consumer label overrides over the defaults.
204
+ *
205
+ * @returns {typeof DEFAULT_LABELS} - Effective labels.
206
+ */
207
+ extractLabels(): typeof DEFAULT_LABELS;
208
+ /**
209
+ * Setup component context: bind editor events, paste handlers, and value/readonly sync.
210
+ *
211
+ * @template {X extends FuroEditorContext ? X : never} T, X
212
+ * @override
213
+ * @returns {T} - For method chaining.
214
+ * @this {T}
215
+ */
216
+ override setupComponent<T extends X extends FuroEditorContext ? X : never, X>(this: T): T;
217
+ /**
218
+ * Bind editor update/blur events to emits.
219
+ *
220
+ * @returns {void}
221
+ */
222
+ bindEditorEvents(): void;
223
+ /**
224
+ * Install paste transforms (markdown detection, font-style stripping, normalization).
225
+ *
226
+ * @returns {void}
227
+ */
228
+ bindPasteHandlers(): void;
229
+ /**
230
+ * Handle a paste: inline images first, then markdown plain text.
231
+ *
232
+ * @param {{
233
+ * clipboardEvent: ClipboardEvent
234
+ * }} params - Parameters of this method.
235
+ * @returns {boolean} - true when a handler consumed the paste.
236
+ */
237
+ handleEditorPaste({ clipboardEvent, }: {
238
+ clipboardEvent: ClipboardEvent;
239
+ }): boolean;
240
+ /**
241
+ * Emit the pasted files the editor does not insert itself.
242
+ *
243
+ * @param {{
244
+ * clipboardEvent: ClipboardEvent
245
+ * }} params - Parameters of this method.
246
+ * @returns {void}
247
+ */
248
+ emitPastedFiles({ clipboardEvent, }: {
249
+ clipboardEvent: ClipboardEvent;
250
+ }): void;
251
+ /**
252
+ * Emit files handed to the consumer, unless there are none.
253
+ *
254
+ * @param {{
255
+ * files: Array<File>
256
+ * }} params - Parameters of this method.
257
+ * @returns {void}
258
+ */
259
+ emitAddedFiles({ files, }: {
260
+ files: Array<File>;
261
+ }): void;
262
+ /**
263
+ * Upload and insert any image files present on the clipboard.
264
+ *
265
+ * @param {{
266
+ * clipboardEvent: ClipboardEvent
267
+ * }} params - Parameters of this method.
268
+ * @returns {boolean} - true when image files were consumed.
269
+ */
270
+ handleImagePaste({ clipboardEvent, }: {
271
+ clipboardEvent: ClipboardEvent;
272
+ }): boolean;
273
+ /**
274
+ * Insert dropped images at the drop position, and hand the other files to the consumer.
275
+ *
276
+ * @param {{
277
+ * view: import('@tiptap/pm/view').EditorView
278
+ * dragEvent: DragEvent
279
+ * }} params - Parameters of this method.
280
+ * @returns {boolean} - true when the dropped files were taken.
281
+ */
282
+ handleEditorDrop({ view, dragEvent, }: {
283
+ view: import("@tiptap/pm/view").EditorView;
284
+ dragEvent: DragEvent;
285
+ }): boolean;
286
+ /**
287
+ * Extract the document position a drag event points at.
288
+ *
289
+ * @param {{
290
+ * view: import('@tiptap/pm/view').EditorView
291
+ * dragEvent: DragEvent
292
+ * }} params - Parameters of this method.
293
+ * @returns {number | null} - Document position.
294
+ */
295
+ extractDropPosition({ view, dragEvent, }: {
296
+ view: import("@tiptap/pm/view").EditorView;
297
+ dragEvent: DragEvent;
298
+ }): number | null;
299
+ /**
300
+ * Push the parcel value into the editor when it diverges from the current HTML.
301
+ *
302
+ * @returns {void}
303
+ */
304
+ syncValueIntoEditor(): void;
305
+ /**
306
+ * Reflect the read-only flag onto the editor.
307
+ *
308
+ * @returns {void}
309
+ */
310
+ syncEditableState(): void;
311
+ /**
312
+ * Convert pasted markdown plain text into HTML and insert it.
313
+ *
314
+ * @param {{
315
+ * clipboardEvent: ClipboardEvent
316
+ * }} params - Parameters of this method.
317
+ * @returns {boolean} - true when this handler consumed the paste.
318
+ */
319
+ handleMarkdownPaste({ clipboardEvent, }: {
320
+ clipboardEvent: ClipboardEvent;
321
+ }): boolean;
322
+ /**
323
+ * Render markdown to HTML asynchronously and insert it at the cursor.
324
+ *
325
+ * @param {{
326
+ * rawText: string
327
+ * }} params - Parameters of this method.
328
+ * @returns {void}
329
+ */
330
+ insertMarkdownAsHtml({ rawText, }: {
331
+ rawText: string;
332
+ }): void;
333
+ /**
334
+ * Normalize pasted plain-text line breaks.
335
+ *
336
+ * @param {{
337
+ * text: string
338
+ * }} params - Parameters of this method.
339
+ * @returns {string} - Normalized text.
340
+ */
341
+ normalizePastedText({ text, }: {
342
+ text: string;
343
+ }): string;
344
+ /**
345
+ * Strip font-family / font-size declarations from pasted HTML so external
346
+ * typography does not override the editor's.
347
+ *
348
+ * @param {{
349
+ * html: string
350
+ * }} params - Parameters of this method.
351
+ * @returns {string} - Sanitized HTML.
352
+ */
353
+ stripPastedHtmlFontStyles({ html, }: {
354
+ html: string;
355
+ }): string;
356
+ /**
357
+ * Whether pasted text looks like markdown.
358
+ *
359
+ * @param {{
360
+ * text: string
361
+ * }} params - Parameters of this method.
362
+ * @returns {boolean} - true when markdown patterns match.
363
+ */
364
+ isMarkdown({ text, }: {
365
+ text: string;
366
+ }): boolean;
367
+ /**
368
+ * Build the inline-mark controls (bold / italic / underline / strikethrough).
369
+ *
370
+ * @returns {Array<FuroEditorControl>} - Mark controls.
371
+ */
372
+ generateMarkControls(): Array<FuroEditorControl>;
373
+ /**
374
+ * Build the block controls (bullets / numbers / blockquote).
375
+ *
376
+ * @returns {Array<FuroEditorControl>} - Block controls.
377
+ */
378
+ generateBlockControls(): Array<FuroEditorControl>;
379
+ /**
380
+ * Build the action controls (link, plus image / mention when enabled).
381
+ *
382
+ * @returns {Array<FuroEditorControl>} - Action controls.
383
+ */
384
+ generateActionControls(): Array<FuroEditorControl>;
385
+ /**
386
+ * Flatten all toolbar controls into a single list.
387
+ *
388
+ * @returns {Array<FuroEditorControl>} - Toolbar controls.
389
+ */
390
+ generateFormattingControls(): Array<FuroEditorControl>;
391
+ /**
392
+ * Build a lookup of control descriptors keyed by control name.
393
+ *
394
+ * @returns {Record<string, FuroEditorControl>} - Controls keyed by name.
395
+ */
396
+ generateControlHash(): Record<string, FuroEditorControl>;
397
+ /**
398
+ * Build a lookup of dropdown descriptors keyed by name.
399
+ *
400
+ * @returns {Record<string, FuroEditorToolbarEntry>} - Dropdown entries keyed by name.
401
+ */
402
+ generateDropdownDescriptorHash(): Record<string, FuroEditorToolbarEntry>;
403
+ /**
404
+ * The default toolbar layout: an array of groups, separators sit between groups.
405
+ *
406
+ * @returns {Array<Array<string>>} - Groups of item names.
407
+ */
408
+ generateDefaultToolbarGroups(): Array<Array<string>>;
409
+ /**
410
+ * The effective toolbar groups (consumer override or the default).
411
+ *
412
+ * @returns {Array<Array<string>>} - Groups of item names.
413
+ */
414
+ generateToolbarGroups(): Array<Array<string>>;
415
+ /**
416
+ * Resolve a name to a dropdown or control descriptor, leaving `overflow` unhandled.
417
+ *
418
+ * @param {{
419
+ * name: string
420
+ * dropdownHash: Record<string, FuroEditorToolbarEntry>
421
+ * controlHash: Record<string, FuroEditorControl>
422
+ * }} params - Parameters of this method.
423
+ * @returns {FuroEditorToolbarEntry | null} - Render descriptor.
424
+ */
425
+ resolveDropdownOrControlEntry({ name, dropdownHash, controlHash, }: {
426
+ name: string;
427
+ dropdownHash: Record<string, FuroEditorToolbarEntry>;
428
+ controlHash: Record<string, FuroEditorControl>;
429
+ }): FuroEditorToolbarEntry | null;
430
+ /**
431
+ * Resolve a toolbar item name to a render descriptor, or null when unavailable.
432
+ *
433
+ * @param {{
434
+ * name: string
435
+ * dropdownHash: Record<string, FuroEditorToolbarEntry>
436
+ * controlHash: Record<string, FuroEditorControl>
437
+ * }} params - Parameters of this method.
438
+ * @returns {FuroEditorToolbarEntry | null} - Render descriptor.
439
+ */
440
+ resolveToolbarEntry({ name, dropdownHash, controlHash, }: {
441
+ name: string;
442
+ dropdownHash: Record<string, FuroEditorToolbarEntry>;
443
+ controlHash: Record<string, FuroEditorControl>;
444
+ }): FuroEditorToolbarEntry | null;
445
+ /**
446
+ * Resolve the overflow menu, or null when no action is left to put in it.
447
+ *
448
+ * @returns {FuroEditorToolbarEntry | null} - Render descriptor.
449
+ */
450
+ resolveOverflowEntry(): FuroEditorToolbarEntry | null;
451
+ /**
452
+ * List the toolbar names this editor accepts, feature-gated names included.
453
+ *
454
+ * @returns {Array<string>} - Accepted names.
455
+ */
456
+ generateKnownToolbarNames(): Array<string>;
457
+ /**
458
+ * Whether a toolbar name lies outside the vocabulary. A gated feature's own name
459
+ * stays known, so switching the feature off never reads as a typo.
460
+ *
461
+ * @param {{
462
+ * name: string
463
+ * }} params - Parameters of this method.
464
+ * @returns {boolean} - true when nothing accepts the name.
465
+ */
466
+ isUnknownToolbarName({ name, }: {
467
+ name: string;
468
+ }): boolean;
469
+ /**
470
+ * Fail on a `parcel.toolbar` name nothing can resolve, which would otherwise ship
471
+ * as a quietly shorter toolbar. Production keeps dropping the name instead.
472
+ *
473
+ * @param {{
474
+ * name: string
475
+ * }} params - Parameters of this method.
476
+ * @returns {void}
477
+ * @throws {Error} When the name lies outside the toolbar vocabulary.
478
+ */
479
+ throwOnUnknownToolbarName({ name, }: {
480
+ name: string;
481
+ }): void;
482
+ /**
483
+ * List the default action names no toolbar group named.
484
+ *
485
+ * @returns {Array<string>} - Hidden action names.
486
+ */
487
+ generateOverflowEntryNames(): Array<string>;
488
+ /**
489
+ * Build the render descriptors the overflow menu holds.
490
+ *
491
+ * @returns {Array<FuroEditorToolbarEntry>} - Render descriptors.
492
+ */
493
+ generateOverflowEntries(): Array<FuroEditorToolbarEntry>;
494
+ /**
495
+ * Build the overflow menu options, one per hidden action.
496
+ *
497
+ * @returns {Array<import('../../molecules/FuroDropdownMenu/DropdownMenuOptionSelectEmitPayload.js').FuroDropdownMenuOption>} - Options.
498
+ */
499
+ generateOverflowOptions(): Array<import("../../molecules/FuroDropdownMenu/DropdownMenuOptionSelectEmitPayload.js").FuroDropdownMenuOption>;
500
+ /**
501
+ * Build one overflow menu option, nesting a hidden dropdown as a submenu.
502
+ *
503
+ * @param {{
504
+ * entry: FuroEditorToolbarEntry
505
+ * }} params - Parameters of this method.
506
+ * @returns {import('../../molecules/FuroDropdownMenu/DropdownMenuOptionSelectEmitPayload.js').FuroDropdownMenuOption} - Option.
507
+ */
508
+ buildOverflowOption({ entry, }: {
509
+ entry: FuroEditorToolbarEntry;
510
+ }): import("../../molecules/FuroDropdownMenu/DropdownMenuOptionSelectEmitPayload.js").FuroDropdownMenuOption;
511
+ /**
512
+ * Extract the icon an overflow row draws, mirroring the on-bar active swap.
513
+ *
514
+ * @param {{
515
+ * option: import('../../molecules/FuroDropdownMenu/DropdownMenuOptionSelectEmitPayload.js').FuroDropdownMenuOption
516
+ * }} params - Parameters of this method.
517
+ * @returns {string | null} - Icon name, or null when the row draws none.
518
+ */
519
+ extractOverflowIconName({ option, }: {
520
+ option: import("../../molecules/FuroDropdownMenu/DropdownMenuOptionSelectEmitPayload.js").FuroDropdownMenuOption;
521
+ }): string | null;
522
+ /**
523
+ * Whether an overflow row draws a colour swatch beside its label.
524
+ *
525
+ * @param {{
526
+ * option: import('../../molecules/FuroDropdownMenu/DropdownMenuOptionSelectEmitPayload.js').FuroDropdownMenuOption
527
+ * }} params - Parameters of this method.
528
+ * @returns {boolean} - true when the row is a colour option.
529
+ */
530
+ hasOverflowSwatch({ option, }: {
531
+ option: import("../../molecules/FuroDropdownMenu/DropdownMenuOptionSelectEmitPayload.js").FuroDropdownMenuOption;
532
+ }): boolean;
533
+ /**
534
+ * React to an overflow menu selection, routing to the handler the value belongs to.
535
+ *
536
+ * @param {{
537
+ * value?: string
538
+ * }} params - Parameters of this method.
539
+ * @returns {void}
540
+ */
541
+ onOverflowSelect({ value, }: {
542
+ value?: string;
543
+ }): void;
544
+ /**
545
+ * Build the flat toolbar layout (dropdowns, controls, separators between groups).
546
+ *
547
+ * @returns {Array<FuroEditorToolbarEntry>} - Ordered render descriptors.
548
+ */
549
+ generateToolbarLayout(): Array<FuroEditorToolbarEntry>;
550
+ /**
551
+ * Build the heading dropdown options.
552
+ *
553
+ * @returns {Array<import('../../molecules/FuroDropdownMenu/DropdownMenuOptionSelectEmitPayload.js').FuroDropdownMenuOption>} - Options.
554
+ */
555
+ generateHeadingOptions(): Array<import("../../molecules/FuroDropdownMenu/DropdownMenuOptionSelectEmitPayload.js").FuroDropdownMenuOption>;
556
+ /**
557
+ * Build the text-color dropdown options.
558
+ *
559
+ * @returns {Array<import('../../molecules/FuroDropdownMenu/DropdownMenuOptionSelectEmitPayload.js').FuroDropdownMenuOption>} - Options.
560
+ */
561
+ generateColorOptions(): Array<import("../../molecules/FuroDropdownMenu/DropdownMenuOptionSelectEmitPayload.js").FuroDropdownMenuOption>;
562
+ /**
563
+ * Resolve the swatch color for a color dropdown option value.
564
+ *
565
+ * @param {{
566
+ * value?: string
567
+ * }} params - Parameters of this method.
568
+ * @returns {string} - CSS color for the swatch dot.
569
+ */
570
+ extractColorSwatch({ value, }: {
571
+ value?: string;
572
+ }): string;
573
+ /**
574
+ * Build the text-align dropdown options.
575
+ *
576
+ * @returns {Array<import('../../molecules/FuroDropdownMenu/DropdownMenuOptionSelectEmitPayload.js').FuroDropdownMenuOption>} - Options.
577
+ */
578
+ generateAlignOptions(): Array<import("../../molecules/FuroDropdownMenu/DropdownMenuOptionSelectEmitPayload.js").FuroDropdownMenuOption>;
579
+ /**
580
+ * React to a formatting control click.
581
+ *
582
+ * @param {{
583
+ * control: FuroEditorControl
584
+ * }} params - Parameters of this method.
585
+ * @returns {void}
586
+ */
587
+ onControlClick({ control, }: {
588
+ control: FuroEditorControl;
589
+ }): void;
590
+ /**
591
+ * Open a native file picker for images and insert the chosen files inline.
592
+ *
593
+ * @returns {void}
594
+ */
595
+ openImagePicker(): void;
596
+ /**
597
+ * Create a hidden multi-image file input element.
598
+ *
599
+ * @returns {HTMLInputElement} - The file input.
600
+ */
601
+ createImageFileInput(): HTMLInputElement;
602
+ /**
603
+ * Extract image files from a FileList-like value.
604
+ *
605
+ * @param {{
606
+ * fileSource: FileList | null
607
+ * }} params - Parameters of this method.
608
+ * @returns {Array<File>} - Image files only.
609
+ */
610
+ extractImageFiles({ fileSource, }: {
611
+ fileSource: FileList | null;
612
+ }): Array<File>;
613
+ /**
614
+ * Extract the image files the editor embeds itself, empty without an upload adapter.
615
+ *
616
+ * @param {{
617
+ * fileSource: FileList | null
618
+ * }} params - Parameters of this method.
619
+ * @returns {Array<File>} - Image files the editor takes.
620
+ */
621
+ extractInsertableImageFiles({ fileSource, }: {
622
+ fileSource: FileList | null;
623
+ }): Array<File>;
624
+ /**
625
+ * Extract the files the editor leaves for the consumer to store.
626
+ *
627
+ * @param {{
628
+ * fileSource: FileList | null
629
+ * }} params - Parameters of this method.
630
+ * @returns {Array<File>} - Files the editor does not insert.
631
+ */
632
+ extractUnconsumedFiles({ fileSource, }: {
633
+ fileSource: FileList | null;
634
+ }): Array<File>;
635
+ /**
636
+ * Upload image files through the consumer adapter and insert them inline.
637
+ *
638
+ * The first file lands at `position` (or the cursor when null); the rest follow
639
+ * it in order. Uploads run sequentially to preserve document order.
640
+ *
641
+ * @param {{
642
+ * files: FileList | Array<File> | null
643
+ * position?: number | null
644
+ * }} params - Parameters of this method.
645
+ * @returns {void}
646
+ */
647
+ uploadAndInsertImages({ files, position, }: {
648
+ files: FileList | Array<File> | null;
649
+ position?: number | null;
650
+ }): void;
651
+ /**
652
+ * Upload one image and insert it, reporting a refusal instead of ending the batch.
653
+ *
654
+ * @param {{
655
+ * file: File
656
+ * position: number | null
657
+ * }} params - Parameters of this method.
658
+ * @returns {Promise<void>} - Resolves once the file is inserted or reported.
659
+ */
660
+ uploadAndInsertImage({ file, position, }: {
661
+ file: File;
662
+ position: number | null;
663
+ }): Promise<void>;
664
+ /**
665
+ * React to a dropdown option selection.
666
+ *
667
+ * @param {{
668
+ * value?: string
669
+ * }} params - Parameters of this method (value is the option's encoded action).
670
+ * @returns {void}
671
+ */
672
+ onDropdownSelect({ value, }: {
673
+ value?: string;
674
+ }): void;
675
+ /**
676
+ * Whether a formatting control is currently active.
677
+ *
678
+ * @param {{
679
+ * control: FuroEditorControl
680
+ * }} params - Parameters of this method.
681
+ * @returns {boolean} - true when active.
682
+ */
683
+ isControlActive({ control, }: {
684
+ control: FuroEditorControl;
685
+ }): boolean;
686
+ /**
687
+ * Extract the button variant for a control based on its active state.
688
+ *
689
+ * @param {{
690
+ * control: FuroEditorControl
691
+ * }} params - Parameters of this method.
692
+ * @returns {'secondary' | 'ghost'} - Variant.
693
+ */
694
+ extractControlVariant({ control, }: {
695
+ control: FuroEditorControl;
696
+ }): "secondary" | "ghost";
697
+ /**
698
+ * Extract the trigger variant for a dropdown group based on its active state.
699
+ *
700
+ * @param {{
701
+ * kind: 'heading' | 'textStyle' | 'textAlign'
702
+ * }} params - Parameters of this method.
703
+ * @returns {'secondary' | 'ghost'} - Variant.
704
+ */
705
+ extractDropdownVariant({ kind, }: {
706
+ kind: "heading" | "textStyle" | "textAlign";
707
+ }): "secondary" | "ghost";
708
+ /**
709
+ * Whether a dropdown group (heading / color / align) is active.
710
+ *
711
+ * @param {{
712
+ * kind: 'heading' | 'textStyle' | 'textAlign'
713
+ * }} params - Parameters of this method.
714
+ * @returns {boolean} - true when active.
715
+ */
716
+ isDropdownActive({ kind, }: {
717
+ kind: "heading" | "textStyle" | "textAlign";
718
+ }): boolean;
719
+ /**
720
+ * Reflect the dialog open state from a FuroDialog open change.
721
+ *
722
+ * @param {{
723
+ * isOpen: boolean
724
+ * }} params - Parameters of this method.
725
+ * @returns {void}
726
+ */
727
+ onLinkDialogOpenChange({ isOpen, }: {
728
+ isOpen: boolean;
729
+ }): void;
730
+ /**
731
+ * Open the link dialog, prefilling from the current selection.
732
+ *
733
+ * @returns {void}
734
+ */
735
+ openLinkDialog(): void;
736
+ /**
737
+ * Close the link dialog.
738
+ *
739
+ * @returns {void}
740
+ */
741
+ closeLinkDialog(): void;
742
+ /**
743
+ * Apply the link from the dialog and close it.
744
+ *
745
+ * @returns {void}
746
+ */
747
+ saveLink(): void;
748
+ /**
749
+ * Update the dialog link URL.
750
+ *
751
+ * @param {{
752
+ * url?: string | null
753
+ * }} params - Parameters of this method.
754
+ * @returns {void}
755
+ */
756
+ updateLinkUrl({ url, }: {
757
+ url?: string | null;
758
+ }): void;
759
+ /**
760
+ * Update the dialog link display text.
761
+ *
762
+ * @param {{
763
+ * displayText?: string | null
764
+ * }} params - Parameters of this method.
765
+ * @returns {void}
766
+ */
767
+ updateLinkDisplayText({ displayText, }: {
768
+ displayText?: string | null;
769
+ }): void;
770
+ /**
771
+ * Remove an attached file by index and emit the updated array.
772
+ *
773
+ * @param {{
774
+ * index: number
775
+ * }} params - Parameters of this method.
776
+ * @returns {void}
777
+ */
778
+ removeAttachedFile({ index, }: {
779
+ index: number;
780
+ }): void;
781
+ /**
782
+ * Whether the consumer provided an `attachments` slot.
783
+ *
784
+ * @returns {boolean} - true when the slot is present.
785
+ */
786
+ hasAttachmentsSlot(): boolean;
787
+ }
788
+ export type FuroEditorControl = {
789
+ name: string;
790
+ kind: "toggle" | "link" | "image" | "mention";
791
+ command: string;
792
+ iconName: string;
793
+ activeIconName: string;
794
+ tooltip: string;
795
+ };
796
+ export type FuroEditorToolbarEntry = {
797
+ type: "separator";
798
+ key: string;
799
+ } | {
800
+ type: "dropdown";
801
+ key: string;
802
+ label: string;
803
+ iconName: string;
804
+ dropdownKind: "heading" | "textStyle" | "textAlign";
805
+ hasSwatch?: boolean;
806
+ options: Array<import("../../molecules/FuroDropdownMenu/DropdownMenuOptionSelectEmitPayload.js").FuroDropdownMenuOption>;
807
+ } | {
808
+ type: "control";
809
+ key: string;
810
+ control: FuroEditorControl;
811
+ } | {
812
+ type: "overflow";
813
+ key: string;
814
+ };
815
+ export type FuroEditorStatusReactive = {
816
+ isLinkDialogOpen: boolean;
817
+ };
818
+ export type FuroEditorAddLinkReactive = {
819
+ url: string;
820
+ displayText: string;
821
+ };
822
+ export type FuroEditorContextParams = import("../../../contexts/BaseFuroContext.js").BaseFuroContextParams<{
823
+ parcel?: FuroEditorParcel | null;
824
+ }> & {
825
+ editorRef: ReturnType<typeof import("@tiptap/vue-3").useEditor>;
826
+ reactiveHash: {
827
+ statusReactive: import("vue").Reactive<FuroEditorStatusReactive>;
828
+ addLinkReactive: import("vue").Reactive<FuroEditorAddLinkReactive>;
829
+ };
830
+ };
831
+ export type FuroEditorContextFactoryParams = Omit<FuroEditorContextParams, "reactiveHash"> & {
832
+ reactiveHash?: FuroEditorContextParams["reactiveHash"];
833
+ };
834
+ export type FuroEditorParcel = {
835
+ value?: string;
836
+ placeholder?: string;
837
+ readOnly?: boolean;
838
+ appearance?: "editor" | "plain";
839
+ autofocus?: boolean | "start" | "end" | "all" | number;
840
+ contentAttributes?: Record<string, string>;
841
+ toolbar?: Array<Array<string>>;
842
+ attachedFiles?: Array<any>;
843
+ labels?: Partial<typeof DEFAULT_LABELS>;
844
+ mention?: {
845
+ searchMentions: (params: {
846
+ query: string;
847
+ }) => Promise<Array<{
848
+ id: string | number;
849
+ label: string;
850
+ }>>;
851
+ };
852
+ image?: {
853
+ uploadImage: (params: {
854
+ file: File;
855
+ }) => Promise<{
856
+ src: string;
857
+ alt?: string;
858
+ }>;
859
+ };
860
+ actionOverrides?: Record<string, (params: {
861
+ control: FuroEditorControl;
862
+ command: FuroEditorCommandContext;
863
+ editor: import("@tiptap/vue-3").Editor | null;
864
+ }) => void>;
865
+ };
866
+ import BaseFuroContext from '../../../contexts/BaseFuroContext.js';
867
+ import FuroEditorCommandContext from './FuroEditorCommandContext.js';
868
+ declare namespace DEFAULT_LABELS {
869
+ let normalText: string;
870
+ let heading1: string;
871
+ let heading2: string;
872
+ let heading3: string;
873
+ let heading4: string;
874
+ let colorDefault: string;
875
+ let colorRed: string;
876
+ let colorBlue: string;
877
+ let colorGreen: string;
878
+ let colorOrange: string;
879
+ let colorPurple: string;
880
+ let alignLeft: string;
881
+ let alignCenter: string;
882
+ let alignRight: string;
883
+ let alignJustify: string;
884
+ let heading: string;
885
+ let textColor: string;
886
+ let textAlign: string;
887
+ let bold: string;
888
+ let italic: string;
889
+ let underline: string;
890
+ let strike: string;
891
+ let bullets: string;
892
+ let numbers: string;
893
+ let blockquote: string;
894
+ let link: string;
895
+ let mention: string;
896
+ let image: string;
897
+ let overflow: string;
898
+ let linkDialogTitle: string;
899
+ let linkUrlLabel: string;
900
+ let linkDisplayTextLabel: string;
901
+ let linkSave: string;
902
+ let linkCancel: string;
903
+ }
904
+ export {};