@umami/react-zen 0.12.0 → 0.13.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.
package/dist/index.css CHANGED
@@ -1,4 +1,4 @@
1
- /* src/components/form/Form.module.css */
1
+ /* src/components/forms/Form.module.css */
2
2
  .Form_form {
3
3
  display: flex;
4
4
  flex-direction: column;
@@ -630,7 +630,7 @@
630
630
  text-align: right;
631
631
  }
632
632
 
633
- /* src/components/form/FormField.module.css */
633
+ /* src/components/forms/FormField.module.css */
634
634
  .FormField_field {
635
635
  display: flex;
636
636
  flex-direction: column;
@@ -1218,7 +1218,6 @@
1218
1218
  .TextField_textarea {
1219
1219
  font-family: inherit;
1220
1220
  min-height: 60px;
1221
- min-width: 140px;
1222
1221
  }
1223
1222
  .TextField_allowCopy {
1224
1223
  padding-right: 32px;
@@ -1495,198 +1494,28 @@
1495
1494
  }
1496
1495
 
1497
1496
  /* src/components/NavigationMenu.module.css */
1498
- .NavigationMenu_root {
1499
- position: relative;
1500
- display: flex;
1501
- align-items: center;
1502
- justify-content: center;
1503
- width: 100%;
1504
- z-index: 1;
1505
- }
1506
- .NavigationMenu_list {
1497
+ .NavigationMenu_nav {
1507
1498
  display: flex;
1508
1499
  align-items: center;
1509
- justify-content: center;
1510
- background-color: var(--background-color);
1511
- gap: var(--gap);
1512
- list-style: none;
1513
- margin: 0;
1500
+ gap: var(--gap-lg);
1514
1501
  }
1515
- .NavigationMenu_trigger {
1502
+ .NavigationMenu_item {
1503
+ color: var(--font-color);
1516
1504
  display: flex;
1517
1505
  align-items: center;
1518
- justify-content: space-between;
1519
- gap: var(--gap);
1520
- border: 0;
1521
- background: none;
1522
- }
1523
- .NavigationMenu_link {
1524
- display: block;
1525
- text-decoration: none;
1526
- }
1527
- .NavigationMenu_trigger,
1528
- .NavigationMenu_link {
1529
- outline: none;
1530
- user-select: none;
1531
- }
1532
- .NavigationMenu_content {
1533
- position: absolute;
1534
- top: 0;
1535
- left: 0;
1536
- width: 100%;
1537
- animation-duration: 250ms;
1538
- animation-timing-function: ease;
1539
- }
1540
- .NavigationMenu_content[data-motion=from-start] {
1541
- animation-name: NavigationMenu_enterFromLeft;
1542
- }
1543
- .NavigationMenu_content[data-motion=from-end] {
1544
- animation-name: NavigationMenu_enterFromRight;
1545
- }
1546
- .NavigationMenu_content[data-motion=to-start] {
1547
- animation-name: NavigationMenu_exitToLeft;
1548
- }
1549
- .NavigationMenu_content[data-motion=to-end] {
1550
- animation-name: NavigationMenu_exitToRight;
1551
- }
1552
- @media only screen and (min-width: 600px) {
1553
- .NavigationMenu_content {
1554
- width: auto;
1555
- }
1556
- }
1557
- .NavigationMenu_indicator {
1558
- display: flex;
1559
- align-items: flex-end;
1560
- justify-content: center;
1561
- height: 10px;
1562
- top: 100%;
1563
- overflow: hidden;
1564
- z-index: 1;
1565
- transition: width, transform 250ms ease;
1566
- }
1567
- .NavigationMenu_indicator[data-state=visible] {
1568
- animation: NavigationMenu_fadeIn 200ms ease;
1569
- }
1570
- .NavigationMenu_indicator[data-state=hidden] {
1571
- animation: NavigationMenu_fadeOut 200ms ease;
1572
- }
1573
- .NavigationMenu_viewport {
1574
- position: relative;
1575
- transform-origin: top center;
1576
- margin-top: 10px;
1577
- width: 100%;
1578
- overflow: hidden;
1579
- box-shadow: var(--box-shadow);
1580
- height: var(--radix-navigation-menu-viewport-height);
1581
- transition:
1582
- width,
1583
- height,
1584
- 300ms ease;
1585
- }
1586
- .NavigationMenu_viewport[data-state=open] {
1587
- animation: NavigationMenu_scaleIn 200ms ease;
1588
- }
1589
- .NavigationMenu_viewport[data-state=closed] {
1590
- animation: NavigationMenu_scaleOut 200ms ease;
1591
- }
1592
- @media only screen and (min-width: 600px) {
1593
- .NavigationMenu_viewport {
1594
- width: var(--radix-navigation-menu-viewport-width);
1595
- }
1596
- }
1597
- .NavigationMenu_wrapper {
1598
- position: absolute;
1599
- display: flex;
1600
- justify-content: center;
1601
- width: 100%;
1602
- top: 100%;
1603
- left: 0;
1604
- perspective: 2000px;
1605
- }
1606
- .NavigationMenu_arrow {
1607
- position: relative;
1608
- top: 70%;
1609
- background-color: white;
1610
- width: 10px;
1611
- height: 10px;
1612
- transform: rotate(45deg);
1613
- border-top-left-radius: 2px;
1614
- }
1615
- @keyframes NavigationMenu_enterFromRight {
1616
- from {
1617
- opacity: 0;
1618
- transform: translateX(200px);
1619
- }
1620
- to {
1621
- opacity: 1;
1622
- transform: translateX(0);
1623
- }
1624
- }
1625
- @keyframes NavigationMenu_enterFromLeft {
1626
- from {
1627
- opacity: 0;
1628
- transform: translateX(-200px);
1629
- }
1630
- to {
1631
- opacity: 1;
1632
- transform: translateX(0);
1633
- }
1634
- }
1635
- @keyframes NavigationMenu_exitToRight {
1636
- from {
1637
- opacity: 1;
1638
- transform: translateX(0);
1639
- }
1640
- to {
1641
- opacity: 0;
1642
- transform: translateX(200px);
1643
- }
1644
- }
1645
- @keyframes NavigationMenu_exitToLeft {
1646
- from {
1647
- opacity: 1;
1648
- transform: translateX(0);
1649
- }
1650
- to {
1651
- opacity: 0;
1652
- transform: translateX(-200px);
1653
- }
1654
- }
1655
- @keyframes NavigationMenu_scaleIn {
1656
- from {
1657
- opacity: 0;
1658
- transform: rotateX(-30deg) scale(0.9);
1659
- }
1660
- to {
1661
- opacity: 1;
1662
- transform: rotateX(0deg) scale(1);
1663
- }
1506
+ gap: var(--gap-md);
1507
+ padding: var(--padding);
1508
+ border-radius: var(--border-radius);
1509
+ cursor: default;
1664
1510
  }
1665
- @keyframes NavigationMenu_scaleOut {
1666
- from {
1667
- opacity: 1;
1668
- transform: rotateX(0deg) scale(1);
1669
- }
1670
- to {
1671
- opacity: 0;
1672
- transform: rotateX(-10deg) scale(0.95);
1673
- }
1511
+ .NavigationMenu_item:hover {
1512
+ background: var(--highlight-color);
1674
1513
  }
1675
- @keyframes NavigationMenu_fadeIn {
1676
- from {
1677
- opacity: 0;
1678
- }
1679
- to {
1680
- opacity: 1;
1681
- }
1514
+ .NavigationMenu_nav .NavigationMenu_item > a {
1515
+ color: var(--font-color);
1682
1516
  }
1683
- @keyframes NavigationMenu_fadeOut {
1684
- from {
1685
- opacity: 1;
1686
- }
1687
- to {
1688
- opacity: 0;
1689
- }
1517
+ .NavigationMenu_icon {
1518
+ color: var(--font-muted-color);
1690
1519
  }
1691
1520
 
1692
1521
  /* src/components/PasswordField.module.css */
package/dist/index.d.ts CHANGED
@@ -2,21 +2,23 @@
2
2
  // Dependencies for this module:
3
3
  // ../../react-aria-components
4
4
  // ../../@radix-ui/react-slot
5
+ // ../../@/components/forms/Form
6
+ // ../../@/components/forms/FormField
7
+ // ../../@/components/forms/FormResetButton
8
+ // ../../@/components/forms/FormSubmitButton
5
9
  // ../../react
6
- // ../../react-hook-form
7
10
  // ../../@radix-ui/react-accordion
8
11
  // ../../@/lib/types
9
- // ../../@radix-ui/react-navigation-menu
10
12
  // ../../@radix-ui/react-toast
11
13
  // ../../@radix-ui/react-toggle-group
12
14
 
13
15
  declare module '@umami/react-zen' {
14
16
  import { DialogTrigger, FileTrigger, MenuTrigger, SubmenuTrigger, TooltipTrigger } from 'react-aria-components';
15
17
  import { Slot } from '@radix-ui/react-slot';
16
- import { Form } from '@umami/react-zen/form/Form';
17
- import { FormField } from '@umami/react-zen/form/FormField';
18
- import { FormResetButton } from '@umami/react-zen/form/FormResetButton';
19
- import { FormSubmitButton } from '@umami/react-zen/form/FormSubmitButton';
18
+ import { Form } from '@/components/forms/Form';
19
+ import { FormField } from '@/components/forms/FormField';
20
+ import { FormResetButton } from '@/components/forms/FormResetButton';
21
+ import { FormSubmitButton } from '@/components/forms/FormSubmitButton';
20
22
  import { useDebounce } from '@umami/react-zen/hooks/useDebounce';
21
23
  import { useTheme } from '@umami/react-zen/hooks/useTheme';
22
24
  import { useToast } from '@umami/react-zen/hooks/useToast';
@@ -48,7 +50,7 @@ declare module '@umami/react-zen' {
48
50
  import { Menu } from '@umami/react-zen/Menu';
49
51
  import { MenuItem } from '@umami/react-zen/MenuItem';
50
52
  import { Modal } from '@umami/react-zen/Modal';
51
- import { NavigationMenu, NavigationMenuItem, NavigationMenuTrigger, NavigationMenuContent, NavigationMenuLink } from '@umami/react-zen/NavigationMenu';
53
+ import { NavigationMenu, NavigationMenuItem } from '@umami/react-zen/NavigationMenu';
52
54
  import { PasswordField } from '@umami/react-zen/PasswordField';
53
55
  import { Page } from '@umami/react-zen/Page';
54
56
  import { Popover } from '@umami/react-zen/Popover';
@@ -73,57 +75,7 @@ declare module '@umami/react-zen' {
73
75
  import { ToggleGroup, ToggleGroupItem } from '@umami/react-zen/ToggleGroup';
74
76
  import { Tooltip } from '@umami/react-zen/Tooltip';
75
77
  import { ZenProvider } from '@umami/react-zen/ZenProvider';
76
- export { Form, FormField, FormResetButton, FormSubmitButton, useDebounce, useTheme, useToast, Accordion, AccordionContent, AccordionItem, AccordionHeader, AlertBanner, AlertDialog, Box, Breadcrumb, Breadcrumbs, Button, Calendar, Checkbox, Column, Combobox, ConfirmationDialog, DataTable, DataColumn, Dialog, DialogTrigger, Dots, FileTrigger, Flexbox, Heading, HoverTrigger, Icon, Icons, InlineEditField, Label, List, ListItem, Loading, LoadingButton, Menu, MenuItem, MenuTrigger, Modal, NavigationMenu, NavigationMenuItem, NavigationMenuTrigger, NavigationMenuContent, NavigationMenuLink, PasswordField, Page, Popover, ProgressBar, ProgressCircle, Radio, RadioGroup, Row, SearchField, Select, Slider, Slot, Spinner, StatusLight, SubmenuTrigger, Switch, Table, TableHeader, TableBody, TableRow, TableColumn, TableCell, Tab, Tabs, TabList, TabPanel, Text, TextOverflow, TextField, TextArea, Toast, ToastProvider, Toaster, Toggle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipTrigger, ZenProvider, };
77
- }
78
-
79
- declare module '@umami/react-zen/form/Form' {
80
- import { HTMLAttributes, ReactNode } from 'react';
81
- import { UseFormProps, SubmitHandler, UseFormReturn } from 'react-hook-form';
82
- interface FormProps extends UseFormProps, Omit<HTMLAttributes<HTMLFormElement>, 'children'> {
83
- gap?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
84
- autoComplete?: string;
85
- onSubmit?: SubmitHandler<any>;
86
- error?: ReactNode;
87
- preventSubmit?: boolean;
88
- children?: ReactNode | ((e: UseFormReturn) => ReactNode);
89
- }
90
- function Form({ gap, autoComplete, onSubmit, error, preventSubmit, mode, disabled, reValidateMode, defaultValues, values, errors, resetOptions, resolver, context, shouldFocusError, shouldUnregister, shouldUseNativeValidation, progressive, criteriaMode, delayError, className, children, ...props }: FormProps): import("react").JSX.Element;
91
- export { Form };
92
- export type { FormProps };
93
- }
94
-
95
- declare module '@umami/react-zen/form/FormField' {
96
- import { HTMLAttributes } from 'react';
97
- import { RegisterOptions, UseFormReturn, FieldValues } from 'react-hook-form';
98
- interface FormFieldProps extends HTMLAttributes<HTMLDivElement>, Partial<UseFormReturn> {
99
- name: string;
100
- description?: string;
101
- label?: string;
102
- rules?: RegisterOptions<FieldValues, string>;
103
- children: any;
104
- }
105
- const FormField: import("react").ForwardRefExoticComponent<FormFieldProps & import("react").RefAttributes<any>>;
106
- export { FormField };
107
- export type { FormFieldProps };
108
- }
109
-
110
- declare module '@umami/react-zen/form/FormResetButton' {
111
- import { FieldValues } from 'react-hook-form';
112
- import { ButtonProps } from '@umami/react-zen/Button';
113
- interface FormResetButtonProps extends ButtonProps {
114
- values?: FieldValues | {
115
- [p: string]: any;
116
- };
117
- }
118
- function FormResetButton({ values, children, onPress, ...props }: FormResetButtonProps): import("react").JSX.Element;
119
- export { FormResetButton };
120
- export type { FormResetButtonProps };
121
- }
122
-
123
- declare module '@umami/react-zen/form/FormSubmitButton' {
124
- import { LoadingButtonProps } from '@umami/react-zen/LoadingButton';
125
- function FormSubmitButton({ children, disabled, isLoading, ...props }: LoadingButtonProps): import("react").JSX.Element;
126
- export { FormSubmitButton };
78
+ export { Form, FormField, FormResetButton, FormSubmitButton, useDebounce, useTheme, useToast, Accordion, AccordionContent, AccordionItem, AccordionHeader, AlertBanner, AlertDialog, Box, Breadcrumb, Breadcrumbs, Button, Calendar, Checkbox, Column, Combobox, ConfirmationDialog, DataTable, DataColumn, Dialog, DialogTrigger, Dots, FileTrigger, Flexbox, Heading, HoverTrigger, Icon, Icons, InlineEditField, Label, List, ListItem, Loading, LoadingButton, Menu, MenuItem, MenuTrigger, Modal, NavigationMenu, NavigationMenuItem, PasswordField, Page, Popover, ProgressBar, ProgressCircle, Radio, RadioGroup, Row, SearchField, Select, Slider, Slot, Spinner, StatusLight, SubmenuTrigger, Switch, Table, TableHeader, TableBody, TableRow, TableColumn, TableCell, Tab, Tabs, TabList, TabPanel, Text, TextOverflow, TextField, TextArea, Toast, ToastProvider, Toaster, Toggle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipTrigger, ZenProvider, };
127
79
  }
128
80
 
129
81
  declare module '@umami/react-zen/hooks/useDebounce' {
@@ -247,7 +199,7 @@ declare module '@umami/react-zen/Button' {
247
199
  asChild?: boolean;
248
200
  slot?: string;
249
201
  }
250
- function Button({ variant, size, preventFocusOnPress, asChild, className, children, ...props }: ButtonProps): import("react").JSX.Element;
202
+ const Button: import("react").ForwardRefExoticComponent<ButtonProps & import("react").RefAttributes<any>>;
251
203
  export { Button };
252
204
  export type { ButtonProps };
253
205
  }
@@ -376,10 +328,13 @@ declare module '@umami/react-zen/Heading' {
376
328
  declare module '@umami/react-zen/HoverTrigger' {
377
329
  import { ReactElement } from 'react';
378
330
  export interface HoverButtonProps {
331
+ isOpen?: boolean;
332
+ onHoverStart?: () => void;
333
+ onHoverEnd?: () => void;
379
334
  closeDelay?: number;
380
335
  children: ReactElement[];
381
336
  }
382
- export function HoverTrigger({ closeDelay, children }: HoverButtonProps): import("react").JSX.Element;
337
+ export function HoverTrigger({ isOpen, onHoverStart, onHoverEnd, closeDelay, children, }: HoverButtonProps): import("react").JSX.Element;
383
338
  }
384
339
 
385
340
  declare module '@umami/react-zen/Icon' {
@@ -522,16 +477,16 @@ declare module '@umami/react-zen/Modal' {
522
477
  }
523
478
 
524
479
  declare module '@umami/react-zen/NavigationMenu' {
525
- import React from 'react';
526
- import { NavigationMenuProps as RadixNavigationMenuProps, NavigationMenuItemProps, NavigationMenuTriggerProps, NavigationMenuContentProps, NavigationMenuLinkProps } from '@radix-ui/react-navigation-menu';
527
- export interface NavigationMenuProps extends RadixNavigationMenuProps {
480
+ import { HTMLAttributes, ReactNode } from 'react';
481
+ export interface NavigationMenuProps extends HTMLAttributes<HTMLElement> {
528
482
  showArrow?: boolean;
529
483
  }
530
- export function NavigationMenu({ showArrow, children, ...props }: NavigationMenuProps): React.JSX.Element;
531
- export function NavigationMenuItem({ children, className, ...props }: NavigationMenuItemProps): React.JSX.Element;
532
- export function NavigationMenuTrigger({ children, className, ...props }: NavigationMenuTriggerProps): React.JSX.Element;
533
- export function NavigationMenuContent({ children, className, ...props }: NavigationMenuContentProps): React.JSX.Element;
534
- export function NavigationMenuLink({ children, className, ...props }: NavigationMenuLinkProps): React.JSX.Element;
484
+ export function NavigationMenu({ showArrow, className, children, ...props }: NavigationMenuProps): import("react").JSX.Element;
485
+ export interface NavigationMenuItemProps extends HTMLAttributes<HTMLElement> {
486
+ label: string;
487
+ children?: ReactNode;
488
+ }
489
+ export function NavigationMenuItem({ label, children, className, ...props }: NavigationMenuItemProps): import("react").JSX.Element;
535
490
  }
536
491
 
537
492
  declare module '@umami/react-zen/PasswordField' {