@duro-app/ui 0.16.0 → 0.17.0

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 (78) hide show
  1. package/dist/components/ActionBar/ActionBar.d.ts +3 -1
  2. package/dist/components/ActionBar/ActionBar.d.ts.map +1 -1
  3. package/dist/components/Button/Button.meta.d.ts +3 -0
  4. package/dist/components/Button/Button.meta.d.ts.map +1 -0
  5. package/dist/components/Checkbox/Checkbox.meta.d.ts +3 -0
  6. package/dist/components/Checkbox/Checkbox.meta.d.ts.map +1 -0
  7. package/dist/components/Cluster/Cluster.meta.d.ts +3 -0
  8. package/dist/components/Cluster/Cluster.meta.d.ts.map +1 -0
  9. package/dist/components/Field/Field.meta.d.ts +3 -0
  10. package/dist/components/Field/Field.meta.d.ts.map +1 -0
  11. package/dist/components/Fieldset/Fieldset.meta.d.ts +3 -0
  12. package/dist/components/Fieldset/Fieldset.meta.d.ts.map +1 -0
  13. package/dist/components/Form/Form.meta.d.ts +3 -0
  14. package/dist/components/Form/Form.meta.d.ts.map +1 -0
  15. package/dist/components/Grid/Grid.meta.d.ts +3 -0
  16. package/dist/components/Grid/Grid.meta.d.ts.map +1 -0
  17. package/dist/components/Inline/Inline.meta.d.ts +3 -0
  18. package/dist/components/Inline/Inline.meta.d.ts.map +1 -0
  19. package/dist/components/Input/Input.meta.d.ts +3 -0
  20. package/dist/components/Input/Input.meta.d.ts.map +1 -0
  21. package/dist/components/LinkButton/LinkButton.meta.d.ts +3 -0
  22. package/dist/components/LinkButton/LinkButton.meta.d.ts.map +1 -0
  23. package/dist/components/Menu/Menu.meta.d.ts +3 -0
  24. package/dist/components/Menu/Menu.meta.d.ts.map +1 -0
  25. package/dist/components/PageShell/PageShell.meta.d.ts +3 -0
  26. package/dist/components/PageShell/PageShell.meta.d.ts.map +1 -0
  27. package/dist/components/ScrollArea/ScrollArea.meta.d.ts +3 -0
  28. package/dist/components/ScrollArea/ScrollArea.meta.d.ts.map +1 -0
  29. package/dist/components/Select/Select.meta.d.ts +3 -0
  30. package/dist/components/Select/Select.meta.d.ts.map +1 -0
  31. package/dist/components/SideNav/SideNav.meta.d.ts +3 -0
  32. package/dist/components/SideNav/SideNav.meta.d.ts.map +1 -0
  33. package/dist/components/Stack/Stack.meta.d.ts +3 -0
  34. package/dist/components/Stack/Stack.meta.d.ts.map +1 -0
  35. package/dist/components/Switch/Switch.meta.d.ts +3 -0
  36. package/dist/components/Switch/Switch.meta.d.ts.map +1 -0
  37. package/dist/components/Table/Table.meta.d.ts +3 -0
  38. package/dist/components/Table/Table.meta.d.ts.map +1 -0
  39. package/dist/components/Tabs/Tabs.meta.d.ts +3 -0
  40. package/dist/components/Tabs/Tabs.meta.d.ts.map +1 -0
  41. package/dist/components/Textarea/Textarea.meta.d.ts +3 -0
  42. package/dist/components/Textarea/Textarea.meta.d.ts.map +1 -0
  43. package/dist/components/Toggle/Toggle.meta.d.ts +3 -0
  44. package/dist/components/Toggle/Toggle.meta.d.ts.map +1 -0
  45. package/dist/components/ToggleGroup/ToggleGroup.meta.d.ts +3 -0
  46. package/dist/components/ToggleGroup/ToggleGroup.meta.d.ts.map +1 -0
  47. package/dist/components/Tooltip/Tooltip.meta.d.ts +3 -0
  48. package/dist/components/Tooltip/Tooltip.meta.d.ts.map +1 -0
  49. package/dist/components/component-meta.d.ts +15 -0
  50. package/dist/components/component-meta.d.ts.map +1 -0
  51. package/dist/index.js +158 -162
  52. package/dist/index.js.map +1 -1
  53. package/package.json +2 -2
  54. package/src/components/ActionBar/ActionBar.tsx +20 -15
  55. package/src/components/Button/Button.meta.ts +23 -0
  56. package/src/components/Checkbox/Checkbox.meta.ts +21 -0
  57. package/src/components/Cluster/Cluster.meta.ts +25 -0
  58. package/src/components/Field/Field.meta.ts +37 -0
  59. package/src/components/Fieldset/Fieldset.meta.ts +38 -0
  60. package/src/components/Form/Form.meta.ts +38 -0
  61. package/src/components/Grid/Grid.meta.ts +30 -0
  62. package/src/components/Inline/Inline.meta.ts +23 -0
  63. package/src/components/Input/Input.meta.ts +23 -0
  64. package/src/components/LinkButton/LinkButton.meta.ts +24 -0
  65. package/src/components/Menu/Menu.meta.ts +33 -0
  66. package/src/components/PageShell/PageShell.meta.ts +24 -0
  67. package/src/components/ScrollArea/ScrollArea.meta.ts +27 -0
  68. package/src/components/Select/Select.meta.ts +34 -0
  69. package/src/components/SideNav/SideNav.meta.ts +31 -0
  70. package/src/components/Stack/Stack.meta.ts +22 -0
  71. package/src/components/Switch/Switch.meta.ts +25 -0
  72. package/src/components/Table/Table.meta.ts +36 -0
  73. package/src/components/Tabs/Tabs.meta.ts +31 -0
  74. package/src/components/Textarea/Textarea.meta.ts +22 -0
  75. package/src/components/Toggle/Toggle.meta.ts +30 -0
  76. package/src/components/ToggleGroup/ToggleGroup.meta.ts +30 -0
  77. package/src/components/Tooltip/Tooltip.meta.ts +22 -0
  78. package/src/components/component-meta.ts +8 -0
@@ -0,0 +1,22 @@
1
+ import type {ComponentMeta} from '../component-meta'
2
+
3
+ export const meta: ComponentMeta = {
4
+ description:
5
+ 'Multi-line text input with automatic Field/Form integration. Same Field binding behavior as Input.',
6
+ whenToUse: [
7
+ 'Multi-line text entry (comments, messages, descriptions)',
8
+ ],
9
+ whenNotToUse: [
10
+ 'Single-line input — use Input',
11
+ ],
12
+ relatedTo: [
13
+ {component: 'Input', relationship: 'Single-line variant'},
14
+ {component: 'Field', relationship: 'Wrap in Field.Root for label + error'},
15
+ ],
16
+ example: `<Field.Root name="message">
17
+ <Field.Label>Message</Field.Label>
18
+ <Textarea placeholder="Tell us what you think..." rows={4} />
19
+ <Field.Description>At least 10 characters</Field.Description>
20
+ <Field.Error />
21
+ </Field.Root>`,
22
+ }
@@ -0,0 +1,30 @@
1
+ import type {ComponentMeta} from '../component-meta'
2
+
3
+ export const meta: ComponentMeta = {
4
+ description:
5
+ 'Toggle button with pressed/unpressed state. Works standalone or within ToggleGroup for multi/single selection.',
6
+ whenToUse: [
7
+ 'Toolbar buttons that toggle on/off (bold, italic, grid view)',
8
+ 'Within ToggleGroup for selecting from visible options',
9
+ ],
10
+ whenNotToUse: [
11
+ 'On/off settings — use Switch',
12
+ 'Form checkboxes — use Checkbox',
13
+ 'Submitting actions — use Button',
14
+ ],
15
+ relatedTo: [
16
+ {component: 'ToggleGroup', relationship: 'Group of Toggles with single/multi select'},
17
+ {component: 'Switch', relationship: 'Switch for settings; Toggle for toolbar actions'},
18
+ {component: 'Button', relationship: 'Button for actions; Toggle for state'},
19
+ ],
20
+ example: `// Standalone
21
+ <Toggle pressed={isBold} onPressedChange={setIsBold} aria-label="Bold">
22
+ <Icon name="key" size={16} />
23
+ </Toggle>
24
+
25
+ // In a group
26
+ <ToggleGroup value={['grid']} onValueChange={setView} multiple={false}>
27
+ <Toggle value="list">List</Toggle>
28
+ <Toggle value="grid">Grid</Toggle>
29
+ </ToggleGroup>`,
30
+ }
@@ -0,0 +1,30 @@
1
+ import type {ComponentMeta} from '../component-meta'
2
+
3
+ export const meta: ComponentMeta = {
4
+ description:
5
+ 'Container for Toggle buttons enabling single or multi selection. Provides context to child Toggles.',
6
+ whenToUse: [
7
+ 'Visible option set where user picks one or more (view mode, filter categories)',
8
+ 'Segmented control pattern',
9
+ ],
10
+ whenNotToUse: [
11
+ 'Dropdown selection — use Select',
12
+ 'Many options (5+) — use Select for space efficiency',
13
+ 'Form checkboxes — use Checkbox group in Fieldset',
14
+ ],
15
+ relatedTo: [
16
+ {component: 'Toggle', relationship: 'Toggle children get group context'},
17
+ {component: 'Select', relationship: 'Select for larger option sets'},
18
+ ],
19
+ example: `<ToggleGroup
20
+ value={selected}
21
+ onValueChange={setSelected}
22
+ multiple={false}
23
+ orientation="horizontal"
24
+ size="default"
25
+ >
26
+ <Toggle value="list">List view</Toggle>
27
+ <Toggle value="grid">Grid view</Toggle>
28
+ <Toggle value="board">Board view</Toggle>
29
+ </ToggleGroup>`,
30
+ }
@@ -0,0 +1,22 @@
1
+ import type {ComponentMeta} from '../component-meta'
2
+
3
+ export const meta: ComponentMeta = {
4
+ description:
5
+ 'Hover/focus tooltip that shows supplementary content. Compound component — Root is required (throws without it).',
6
+ whenToUse: [
7
+ 'Providing extra context on hover for icon-only buttons',
8
+ 'Explaining abbreviations or truncated text',
9
+ ],
10
+ whenNotToUse: [
11
+ 'Critical information that must always be visible — use Text or Callout',
12
+ 'Interactive content (links, buttons) — tooltips are not interactive',
13
+ ],
14
+ anatomy: {
15
+ required: ['Root', 'Trigger'],
16
+ },
17
+ example: `<Tooltip.Root content="Delete this item permanently" placement="top">
18
+ <Tooltip.Trigger>
19
+ <Button variant="danger">Delete</Button>
20
+ </Tooltip.Trigger>
21
+ </Tooltip.Root>`,
22
+ }
@@ -0,0 +1,8 @@
1
+ export interface ComponentMeta {
2
+ description: string
3
+ whenToUse: string[]
4
+ whenNotToUse: string[]
5
+ anatomy?: {required: string[]; optional?: string[]}
6
+ relatedTo?: Array<{component: string; relationship: string}>
7
+ example: string
8
+ }