@newtonschool/grauity 2.0.3 → 2.1.0-beta.2
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/css/grauity-icons.scss +422 -438
- package/dist/fonts/grauity-icons.eot +0 -0
- package/dist/fonts/grauity-icons.ttf +0 -0
- package/dist/fonts/grauity-icons.woff +0 -0
- package/dist/fonts/grauity-icons.woff2 +0 -0
- package/dist/index.d.ts +342 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/main.cjs +1 -1
- package/dist/main.cjs.map +1 -1
- package/dist/module.mjs +1 -1
- package/dist/module.mjs.map +1 -1
- package/dist/ui/core/icons/iconTags.d.ts +0 -5
- package/dist/ui/core/icons/iconTags.d.ts.map +1 -1
- package/dist/ui/core/icons/iconTypes.d.ts +2 -6
- package/dist/ui/core/icons/iconTypes.d.ts.map +1 -1
- package/dist/ui/elements/DropdownMenu/DropdownMenu.d.ts +5 -0
- package/dist/ui/elements/DropdownMenu/DropdownMenu.d.ts.map +1 -0
- package/dist/ui/elements/DropdownMenu/DropdownMenu.styles.d.ts +16 -0
- package/dist/ui/elements/DropdownMenu/DropdownMenu.styles.d.ts.map +1 -0
- package/dist/ui/elements/DropdownMenu/components/DropdownMenuFooter.d.ts +12 -0
- package/dist/ui/elements/DropdownMenu/components/DropdownMenuFooter.d.ts.map +1 -0
- package/dist/ui/elements/DropdownMenu/components/DropdownMenuHeader.d.ts +11 -0
- package/dist/ui/elements/DropdownMenu/components/DropdownMenuHeader.d.ts.map +1 -0
- package/dist/ui/elements/DropdownMenu/components/DropdownMenuOption.d.ts +9 -0
- package/dist/ui/elements/DropdownMenu/components/DropdownMenuOption.d.ts.map +1 -0
- package/dist/ui/elements/DropdownMenu/components/DropdownMenuSubHeader.d.ts +4 -0
- package/dist/ui/elements/DropdownMenu/components/DropdownMenuSubHeader.d.ts.map +1 -0
- package/dist/ui/elements/DropdownMenu/components/DropdownSearchBox.d.ts +10 -0
- package/dist/ui/elements/DropdownMenu/components/DropdownSearchBox.d.ts.map +1 -0
- package/dist/ui/elements/DropdownMenu/constants.d.ts +25 -0
- package/dist/ui/elements/DropdownMenu/constants.d.ts.map +1 -0
- package/dist/ui/elements/DropdownMenu/index.d.ts +3 -0
- package/dist/ui/elements/DropdownMenu/index.d.ts.map +1 -0
- package/dist/ui/elements/DropdownMenu/types.d.ts +169 -0
- package/dist/ui/elements/DropdownMenu/types.d.ts.map +1 -0
- package/dist/ui/elements/DropdownMenu/utils.d.ts +21 -0
- package/dist/ui/elements/DropdownMenu/utils.d.ts.map +1 -0
- package/dist/ui/elements/Form/Dropdown/Dropdown.d.ts +4 -0
- package/dist/ui/elements/Form/Dropdown/Dropdown.d.ts.map +1 -0
- package/dist/ui/elements/Form/Dropdown/Dropdown.styles.d.ts +4 -0
- package/dist/ui/elements/Form/Dropdown/Dropdown.styles.d.ts.map +1 -0
- package/dist/ui/elements/Form/Dropdown/DropdownTrigger.d.ts +5 -0
- package/dist/ui/elements/Form/Dropdown/DropdownTrigger.d.ts.map +1 -0
- package/dist/ui/elements/Form/Dropdown/index.d.ts +3 -0
- package/dist/ui/elements/Form/Dropdown/index.d.ts.map +1 -0
- package/dist/ui/elements/Form/Dropdown/types.d.ts +47 -0
- package/dist/ui/elements/Form/Dropdown/types.d.ts.map +1 -0
- package/dist/ui/elements/Form/Dropdown/utils.d.ts +13 -0
- package/dist/ui/elements/Form/Dropdown/utils.d.ts.map +1 -0
- package/dist/ui/elements/Form/FormRenderer/FormField.d.ts +4 -0
- package/dist/ui/elements/Form/FormRenderer/FormField.d.ts.map +1 -0
- package/dist/ui/elements/Form/FormRenderer/FormFieldWrappers/CheckboxWrapper.d.ts +4 -0
- package/dist/ui/elements/Form/FormRenderer/FormFieldWrappers/CheckboxWrapper.d.ts.map +1 -0
- package/dist/ui/elements/Form/FormRenderer/FormFieldWrappers/DropdownWrapper.d.ts +4 -0
- package/dist/ui/elements/Form/FormRenderer/FormFieldWrappers/DropdownWrapper.d.ts.map +1 -0
- package/dist/ui/elements/Form/FormRenderer/FormFieldWrappers/TextFieldWrapper.d.ts +4 -0
- package/dist/ui/elements/Form/FormRenderer/FormFieldWrappers/TextFieldWrapper.d.ts.map +1 -0
- package/dist/ui/elements/Form/FormRenderer/FormRenderer.d.ts +4 -0
- package/dist/ui/elements/Form/FormRenderer/FormRenderer.d.ts.map +1 -0
- package/dist/ui/elements/Form/FormRenderer/index.d.ts +3 -0
- package/dist/ui/elements/Form/FormRenderer/index.d.ts.map +1 -0
- package/dist/ui/elements/Form/FormRenderer/types.d.ts +146 -0
- package/dist/ui/elements/Form/FormRenderer/types.d.ts.map +1 -0
- package/dist/ui/elements/Form/FormRenderer/useFormHook.d.ts +4 -0
- package/dist/ui/elements/Form/FormRenderer/useFormHook.d.ts.map +1 -0
- package/dist/ui/elements/Form/FormRenderer/utils.d.ts +5 -0
- package/dist/ui/elements/Form/FormRenderer/utils.d.ts.map +1 -0
- package/dist/ui/elements/MultiSelectDropdown/MultiSelectDropdown.d.ts +5 -0
- package/dist/ui/elements/MultiSelectDropdown/MultiSelectDropdown.d.ts.map +1 -1
- package/dist/ui/elements/MultiSelectDropdown/types.d.ts +5 -0
- package/dist/ui/elements/MultiSelectDropdown/types.d.ts.map +1 -1
- package/dist/ui/elements/SelectDropdown/SelectDropdown.d.ts +5 -0
- package/dist/ui/elements/SelectDropdown/SelectDropdown.d.ts.map +1 -1
- package/dist/ui/elements/SelectDropdown/types.d.ts +5 -0
- package/dist/ui/elements/SelectDropdown/types.d.ts.map +1 -1
- package/dist/ui/index.d.ts +3 -0
- package/dist/ui/index.d.ts.map +1 -1
- package/package.json +3 -2
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/dist/index.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ import React, { NamedExoticComponent, ReactNode, RefAttributes, Component, HTMLA
|
|
|
2
2
|
import { Substitute, IStyledComponentBase } from "styled-components/dist/types";
|
|
3
3
|
import { HTMLMotionProps, ForwardRefComponent } from "framer-motion";
|
|
4
4
|
import { FastOmit } from "styled-components";
|
|
5
|
+
import { Schema } from "yup";
|
|
5
6
|
export const ICON_TAGS: {
|
|
6
7
|
"exclamation-circle-filled": string[];
|
|
7
8
|
"exclamation-circle": string[];
|
|
@@ -19,8 +20,6 @@ export const ICON_TAGS: {
|
|
|
19
20
|
project: string[];
|
|
20
21
|
"terminal-filled": string[];
|
|
21
22
|
terminal: string[];
|
|
22
|
-
"nst-filled": string[];
|
|
23
|
-
nst: string[];
|
|
24
23
|
"desktop-filled": string[];
|
|
25
24
|
desktop: string[];
|
|
26
25
|
"gamepad-filled": string[];
|
|
@@ -103,8 +102,6 @@ export const ICON_TAGS: {
|
|
|
103
102
|
"lock-open-filled": string[];
|
|
104
103
|
"lock-open": string[];
|
|
105
104
|
lock: string[];
|
|
106
|
-
"magic-orb-filled": string[];
|
|
107
|
-
"magic-orb": string[];
|
|
108
105
|
"message-filled": string[];
|
|
109
106
|
"message-info-filled": string[];
|
|
110
107
|
"message-info": string[];
|
|
@@ -445,7 +442,6 @@ export const ICON_TAGS: {
|
|
|
445
442
|
export const TAG_ICONS: {
|
|
446
443
|
Alert: string[];
|
|
447
444
|
Code: string[];
|
|
448
|
-
College: string[];
|
|
449
445
|
Device: string[];
|
|
450
446
|
Docs: string[];
|
|
451
447
|
Finance: string[];
|
|
@@ -457,7 +453,7 @@ export const TAG_ICONS: {
|
|
|
457
453
|
Time: string[];
|
|
458
454
|
User: string[];
|
|
459
455
|
};
|
|
460
|
-
type grauityIconName = 'exclamation-circle-filled' | 'exclamation-circle' | 'exclamation-triangle-filled' | 'exclamation-triangle' | 'info-circle-filled' | 'info-circle' | 'question-circle-filled' | 'question-circle' | 'code-alt-filled' | 'code-alt' | 'code-filled' | 'code' | 'project-filled' | 'project' | 'terminal-filled' | 'terminal' | '
|
|
456
|
+
type grauityIconName = 'exclamation-circle-filled' | 'exclamation-circle' | 'exclamation-triangle-filled' | 'exclamation-triangle' | 'info-circle-filled' | 'info-circle' | 'question-circle-filled' | 'question-circle' | 'code-alt-filled' | 'code-alt' | 'code-filled' | 'code' | 'project-filled' | 'project' | 'terminal-filled' | 'terminal' | 'desktop-filled' | 'desktop' | 'gamepad-filled' | 'gamepad' | 'lamp-filled' | 'lamp' | 'laptop-filled' | 'laptop' | 'mobile-filled' | 'mobile' | 'archive-filled' | 'archive' | 'bookmark-filled' | 'bookmark' | 'file-alt-filled' | 'file-alt' | 'file-filled' | 'file-lightning-filled' | 'file-lightning' | 'file' | 'folder-filled' | 'folder-open-filled' | 'folder-open' | 'folder' | 'label-filled' | 'label' | 'note-filled' | 'note' | 'pen-filled' | 'pen' | 'pin-filled' | 'pin' | 'currency-rupee-filled' | 'currency-rupee' | 'headphone-filled' | 'headphone-mic-filled' | 'headphone-mic' | 'headphone' | 'mic-filled' | 'mic' | 'micmute-filled' | 'micmute' | 'pause-circle-filled' | 'pause-circle' | 'pause-filled' | 'pause' | 'play-circle-filled' | 'play-circle' | 'play-filled' | 'play-rectangle-filled' | 'play-rectangle' | 'play' | 'video-filled' | 'video-off-filled' | 'video-off' | 'video' | 'volume-maximum-filled' | 'volume-maximum' | 'volume-minimum-filled' | 'volume-minimum' | 'volume-mute-filled' | 'volume-mute' | 'comment-filled' | 'comment' | 'connector-filled' | 'connector' | 'doubt-alt2-filled' | 'doubt-alt2' | 'doubt-filled' | 'doubt-message-filled' | 'doubt-message' | 'doubt' | 'hearing-filled' | 'hearing' | 'heart-filled' | 'heart' | 'hearthands-filled' | 'hearthands' | 'lock-filled' | 'lock-open-filled' | 'lock-open' | 'lock' | 'message-filled' | 'message-info-filled' | 'message-info' | 'message' | 'milestone-filled' | 'milestone' | 'scholar-hat-filled' | 'scholar-hat' | 'smiley-bad-filled' | 'smiley-bad' | 'smiley-filled' | 'smiley-happy-filled' | 'smiley-happy' | 'smiley-neutral-filled' | 'smiley-neutral' | 'smiley-sad-filled' | 'smiley-sad' | 'smiley-very-bad-filled' | 'smiley-very-bad' | 'smiley-very-happy-filled' | 'smiley-very-happy' | 'smiley' | 'spark-filled' | 'spark' | 'sparkle-filled' | 'sparkle' | 'target-filled' | 'target' | 'check-badge-filled' | 'check-badge' | 'crown-filled' | 'crown' | 'flag-filled' | 'flag' | 'gift-filled' | 'gift' | 'leaderboard-filled' | 'leaderboard' | 'medal-filled' | 'medal' | 'star-filled' | 'star' | 'trophy-filled' | 'trophy' | 'codechef' | 'codeforces' | 'facebook' | 'github' | 'google' | 'hackerearth' | 'hackerrank' | 'instagram' | 'leetcode' | 'linkedin' | 'twitter' | 'whatsapp' | 'x' | 'youtube' | 'arrow-double-filled' | 'arrow-double' | 'arrow-down-filled' | 'arrow-down-left-filled' | 'arrow-down-left' | 'arrow-down-right-filled' | 'arrow-down-right' | 'arrow-down' | 'arrow-left-filled' | 'arrow-left' | 'arrow-right-filled' | 'arrow-right' | 'arrow-up-filled' | 'arrow-up-left-filled' | 'arrow-up-left' | 'arrow-up-right-filled' | 'arrow-up-right' | 'arrow-up' | 'ban-filled' | 'ban' | 'bin-filled' | 'bin' | 'book-alt-filled' | 'book-alt' | 'book-alt2-filled' | 'book-alt2' | 'book-alt3-filled' | 'book-alt3' | 'book-filled' | 'book' | 'briefcase-alt2-filled' | 'briefcase-alt2' | 'briefcase-filled' | 'briefcase' | 'broadcast-filled' | 'broadcast' | 'bug-filled' | 'bug' | 'bulb-filled' | 'bulb' | 'call-end-filled' | 'call-end' | 'call-start-filled' | 'call-start' | 'camera-filled' | 'camera' | 'caret-double-filled' | 'caret-double' | 'caret-down-filled' | 'caret-down' | 'caret-left-filled' | 'caret-left' | 'caret-right-filled' | 'caret-right' | 'caret-up-filled' | 'caret-up' | 'check-circle-filled' | 'check-circle' | 'check-filled' | 'check-square-filled' | 'check-square' | 'check' | 'chevron-down-double-filled' | 'chevron-down-double' | 'chevron-down-filled' | 'chevron-down' | 'chevron-left-double-filled' | 'chevron-left-double' | 'chevron-left-filled' | 'chevron-left' | 'chevron-right-double-filled' | 'chevron-right-double' | 'chevron-right-filled' | 'chevron-right' | 'chevron-up-double-filled' | 'chevron-up-double' | 'chevron-up-filled' | 'chevron-up' | 'circle-filled' | 'circle' | 'clock-alarm-filled' | 'clock-alarm' | 'close-circle-filled' | 'close-circle' | 'close-filled' | 'close-square-filled' | 'close-square' | 'close' | 'compass-filled' | 'compass' | 'database-filled' | 'database' | 'diamond-filled' | 'diamond' | 'double-check-filled' | 'double-check' | 'download-filled' | 'download' | 'eda-filled' | 'eda' | 'email-alt-filled' | 'email-alt' | 'email-filled' | 'email' | 'filter-filled' | 'filter' | 'floppy-filled' | 'floppy' | 'forward-filled' | 'forward' | 'gear-filled' | 'gear' | 'git-commit-filled' | 'git-commit' | 'globe-filled' | 'globe' | 'grip-hortizontal-filled' | 'grip-hortizontal' | 'grip-vertical-filled' | 'grip-vertical' | 'growth-down-filled' | 'growth-down' | 'growth-up-filled' | 'growth-up' | 'help-filled' | 'help' | 'hold-filled' | 'hold' | 'home-filled' | 'home' | 'hourglass-filled' | 'hourglass' | 'kebab-horizontal-filled' | 'kebab-horizontal' | 'kebab-vertical-filled' | 'kebab-vertical' | 'link-filled' | 'link' | 'list-checked-filled' | 'list-checked' | 'list-filled' | 'list' | 'load-filled' | 'load' | 'loudspeaker-filled' | 'loudspeaker' | 'machine-learning-filled' | 'machine-learning' | 'map-pin-alt1-filled' | 'map-pin-alt1' | 'map-pin-alt2-filled' | 'map-pin-alt2' | 'map-pin-filled' | 'map-pin' | 'maximize-filled' | 'maximize' | 'menu-alt2-filled' | 'menu-alt2' | 'menu-filled' | 'menu-grid-filled' | 'menu-grid' | 'menu' | 'microchip-filled' | 'microchip' | 'minimize-filled' | 'minimize' | 'minus-circle-filled' | 'minus-circle' | 'minus-square-filled' | 'minus-square' | 'moon-filled' | 'moon' | 'new-tab-filled' | 'new-tab' | 'paper-clip-filled' | 'paper-clip' | 'plus-circle-filled' | 'plus-circle' | 'plus-filled' | 'plus-square-filled' | 'plus-square' | 'plus' | 'power-bi-filled' | 'power-bi' | 'printer-filled' | 'printer' | 'progress-half-filled' | 'progress-half' | 'progress-quarter-filled' | 'progress-quarter' | 'progress-zero-filled' | 'progress-zero' | 'python-filled' | 'python' | 'quiz-filled' | 'quiz' | 'refresh-filled' | 'refresh' | 'remove-filled' | 'remove' | 'reply-filled' | 'reply' | 'retail-filled' | 'retail' | 'screenshare-start-filled' | 'screenshare-start' | 'screenshare-stop-filled' | 'screenshare-stop' | 'search-filled' | 'search' | 'share-filled' | 'share' | 'shield-alert-filled' | 'shield-alert' | 'shield-check-filled' | 'shield-check' | 'shield-filled' | 'shield-lock-filled' | 'shield-lock' | 'shield-x-filled' | 'shield-x' | 'shield' | 'shop-filled' | 'shop' | 'sidebar-left-filled' | 'sidebar-left' | 'sidebar-right-filled' | 'sidebar-right' | 'signin-filled' | 'signin' | 'signout-filled' | 'signout' | 'slider-filled' | 'slider' | 'square-filled' | 'square' | 'sticky-note-filled' | 'sticky-note' | 'sun-filled' | 'sun' | 'thumbs-down-filled' | 'thumbs-down' | 'thumbs-up-filled' | 'thumbs-up' | 'thunder-filled' | 'thunder' | 'truck-filled' | 'truck' | 'upload-filled' | 'upload' | 'wrench-filled' | 'wrench' | 'bell-filled' | 'bell' | 'calender-check-filled' | 'calender-check' | 'calender-filled' | 'calender-plus-filled' | 'calender-plus' | 'calender' | 'clock-filled' | 'clock' | 'rewatch-filled' | 'rewatch' | 'stopwatch-filled' | 'stopwatch' | 'bot-filled' | 'bot' | 'person-check-filled' | 'person-check' | 'person-filled' | 'person-plus-filled' | 'person-plus' | 'person' | 'user-speak-filled' | 'user-speak' | 'users-filled' | 'users';
|
|
461
457
|
type grauityFlippedChoiceName = 'vertically' | 'horizontally';
|
|
462
458
|
type grauityRotatedChoiceName = 'clockwise' | 'counterclockwise';
|
|
463
459
|
type grauityIconSizeName = '4' | '8' | '12' | '14' | '16' | '20' | '24' | '28' | '32' | '36' | '40';
|
|
@@ -3967,6 +3963,11 @@ interface DropdownOption {
|
|
|
3967
3963
|
id: number | string;
|
|
3968
3964
|
label: string;
|
|
3969
3965
|
}
|
|
3966
|
+
/**
|
|
3967
|
+
* @deprecated This interface is deprecated and will be removed in future versions.
|
|
3968
|
+
* - Use the `DropdownMenu` component instead.
|
|
3969
|
+
* @see {@link https://grauity.newtonschool.co/?path=/docs/elements-dropdownmenu--docs}
|
|
3970
|
+
*/
|
|
3970
3971
|
export interface SelectDropdownProps {
|
|
3971
3972
|
/**
|
|
3972
3973
|
* Set of options available for selection.
|
|
@@ -4018,11 +4019,21 @@ export interface SelectDropdownProps {
|
|
|
4018
4019
|
*/
|
|
4019
4020
|
width?: string | null;
|
|
4020
4021
|
}
|
|
4022
|
+
/**
|
|
4023
|
+
* @deprecated This component is deprecated and will be removed in future releases.
|
|
4024
|
+
* - Use the `DropdownMenu` component instead.
|
|
4025
|
+
* @see {@link https://grauity.newtonschool.co/?path=/docs/elements-dropdownmenu--docs}
|
|
4026
|
+
*/
|
|
4021
4027
|
export const NSSelectDropdown: React.ForwardRefExoticComponent<SelectDropdownProps & React.RefAttributes<HTMLSelectElement>>;
|
|
4022
4028
|
interface _DropdownOption1 {
|
|
4023
4029
|
id: string;
|
|
4024
4030
|
label: string;
|
|
4025
4031
|
}
|
|
4032
|
+
/**
|
|
4033
|
+
* @deprecated This interface is deprecated and will be removed in future versions.
|
|
4034
|
+
* - Use the `DropdownMenu` component instead.
|
|
4035
|
+
* @see {@link https://grauity.newtonschool.co/?path=/docs/elements-dropdownmenu--docs}
|
|
4036
|
+
*/
|
|
4026
4037
|
export interface MultiSelectDropdownProps {
|
|
4027
4038
|
/**
|
|
4028
4039
|
* Text to display when no option is selected.
|
|
@@ -4075,6 +4086,11 @@ export interface MultiSelectDropdownProps {
|
|
|
4075
4086
|
*/
|
|
4076
4087
|
triggerComponent?: React.ReactNode;
|
|
4077
4088
|
}
|
|
4089
|
+
/**
|
|
4090
|
+
* @deprecated This component is deprecated and will be removed in future releases.
|
|
4091
|
+
* - Use the `DropdownMenu` component instead.
|
|
4092
|
+
* @see {@link https://grauity.newtonschool.co/?path=/docs/elements-dropdownmenu--docs}
|
|
4093
|
+
*/
|
|
4078
4094
|
export const NSMultiSelectDropdown: React.ForwardRefExoticComponent<MultiSelectDropdownProps & React.RefAttributes<HTMLSelectElement>>;
|
|
4079
4095
|
type ChipVariants = 'brand' | 'success' | 'error' | 'warning' | 'yellow' | 'purple' | 'disabled' | 'action-brand' | 'action-success' | 'action-error' | 'action-warning' | 'action-yellow' | 'action-purple';
|
|
4080
4096
|
type ChipSizes = 'small' | 'medium' | 'large' | 'extra-large';
|
|
@@ -5393,5 +5409,325 @@ export interface OtpInputFieldProps {
|
|
|
5393
5409
|
successMessage?: string;
|
|
5394
5410
|
}
|
|
5395
5411
|
export const NSOtpInput: ({ label, name, length, onChange, style, isOtpCorrect, isOtpWrong, isDisabled, errorMessage, successMessage, }: OtpInputFieldProps) => JSX.Element;
|
|
5412
|
+
export enum NSDropdownMenuBaseItemType {
|
|
5413
|
+
SUB_HEADER = "subheader",
|
|
5414
|
+
DIVIDER = "divider",
|
|
5415
|
+
OPTION = "option"
|
|
5416
|
+
}
|
|
5417
|
+
type OptionValue = string | number;
|
|
5418
|
+
export type NSDropdownMenuBaseItemSubHeaderProps = {
|
|
5419
|
+
type: NSDropdownMenuBaseItemType.SUB_HEADER;
|
|
5420
|
+
title: string;
|
|
5421
|
+
};
|
|
5422
|
+
export type NSDropdownMenuBaseItemDividerProps = {
|
|
5423
|
+
type: NSDropdownMenuBaseItemType.DIVIDER;
|
|
5424
|
+
};
|
|
5425
|
+
export type NSDropdownMenuBaseItemOptionProps = {
|
|
5426
|
+
type: NSDropdownMenuBaseItemType.OPTION;
|
|
5427
|
+
label: string;
|
|
5428
|
+
value: OptionValue;
|
|
5429
|
+
description?: string;
|
|
5430
|
+
leftIcon?: grauityIconName;
|
|
5431
|
+
rightIcon?: grauityIconName;
|
|
5432
|
+
disabled?: boolean;
|
|
5433
|
+
};
|
|
5434
|
+
export type NSDropdownMenuBaseItemProps = NSDropdownMenuBaseItemSubHeaderProps | NSDropdownMenuBaseItemDividerProps | NSDropdownMenuBaseItemOptionProps;
|
|
5435
|
+
export interface NSDropdownMenuProps {
|
|
5436
|
+
/**
|
|
5437
|
+
* Whether to show the header of the dropdown menu.
|
|
5438
|
+
* - If `showHeader` is false, `title`, `overline`, and `subtext` will be ignored.
|
|
5439
|
+
* - if `title`, `overline`, and `subtext` all are not provided, `showHeader` will be ignored.
|
|
5440
|
+
* @default true
|
|
5441
|
+
*/
|
|
5442
|
+
showHeader?: boolean;
|
|
5443
|
+
/**
|
|
5444
|
+
* The title of the dropdown menu.
|
|
5445
|
+
* @default 'Select'
|
|
5446
|
+
*/
|
|
5447
|
+
title?: string;
|
|
5448
|
+
/**
|
|
5449
|
+
* The overline text of the dropdown menu.
|
|
5450
|
+
* @default ''
|
|
5451
|
+
*/
|
|
5452
|
+
overline?: string;
|
|
5453
|
+
/**
|
|
5454
|
+
* The subtext of the dropdown menu.
|
|
5455
|
+
* @default ''
|
|
5456
|
+
*/
|
|
5457
|
+
subtext?: string;
|
|
5458
|
+
/**
|
|
5459
|
+
* Custom header component for the dropdown menu.
|
|
5460
|
+
* - If `customHeader` is provided, `showHeader`, `title`, `overline`, and `subtext` will be ignored.
|
|
5461
|
+
* @default null
|
|
5462
|
+
*/
|
|
5463
|
+
customHeader?: React.ReactNode;
|
|
5464
|
+
/**
|
|
5465
|
+
* Whether the dropdown menu is searchable.
|
|
5466
|
+
* @default false
|
|
5467
|
+
*/
|
|
5468
|
+
searchable?: boolean;
|
|
5469
|
+
/**
|
|
5470
|
+
* Placeholder text for the search input.
|
|
5471
|
+
* @default 'Search'
|
|
5472
|
+
*/
|
|
5473
|
+
searchPlaceholder?: string;
|
|
5474
|
+
/**
|
|
5475
|
+
* Icon name for the search input.
|
|
5476
|
+
* @default 'search'
|
|
5477
|
+
*/
|
|
5478
|
+
searchIcon?: grauityIconName;
|
|
5479
|
+
/**
|
|
5480
|
+
* Callback function called when the search input value changes.
|
|
5481
|
+
* @param value - The new value of the search input.
|
|
5482
|
+
* @default A function that searches on label and description of items.
|
|
5483
|
+
*/
|
|
5484
|
+
onSearchInputChange?: (value: string) => void;
|
|
5485
|
+
/**
|
|
5486
|
+
* Whether multiple items can be selected.
|
|
5487
|
+
* @default false
|
|
5488
|
+
*/
|
|
5489
|
+
multiple?: boolean;
|
|
5490
|
+
/**
|
|
5491
|
+
* List of items to be displayed in the dropdown menu.
|
|
5492
|
+
* @type {
|
|
5493
|
+
type: 'subheader'
|
|
5494
|
+
title?: string;
|
|
5495
|
+
} | {
|
|
5496
|
+
type: 'divider'
|
|
5497
|
+
} | {
|
|
5498
|
+
type: 'option'
|
|
5499
|
+
label: string;
|
|
5500
|
+
value: string;
|
|
5501
|
+
description?: string;
|
|
5502
|
+
leftIcon?: grauityIconName;
|
|
5503
|
+
rightIcon?: grauityIconName;
|
|
5504
|
+
disabled?: boolean;
|
|
5505
|
+
}
|
|
5506
|
+
* @default []
|
|
5507
|
+
*/
|
|
5508
|
+
items: NSDropdownMenuBaseItemProps[];
|
|
5509
|
+
/**
|
|
5510
|
+
* Whether to show action buttons (e.g., Apply, Clear All).
|
|
5511
|
+
* @default false in single select mode, true in multiple select mode
|
|
5512
|
+
*/
|
|
5513
|
+
showActionButtons?: boolean;
|
|
5514
|
+
/**
|
|
5515
|
+
* Whether to show the "Clear All" button.
|
|
5516
|
+
* - If `showActionButtons` is false, `showClearAllButton` will be ignored.
|
|
5517
|
+
* - If `multiple` is false, `showClearAllButton` will always be false.
|
|
5518
|
+
* @default true
|
|
5519
|
+
*/
|
|
5520
|
+
showClearAllButton?: boolean;
|
|
5521
|
+
/**
|
|
5522
|
+
* Text for the "Clear All" button.
|
|
5523
|
+
* @default 'Clear All'
|
|
5524
|
+
*/
|
|
5525
|
+
clearAllButtonText?: string;
|
|
5526
|
+
/**
|
|
5527
|
+
* Text for the "Apply" button.
|
|
5528
|
+
* @default 'Apply'
|
|
5529
|
+
*/
|
|
5530
|
+
applyButtonText?: string;
|
|
5531
|
+
/**
|
|
5532
|
+
* Callback function called when the "Clear All" button is clicked.
|
|
5533
|
+
* @default null
|
|
5534
|
+
*/
|
|
5535
|
+
onClearAll?: () => void;
|
|
5536
|
+
/**
|
|
5537
|
+
* Callback function called to apply the selected items.
|
|
5538
|
+
* - In single select mode, if `showActionButtons` is false, `onApply` will be called when an option is clicked.
|
|
5539
|
+
* - In multiple select mode, if `showActionButtons` is false, `onApply` will be called when clicked outside the dropdown menu.
|
|
5540
|
+
* - If `showActionButtons` is true, `onApply` will be called when the "Apply" button is clicked.
|
|
5541
|
+
* @param items - The selected items.
|
|
5542
|
+
* @default null
|
|
5543
|
+
*/
|
|
5544
|
+
onApply?: (items: NSDropdownMenuBaseItemOptionProps[]) => void;
|
|
5545
|
+
/**
|
|
5546
|
+
* Callback function called when the dropdown menu is scrolled to the bottom.
|
|
5547
|
+
* @default null
|
|
5548
|
+
*/
|
|
5549
|
+
onScrollToBottom?: () => void;
|
|
5550
|
+
/**
|
|
5551
|
+
* Additional class names for the dropdown menu.
|
|
5552
|
+
* @default null
|
|
5553
|
+
*/
|
|
5554
|
+
className?: string;
|
|
5555
|
+
/**
|
|
5556
|
+
* Additional styles for the dropdown menu.
|
|
5557
|
+
* @default {}
|
|
5558
|
+
*/
|
|
5559
|
+
styles?: React.CSSProperties;
|
|
5560
|
+
/**
|
|
5561
|
+
* The values of the selected items.
|
|
5562
|
+
* @default []
|
|
5563
|
+
*/
|
|
5564
|
+
selectedValues?: OptionValue[];
|
|
5565
|
+
/**
|
|
5566
|
+
* The width of the dropdown menu.
|
|
5567
|
+
* @default '300px'
|
|
5568
|
+
*/
|
|
5569
|
+
width?: string;
|
|
5570
|
+
}
|
|
5571
|
+
export const NSDropdownMenu: React.ForwardRefExoticComponent<NSDropdownMenuProps & React.RefAttributes<HTMLDivElement>>;
|
|
5572
|
+
interface DropdownTriggerProps {
|
|
5573
|
+
/**
|
|
5574
|
+
* The name of the dropdown field
|
|
5575
|
+
* @required
|
|
5576
|
+
*/
|
|
5577
|
+
name: string;
|
|
5578
|
+
/**
|
|
5579
|
+
* The label for the dropdown field
|
|
5580
|
+
*/
|
|
5581
|
+
label?: string;
|
|
5582
|
+
/**
|
|
5583
|
+
* The placeholder text for the dropdown field
|
|
5584
|
+
* @default 'Select'
|
|
5585
|
+
*/
|
|
5586
|
+
placeholder?: string;
|
|
5587
|
+
/**
|
|
5588
|
+
* Whether the dropdown field is required
|
|
5589
|
+
* @default false
|
|
5590
|
+
*/
|
|
5591
|
+
isRequired?: boolean;
|
|
5592
|
+
/**
|
|
5593
|
+
* Whether to disable the dropdown field
|
|
5594
|
+
|
|
5595
|
+
* @default false
|
|
5596
|
+
*/
|
|
5597
|
+
isDisabled?: boolean;
|
|
5598
|
+
/**
|
|
5599
|
+
* The help message to display below the dropdown field
|
|
5600
|
+
*/
|
|
5601
|
+
helpMessage?: string;
|
|
5602
|
+
/**
|
|
5603
|
+
* The error message to display when the dropdown field is invalid
|
|
5604
|
+
*/
|
|
5605
|
+
errorMessage?: string;
|
|
5606
|
+
}
|
|
5607
|
+
export interface DropdownProps extends DropdownTriggerProps, NSDropdownMenuProps {
|
|
5608
|
+
/**
|
|
5609
|
+
* The width of the dropdown menu.
|
|
5610
|
+
* @default '100%'
|
|
5611
|
+
*/
|
|
5612
|
+
width?: string;
|
|
5613
|
+
}
|
|
5614
|
+
export const NSDropdown: (props: DropdownProps) => JSX.Element;
|
|
5615
|
+
export interface NSFormState {
|
|
5616
|
+
[key: string]: any;
|
|
5617
|
+
}
|
|
5618
|
+
export interface NSFormErrors {
|
|
5619
|
+
[key: string]: string;
|
|
5620
|
+
}
|
|
5621
|
+
export enum NSFormFieldType {
|
|
5622
|
+
TEXTFIELD = "TEXTFIELD",
|
|
5623
|
+
DATE_PICKER = "DATE_PICKER",
|
|
5624
|
+
DROPDOWN = "DROPDOWN",
|
|
5625
|
+
DROPDOWN_MENU = "DROPDOWN_MENU",
|
|
5626
|
+
ICON_BUTTON = "ICON_BUTTON",
|
|
5627
|
+
CHECKBOX = "CHECKBOX",
|
|
5628
|
+
CUSTOM = "CUSTOM"
|
|
5629
|
+
}
|
|
5630
|
+
export interface NSConditionalProp {
|
|
5631
|
+
propName: string;
|
|
5632
|
+
propValue: any;
|
|
5633
|
+
conditions: Array<{
|
|
5634
|
+
prop: string;
|
|
5635
|
+
value: any;
|
|
5636
|
+
}>;
|
|
5637
|
+
}
|
|
5638
|
+
export interface NSFormFieldBaseProps {
|
|
5639
|
+
type: NSFormFieldType;
|
|
5640
|
+
renderer?: (props: FormFieldProps) => React.ReactNode;
|
|
5641
|
+
rendererProps?: any;
|
|
5642
|
+
schema?: Schema;
|
|
5643
|
+
configProps?: any;
|
|
5644
|
+
conditionalProps?: NSConditionalProp[];
|
|
5645
|
+
}
|
|
5646
|
+
export interface NSFormFieldTextFieldProps extends NSFormFieldBaseProps {
|
|
5647
|
+
type: NSFormFieldType.TEXTFIELD;
|
|
5648
|
+
rendererProps: TextFieldProps;
|
|
5649
|
+
}
|
|
5650
|
+
export interface NSFormFieldDatePickerProps extends NSFormFieldBaseProps {
|
|
5651
|
+
type: NSFormFieldType.DATE_PICKER;
|
|
5652
|
+
rendererProps: TextFieldProps;
|
|
5653
|
+
}
|
|
5654
|
+
export interface NSFormFieldDropdownProps extends NSFormFieldBaseProps {
|
|
5655
|
+
type: NSFormFieldType.DROPDOWN;
|
|
5656
|
+
rendererProps: DropdownProps;
|
|
5657
|
+
}
|
|
5658
|
+
export interface NSFormFieldDropdownMenuProps extends NSFormFieldBaseProps {
|
|
5659
|
+
type: NSFormFieldType.DROPDOWN_MENU;
|
|
5660
|
+
rendererProps: DropdownProps;
|
|
5661
|
+
}
|
|
5662
|
+
export interface NSFormFieldIconButtonProps extends NSFormFieldBaseProps {
|
|
5663
|
+
type: NSFormFieldType.ICON_BUTTON;
|
|
5664
|
+
rendererProps: IconButtonProps;
|
|
5665
|
+
}
|
|
5666
|
+
export interface NSFormFieldCheckboxProps extends NSFormFieldBaseProps {
|
|
5667
|
+
type: NSFormFieldType.CHECKBOX;
|
|
5668
|
+
rendererProps: CheckboxProps;
|
|
5669
|
+
}
|
|
5670
|
+
export interface NSFormFieldCustomProps extends NSFormFieldBaseProps {
|
|
5671
|
+
type: NSFormFieldType.CUSTOM;
|
|
5672
|
+
rendererProps: any;
|
|
5673
|
+
}
|
|
5674
|
+
export type NSFormField = NSFormFieldTextFieldProps | NSFormFieldDatePickerProps | NSFormFieldDropdownProps | NSFormFieldDropdownMenuProps | NSFormFieldIconButtonProps | NSFormFieldCheckboxProps | NSFormFieldCustomProps;
|
|
5675
|
+
export interface NSFormFields {
|
|
5676
|
+
[key: string]: NSFormField;
|
|
5677
|
+
}
|
|
5678
|
+
export interface NSFormRowProps {
|
|
5679
|
+
widths?: string;
|
|
5680
|
+
column?: NSFormRowColumnCondition;
|
|
5681
|
+
items?: NSFormField[];
|
|
5682
|
+
}
|
|
5683
|
+
export enum NSFormRowColumnCondition {
|
|
5684
|
+
ALWAYS_COLUMN = "ALWAYS_COLUMN",
|
|
5685
|
+
ALWAYS_ROW = "ALWAYS_ROW",
|
|
5686
|
+
COLUMN_ON_MOBILE = "COLUMN_ON_MOBILE"
|
|
5687
|
+
}
|
|
5688
|
+
export interface NSFormConfig {
|
|
5689
|
+
fields: NSFormFields;
|
|
5690
|
+
initialState: NSFormState;
|
|
5691
|
+
rows: NSFormRowProps[];
|
|
5692
|
+
}
|
|
5693
|
+
export interface NSUseFormHookProps {
|
|
5694
|
+
/**
|
|
5695
|
+
* The initial state of the form.
|
|
5696
|
+
* @default {}
|
|
5697
|
+
*/
|
|
5698
|
+
initialState?: NSFormState;
|
|
5699
|
+
/**
|
|
5700
|
+
* An array of form rows to be rendered.
|
|
5701
|
+
* @default []
|
|
5702
|
+
*/
|
|
5703
|
+
formRows?: NSFormRowProps[];
|
|
5704
|
+
/**
|
|
5705
|
+
* CSS properties to style the form rows.
|
|
5706
|
+
* @default {}
|
|
5707
|
+
*/
|
|
5708
|
+
rowStyles?: React.CSSProperties;
|
|
5709
|
+
/**
|
|
5710
|
+
* Flag to indicate if the form is being viewed on a mobile device.
|
|
5711
|
+
* @default false
|
|
5712
|
+
*/
|
|
5713
|
+
isMobileView?: boolean;
|
|
5714
|
+
}
|
|
5715
|
+
export interface NSUseFormHookReturnProps {
|
|
5716
|
+
formData: NSFormState;
|
|
5717
|
+
formRenderer: React.ReactNode;
|
|
5718
|
+
validateFields: (fields: NSFormFields, data: NSFormState) => any;
|
|
5719
|
+
changeFormData: (newData: NSFormState) => void;
|
|
5720
|
+
}
|
|
5721
|
+
interface HandleFormFieldChangeProps {
|
|
5722
|
+
name: string;
|
|
5723
|
+
value: any;
|
|
5724
|
+
}
|
|
5725
|
+
interface FormFieldProps {
|
|
5726
|
+
formField: NSFormField;
|
|
5727
|
+
error?: string;
|
|
5728
|
+
formData: NSFormState;
|
|
5729
|
+
handleChange: (props: HandleFormFieldChangeProps) => void;
|
|
5730
|
+
}
|
|
5731
|
+
export const useNSFormHook: ({ initialState, formRows, rowStyles, isMobileView, }: NSUseFormHookProps) => NSUseFormHookReturnProps;
|
|
5396
5732
|
|
|
5397
5733
|
//# sourceMappingURL=index.d.ts.map
|