@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,318 @@
1
+ import {
2
+ watch,
3
+ } from 'vue'
4
+
5
+ /**
6
+ * Furo Component Context.
7
+ *
8
+ * @template {typeof import('./BaseFuroContextAccessor').default<*> | null} [A = null] - ContextAccessor class.
9
+ * @template {import('vue').ComponentCustomProps} [P = {}] - Props.
10
+ * @template {string | null} [EE = null] - emit() event names.
11
+ */
12
+ export default class BaseFuroContext {
13
+ /**
14
+ * Constructor.
15
+ *
16
+ * @param {BaseFuroContextParams<P>} params - Parameters of this constructor.
17
+ */
18
+ constructor ({
19
+ props,
20
+ componentContext,
21
+
22
+ reactiveHash,
23
+ refHash,
24
+ shallowRefHash,
25
+ modelRefHash,
26
+ }) {
27
+ this.props = props
28
+ this.componentContext = componentContext
29
+
30
+ this.reactiveHash = reactiveHash
31
+ this.refHash = refHash
32
+ this.shallowRefHash = shallowRefHash
33
+ this.modelRefHash = modelRefHash
34
+
35
+ this.accessor = this.createContextAccessor()
36
+ }
37
+
38
+ /**
39
+ * Factory method to create a new instance of this class.
40
+ *
41
+ * @template {X extends typeof BaseFuroContext ? X : never} T, X
42
+ * @param {BaseFuroContextFactoryParams<{}>} params - Parameters of this factory method.
43
+ * @returns {InstanceType<T>} - New instance of this class.
44
+ * @this {T}
45
+ */
46
+ static create ({
47
+ props,
48
+ componentContext,
49
+ }) {
50
+ const reactiveHash = this.buildReactiveHash()
51
+ const refHash = this.buildRefHash()
52
+ const shallowRefHash = this.buildShallowRefHash()
53
+ const modelRefHash = this.buildModelRefHash()
54
+
55
+ return /** @type {InstanceType<T>} */ (
56
+ new this({
57
+ props,
58
+ componentContext,
59
+ reactiveHash,
60
+ refHash,
61
+ shallowRefHash,
62
+ modelRefHash,
63
+ })
64
+ )
65
+ }
66
+
67
+ /**
68
+ * get: ContextAccessor for this class.
69
+ *
70
+ * @returns {typeof import('./BaseFuroContextAccessor').default<*> | null} - ContextAccessor class of this class.
71
+ */
72
+ static get ContextAccessor () {
73
+ return null
74
+ }
75
+
76
+ /**
77
+ * emit() event name.
78
+ *
79
+ * @abstract
80
+ * @returns {Record<string, string>}
81
+ */
82
+ static get EMIT_EVENT_NAME () {
83
+ return {}
84
+ }
85
+
86
+ /**
87
+ * Build reactive hash.
88
+ *
89
+ * @returns {Record<string, import('vue').Reactive<*>>}
90
+ */
91
+ static buildReactiveHash () {
92
+ return {}
93
+ }
94
+
95
+ /**
96
+ * Build ref hash.
97
+ *
98
+ * @returns {Record<string, import('vue').Ref<*>>}
99
+ */
100
+ static buildRefHash () {
101
+ return {}
102
+ }
103
+
104
+ /**
105
+ * Build shallow ref hash.
106
+ *
107
+ * @returns {Record<string, import('vue').ShallowRef<*>>}
108
+ */
109
+ static buildShallowRefHash () {
110
+ return {}
111
+ }
112
+
113
+ /**
114
+ * Build model value hash.
115
+ *
116
+ * @returns {Record<string, import('vue').ModelRef<*>>}
117
+ */
118
+ static buildModelRefHash () {
119
+ return {}
120
+ }
121
+
122
+ /**
123
+ * Create MutationObserver.
124
+ *
125
+ * @param {{
126
+ * handler: MutationCallback
127
+ * }} args - Arguments of this method.
128
+ * @returns {MutationObserver} - New instance of MutationObserver.
129
+ */
130
+ static createMutationObserver ({
131
+ handler,
132
+ }) {
133
+ return new MutationObserver(handler)
134
+ }
135
+
136
+ /**
137
+ * Get the constructor of this class.
138
+ *
139
+ * @returns {typeof BaseFuroContext<*, *, *>}
140
+ */
141
+ get Ctor () {
142
+ return /** @type {typeof BaseFuroContext<*, *, *>} */ (this.constructor)
143
+ }
144
+
145
+ /**
146
+ * get: ContextAccessor for this class.
147
+ *
148
+ * @returns {import('./BaseFuroContextAccessor').default<*> | null} - ContextAccessor class of this class.
149
+ */
150
+ createContextAccessor () {
151
+ if (!this.Ctor.ContextAccessor) {
152
+ return null
153
+ }
154
+
155
+ return this.Ctor.ContextAccessor
156
+ .create({
157
+ context: this,
158
+ })
159
+ }
160
+
161
+ /**
162
+ * get: An instance of ContextAccessor.
163
+ *
164
+ * @returns {InstanceType<A>} - An instance of ContextAccessor.
165
+ */
166
+ get $ () {
167
+ return /** @type {*} */ (this.accessor)
168
+ }
169
+
170
+ /**
171
+ * get: emit() event name.
172
+ *
173
+ * @returns {Record<string, EE>} - emit() event name.
174
+ */
175
+ get EMIT_EVENT_NAME () {
176
+ return /** @type {*} */ (this.Ctor.EMIT_EVENT_NAME)
177
+ }
178
+
179
+ /**
180
+ * get: parcel of props.
181
+ *
182
+ * @returns {P['parcel'] | null} - Parcel from props.
183
+ */
184
+ get parcel () {
185
+ return this.props.parcel
186
+ ?? null
187
+ }
188
+
189
+ /**
190
+ * get: attrs of component context.
191
+ *
192
+ * @returns {import('vue').SetupContext['attrs']} - Attributes of component context.
193
+ */
194
+ get attrs () {
195
+ return this.componentContext.attrs
196
+ }
197
+
198
+ /**
199
+ * get: slots of component context.
200
+ *
201
+ * @returns {(
202
+ * event: EE,
203
+ * ...args: Array<any>
204
+ * ) => void} - emit() function of component context.
205
+ */
206
+ get emit () {
207
+ return /** @type {*} */ (this.componentContext.emit)
208
+ }
209
+
210
+ /**
211
+ * get: expose() of component context.
212
+ *
213
+ * @returns {import('vue').SetupContext['expose']} - Listeners of component context.
214
+ */
215
+ get expose () {
216
+ return this.componentContext.expose
217
+ }
218
+
219
+ /**
220
+ * get: slots of component context.
221
+ *
222
+ * @returns {import('vue').SetupContext['slots']} - Slots of component context.
223
+ */
224
+ get slots () {
225
+ return this.componentContext.slots
226
+ }
227
+
228
+ /**
229
+ * get: watch() of component context.
230
+ *
231
+ * @returns {import('vue').watch} - Watch of component context.
232
+ */
233
+ get watch () {
234
+ return watch
235
+ }
236
+
237
+ /**
238
+ * Whether a fallthrough attribute is on. Presence decides, as in HTML: every value
239
+ * reads as on, the bare attribute's '' and 0 included, except false and absent.
240
+ *
241
+ * @param {{
242
+ * name: string
243
+ * }} params - Parameters of this method.
244
+ * @returns {boolean} - Whether the attribute is on.
245
+ */
246
+ hasBooleanAttribute ({
247
+ name,
248
+ }) {
249
+ const attributeValue = this.attrs?.[name]
250
+ ?? null
251
+
252
+ return attributeValue !== null
253
+ && attributeValue !== false
254
+ }
255
+
256
+ /**
257
+ * Setup component context.
258
+ *
259
+ * @template T
260
+ * @param {object} [args] - Arguments of this method.
261
+ * @returns {T} - For method chaining.
262
+ * @this {T}
263
+ * @example
264
+ * ```
265
+ * setupComponent (args) {
266
+ * this..expose(
267
+ * this.generateExposeHash()
268
+ * )
269
+ *
270
+ * watch(
271
+ * [
272
+ * this.rootElementRef,
273
+ * ],
274
+ * this.generateWatchRootElementHandler()
275
+ * )
276
+ *
277
+ * return this
278
+ * }
279
+ * ```
280
+ */
281
+ setupComponent (args = {}) {
282
+ return this
283
+ }
284
+
285
+ /**
286
+ * Generate expose() hash.
287
+ *
288
+ * @returns {Record<string, Function>} - expose() hash.
289
+ */
290
+ generateExposeHash () {
291
+ return {}
292
+ }
293
+ }
294
+
295
+ /**
296
+ * @typedef {{
297
+ * props: P & {
298
+ * parcel?: *
299
+ * }
300
+ * componentContext: import('vue').SetupContext<EE>
301
+ * reactiveHash?: ReactiveHash
302
+ * refHash?: RefHash
303
+ * shallowRefHash?: ShallowRefHash
304
+ * modelRefHash?: ModelRefHash
305
+ * }} BaseFuroContextParams
306
+ * @template {import('vue').ComponentCustomProps | {}} [P = {}] - Props.
307
+ * @template {string | null} [EE = null] - emit() event names.
308
+ * @template {Record<string, import('vue').Reactive<*>>} [ReactiveHash = {}] - Reactive hash.
309
+ * @template {Record<string, import('vue').Ref<*>>} [RefHash = {}] - Ref hash.
310
+ * @template {Record<string, import('vue').ShallowRef<*>>} [ShallowRefHash = {}] - ShallowRef hash.
311
+ * @template {Record<string, import('vue').ModelRef<*>>} [ModelRefHash = {}] - ModelRef hash.
312
+ */
313
+
314
+ /**
315
+ * @typedef {BaseFuroContextParams<P>} BaseFuroContextFactoryParams
316
+ * @template {import('vue').ComponentCustomProps | {}} [P = {}] - Props.
317
+ * @template {string | null} [EE = null] - emit() event names.
318
+ */
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Base class for all context accessors.
3
+ *
4
+ * @template {import('./BaseFuroContext').default<*>} C
5
+ * @property {C} context - Context.
6
+ */
7
+ export default class BaseFuroContextAccessor {
8
+ /**
9
+ * Constructor.
10
+ *
11
+ * @param {BaseFuroContextAccessorParams<C>} params - Parameters of this constructor.
12
+ */
13
+ constructor ({
14
+ context,
15
+ }) {
16
+ this.context = context
17
+ }
18
+
19
+ /**
20
+ * Factory method to create a new instance of this class.
21
+ *
22
+ * @template {X extends typeof BaseFuroContextAccessor<*> ? X : never} T, X
23
+ * @param {BaseFuroContextAccessorFactoryParams} params - Parameters of this factory method.
24
+ * @returns {InstanceType<T>} - New instance of this class.
25
+ * @this {T}
26
+ */
27
+ static create ({
28
+ context,
29
+ }) {
30
+ return /** @type {*} */ (
31
+ new this({
32
+ context,
33
+ })
34
+ )
35
+ }
36
+ }
37
+
38
+ /**
39
+ * @typedef {{
40
+ * context: C
41
+ * }} BaseFuroContextAccessorParams
42
+ * @template {import('./BaseFuroContext').default<*>} C
43
+ */
44
+
45
+ /**
46
+ * @typedef {BaseFuroContextAccessorParams<*>} BaseFuroContextAccessorFactoryParams
47
+ */
@@ -0,0 +1,91 @@
1
+ /**
2
+ * BaseEmitPayload.
3
+ *
4
+ * @template {Event} [E = Event] - Event.
5
+ * @template {HTMLElement} [C = HTMLElement] - Control element.
6
+ */
7
+ export default class BaseEmitPayload {
8
+ /**
9
+ * Constructor of this class.
10
+ *
11
+ * @param {BaseEmitPayloadParams<E>} params - Parameters of this constructor.
12
+ */
13
+ constructor ({
14
+ rawEvent,
15
+ }) {
16
+ this.rawEvent = rawEvent
17
+ }
18
+
19
+ /**
20
+ * Factory method of this class.
21
+ *
22
+ * @template {X extends typeof BaseEmitPayload ? X : never} T, X
23
+ * @param {BaseEmitPayloadFactoryParams<*>} params - Parameters of this factory method.
24
+ * @returns {InstanceType<T>} - A new instance of this class.
25
+ * @this {T}
26
+ */
27
+ static create ({
28
+ rawEvent,
29
+ }) {
30
+ return /** @type {InstanceType<T>} */ (
31
+ new this({
32
+ rawEvent,
33
+ })
34
+ )
35
+ }
36
+
37
+ /**
38
+ * Get the control element from the raw event.
39
+ *
40
+ * @returns {C | null} - The control element from the raw event.
41
+ */
42
+ get controlElement () {
43
+ return /** @type {C} */ (this.rawEvent?.target)
44
+ ?? null
45
+ }
46
+
47
+ /**
48
+ * Read a DOM attribute from the control element.
49
+ *
50
+ * @param {{
51
+ * key: string
52
+ * }} params - Parameters of this method.
53
+ * @returns {string | null} - Attribute value, or `null` when the control or attribute is missing.
54
+ */
55
+ getElementAttribute ({
56
+ key,
57
+ }) {
58
+ return this.controlElement?.getAttribute(key)
59
+ ?? null
60
+ }
61
+
62
+ /**
63
+ * Parse a string as a number (e.g. after reading an attribute).
64
+ *
65
+ * @param {{
66
+ * stringValue: string | null
67
+ * }} params - Parameters of this method.
68
+ * @returns {number | null} - Parsed number, or `null` when `stringValue` is `null`.
69
+ */
70
+ parseStringAsNumber ({
71
+ stringValue,
72
+ }) {
73
+ if (stringValue === null) {
74
+ return null
75
+ }
76
+
77
+ return Number(stringValue)
78
+ }
79
+ }
80
+
81
+ /**
82
+ * @typedef {{
83
+ * rawEvent: E
84
+ * }} BaseEmitPayloadParams<E>
85
+ * @template {Event} E
86
+ */
87
+
88
+ /**
89
+ * @typedef {BaseEmitPayloadParams<E>} BaseEmitPayloadFactoryParams<E>
90
+ * @template {Event} E
91
+ */
@@ -0,0 +1,61 @@
1
+ /**
2
+ * Components - Atoms
3
+ */
4
+ export { default as FuroAvatar } from './components/atoms/FuroAvatar/FuroAvatar.vue'
5
+ export { default as FuroBadge } from './components/atoms/FuroBadge/FuroBadge.vue'
6
+ export { default as FuroButton } from './components/atoms/FuroButton/FuroButton.vue'
7
+ export { default as FuroCheckbox } from './components/atoms/FuroCheckbox/FuroCheckbox.vue'
8
+ export { default as FuroEmailField } from './components/atoms/FuroEmailField/FuroEmailField.vue'
9
+ export { default as FuroFileField } from './components/atoms/FuroFileField/FuroFileField.vue'
10
+ export { default as FuroIcon } from './components/atoms/FuroIcon/FuroIcon.vue'
11
+ export { default as FuroNumberField } from './components/atoms/FuroNumberField/FuroNumberField.vue'
12
+ export { default as FuroPasswordField } from './components/atoms/FuroPasswordField/FuroPasswordField.vue'
13
+ export { default as FuroRadio } from './components/atoms/FuroRadio/FuroRadio.vue'
14
+ export { default as FuroSwitch } from './components/atoms/FuroSwitch/FuroSwitch.vue'
15
+ export { default as FuroTextField } from './components/atoms/FuroTextField/FuroTextField.vue'
16
+ export { default as FuroTextarea } from './components/atoms/FuroTextarea/FuroTextarea.vue'
17
+ export { default as FuroToggle } from './components/atoms/FuroToggle/FuroToggle.vue'
18
+
19
+ /**
20
+ * Components - Molecules
21
+ */
22
+ export { default as FuroAccordion } from './components/molecules/FuroAccordion/FuroAccordion.vue'
23
+ export { default as FuroAttachment } from './components/molecules/FuroAttachment/FuroAttachment.vue'
24
+ export { default as FuroAutocompleteField } from './components/molecules/FuroAutocompleteField/FuroAutocompleteField.vue'
25
+ export { default as FuroAvatarGroup } from './components/molecules/FuroAvatarGroup/FuroAvatarGroup.vue'
26
+ export { default as FuroBreadcrumb } from './components/molecules/FuroBreadcrumb/FuroBreadcrumb.vue'
27
+ export { default as FuroCollapsible } from './components/molecules/FuroCollapsible/FuroCollapsible.vue'
28
+ export { default as FuroControlBlock } from './components/molecules/FuroControlBlock/FuroControlBlock.vue'
29
+ export { default as FuroDatePicker } from './components/molecules/FuroDatePicker/FuroDatePicker.vue'
30
+ export { default as FuroDateTimePicker } from './components/molecules/FuroDateTimePicker/FuroDateTimePicker.vue'
31
+ export { default as FuroDropdownMenu } from './components/molecules/FuroDropdownMenu/FuroDropdownMenu.vue'
32
+ export { default as FuroEditableField } from './components/molecules/FuroEditableField/FuroEditableField.vue'
33
+ export { default as FuroEmptyState } from './components/molecules/FuroEmptyState/FuroEmptyState.vue'
34
+ export { default as FuroErrorState } from './components/molecules/FuroErrorState/FuroErrorState.vue'
35
+ export { default as FuroPagination } from './components/molecules/FuroPagination/FuroPagination.vue'
36
+ export { default as FuroPopover } from './components/molecules/FuroPopover/FuroPopover.vue'
37
+ export { default as FuroScrollArea } from './components/molecules/FuroScrollArea/FuroScrollArea.vue'
38
+ export { default as FuroSearchField } from './components/molecules/FuroSearchField/FuroSearchField.vue'
39
+ export { default as FuroSectionHeader } from './components/molecules/FuroSectionHeader/FuroSectionHeader.vue'
40
+ export { default as FuroSelect } from './components/molecules/FuroSelect/FuroSelect.vue'
41
+ export { default as FuroSeparator } from './components/molecules/FuroSeparator/FuroSeparator.vue'
42
+ export { default as FuroSkeleton } from './components/molecules/FuroSkeleton/FuroSkeleton.vue'
43
+ export { default as FuroSplitter } from './components/molecules/FuroSplitter/FuroSplitter.vue'
44
+ export { default as FuroTimeField } from './components/molecules/FuroTimeField/FuroTimeField.vue'
45
+ export { default as FuroToggleGroup } from './components/molecules/FuroToggleGroup/FuroToggleGroup.vue'
46
+ export { default as FuroToolBar } from './components/molecules/FuroToolBar/FuroToolBar.vue'
47
+ export { default as FuroTooltip } from './components/molecules/FuroTooltip/FuroTooltip.vue'
48
+
49
+ /**
50
+ * Components - Organisms
51
+ */
52
+ export { default as FuroAlertDialog } from './components/organisms/FuroAlertDialog/FuroAlertDialog.vue'
53
+ export { default as FuroDialog } from './components/organisms/FuroDialog/FuroDialog.vue'
54
+ export { default as FuroDrawer } from './components/organisms/FuroDrawer/FuroDrawer.vue'
55
+ export { default as FuroEditor } from './components/organisms/FuroEditor/FuroEditor.vue'
56
+ export { default as FuroSidebar } from './components/organisms/FuroSidebar/FuroSidebar.vue'
57
+ export { default as FuroStepper } from './components/organisms/FuroStepper/FuroStepper.vue'
58
+ export { default as FuroTable } from './components/organisms/FuroTable/FuroTable.vue'
59
+ export { default as FuroTabs } from './components/organisms/FuroTabs/FuroTabs.vue'
60
+ export { default as FuroToast } from './components/organisms/FuroToast/FuroToast.vue'
61
+ export { default as FuroToaster } from './components/organisms/FuroToast/FuroToaster.vue'
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Furo Context
3
+ */
4
+ export { default as BaseFuroContext } from './contexts/BaseFuroContext.js'
5
+
6
+ export { default as BaseFuroContextAccessor } from './contexts/BaseFuroContextAccessor.js'
7
+
8
+ /**
9
+ * Icons: consumer icon registration (also exposed at the `furo-vue/icons` subpath)
10
+ */
11
+ export { furoIconRegistry } from './components/atoms/FuroIcon/icons.js'
12
+ export { default as FuroIconRegistry } from './components/atoms/FuroIcon/FuroIconRegistry.js'
13
+
14
+ /**
15
+ * Toast: imperative global helper, the supported import path
16
+ */
17
+ export { toast, toastQueue } from './components/organisms/FuroToast/toast.js'
18
+ export { default as ToastQueue } from './components/organisms/FuroToast/ToastQueue.js'
@@ -0,0 +1,75 @@
1
+ /**
2
+ * Timer Clerk
3
+ *
4
+ * @property {NodeJS.Timeout | number | null} lastTimer - Last timer
5
+ */
6
+ export default class TimerClerk {
7
+ /**
8
+ * Constructor.
9
+ *
10
+ * @param {{
11
+ * onTick: Function
12
+ * timeInMilliseconds: number
13
+ * }} params - Parameters
14
+ */
15
+ constructor ({
16
+ onTick,
17
+ timeInMilliseconds,
18
+ }) {
19
+ this.onTick = onTick
20
+ this.timeInMilliseconds = timeInMilliseconds
21
+
22
+ this.lastTimer = null
23
+ }
24
+
25
+ /**
26
+ * Factory method to create a new instance of this class.
27
+ *
28
+ * @template {X extends typeof TimerClerk ? X : never} T, X
29
+ * @param {{
30
+ * onTick: Function
31
+ * timeInMilliseconds: number
32
+ * }} params - Parameters
33
+ * @returns {InstanceType<T>} - New instance of this class
34
+ * @this {T}
35
+ */
36
+ static create ({
37
+ onTick,
38
+ timeInMilliseconds,
39
+ }) {
40
+ return /** @type {InstanceType<T>} */ (
41
+ new this({
42
+ onTick,
43
+ timeInMilliseconds,
44
+ })
45
+ )
46
+ }
47
+
48
+ /**
49
+ * Start the timer.
50
+ *
51
+ * @param {Array<*>} args - Arguments
52
+ * @returns {void}
53
+ */
54
+ startTimer (...args) {
55
+ this.stopTimer()
56
+
57
+ this.lastTimer = setTimeout(
58
+ () => this.onTick(...args),
59
+ this.timeInMilliseconds
60
+ )
61
+ }
62
+
63
+ /**
64
+ * Stop the timer.
65
+ *
66
+ * @returns {void}
67
+ */
68
+ stopTimer () {
69
+ if (!this.lastTimer) {
70
+ return
71
+ }
72
+
73
+ clearTimeout(this.lastTimer)
74
+ }
75
+ }