vector-prototype-components 0.1.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/Accordion/Accordion.d.ts +29 -0
- package/Accordion/Accordion.d.ts.map +1 -0
- package/Accordion/index.d.ts +3 -0
- package/Accordion/index.d.ts.map +1 -0
- package/ActionMenu/ActionMenu.d.ts +29 -0
- package/ActionMenu/ActionMenu.d.ts.map +1 -0
- package/ActionMenu/index.d.ts +3 -0
- package/ActionMenu/index.d.ts.map +1 -0
- package/Autocomplete/Autocomplete.d.ts +37 -0
- package/Autocomplete/Autocomplete.d.ts.map +1 -0
- package/Autocomplete/index.d.ts +3 -0
- package/Autocomplete/index.d.ts.map +1 -0
- package/Avatar/Avatar.d.ts +36 -0
- package/Avatar/Avatar.d.ts.map +1 -0
- package/Avatar/index.d.ts +3 -0
- package/Avatar/index.d.ts.map +1 -0
- package/Badge/Badge.d.ts +19 -0
- package/Badge/Badge.d.ts.map +1 -0
- package/Badge/index.d.ts +3 -0
- package/Badge/index.d.ts.map +1 -0
- package/BottomBar/BottomBar.d.ts +12 -0
- package/BottomBar/BottomBar.d.ts.map +1 -0
- package/BottomBar/index.d.ts +3 -0
- package/BottomBar/index.d.ts.map +1 -0
- package/Breadcrumbs/Breadcrumbs.d.ts +24 -0
- package/Breadcrumbs/Breadcrumbs.d.ts.map +1 -0
- package/Breadcrumbs/index.d.ts +3 -0
- package/Breadcrumbs/index.d.ts.map +1 -0
- package/Button/Button.d.ts +12 -0
- package/Button/Button.d.ts.map +1 -0
- package/Button/index.d.ts +3 -0
- package/Button/index.d.ts.map +1 -0
- package/Callout/Callout.d.ts +25 -0
- package/Callout/Callout.d.ts.map +1 -0
- package/Callout/index.d.ts +3 -0
- package/Callout/index.d.ts.map +1 -0
- package/Card/Card.d.ts +10 -0
- package/Card/Card.d.ts.map +1 -0
- package/Card/index.d.ts +3 -0
- package/Card/index.d.ts.map +1 -0
- package/Checkbox/Checkbox.d.ts +16 -0
- package/Checkbox/Checkbox.d.ts.map +1 -0
- package/Checkbox/index.d.ts +3 -0
- package/Checkbox/index.d.ts.map +1 -0
- package/Chip/Chip.d.ts +24 -0
- package/Chip/Chip.d.ts.map +1 -0
- package/Chip/index.d.ts +3 -0
- package/Chip/index.d.ts.map +1 -0
- package/DatePicker/DatePicker.d.ts +32 -0
- package/DatePicker/DatePicker.d.ts.map +1 -0
- package/DatePicker/DatePickerCalendar.d.ts +9 -0
- package/DatePicker/DatePickerCalendar.d.ts.map +1 -0
- package/DatePicker/index.d.ts +3 -0
- package/DatePicker/index.d.ts.map +1 -0
- package/Divider/Divider.d.ts +8 -0
- package/Divider/Divider.d.ts.map +1 -0
- package/Divider/index.d.ts +3 -0
- package/Divider/index.d.ts.map +1 -0
- package/Dropdown/Dropdown.d.ts +67 -0
- package/Dropdown/Dropdown.d.ts.map +1 -0
- package/Dropdown/index.d.ts +3 -0
- package/Dropdown/index.d.ts.map +1 -0
- package/Icon/Icon.d.ts +8 -0
- package/Icon/Icon.d.ts.map +1 -0
- package/Icon/index.d.ts +3 -0
- package/Icon/index.d.ts.map +1 -0
- package/IconButton/IconButton.d.ts +14 -0
- package/IconButton/IconButton.d.ts.map +1 -0
- package/IconButton/index.d.ts +3 -0
- package/IconButton/index.d.ts.map +1 -0
- package/InputNumber/InputNumber.d.ts +21 -0
- package/InputNumber/InputNumber.d.ts.map +1 -0
- package/InputNumber/index.d.ts +3 -0
- package/InputNumber/index.d.ts.map +1 -0
- package/Menu/Menu.d.ts +53 -0
- package/Menu/Menu.d.ts.map +1 -0
- package/Menu/index.d.ts +4 -0
- package/Menu/index.d.ts.map +1 -0
- package/Menu/menuData.d.ts +4 -0
- package/Menu/menuData.d.ts.map +1 -0
- package/Message/Message.d.ts +23 -0
- package/Message/Message.d.ts.map +1 -0
- package/Message/index.d.ts +3 -0
- package/Message/index.d.ts.map +1 -0
- package/Modal/Modal.d.ts +55 -0
- package/Modal/Modal.d.ts.map +1 -0
- package/Modal/index.d.ts +3 -0
- package/Modal/index.d.ts.map +1 -0
- package/Multiselect/Multiselect.d.ts +46 -0
- package/Multiselect/Multiselect.d.ts.map +1 -0
- package/Multiselect/index.d.ts +3 -0
- package/Multiselect/index.d.ts.map +1 -0
- package/Overlay/Overlay.d.ts +16 -0
- package/Overlay/Overlay.d.ts.map +1 -0
- package/Overlay/index.d.ts +3 -0
- package/Overlay/index.d.ts.map +1 -0
- package/Paginator/Paginator.d.ts +23 -0
- package/Paginator/Paginator.d.ts.map +1 -0
- package/Paginator/index.d.ts +3 -0
- package/Paginator/index.d.ts.map +1 -0
- package/Panel/Panel.d.ts +13 -0
- package/Panel/Panel.d.ts.map +1 -0
- package/Panel/index.d.ts +3 -0
- package/Panel/index.d.ts.map +1 -0
- package/ProgressSpinner/ProgressSpinner.d.ts +10 -0
- package/ProgressSpinner/ProgressSpinner.d.ts.map +1 -0
- package/ProgressSpinner/index.d.ts +3 -0
- package/ProgressSpinner/index.d.ts.map +1 -0
- package/README.md +143 -0
- package/Radio/Radio.d.ts +15 -0
- package/Radio/Radio.d.ts.map +1 -0
- package/Radio/index.d.ts +3 -0
- package/Radio/index.d.ts.map +1 -0
- package/SegmentControl/SegmentControl.d.ts +27 -0
- package/SegmentControl/SegmentControl.d.ts.map +1 -0
- package/SegmentControl/index.d.ts +3 -0
- package/SegmentControl/index.d.ts.map +1 -0
- package/Select/Select.d.ts +48 -0
- package/Select/Select.d.ts.map +1 -0
- package/Select/index.d.ts +3 -0
- package/Select/index.d.ts.map +1 -0
- package/Skeleton/Skeleton.d.ts +39 -0
- package/Skeleton/Skeleton.d.ts.map +1 -0
- package/Skeleton/index.d.ts +3 -0
- package/Skeleton/index.d.ts.map +1 -0
- package/Slider/Slider.d.ts +28 -0
- package/Slider/Slider.d.ts.map +1 -0
- package/Slider/index.d.ts +3 -0
- package/Slider/index.d.ts.map +1 -0
- package/Slot/Slot.d.ts +22 -0
- package/Slot/Slot.d.ts.map +1 -0
- package/Slot/index.d.ts +3 -0
- package/Slot/index.d.ts.map +1 -0
- package/Switch/Switch.d.ts +13 -0
- package/Switch/Switch.d.ts.map +1 -0
- package/Switch/index.d.ts +3 -0
- package/Switch/index.d.ts.map +1 -0
- package/Table/Table.d.ts +94 -0
- package/Table/Table.d.ts.map +1 -0
- package/Table/index.d.ts +3 -0
- package/Table/index.d.ts.map +1 -0
- package/TableTree/TableTree.d.ts +65 -0
- package/TableTree/TableTree.d.ts.map +1 -0
- package/TableTree/index.d.ts +3 -0
- package/TableTree/index.d.ts.map +1 -0
- package/Tabs/Tabs.d.ts +32 -0
- package/Tabs/Tabs.d.ts.map +1 -0
- package/Tabs/index.d.ts +3 -0
- package/Tabs/index.d.ts.map +1 -0
- package/Tag/Tag.d.ts +18 -0
- package/Tag/Tag.d.ts.map +1 -0
- package/Tag/index.d.ts +3 -0
- package/Tag/index.d.ts.map +1 -0
- package/TextField/TextField.d.ts +18 -0
- package/TextField/TextField.d.ts.map +1 -0
- package/TextField/index.d.ts +3 -0
- package/TextField/index.d.ts.map +1 -0
- package/Textarea/Textarea.d.ts +18 -0
- package/Textarea/Textarea.d.ts.map +1 -0
- package/Textarea/index.d.ts +3 -0
- package/Textarea/index.d.ts.map +1 -0
- package/Toast/Toast.d.ts +20 -0
- package/Toast/Toast.d.ts.map +1 -0
- package/Toast/index.d.ts +3 -0
- package/Toast/index.d.ts.map +1 -0
- package/Tooltip/Tooltip.d.ts +19 -0
- package/Tooltip/Tooltip.d.ts.map +1 -0
- package/Tooltip/index.d.ts +3 -0
- package/Tooltip/index.d.ts.map +1 -0
- package/TopBar/TopBar.d.ts +36 -0
- package/TopBar/TopBar.d.ts.map +1 -0
- package/TopBar/index.d.ts +3 -0
- package/TopBar/index.d.ts.map +1 -0
- package/index.d.ts +86 -0
- package/index.d.ts.map +1 -0
- package/index.js +4160 -0
- package/index.js.map +1 -0
- package/package.json +30 -0
- package/style.css +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Dropdown/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC"}
|
package/Icon/Icon.d.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Icon as PhosphorIcon, IconProps as PhosphorIconProps } from '@phosphor-icons/react';
|
|
2
|
+
export type { IconWeight } from '@phosphor-icons/react';
|
|
3
|
+
export interface IconProps extends Omit<PhosphorIconProps, 'weight'> {
|
|
4
|
+
as: PhosphorIcon;
|
|
5
|
+
weight?: PhosphorIconProps['weight'];
|
|
6
|
+
}
|
|
7
|
+
export declare function Icon({ as: PhIcon, size, weight, ...props }: IconProps): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
//# sourceMappingURL=Icon.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Icon.d.ts","sourceRoot":"","sources":["../../src/Icon/Icon.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,IAAI,YAAY,EAAE,SAAS,IAAI,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAElG,YAAY,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAExD,MAAM,WAAW,SAAU,SAAQ,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC;IAClE,EAAE,EAAE,YAAY,CAAC;IACjB,MAAM,CAAC,EAAE,iBAAiB,CAAC,QAAQ,CAAC,CAAC;CACtC;AAED,wBAAgB,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAS,EAAE,MAAe,EAAE,GAAG,KAAK,EAAE,EAAE,SAAS,2CAEnF"}
|
package/Icon/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Icon/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { Icon as PhosphorIcon } from '@phosphor-icons/react';
|
|
3
|
+
export type IconButtonVariant = 'ghost' | 'outline' | 'subtle';
|
|
4
|
+
export type IconButtonSize = 'xsmall' | 'small' | 'medium';
|
|
5
|
+
export interface IconButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
|
|
6
|
+
/** Phosphor icon component to render */
|
|
7
|
+
icon: PhosphorIcon;
|
|
8
|
+
variant?: IconButtonVariant;
|
|
9
|
+
size?: IconButtonSize;
|
|
10
|
+
/** Required for accessibility — always provide a descriptive label */
|
|
11
|
+
'aria-label': string;
|
|
12
|
+
}
|
|
13
|
+
export declare function IconButton({ icon, variant, size, className, disabled, ...props }: IconButtonProps): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
//# sourceMappingURL=IconButton.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IconButton.d.ts","sourceRoot":"","sources":["../../src/IconButton/IconButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,IAAI,IAAI,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAIlE,MAAM,MAAM,iBAAiB,GAAG,OAAO,GAAG,SAAS,GAAG,QAAQ,CAAC;AAC/D,MAAM,MAAM,cAAc,GAAM,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC;AAE9D,MAAM,WAAW,eAAgB,SAAQ,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC;IACpF,wCAAwC;IACxC,IAAI,EAAE,YAAY,CAAC;IACnB,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,sEAAsE;IACtE,YAAY,EAAE,MAAM,CAAC;CACtB;AAcD,wBAAgB,UAAU,CAAC,EACzB,IAAI,EACJ,OAAiB,EACjB,IAAe,EACf,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,eAAe,2CAqBjB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/IconButton/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export type InputNumberStatus = 'default' | 'danger' | 'success';
|
|
2
|
+
export type InputNumberHintType = 'default' | 'warning' | 'danger' | 'success';
|
|
3
|
+
export interface InputNumberProps {
|
|
4
|
+
value?: number;
|
|
5
|
+
defaultValue?: number;
|
|
6
|
+
min?: number;
|
|
7
|
+
max?: number;
|
|
8
|
+
step?: number;
|
|
9
|
+
onChange?: (value: number) => void;
|
|
10
|
+
label?: string;
|
|
11
|
+
showLabel?: boolean;
|
|
12
|
+
hint?: string;
|
|
13
|
+
hintType?: InputNumberHintType;
|
|
14
|
+
status?: InputNumberStatus;
|
|
15
|
+
disabled?: boolean;
|
|
16
|
+
placeholder?: string;
|
|
17
|
+
className?: string;
|
|
18
|
+
id?: string;
|
|
19
|
+
}
|
|
20
|
+
export declare function InputNumber({ value: valueProp, defaultValue, min, max, step, onChange, label, showLabel, hint, hintType, status, disabled, placeholder, className, id: idProp, }: InputNumberProps): import("react/jsx-runtime").JSX.Element;
|
|
21
|
+
//# sourceMappingURL=InputNumber.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InputNumber.d.ts","sourceRoot":"","sources":["../../src/InputNumber/InputNumber.tsx"],"names":[],"mappings":"AAKA,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;AACjE,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE/E,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,mBAAmB,CAAC;IAC/B,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAsBD,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EAAE,SAAS,EAChB,YAAgB,EAChB,GAAG,EACH,GAAG,EACH,IAAQ,EACR,QAAQ,EACR,KAAe,EACf,SAAgB,EAChB,IAAI,EACJ,QAAQ,EACR,MAAkB,EAClB,QAAgB,EAChB,WAA2B,EAC3B,SAAS,EACT,EAAE,EAAE,MAAM,GACX,EAAE,gBAAgB,2CA0GlB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/InputNumber/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC"}
|
package/Menu/Menu.d.ts
ADDED
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { Icon as PhosphorIcon } from '@phosphor-icons/react';
|
|
3
|
+
export type MenuSize = 'opened' | 'closed';
|
|
4
|
+
export type MenuItemState = 'default' | 'hover' | 'active';
|
|
5
|
+
export interface MenuItemDef {
|
|
6
|
+
/** Unique key for this item */
|
|
7
|
+
key: string;
|
|
8
|
+
/** Display label (shown in opened mode) */
|
|
9
|
+
label: string;
|
|
10
|
+
/** Phosphor icon component */
|
|
11
|
+
icon?: PhosphorIcon;
|
|
12
|
+
/** Whether this item is the current active page */
|
|
13
|
+
active?: boolean;
|
|
14
|
+
/** Whether this item is disabled */
|
|
15
|
+
disabled?: boolean;
|
|
16
|
+
/** Click handler */
|
|
17
|
+
onClick?: (key: string) => void;
|
|
18
|
+
/**
|
|
19
|
+
* Nested sub-items. When present, the item becomes an expandable parent:
|
|
20
|
+
* a trailing caret is shown and clicking toggles the submenu (Figma
|
|
21
|
+
* ".Menu / <group>" expanded state — sub-items indented).
|
|
22
|
+
*/
|
|
23
|
+
children?: MenuItemDef[];
|
|
24
|
+
}
|
|
25
|
+
export interface MenuSectionDef {
|
|
26
|
+
/** Optional section subtitle shown in opened mode */
|
|
27
|
+
title?: string;
|
|
28
|
+
/** Items in this section */
|
|
29
|
+
items: MenuItemDef[];
|
|
30
|
+
}
|
|
31
|
+
export interface MenuProps {
|
|
32
|
+
/** Opened (240px) or closed (72px) layout */
|
|
33
|
+
size?: MenuSize;
|
|
34
|
+
/**
|
|
35
|
+
* Navigation sections, each with an optional title and items. Quando omitido,
|
|
36
|
+
* usa `defaultMenuSections` (menu Vector fiel ao Figma). Passe explicitamente
|
|
37
|
+
* para renderizar outro conjunto de itens.
|
|
38
|
+
*/
|
|
39
|
+
sections?: MenuSectionDef[];
|
|
40
|
+
/** Logo element rendered at the top (full logo for opened, small mark for closed) */
|
|
41
|
+
logo?: React.ReactNode;
|
|
42
|
+
/** Small logo mark shown in closed state */
|
|
43
|
+
logoMark?: React.ReactNode;
|
|
44
|
+
/** Whether to show the footer terms section */
|
|
45
|
+
showFooter?: boolean;
|
|
46
|
+
/** Terms of use link click handler */
|
|
47
|
+
onTermsClick?: () => void;
|
|
48
|
+
/** Privacy policy link click handler */
|
|
49
|
+
onPrivacyClick?: () => void;
|
|
50
|
+
className?: string;
|
|
51
|
+
}
|
|
52
|
+
export declare function Menu({ size, sections, logo, logoMark, showFooter, onTermsClick, onPrivacyClick, className, }: MenuProps): import("react/jsx-runtime").JSX.Element;
|
|
53
|
+
//# sourceMappingURL=Menu.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Menu.d.ts","sourceRoot":"","sources":["../../src/Menu/Menu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,IAAI,IAAI,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAQlE,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAC3C,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAC;AAE3D,MAAM,WAAW,WAAW;IAC1B,+BAA+B;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,8BAA8B;IAC9B,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,mDAAmD;IACnD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,oCAAoC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oBAAoB;IACpB,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,cAAc;IAC7B,qDAAqD;IACrD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4BAA4B;IAC5B,KAAK,EAAE,WAAW,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,SAAS;IACxB,6CAA6C;IAC7C,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,cAAc,EAAE,CAAC;IAC5B,qFAAqF;IACrF,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,+CAA+C;IAC/C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,sCAAsC;IACtC,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,wCAAwC;IACxC,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAoMD,wBAAgB,IAAI,CAAC,EACnB,IAAe,EACf,QAA8B,EAC9B,IAAI,EACJ,QAAQ,EACR,UAAiB,EACjB,YAAY,EACZ,cAAc,EACd,SAAS,GACV,EAAE,SAAS,2CAoEX"}
|
package/Menu/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Menu/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"menuData.d.ts","sourceRoot":"","sources":["../../src/Menu/menuData.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AA0MhD,8DAA8D;AAC9D,eAAO,MAAM,mBAAmB,EAAE,cAAc,EAAiC,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export type MessageType = 'info' | 'warning' | 'success' | 'danger' | 'highlight' | 'neutral';
|
|
2
|
+
export interface MessageProps {
|
|
3
|
+
/** The semantic type of the message, which controls background, border, and icon */
|
|
4
|
+
type?: MessageType;
|
|
5
|
+
/** The message text content */
|
|
6
|
+
message?: string;
|
|
7
|
+
/** Whether to show the leading icon */
|
|
8
|
+
showIcon?: boolean;
|
|
9
|
+
/** Label and optional click handler for an inline action button */
|
|
10
|
+
actionLabel?: string;
|
|
11
|
+
/** Callback fired when the action button is clicked */
|
|
12
|
+
onAction?: () => void;
|
|
13
|
+
/** Whether to render the close/dismiss button */
|
|
14
|
+
showClose?: boolean;
|
|
15
|
+
/** Callback fired when the close button is clicked */
|
|
16
|
+
onClose?: () => void;
|
|
17
|
+
/** Whether the message is in a disabled state */
|
|
18
|
+
disabled?: boolean;
|
|
19
|
+
/** Additional CSS class name */
|
|
20
|
+
className?: string;
|
|
21
|
+
}
|
|
22
|
+
export declare function Message({ type, message, showIcon, actionLabel, onAction, showClose, onClose, disabled, className, }: MessageProps): import("react/jsx-runtime").JSX.Element;
|
|
23
|
+
//# sourceMappingURL=Message.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Message.d.ts","sourceRoot":"","sources":["../../src/Message/Message.tsx"],"names":[],"mappings":"AAgBA,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,CAAC;AAE9F,MAAM,WAAW,YAAY;IAC3B,oFAAoF;IACpF,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,+BAA+B;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,mEAAmE;IACnE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uDAAuD;IACvD,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,iDAAiD;IACjD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,sDAAsD;IACtD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,iDAAiD;IACjD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gCAAgC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA6BD,wBAAgB,OAAO,CAAC,EACtB,IAAa,EACb,OAA2B,EAC3B,QAAe,EACf,WAAW,EACX,QAAQ,EACR,SAAgB,EAChB,OAAO,EACP,QAAgB,EAChB,SAAS,GACV,EAAE,YAAY,2CAwDd"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Message/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC"}
|
package/Modal/Modal.d.ts
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { ButtonProps } from '../Button/index.js';
|
|
3
|
+
export type ModalSize = 'small' | 'medium' | 'large';
|
|
4
|
+
export type ModalDialogType = 'warn' | 'error' | 'success' | 'loading';
|
|
5
|
+
/** Props shared by both Modal and ModalDialog */
|
|
6
|
+
interface ModalBaseProps {
|
|
7
|
+
/** Whether the modal is visible. Defaults to false. */
|
|
8
|
+
open?: boolean;
|
|
9
|
+
/** Called when the close button is clicked or Escape is pressed. */
|
|
10
|
+
onClose?: () => void;
|
|
11
|
+
/** Additional class names on the panel element. */
|
|
12
|
+
className?: string;
|
|
13
|
+
}
|
|
14
|
+
export interface ModalFooterAction extends Pick<ButtonProps, 'onClick' | 'disabled'> {
|
|
15
|
+
label: string;
|
|
16
|
+
variant?: ButtonProps['variant'];
|
|
17
|
+
}
|
|
18
|
+
export interface ModalProps extends ModalBaseProps {
|
|
19
|
+
/** Size variant: controls panel width. Defaults to "small". */
|
|
20
|
+
size?: ModalSize;
|
|
21
|
+
/** Modal heading text. */
|
|
22
|
+
title?: string;
|
|
23
|
+
/** Content rendered inside the body slot. */
|
|
24
|
+
children?: React.ReactNode;
|
|
25
|
+
/** Array of footer action buttons (left=secondary, right=primary). */
|
|
26
|
+
footerActions?: ModalFooterAction[];
|
|
27
|
+
/** Hide the backdrop overlay. */
|
|
28
|
+
noBackdrop?: boolean;
|
|
29
|
+
/** Fired when the backdrop is clicked. Defaults to calling onClose. */
|
|
30
|
+
onBackdropClick?: () => void;
|
|
31
|
+
}
|
|
32
|
+
export declare function Modal({ open, size, title, children, footerActions, onClose, noBackdrop, onBackdropClick, className, }: ModalProps): import("react/jsx-runtime").JSX.Element | null;
|
|
33
|
+
export interface ModalDialogProps extends ModalBaseProps {
|
|
34
|
+
/** Dialog type — controls the status icon shown. */
|
|
35
|
+
type?: ModalDialogType;
|
|
36
|
+
/** Dialog heading. */
|
|
37
|
+
title?: string;
|
|
38
|
+
/** Supporting text below the heading. */
|
|
39
|
+
text?: string;
|
|
40
|
+
/** Primary action button label. */
|
|
41
|
+
primaryLabel?: string;
|
|
42
|
+
/** Primary action callback. */
|
|
43
|
+
onPrimary?: () => void;
|
|
44
|
+
/** Secondary action button label. */
|
|
45
|
+
secondaryLabel?: string;
|
|
46
|
+
/** Secondary action callback. */
|
|
47
|
+
onSecondary?: () => void;
|
|
48
|
+
/** Hide the backdrop overlay. */
|
|
49
|
+
noBackdrop?: boolean;
|
|
50
|
+
/** Fired when the backdrop is clicked. Defaults to calling onClose. */
|
|
51
|
+
onBackdropClick?: () => void;
|
|
52
|
+
}
|
|
53
|
+
export declare function ModalDialog({ open, type, title, text, primaryLabel, onPrimary, secondaryLabel, onSecondary, onClose, noBackdrop, onBackdropClick, className, }: ModalDialogProps): import("react/jsx-runtime").JSX.Element | null;
|
|
54
|
+
export {};
|
|
55
|
+
//# sourceMappingURL=Modal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Modal.d.ts","sourceRoot":"","sources":["../../src/Modal/Modal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAKjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAUtD,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;AACrD,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC;AAEvE,iDAAiD;AACjD,UAAU,cAAc;IACtB,uDAAuD;IACvD,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,oEAAoE;IACpE,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAMD,MAAM,WAAW,iBACf,SAAQ,IAAI,CAAC,WAAW,EAAE,SAAS,GAAG,UAAU,CAAC;IACjD,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,UAAW,SAAQ,cAAc;IAChD,+DAA+D;IAC/D,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,0BAA0B;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,sEAAsE;IACtE,aAAa,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACpC,iCAAiC;IACjC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,uEAAuE;IACvE,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;CAC9B;AAQD,wBAAgB,KAAK,CAAC,EACpB,IAAY,EACZ,IAAc,EACd,KAAU,EACV,QAAQ,EACR,aAAa,EACb,OAAO,EACP,UAAkB,EAClB,eAAe,EACf,SAAS,GACV,EAAE,UAAU,kDAsGZ;AAMD,MAAM,WAAW,gBAAiB,SAAQ,cAAc;IACtD,oDAAoD;IACpD,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,sBAAsB;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yCAAyC;IACzC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mCAAmC;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,+BAA+B;IAC/B,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,qCAAqC;IACrC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iCAAiC;IACjC,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,iCAAiC;IACjC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,uEAAuE;IACvE,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;CAC9B;AASD,wBAAgB,WAAW,CAAC,EAC1B,IAAY,EACZ,IAAa,EACb,KAAU,EACV,IAAI,EACJ,YAAY,EACZ,SAAS,EACT,cAAc,EACd,WAAW,EACX,OAAO,EACP,UAAkB,EAClB,eAAe,EACf,SAAS,GACV,EAAE,gBAAgB,kDA2HlB"}
|
package/Modal/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Modal/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAChD,YAAY,EACV,UAAU,EACV,SAAS,EACT,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,GAChB,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
export type MultiselectSize = 'large' | 'medium' | 'small' | 'xsmall';
|
|
2
|
+
export type MultiselectState = 'default' | 'error' | 'disabled';
|
|
3
|
+
export interface MultiselectOption {
|
|
4
|
+
/** Unique value for this option. */
|
|
5
|
+
value: string;
|
|
6
|
+
/** Display label. */
|
|
7
|
+
label: string;
|
|
8
|
+
/** Whether this option is disabled and cannot be selected. */
|
|
9
|
+
disabled?: boolean;
|
|
10
|
+
}
|
|
11
|
+
export interface MultiselectProps {
|
|
12
|
+
/** List of selectable options. */
|
|
13
|
+
options: MultiselectOption[];
|
|
14
|
+
/** Currently selected values (controlled). */
|
|
15
|
+
value?: string[];
|
|
16
|
+
/** Default selected values (uncontrolled). */
|
|
17
|
+
defaultValue?: string[];
|
|
18
|
+
/** Called when the selection changes. */
|
|
19
|
+
onChange?: (values: string[]) => void;
|
|
20
|
+
/** Field label rendered above the trigger. */
|
|
21
|
+
label?: string;
|
|
22
|
+
/** Placeholder text when nothing is selected. */
|
|
23
|
+
placeholder?: string;
|
|
24
|
+
/** Hint text rendered below the trigger. */
|
|
25
|
+
hint?: string;
|
|
26
|
+
/** Size variant of the trigger field. */
|
|
27
|
+
size?: MultiselectSize;
|
|
28
|
+
/** Visual state of the field. */
|
|
29
|
+
state?: MultiselectState;
|
|
30
|
+
/** Whether the field is disabled. */
|
|
31
|
+
disabled?: boolean;
|
|
32
|
+
/** Whether to show the search/filter input inside the dropdown. */
|
|
33
|
+
showSearch?: boolean;
|
|
34
|
+
/** Maximum number of chip labels to show before showing "+N" overflow count. */
|
|
35
|
+
maxChips?: number;
|
|
36
|
+
/** Additional class name for the root element. */
|
|
37
|
+
className?: string;
|
|
38
|
+
/** ARIA label for the combobox trigger. */
|
|
39
|
+
'aria-label'?: string;
|
|
40
|
+
/** ARIA labelledby for the combobox trigger. */
|
|
41
|
+
'aria-labelledby'?: string;
|
|
42
|
+
/** ID attribute for the root element. */
|
|
43
|
+
id?: string;
|
|
44
|
+
}
|
|
45
|
+
export declare function Multiselect({ options, value: valueProp, defaultValue, onChange, label, placeholder, hint, size, state, disabled, showSearch, maxChips, className, 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledby, id: idProp, }: MultiselectProps): import("react/jsx-runtime").JSX.Element;
|
|
46
|
+
//# sourceMappingURL=Multiselect.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Multiselect.d.ts","sourceRoot":"","sources":["../../src/Multiselect/Multiselect.tsx"],"names":[],"mappings":"AASA,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC;AACtE,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,CAAC;AAEhE,MAAM,WAAW,iBAAiB;IAChC,oCAAoC;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,qBAAqB;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,8DAA8D;IAC9D,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,kCAAkC;IAClC,OAAO,EAAE,iBAAiB,EAAE,CAAC;IAC7B,8CAA8C;IAC9C,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,8CAA8C;IAC9C,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,yCAAyC;IACzC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACtC,8CAA8C;IAC9C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iDAAiD;IACjD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4CAA4C;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yCAAyC;IACzC,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,iCAAiC;IACjC,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,qCAAqC;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,mEAAmE;IACnE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gFAAgF;IAChF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kDAAkD;IAClD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2CAA2C;IAC3C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gDAAgD;IAChD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,yCAAyC;IACzC,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAqED,wBAAgB,WAAW,CAAC,EAC1B,OAAO,EACP,KAAK,EAAE,SAAS,EAChB,YAAY,EACZ,QAAQ,EACR,KAAK,EACL,WAAgC,EAChC,IAAI,EACJ,IAAe,EACf,KAAiB,EACjB,QAAgB,EAChB,UAAiB,EACjB,QAAY,EACZ,SAAS,EACT,YAAY,EAAE,SAAS,EACvB,iBAAiB,EAAE,cAAc,EACjC,EAAE,EAAE,MAAM,GACX,EAAE,gBAAgB,2CAoRlB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Multiselect/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
export interface OverlayProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
3
|
+
/** Additional class names forwarded to the root element. */
|
|
4
|
+
className?: string;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* A semi-transparent backdrop that dims the underlying content to
|
|
8
|
+
* focus attention on a modal or dialog. Use as the foundation for
|
|
9
|
+
* any modal, dialog, or focused popover.
|
|
10
|
+
*
|
|
11
|
+
* Renders as a `position:fixed` element that covers the full
|
|
12
|
+
* viewport. The consumer is responsible for mounting/unmounting
|
|
13
|
+
* the Overlay and layering the dialog on top of it via z-index.
|
|
14
|
+
*/
|
|
15
|
+
export declare function Overlay({ className, ...props }: OverlayProps): import("react/jsx-runtime").JSX.Element;
|
|
16
|
+
//# sourceMappingURL=Overlay.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Overlay.d.ts","sourceRoot":"","sources":["../../src/Overlay/Overlay.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,MAAM,WAAW,YAAa,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IACxE,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;GAQG;AACH,wBAAgB,OAAO,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,YAAY,2CAW5D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Overlay/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,YAAY,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export type PaginatorPageSize = 10 | 20 | 30 | 50 | 100;
|
|
2
|
+
export interface PaginatorProps {
|
|
3
|
+
/** Current page (1-based). */
|
|
4
|
+
currentPage: number;
|
|
5
|
+
/** Total number of pages. */
|
|
6
|
+
totalPages: number;
|
|
7
|
+
/** Number of page-number buttons to show (excluding first/last navigation arrows). Defaults to 3. */
|
|
8
|
+
pageWindowSize?: number;
|
|
9
|
+
/** Selected page size (rows per page). */
|
|
10
|
+
pageSize?: PaginatorPageSize;
|
|
11
|
+
/** Available page-size options. Defaults to [10, 20, 30, 50, 100]. */
|
|
12
|
+
pageSizeOptions?: PaginatorPageSize[];
|
|
13
|
+
/** Called when the user navigates to a different page. */
|
|
14
|
+
onPageChange?: (page: number) => void;
|
|
15
|
+
/** Called when the user selects a different page size. */
|
|
16
|
+
onPageSizeChange?: (pageSize: PaginatorPageSize) => void;
|
|
17
|
+
/** Whether to show the page-size selector. Defaults to true. */
|
|
18
|
+
showPageSizeSelect?: boolean;
|
|
19
|
+
/** Optional extra CSS class for the root element. */
|
|
20
|
+
className?: string;
|
|
21
|
+
}
|
|
22
|
+
export declare function Paginator({ currentPage, totalPages, pageWindowSize, pageSize, pageSizeOptions, onPageChange, onPageSizeChange, showPageSizeSelect, className, }: PaginatorProps): import("react/jsx-runtime").JSX.Element;
|
|
23
|
+
//# sourceMappingURL=Paginator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Paginator.d.ts","sourceRoot":"","sources":["../../src/Paginator/Paginator.tsx"],"names":[],"mappings":"AAWA,MAAM,MAAM,iBAAiB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC;AAExD,MAAM,WAAW,cAAc;IAC7B,8BAA8B;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,6BAA6B;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,qGAAqG;IACrG,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,sEAAsE;IACtE,eAAe,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACtC,0DAA0D;IAC1D,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,0DAA0D;IAC1D,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACzD,gEAAgE;IAChE,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,qDAAqD;IACrD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,SAAS,CAAC,EACxB,WAAW,EACX,UAAU,EACV,cAAkB,EAClB,QAAa,EACb,eAAuC,EACvC,YAAY,EACZ,gBAAgB,EAChB,kBAAyB,EACzB,SAAS,GACV,EAAE,cAAc,2CAkHhB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Paginator/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,YAAY,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC"}
|
package/Panel/Panel.d.ts
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
export type PanelStyle = 'shadow' | 'line';
|
|
3
|
+
export type PanelType = 'section' | 'container';
|
|
4
|
+
export interface PanelProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
5
|
+
/** Visual style of the panel: shadow uses drop-shadow, line uses a border stroke */
|
|
6
|
+
panelStyle?: PanelStyle;
|
|
7
|
+
/** Semantic type: section adds extra bottom padding (32px) for grouping content; container uses uniform padding (16px) */
|
|
8
|
+
type?: PanelType;
|
|
9
|
+
/** Whether the panel is in a disabled state */
|
|
10
|
+
disabled?: boolean;
|
|
11
|
+
}
|
|
12
|
+
export declare function Panel({ panelStyle, type, disabled, className, children, ...props }: PanelProps): import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
//# sourceMappingURL=Panel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Panel.d.ts","sourceRoot":"","sources":["../../src/Panel/Panel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,MAAM,CAAC;AAC3C,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;AAEhD,MAAM,WAAW,UAAW,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IACtE,oFAAoF;IACpF,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,0HAA0H;IAC1H,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAYD,wBAAgB,KAAK,CAAC,EACpB,UAAqB,EACrB,IAAgB,EAChB,QAAgB,EAChB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,UAAU,2CAmBZ"}
|
package/Panel/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Panel/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export interface ProgressSpinnerProps {
|
|
2
|
+
/** Accessible label announced by screen readers. */
|
|
3
|
+
label?: string;
|
|
4
|
+
/** Whether the spinner is in a disabled / inactive state. */
|
|
5
|
+
disabled?: boolean;
|
|
6
|
+
/** Additional CSS class names. */
|
|
7
|
+
className?: string;
|
|
8
|
+
}
|
|
9
|
+
export declare function ProgressSpinner({ label, disabled, className, }: ProgressSpinnerProps): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
//# sourceMappingURL=ProgressSpinner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProgressSpinner.d.ts","sourceRoot":"","sources":["../../src/ProgressSpinner/ProgressSpinner.tsx"],"names":[],"mappings":"AAGA,MAAM,WAAW,oBAAoB;IACnC,oDAAoD;IACpD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,kCAAkC;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAOD,wBAAgB,eAAe,CAAC,EAC9B,KAAkB,EAClB,QAAgB,EAChB,SAAS,GACV,EAAE,oBAAoB,2CA8CtB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ProgressSpinner/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,YAAY,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC"}
|
package/README.md
ADDED
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
# ngx-monorepo
|
|
2
|
+
|
|
3
|
+
Design system React para **prototipagem interna**. Componentes fiéis ao Figma,
|
|
4
|
+
documentados no Storybook, consumidos pelos protótipos da empresa.
|
|
5
|
+
|
|
6
|
+
> Não é uma biblioteca de produção — é a base para montar protótipos rápido,
|
|
7
|
+
> com componentes reais (não mockups) e visual alinhado ao Figma.
|
|
8
|
+
|
|
9
|
+
## Estrutura
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
packages/tokens/ @ngx/tokens — tokens CSS (Style Dictionary, gerados do Figma)
|
|
13
|
+
packages/components/ @ngx/components — componentes React + CSS Modules
|
|
14
|
+
apps/storybook/ — documentação interativa dos componentes
|
|
15
|
+
apps/proto-template/ — template de protótipo (Vite + React)
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Pré-requisitos
|
|
19
|
+
|
|
20
|
+
- [Node.js](https://nodejs.org/) 18+
|
|
21
|
+
- [pnpm](https://pnpm.io/installation) 9+ (`npm install -g pnpm`)
|
|
22
|
+
|
|
23
|
+
## Como rodar (primeira vez)
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
pnpm install # instala as dependências
|
|
27
|
+
pnpm build # gera os tokens (dist/) — necessário antes de rodar
|
|
28
|
+
pnpm storybook # abre o Storybook em http://localhost:6006
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
> O `pnpm build` precisa rodar **uma vez** após clonar (e sempre que os tokens
|
|
32
|
+
> mudarem), porque o Storybook/protótipos importam o `tokens.css` já gerado.
|
|
33
|
+
|
|
34
|
+
Outros comandos úteis:
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
pnpm dev # storybook + proto-template em paralelo
|
|
38
|
+
pnpm proto # abre o template de protótipo (http://localhost:5173)
|
|
39
|
+
pnpm turbo test
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Montar um protótipo
|
|
43
|
+
|
|
44
|
+
Os protótipos vivem **dentro deste repositório**, em `apps/`. Use o template
|
|
45
|
+
pronto `apps/proto-template`:
|
|
46
|
+
|
|
47
|
+
1. Clone o repositório (acesso privado no GitHub) e rode os passos acima.
|
|
48
|
+
2. Copie o template:
|
|
49
|
+
```bash
|
|
50
|
+
cp -r apps/proto-template apps/meu-prototipo
|
|
51
|
+
# Windows/PowerShell: Copy-Item -Recurse apps/proto-template apps/meu-prototipo
|
|
52
|
+
```
|
|
53
|
+
3. Troque o `name` em `apps/meu-prototipo/package.json` para `meu-prototipo`.
|
|
54
|
+
4. Instale e rode:
|
|
55
|
+
```bash
|
|
56
|
+
pnpm install
|
|
57
|
+
pnpm --filter meu-prototipo dev
|
|
58
|
+
```
|
|
59
|
+
5. Monte sua tela em `src/App.tsx`, importando o que precisar:
|
|
60
|
+
```tsx
|
|
61
|
+
import { Button, Select, Menu } from '@ngx/components';
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
> O template já importa tokens/fontes em `src/main.tsx` — mantenha esses imports.
|
|
65
|
+
> Veja o catálogo de componentes com `pnpm storybook`.
|
|
66
|
+
|
|
67
|
+
## Atualizar os componentes (rebater mudanças)
|
|
68
|
+
|
|
69
|
+
A biblioteca e os protótipos vivem no mesmo repositório, então a propagação é
|
|
70
|
+
o próprio Git:
|
|
71
|
+
|
|
72
|
+
- **Quem mantém os componentes:** edita em `packages/components`, commita e dá
|
|
73
|
+
`git push`.
|
|
74
|
+
- **Quem está montando protótipo:** roda **`git pull`** para receber a versão
|
|
75
|
+
mais recente. Se houver dependências novas, `pnpm install`; se tokens
|
|
76
|
+
mudaram, `pnpm build`.
|
|
77
|
+
|
|
78
|
+
Um `git pull` rebate as atualizações de componente para todo mundo que estiver
|
|
79
|
+
consumindo.
|
|
80
|
+
|
|
81
|
+
## Propriedade — o que é seu vs. o que é da pessoa
|
|
82
|
+
|
|
83
|
+
| Pasta | Quem edita |
|
|
84
|
+
|---|---|
|
|
85
|
+
| `packages/` (tokens + componentes) | **Só o mantenedor (dono do repo).** É a biblioteca. |
|
|
86
|
+
| `apps/storybook`, `apps/proto-template` | Mantenedor. |
|
|
87
|
+
| `apps/<seu-prototipo>` | Quem está prototipando — **só aqui**. |
|
|
88
|
+
|
|
89
|
+
**Regra:** quem monta protótipo edita **exclusivamente** a própria pasta em
|
|
90
|
+
`apps/`. **Ninguém altera `packages/`** — esse é o design system, mantido só
|
|
91
|
+
pelo dono.
|
|
92
|
+
|
|
93
|
+
- **Garantia:** com acesso **read-only** (ver abaixo), alterações em `packages/`
|
|
94
|
+
por consumidores **não chegam ao repositório** — só o dono tem escrita.
|
|
95
|
+
- **Localmente** ainda é possível editar por engano (inclusive uma IA pode
|
|
96
|
+
"consertar" um componente sem querer). O git denuncia: `git status` mostra
|
|
97
|
+
`modified: packages/...`. Para reverter ao original (offline, sem afetar o
|
|
98
|
+
protótipo):
|
|
99
|
+
```bash
|
|
100
|
+
git restore packages/
|
|
101
|
+
```
|
|
102
|
+
- Cada protótipo já vem com um `CLAUDE.md` instruindo agentes a **nunca** tocar
|
|
103
|
+
em `packages/` — só na pasta do protótipo.
|
|
104
|
+
|
|
105
|
+
## Acesso e segurança
|
|
106
|
+
|
|
107
|
+
Para evitar que protótipos sobrescrevam ou baguncem o monorepo:
|
|
108
|
+
|
|
109
|
+
- **Quem monta protótipo recebe acesso somente-leitura** (GitHub → Settings →
|
|
110
|
+
Collaborators → Role: **Read**). Com isso o `git push` dessas pessoas é
|
|
111
|
+
recusado pelo GitHub — elas só clonam, criam o protótipo localmente e dão
|
|
112
|
+
`git pull`. **O dono é o único que dá push** nos componentes.
|
|
113
|
+
- **Proteção de branch no `main`** (GitHub → Settings → Branches → Add rule):
|
|
114
|
+
marque *"Require a pull request before merging"* e *"Do not allow force
|
|
115
|
+
pushes"*. Cinto-e-suspensório contra push direto / reescrita de histórico.
|
|
116
|
+
|
|
117
|
+
> O git **não** sobrescreve nada sozinho: um push que diverge do `main` é
|
|
118
|
+
> rejeitado (erro *non-fast-forward*); só um `git push --force` intencional —
|
|
119
|
+
> e com permissão de escrita — reescreveria. Read-only + branch protection
|
|
120
|
+
> tornam isso impossível.
|
|
121
|
+
|
|
122
|
+
### Quem quer salvar/versionar o próprio protótipo
|
|
123
|
+
|
|
124
|
+
Como o protótipo fica local (read-only não dá push), quem quiser backup deve
|
|
125
|
+
**fazer um fork** do repositório: o push vai para o fork da própria pessoa,
|
|
126
|
+
nunca para este repo. Para receber atualizações dos componentes, configura
|
|
127
|
+
este repo como `upstream` e dá `git pull upstream main`.
|
|
128
|
+
|
|
129
|
+
## Pipeline de tokens
|
|
130
|
+
|
|
131
|
+
```
|
|
132
|
+
Figma plugin "Design Tokens" → export .json
|
|
133
|
+
└── pnpm tokens:sync <arquivo.json> → packages/tokens/raw-tokens.json (fonte de verdade)
|
|
134
|
+
└── pnpm tokens:build → dist/tokens.css, dist/fonts.css
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
Componentes usam exclusivamente `var(--color-*)`, `var(--font-*)`,
|
|
138
|
+
`var(--shadow-*)` — nunca hex hardcoded.
|
|
139
|
+
|
|
140
|
+
## Convenções
|
|
141
|
+
|
|
142
|
+
As regras de construção de componentes, tokens, scrollbar compartilhada e
|
|
143
|
+
building blocks estão no [`CLAUDE.md`](./CLAUDE.md).
|
package/Radio/Radio.d.ts
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
export interface RadioProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'type'> {
|
|
3
|
+
/** Whether this radio is selected. */
|
|
4
|
+
checked?: boolean;
|
|
5
|
+
/** Uncontrolled default checked state. */
|
|
6
|
+
defaultChecked?: boolean;
|
|
7
|
+
/** Label text rendered next to the radio circle. */
|
|
8
|
+
label?: string;
|
|
9
|
+
/** Disables the radio input. */
|
|
10
|
+
disabled?: boolean;
|
|
11
|
+
/** Additional className for the outer wrapper label. */
|
|
12
|
+
className?: string;
|
|
13
|
+
}
|
|
14
|
+
export declare function Radio({ checked, defaultChecked, label, disabled, className, id: idProp, onChange, ...props }: RadioProps): import("react/jsx-runtime").JSX.Element;
|
|
15
|
+
//# sourceMappingURL=Radio.d.ts.map
|