@furcrer/fullstack-components 0.1.0 → 1.0.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 (193) hide show
  1. package/README.md +2 -2
  2. package/dist/index.js +2015 -1088
  3. package/dist/styles.css +1 -1
  4. package/dist/types/components/containers/Grid/Grid.d.ts +1 -0
  5. package/dist/types/components/containers/Stack/Stack.d.ts +1 -0
  6. package/dist/types/components/data/CrudExample/CrudExample.d.ts +1 -0
  7. package/dist/types/components/data/ResourceTable/ResourceTable.d.ts +3 -2
  8. package/dist/types/components/data/ResultsCount/ResultsCount.d.ts +11 -0
  9. package/dist/types/components/data/ResultsCount/ResultsCount.fixture.d.ts +2 -0
  10. package/dist/types/components/data/ResultsCount/ResultsCount.variants.d.ts +11 -0
  11. package/dist/types/components/data/ResultsCount/index.d.ts +2 -0
  12. package/dist/types/components/forms/ColorInput/ColorInput.d.ts +6 -0
  13. package/dist/types/components/forms/DateInput/DateInput.d.ts +9 -0
  14. package/dist/types/components/forms/FileInput/FileInput.d.ts +6 -0
  15. package/dist/types/components/forms/MultiSelectFilter/MultiSelectFilter.d.ts +23 -0
  16. package/dist/types/components/forms/MultiSelectFilter/MultiSelectFilter.fixture.d.ts +2 -0
  17. package/dist/types/components/forms/MultiSelectFilter/MultiSelectFilter.variants.d.ts +9 -0
  18. package/dist/types/components/forms/MultiSelectFilter/index.d.ts +2 -0
  19. package/dist/types/components/forms/NumberInput/NumberInput.d.ts +8 -0
  20. package/dist/types/components/forms/PasswordInput/PasswordInput.d.ts +6 -0
  21. package/dist/types/components/forms/RadioGroup/RadioGroup.d.ts +8 -0
  22. package/dist/types/components/forms/SearchInput/SearchInput.d.ts +4 -0
  23. package/dist/types/components/forms/SelectFilter/SelectFilter.d.ts +19 -0
  24. package/dist/types/components/forms/SelectFilter/SelectFilter.fixture.d.ts +2 -0
  25. package/dist/types/components/forms/SelectFilter/SelectFilter.variants.d.ts +9 -0
  26. package/dist/types/components/forms/SelectFilter/index.d.ts +2 -0
  27. package/dist/types/components/forms/Slider/Slider.d.ts +10 -0
  28. package/dist/types/components/ohm/ActionBar/ActionBar.d.ts +17 -0
  29. package/dist/types/components/ohm/ActionBar/ActionBar.fixture.d.ts +2 -0
  30. package/dist/types/components/ohm/ActionBar/ActionBar.variants.d.ts +13 -0
  31. package/dist/types/components/ohm/ActionBar/index.d.ts +2 -0
  32. package/dist/types/components/ohm/DataField/DataField.d.ts +27 -0
  33. package/dist/types/components/ohm/DataField/DataField.fixture.d.ts +2 -0
  34. package/dist/types/components/ohm/DataField/DataField.variants.d.ts +5 -0
  35. package/dist/types/components/ohm/DataField/index.d.ts +2 -0
  36. package/dist/types/components/ohm/DocumentList/DocumentList.d.ts +21 -0
  37. package/dist/types/components/ohm/DocumentList/DocumentList.fixture.d.ts +2 -0
  38. package/dist/types/components/ohm/DocumentList/DocumentList.variants.d.ts +5 -0
  39. package/dist/types/components/ohm/DocumentList/index.d.ts +2 -0
  40. package/dist/types/components/ohm/EntityCard/EntityCard.d.ts +14 -0
  41. package/dist/types/components/ohm/EntityCard/EntityCard.fixture.d.ts +2 -0
  42. package/dist/types/components/ohm/EntityCard/EntityCard.variants.d.ts +7 -0
  43. package/dist/types/components/ohm/EntityCard/index.d.ts +2 -0
  44. package/dist/types/components/ohm/Main/Main.d.ts +8 -0
  45. package/dist/types/components/ohm/Main/Main.fixture.d.ts +3 -0
  46. package/dist/types/components/ohm/Main/Main.variants.d.ts +5 -0
  47. package/dist/types/components/ohm/Main/index.d.ts +2 -0
  48. package/dist/types/components/ohm/Navbar/Navbar.d.ts +115 -0
  49. package/dist/types/components/ohm/Navbar/Navbar.fixture.d.ts +2 -0
  50. package/dist/types/components/ohm/Navbar/Navbar.variants.d.ts +75 -0
  51. package/dist/types/components/ohm/Navbar/index.d.ts +2 -0
  52. package/dist/types/components/ohm/PageHeader/PageHeader.d.ts +11 -0
  53. package/dist/types/components/ohm/PageHeader/PageHeader.fixture.d.ts +2 -0
  54. package/dist/types/components/ohm/PageHeader/PageHeader.variants.d.ts +15 -0
  55. package/dist/types/components/ohm/PageHeader/index.d.ts +2 -0
  56. package/dist/types/components/ohm/PhotoGrid/PhotoGrid.d.ts +19 -0
  57. package/dist/types/components/ohm/PhotoGrid/PhotoGrid.fixture.d.ts +2 -0
  58. package/dist/types/components/ohm/PhotoGrid/PhotoGrid.variants.d.ts +5 -0
  59. package/dist/types/components/ohm/PhotoGrid/index.d.ts +2 -0
  60. package/dist/types/components/ohm/SearchFilterSection/SearchFilterSection.d.ts +20 -0
  61. package/dist/types/components/ohm/SearchFilterSection/SearchFilterSection.fixture.d.ts +1 -0
  62. package/dist/types/components/ohm/SearchFilterSection/SearchFilterSection.variants.d.ts +5 -0
  63. package/dist/types/components/ohm/SearchFilterSection/index.d.ts +2 -0
  64. package/dist/types/components/ohm/Table/Table.d.ts +5 -0
  65. package/dist/types/{data → components/ohm/Table}/Table.fixture.d.ts +1 -1
  66. package/dist/types/components/ohm/Table/Table.types.d.ts +43 -0
  67. package/dist/types/components/ohm/Table/Table.variants.d.ts +23 -0
  68. package/dist/types/components/ohm/Table/TableAction/TableAction.d.ts +6 -0
  69. package/dist/types/components/ohm/Table/TableAction/TableAction.fixture.d.ts +2 -0
  70. package/dist/types/components/ohm/Table/TableAction/TableAction.variants.d.ts +22 -0
  71. package/dist/types/components/ohm/Table/TableAction/index.d.ts +2 -0
  72. package/dist/types/components/ohm/Table/TableActions/TableActions.d.ts +11 -0
  73. package/dist/types/components/ohm/Table/TableActions/TableActions.fixture.d.ts +2 -0
  74. package/dist/types/components/ohm/Table/TableActions/TableActions.variants.d.ts +28 -0
  75. package/dist/types/components/ohm/Table/TableActions/index.d.ts +2 -0
  76. package/dist/types/components/ohm/Table/TableBody/TableBody.d.ts +6 -0
  77. package/dist/types/components/ohm/Table/TableBody/TableBody.fixture.d.ts +2 -0
  78. package/dist/types/components/ohm/Table/TableBody/TableBody.variants.d.ts +7 -0
  79. package/dist/types/components/ohm/Table/TableBody/index.d.ts +2 -0
  80. package/dist/types/components/ohm/Table/TableCell/TableCell.d.ts +7 -0
  81. package/dist/types/components/ohm/Table/TableCell/TableCell.fixture.d.ts +2 -0
  82. package/dist/types/components/ohm/Table/TableCell/TableCell.variants.d.ts +7 -0
  83. package/dist/types/components/ohm/Table/TableCell/index.d.ts +2 -0
  84. package/dist/types/components/ohm/Table/TableEmpty/TableEmpty.d.ts +6 -0
  85. package/dist/types/components/ohm/Table/TableEmpty/TableEmpty.fixture.d.ts +2 -0
  86. package/dist/types/components/ohm/Table/TableEmpty/TableEmpty.variants.d.ts +8 -0
  87. package/dist/types/components/ohm/Table/TableEmpty/index.d.ts +2 -0
  88. package/dist/types/components/ohm/Table/TableError/TableError.d.ts +6 -0
  89. package/dist/types/components/ohm/Table/TableError/TableError.fixture.d.ts +2 -0
  90. package/dist/types/components/ohm/Table/TableError/TableError.variants.d.ts +8 -0
  91. package/dist/types/components/ohm/Table/TableError/index.d.ts +2 -0
  92. package/dist/types/components/ohm/Table/TableExpand/TableExpand.d.ts +7 -0
  93. package/dist/types/components/ohm/Table/TableExpand/TableExpand.fixture.d.ts +2 -0
  94. package/dist/types/components/ohm/Table/TableExpand/TableExpand.variants.d.ts +7 -0
  95. package/dist/types/components/ohm/Table/TableExpand/index.d.ts +2 -0
  96. package/dist/types/components/ohm/Table/TableFooter/TableFooter.d.ts +6 -0
  97. package/dist/types/components/ohm/Table/TableFooter/TableFooter.fixture.d.ts +2 -0
  98. package/dist/types/components/ohm/Table/TableFooter/TableFooter.variants.d.ts +7 -0
  99. package/dist/types/components/ohm/Table/TableFooter/index.d.ts +2 -0
  100. package/dist/types/components/ohm/Table/TableHeader/TableHeader.d.ts +6 -0
  101. package/dist/types/components/ohm/Table/TableHeader/TableHeader.fixture.d.ts +2 -0
  102. package/dist/types/components/ohm/Table/TableHeader/TableHeader.variants.d.ts +7 -0
  103. package/dist/types/components/ohm/Table/TableHeader/index.d.ts +2 -0
  104. package/dist/types/components/ohm/Table/TableHeaderCell/TableHeaderCell.d.ts +2 -0
  105. package/dist/types/components/ohm/Table/TableHeaderCell/TableHeaderCell.fixture.d.ts +2 -0
  106. package/dist/types/components/ohm/Table/TableHeaderCell/TableHeaderCell.variants.d.ts +15 -0
  107. package/dist/types/components/ohm/Table/TableHeaderCell/index.d.ts +2 -0
  108. package/dist/types/components/ohm/Table/TableLoading/TableLoading.d.ts +5 -0
  109. package/dist/types/components/ohm/Table/TableLoading/TableLoading.fixture.d.ts +2 -0
  110. package/dist/types/components/ohm/Table/TableLoading/TableLoading.variants.d.ts +7 -0
  111. package/dist/types/components/ohm/Table/TableLoading/index.d.ts +2 -0
  112. package/dist/types/components/ohm/Table/TablePagination/TablePagination.d.ts +6 -0
  113. package/dist/types/components/ohm/Table/TablePagination/TablePagination.fixture.d.ts +2 -0
  114. package/dist/types/components/ohm/Table/TablePagination/TablePagination.variants.d.ts +8 -0
  115. package/dist/types/components/ohm/Table/TablePagination/index.d.ts +2 -0
  116. package/dist/types/components/ohm/Table/TableRow/TableRow.d.ts +8 -0
  117. package/dist/types/components/ohm/Table/TableRow/TableRow.fixture.d.ts +2 -0
  118. package/dist/types/components/ohm/Table/TableRow/TableRow.variants.d.ts +7 -0
  119. package/dist/types/components/ohm/Table/TableRow/index.d.ts +2 -0
  120. package/dist/types/components/ohm/Table/TableRowActions/TableRowActions.d.ts +6 -0
  121. package/dist/types/components/ohm/Table/TableRowActions/TableRowActions.fixture.d.ts +2 -0
  122. package/dist/types/components/ohm/Table/TableRowActions/TableRowActions.variants.d.ts +7 -0
  123. package/dist/types/components/ohm/Table/TableRowActions/index.d.ts +2 -0
  124. package/dist/types/components/ohm/Table/TableSelection/TableSelection.d.ts +7 -0
  125. package/dist/types/components/ohm/Table/TableSelection/TableSelection.fixture.d.ts +2 -0
  126. package/dist/types/components/ohm/Table/TableSelection/TableSelection.variants.d.ts +7 -0
  127. package/dist/types/components/ohm/Table/TableSelection/index.d.ts +2 -0
  128. package/dist/types/components/ohm/Table/TableSort/TableSort.d.ts +8 -0
  129. package/dist/types/components/ohm/Table/TableSort/TableSort.fixture.d.ts +2 -0
  130. package/dist/types/components/ohm/Table/TableSort/TableSort.variants.d.ts +8 -0
  131. package/dist/types/components/ohm/Table/TableSort/index.d.ts +2 -0
  132. package/dist/types/components/ohm/Table/TableStructure/TableStructure.d.ts +11 -0
  133. package/dist/types/components/ohm/Table/TableStructure/TableStructure.fixture.d.ts +2 -0
  134. package/dist/types/components/ohm/Table/TableStructure/TableStructure.variants.d.ts +14 -0
  135. package/dist/types/components/ohm/Table/TableStructure/index.d.ts +2 -0
  136. package/dist/types/components/ohm/Table/index.d.ts +21 -0
  137. package/dist/types/components/overlays/FilterMenu/FilterMenu.d.ts +17 -0
  138. package/dist/types/components/overlays/FilterMenu/FilterMenu.fixture.d.ts +2 -0
  139. package/dist/types/components/overlays/FilterMenu/FilterMenu.variants.d.ts +9 -0
  140. package/dist/types/components/overlays/FilterMenu/index.d.ts +2 -0
  141. package/dist/types/components/primitives/Accordion/Accordion.d.ts +1 -0
  142. package/dist/types/components/primitives/Alert/Alert.d.ts +1 -0
  143. package/dist/types/components/primitives/Avatar/Avatar.d.ts +1 -0
  144. package/dist/types/components/primitives/Button/Button.types.d.ts +2 -0
  145. package/dist/types/components/primitives/Button/Button.variants.d.ts +34 -0
  146. package/dist/types/components/primitives/Carousel/Carousel.d.ts +1 -0
  147. package/dist/types/components/primitives/Combobox/Combobox.d.ts +1 -0
  148. package/dist/types/components/primitives/CommandPalette/CommandPalette.d.ts +1 -0
  149. package/dist/types/components/primitives/ContextMenu/ContextMenu.d.ts +1 -0
  150. package/dist/types/components/primitives/DatePicker/DatePicker.d.ts +1 -0
  151. package/dist/types/components/primitives/Drawer/Drawer.d.ts +5 -0
  152. package/dist/types/components/primitives/DropdownMenu/DropdownMenu.d.ts +1 -0
  153. package/dist/types/components/primitives/FileUpload/FileUpload.d.ts +1 -0
  154. package/dist/types/components/primitives/FormField/FormField.variants.d.ts +19 -0
  155. package/dist/types/components/primitives/Heading/Heading.d.ts +3 -0
  156. package/dist/types/components/primitives/Link/Link.d.ts +1 -0
  157. package/dist/types/components/primitives/Menubar/Menubar.d.ts +1 -0
  158. package/dist/types/components/primitives/MultiSelect/MultiSelect.d.ts +1 -0
  159. package/dist/types/components/primitives/NavigationMenu/NavigationMenu.d.ts +1 -0
  160. package/dist/types/components/primitives/Pagination/Pagination.d.ts +4 -0
  161. package/dist/types/components/primitives/Popover/Popover.d.ts +4 -0
  162. package/dist/types/components/primitives/Progress/Progress.d.ts +4 -0
  163. package/dist/types/components/primitives/ResizablePanel/ResizablePanel.d.ts +1 -0
  164. package/dist/types/components/primitives/SearchBar/SearchBar.d.ts +1 -0
  165. package/dist/types/components/primitives/Separator/Separator.d.ts +1 -0
  166. package/dist/types/components/primitives/Sidebar/Sidebar.d.ts +1 -0
  167. package/dist/types/components/primitives/Skeleton/Skeleton.d.ts +1 -0
  168. package/dist/types/components/primitives/Spinner/Spinner.d.ts +1 -0
  169. package/dist/types/components/primitives/Stepper/Stepper.d.ts +1 -0
  170. package/dist/types/components/primitives/Tabs/Tabs.d.ts +1 -0
  171. package/dist/types/components/primitives/Text/Text.d.ts +1 -0
  172. package/dist/types/components/primitives/Toast/Toast.d.ts +1 -0
  173. package/dist/types/components/primitives/Tooltip/Tooltip.d.ts +2 -0
  174. package/dist/types/components/primitives/TreeView/TreeView.d.ts +1 -0
  175. package/dist/types/data/index.d.ts +0 -1
  176. package/dist/types/forms/FormActions.d.ts +2 -0
  177. package/dist/types/forms/FormField.d.ts +4 -0
  178. package/dist/types/forms/react-form.d.ts +6 -0
  179. package/dist/types/forms/react.d.ts +6 -1
  180. package/dist/types/generated/component-registry.d.ts +2913 -50
  181. package/dist/types/generated/public-exports.d.ts +92 -0
  182. package/dist/types/types/metadata.d.ts +23 -3
  183. package/package.json +3 -2
  184. package/dist/types/data/Table.d.ts +0 -13
  185. package/dist/types/data/resource-controller.test.d.ts +0 -1
  186. package/dist/types/theme/theme.test.d.ts +0 -1
  187. package/dist/types/tooling/discovery/discover.d.ts +0 -9
  188. package/dist/types/tooling/discovery/discover.test.d.ts +0 -1
  189. package/dist/types/tooling/discovery/generate-exports.d.ts +0 -6
  190. package/dist/types/tooling/discovery/generate-registry.d.ts +0 -6
  191. package/dist/types/tooling/discovery/generate-registry.test.d.ts +0 -1
  192. package/dist/types/tooling/discovery/generate.d.ts +0 -1
  193. package/dist/types/tooling/discovery/vite-plugin.d.ts +0 -8
@@ -5,4 +5,5 @@ export interface ToastProps {
5
5
  variant?: "info" | "success" | "warning" | "danger";
6
6
  onClose?: () => void;
7
7
  }
8
+ /** Transient status message with a severity variant and close action. */
8
9
  export declare function Toast({ open, children, variant, onClose }: ToastProps): import("react").JSX.Element | null;
@@ -1,6 +1,8 @@
1
1
  import type { ReactNode } from "react";
2
2
  export interface TooltipProps {
3
+ /** Tooltip content. */
3
4
  content: ReactNode;
5
+ /** Element described by the tooltip. */
4
6
  children: ReactNode;
5
7
  }
6
8
  export declare function Tooltip({ content, children }: TooltipProps): import("react").JSX.Element;
@@ -9,4 +9,5 @@ export interface TreeViewProps {
9
9
  nodes: TreeNode[];
10
10
  onSelect?: (id: string) => void;
11
11
  }
12
+ /** Hierarchical selectable tree of nested nodes. */
12
13
  export declare function TreeView({ nodes, onSelect }: TreeViewProps): import("react").JSX.Element;
@@ -3,7 +3,6 @@ export * from "./resource.js";
3
3
  export * from "./resource-controller.js";
4
4
  export * from "./table-controller.js";
5
5
  export * from "./react-table.js";
6
- export * from "./Table.js";
7
6
  export * from "./api.js";
8
7
  export * from "./crud.js";
9
8
  export * from "./react-crud.js";
@@ -1,4 +1,6 @@
1
1
  import type { ButtonHTMLAttributes } from "react";
2
2
  import type { FormValues } from "./types.js";
3
+ /** Submit action button connected to the nearest form store. */
3
4
  export declare function FormSubmit<TValues extends FormValues = FormValues>(props: ButtonHTMLAttributes<HTMLButtonElement>): import("react").JSX.Element;
5
+ /** Reset action button connected to the nearest form. */
4
6
  export declare function FormReset<TValues extends FormValues = FormValues>(props: ButtonHTMLAttributes<HTMLButtonElement>): import("react").JSX.Element;
@@ -1,8 +1,12 @@
1
1
  import type { ComponentPropsWithoutRef, ReactNode } from "react";
2
2
  import type { FormValues } from "./types.js";
3
3
  import { useField } from "./react-field.js";
4
+ /** Props for a field bound to a typed form store value. */
4
5
  export interface FormFieldProps<TValues extends FormValues, TKey extends keyof TValues> extends Omit<ComponentPropsWithoutRef<"input">, "name" | "value" | "defaultValue" | "onChange" | "onBlur" | "children"> {
6
+ /** Name of the field in the form values object. */
5
7
  name: TKey;
8
+ /** Optional render function receiving field state and actions. */
6
9
  children?: (field: ReturnType<typeof useField<TValues, TKey>>) => ReactNode;
7
10
  }
11
+ /** Input field bound to a typed form store field. */
8
12
  export declare function FormField<TValues extends FormValues, TKey extends keyof TValues>({ name, children, ...inputProps }: FormFieldProps<TValues, TKey>): string | number | bigint | boolean | Iterable<ReactNode> | Promise<string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<ReactNode> | null | undefined> | import("react").JSX.Element | null | undefined;
@@ -1,10 +1,16 @@
1
1
  import type { FormHTMLAttributes, ReactNode } from "react";
2
2
  import type { FormStore } from "./form-store.js";
3
3
  import type { FormValues } from "./types.js";
4
+ /** Form component props for binding a form element to a FormStore. */
4
5
  export interface FormProps<TValues extends FormValues = FormValues> extends Omit<FormHTMLAttributes<HTMLFormElement>, "onSubmit" | "onReset"> {
6
+ /** Form store used for values, validation and submission. */
5
7
  store: FormStore<TValues>;
8
+ /** Form fields and actions rendered inside the form. */
6
9
  children: ReactNode;
10
+ /** Called after submission with whether validation/submission succeeded. */
7
11
  onSubmitResult?: (submitted: boolean) => void | Promise<void>;
12
+ /** Called after the form store is reset. */
8
13
  onReset?: () => void;
9
14
  }
15
+ /** Form element connected to a typed form store. */
10
16
  export declare function Form<TValues extends FormValues>({ store, children, onSubmitResult, onReset, ...props }: FormProps<TValues>): import("react").JSX.Element;
@@ -1,7 +1,12 @@
1
1
  import type { ReactNode } from "react";
2
2
  import type { FormStore } from "./form-store.js";
3
3
  import type { FormConfig, FormState, FormValues } from "./types.js";
4
- export declare function FormProvider<TValues extends FormValues>({ store, children, }: {
4
+ /** Provides a typed FormStore to descendant form components. */
5
+ export declare function FormProvider<TValues extends FormValues>({
6
+ /** Form store exposed to descendants. */
7
+ store,
8
+ /** Descendant form fields and actions. */
9
+ children, }: {
5
10
  store: FormStore<TValues>;
6
11
  children: ReactNode;
7
12
  }): import("react").JSX.Element;