@bspk/ui 1.1.20 → 1.1.22
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/Avatar.d.ts +18 -2
- package/dist/Avatar.js +18 -2
- package/dist/Avatar.js.map +1 -1
- package/dist/AvatarGroup.d.ts +14 -0
- package/dist/AvatarGroup.js +14 -0
- package/dist/AvatarGroup.js.map +1 -1
- package/dist/Badge.d.ts +23 -2
- package/dist/Badge.js +12 -3
- package/dist/Badge.js.map +1 -1
- package/dist/BannerAlert.d.ts +17 -0
- package/dist/BannerAlert.js +17 -0
- package/dist/BannerAlert.js.map +1 -1
- package/dist/Button.d.ts +16 -0
- package/dist/Button.js +16 -0
- package/dist/Button.js.map +1 -1
- package/dist/Card.d.ts +12 -0
- package/dist/Card.js +12 -0
- package/dist/Card.js.map +1 -1
- package/dist/Checkbox.d.ts +21 -0
- package/dist/Checkbox.js +21 -0
- package/dist/Checkbox.js.map +1 -1
- package/dist/CheckboxGroup.d.ts +30 -0
- package/dist/CheckboxGroup.js +23 -0
- package/dist/CheckboxGroup.js.map +1 -1
- package/dist/CheckboxOption.d.ts +23 -1
- package/dist/CheckboxOption.js +25 -2
- package/dist/CheckboxOption.js.map +1 -1
- package/dist/Chip.d.ts +11 -0
- package/dist/Chip.js +11 -0
- package/dist/Chip.js.map +1 -1
- package/dist/Dialog.d.ts +19 -0
- package/dist/Dialog.js +19 -0
- package/dist/Dialog.js.map +1 -1
- package/dist/Divider.d.ts +13 -0
- package/dist/Divider.js +13 -0
- package/dist/Divider.js.map +1 -1
- package/dist/Dropdown.d.ts +30 -0
- package/dist/Dropdown.js +30 -0
- package/dist/Dropdown.js.map +1 -1
- package/dist/DropdownField.d.ts +22 -0
- package/dist/DropdownField.js +22 -0
- package/dist/DropdownField.js.map +1 -1
- package/dist/EmptyState.d.ts +11 -0
- package/dist/EmptyState.js +11 -0
- package/dist/EmptyState.js.map +1 -1
- package/dist/Fab.d.ts +8 -0
- package/dist/Fab.js +8 -0
- package/dist/Fab.js.map +1 -1
- package/dist/FormField.d.ts +25 -0
- package/dist/FormField.js +25 -0
- package/dist/FormField.js.map +1 -1
- package/dist/Img.d.ts +7 -0
- package/dist/Img.js +7 -0
- package/dist/Img.js.map +1 -1
- package/dist/InlineAlert.d.ts +7 -0
- package/dist/InlineAlert.js +7 -0
- package/dist/InlineAlert.js.map +1 -1
- package/dist/Layout.d.ts +7 -0
- package/dist/Layout.js +7 -0
- package/dist/Layout.js.map +1 -1
- package/dist/Link.d.ts +7 -0
- package/dist/Link.js +7 -0
- package/dist/Link.js.map +1 -1
- package/dist/ListItem.d.ts +15 -0
- package/dist/ListItem.js +15 -0
- package/dist/ListItem.js.map +1 -1
- package/dist/Menu.d.ts +28 -0
- package/dist/Menu.js +29 -1
- package/dist/Menu.js.map +1 -1
- package/dist/MenuButton.d.ts +7 -0
- package/dist/MenuButton.js +7 -0
- package/dist/MenuButton.js.map +1 -1
- package/dist/Modal.d.ts +23 -1
- package/dist/Modal.js +23 -1
- package/dist/Modal.js.map +1 -1
- package/dist/NumberField.d.ts +19 -0
- package/dist/NumberField.js +19 -0
- package/dist/NumberField.js.map +1 -1
- package/dist/NumberInput.d.ts +16 -0
- package/dist/NumberInput.js +16 -0
- package/dist/NumberInput.js.map +1 -1
- package/dist/Popover.d.ts +29 -2
- package/dist/Popover.js +30 -3
- package/dist/Popover.js.map +1 -1
- package/dist/ProgressBar.d.ts +8 -0
- package/dist/ProgressBar.js +9 -1
- package/dist/ProgressBar.js.map +1 -1
- package/dist/ProgressCircle.d.ts +8 -0
- package/dist/ProgressCircle.js +8 -0
- package/dist/ProgressCircle.js.map +1 -1
- package/dist/ProgressionStepper.d.ts +12 -0
- package/dist/ProgressionStepper.js +12 -0
- package/dist/ProgressionStepper.js.map +1 -1
- package/dist/RadioGroup.d.ts +38 -6
- package/dist/RadioGroup.js +34 -5
- package/dist/RadioGroup.js.map +1 -1
- package/dist/RadioOption.d.ts +3 -1
- package/dist/RadioOption.js +5 -2
- package/dist/RadioOption.js.map +1 -1
- package/dist/SearchBar.d.ts +41 -3
- package/dist/SearchBar.js +34 -0
- package/dist/SearchBar.js.map +1 -1
- package/dist/SegmentedControl.d.ts +35 -8
- package/dist/SegmentedControl.js +24 -2
- package/dist/SegmentedControl.js.map +1 -1
- package/dist/Skeleton.d.ts +3 -1
- package/dist/Skeleton.js +3 -1
- package/dist/Skeleton.js.map +1 -1
- package/dist/Switch.d.ts +18 -1
- package/dist/Switch.js +18 -1
- package/dist/Switch.js.map +1 -1
- package/dist/SwitchOption.d.ts +4 -2
- package/dist/SwitchOption.js +5 -2
- package/dist/SwitchOption.js.map +1 -1
- package/dist/TabGroup.d.ts +26 -5
- package/dist/TabGroup.js +20 -0
- package/dist/TabGroup.js.map +1 -1
- package/dist/Tag.d.ts +13 -1
- package/dist/Tag.js +13 -1
- package/dist/Tag.js.map +1 -1
- package/dist/TextField.d.ts +21 -2
- package/dist/TextField.js +22 -2
- package/dist/TextField.js.map +1 -1
- package/dist/TextInput.d.ts +22 -3
- package/dist/TextInput.js +20 -2
- package/dist/TextInput.js.map +1 -1
- package/dist/Textarea.d.ts +23 -4
- package/dist/Textarea.js +27 -7
- package/dist/Textarea.js.map +1 -1
- package/dist/TextareaField.d.ts +21 -1
- package/dist/TextareaField.js +24 -2
- package/dist/TextareaField.js.map +1 -1
- package/dist/ToggleOption.d.ts +8 -5
- package/dist/ToggleOption.js +3 -3
- package/dist/ToggleOption.js.map +1 -1
- package/dist/Tooltip.d.ts +15 -3
- package/dist/Tooltip.js +20 -3
- package/dist/Tooltip.js.map +1 -1
- package/dist/Txt.d.ts +9 -1
- package/dist/Txt.js +9 -1
- package/dist/Txt.js.map +1 -1
- package/dist/badge.css +1 -1
- package/dist/demo/examples.js +3 -0
- package/dist/demo/examples.js.map +1 -1
- package/dist/progress-bar.css +1 -1
- package/dist/radio-group.css +1 -0
- package/dist/textarea.css +1 -1
- package/dist/toggle-option.css +1 -1
- package/meta.ts +8 -6
- package/package.json +1 -1
- package/src/Avatar.tsx +18 -2
- package/src/AvatarGroup.tsx +14 -0
- package/src/Badge.tsx +30 -4
- package/src/BannerAlert.tsx +17 -0
- package/src/Button.tsx +16 -0
- package/src/Card.tsx +12 -0
- package/src/Checkbox.tsx +21 -0
- package/src/CheckboxGroup.tsx +30 -0
- package/src/CheckboxOption.tsx +29 -4
- package/src/Chip.tsx +11 -0
- package/src/Dialog.tsx +19 -0
- package/src/Divider.tsx +13 -0
- package/src/Dropdown.tsx +30 -0
- package/src/DropdownField.tsx +22 -0
- package/src/EmptyState.tsx +11 -0
- package/src/Fab.tsx +8 -0
- package/src/FormField.tsx +25 -0
- package/src/Img.tsx +7 -0
- package/src/InlineAlert.tsx +7 -0
- package/src/Layout.tsx +7 -0
- package/src/Link.tsx +7 -0
- package/src/ListItem.tsx +15 -0
- package/src/Menu.tsx +29 -0
- package/src/MenuButton.tsx +7 -0
- package/src/Modal.tsx +23 -1
- package/src/NumberField.tsx +19 -0
- package/src/NumberInput.tsx +16 -0
- package/src/Popover.tsx +53 -5
- package/src/ProgressBar.tsx +8 -0
- package/src/ProgressCircle.tsx +8 -0
- package/src/ProgressionStepper.tsx +12 -0
- package/src/RadioGroup.tsx +68 -25
- package/src/RadioOption.tsx +9 -4
- package/src/SearchBar.tsx +54 -6
- package/src/SegmentedControl.tsx +57 -14
- package/src/Skeleton.tsx +3 -1
- package/src/Switch.tsx +18 -1
- package/src/SwitchOption.tsx +11 -6
- package/src/TabGroup.tsx +30 -6
- package/src/Tag.tsx +13 -1
- package/src/TextField.tsx +37 -6
- package/src/TextInput.tsx +36 -5
- package/src/Textarea.tsx +41 -9
- package/src/TextareaField.tsx +33 -4
- package/src/ToggleOption.tsx +9 -6
- package/src/Tooltip.tsx +29 -5
- package/src/Txt.tsx +14 -2
- package/src/badge.scss +17 -4
- package/src/demo/examples.tsx +3 -0
- package/src/progress-bar.scss +0 -2
- package/src/radio-group.scss +5 -0
- package/src/textarea.scss +4 -0
- package/src/toggle-option.scss +1 -20
- package/dist/SwitchGroup.d.ts +0 -42
- package/dist/SwitchGroup.js +0 -16
- package/dist/SwitchGroup.js.map +0 -1
- package/dist/hooks/useSwitchGroupState.d.ts +0 -37
- package/dist/hooks/useSwitchGroupState.js +0 -57
- package/dist/hooks/useSwitchGroupState.js.map +0 -1
- package/src/SwitchGroup.tsx +0 -72
- package/src/hooks/useSwitchGroupState.ts +0 -75
package/dist/TabGroup.js
CHANGED
|
@@ -11,6 +11,26 @@ const TAB_BADGE_SIZES = {
|
|
|
11
11
|
/**
|
|
12
12
|
* Navigation tool that organizes content across different screens and views.
|
|
13
13
|
*
|
|
14
|
+
* @example
|
|
15
|
+
* import { useState } from 'react';
|
|
16
|
+
* import { TabGroup } from '@bspk/ui/TabGroup';
|
|
17
|
+
*
|
|
18
|
+
* export function Example() {
|
|
19
|
+
* const [selectedTab, setSelectedTab] = useState<string>();
|
|
20
|
+
*
|
|
21
|
+
* return (
|
|
22
|
+
* <TabGroup
|
|
23
|
+
* onChange={setSelectedTab}
|
|
24
|
+
* options={[
|
|
25
|
+
* { value: '1', label: 'Option 1' },
|
|
26
|
+
* { value: '2', label: 'Option 2' },
|
|
27
|
+
* { value: '3', label: 'Option 3' },
|
|
28
|
+
* ]}
|
|
29
|
+
* value={selectedTab}
|
|
30
|
+
* />
|
|
31
|
+
* );
|
|
32
|
+
* }
|
|
33
|
+
*
|
|
14
34
|
* @name TabGroup
|
|
15
35
|
*/
|
|
16
36
|
function TabGroup({
|
package/dist/TabGroup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TabGroup.js","sourceRoot":"","sources":["../src/TabGroup.tsx"],"names":[],"mappings":";AAAA,OAAO,kBAAkB,CAAC;AAG1B,OAAO,EAAE,KAAK,EAAc,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAMtE,MAAM,eAAe,GAA6C;IAC9D,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,SAAS;IACjB,KAAK,EAAE,SAAS;CACnB,CAAC;
|
|
1
|
+
{"version":3,"file":"TabGroup.js","sourceRoot":"","sources":["../src/TabGroup.tsx"],"names":[],"mappings":";AAAA,OAAO,kBAAkB,CAAC;AAG1B,OAAO,EAAE,KAAK,EAAc,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAMtE,MAAM,eAAe,GAA6C;IAC9D,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,SAAS;IACjB,KAAK,EAAE,SAAS;CACnB,CAAC;AA0FF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,SAAS,QAAQ,CAAC;AACd,EAAE;AACF,QAAQ,EAAE,WAAW,EACrB,KAAK,EACL,IAAI,GAAG,QAAQ,EACf,OAAO,EAAE,WAAW,EACpB,KAAK,GAAG,KAAK,EACb,SAAS,GAAG,KAAK,EACjB,GAAG,cAAc,EACgB;IACjC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9D,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAE/B,OAAO,CACH,iBACQ,cAAc,eACR,WAAW,qBACJ,CAAC,KAAK,KAAK,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,SAAS,eAClD,IAAI,gBACH,KAAK,YAEhB,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE;YAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC;YAEtC,OAAO,CACH,gCACiB,QAAQ,IAAI,SAAS,EAClC,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,SAAS,EAEpC,OAAO,EAAE,GAAG,EAAE;oBACV,WAAW,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;gBACrD,CAAC,YAED,2BACK,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,IAAI,EAC1C,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,IAAI,CAC1C,KAAC,KAAK,IACF,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC,GAC7B,CACL,IACE,IAdF,IAAI,CAAC,KAAK,CAeV,CACZ,CAAC;QACN,CAAC,CAAC,GACA,CACT,CAAC;AACN,CAAC;AAED,QAAQ,CAAC,QAAQ,GAAG,UAAU,CAAC;AAE/B,OAAO,EAAE,QAAQ,EAAE,CAAC"}
|
package/dist/Tag.d.ts
CHANGED
|
@@ -47,7 +47,19 @@ export type TagProps<As extends ElementType = 'span'> = {
|
|
|
47
47
|
wrap?: boolean;
|
|
48
48
|
};
|
|
49
49
|
/**
|
|
50
|
-
* A non-interactive visual indicators to draw attention or categorization of a
|
|
50
|
+
* A non-interactive visual indicators to draw attention or categorization of a
|
|
51
|
+
* component.
|
|
52
|
+
*
|
|
53
|
+
* @example
|
|
54
|
+
* import { Tag } from '@bspk/ui/Tag';
|
|
55
|
+
*
|
|
56
|
+
* export function Example() {
|
|
57
|
+
* return (
|
|
58
|
+
* <Tag variant="flat" color="primary">
|
|
59
|
+
* Example Tag
|
|
60
|
+
* </Tag>
|
|
61
|
+
* );
|
|
62
|
+
* }
|
|
51
63
|
*
|
|
52
64
|
* @name Tag
|
|
53
65
|
*/
|
package/dist/Tag.js
CHANGED
|
@@ -2,7 +2,19 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import { styleAdd } from './utils/styleAdd';
|
|
3
3
|
styleAdd(`[data-bspk=tag]{display:flex;flex-direction:column;justify-content:center;width:fit-content;position:relative;padding:0 var(--spacing-sizing-03);border-radius:var(--radius-small);color:var(--foreground) !important;background:var(--background);font:unset;text-decoration:unset;white-space:nowrap;pointer-events:none}[data-bspk=tag][data-wrap]{height:auto}[data-bspk=tag][data-variant=pill]{border-radius:var(--radius-circular)}[data-bspk=tag][data-variant=corner-wrap]{border-bottom-right-radius:0}[data-bspk=tag][data-size=small]{font:var(--labels-small);height:var(--spacing-sizing-08)}[data-bspk=tag][data-size=x-small]{font:var(--labels-x-small);height:var(--spacing-sizing-06)}[data-bspk=tag][data-color=white]{box-shadow:var(--drop-shadow-south)}[data-bspk=tag] [data-triangle]{position:absolute;bottom:-12px;right:0;width:0;height:0;border-style:solid;border-width:12px 12px 0 0;border-color:var(--foreground) rgba(0,0,0,0) rgba(0,0,0,0) rgba(0,0,0,0);transform:rotate(0deg)}`);;
|
|
4
4
|
/**
|
|
5
|
-
* A non-interactive visual indicators to draw attention or categorization of a
|
|
5
|
+
* A non-interactive visual indicators to draw attention or categorization of a
|
|
6
|
+
* component.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* import { Tag } from '@bspk/ui/Tag';
|
|
10
|
+
*
|
|
11
|
+
* export function Example() {
|
|
12
|
+
* return (
|
|
13
|
+
* <Tag variant="flat" color="primary">
|
|
14
|
+
* Example Tag
|
|
15
|
+
* </Tag>
|
|
16
|
+
* );
|
|
17
|
+
* }
|
|
6
18
|
*
|
|
7
19
|
* @name Tag
|
|
8
20
|
*/
|
package/dist/Tag.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tag.js","sourceRoot":"","sources":["../src/Tag.tsx"],"names":[],"mappings":";AAKA,OAAO,YAAY,CAAC;AA+CpB
|
|
1
|
+
{"version":3,"file":"Tag.js","sourceRoot":"","sources":["../src/Tag.tsx"],"names":[],"mappings":";AAKA,OAAO,YAAY,CAAC;AA+CpB;;;;;;;;;;;;;;;;GAgBG;AACH,SAAS,GAAG,CAAkC,EAC1C,QAAQ,EACR,EAAE,EACF,KAAK,GAAG,OAAO,EACf,IAAI,GAAG,OAAO,EACd,OAAO,GAAG,MAAM,EAChB,IAAI,EACJ,GAAG,KAAK,EACqB;IAC7B,MAAM,EAAE,GAAgB,EAAE,IAAI,MAAM,CAAC;IAErC,OAAO,CACH,MAAC,EAAE,OACK,KAAK,eACC,KAAK,gBACH,KAAK,eACN,IAAI,kBACD,OAAO,eACV,IAAI,IAAI,SAAS,aAE3B,QAAQ,EACR,OAAO,KAAK,aAAa,IAAI,sCAAqB,IAClD,CACR,CAAC;AACN,CAAC;AAED,GAAG,CAAC,QAAQ,GAAG,KAAK,CAAC;AAErB,OAAO,EAAE,GAAG,EAAE,CAAC"}
|
package/dist/TextField.d.ts
CHANGED
|
@@ -1,12 +1,31 @@
|
|
|
1
1
|
import { FormFieldProps } from './FormField';
|
|
2
2
|
import { TextInputProps } from './TextInput';
|
|
3
3
|
import { InvalidPropsLibrary } from '.';
|
|
4
|
-
export type TextFieldProps = InvalidPropsLibrary & Pick<
|
|
4
|
+
export type TextFieldProps = InvalidPropsLibrary & Pick<FormFieldProps, 'controlId' | 'errorMessage' | 'helperText' | 'label' | 'labelTrailing'> & Pick<TextInputProps, 'autoComplete' | 'disabled' | 'inputRef' | 'leading' | 'name' | 'onChange' | 'placeholder' | 'readOnly' | 'required' | 'size' | 'trailing' | 'type' | 'value'>;
|
|
5
5
|
/**
|
|
6
|
-
* A text input that allows users to enter text, numbers or symbols in a
|
|
6
|
+
* A text input that allows users to enter text, numbers or symbols in a
|
|
7
|
+
* singular line.
|
|
7
8
|
*
|
|
8
9
|
* This component takes properties from the FormField and TextInput components.
|
|
9
10
|
*
|
|
11
|
+
* @example
|
|
12
|
+
* import { useState } from 'react';
|
|
13
|
+
* import { TextField } from '@bspk/ui/TextField';
|
|
14
|
+
*
|
|
15
|
+
* export function Example() {
|
|
16
|
+
* const [value, setValue] = useState<string>('');
|
|
17
|
+
*
|
|
18
|
+
* return (
|
|
19
|
+
* <TextField
|
|
20
|
+
* controlId="Example controlId"
|
|
21
|
+
* label="Example label"
|
|
22
|
+
* name="Example name"
|
|
23
|
+
* onChange={setValue}
|
|
24
|
+
* value={value}
|
|
25
|
+
* />
|
|
26
|
+
* );
|
|
27
|
+
* }
|
|
28
|
+
*
|
|
10
29
|
* @name TextField
|
|
11
30
|
*/
|
|
12
31
|
declare function TextField({ label, errorMessage: errorMessageProp, helperText, controlId, labelTrailing, required, ...inputProps }: TextFieldProps): import("react/jsx-runtime").JSX.Element;
|
package/dist/TextField.js
CHANGED
|
@@ -2,14 +2,34 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import { FormField } from './FormField';
|
|
3
3
|
import { TextInput } from './TextInput';
|
|
4
4
|
/**
|
|
5
|
-
* A text input that allows users to enter text, numbers or symbols in a
|
|
5
|
+
* A text input that allows users to enter text, numbers or symbols in a
|
|
6
|
+
* singular line.
|
|
6
7
|
*
|
|
7
8
|
* This component takes properties from the FormField and TextInput components.
|
|
8
9
|
*
|
|
10
|
+
* @example
|
|
11
|
+
* import { useState } from 'react';
|
|
12
|
+
* import { TextField } from '@bspk/ui/TextField';
|
|
13
|
+
*
|
|
14
|
+
* export function Example() {
|
|
15
|
+
* const [value, setValue] = useState<string>('');
|
|
16
|
+
*
|
|
17
|
+
* return (
|
|
18
|
+
* <TextField
|
|
19
|
+
* controlId="Example controlId"
|
|
20
|
+
* label="Example label"
|
|
21
|
+
* name="Example name"
|
|
22
|
+
* onChange={setValue}
|
|
23
|
+
* value={value}
|
|
24
|
+
* />
|
|
25
|
+
* );
|
|
26
|
+
* }
|
|
27
|
+
*
|
|
9
28
|
* @name TextField
|
|
10
29
|
*/
|
|
11
30
|
function TextField({ label, errorMessage: errorMessageProp, helperText, controlId, labelTrailing, required, ...inputProps }) {
|
|
12
|
-
const errorMessage = (!inputProps.readOnly && !inputProps.disabled && errorMessageProp) ||
|
|
31
|
+
const errorMessage = (!inputProps.readOnly && !inputProps.disabled && errorMessageProp) ||
|
|
32
|
+
undefined;
|
|
13
33
|
return (_jsx(FormField, { controlId: controlId, "data-bspk": "text-field", errorMessage: errorMessage, helperText: helperText, label: label, labelTrailing: labelTrailing, required: required, children: (fieldProps) => (_jsx(TextInput, { ...inputProps, ...fieldProps, "aria-label": label, id: controlId, required: required })) }));
|
|
14
34
|
}
|
|
15
35
|
TextField.bspkName = 'TextField';
|
package/dist/TextField.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextField.js","sourceRoot":"","sources":["../src/TextField.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAkB,SAAS,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAkB,SAAS,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"TextField.js","sourceRoot":"","sources":["../src/TextField.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAkB,SAAS,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAkB,SAAS,EAAE,MAAM,aAAa,CAAC;AA2BxD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,SAAS,SAAS,CAAC,EACf,KAAK,EACL,YAAY,EAAE,gBAAgB,EAC9B,UAAU,EACV,SAAS,EACT,aAAa,EACb,QAAQ,EACR,GAAG,UAAU,EACA;IACb,MAAM,YAAY,GACd,CAAC,CAAC,UAAU,CAAC,QAAQ,IAAI,CAAC,UAAU,CAAC,QAAQ,IAAI,gBAAgB,CAAC;QAClE,SAAS,CAAC;IAEd,OAAO,CACH,KAAC,SAAS,IACN,SAAS,EAAE,SAAS,eACV,YAAY,EACtB,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,UAAU,EACtB,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,QAAQ,YAEjB,CAAC,UAAU,EAAE,EAAE,CAAC,CACb,KAAC,SAAS,OACF,UAAU,KACV,UAAU,gBACF,KAAK,EACjB,EAAE,EAAE,SAAS,EACb,QAAQ,EAAE,QAAQ,GACpB,CACL,GACO,CACf,CAAC;AACN,CAAC;AAED,SAAS,CAAC,QAAQ,GAAG,WAAW,CAAC;AAEjC,OAAO,EAAE,SAAS,EAAE,CAAC"}
|
package/dist/TextInput.d.ts
CHANGED
|
@@ -31,7 +31,8 @@ export type TextInputProps = CommonProps<'aria-label' | 'disabled' | 'id' | 'nam
|
|
|
31
31
|
*/
|
|
32
32
|
type?: Extract<HTMLInputTypeAttribute, 'number' | 'text'>;
|
|
33
33
|
/**
|
|
34
|
-
* Specifies if user agent has any permission to provide automated
|
|
34
|
+
* Specifies if user agent has any permission to provide automated
|
|
35
|
+
* assistance in filling out form field values.
|
|
35
36
|
* https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete
|
|
36
37
|
*
|
|
37
38
|
* @default off
|
|
@@ -39,8 +40,26 @@ export type TextInputProps = CommonProps<'aria-label' | 'disabled' | 'id' | 'nam
|
|
|
39
40
|
autoComplete?: HTMLInputAutoCompleteAttribute;
|
|
40
41
|
};
|
|
41
42
|
/**
|
|
42
|
-
* A text input that allows users to enter text, numbers or symbols in a
|
|
43
|
-
* not intended to be used
|
|
43
|
+
* A text input that allows users to enter text, numbers or symbols in a
|
|
44
|
+
* singular line. This is the base element and is not intended to be used
|
|
45
|
+
* directly. Use the TextField component.
|
|
46
|
+
*
|
|
47
|
+
* @example
|
|
48
|
+
* import { useState } from 'react';
|
|
49
|
+
* import { TextInput } from '@bspk/ui/TextInput';
|
|
50
|
+
*
|
|
51
|
+
* export function Example() {
|
|
52
|
+
* const [value, setValue] = useState<string>('');
|
|
53
|
+
*
|
|
54
|
+
* return (
|
|
55
|
+
* <TextInput
|
|
56
|
+
* aria-label="Example aria-label"
|
|
57
|
+
* name="Example name"
|
|
58
|
+
* onChange={setValue}
|
|
59
|
+
* value={value}
|
|
60
|
+
* />
|
|
61
|
+
* );
|
|
62
|
+
* }
|
|
44
63
|
*
|
|
45
64
|
* @element
|
|
46
65
|
*
|
package/dist/TextInput.js
CHANGED
|
@@ -10,8 +10,26 @@ export const DEFAULT = {
|
|
|
10
10
|
autoComplete: 'off',
|
|
11
11
|
};
|
|
12
12
|
/**
|
|
13
|
-
* A text input that allows users to enter text, numbers or symbols in a
|
|
14
|
-
* not intended to be used
|
|
13
|
+
* A text input that allows users to enter text, numbers or symbols in a
|
|
14
|
+
* singular line. This is the base element and is not intended to be used
|
|
15
|
+
* directly. Use the TextField component.
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* import { useState } from 'react';
|
|
19
|
+
* import { TextInput } from '@bspk/ui/TextInput';
|
|
20
|
+
*
|
|
21
|
+
* export function Example() {
|
|
22
|
+
* const [value, setValue] = useState<string>('');
|
|
23
|
+
*
|
|
24
|
+
* return (
|
|
25
|
+
* <TextInput
|
|
26
|
+
* aria-label="Example aria-label"
|
|
27
|
+
* name="Example name"
|
|
28
|
+
* onChange={setValue}
|
|
29
|
+
* value={value}
|
|
30
|
+
* />
|
|
31
|
+
* );
|
|
32
|
+
* }
|
|
15
33
|
*
|
|
16
34
|
* @element
|
|
17
35
|
*
|
package/dist/TextInput.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextInput.js","sourceRoot":"","sources":["../src/TextInput.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"TextInput.js","sourceRoot":"","sources":["../src/TextInput.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAQ/C,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAItC,OAAO,mBAAmB,CAAC;AAE3B,MAAM,CAAC,MAAM,OAAO,GAAG;IACnB,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,EAAE;IACT,IAAI,EAAE,MAA4D;IAClE,YAAY,EAAE,KAAK;CACb,CAAC;AA6CX;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,SAAS,SAAS,CAAC,EACf,OAAO,EAAE,WAAW,EACpB,QAAQ,EACR,IAAI,GAAG,OAAO,CAAC,IAAI,EACnB,KAAK,GAAG,OAAO,CAAC,KAAK,EACrB,IAAI,EACJ,YAAY,EAAE,SAAS,EACvB,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,EAAE,EAAE,MAAM,EACV,OAAO,EACP,QAAQ,EACR,IAAI,GAAG,OAAO,CAAC,IAAI,EACnB,QAAQ,EACR,QAAQ,EACR,YAAY,GAAG,OAAO,CAAC,YAAY,EACnC,YAAY,EACZ,YAAY,EACZ,GAAG,UAAU,EACqB;IAClC,MAAM,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;IAEzB,MAAM,OAAO,GAAG,CAAC,QAAQ,IAAI,CAAC,QAAQ,IAAI,WAAW,CAAC;IAEtD,OAAO,CACH,4BACc,YAAY,mBACP,QAAQ,IAAI,SAAS,gBACxB,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,MAAM,IAAI,SAAS,kBACnC,OAAO,IAAI,SAAS,mBACnB,QAAQ,IAAI,SAAS,mBACrB,QAAQ,IAAI,SAAS,eACzB,IAAI,EACf,GAAG,EAAE,YAAY,KACb,UAAU,aAEb,OAAO,IAAI,+CAAoB,OAAO,GAAQ,EAC/C,qCACuB,YAAY,IAAI,SAAS,kBAC9B,OAAO,IAAI,SAAS,gBACtB,SAAS,EACrB,YAAY,EAAE,YAAY,EAC1B,QAAQ,EAAE,QAAQ,IAAI,SAAS,EAC/B,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;oBAChB,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;gBACxC,CAAC,EACD,WAAW,EAAE,WAAW,IAAI,GAAG,EAC/B,QAAQ,EAAE,QAAQ,IAAI,SAAS,EAC/B,GAAG,EAAE,QAAQ,EACb,QAAQ,EAAE,QAAQ,IAAI,SAAS,EAC/B,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,GACd,EACD,QAAQ,IAAI,gDAAqB,QAAQ,GAAQ,EAClD,+BAAmB,OAAO,sBAAY,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,YAC7D,KAAC,SAAS,KAAG,GACR,IACP,CACT,CAAC;AACN,CAAC;AAED,SAAS,CAAC,QAAQ,GAAG,WAAW,CAAC;AAEjC,OAAO,EAAE,SAAS,EAAE,CAAC"}
|
package/dist/Textarea.d.ts
CHANGED
|
@@ -55,11 +55,30 @@ export type TextareaProps = CommonProps<'aria-label' | 'disabled' | 'id' | 'read
|
|
|
55
55
|
maxRows?: number;
|
|
56
56
|
};
|
|
57
57
|
/**
|
|
58
|
-
* A component that allows users to input large amounts of text that could span
|
|
58
|
+
* A component that allows users to input large amounts of text that could span
|
|
59
|
+
* multiple lines.
|
|
59
60
|
*
|
|
60
|
-
* This component gives you a textarea HTML element that automatically adjusts
|
|
61
|
-
*
|
|
62
|
-
*
|
|
61
|
+
* This component gives you a textarea HTML element that automatically adjusts
|
|
62
|
+
* its height to match the length of the content within maximum and minimum
|
|
63
|
+
* rows. A character counter when a maxLength is set to show the number of
|
|
64
|
+
* characters remaining below the limit.
|
|
65
|
+
*
|
|
66
|
+
* @example
|
|
67
|
+
* import { useState } from 'react';
|
|
68
|
+
* import { Textarea } from '@bspk/ui/Textarea';
|
|
69
|
+
*
|
|
70
|
+
* export function Example() {
|
|
71
|
+
* const [value, setValue] = useState<string>('');
|
|
72
|
+
*
|
|
73
|
+
* return (
|
|
74
|
+
* <Textarea
|
|
75
|
+
* aria-label="Example aria-label"
|
|
76
|
+
* name="Example name"
|
|
77
|
+
* onChange={setValue}
|
|
78
|
+
* value={value}
|
|
79
|
+
* />
|
|
80
|
+
* );
|
|
81
|
+
* }
|
|
63
82
|
*
|
|
64
83
|
* @element
|
|
65
84
|
*
|
package/dist/Textarea.js
CHANGED
|
@@ -3,7 +3,7 @@ import { styleAdd } from './utils/styleAdd';
|
|
|
3
3
|
styleAdd(`[data-bspk=textarea]{/*!
|
|
4
4
|
--min-rows: is set via inline style
|
|
5
5
|
--max-rows: is set via inline style
|
|
6
|
-
*/display:grid;width:100%;--font: var(--body-base);--line-height: 20px;--padding: var(--spacing-sizing-03)}[data-bspk=textarea][data-size=small]{--font: var(--body-small);--line-height: 20px;--padding: var(--spacing-sizing-02)}[data-bspk=textarea][data-size=large]{--font: var(--body-large);--line-height: 24px;--padding: var(--spacing-sizing-03)}[data-bspk=textarea] [data-replicated-value]{white-space:pre-wrap;visibility:hidden}[data-bspk=textarea] textarea,[data-bspk=textarea] [data-replicated-value]{width:100%;font:var(--font);border:1px solid var(--border-color);padding:var(--padding);grid-area:1/1/2/2;min-height:calc(var(--line-height)*var(--min-rows) + var(--padding)*2);max-height:calc(var(--line-height)*var(--max-rows) + var(--padding)*2)}[data-bspk=textarea] textarea{--border-color: var(--stroke-neutral-base);resize:none;color:var(--foreground-neutral-on-surface);background-color:var(--surface-neutral-t1-base);border-radius:var(--radius-small)}[data-bspk=textarea] textarea::placeholder{color:var(--foreground-neutral-on-surface-variant-03)}[data-bspk=textarea] textarea:focus-within{--border-color: var(--stroke-neutral-focus);outline:none;color:var(--foreground-neutral-on-surface)}[data-bspk=textarea] textarea:disabled{pointer-events:none;background:linear-gradient(var(--interactions-disabled-opacity), var(--interactions-disabled-opacity)),linear-gradient(var(--surface-neutral-t1-base), var(--surface-neutral-t1-base));color:var(--foreground-neutral-disabled-on-surface)}[data-bspk=textarea] textarea:read-only{background:linear-gradient(var(--interactions-disabled-opacity), var(--interactions-disabled-opacity)),linear-gradient(var(--surface-neutral-t1-base), var(--surface-neutral-t1-base));cursor:not-allowed}[data-bspk=textarea] textarea[aria-invalid]{--border-color: var(--status-error)}`);;
|
|
6
|
+
*/display:grid;width:100%;--font: var(--body-base);--line-height: 20px;--padding: var(--spacing-sizing-03)}[data-bspk=textarea][data-size=small]{--font: var(--body-small);--line-height: 20px;--padding: var(--spacing-sizing-02)}[data-bspk=textarea][data-size=large]{--font: var(--body-large);--line-height: 24px;--padding: var(--spacing-sizing-03)}[data-bspk=textarea] [data-replicated-value]{white-space:pre-wrap;visibility:hidden;overflow-y:hidden}[data-bspk=textarea] textarea,[data-bspk=textarea] [data-replicated-value]{width:100%;font:var(--font);border:1px solid var(--border-color);padding:var(--padding);grid-area:1/1/2/2;min-height:calc(var(--line-height)*var(--min-rows) + var(--padding)*2);max-height:calc(var(--line-height)*var(--max-rows) + var(--padding)*2);max-width:100%}[data-bspk=textarea] textarea{--border-color: var(--stroke-neutral-base);text-wrap:break-word;resize:none;color:var(--foreground-neutral-on-surface);background-color:var(--surface-neutral-t1-base);border-radius:var(--radius-small)}[data-bspk=textarea] textarea::placeholder{color:var(--foreground-neutral-on-surface-variant-03)}[data-bspk=textarea] textarea:focus-within{--border-color: var(--stroke-neutral-focus);outline:none;color:var(--foreground-neutral-on-surface)}[data-bspk=textarea] textarea:disabled{pointer-events:none;background:linear-gradient(var(--interactions-disabled-opacity), var(--interactions-disabled-opacity)),linear-gradient(var(--surface-neutral-t1-base), var(--surface-neutral-t1-base));color:var(--foreground-neutral-disabled-on-surface)}[data-bspk=textarea] textarea:read-only{background:linear-gradient(var(--interactions-disabled-opacity), var(--interactions-disabled-opacity)),linear-gradient(var(--surface-neutral-t1-base), var(--surface-neutral-t1-base));cursor:not-allowed}[data-bspk=textarea] textarea[aria-invalid]{--border-color: var(--status-error)}`);;
|
|
7
7
|
import { useId } from './hooks/useId';
|
|
8
8
|
const DEFAULT = {
|
|
9
9
|
minRows: 3,
|
|
@@ -11,11 +11,30 @@ const DEFAULT = {
|
|
|
11
11
|
textSize: 'medium',
|
|
12
12
|
};
|
|
13
13
|
/**
|
|
14
|
-
* A component that allows users to input large amounts of text that could span
|
|
14
|
+
* A component that allows users to input large amounts of text that could span
|
|
15
|
+
* multiple lines.
|
|
15
16
|
*
|
|
16
|
-
* This component gives you a textarea HTML element that automatically adjusts
|
|
17
|
-
*
|
|
18
|
-
*
|
|
17
|
+
* This component gives you a textarea HTML element that automatically adjusts
|
|
18
|
+
* its height to match the length of the content within maximum and minimum
|
|
19
|
+
* rows. A character counter when a maxLength is set to show the number of
|
|
20
|
+
* characters remaining below the limit.
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* import { useState } from 'react';
|
|
24
|
+
* import { Textarea } from '@bspk/ui/Textarea';
|
|
25
|
+
*
|
|
26
|
+
* export function Example() {
|
|
27
|
+
* const [value, setValue] = useState<string>('');
|
|
28
|
+
*
|
|
29
|
+
* return (
|
|
30
|
+
* <Textarea
|
|
31
|
+
* aria-label="Example aria-label"
|
|
32
|
+
* name="Example name"
|
|
33
|
+
* onChange={setValue}
|
|
34
|
+
* value={value}
|
|
35
|
+
* />
|
|
36
|
+
* );
|
|
37
|
+
* }
|
|
19
38
|
*
|
|
20
39
|
* @element
|
|
21
40
|
*
|
|
@@ -38,8 +57,9 @@ function Textarea({ invalid: invalidProp, onChange, textSize = DEFAULT.textSize,
|
|
|
38
57
|
// we know the textarea was resized, so we don't want to auto-size it
|
|
39
58
|
if (target.style.height)
|
|
40
59
|
return;
|
|
41
|
-
target.nextSibling.innerText =
|
|
42
|
-
|
|
60
|
+
target.nextSibling.innerText =
|
|
61
|
+
`${target.value}\n`;
|
|
62
|
+
}, placeholder: placeholder, ref: innerRef, value: value, wrap: "hard" }), _jsx("div", { "aria-hidden": true, "data-replicated-value": true })] }));
|
|
43
63
|
}
|
|
44
64
|
Textarea.bspkName = 'Textarea';
|
|
45
65
|
export { Textarea };
|
package/dist/Textarea.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Textarea.js","sourceRoot":"","sources":["../src/Textarea.tsx"],"names":[],"mappings":";AAAA,OAAO,iBAAiB,CAAC;AAGzB,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAItC,MAAM,OAAO,GAAG;IACZ,OAAO,EAAE,CAAC;IACV,OAAO,EAAE,EAAE;IACX,QAAQ,EAAE,QAAQ;CACZ,CAAC;
|
|
1
|
+
{"version":3,"file":"Textarea.js","sourceRoot":"","sources":["../src/Textarea.tsx"],"names":[],"mappings":";AAAA,OAAO,iBAAiB,CAAC;AAGzB,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAItC,MAAM,OAAO,GAAG;IACZ,OAAO,EAAE,CAAC;IACV,OAAO,EAAE,EAAE;IACX,QAAQ,EAAE,QAAQ;CACZ,CAAC;AA8DX;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,SAAS,QAAQ,CAAC,EACd,OAAO,EAAE,WAAW,EACpB,QAAQ,EACR,QAAQ,GAAG,OAAO,CAAC,QAAQ,EAC3B,KAAK,GAAG,EAAE,EACV,IAAI,EACJ,YAAY,EAAE,SAAS,EACvB,QAAQ,EACR,WAAW,EACX,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,EACtC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,EACtC,YAAY,EACZ,GAAG,UAAU,EACD;IACZ,MAAM,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;IACzB,MAAM,OAAO,GAAG,CAAC,UAAU,CAAC,QAAQ,IAAI,CAAC,UAAU,CAAC,QAAQ,IAAI,WAAW,CAAC;IAC5E,+CAA+C;IAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CACpB,OAAO,CAAC,OAAO,EACf,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,CACzC,CAAC;IACF,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CACpB,OAAO,CAAC,OAAO,EACf,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,CACzC,CAAC;IAEF,OAAO,CACH,4BACc,UAAU,eACT,QAAQ,EACnB,KAAK,EACD;YACI,YAAY,EAAE,OAAO;YACrB,YAAY,EAAE,OAAO;SACP,aAGtB,sBACQ,UAAU,uBACK,YAAY,IAAI,SAAS,kBAC9B,OAAO,IAAI,SAAS,gBACtB,SAAS,EACrB,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;oBACd,MAAM,MAAM,GAAG,KAAK,CAAC,MAA6B,CAAC;oBACnD,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC;gBACzB,CAAC,EACD,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EACxD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;oBACf,MAAM,MAAM,GAAG,KAAK,CAAC,MAA6B,CAAC;oBACnD,qEAAqE;oBACrE,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM;wBAAE,OAAO;oBAC/B,MAAM,CAAC,WAA2B,CAAC,SAAS;wBACzC,GAAG,MAAM,CAAC,KAAK,IAAI,CAAC;gBAC5B,CAAC,EACD,WAAW,EAAE,WAAW,EACxB,GAAG,EAAE,QAAQ,EACb,KAAK,EAAE,KAAK,EACZ,IAAI,EAAC,MAAM,GACb,EACF,mEAAyC,IACvC,CACT,CAAC;AACN,CAAC;AAED,QAAQ,CAAC,QAAQ,GAAG,UAAU,CAAC;AAE/B,OAAO,EAAE,QAAQ,EAAE,CAAC"}
|
package/dist/TextareaField.d.ts
CHANGED
|
@@ -2,10 +2,30 @@ import { FormFieldProps } from './FormField';
|
|
|
2
2
|
import { TextareaProps } from './Textarea';
|
|
3
3
|
export type TextareaFieldProps = Pick<FormFieldProps, 'controlId' | 'errorMessage' | 'helperText' | 'label'> & TextareaProps;
|
|
4
4
|
/**
|
|
5
|
-
* A component that allows users to input large amounts of text that could span
|
|
5
|
+
* A component that allows users to input large amounts of text that could span
|
|
6
|
+
* multiple lines.
|
|
6
7
|
*
|
|
7
8
|
* This component takes properties from the FormField and Textarea components.
|
|
8
9
|
*
|
|
10
|
+
* @example
|
|
11
|
+
* import { useState } from 'react';
|
|
12
|
+
* import { TextareaField } from '@bspk/ui/TextareaField';
|
|
13
|
+
*
|
|
14
|
+
* export function Example() {
|
|
15
|
+
* const [value, setValue] = useState<string>();
|
|
16
|
+
*
|
|
17
|
+
* return (
|
|
18
|
+
* <TextareaField
|
|
19
|
+
* aria-label="Example aria-label"
|
|
20
|
+
* controlId="Example controlId"
|
|
21
|
+
* label="Example label"
|
|
22
|
+
* name="Example name"
|
|
23
|
+
* onChange={setValue}
|
|
24
|
+
* value={value}
|
|
25
|
+
* />
|
|
26
|
+
* );
|
|
27
|
+
* }
|
|
28
|
+
*
|
|
9
29
|
* @name TextareaField
|
|
10
30
|
*/
|
|
11
31
|
declare function TextareaField({ label, errorMessage: errorMessageProp, helperText, controlId: id, onChange, maxLength: maxLengthProp, invalid, readOnly, disabled, required, ...textareaProps }: TextareaFieldProps): import("react/jsx-runtime").JSX.Element | null;
|
package/dist/TextareaField.js
CHANGED
|
@@ -4,10 +4,30 @@ import { Textarea } from './Textarea';
|
|
|
4
4
|
import { Txt } from './Txt';
|
|
5
5
|
import { tryIntParse } from './utils/tryIntPsrse';
|
|
6
6
|
/**
|
|
7
|
-
* A component that allows users to input large amounts of text that could span
|
|
7
|
+
* A component that allows users to input large amounts of text that could span
|
|
8
|
+
* multiple lines.
|
|
8
9
|
*
|
|
9
10
|
* This component takes properties from the FormField and Textarea components.
|
|
10
11
|
*
|
|
12
|
+
* @example
|
|
13
|
+
* import { useState } from 'react';
|
|
14
|
+
* import { TextareaField } from '@bspk/ui/TextareaField';
|
|
15
|
+
*
|
|
16
|
+
* export function Example() {
|
|
17
|
+
* const [value, setValue] = useState<string>();
|
|
18
|
+
*
|
|
19
|
+
* return (
|
|
20
|
+
* <TextareaField
|
|
21
|
+
* aria-label="Example aria-label"
|
|
22
|
+
* controlId="Example controlId"
|
|
23
|
+
* label="Example label"
|
|
24
|
+
* name="Example name"
|
|
25
|
+
* onChange={setValue}
|
|
26
|
+
* value={value}
|
|
27
|
+
* />
|
|
28
|
+
* );
|
|
29
|
+
* }
|
|
30
|
+
*
|
|
11
31
|
* @name TextareaField
|
|
12
32
|
*/
|
|
13
33
|
function TextareaField({ label, errorMessage: errorMessageProp, helperText, controlId: id, onChange, maxLength: maxLengthProp, invalid, readOnly, disabled, required, ...textareaProps }) {
|
|
@@ -15,7 +35,9 @@ function TextareaField({ label, errorMessage: errorMessageProp, helperText, cont
|
|
|
15
35
|
const errorMessage = (!readOnly && !disabled && errorMessageProp) || undefined;
|
|
16
36
|
if (typeof onChange !== 'function')
|
|
17
37
|
return null;
|
|
18
|
-
return (_jsx(FormField, { controlId: id, "data-bspk": "textarea-field", errorMessage: errorMessage, helperText: helperText, label: label, labelTrailing: _jsx(Txt, { style: {
|
|
38
|
+
return (_jsx(FormField, { controlId: id, "data-bspk": "textarea-field", errorMessage: errorMessage, helperText: helperText, label: label, labelTrailing: _jsx(Txt, { style: {
|
|
39
|
+
color: 'var(--foreground-neutral-on-surface-variant-02)',
|
|
40
|
+
}, variant: "body-small", children: `${textareaProps?.value?.length || 0}${maxLength > 0 ? `/${maxLength}` : ''}` }), required: required, children: (fieldProps) => (_jsx(Textarea, { ...textareaProps, ...fieldProps, "aria-label": textareaProps['aria-label'] || label, id: id, invalid: invalid, onChange: (next, event) => {
|
|
19
41
|
onChange(next, event);
|
|
20
42
|
}, required: required })) }));
|
|
21
43
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextareaField.js","sourceRoot":"","sources":["../src/TextareaField.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAkB,SAAS,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAiB,QAAQ,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"TextareaField.js","sourceRoot":"","sources":["../src/TextareaField.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAkB,SAAS,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAiB,QAAQ,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAOlD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,SAAS,aAAa,CAAC,EACnB,KAAK,EACL,YAAY,EAAE,gBAAgB,EAC9B,UAAU,EACV,SAAS,EAAE,EAAE,EACb,QAAQ,EACR,SAAS,EAAE,aAAa,EACxB,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,GAAG,aAAa,EACC;IACjB,MAAM,SAAS,GAAG,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;IACnD,MAAM,YAAY,GACd,CAAC,CAAC,QAAQ,IAAI,CAAC,QAAQ,IAAI,gBAAgB,CAAC,IAAI,SAAS,CAAC;IAE9D,IAAI,OAAO,QAAQ,KAAK,UAAU;QAAE,OAAO,IAAI,CAAC;IAEhD,OAAO,CACH,KAAC,SAAS,IACN,SAAS,EAAE,EAAE,eACH,gBAAgB,EAC1B,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,UAAU,EACtB,KAAK,EAAE,KAAK,EACZ,aAAa,EACT,KAAC,GAAG,IACA,KAAK,EAAE;gBACH,KAAK,EAAE,iDAAiD;aAC3D,EACD,OAAO,EAAC,YAAY,YAEnB,GAAG,aAAa,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,GAC5E,EAEV,QAAQ,EAAE,QAAQ,YAEjB,CAAC,UAAU,EAAE,EAAE,CAAC,CACb,KAAC,QAAQ,OACD,aAAa,KACb,UAAU,gBACF,aAAa,CAAC,YAAY,CAAC,IAAI,KAAK,EAChD,EAAE,EAAE,EAAE,EACN,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;gBACtB,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC1B,CAAC,EACD,QAAQ,EAAE,QAAQ,GACpB,CACL,GACO,CACf,CAAC;AACN,CAAC;AAED,aAAa,CAAC,QAAQ,GAAG,eAAe,CAAC;AAEzC,OAAO,EAAE,aAAa,EAAE,CAAC"}
|
package/dist/ToggleOption.d.ts
CHANGED
|
@@ -2,24 +2,27 @@ import './toggle-option.scss';
|
|
|
2
2
|
import { ReactElement } from 'react';
|
|
3
3
|
export type ToggleOptionProps = {
|
|
4
4
|
/**
|
|
5
|
-
* The label of the
|
|
5
|
+
* The label of the option. Also used as the aria-label of the checkbox.
|
|
6
6
|
*
|
|
7
7
|
* @required
|
|
8
8
|
*/
|
|
9
9
|
label: string;
|
|
10
|
-
/**
|
|
10
|
+
/**
|
|
11
|
+
* The description of the option.
|
|
12
|
+
*
|
|
13
|
+
* @type multiline
|
|
14
|
+
* @type multiline
|
|
15
|
+
*/
|
|
11
16
|
description?: string;
|
|
12
17
|
/** The control element to use. */
|
|
13
18
|
children?: ReactElement;
|
|
14
|
-
/** The size of the control option label. */
|
|
15
|
-
size?: 'base' | 'large' | 'small';
|
|
16
19
|
};
|
|
17
20
|
/**
|
|
18
21
|
* A utility component that wraps a checkbox, radio, and switch.
|
|
19
22
|
*
|
|
20
23
|
* @name ToggleOption
|
|
21
24
|
*/
|
|
22
|
-
declare function ToggleOption({ label, description, children
|
|
25
|
+
declare function ToggleOption({ label, description, children }: ToggleOptionProps): import("react/jsx-runtime").JSX.Element;
|
|
23
26
|
declare namespace ToggleOption {
|
|
24
27
|
var bspkName: string;
|
|
25
28
|
}
|
package/dist/ToggleOption.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { styleAdd } from './utils/styleAdd';
|
|
3
|
-
styleAdd(`[data-bspk=toggle-option]{display:flex;width:100%;box-sizing:border-box;flex-direction:row;padding:0 var(--spacing-sizing-01) 0 0;gap:var(--spacing-sizing-02);user-select:none;background:unset;border:unset;cursor:pointer;min-height:var(--spacing-sizing-08);align-items:center}[data-bspk=toggle-option]:has([data-description]){align-items:unset}@media(any-pointer: coarse){[data-bspk=toggle-option]{min-height:var(--spacing-sizing-12)}}[data-bspk=toggle-option] [data-content]{display:flex;flex-direction:column;padding:2px 0}[data-bspk=toggle-option] [data-label]{color:var(--foreground-neutral-on-surface);font:var(--labels-base)}[data-bspk=toggle-option] [data-description]{font:var(--body-small);color:var(--foreground-neutral-on-surface-variant-01)}[data-
|
|
3
|
+
styleAdd(`[data-bspk=toggle-option]{display:flex;width:100%;box-sizing:border-box;flex-direction:row;padding:0 var(--spacing-sizing-01) 0 0;gap:var(--spacing-sizing-02);user-select:none;background:unset;border:unset;cursor:pointer;min-height:var(--spacing-sizing-08);align-items:center}[data-bspk=toggle-option]:has([data-description]){align-items:unset}@media(any-pointer: coarse){[data-bspk=toggle-option]{min-height:var(--spacing-sizing-12)}}[data-bspk=toggle-option] [data-content]{display:flex;flex-direction:column;padding:2px 0}[data-bspk=toggle-option] [data-label]{color:var(--foreground-neutral-on-surface);font:var(--labels-base)}[data-bspk=toggle-option] [data-description]{font:var(--body-small);color:var(--foreground-neutral-on-surface-variant-01)}[data-pseudo=focus] [data-bspk=toggle-option]:not(:has(:disabled)),[data-bspk=toggle-option]:not(:has(:disabled)):focus-visible,[data-bspk=toggle-option]:not(:has(:disabled)):has(*:focus-visible){outline:var(--stroke-neutral-focus) 2px solid}[data-bspk=toggle-option]:has(:disabled) [data-label]{color:var(--foreground-neutral-disabled-on-surface)}[data-bspk=toggle-option]:has(:disabled) [data-description]{color:var(--foreground-neutral-disabled-on-surface)}`);;
|
|
4
4
|
/**
|
|
5
5
|
* A utility component that wraps a checkbox, radio, and switch.
|
|
6
6
|
*
|
|
7
7
|
* @name ToggleOption
|
|
8
8
|
*/
|
|
9
|
-
function ToggleOption({ label, description, children
|
|
10
|
-
return (_jsxs("label", { "data-bspk": "toggle-option",
|
|
9
|
+
function ToggleOption({ label, description, children }) {
|
|
10
|
+
return (_jsxs("label", { "data-bspk": "toggle-option", children: [_jsx("span", { "data-control": true, children: children }), _jsxs("span", { "data-content": true, children: [_jsx("span", { "data-label": true, children: label }), description && _jsx("span", { "data-description": true, children: description })] })] }));
|
|
11
11
|
}
|
|
12
12
|
ToggleOption.bspkName = 'ToggleOption';
|
|
13
13
|
export { ToggleOption };
|
package/dist/ToggleOption.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToggleOption.js","sourceRoot":"","sources":["../src/ToggleOption.tsx"],"names":[],"mappings":";AAAA,OAAO,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"ToggleOption.js","sourceRoot":"","sources":["../src/ToggleOption.tsx"],"names":[],"mappings":";AAAA,OAAO,sBAAsB,CAAC;AAqB9B;;;;GAIG;AACH,SAAS,YAAY,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAqB;IACrE,OAAO,CACH,8BAAiB,eAAe,aAC5B,+CAAoB,QAAQ,GAAQ,EACpC,iDACI,6CAAkB,KAAK,GAAQ,EAC9B,WAAW,IAAI,mDAAwB,WAAW,GAAQ,IACxD,IACH,CACX,CAAC;AACN,CAAC;AAED,YAAY,CAAC,QAAQ,GAAG,cAAc,CAAC;AAEvC,OAAO,EAAE,YAAY,EAAE,CAAC"}
|
package/dist/Tooltip.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ export type TooltipProps = {
|
|
|
7
7
|
*
|
|
8
8
|
* @default top
|
|
9
9
|
*/
|
|
10
|
-
placement?: Placement
|
|
10
|
+
placement?: Extract<Placement, 'bottom' | 'left' | 'right' | 'top'>;
|
|
11
11
|
/** The tooltip content. */
|
|
12
12
|
label: string;
|
|
13
13
|
/**
|
|
@@ -24,14 +24,26 @@ export type TooltipProps = {
|
|
|
24
24
|
*
|
|
25
25
|
* @default true
|
|
26
26
|
*/
|
|
27
|
-
|
|
27
|
+
showTail?: boolean;
|
|
28
28
|
};
|
|
29
29
|
/**
|
|
30
30
|
* Brief message that provide additional guidance and helps users perform an action if needed.
|
|
31
31
|
*
|
|
32
|
+
* @example
|
|
33
|
+
* import { Tooltip } from '@bspk/ui/Tooltip';
|
|
34
|
+
* import { Button } from '@bspk/ui/Button';
|
|
35
|
+
*
|
|
36
|
+
* export function Example() {
|
|
37
|
+
* return (
|
|
38
|
+
* <Tooltip label="I explain what this button does" placement="top">
|
|
39
|
+
* <Button>Click me</Button>
|
|
40
|
+
* </Tooltip>
|
|
41
|
+
* );
|
|
42
|
+
* }
|
|
43
|
+
*
|
|
32
44
|
* @name Tooltip
|
|
33
45
|
*/
|
|
34
|
-
declare function Tooltip({ placement, label, children, disabled,
|
|
46
|
+
declare function Tooltip({ placement, label, children, disabled, showTail, }: TooltipProps): import("react/jsx-runtime").JSX.Element;
|
|
35
47
|
declare namespace Tooltip {
|
|
36
48
|
var bspkName: string;
|
|
37
49
|
}
|
package/dist/Tooltip.js
CHANGED
|
@@ -4,12 +4,29 @@ styleAdd(`[data-bspk=tooltip]{position:fixed;pointer-events:none;z-index:var(--z
|
|
|
4
4
|
import { cloneElement, useId, useMemo, useRef, useState } from 'react';
|
|
5
5
|
import { Portal } from './Portal';
|
|
6
6
|
import { useFloating } from './hooks/useFloating';
|
|
7
|
+
const DEFAULT = {
|
|
8
|
+
placement: 'top',
|
|
9
|
+
showTail: true,
|
|
10
|
+
disabled: false,
|
|
11
|
+
};
|
|
7
12
|
/**
|
|
8
13
|
* Brief message that provide additional guidance and helps users perform an action if needed.
|
|
9
14
|
*
|
|
15
|
+
* @example
|
|
16
|
+
* import { Tooltip } from '@bspk/ui/Tooltip';
|
|
17
|
+
* import { Button } from '@bspk/ui/Button';
|
|
18
|
+
*
|
|
19
|
+
* export function Example() {
|
|
20
|
+
* return (
|
|
21
|
+
* <Tooltip label="I explain what this button does" placement="top">
|
|
22
|
+
* <Button>Click me</Button>
|
|
23
|
+
* </Tooltip>
|
|
24
|
+
* );
|
|
25
|
+
* }
|
|
26
|
+
*
|
|
10
27
|
* @name Tooltip
|
|
11
28
|
*/
|
|
12
|
-
function Tooltip({ placement =
|
|
29
|
+
function Tooltip({ placement = DEFAULT.placement, label, children, disabled = DEFAULT.disabled, showTail = DEFAULT.showTail, }) {
|
|
13
30
|
const id = useId();
|
|
14
31
|
const [show, setShow] = useState(false);
|
|
15
32
|
const child = useMemo(() => !disabled &&
|
|
@@ -23,14 +40,14 @@ function Tooltip({ placement = 'top', label, children, disabled = false, tail =
|
|
|
23
40
|
const { floatingStyles, middlewareData, elements } = useFloating({
|
|
24
41
|
placement: placement,
|
|
25
42
|
strategy: 'fixed',
|
|
26
|
-
offsetOptions:
|
|
43
|
+
offsetOptions: 4,
|
|
27
44
|
arrowRef,
|
|
28
45
|
hide: !show,
|
|
29
46
|
});
|
|
30
47
|
return disabled ? (children) : (_jsxs(_Fragment, { children: [child, label && (_jsx(Portal, { children: _jsxs("div", { "data-bspk": "tooltip", "data-placement": middlewareData?.offset?.placement, id: id, ref: (node) => {
|
|
31
48
|
elements.setFloating(node);
|
|
32
49
|
elements.setTrigger(document.querySelector(`[aria-describedby="${id}"]`));
|
|
33
|
-
}, role: "tooltip", style: floatingStyles, children: [_jsx("span", { "data-text": true, children: label }),
|
|
50
|
+
}, role: "tooltip", style: floatingStyles, children: [_jsx("span", { "data-text": true, children: label }), showTail !== false && (_jsx("span", { "aria-hidden": true, "data-arrow": true, ref: (node) => {
|
|
34
51
|
arrowRef.current = node;
|
|
35
52
|
}, style: {
|
|
36
53
|
left: `${middlewareData?.arrow?.x}px`,
|
package/dist/Tooltip.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tooltip.js","sourceRoot":"","sources":["../src/Tooltip.tsx"],"names":[],"mappings":";AAAA,OAAO,gBAAgB,CAAC;AACxB,OAAO,EAAgB,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAErF,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAa,WAAW,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"Tooltip.js","sourceRoot":"","sources":["../src/Tooltip.tsx"],"names":[],"mappings":";AAAA,OAAO,gBAAgB,CAAC;AACxB,OAAO,EAAgB,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAErF,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAa,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAE7D,MAAM,OAAO,GAAG;IACZ,SAAS,EAAE,KAAK;IAChB,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,KAAK;CACT,CAAC;AA4BX;;;;;;;;;;;;;;;;GAgBG;AACH,SAAS,OAAO,CAAC,EACb,SAAS,GAAG,OAAO,CAAC,SAAS,EAC7B,KAAK,EACL,QAAQ,EACR,QAAQ,GAAG,OAAO,CAAC,QAAQ,EAC3B,QAAQ,GAAG,OAAO,CAAC,QAAQ,GAChB;IACX,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;IACnB,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAExC,MAAM,KAAK,GAAG,OAAO,CACjB,GAAG,EAAE,CACD,CAAC,QAAQ;QACT,QAAQ;QACR,YAAY,CAAC,QAAQ,EAAE;YACnB,WAAW,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;YAChC,YAAY,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;YAClC,kBAAkB,EAAE,EAAE;SACzB,CAAC,EACN,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,CAC3B,CAAC;IAEF,MAAM,QAAQ,GAAG,MAAM,CAAqB,IAAI,CAAC,CAAC;IAElD,MAAM,EAAE,cAAc,EAAE,cAAc,EAAE,QAAQ,EAAE,GAAG,WAAW,CAAC;QAC7D,SAAS,EAAE,SAAS;QACpB,QAAQ,EAAE,OAAO;QACjB,aAAa,EAAE,CAAC;QAChB,QAAQ;QACR,IAAI,EAAE,CAAC,IAAI;KACd,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC,CAAC,CAAC,CACd,QAAQ,CACX,CAAC,CAAC,CAAC,CACA,8BACK,KAAK,EACL,KAAK,IAAI,CACN,KAAC,MAAM,cACH,4BACc,SAAS,oBACH,cAAc,EAAE,MAAM,EAAE,SAAS,EACjD,EAAE,EAAE,EAAE,EACN,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE;wBACV,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;wBAC3B,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAc,sBAAsB,EAAE,IAAI,CAAC,CAAC,CAAC;oBAC3F,CAAC,EACD,IAAI,EAAC,SAAS,EACd,KAAK,EAAE,cAAc,aAErB,4CAAiB,KAAK,GAAQ,EAC7B,QAAQ,KAAK,KAAK,IAAI,CACnB,wDAGI,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE;gCACV,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;4BAC5B,CAAC,EACD,KAAK,EAAE;gCACH,IAAI,EAAE,GAAG,cAAc,EAAE,KAAK,EAAE,CAAC,IAAI;gCACrC,GAAG,EAAE,GAAG,cAAc,EAAE,KAAK,EAAE,CAAC,IAAI;6BACvC,GACH,CACL,IACC,GACD,CACZ,IACF,CACN,CAAC;AACN,CAAC;AAED,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;AAE7B,OAAO,EAAE,OAAO,EAAE,CAAC"}
|
package/dist/Txt.d.ts
CHANGED
|
@@ -26,7 +26,15 @@ export type TxtProps<As extends ElementType = 'span'> = {
|
|
|
26
26
|
id?: string;
|
|
27
27
|
};
|
|
28
28
|
/**
|
|
29
|
-
* A text component that applies the correct font styles based on the variant
|
|
29
|
+
* A text component that applies the correct font styles based on the variant
|
|
30
|
+
* and size. variant
|
|
31
|
+
*
|
|
32
|
+
* @example
|
|
33
|
+
* import { Txt } from '@bspk/ui/Txt';
|
|
34
|
+
*
|
|
35
|
+
* export function Example() {
|
|
36
|
+
* return <Txt>Example Txt</Txt>;
|
|
37
|
+
* }
|
|
30
38
|
*
|
|
31
39
|
* @name Txt
|
|
32
40
|
*/
|