@egov3/system-design 2.2.2 → 2.2.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.css +2 -0
- package/dist/index.css.map +1 -0
- package/dist/index.d.mts +102 -0
- package/dist/{esm/index.d.ts → index.d.ts} +4 -42
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +1 -0
- package/dist/index.mjs.map +1 -0
- package/package.json +10 -14
- package/dist/cjs/components/Accordion/index.d.ts +0 -8
- package/dist/cjs/components/Button/index.d.ts +0 -13
- package/dist/cjs/components/Calendar/Body/index.d.ts +0 -12
- package/dist/cjs/components/Calendar/Footer/index.d.ts +0 -9
- package/dist/cjs/components/Calendar/Header/index.d.ts +0 -8
- package/dist/cjs/components/Calendar/Main/index.d.ts +0 -9
- package/dist/cjs/components/Calendar/index.d.ts +0 -8
- package/dist/cjs/components/InputField/index.d.ts +0 -22
- package/dist/cjs/components/Modal/index.d.ts +0 -9
- package/dist/cjs/components/RadioGroup/index.d.ts +0 -20
- package/dist/cjs/components/RadioToggle/index.d.ts +0 -6
- package/dist/cjs/components/SelectBoxButton/index.d.ts +0 -9
- package/dist/cjs/components/Typography/index.d.ts +0 -8
- package/dist/cjs/components/index.d.ts +0 -20
- package/dist/cjs/constants/calendar/index.d.ts +0 -2
- package/dist/cjs/index.d.ts +0 -21
- package/dist/cjs/index.js +0 -3496
- package/dist/cjs/index.js.map +0 -1
- package/dist/cjs/interfaces/Calendar.d.ts +0 -24
- package/dist/cjs/stories/Accordion.stories.d.ts +0 -7
- package/dist/cjs/stories/Button.stories.d.ts +0 -28
- package/dist/cjs/stories/Calendar.stories.d.ts +0 -6
- package/dist/cjs/stories/CardWrapperItem.d.ts +0 -4
- package/dist/cjs/stories/InputField.stories.d.ts +0 -22
- package/dist/cjs/stories/Modal.stories.d.ts +0 -8
- package/dist/cjs/stories/RadioGroup.stories.d.ts +0 -23
- package/dist/cjs/stories/RadioToggle.stories.d.ts +0 -13
- package/dist/cjs/stories/Typography.stories.d.ts +0 -12
- package/dist/cjs/svg/ClearIcon.d.ts +0 -4
- package/dist/cjs/svg/index.d.ts +0 -2
- package/dist/cjs/utils/CreateArray.d.ts +0 -1
- package/dist/cjs/utils/GenerateArray.d.ts +0 -1
- package/dist/cjs/utils/date/convertType.d.ts +0 -53
- package/dist/cjs/utils/date/formatDate.d.ts +0 -1
- package/dist/cjs/utils/date/getDaysInMonth.d.ts +0 -1
- package/dist/cjs/utils/date/getMonthNameProper.d.ts +0 -1
- package/dist/cjs/utils/date/getValideMonth.d.ts +0 -6
- package/dist/cjs/utils/date/index.d.ts +0 -6
- package/dist/cjs/utils/date/inverseDate.d.ts +0 -1
- package/dist/cjs/utils/date/isValidateDate.d.ts +0 -3
- package/dist/cjs/utils/date/normalizeDayAndMonth.d.ts +0 -2
- package/dist/cjs/utils/date/range/getDaysRange.d.ts +0 -2
- package/dist/cjs/utils/date/range/getMonthRange.d.ts +0 -1
- package/dist/cjs/utils/date/range/getYearRange.d.ts +0 -1
- package/dist/cjs/utils/date/range/isValidDateRange.d.ts +0 -3
- package/dist/cjs/utils/joinClasses.d.ts +0 -1
- package/dist/cjs/utils/string/SetCharAt.d.ts +0 -1
- package/dist/cjs/utils/string/toPascalCase.d.ts +0 -1
- package/dist/esm/components/Accordion/index.d.ts +0 -8
- package/dist/esm/components/Button/index.d.ts +0 -13
- package/dist/esm/components/Calendar/Body/index.d.ts +0 -12
- package/dist/esm/components/Calendar/Footer/index.d.ts +0 -9
- package/dist/esm/components/Calendar/Header/index.d.ts +0 -8
- package/dist/esm/components/Calendar/Main/index.d.ts +0 -9
- package/dist/esm/components/Calendar/index.d.ts +0 -8
- package/dist/esm/components/InputField/index.d.ts +0 -22
- package/dist/esm/components/Modal/index.d.ts +0 -9
- package/dist/esm/components/RadioGroup/index.d.ts +0 -20
- package/dist/esm/components/RadioToggle/index.d.ts +0 -6
- package/dist/esm/components/SelectBoxButton/index.d.ts +0 -9
- package/dist/esm/components/Typography/index.d.ts +0 -8
- package/dist/esm/components/index.d.ts +0 -20
- package/dist/esm/constants/calendar/index.d.ts +0 -2
- package/dist/esm/index.js +0 -3494
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/interfaces/Calendar.d.ts +0 -24
- package/dist/esm/stories/Accordion.stories.d.ts +0 -7
- package/dist/esm/stories/Button.stories.d.ts +0 -28
- package/dist/esm/stories/Calendar.stories.d.ts +0 -6
- package/dist/esm/stories/CardWrapperItem.d.ts +0 -4
- package/dist/esm/stories/InputField.stories.d.ts +0 -22
- package/dist/esm/stories/Modal.stories.d.ts +0 -8
- package/dist/esm/stories/RadioGroup.stories.d.ts +0 -23
- package/dist/esm/stories/RadioToggle.stories.d.ts +0 -13
- package/dist/esm/stories/Typography.stories.d.ts +0 -12
- package/dist/esm/svg/ClearIcon.d.ts +0 -4
- package/dist/esm/svg/index.d.ts +0 -2
- package/dist/esm/utils/CreateArray.d.ts +0 -1
- package/dist/esm/utils/GenerateArray.d.ts +0 -1
- package/dist/esm/utils/date/convertType.d.ts +0 -53
- package/dist/esm/utils/date/formatDate.d.ts +0 -1
- package/dist/esm/utils/date/getDaysInMonth.d.ts +0 -1
- package/dist/esm/utils/date/getMonthNameProper.d.ts +0 -1
- package/dist/esm/utils/date/getValideMonth.d.ts +0 -6
- package/dist/esm/utils/date/index.d.ts +0 -6
- package/dist/esm/utils/date/inverseDate.d.ts +0 -1
- package/dist/esm/utils/date/isValidateDate.d.ts +0 -3
- package/dist/esm/utils/date/normalizeDayAndMonth.d.ts +0 -2
- package/dist/esm/utils/date/range/getDaysRange.d.ts +0 -2
- package/dist/esm/utils/date/range/getMonthRange.d.ts +0 -1
- package/dist/esm/utils/date/range/getYearRange.d.ts +0 -1
- package/dist/esm/utils/date/range/isValidDateRange.d.ts +0 -3
- package/dist/esm/utils/joinClasses.d.ts +0 -1
- package/dist/esm/utils/string/SetCharAt.d.ts +0 -1
- package/dist/esm/utils/string/toPascalCase.d.ts +0 -1
package/dist/index.css
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
.accordionBtn{border-radius:inherit;width:100%;text-align:left;display:flex;justify-content:space-between;cursor:pointer}.accordionContent{max-height:1000px;overflow:hidden;transition:all .3s ease-in-out}.accordionContent--hidden{max-height:0}.button{border:none;transition:background-color .2s ease;display:inline-flex;justify-content:center;align-items:center;cursor:pointer}.btn-default{color:var(--default-white-color);background-color:var(--default-primary-accent)}.btn-default--disabled{color:var(--text-disabled-color);background-color:var(--button-disabled-default-color)}.btn-tinted{color:var(--text-accent);background-color:var(--button-tinted-default-color)}.btn-tinted--disabled{color:var(--text-disabled-accent-color);background-color:var(--button-tinted-default-color)}.btn-secondary{color:var(--text-primary);background-color:var(--surface-surface-3-color)}.btn-secondary--disabled{color:var(--text-secondary);background-color:var(--surface-surface-3-color)}.btn-default:hover{background-color:var(--button-primary-on-hover-color)}.btn-tinted:hover{background-color:var(--button-tinted-on-hover-color)}.btn-secondary:hover{background-color:var(--button-secondary-on-hover)}.btn--mini{gap:4px;padding:6px 12px}.btn--small{gap:8px;padding:8px 16px}.btn--medium{gap:8px;padding:8px 20px}.btn--large{gap:8px;padding:14px 24px}.btn-square--mini{border-radius:4px}.btn-square--small{border-radius:6px}.btn-square--medium{border-radius:10px}.btn-square--large{border-radius:12px}.btn-rounded--mini,.btn-rounded--small,.btn-rounded--medium{border-radius:32px}.btn-rounded--large{border-radius:40px}.Heading1{font-family:Inter;font-size:32px;font-style:normal;font-weight:600;line-height:36px;letter-spacing:-.32px}.Heading3{font-family:Inter;font-size:24px;font-style:normal;font-weight:600;line-height:28px;letter-spacing:-.24px}.Subtitles3{font-family:Inter;font-size:16px;font-style:normal;font-weight:600;line-height:24px}.Body1Medium{font-family:Inter;font-size:16px;font-style:normal;font-weight:500;line-height:24px}.Body1Regular{font-family:Inter;font-size:16px;font-style:normal;font-weight:400;line-height:24px}.Body2Medium{font-family:Inter;font-size:14px;font-style:normal;font-weight:500;line-height:20px}.Body2Regular{font-family:Inter;font-size:14px;font-style:normal;font-weight:400;line-height:20px}.Body3Regular{font-family:Inter;font-size:14px;font-style:normal;font-weight:400;line-height:16px}.Caption1Medium{font-family:Inter;font-size:12px;font-style:normal;font-weight:500;line-height:16px}.Caption1Regular{font-family:Inter;font-size:12px;font-style:normal;font-weight:400;line-height:16px}.Caption1Semibold{font-family:Inter;font-size:12px;font-style:normal;font-weight:600;line-height:16px}.Caption2Medium{font-family:Inter;font-size:10px;font-style:normal;font-weight:500;line-height:12px}.Caption2Regular{font-family:Inter;font-size:10px;font-style:normal;font-weight:400;line-height:12px}.input{width:100%;border:none;background-color:var(--surface-surface-1)}.input:active,.input:focus{outline:none}.input::placeholder{color:var(--text-disabled-color)}.input::-webkit-inner-spin-button,.input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.clearIcon{cursor:pointer}.input--onfocus,.input--onfocus .input{background-color:var(--surface-surface-3-color)}.overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1;box-sizing:border-box}.contentWrap{background:var(--page-color-background-white);border-radius:16px;height:fit-content;animation:flyDawn 1s}.largeVariant{width:1052px}.smallVariant{width:400px}.contentHeader{position:relative;display:flex;justify-content:space-between;align-items:center;align-self:stretch;padding:12px 16px}.title{color:var(--text-primary)}@keyframes flyDawn{0%{transform:translateY(-1000px);opacity:.1}to{transform:translateY(0);opacity:1}}.radio{display:flex;align-items:center;cursor:pointer}.radio input{display:none}.radioBtn{position:relative;height:15px;width:15px;border-radius:50%;border:2px solid var(--button-secondary-on-hover);margin:10px;transition:background .3s}.radioBtn:after{content:"";position:absolute;top:50%;left:50%;height:10px;width:10px;background:var(--button-primary-default);border-radius:50%;transform:scale(0) translate(-50%,-50%);transition:transform .3s}input:checked+.radioBtn:after{transform:scale(1) translate(-50%,-50%)}input:checked+.radioBtn{border:2px solid var(--button-primary-default)}.radioBtnText{padding-left:10px;width:fit-content}.wrap{display:flex;justify-content:flex-end;align-items:center;padding:4px;width:32px;height:16px;border-radius:40px;background:var(--leaf)}.wrapLock{justify-content:flex-start;background:var(--surface-surface-3-color)}.round{width:16px;height:16px;background:var(--surface-surface-2);border-radius:100px}.selectContainer{display:flex;height:56px;justify-content:space-between;align-items:center;background-color:var(--surface-surface-1);border-radius:8px;padding:8px 16px}.label{display:flex;color:var(--text-secondary)}.errorLabel{display:flex;color:var(--icon-error-color)}.selectText{display:flex;color:var(--text-primary)}
|
|
2
|
+
/*# sourceMappingURL=index.css.map */
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/Accordion/Accordion.module.css","../src/components/Button/button.module.css","../src/styles/typography.module.css","../src/components/InputField/InputField.module.css","../src/components/Modal/Modal.module.css","../src/components/RadioGroup/RadioGroup.module.css","../src/components/RadioToggle/RadioToggle.module.css","../src/components/SelectBoxButton/SelectBoxButton.module.css"],"sourcesContent":[".accordionBtn {\n border-radius: inherit;\n width: 100%;\n text-align: left;\n\n display: flex;\n justify-content: space-between;\n cursor: pointer;\n}\n\n.accordionContent {\n max-height: 1000px;\n overflow: hidden;\n transition: all 0.3s ease-in-out;\n}\n\n.accordionContent--hidden {\n max-height: 0;\n}\n",".button {\n border: none;\n transition: background-color 0.2s ease;\n\n display: inline-flex;\n justify-content: center;\n align-items: center;\n cursor: pointer;\n}\n\n.btn-default {\n color: var(--default-white-color);\n background-color: var(--default-primary-accent);\n}\n\n.btn-default--disabled {\n color: var(--text-disabled-color);\n background-color: var(--button-disabled-default-color);\n}\n\n.btn-tinted {\n color: var(--text-accent);\n background-color: var(--button-tinted-default-color);\n}\n\n.btn-tinted--disabled {\n color: var(--text-disabled-accent-color);\n background-color: var(--button-tinted-default-color);\n}\n\n.btn-secondary {\n color: var(--text-primary);\n background-color: var(--surface-surface-3-color);\n}\n\n.btn-secondary--disabled {\n color: var(--text-secondary);\n background-color: var(--surface-surface-3-color);\n}\n\n.btn-default:hover {\n background-color: var(--button-primary-on-hover-color);\n}\n\n.btn-tinted:hover {\n background-color: var(--button-tinted-on-hover-color);\n}\n\n.btn-secondary:hover {\n background-color: var(--button-secondary-on-hover);\n}\n\n.btn--mini {\n gap: 4px;\n padding: 6px 12px;\n}\n\n.btn--small {\n gap: 8px;\n padding: 8px 16px;\n}\n\n.btn--medium {\n gap: 8px;\n padding: 8px 20px;\n}\n\n.btn--large {\n gap: 8px;\n padding: 14px 24px;\n}\n\n.btn-square--mini {\n border-radius: 4px;\n}\n\n.btn-square--small {\n border-radius: 6px;\n}\n\n.btn-square--medium {\n border-radius: 10px;\n}\n\n.btn-square--large {\n border-radius: 12px;\n}\n\n.btn-rounded--mini {\n border-radius: 32px;\n}\n\n.btn-rounded--small {\n border-radius: 32px;\n}\n\n.btn-rounded--medium {\n border-radius: 32px;\n}\n\n.btn-rounded--large {\n border-radius: 40px;\n}\n","/* Headings/Heading 1 */\n.Heading1 {\n font-family: Inter;\n font-size: 32px;\n font-style: normal;\n font-weight: 600;\n line-height: 36px; /* 112.5% */\n letter-spacing: -0.32px;\n}\n\n/* Headings/Heading 3 */\n.Heading3 {\n font-family: Inter;\n font-size: 24px;\n font-style: normal;\n font-weight: 600;\n line-height: 28px; /* 116.667% */\n letter-spacing: -0.24px;\n}\n\n/* Subtitles/Subtitle 3 */\n.Subtitles3 {\n font-family: Inter;\n font-size: 16px;\n font-style: normal;\n font-weight: 600;\n line-height: 24px; /* 150% */\n}\n\n/* Body/Body 1, Medium */\n.Body1Medium {\n font-family: Inter;\n font-size: 16px;\n font-style: normal;\n font-weight: 500;\n line-height: 24px; /* 150% */\n}\n\n/* Body/Body 1, Regular */\n.Body1Regular {\n font-family: Inter;\n font-size: 16px;\n font-style: normal;\n font-weight: 400;\n line-height: 24px; /* 150% */\n}\n\n/* Body/Body 2, Medium */\n.Body2Medium {\n font-family: Inter;\n font-size: 14px;\n font-style: normal;\n font-weight: 500;\n line-height: 20px; /* 142.857% */\n}\n\n/* Body/Body 2, Regular */\n.Body2Regular {\n font-family: Inter;\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n line-height: 20px; /* 142.857% */\n}\n\n/* Body/Body 3, Regular */\n.Body3Regular {\n font-family: Inter;\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n line-height: 16px; /* 114.286% */\n}\n\n/* Caption/Caption 1, Medium */\n.Caption1Medium {\n font-family: Inter;\n font-size: 12px;\n font-style: normal;\n font-weight: 500;\n line-height: 16px; /* 133.333% */\n}\n\n/* Caption/Caption 1, Regular */\n.Caption1Regular {\n font-family: Inter;\n font-size: 12px;\n font-style: normal;\n font-weight: 400;\n line-height: 16px; /* 133.333% */\n}\n\n/* Caption/Caption 1, Semibold */\n.Caption1Semibold {\n font-family: Inter;\n font-size: 12px;\n font-style: normal;\n font-weight: 600;\n line-height: 16px; /* 133.333% */\n}\n\n/* Caption/Caption 2, Medium */\n.Caption2Medium {\n font-family: Inter;\n font-size: 10px;\n font-style: normal;\n font-weight: 500;\n line-height: 12px; /* 120% */\n}\n\n/* Caption/Caption 2, Regular */\n.Caption2Regular {\n font-family: Inter;\n font-size: 10px;\n font-style: normal;\n font-weight: 400;\n line-height: 12px; /* 120% */\n}\n",".input {\n width: 100%;\n border: none;\n background-color: var(--surface-surface-1);\n}\n\n.input:active,\n.input:focus {\n outline: none;\n}\n\n.input::placeholder {\n color: var(--text-disabled-color);\n}\n\n.input::-webkit-inner-spin-button,\n.input::-webkit-outer-spin-button {\n -webkit-appearance: none;\n margin: 0;\n}\n\n.clearIcon {\n cursor: pointer;\n}\n\n.input--onfocus {\n background-color: var(--surface-surface-3-color);\n}\n\n.input--onfocus .input {\n background-color: var(--surface-surface-3-color);\n}\n",".overlay {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(0, 0, 0, 0.5);\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 1;\n box-sizing: border-box;\n}\n\n.contentWrap {\n background: var(--page-color-background-white);\n border-radius: 16px;\n height: fit-content;\n animation: flyDawn 1s;\n}\n\n.largeVariant {\n width: 1052px;\n}\n\n.smallVariant {\n width: 400px;\n}\n\n.contentHeader {\n position: relative;\n display: flex;\n justify-content: space-between;\n align-items: center;\n align-self: stretch;\n padding: 12px 16px;\n}\n\n.title {\n color: var(--text-primary);\n}\n\n@keyframes flyDawn {\n from {\n transform: translateY(-1000px);\n opacity: 0.1;\n }\n to {\n transform: translateY(0);\n opacity: 1;\n }\n}\n",".radio {\n display: flex;\n align-items: center;\n cursor: pointer;\n}\n\n.radio input {\n display: none;\n}\n\n.radioBtn {\n position: relative;\n height: 15px;\n width: 15px;\n border-radius: 50%;\n border: 2px solid var(--button-secondary-on-hover);\n margin: 10px;\n transition: background 0.3s;\n}\n\n.radioBtn::after {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n height: 10px;\n width: 10px;\n background: var(--button-primary-default);\n border-radius: 50%;\n transform: scale(0) translate(-50%, -50%);\n transition: transform 0.3s;\n}\n\ninput:checked + .radioBtn::after {\n transform: scale(1) translate(-50%, -50%);\n}\n\ninput:checked + .radioBtn {\n border: 2px solid var(--button-primary-default);\n}\n\n.radioBtnText {\n padding-left: 10px;\n width: fit-content;\n}\n",".wrap {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n padding: 4px;\n width: 32px;\n height: 16px;\n border-radius: 40px;\n background: var(--leaf);\n}\n\n.wrapLock {\n justify-content: flex-start;\n background: var(--surface-surface-3-color);\n}\n\n.round {\n width: 16px;\n height: 16px;\n background: var(--surface-surface-2);\n border-radius: 100px;\n}\n",".selectContainer {\n display: flex;\n height: 56px;\n justify-content: space-between;\n align-items: center;\n background-color: var(--surface-surface-1);\n border-radius: 8px;\n padding: 8px 16px;\n}\n\n.label {\n display: flex;\n color: var(--text-secondary);\n}\n\n.errorLabel {\n display: flex;\n color: var(--icon-error-color);\n}\n\n.selectText {\n display: flex;\n color: var(--text-primary);\n}\n"],"mappings":"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","names":[]}
|
package/dist/index.d.mts
ADDED
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import React__default, { JSX, Dispatch, SetStateAction, HTMLInputTypeAttribute } from 'react';
|
|
3
|
+
|
|
4
|
+
type TFontClass = "Heading1" | "Heading3" | "Subtitles3" | "Body1Medium" | "Body1Regular" | "Body2Medium" | "Body2Regular" | "Body3Regular" | "Caption1Medium" | "Caption1Regular" | "Caption1Semibold" | "Caption2Medium" | "Caption2Regular";
|
|
5
|
+
interface ITypographyProps extends React__default.HTMLAttributes<HTMLElement> {
|
|
6
|
+
tag: keyof JSX.IntrinsicElements | React__default.JSXElementConstructor<any>;
|
|
7
|
+
fontClass: TFontClass;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
interface ISelectBoxProps {
|
|
11
|
+
labelText?: string;
|
|
12
|
+
setIsOpen: Dispatch<React__default.SetStateAction<boolean>>;
|
|
13
|
+
disabled: boolean;
|
|
14
|
+
error?: boolean;
|
|
15
|
+
modalValue?: string;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
interface IRadioToggleProps {
|
|
19
|
+
lock: boolean;
|
|
20
|
+
setLock: Dispatch<SetStateAction<boolean>>;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
interface IModalProps {
|
|
24
|
+
open: boolean;
|
|
25
|
+
children: JSX.Element;
|
|
26
|
+
setOpen: Dispatch<React__default.SetStateAction<boolean>>;
|
|
27
|
+
headerTitle?: string;
|
|
28
|
+
variant: "large" | "small";
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
interface IInputFieldProps extends React__default.DetailedHTMLProps<React__default.InputHTMLAttributes<HTMLInputElement>, HTMLInputElement> {
|
|
32
|
+
onFocus?: () => void;
|
|
33
|
+
onBlur?: () => void;
|
|
34
|
+
onEnterPress?: (event: React__default.KeyboardEvent<HTMLInputElement>) => void;
|
|
35
|
+
onChange?: (event: React__default.ChangeEvent<HTMLInputElement>) => void;
|
|
36
|
+
value?: string;
|
|
37
|
+
placeholder?: string;
|
|
38
|
+
className?: string;
|
|
39
|
+
style?: React__default.CSSProperties;
|
|
40
|
+
isClearable?: boolean;
|
|
41
|
+
inputLeftIcon?: JSX.Element;
|
|
42
|
+
type?: HTMLInputTypeAttribute;
|
|
43
|
+
id: string;
|
|
44
|
+
labelText?: string;
|
|
45
|
+
ariaLabel: string;
|
|
46
|
+
focused?: boolean;
|
|
47
|
+
setFocused?: (val: boolean) => void;
|
|
48
|
+
readOnly?: boolean;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
interface RadioGroupItem {
|
|
52
|
+
label: string;
|
|
53
|
+
value: string;
|
|
54
|
+
}
|
|
55
|
+
interface ICustomRadioButtonProps {
|
|
56
|
+
label: string;
|
|
57
|
+
name: string;
|
|
58
|
+
checked: boolean;
|
|
59
|
+
onChange: (event: React__default.ChangeEvent<HTMLInputElement>) => void;
|
|
60
|
+
value: string;
|
|
61
|
+
}
|
|
62
|
+
interface IRadioGroupProps {
|
|
63
|
+
RadioGroupItems: RadioGroupItem[];
|
|
64
|
+
invokeCustomOnChange: (event: React__default.ChangeEvent<HTMLInputElement>) => void;
|
|
65
|
+
setSelectedOption: React__default.Dispatch<React__default.SetStateAction<string>>;
|
|
66
|
+
selectedOption: string;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
interface IButtonProps {
|
|
70
|
+
ariaLabel?: string;
|
|
71
|
+
onClick?: () => void;
|
|
72
|
+
children: React__default.ReactNode;
|
|
73
|
+
className?: string;
|
|
74
|
+
isRounded?: boolean;
|
|
75
|
+
disabled?: boolean;
|
|
76
|
+
variant?: "default" | "tinted" | "secondary";
|
|
77
|
+
size?: "mini" | "small" | "medium" | "large";
|
|
78
|
+
style?: React__default.CSSProperties;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
interface IAccordionProps {
|
|
82
|
+
open: boolean;
|
|
83
|
+
setOpen: Dispatch<React__default.SetStateAction<boolean>>;
|
|
84
|
+
children: React__default.ReactNode;
|
|
85
|
+
title: React__default.JSX.Element;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
declare const SystemDesign: {
|
|
89
|
+
Components: {
|
|
90
|
+
Accordion: ({ open, setOpen, children, title, }: IAccordionProps) => React.JSX.Element;
|
|
91
|
+
Button: ({ onClick, children, style, className, isRounded, disabled, variant, size, ariaLabel, }: IButtonProps) => React.JSX.Element;
|
|
92
|
+
CustomRadioButton: ({ label, name, checked, onChange, value, }: ICustomRadioButtonProps) => React.JSX.Element;
|
|
93
|
+
InputField: React.ForwardRefExoticComponent<Omit<IInputFieldProps, "ref"> & React.RefAttributes<HTMLInputElement>>;
|
|
94
|
+
Modal: ({ open, setOpen, children, headerTitle, variant, }: IModalProps) => React.JSX.Element | null;
|
|
95
|
+
RadioGroup: ({ RadioGroupItems, invokeCustomOnChange, setSelectedOption, selectedOption, }: IRadioGroupProps) => React.JSX.Element;
|
|
96
|
+
RadioToggle: ({ lock, setLock }: IRadioToggleProps) => React.JSX.Element;
|
|
97
|
+
SelectBoxButton: ({ setIsOpen, labelText, disabled, error, modalValue, }: ISelectBoxProps) => React.JSX.Element;
|
|
98
|
+
Typography: React.FC<ITypographyProps>;
|
|
99
|
+
};
|
|
100
|
+
};
|
|
101
|
+
|
|
102
|
+
export { SystemDesign as default };
|
|
@@ -1,7 +1,5 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
1
|
import * as React from 'react';
|
|
3
|
-
import React__default, { Dispatch, SetStateAction, HTMLInputTypeAttribute } from 'react';
|
|
4
|
-
import { TPeriodKeys, ICalendarPeriod, IStrictSelectedPeriod, IDateItem, TTimeUnit } from '~interfaces/Calendar';
|
|
2
|
+
import React__default, { JSX, Dispatch, SetStateAction, HTMLInputTypeAttribute } from 'react';
|
|
5
3
|
|
|
6
4
|
type TFontClass = "Heading1" | "Heading3" | "Subtitles3" | "Body1Medium" | "Body1Regular" | "Body2Medium" | "Body2Regular" | "Body3Regular" | "Caption1Medium" | "Caption1Regular" | "Caption1Semibold" | "Caption2Medium" | "Caption2Regular";
|
|
7
5
|
interface ITypographyProps extends React__default.HTMLAttributes<HTMLElement> {
|
|
@@ -68,36 +66,6 @@ interface IRadioGroupProps {
|
|
|
68
66
|
selectedOption: string;
|
|
69
67
|
}
|
|
70
68
|
|
|
71
|
-
interface IHeaderProps {
|
|
72
|
-
setSelectedPeriodInterval: Dispatch<SetStateAction<TPeriodKeys>>;
|
|
73
|
-
selectedPeriodInterval: TPeriodKeys;
|
|
74
|
-
selectedCalenderDate: ICalendarPeriod<string>;
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
interface IMainProps {
|
|
78
|
-
setSelectedPeriod: Dispatch<SetStateAction<IStrictSelectedPeriod>>;
|
|
79
|
-
selectedPeriod: IStrictSelectedPeriod;
|
|
80
|
-
setIsModalOpen: Dispatch<SetStateAction<boolean>>;
|
|
81
|
-
setSelectedRadioOption: Dispatch<SetStateAction<string>>;
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
interface IFooterProps {
|
|
85
|
-
selectedCalenderDate: ICalendarPeriod<string>;
|
|
86
|
-
setSelectedPeriod: Dispatch<SetStateAction<IStrictSelectedPeriod>>;
|
|
87
|
-
setIsModalOpen: Dispatch<SetStateAction<boolean>>;
|
|
88
|
-
setSelectedRadioOption: Dispatch<SetStateAction<string>>;
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
interface IBodyProps {
|
|
92
|
-
changeDate: IDateItem<(direction: number) => void>;
|
|
93
|
-
handleMouseDown: (e: React__default.MouseEvent, type: TTimeUnit) => void;
|
|
94
|
-
handleMouseUp: () => void;
|
|
95
|
-
selectedCalenderDate: ICalendarPeriod<string>;
|
|
96
|
-
selectedPeriodInterval: TPeriodKeys;
|
|
97
|
-
setDistanceTraveled: Dispatch<SetStateAction<number>>;
|
|
98
|
-
setInitialY: Dispatch<SetStateAction<number>>;
|
|
99
|
-
}
|
|
100
|
-
|
|
101
69
|
interface IButtonProps {
|
|
102
70
|
ariaLabel?: string;
|
|
103
71
|
onClick?: () => void;
|
|
@@ -105,8 +73,8 @@ interface IButtonProps {
|
|
|
105
73
|
className?: string;
|
|
106
74
|
isRounded?: boolean;
|
|
107
75
|
disabled?: boolean;
|
|
108
|
-
variant?:
|
|
109
|
-
size?:
|
|
76
|
+
variant?: "default" | "tinted" | "secondary";
|
|
77
|
+
size?: "mini" | "small" | "medium" | "large";
|
|
110
78
|
style?: React__default.CSSProperties;
|
|
111
79
|
}
|
|
112
80
|
|
|
@@ -121,18 +89,12 @@ declare const SystemDesign: {
|
|
|
121
89
|
Components: {
|
|
122
90
|
Accordion: ({ open, setOpen, children, title, }: IAccordionProps) => React.JSX.Element;
|
|
123
91
|
Button: ({ onClick, children, style, className, isRounded, disabled, variant, size, ariaLabel, }: IButtonProps) => React.JSX.Element;
|
|
124
|
-
Calendar: {
|
|
125
|
-
Body: ({ changeDate, handleMouseDown, handleMouseUp, selectedCalenderDate, selectedPeriodInterval, setDistanceTraveled, setInitialY, }: IBodyProps) => React.JSX.Element;
|
|
126
|
-
Footer: ({ selectedCalenderDate, setSelectedPeriod, setIsModalOpen, setSelectedRadioOption, }: IFooterProps) => React.JSX.Element;
|
|
127
|
-
Main: ({ setSelectedPeriod, selectedPeriod, setIsModalOpen, setSelectedRadioOption, }: IMainProps) => React.JSX.Element;
|
|
128
|
-
Header: ({ setSelectedPeriodInterval, selectedPeriodInterval, selectedCalenderDate, }: IHeaderProps) => React.JSX.Element;
|
|
129
|
-
};
|
|
130
92
|
CustomRadioButton: ({ label, name, checked, onChange, value, }: ICustomRadioButtonProps) => React.JSX.Element;
|
|
131
93
|
InputField: React.ForwardRefExoticComponent<Omit<IInputFieldProps, "ref"> & React.RefAttributes<HTMLInputElement>>;
|
|
132
94
|
Modal: ({ open, setOpen, children, headerTitle, variant, }: IModalProps) => React.JSX.Element | null;
|
|
133
95
|
RadioGroup: ({ RadioGroupItems, invokeCustomOnChange, setSelectedOption, selectedOption, }: IRadioGroupProps) => React.JSX.Element;
|
|
134
96
|
RadioToggle: ({ lock, setLock }: IRadioToggleProps) => React.JSX.Element;
|
|
135
|
-
SelectBoxButton: ({ setIsOpen, labelText, disabled, error, modalValue, }: ISelectBoxProps) => JSX.Element;
|
|
97
|
+
SelectBoxButton: ({ setIsOpen, labelText, disabled, error, modalValue, }: ISelectBoxProps) => React.JSX.Element;
|
|
136
98
|
Typography: React.FC<ITypographyProps>;
|
|
137
99
|
};
|
|
138
100
|
};
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";function e(e,t,a){if(t in e){Object.defineProperty(e,t,{value:a,enumerable:true,configurable:true,writable:true})}else{e[t]=a}return e}function t(t){for(var a=1;a<arguments.length;a++){var r=arguments[a]!=null?arguments[a]:{};var n=Object.keys(r);if(typeof Object.getOwnPropertySymbols==="function"){n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))}n.forEach(function(a){e(t,a,r[a])})}return t}function a(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}a.push.apply(a,r)}return a}function r(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{a(Object(t)).forEach(function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(t,a))})}return e}function n(e,t){if(e==null)return{};var a=l(e,t);var r,n;if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n<o.length;n++){r=o[n];if(t.indexOf(r)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(e,r))continue;a[r]=e[r]}}return a}function l(e,t){if(e==null)return{};var a={};var r=Object.keys(e);var n,l;for(l=0;l<r.length;l++){n=r[l];if(t.indexOf(n)>=0)continue;a[n]=e[n]}return a}function o(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}var i=Object.create;var d=Object.defineProperty;var c=Object.getOwnPropertyDescriptor;var u=Object.getOwnPropertyNames;var s=Object.getPrototypeOf,f=Object.prototype.hasOwnProperty;var v=function(e,t){for(var a in t)d(e,a,{get:t[a],enumerable:!0})},m=function(e,t,a,r){var n=true,l=false,i=undefined;if(t&&(typeof t==="undefined"?"undefined":o(t))=="object"||typeof t=="function")try{var s=function(){var n=m.value;!f.call(e,n)&&n!==a&&d(e,n,{get:function(){return t[n]},enumerable:!(r=c(t,n))||r.enumerable})};for(var v=u(t)[Symbol.iterator](),m;!(n=(m=v.next()).done);n=true)s()}catch(e){l=true;i=e}finally{try{if(!n&&v.return!=null){v.return()}}finally{if(l){throw i}}}return e};var p=function(e,t,a){return a=e!=null?i(s(e)):{},m(t||!e||!e.__esModule?d(a,"default",{value:e,enumerable:!0}):a,e)},b=function(e){return m(d({},"__esModule",{value:!0}),e)};var y={};v(y,{default:function(){return Q}});module.exports=b(y);var g=p(require("react"));var h={};var O=function(){for(var e=arguments.length,t=new Array(e),a=0;a<e;a++){t[a]=arguments[a]}return t.filter(function(e){return!!e}).join(" ")};var E=function(e){var t=e.open,a=e.setOpen,r=e.children,n=e.title;return g.default.createElement(g.default.Fragment,null,g.default.createElement("button",{"data-testid":"Accordion_BUTTON",className:h.accordionBtn,onClick:function(){a(!t)}},n,g.default.createElement("svg",{"data-testid":"Accordion_DIRECTION",xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",style:{transform:t?"rotate(0.5turn)":"none"}},g.default.createElement("path",{d:"M15.8346 7.5L10.0013 13.3333L4.16797 7.5",stroke:"#758393"}))),g.default.createElement("div",{"data-testid":"Accordion_CONTENT",className:O(h.accordionContent,!t&&h["accordionContent--hidden"])},r))};var w=p(require("react"));var N={};var C={};var T={mini:C.Caption2Medium,small:C.Caption1Medium,medium:C.Body2Medium,large:C.Body1Medium},_=function(e){var t=e.onClick,a=e.children,r=e.style,n=e.className,l=n===void 0?"":n,o=e.isRounded,i=o===void 0?!1:o,d=e.disabled,c=d===void 0?!1:d,u=e.variant,s=u===void 0?"default":u,f=e.size,v=f===void 0?"medium":f,m=e.ariaLabel,p=m===void 0?"Кнопка":m;return w.default.createElement("button",{"data-testid":"Button_MAIN","aria-label":p,disabled:c,"aria-disabled":c,onClick:t,className:O(N["btn--".concat(v)],T[v],i?N["btn-rounded--".concat(v)]:N["btn-square--".concat(v)],c?N["btn-".concat(s,"--disabled")]:N["btn-".concat(s)],N.button,l),style:r},a)};var B=p(require("react"));var R={};var j=p(require("react")),I=function(e){var a=e.fill,r=a===void 0?"none":a,l=e.pathFill,o=l===void 0?"#fff":l,i=e.width,d=i===void 0?20:i,c=e.height,u=c===void 0?20:c,s=n(e,["fill","pathFill","width","height"]);return j.default.createElement("svg",t({"data-testid":"Icons_CLEAR",xmlns:"http://www.w3.org/2000/svg",width:d,height:u,fill:r,viewBox:"0 0 20 20"},s),j.default.createElement("path",{fill:o,fillRule:"evenodd",d:"M10 18.333a8.333 8.333 0 100-16.666 8.333 8.333 0 000 16.666zM7.5 6.027L6.027 7.5l2.5 2.5-2.5 2.5L7.5 13.973l2.5-2.5 2.5 2.5 1.473-1.473-2.5-2.5 2.5-2.5L12.5 6.027l-2.5 2.5-2.5-2.5z",clipRule:"evenodd"}))};var L=(0,B.forwardRef)(function(e,t){var a=e.onFocus,r=e.onBlur,n=e.onChange,l=e.onEnterPress,o=e.value,i=o===void 0?"":o,d=e.inputLeftIcon,c=e.placeholder,u=c===void 0?"":c,s=e.className,f=s===void 0?"":s,v=e.style,m=e.isClearable,p=m===void 0?!1:m,b=e.type,y=b===void 0?"text":b,g=e.id,h=e.labelText,E=h===void 0?"":h,w=e.ariaLabel,N=w===void 0?"":w,C=e.focused,T=C===void 0?!1:C,_=e.setFocused,j=_===void 0?function(){}:_,L=e.readOnly,P=L===void 0?!1:L;var M=function(){n&&n({target:{value:""}})},k=function(){j(!0),a&&a()},x=function(){j(!1),r&&r()},A=function(e){l&&e.key==="Enter"&&l(e)};return B.default.createElement("div",{"data-testid":"InputField_MAIN",className:O(R[E.length?"inputContainerLabeled":"inputContainer"],T?R["input--onfocus"]:void 0,R["input-".concat(y===null||y===void 0?void 0:y.toLocaleLowerCase())],f),style:v},E.length>0&&B.default.createElement("label",{htmlFor:g,"data-testid":"InputField_LABEL"},E),d,B.default.createElement("input",{ref:t,"data-testid":"InputField_INPUT","aria-label":N,id:g,type:y,className:R.input,placeholder:u,"aria-placeholder":u,onFocus:k,onBlur:x,onChange:n,onKeyDown:A,value:i,readOnly:P}),p&&i&&B.default.createElement(I,{fill:"red",pathFill:"#758393",className:R.clearIcon,onClick:M}))});var P=p(require("react")),M=p(require("@egov3/graphics"));var k={};var x=function(e){var t=e.open,a=e.setOpen,r=e.children,n=e.headerTitle,l=e.variant;return t?P.default.createElement("div",{"data-testid":"Modal_OVERLAY",className:k.overlay},P.default.createElement("div",{"data-testid":"Modal_WRAPPER",className:O(k.contentWrap,k["".concat(l,"Variant")])},n&&n.length>0&&P.default.createElement("div",{"data-testid":"Modal_HEADER",className:k.contentHeader},P.default.createElement(Y.Typography,{tag:"h3",fontClass:"Body1Medium","data-testid":"Modal_TITLE",className:k.title},n),P.default.createElement("button",{"data-testid":"ModalHeader_BTN",onClick:function(){a(!t)}},P.default.createElement(M.default.General.Close,{"data-testid":"Modal_ICON"}))),r)):null};var A=p(require("react"));var S={};var D=function(e){var t=e.label,a=e.name,r=e.checked,n=e.onChange,l=e.value;return A.default.createElement("label",{"data-testid":"RadioGroupItem_LABEL",className:S.radio},A.default.createElement("input",{"data-testid":"RadioGroupItem_INPUT",value:l,type:"radio",name:a,checked:r,onChange:n}),A.default.createElement("span",{"data-testid":"RadioGroupItem_RADIO",className:S.radioBtn}),A.default.createElement("span",{"data-testid":"RadioGroupItem_TEXT",className:O(S.radioBtnText,C.Body2Regular)},t))},F=function(e){var t=e.RadioGroupItems,a=e.invokeCustomOnChange,r=e.setSelectedOption,n=e.selectedOption;var l=function(e){r(e.target.value),a(e)};return A.default.createElement("fieldset",{"data-testid":"RadioGroup_FIELDSET"},t.map(function(e){return A.default.createElement(D,{key:e.label,label:e.label,name:"radio",checked:n===e.value,onChange:l,value:e.value})}))};var q=p(require("react"));var G={};var U=function(e){var t=e.lock,a=e.setLock;return q.default.createElement("button",{"data-testid":"RadioToggle_BUTTON","aria-pressed":t,"aria-label":"Кнопка переключения",onClick:function(){a(!t)}},q.default.createElement("div",{"data-testid":"RadioToggle_WRAP",className:O(G.wrap,t&&G.wrapLock)},q.default.createElement("div",{"data-testid":"RadioToggle_ROUND",className:G.round})))};var V=p(require("react")),z=p(require("@egov3/graphics"));var H={};var W=function(e){var t=e.setIsOpen,a=e.labelText,r=e.disabled,n=e.error,l=e.modalValue;return V.default.createElement("button",{"data-testid":"SelectBoxModal_BUTTON",className:H.selectContainer,onClick:function(){return!r&&t(!0)}},V.default.createElement("div",{"data-testid":"SelectBoxModal_TITLE"},V.default.createElement(Y.Typography,{tag:"label",fontClass:"Caption1Regular","data-testid":"SelectBoxModal_LABEL",className:n?H.errorLabel:H.label,"aria-label":a},a),l&&l.length>0&&V.default.createElement(Y.Typography,{tag:"div",fontClass:"Body2Regular","data-testid":"SelectBoxModal_VALUE",className:H.selectText,"aria-label":l},l)),V.default.createElement(z.default.Basic.ChevronDownSmall,{"aria-label":"кнопка развернуть",fill:"#758393",className:H.clearIcon}))};var K=p(require("react"));var X=function(e){var a=e.tag,l=e.fontClass,o=e.className,i=e.children,d=e.style,c=n(e,["tag","fontClass","className","children","style"]);return K.default.createElement(a,r(t({},c),{className:O(l?C[l]:"",o),style:d}),i)};var Y={Accordion:E,Button:_,CustomRadioButton:D,InputField:L,Modal:x,RadioGroup:F,RadioToggle:U,SelectBoxButton:W,Typography:X};var J={Components:Y},Q=J;//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/system-design/system-design/dist/index.js","../src/index.ts","../src/components/Accordion/index.tsx","../src/components/Accordion/Accordion.module.css","../src/utils/joinClasses.tsx","../src/components/Button/index.tsx","../src/components/Button/button.module.css","../src/styles/typography.module.css","../src/components/InputField/index.tsx","../src/components/InputField/InputField.module.css","../src/svg/ClearIcon.tsx","../src/components/Modal/index.tsx","../src/components/Modal/Modal.module.css","../src/components/RadioGroup/index.tsx","../src/components/RadioGroup/RadioGroup.module.css","../src/components/RadioToggle/index.tsx","../src/components/RadioToggle/RadioToggle.module.css","../src/components/SelectBoxButton/index.tsx","../src/components/SelectBoxButton/SelectBoxButton.module.css","../src/components/Typography/index.tsx","../src/components/index.ts"],"names":["nt","Object","create","C","defineProperty","at","getOwnPropertyDescriptor","rt","getOwnPropertyNames","it","getPrototypeOf","lt","prototype","hasOwnProperty","st","t","e","o","get","enumerable","H","a","n","call","l","__esModule","value","dt","index_exports","__export","default","index_default","module","exports","__toCommonJS","import_react","require","Accordion_default","joinClasses","args","filter","item","join","Accordion","open","setOpen","children","title","d","React","createElement","Fragment","className","accordionBtn","onClick","xmlns","width","height","viewBox","fill","style","transform","stroke","accordionContent","button_default","typography_default","btnTypography","mini","Caption2Medium","small","Caption1Medium","medium","Body2Medium","large","Body1Medium","Button","isRounded","disabled","variant","size","ariaLabel","D","button","InputField_default","ClearIcon","pathFill","props","S","fillRule","clipRule","InputField","c","forwardRef","ref","onFocus","onBlur","onChange","onEnterPress","inputLeftIcon","placeholder","isClearable","type","id","labelText","focused","setFocused","readOnly","handleClear","target","handleFocus","handleBlur","handleKeyDown","event","key","length","toLocaleLowerCase","htmlFor","input","onKeyDown","clearIcon","import_graphics","Modal_default","Modal","headerTitle","u","overlay","contentWrap","contentHeader","Components","Typography","tag","fontClass","j","Icons","General","Close","RadioGroup_default","CustomRadioButton","label","name","checked","f","radio","radioBtn","radioBtnText","Body2Regular","RadioGroup","RadioGroupItems","invokeCustomOnChange","setSelectedOption","selectedOption","handleChange","map","RadioToggle_default","RadioToggle","lock","setLock","w","wrap","wrapLock","round","SelectBoxButton_default","SelectBoxButton","setIsOpen","error","modalValue","x","selectContainer","errorLabel","selectText","J","Basic","ChevronDownSmall","restProps","$","SystemDesign"],"mappings":"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","sourcesContent":["\"use strict\";var nt=Object.create;var C=Object.defineProperty;var at=Object.getOwnPropertyDescriptor;var rt=Object.getOwnPropertyNames;var it=Object.getPrototypeOf,lt=Object.prototype.hasOwnProperty;var st=(t,e)=>{for(var o in e)C(t,o,{get:e[o],enumerable:!0})},H=(t,e,o,a)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let n of rt(e))!lt.call(t,n)&&n!==o&&C(t,n,{get:()=>e[n],enumerable:!(a=at(e,n))||a.enumerable});return t};var l=(t,e,o)=>(o=t!=null?nt(it(t)):{},H(e||!t||!t.__esModule?C(o,\"default\",{value:t,enumerable:!0}):o,t)),dt=t=>H(C({},\"__esModule\",{value:!0}),t);var Ct={};st(Ct,{default:()=>vt});module.exports=dt(Ct);var d=l(require(\"react\"));var I={};var i=(...t)=>t.filter(e=>!!e).join(\" \");var _=({open:t,setOpen:e,children:o,title:a})=>d.default.createElement(d.default.Fragment,null,d.default.createElement(\"button\",{\"data-testid\":\"Accordion_BUTTON\",className:I.accordionBtn,onClick:()=>{e(!t)}},a,d.default.createElement(\"svg\",{\"data-testid\":\"Accordion_DIRECTION\",xmlns:\"http://www.w3.org/2000/svg\",width:\"20\",height:\"20\",viewBox:\"0 0 20 20\",fill:\"none\",style:{transform:t?\"rotate(0.5turn)\":\"none\"}},d.default.createElement(\"path\",{d:\"M15.8346 7.5L10.0013 13.3333L4.16797 7.5\",stroke:\"#758393\"}))),d.default.createElement(\"div\",{\"data-testid\":\"Accordion_CONTENT\",className:i(I.accordionContent,!t&&I[\"accordionContent--hidden\"])},o));var D=l(require(\"react\"));var p={};var s={};var mt={mini:s.Caption2Medium,small:s.Caption1Medium,medium:s.Body2Medium,large:s.Body1Medium},O=({onClick:t,children:e,style:o,className:a=\"\",isRounded:n=!1,disabled:r=!1,variant:v=\"default\",size:g=\"medium\",ariaLabel:R=\"\\u041A\\u043D\\u043E\\u043F\\u043A\\u0430\"})=>D.default.createElement(\"button\",{\"data-testid\":\"Button_MAIN\",\"aria-label\":R,disabled:r,\"aria-disabled\":r,onClick:t,className:i(p[`btn--${g}`],mt[g],n?p[`btn-rounded--${g}`]:p[`btn-square--${g}`],r?p[`btn-${v}--disabled`]:p[`btn-${v}`],p.button,a),style:o},e);var c=l(require(\"react\"));var b={};var S=l(require(\"react\")),k=({fill:t=\"none\",pathFill:e=\"#fff\",width:o=20,height:a=20,...n})=>S.default.createElement(\"svg\",{\"data-testid\":\"Icons_CLEAR\",xmlns:\"http://www.w3.org/2000/svg\",width:o,height:a,fill:t,viewBox:\"0 0 20 20\",...n},S.default.createElement(\"path\",{fill:e,fillRule:\"evenodd\",d:\"M10 18.333a8.333 8.333 0 100-16.666 8.333 8.333 0 000 16.666zM7.5 6.027L6.027 7.5l2.5 2.5-2.5 2.5L7.5 13.973l2.5-2.5 2.5 2.5 1.473-1.473-2.5-2.5 2.5-2.5L12.5 6.027l-2.5 2.5-2.5-2.5z\",clipRule:\"evenodd\"}));var F=(0,c.forwardRef)(({onFocus:t,onBlur:e,onChange:o,onEnterPress:a,value:n=\"\",inputLeftIcon:r,placeholder:v=\"\",className:g=\"\",style:R,isClearable:q=!1,type:L=\"text\",id:N,labelText:M=\"\",ariaLabel:K=\"\",focused:W=!1,setFocused:A=()=>{},readOnly:Y=!1},Q)=>{let Z=()=>{o&&o({target:{value:\"\"}})},tt=()=>{A(!0),t&&t()},et=()=>{A(!1),e&&e()},ot=P=>{a&&P.key===\"Enter\"&&a(P)};return c.default.createElement(\"div\",{\"data-testid\":\"InputField_MAIN\",className:i(b[M.length?\"inputContainerLabeled\":\"inputContainer\"],W?b[\"input--onfocus\"]:void 0,b[`input-${L?.toLocaleLowerCase()}`],g),style:R},M.length>0&&c.default.createElement(\"label\",{htmlFor:N,\"data-testid\":\"InputField_LABEL\"},M),r,c.default.createElement(\"input\",{ref:Q,\"data-testid\":\"InputField_INPUT\",\"aria-label\":K,id:N,type:L,className:b.input,placeholder:v,\"aria-placeholder\":v,onFocus:tt,onBlur:et,onChange:o,onKeyDown:ot,value:n,readOnly:Y}),q&&n&&c.default.createElement(k,{fill:\"red\",pathFill:\"#758393\",className:b.clearIcon,onClick:Z}))});var u=l(require(\"react\")),j=l(require(\"@egov3/graphics\"));var y={};var G=({open:t,setOpen:e,children:o,headerTitle:a,variant:n})=>t?u.default.createElement(\"div\",{\"data-testid\":\"Modal_OVERLAY\",className:y.overlay},u.default.createElement(\"div\",{\"data-testid\":\"Modal_WRAPPER\",className:i(y.contentWrap,y[`${n}Variant`])},a&&a.length>0&&u.default.createElement(\"div\",{\"data-testid\":\"Modal_HEADER\",className:y.contentHeader},u.default.createElement(m.Typography,{tag:\"h3\",fontClass:\"Body1Medium\",\"data-testid\":\"Modal_TITLE\",className:y.title},a),u.default.createElement(\"button\",{\"data-testid\":\"ModalHeader_BTN\",onClick:()=>{e(!t)}},u.default.createElement(j.default.General.Close,{\"data-testid\":\"Modal_ICON\"}))),o)):null;var f=l(require(\"react\"));var B={};var E=({label:t,name:e,checked:o,onChange:a,value:n})=>f.default.createElement(\"label\",{\"data-testid\":\"RadioGroupItem_LABEL\",className:B.radio},f.default.createElement(\"input\",{\"data-testid\":\"RadioGroupItem_INPUT\",value:n,type:\"radio\",name:e,checked:o,onChange:a}),f.default.createElement(\"span\",{\"data-testid\":\"RadioGroupItem_RADIO\",className:B.radioBtn}),f.default.createElement(\"span\",{\"data-testid\":\"RadioGroupItem_TEXT\",className:i(B.radioBtnText,s.Body2Regular)},t)),z=({RadioGroupItems:t,invokeCustomOnChange:e,setSelectedOption:o,selectedOption:a})=>{let n=r=>{o(r.target.value),e(r)};return f.default.createElement(\"fieldset\",{\"data-testid\":\"RadioGroup_FIELDSET\"},t.map(r=>f.default.createElement(E,{key:r.label,label:r.label,name:\"radio\",checked:a===r.value,onChange:n,value:r.value})))};var w=l(require(\"react\"));var T={};var X=({lock:t,setLock:e})=>w.default.createElement(\"button\",{\"data-testid\":\"RadioToggle_BUTTON\",\"aria-pressed\":t,\"aria-label\":\"\\u041A\\u043D\\u043E\\u043F\\u043A\\u0430 \\u043F\\u0435\\u0440\\u0435\\u043A\\u043B\\u044E\\u0447\\u0435\\u043D\\u0438\\u044F\",onClick:()=>{e(!t)}},w.default.createElement(\"div\",{\"data-testid\":\"RadioToggle_WRAP\",className:i(T.wrap,t&&T.wrapLock)},w.default.createElement(\"div\",{\"data-testid\":\"RadioToggle_ROUND\",className:T.round})));var x=l(require(\"react\")),J=l(require(\"@egov3/graphics\"));var h={};var U=({setIsOpen:t,labelText:e,disabled:o,error:a,modalValue:n})=>x.default.createElement(\"button\",{\"data-testid\":\"SelectBoxModal_BUTTON\",className:h.selectContainer,onClick:()=>!o&&t(!0)},x.default.createElement(\"div\",{\"data-testid\":\"SelectBoxModal_TITLE\"},x.default.createElement(m.Typography,{tag:\"label\",fontClass:\"Caption1Regular\",\"data-testid\":\"SelectBoxModal_LABEL\",className:a?h.errorLabel:h.label,\"aria-label\":e},e),n&&n.length>0&&x.default.createElement(m.Typography,{tag:\"div\",fontClass:\"Body2Regular\",\"data-testid\":\"SelectBoxModal_VALUE\",className:h.selectText,\"aria-label\":n},n)),x.default.createElement(J.default.Basic.ChevronDownSmall,{\"aria-label\":\"\\u043A\\u043D\\u043E\\u043F\\u043A\\u0430 \\u0440\\u0430\\u0437\\u0432\\u0435\\u0440\\u043D\\u0443\\u0442\\u044C\",fill:\"#758393\",className:h.clearIcon}));var $=l(require(\"react\"));var V=({tag:t,fontClass:e,className:o,children:a,style:n,...r})=>$.default.createElement(t,{...r,className:i(e?s[e]:\"\",o),style:n},a);var m={Accordion:_,Button:O,CustomRadioButton:E,InputField:F,Modal:G,RadioGroup:z,RadioToggle:X,SelectBoxButton:U,Typography:V};var xt={Components:m},vt=xt;\n","import { Components } from \"./components\";\n\nconst SystemDesign = {\n Components\n} \n\nexport default SystemDesign","import React, { Dispatch } from \"react\";\n\nimport styles from \"./Accordion.module.css\";\nimport { joinClasses } from \"~utils/joinClasses\";\n\nexport interface IAccordionProps {\n open: boolean;\n setOpen: Dispatch<React.SetStateAction<boolean>>;\n children: React.ReactNode;\n title: React.JSX.Element;\n}\n\nexport const Accordion = ({\n open,\n setOpen,\n children,\n title,\n}: IAccordionProps) => {\n return (\n <>\n <button\n data-testid=\"Accordion_BUTTON\"\n className={styles.accordionBtn}\n onClick={() => {\n setOpen(!open);\n }}\n >\n {title}\n <svg\n data-testid=\"Accordion_DIRECTION\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n style={{\n transform: !open ? \"none\" : \"rotate(0.5turn)\",\n }}\n >\n <path d=\"M15.8346 7.5L10.0013 13.3333L4.16797 7.5\" stroke=\"#758393\" />\n </svg>\n </button>\n <div\n data-testid=\"Accordion_CONTENT\"\n className={joinClasses(\n styles.accordionContent,\n !open && styles[`accordionContent--hidden`]\n )}\n >\n {children}\n </div>\n </>\n );\n};\n",".accordionBtn {\n border-radius: inherit;\n width: 100%;\n text-align: left;\n\n display: flex;\n justify-content: space-between;\n cursor: pointer;\n}\n\n.accordionContent {\n max-height: 1000px;\n overflow: hidden;\n transition: all 0.3s ease-in-out;\n}\n\n.accordionContent--hidden {\n max-height: 0;\n}\n","export const joinClasses = (...args: unknown[]) =>\n args.filter((item) => !!item).join(\" \");\n","import React from \"react\";\n\nimport { joinClasses } from \"~utils/joinClasses\";\n\nimport styles from \"./button.module.css\";\nimport typography from \"~styles/typography.module.css\";\n\nconst btnTypography = {\n mini: typography.Caption2Medium,\n small: typography.Caption1Medium,\n medium: typography.Body2Medium,\n large: typography.Body1Medium,\n};\n\nexport interface IButtonProps {\n ariaLabel?: string;\n onClick?: () => void;\n children: React.ReactNode;\n className?: string;\n isRounded?: boolean;\n disabled?: boolean;\n variant?: \"default\" | \"tinted\" | \"secondary\";\n size?: \"mini\" | \"small\" | \"medium\" | \"large\";\n style?: React.CSSProperties;\n}\n\nexport const Button = ({\n onClick,\n children,\n style,\n className = \"\",\n isRounded = false,\n disabled = false,\n variant = \"default\",\n size = \"medium\",\n ariaLabel = \"Кнопка\",\n}: IButtonProps) => (\n <button\n data-testid=\"Button_MAIN\"\n aria-label={ariaLabel}\n disabled={disabled}\n aria-disabled={disabled}\n onClick={onClick}\n className={joinClasses(\n styles[`btn--${size}`],\n btnTypography[size],\n isRounded\n ? styles[`btn-rounded--${size}`]\n : styles[`btn-square--${size}`],\n disabled ? styles[`btn-${variant}--disabled`] : styles[`btn-${variant}`],\n styles.button,\n className\n )}\n style={style}\n >\n {children}\n </button>\n);\n",".button {\n border: none;\n transition: background-color 0.2s ease;\n\n display: inline-flex;\n justify-content: center;\n align-items: center;\n cursor: pointer;\n}\n\n.btn-default {\n color: var(--default-white-color);\n background-color: var(--default-primary-accent);\n}\n\n.btn-default--disabled {\n color: var(--text-disabled-color);\n background-color: var(--button-disabled-default-color);\n}\n\n.btn-tinted {\n color: var(--text-accent);\n background-color: var(--button-tinted-default-color);\n}\n\n.btn-tinted--disabled {\n color: var(--text-disabled-accent-color);\n background-color: var(--button-tinted-default-color);\n}\n\n.btn-secondary {\n color: var(--text-primary);\n background-color: var(--surface-surface-3-color);\n}\n\n.btn-secondary--disabled {\n color: var(--text-secondary);\n background-color: var(--surface-surface-3-color);\n}\n\n.btn-default:hover {\n background-color: var(--button-primary-on-hover-color);\n}\n\n.btn-tinted:hover {\n background-color: var(--button-tinted-on-hover-color);\n}\n\n.btn-secondary:hover {\n background-color: var(--button-secondary-on-hover);\n}\n\n.btn--mini {\n gap: 4px;\n padding: 6px 12px;\n}\n\n.btn--small {\n gap: 8px;\n padding: 8px 16px;\n}\n\n.btn--medium {\n gap: 8px;\n padding: 8px 20px;\n}\n\n.btn--large {\n gap: 8px;\n padding: 14px 24px;\n}\n\n.btn-square--mini {\n border-radius: 4px;\n}\n\n.btn-square--small {\n border-radius: 6px;\n}\n\n.btn-square--medium {\n border-radius: 10px;\n}\n\n.btn-square--large {\n border-radius: 12px;\n}\n\n.btn-rounded--mini {\n border-radius: 32px;\n}\n\n.btn-rounded--small {\n border-radius: 32px;\n}\n\n.btn-rounded--medium {\n border-radius: 32px;\n}\n\n.btn-rounded--large {\n border-radius: 40px;\n}\n","/* Headings/Heading 1 */\n.Heading1 {\n font-family: Inter;\n font-size: 32px;\n font-style: normal;\n font-weight: 600;\n line-height: 36px; /* 112.5% */\n letter-spacing: -0.32px;\n}\n\n/* Headings/Heading 3 */\n.Heading3 {\n font-family: Inter;\n font-size: 24px;\n font-style: normal;\n font-weight: 600;\n line-height: 28px; /* 116.667% */\n letter-spacing: -0.24px;\n}\n\n/* Subtitles/Subtitle 3 */\n.Subtitles3 {\n font-family: Inter;\n font-size: 16px;\n font-style: normal;\n font-weight: 600;\n line-height: 24px; /* 150% */\n}\n\n/* Body/Body 1, Medium */\n.Body1Medium {\n font-family: Inter;\n font-size: 16px;\n font-style: normal;\n font-weight: 500;\n line-height: 24px; /* 150% */\n}\n\n/* Body/Body 1, Regular */\n.Body1Regular {\n font-family: Inter;\n font-size: 16px;\n font-style: normal;\n font-weight: 400;\n line-height: 24px; /* 150% */\n}\n\n/* Body/Body 2, Medium */\n.Body2Medium {\n font-family: Inter;\n font-size: 14px;\n font-style: normal;\n font-weight: 500;\n line-height: 20px; /* 142.857% */\n}\n\n/* Body/Body 2, Regular */\n.Body2Regular {\n font-family: Inter;\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n line-height: 20px; /* 142.857% */\n}\n\n/* Body/Body 3, Regular */\n.Body3Regular {\n font-family: Inter;\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n line-height: 16px; /* 114.286% */\n}\n\n/* Caption/Caption 1, Medium */\n.Caption1Medium {\n font-family: Inter;\n font-size: 12px;\n font-style: normal;\n font-weight: 500;\n line-height: 16px; /* 133.333% */\n}\n\n/* Caption/Caption 1, Regular */\n.Caption1Regular {\n font-family: Inter;\n font-size: 12px;\n font-style: normal;\n font-weight: 400;\n line-height: 16px; /* 133.333% */\n}\n\n/* Caption/Caption 1, Semibold */\n.Caption1Semibold {\n font-family: Inter;\n font-size: 12px;\n font-style: normal;\n font-weight: 600;\n line-height: 16px; /* 133.333% */\n}\n\n/* Caption/Caption 2, Medium */\n.Caption2Medium {\n font-family: Inter;\n font-size: 10px;\n font-style: normal;\n font-weight: 500;\n line-height: 12px; /* 120% */\n}\n\n/* Caption/Caption 2, Regular */\n.Caption2Regular {\n font-family: Inter;\n font-size: 10px;\n font-style: normal;\n font-weight: 400;\n line-height: 12px; /* 120% */\n}\n","// InputField.tsx\nimport React, { forwardRef, HTMLInputTypeAttribute, JSX } from \"react\";\n\nimport { joinClasses } from \"~utils/joinClasses\";\n\nimport styles from \"./InputField.module.css\";\n\nimport { ClearIcon } from \"~svg\";\n\nexport type TOtpType = \"OTP\" | \"TEXT\";\n\nexport interface IInputFieldProps\n extends React.DetailedHTMLProps<\n React.InputHTMLAttributes<HTMLInputElement>,\n HTMLInputElement\n > {\n onFocus?: () => void;\n onBlur?: () => void;\n onEnterPress?: (event: React.KeyboardEvent<HTMLInputElement>) => void;\n onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;\n value?: string;\n placeholder?: string;\n className?: string;\n style?: React.CSSProperties;\n isClearable?: boolean;\n inputLeftIcon?: JSX.Element;\n type?: HTMLInputTypeAttribute;\n id: string;\n labelText?: string;\n ariaLabel: string;\n focused?: boolean;\n setFocused?: (val: boolean) => void;\n readOnly?: boolean;\n}\n\nexport const InputField = forwardRef<HTMLInputElement, IInputFieldProps>(\n (\n {\n onFocus,\n onBlur,\n onChange,\n onEnterPress,\n value = \"\",\n inputLeftIcon,\n placeholder = \"\",\n className = \"\",\n style,\n isClearable = false,\n type = \"text\",\n id,\n labelText = \"\",\n ariaLabel = \"\",\n focused = false,\n setFocused = () => {},\n readOnly = false,\n }: IInputFieldProps,\n ref\n ): JSX.Element => {\n const handleClear = () => {\n if (onChange) {\n onChange({\n target: { value: \"\" },\n } as React.ChangeEvent<HTMLInputElement>);\n }\n };\n const handleFocus = () => {\n setFocused(true);\n if (onFocus) onFocus();\n };\n const handleBlur = () => {\n setFocused(false);\n if (onBlur) onBlur();\n };\n const handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (onEnterPress && event.key === \"Enter\") {\n onEnterPress(event);\n }\n };\n\n return (\n <div\n data-testid=\"InputField_MAIN\"\n className={joinClasses(\n styles[labelText.length ? \"inputContainerLabeled\" : \"inputContainer\"],\n focused ? styles[`input--onfocus`] : undefined,\n styles[`input-${type?.toLocaleLowerCase()}`],\n className\n )}\n style={style}\n >\n {labelText.length > 0 && (\n <label htmlFor={id} data-testid=\"InputField_LABEL\">\n {labelText}\n </label>\n )}\n {inputLeftIcon}\n <input\n ref={ref}\n data-testid=\"InputField_INPUT\"\n aria-label={ariaLabel}\n id={id}\n type={type}\n className={styles.input}\n placeholder={placeholder}\n aria-placeholder={placeholder}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onChange={onChange}\n onKeyDown={handleKeyDown}\n value={value}\n readOnly={readOnly}\n />\n {isClearable && value && (\n <ClearIcon\n fill=\"red\"\n pathFill=\"#758393\"\n className={styles.clearIcon}\n onClick={handleClear}\n />\n )}\n </div>\n );\n }\n);\n",".input {\n width: 100%;\n border: none;\n background-color: var(--surface-surface-1);\n}\n\n.input:active,\n.input:focus {\n outline: none;\n}\n\n.input::placeholder {\n color: var(--text-disabled-color);\n}\n\n.input::-webkit-inner-spin-button,\n.input::-webkit-outer-spin-button {\n -webkit-appearance: none;\n margin: 0;\n}\n\n.clearIcon {\n cursor: pointer;\n}\n\n.input--onfocus {\n background-color: var(--surface-surface-3-color);\n}\n\n.input--onfocus .input {\n background-color: var(--surface-surface-3-color);\n}\n","import React from \"react\";\n\nexport const ClearIcon = ({\n fill = \"none\",\n pathFill = \"#fff\",\n width = 20,\n height = 20,\n ...props\n}: React.SVGProps<SVGSVGElement> & { pathFill?: string }) => {\n return (\n <svg\n data-testid=\"Icons_CLEAR\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width={width}\n height={height}\n fill={fill}\n viewBox=\"0 0 20 20\"\n {...props}\n >\n <path\n fill={pathFill}\n fillRule=\"evenodd\"\n d=\"M10 18.333a8.333 8.333 0 100-16.666 8.333 8.333 0 000 16.666zM7.5 6.027L6.027 7.5l2.5 2.5-2.5 2.5L7.5 13.973l2.5-2.5 2.5 2.5 1.473-1.473-2.5-2.5 2.5-2.5L12.5 6.027l-2.5 2.5-2.5-2.5z\"\n clipRule=\"evenodd\"\n ></path>\n </svg>\n );\n};\n","import React, { Dispatch, JSX } from \"react\";\nimport Icons from \"@egov3/graphics\";\n\nimport styles from \"./Modal.module.css\";\nimport { joinClasses } from \"~utils/joinClasses\";\nimport { Components } from \"~components\";\n\nexport interface IModalProps {\n open: boolean;\n children: JSX.Element;\n setOpen: Dispatch<React.SetStateAction<boolean>>;\n headerTitle?: string;\n variant: \"large\" | \"small\";\n}\n\nexport const Modal = ({\n open,\n setOpen,\n children,\n headerTitle,\n variant,\n}: IModalProps) => {\n if (open) {\n return (\n <div data-testid=\"Modal_OVERLAY\" className={styles.overlay}>\n <div\n data-testid=\"Modal_WRAPPER\"\n className={joinClasses(\n styles.contentWrap,\n styles[`${variant}Variant`]\n )}\n >\n {headerTitle && headerTitle.length > 0 && (\n <div data-testid=\"Modal_HEADER\" className={styles.contentHeader}>\n <Components.Typography\n tag=\"h3\"\n fontClass=\"Body1Medium\"\n data-testid=\"Modal_TITLE\"\n className={styles.title}\n >\n {headerTitle}\n </Components.Typography>\n <button\n data-testid=\"ModalHeader_BTN\"\n onClick={() => {\n setOpen(!open);\n }}\n >\n <Icons.General.Close data-testid=\"Modal_ICON\" />\n </button>\n </div>\n )}\n {children}\n </div>\n </div>\n );\n } else {\n return null;\n }\n};\n",".overlay {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(0, 0, 0, 0.5);\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 1;\n box-sizing: border-box;\n}\n\n.contentWrap {\n background: var(--page-color-background-white);\n border-radius: 16px;\n height: fit-content;\n animation: flyDawn 1s;\n}\n\n.largeVariant {\n width: 1052px;\n}\n\n.smallVariant {\n width: 400px;\n}\n\n.contentHeader {\n position: relative;\n display: flex;\n justify-content: space-between;\n align-items: center;\n align-self: stretch;\n padding: 12px 16px;\n}\n\n.title {\n color: var(--text-primary);\n}\n\n@keyframes flyDawn {\n from {\n transform: translateY(-1000px);\n opacity: 0.1;\n }\n to {\n transform: translateY(0);\n opacity: 1;\n }\n}\n","import React from \"react\";\nimport styles from \"./RadioGroup.module.css\";\nimport { joinClasses } from \"~utils/joinClasses\";\nimport typography from \"~styles/typography.module.css\";\n\nexport interface RadioGroupItem {\n label: string;\n value: string;\n}\n\nexport interface ICustomRadioButtonProps {\n label: string;\n name: string;\n checked: boolean;\n onChange: (event: React.ChangeEvent<HTMLInputElement>) => void;\n value: string;\n}\n\nexport interface IRadioGroupProps {\n RadioGroupItems: RadioGroupItem[];\n invokeCustomOnChange: (event: React.ChangeEvent<HTMLInputElement>) => void;\n setSelectedOption: React.Dispatch<React.SetStateAction<string>>;\n selectedOption: string;\n}\n\nexport const CustomRadioButton = ({\n label,\n name,\n checked,\n onChange,\n value,\n}: ICustomRadioButtonProps) => (\n <label data-testid=\"RadioGroupItem_LABEL\" className={styles.radio}>\n <input\n data-testid=\"RadioGroupItem_INPUT\"\n value={value}\n type=\"radio\"\n name={name}\n checked={checked}\n onChange={onChange}\n />\n <span data-testid=\"RadioGroupItem_RADIO\" className={styles.radioBtn}></span>\n <span\n data-testid=\"RadioGroupItem_TEXT\"\n className={joinClasses(styles.radioBtnText, typography.Body2Regular)}\n >\n {label}\n </span>\n </label>\n);\n\nexport const RadioGroup = ({\n RadioGroupItems,\n invokeCustomOnChange,\n setSelectedOption,\n selectedOption,\n}: IRadioGroupProps) => {\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n setSelectedOption(event.target.value);\n invokeCustomOnChange(event);\n };\n return (\n <fieldset data-testid=\"RadioGroup_FIELDSET\">\n {RadioGroupItems.map((item) => (\n <CustomRadioButton\n key={item.label}\n label={item.label}\n name=\"radio\"\n checked={selectedOption === item.value}\n onChange={handleChange}\n value={item.value}\n />\n ))}\n </fieldset>\n );\n};\n",".radio {\n display: flex;\n align-items: center;\n cursor: pointer;\n}\n\n.radio input {\n display: none;\n}\n\n.radioBtn {\n position: relative;\n height: 15px;\n width: 15px;\n border-radius: 50%;\n border: 2px solid var(--button-secondary-on-hover);\n margin: 10px;\n transition: background 0.3s;\n}\n\n.radioBtn::after {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n height: 10px;\n width: 10px;\n background: var(--button-primary-default);\n border-radius: 50%;\n transform: scale(0) translate(-50%, -50%);\n transition: transform 0.3s;\n}\n\ninput:checked + .radioBtn::after {\n transform: scale(1) translate(-50%, -50%);\n}\n\ninput:checked + .radioBtn {\n border: 2px solid var(--button-primary-default);\n}\n\n.radioBtnText {\n padding-left: 10px;\n width: fit-content;\n}\n","import React, { Dispatch, SetStateAction } from \"react\";\n\nimport { joinClasses } from \"~utils/joinClasses\";\n\nimport styles from \"./RadioToggle.module.css\";\n\nexport interface IRadioToggleProps {\n lock: boolean;\n setLock: Dispatch<SetStateAction<boolean>>;\n}\n\nexport const RadioToggle = ({ lock, setLock }: IRadioToggleProps) => (\n <button\n data-testid=\"RadioToggle_BUTTON\"\n aria-pressed={lock}\n aria-label=\"Кнопка переключения\"\n onClick={() => {\n setLock(!lock);\n }}\n >\n <div\n data-testid=\"RadioToggle_WRAP\"\n className={joinClasses(styles.wrap, lock && styles.wrapLock)}\n >\n <div data-testid=\"RadioToggle_ROUND\" className={styles.round}></div>\n </div>\n </button>\n);\n",".wrap {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n padding: 4px;\n width: 32px;\n height: 16px;\n border-radius: 40px;\n background: var(--leaf);\n}\n\n.wrapLock {\n justify-content: flex-start;\n background: var(--surface-surface-3-color);\n}\n\n.round {\n width: 16px;\n height: 16px;\n background: var(--surface-surface-2);\n border-radius: 100px;\n}\n","import React, { Dispatch, JSX } from \"react\";\nimport Icons from \"@egov3/graphics\";\n\nimport styles from \"./SelectBoxButton.module.css\";\nimport { Components } from \"~components\";\n\nexport interface ISelectBoxProps {\n labelText?: string;\n setIsOpen: Dispatch<React.SetStateAction<boolean>>;\n disabled: boolean;\n error?: boolean;\n modalValue?: string;\n}\n\nexport const SelectBoxButton = ({\n setIsOpen,\n labelText,\n disabled,\n error,\n modalValue,\n}: ISelectBoxProps): JSX.Element => (\n <button\n data-testid=\"SelectBoxModal_BUTTON\"\n className={styles.selectContainer}\n onClick={() => !disabled && setIsOpen(true)}\n >\n <div data-testid=\"SelectBoxModal_TITLE\">\n <Components.Typography\n tag=\"label\"\n fontClass=\"Caption1Regular\"\n data-testid=\"SelectBoxModal_LABEL\"\n className={error ? styles.errorLabel : styles.label}\n aria-label={labelText}\n >\n {labelText}\n </Components.Typography>\n {modalValue && modalValue.length > 0 && (\n <Components.Typography\n tag=\"div\"\n fontClass=\"Body2Regular\"\n data-testid=\"SelectBoxModal_VALUE\"\n className={styles.selectText}\n aria-label={modalValue}\n >\n {modalValue}\n </Components.Typography>\n )}\n </div>\n <Icons.Basic.ChevronDownSmall\n aria-label=\"кнопка развернуть\"\n fill=\"#758393\"\n className={styles.clearIcon}\n />\n </button>\n);\n",".selectContainer {\n display: flex;\n height: 56px;\n justify-content: space-between;\n align-items: center;\n background-color: var(--surface-surface-1);\n border-radius: 8px;\n padding: 8px 16px;\n}\n\n.label {\n display: flex;\n color: var(--text-secondary);\n}\n\n.errorLabel {\n display: flex;\n color: var(--icon-error-color);\n}\n\n.selectText {\n display: flex;\n color: var(--text-primary);\n}\n","// Typography.tsx\nimport React, { FC, JSX } from \"react\";\nimport { joinClasses } from \"~utils/joinClasses\";\n\nimport typography from \"~styles/typography.module.css\";\n\ntype TFontClass =\n | \"Heading1\"\n | \"Heading3\"\n | \"Subtitles3\"\n | \"Body1Medium\"\n | \"Body1Regular\"\n | \"Body2Medium\"\n | \"Body2Regular\"\n | \"Body3Regular\"\n | \"Caption1Medium\"\n | \"Caption1Regular\"\n | \"Caption1Semibold\"\n | \"Caption2Medium\"\n | \"Caption2Regular\";\n\nexport interface ITypographyProps extends React.HTMLAttributes<HTMLElement> {\n tag: keyof JSX.IntrinsicElements | React.JSXElementConstructor<any>;\n fontClass: TFontClass;\n}\n\nexport const Typography: FC<ITypographyProps> = ({\n tag,\n fontClass,\n className,\n children,\n style,\n ...restProps\n}) =>\n React.createElement(\n tag,\n {\n ...restProps,\n className: joinClasses(fontClass ? typography[fontClass] : \"\", className),\n style,\n },\n children\n );\n","import { Accordion } from \"./Accordion\";\nimport { Button } from \"./Button\";\nimport { InputField } from \"./InputField\";\nimport { Modal } from \"./Modal\";\nimport { CustomRadioButton, RadioGroup } from \"./RadioGroup\";\nimport { RadioToggle } from \"./RadioToggle\";\nimport { SelectBoxButton } from \"./SelectBoxButton\";\nimport { Typography } from \"./Typography\";\n\nexport const Components = {\n Accordion,\n Button,\n CustomRadioButton,\n InputField,\n Modal,\n RadioGroup,\n RadioToggle,\n SelectBoxButton,\n Typography,\n};\n\nexport { Button };\n"]}
|
package/dist/index.mjs
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e,t,a){if(t in e){Object.defineProperty(e,t,{value:a,enumerable:true,configurable:true,writable:true})}else{e[t]=a}return e}function t(t){for(var a=1;a<arguments.length;a++){var r=arguments[a]!=null?arguments[a]:{};var n=Object.keys(r);if(typeof Object.getOwnPropertySymbols==="function"){n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))}n.forEach(function(a){e(t,a,r[a])})}return t}function a(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}a.push.apply(a,r)}return a}function r(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{a(Object(t)).forEach(function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(t,a))})}return e}function n(e,t){if(e==null)return{};var a=o(e,t);var r,n;if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n<l.length;n++){r=l[n];if(t.indexOf(r)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(e,r))continue;a[r]=e[r]}}return a}function o(e,t){if(e==null)return{};var a={};var r=Object.keys(e);var n,o;for(o=0;o<r.length;o++){n=r[o];if(t.indexOf(n)>=0)continue;a[n]=e[n]}return a}import l from"react";var i={};var c=function(){for(var e=arguments.length,t=new Array(e),a=0;a<e;a++){t[a]=arguments[a]}return t.filter(function(e){return!!e}).join(" ")};var d=function(e){var t=e.open,a=e.setOpen,r=e.children,n=e.title;return l.createElement(l.Fragment,null,l.createElement("button",{"data-testid":"Accordion_BUTTON",className:i.accordionBtn,onClick:function(){a(!t)}},n,l.createElement("svg",{"data-testid":"Accordion_DIRECTION",xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",style:{transform:t?"rotate(0.5turn)":"none"}},l.createElement("path",{d:"M15.8346 7.5L10.0013 13.3333L4.16797 7.5",stroke:"#758393"}))),l.createElement("div",{"data-testid":"Accordion_CONTENT",className:c(i.accordionContent,!t&&i["accordionContent--hidden"])},r))};import s from"react";var u={};var m={};var v={mini:m.Caption2Medium,small:m.Caption1Medium,medium:m.Body2Medium,large:m.Body1Medium},p=function(e){var t=e.onClick,a=e.children,r=e.style,n=e.className,o=n===void 0?"":n,l=e.isRounded,i=l===void 0?!1:l,d=e.disabled,m=d===void 0?!1:d,p=e.variant,f=p===void 0?"default":p,b=e.size,g=b===void 0?"medium":b,h=e.ariaLabel,y=h===void 0?"Кнопка":h;return s.createElement("button",{"data-testid":"Button_MAIN","aria-label":y,disabled:m,"aria-disabled":m,onClick:t,className:c(u["btn--".concat(g)],v[g],i?u["btn-rounded--".concat(g)]:u["btn-square--".concat(g)],m?u["btn-".concat(f,"--disabled")]:u["btn-".concat(f)],u.button,o),style:r},a)};import f,{forwardRef as b}from"react";var g={};import h from"react";var y=function(e){var a=e.fill,r=a===void 0?"none":a,o=e.pathFill,l=o===void 0?"#fff":o,i=e.width,c=i===void 0?20:i,d=e.height,s=d===void 0?20:d,u=n(e,["fill","pathFill","width","height"]);return h.createElement("svg",t({"data-testid":"Icons_CLEAR",xmlns:"http://www.w3.org/2000/svg",width:c,height:s,fill:r,viewBox:"0 0 20 20"},u),h.createElement("path",{fill:l,fillRule:"evenodd",d:"M10 18.333a8.333 8.333 0 100-16.666 8.333 8.333 0 000 16.666zM7.5 6.027L6.027 7.5l2.5 2.5-2.5 2.5L7.5 13.973l2.5-2.5 2.5 2.5 1.473-1.473-2.5-2.5 2.5-2.5L12.5 6.027l-2.5 2.5-2.5-2.5z",clipRule:"evenodd"}))};var E=b(function(e,t){var a=e.onFocus,r=e.onBlur,n=e.onChange,o=e.onEnterPress,l=e.value,i=l===void 0?"":l,d=e.inputLeftIcon,s=e.placeholder,u=s===void 0?"":s,m=e.className,v=m===void 0?"":m,p=e.style,b=e.isClearable,h=b===void 0?!1:b,E=e.type,O=E===void 0?"text":E,C=e.id,N=e.labelText,w=N===void 0?"":N,T=e.ariaLabel,B=T===void 0?"":T,R=e.focused,I=R===void 0?!1:R,L=e.setFocused,_=L===void 0?function(){}:L,k=e.readOnly,M=k===void 0?!1:k;var j=function(){n&&n({target:{value:""}})},P=function(){_(!0),a&&a()},x=function(){_(!1),r&&r()},A=function(e){o&&e.key==="Enter"&&o(e)};return f.createElement("div",{"data-testid":"InputField_MAIN",className:c(g[w.length?"inputContainerLabeled":"inputContainer"],I?g["input--onfocus"]:void 0,g["input-".concat(O===null||O===void 0?void 0:O.toLocaleLowerCase())],v),style:p},w.length>0&&f.createElement("label",{htmlFor:C,"data-testid":"InputField_LABEL"},w),d,f.createElement("input",{ref:t,"data-testid":"InputField_INPUT","aria-label":B,id:C,type:O,className:g.input,placeholder:u,"aria-placeholder":u,onFocus:P,onBlur:x,onChange:n,onKeyDown:A,value:i,readOnly:M}),h&&i&&f.createElement(y,{fill:"red",pathFill:"#758393",className:g.clearIcon,onClick:j}))});import O from"react";import C from"@egov3/graphics";var N={};var w=function(e){var t=e.open,a=e.setOpen,r=e.children,n=e.headerTitle,o=e.variant;return t?O.createElement("div",{"data-testid":"Modal_OVERLAY",className:N.overlay},O.createElement("div",{"data-testid":"Modal_WRAPPER",className:c(N.contentWrap,N["".concat(o,"Variant")])},n&&n.length>0&&O.createElement("div",{"data-testid":"Modal_HEADER",className:N.contentHeader},O.createElement(F.Typography,{tag:"h3",fontClass:"Body1Medium","data-testid":"Modal_TITLE",className:N.title},n),O.createElement("button",{"data-testid":"ModalHeader_BTN",onClick:function(){a(!t)}},O.createElement(C.General.Close,{"data-testid":"Modal_ICON"}))),r)):null};import T from"react";var B={};var R=function(e){var t=e.label,a=e.name,r=e.checked,n=e.onChange,o=e.value;return T.createElement("label",{"data-testid":"RadioGroupItem_LABEL",className:B.radio},T.createElement("input",{"data-testid":"RadioGroupItem_INPUT",value:o,type:"radio",name:a,checked:r,onChange:n}),T.createElement("span",{"data-testid":"RadioGroupItem_RADIO",className:B.radioBtn}),T.createElement("span",{"data-testid":"RadioGroupItem_TEXT",className:c(B.radioBtnText,m.Body2Regular)},t))},I=function(e){var t=e.RadioGroupItems,a=e.invokeCustomOnChange,r=e.setSelectedOption,n=e.selectedOption;var o=function(e){r(e.target.value),a(e)};return T.createElement("fieldset",{"data-testid":"RadioGroup_FIELDSET"},t.map(function(e){return T.createElement(R,{key:e.label,label:e.label,name:"radio",checked:n===e.value,onChange:o,value:e.value})}))};import L from"react";var _={};var k=function(e){var t=e.lock,a=e.setLock;return L.createElement("button",{"data-testid":"RadioToggle_BUTTON","aria-pressed":t,"aria-label":"Кнопка переключения",onClick:function(){a(!t)}},L.createElement("div",{"data-testid":"RadioToggle_WRAP",className:c(_.wrap,t&&_.wrapLock)},L.createElement("div",{"data-testid":"RadioToggle_ROUND",className:_.round})))};import M from"react";import j from"@egov3/graphics";var P={};var x=function(e){var t=e.setIsOpen,a=e.labelText,r=e.disabled,n=e.error,o=e.modalValue;return M.createElement("button",{"data-testid":"SelectBoxModal_BUTTON",className:P.selectContainer,onClick:function(){return!r&&t(!0)}},M.createElement("div",{"data-testid":"SelectBoxModal_TITLE"},M.createElement(F.Typography,{tag:"label",fontClass:"Caption1Regular","data-testid":"SelectBoxModal_LABEL",className:n?P.errorLabel:P.label,"aria-label":a},a),o&&o.length>0&&M.createElement(F.Typography,{tag:"div",fontClass:"Body2Regular","data-testid":"SelectBoxModal_VALUE",className:P.selectText,"aria-label":o},o)),M.createElement(j.Basic.ChevronDownSmall,{"aria-label":"кнопка развернуть",fill:"#758393",className:P.clearIcon}))};import A from"react";var S=function(e){var a=e.tag,o=e.fontClass,l=e.className,i=e.children,d=e.style,s=n(e,["tag","fontClass","className","children","style"]);return A.createElement(a,r(t({},s),{className:c(o?m[o]:"",l),style:d}),i)};var F={Accordion:d,Button:p,CustomRadioButton:R,InputField:E,Modal:w,RadioGroup:I,RadioToggle:k,SelectBoxButton:x,Typography:S};var D={Components:F},G=D;export{G as default};//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/Accordion/index.tsx","../src/components/Accordion/Accordion.module.css","../src/utils/joinClasses.tsx","../src/components/Button/index.tsx","../src/components/Button/button.module.css","../src/styles/typography.module.css","../src/components/InputField/index.tsx","../src/components/InputField/InputField.module.css","../src/svg/ClearIcon.tsx","../src/components/Modal/index.tsx","../src/components/Modal/Modal.module.css","../src/components/RadioGroup/index.tsx","../src/components/RadioGroup/RadioGroup.module.css","../src/components/RadioToggle/index.tsx","../src/components/RadioToggle/RadioToggle.module.css","../src/components/SelectBoxButton/index.tsx","../src/components/SelectBoxButton/SelectBoxButton.module.css","../src/components/Typography/index.tsx","../src/components/index.ts","../src/index.ts"],"names":["React","Accordion_default","joinClasses","args","filter","item","join","Accordion","open","setOpen","children","title","createElement","Fragment","className","accordionBtn","onClick","xmlns","width","height","viewBox","fill","style","transform","d","stroke","accordionContent","button_default","typography_default","btnTypography","mini","Caption2Medium","small","Caption1Medium","medium","Body2Medium","large","Body1Medium","Button","isRounded","disabled","variant","size","ariaLabel","button","forwardRef","InputField_default","ClearIcon","pathFill","props","fillRule","clipRule","InputField","ref","onFocus","onBlur","onChange","onEnterPress","value","inputLeftIcon","placeholder","isClearable","type","id","labelText","focused","setFocused","readOnly","handleClear","target","handleFocus","handleBlur","handleKeyDown","event","key","length","toLocaleLowerCase","htmlFor","input","onKeyDown","clearIcon","Icons","Modal_default","Modal","headerTitle","overlay","contentWrap","contentHeader","Components","Typography","tag","fontClass","General","Close","RadioGroup_default","CustomRadioButton","label","name","checked","radio","radioBtn","radioBtnText","Body2Regular","RadioGroup","RadioGroupItems","invokeCustomOnChange","setSelectedOption","selectedOption","handleChange","map","RadioToggle_default","RadioToggle","lock","setLock","wrap","wrapLock","round","SelectBoxButton_default","SelectBoxButton","setIsOpen","error","modalValue","selectContainer","errorLabel","selectText","Basic","ChevronDownSmall","restProps","SystemDesign","index_default"],"mappings":"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","sourcesContent":["import React, { Dispatch } from \"react\";\n\nimport styles from \"./Accordion.module.css\";\nimport { joinClasses } from \"~utils/joinClasses\";\n\nexport interface IAccordionProps {\n open: boolean;\n setOpen: Dispatch<React.SetStateAction<boolean>>;\n children: React.ReactNode;\n title: React.JSX.Element;\n}\n\nexport const Accordion = ({\n open,\n setOpen,\n children,\n title,\n}: IAccordionProps) => {\n return (\n <>\n <button\n data-testid=\"Accordion_BUTTON\"\n className={styles.accordionBtn}\n onClick={() => {\n setOpen(!open);\n }}\n >\n {title}\n <svg\n data-testid=\"Accordion_DIRECTION\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n style={{\n transform: !open ? \"none\" : \"rotate(0.5turn)\",\n }}\n >\n <path d=\"M15.8346 7.5L10.0013 13.3333L4.16797 7.5\" stroke=\"#758393\" />\n </svg>\n </button>\n <div\n data-testid=\"Accordion_CONTENT\"\n className={joinClasses(\n styles.accordionContent,\n !open && styles[`accordionContent--hidden`]\n )}\n >\n {children}\n </div>\n </>\n );\n};\n",".accordionBtn {\n border-radius: inherit;\n width: 100%;\n text-align: left;\n\n display: flex;\n justify-content: space-between;\n cursor: pointer;\n}\n\n.accordionContent {\n max-height: 1000px;\n overflow: hidden;\n transition: all 0.3s ease-in-out;\n}\n\n.accordionContent--hidden {\n max-height: 0;\n}\n","export const joinClasses = (...args: unknown[]) =>\n args.filter((item) => !!item).join(\" \");\n","import React from \"react\";\n\nimport { joinClasses } from \"~utils/joinClasses\";\n\nimport styles from \"./button.module.css\";\nimport typography from \"~styles/typography.module.css\";\n\nconst btnTypography = {\n mini: typography.Caption2Medium,\n small: typography.Caption1Medium,\n medium: typography.Body2Medium,\n large: typography.Body1Medium,\n};\n\nexport interface IButtonProps {\n ariaLabel?: string;\n onClick?: () => void;\n children: React.ReactNode;\n className?: string;\n isRounded?: boolean;\n disabled?: boolean;\n variant?: \"default\" | \"tinted\" | \"secondary\";\n size?: \"mini\" | \"small\" | \"medium\" | \"large\";\n style?: React.CSSProperties;\n}\n\nexport const Button = ({\n onClick,\n children,\n style,\n className = \"\",\n isRounded = false,\n disabled = false,\n variant = \"default\",\n size = \"medium\",\n ariaLabel = \"Кнопка\",\n}: IButtonProps) => (\n <button\n data-testid=\"Button_MAIN\"\n aria-label={ariaLabel}\n disabled={disabled}\n aria-disabled={disabled}\n onClick={onClick}\n className={joinClasses(\n styles[`btn--${size}`],\n btnTypography[size],\n isRounded\n ? styles[`btn-rounded--${size}`]\n : styles[`btn-square--${size}`],\n disabled ? styles[`btn-${variant}--disabled`] : styles[`btn-${variant}`],\n styles.button,\n className\n )}\n style={style}\n >\n {children}\n </button>\n);\n",".button {\n border: none;\n transition: background-color 0.2s ease;\n\n display: inline-flex;\n justify-content: center;\n align-items: center;\n cursor: pointer;\n}\n\n.btn-default {\n color: var(--default-white-color);\n background-color: var(--default-primary-accent);\n}\n\n.btn-default--disabled {\n color: var(--text-disabled-color);\n background-color: var(--button-disabled-default-color);\n}\n\n.btn-tinted {\n color: var(--text-accent);\n background-color: var(--button-tinted-default-color);\n}\n\n.btn-tinted--disabled {\n color: var(--text-disabled-accent-color);\n background-color: var(--button-tinted-default-color);\n}\n\n.btn-secondary {\n color: var(--text-primary);\n background-color: var(--surface-surface-3-color);\n}\n\n.btn-secondary--disabled {\n color: var(--text-secondary);\n background-color: var(--surface-surface-3-color);\n}\n\n.btn-default:hover {\n background-color: var(--button-primary-on-hover-color);\n}\n\n.btn-tinted:hover {\n background-color: var(--button-tinted-on-hover-color);\n}\n\n.btn-secondary:hover {\n background-color: var(--button-secondary-on-hover);\n}\n\n.btn--mini {\n gap: 4px;\n padding: 6px 12px;\n}\n\n.btn--small {\n gap: 8px;\n padding: 8px 16px;\n}\n\n.btn--medium {\n gap: 8px;\n padding: 8px 20px;\n}\n\n.btn--large {\n gap: 8px;\n padding: 14px 24px;\n}\n\n.btn-square--mini {\n border-radius: 4px;\n}\n\n.btn-square--small {\n border-radius: 6px;\n}\n\n.btn-square--medium {\n border-radius: 10px;\n}\n\n.btn-square--large {\n border-radius: 12px;\n}\n\n.btn-rounded--mini {\n border-radius: 32px;\n}\n\n.btn-rounded--small {\n border-radius: 32px;\n}\n\n.btn-rounded--medium {\n border-radius: 32px;\n}\n\n.btn-rounded--large {\n border-radius: 40px;\n}\n","/* Headings/Heading 1 */\n.Heading1 {\n font-family: Inter;\n font-size: 32px;\n font-style: normal;\n font-weight: 600;\n line-height: 36px; /* 112.5% */\n letter-spacing: -0.32px;\n}\n\n/* Headings/Heading 3 */\n.Heading3 {\n font-family: Inter;\n font-size: 24px;\n font-style: normal;\n font-weight: 600;\n line-height: 28px; /* 116.667% */\n letter-spacing: -0.24px;\n}\n\n/* Subtitles/Subtitle 3 */\n.Subtitles3 {\n font-family: Inter;\n font-size: 16px;\n font-style: normal;\n font-weight: 600;\n line-height: 24px; /* 150% */\n}\n\n/* Body/Body 1, Medium */\n.Body1Medium {\n font-family: Inter;\n font-size: 16px;\n font-style: normal;\n font-weight: 500;\n line-height: 24px; /* 150% */\n}\n\n/* Body/Body 1, Regular */\n.Body1Regular {\n font-family: Inter;\n font-size: 16px;\n font-style: normal;\n font-weight: 400;\n line-height: 24px; /* 150% */\n}\n\n/* Body/Body 2, Medium */\n.Body2Medium {\n font-family: Inter;\n font-size: 14px;\n font-style: normal;\n font-weight: 500;\n line-height: 20px; /* 142.857% */\n}\n\n/* Body/Body 2, Regular */\n.Body2Regular {\n font-family: Inter;\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n line-height: 20px; /* 142.857% */\n}\n\n/* Body/Body 3, Regular */\n.Body3Regular {\n font-family: Inter;\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n line-height: 16px; /* 114.286% */\n}\n\n/* Caption/Caption 1, Medium */\n.Caption1Medium {\n font-family: Inter;\n font-size: 12px;\n font-style: normal;\n font-weight: 500;\n line-height: 16px; /* 133.333% */\n}\n\n/* Caption/Caption 1, Regular */\n.Caption1Regular {\n font-family: Inter;\n font-size: 12px;\n font-style: normal;\n font-weight: 400;\n line-height: 16px; /* 133.333% */\n}\n\n/* Caption/Caption 1, Semibold */\n.Caption1Semibold {\n font-family: Inter;\n font-size: 12px;\n font-style: normal;\n font-weight: 600;\n line-height: 16px; /* 133.333% */\n}\n\n/* Caption/Caption 2, Medium */\n.Caption2Medium {\n font-family: Inter;\n font-size: 10px;\n font-style: normal;\n font-weight: 500;\n line-height: 12px; /* 120% */\n}\n\n/* Caption/Caption 2, Regular */\n.Caption2Regular {\n font-family: Inter;\n font-size: 10px;\n font-style: normal;\n font-weight: 400;\n line-height: 12px; /* 120% */\n}\n","// InputField.tsx\nimport React, { forwardRef, HTMLInputTypeAttribute, JSX } from \"react\";\n\nimport { joinClasses } from \"~utils/joinClasses\";\n\nimport styles from \"./InputField.module.css\";\n\nimport { ClearIcon } from \"~svg\";\n\nexport type TOtpType = \"OTP\" | \"TEXT\";\n\nexport interface IInputFieldProps\n extends React.DetailedHTMLProps<\n React.InputHTMLAttributes<HTMLInputElement>,\n HTMLInputElement\n > {\n onFocus?: () => void;\n onBlur?: () => void;\n onEnterPress?: (event: React.KeyboardEvent<HTMLInputElement>) => void;\n onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;\n value?: string;\n placeholder?: string;\n className?: string;\n style?: React.CSSProperties;\n isClearable?: boolean;\n inputLeftIcon?: JSX.Element;\n type?: HTMLInputTypeAttribute;\n id: string;\n labelText?: string;\n ariaLabel: string;\n focused?: boolean;\n setFocused?: (val: boolean) => void;\n readOnly?: boolean;\n}\n\nexport const InputField = forwardRef<HTMLInputElement, IInputFieldProps>(\n (\n {\n onFocus,\n onBlur,\n onChange,\n onEnterPress,\n value = \"\",\n inputLeftIcon,\n placeholder = \"\",\n className = \"\",\n style,\n isClearable = false,\n type = \"text\",\n id,\n labelText = \"\",\n ariaLabel = \"\",\n focused = false,\n setFocused = () => {},\n readOnly = false,\n }: IInputFieldProps,\n ref\n ): JSX.Element => {\n const handleClear = () => {\n if (onChange) {\n onChange({\n target: { value: \"\" },\n } as React.ChangeEvent<HTMLInputElement>);\n }\n };\n const handleFocus = () => {\n setFocused(true);\n if (onFocus) onFocus();\n };\n const handleBlur = () => {\n setFocused(false);\n if (onBlur) onBlur();\n };\n const handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (onEnterPress && event.key === \"Enter\") {\n onEnterPress(event);\n }\n };\n\n return (\n <div\n data-testid=\"InputField_MAIN\"\n className={joinClasses(\n styles[labelText.length ? \"inputContainerLabeled\" : \"inputContainer\"],\n focused ? styles[`input--onfocus`] : undefined,\n styles[`input-${type?.toLocaleLowerCase()}`],\n className\n )}\n style={style}\n >\n {labelText.length > 0 && (\n <label htmlFor={id} data-testid=\"InputField_LABEL\">\n {labelText}\n </label>\n )}\n {inputLeftIcon}\n <input\n ref={ref}\n data-testid=\"InputField_INPUT\"\n aria-label={ariaLabel}\n id={id}\n type={type}\n className={styles.input}\n placeholder={placeholder}\n aria-placeholder={placeholder}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onChange={onChange}\n onKeyDown={handleKeyDown}\n value={value}\n readOnly={readOnly}\n />\n {isClearable && value && (\n <ClearIcon\n fill=\"red\"\n pathFill=\"#758393\"\n className={styles.clearIcon}\n onClick={handleClear}\n />\n )}\n </div>\n );\n }\n);\n",".input {\n width: 100%;\n border: none;\n background-color: var(--surface-surface-1);\n}\n\n.input:active,\n.input:focus {\n outline: none;\n}\n\n.input::placeholder {\n color: var(--text-disabled-color);\n}\n\n.input::-webkit-inner-spin-button,\n.input::-webkit-outer-spin-button {\n -webkit-appearance: none;\n margin: 0;\n}\n\n.clearIcon {\n cursor: pointer;\n}\n\n.input--onfocus {\n background-color: var(--surface-surface-3-color);\n}\n\n.input--onfocus .input {\n background-color: var(--surface-surface-3-color);\n}\n","import React from \"react\";\n\nexport const ClearIcon = ({\n fill = \"none\",\n pathFill = \"#fff\",\n width = 20,\n height = 20,\n ...props\n}: React.SVGProps<SVGSVGElement> & { pathFill?: string }) => {\n return (\n <svg\n data-testid=\"Icons_CLEAR\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width={width}\n height={height}\n fill={fill}\n viewBox=\"0 0 20 20\"\n {...props}\n >\n <path\n fill={pathFill}\n fillRule=\"evenodd\"\n d=\"M10 18.333a8.333 8.333 0 100-16.666 8.333 8.333 0 000 16.666zM7.5 6.027L6.027 7.5l2.5 2.5-2.5 2.5L7.5 13.973l2.5-2.5 2.5 2.5 1.473-1.473-2.5-2.5 2.5-2.5L12.5 6.027l-2.5 2.5-2.5-2.5z\"\n clipRule=\"evenodd\"\n ></path>\n </svg>\n );\n};\n","import React, { Dispatch, JSX } from \"react\";\nimport Icons from \"@egov3/graphics\";\n\nimport styles from \"./Modal.module.css\";\nimport { joinClasses } from \"~utils/joinClasses\";\nimport { Components } from \"~components\";\n\nexport interface IModalProps {\n open: boolean;\n children: JSX.Element;\n setOpen: Dispatch<React.SetStateAction<boolean>>;\n headerTitle?: string;\n variant: \"large\" | \"small\";\n}\n\nexport const Modal = ({\n open,\n setOpen,\n children,\n headerTitle,\n variant,\n}: IModalProps) => {\n if (open) {\n return (\n <div data-testid=\"Modal_OVERLAY\" className={styles.overlay}>\n <div\n data-testid=\"Modal_WRAPPER\"\n className={joinClasses(\n styles.contentWrap,\n styles[`${variant}Variant`]\n )}\n >\n {headerTitle && headerTitle.length > 0 && (\n <div data-testid=\"Modal_HEADER\" className={styles.contentHeader}>\n <Components.Typography\n tag=\"h3\"\n fontClass=\"Body1Medium\"\n data-testid=\"Modal_TITLE\"\n className={styles.title}\n >\n {headerTitle}\n </Components.Typography>\n <button\n data-testid=\"ModalHeader_BTN\"\n onClick={() => {\n setOpen(!open);\n }}\n >\n <Icons.General.Close data-testid=\"Modal_ICON\" />\n </button>\n </div>\n )}\n {children}\n </div>\n </div>\n );\n } else {\n return null;\n }\n};\n",".overlay {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(0, 0, 0, 0.5);\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 1;\n box-sizing: border-box;\n}\n\n.contentWrap {\n background: var(--page-color-background-white);\n border-radius: 16px;\n height: fit-content;\n animation: flyDawn 1s;\n}\n\n.largeVariant {\n width: 1052px;\n}\n\n.smallVariant {\n width: 400px;\n}\n\n.contentHeader {\n position: relative;\n display: flex;\n justify-content: space-between;\n align-items: center;\n align-self: stretch;\n padding: 12px 16px;\n}\n\n.title {\n color: var(--text-primary);\n}\n\n@keyframes flyDawn {\n from {\n transform: translateY(-1000px);\n opacity: 0.1;\n }\n to {\n transform: translateY(0);\n opacity: 1;\n }\n}\n","import React from \"react\";\nimport styles from \"./RadioGroup.module.css\";\nimport { joinClasses } from \"~utils/joinClasses\";\nimport typography from \"~styles/typography.module.css\";\n\nexport interface RadioGroupItem {\n label: string;\n value: string;\n}\n\nexport interface ICustomRadioButtonProps {\n label: string;\n name: string;\n checked: boolean;\n onChange: (event: React.ChangeEvent<HTMLInputElement>) => void;\n value: string;\n}\n\nexport interface IRadioGroupProps {\n RadioGroupItems: RadioGroupItem[];\n invokeCustomOnChange: (event: React.ChangeEvent<HTMLInputElement>) => void;\n setSelectedOption: React.Dispatch<React.SetStateAction<string>>;\n selectedOption: string;\n}\n\nexport const CustomRadioButton = ({\n label,\n name,\n checked,\n onChange,\n value,\n}: ICustomRadioButtonProps) => (\n <label data-testid=\"RadioGroupItem_LABEL\" className={styles.radio}>\n <input\n data-testid=\"RadioGroupItem_INPUT\"\n value={value}\n type=\"radio\"\n name={name}\n checked={checked}\n onChange={onChange}\n />\n <span data-testid=\"RadioGroupItem_RADIO\" className={styles.radioBtn}></span>\n <span\n data-testid=\"RadioGroupItem_TEXT\"\n className={joinClasses(styles.radioBtnText, typography.Body2Regular)}\n >\n {label}\n </span>\n </label>\n);\n\nexport const RadioGroup = ({\n RadioGroupItems,\n invokeCustomOnChange,\n setSelectedOption,\n selectedOption,\n}: IRadioGroupProps) => {\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n setSelectedOption(event.target.value);\n invokeCustomOnChange(event);\n };\n return (\n <fieldset data-testid=\"RadioGroup_FIELDSET\">\n {RadioGroupItems.map((item) => (\n <CustomRadioButton\n key={item.label}\n label={item.label}\n name=\"radio\"\n checked={selectedOption === item.value}\n onChange={handleChange}\n value={item.value}\n />\n ))}\n </fieldset>\n );\n};\n",".radio {\n display: flex;\n align-items: center;\n cursor: pointer;\n}\n\n.radio input {\n display: none;\n}\n\n.radioBtn {\n position: relative;\n height: 15px;\n width: 15px;\n border-radius: 50%;\n border: 2px solid var(--button-secondary-on-hover);\n margin: 10px;\n transition: background 0.3s;\n}\n\n.radioBtn::after {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n height: 10px;\n width: 10px;\n background: var(--button-primary-default);\n border-radius: 50%;\n transform: scale(0) translate(-50%, -50%);\n transition: transform 0.3s;\n}\n\ninput:checked + .radioBtn::after {\n transform: scale(1) translate(-50%, -50%);\n}\n\ninput:checked + .radioBtn {\n border: 2px solid var(--button-primary-default);\n}\n\n.radioBtnText {\n padding-left: 10px;\n width: fit-content;\n}\n","import React, { Dispatch, SetStateAction } from \"react\";\n\nimport { joinClasses } from \"~utils/joinClasses\";\n\nimport styles from \"./RadioToggle.module.css\";\n\nexport interface IRadioToggleProps {\n lock: boolean;\n setLock: Dispatch<SetStateAction<boolean>>;\n}\n\nexport const RadioToggle = ({ lock, setLock }: IRadioToggleProps) => (\n <button\n data-testid=\"RadioToggle_BUTTON\"\n aria-pressed={lock}\n aria-label=\"Кнопка переключения\"\n onClick={() => {\n setLock(!lock);\n }}\n >\n <div\n data-testid=\"RadioToggle_WRAP\"\n className={joinClasses(styles.wrap, lock && styles.wrapLock)}\n >\n <div data-testid=\"RadioToggle_ROUND\" className={styles.round}></div>\n </div>\n </button>\n);\n",".wrap {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n padding: 4px;\n width: 32px;\n height: 16px;\n border-radius: 40px;\n background: var(--leaf);\n}\n\n.wrapLock {\n justify-content: flex-start;\n background: var(--surface-surface-3-color);\n}\n\n.round {\n width: 16px;\n height: 16px;\n background: var(--surface-surface-2);\n border-radius: 100px;\n}\n","import React, { Dispatch, JSX } from \"react\";\nimport Icons from \"@egov3/graphics\";\n\nimport styles from \"./SelectBoxButton.module.css\";\nimport { Components } from \"~components\";\n\nexport interface ISelectBoxProps {\n labelText?: string;\n setIsOpen: Dispatch<React.SetStateAction<boolean>>;\n disabled: boolean;\n error?: boolean;\n modalValue?: string;\n}\n\nexport const SelectBoxButton = ({\n setIsOpen,\n labelText,\n disabled,\n error,\n modalValue,\n}: ISelectBoxProps): JSX.Element => (\n <button\n data-testid=\"SelectBoxModal_BUTTON\"\n className={styles.selectContainer}\n onClick={() => !disabled && setIsOpen(true)}\n >\n <div data-testid=\"SelectBoxModal_TITLE\">\n <Components.Typography\n tag=\"label\"\n fontClass=\"Caption1Regular\"\n data-testid=\"SelectBoxModal_LABEL\"\n className={error ? styles.errorLabel : styles.label}\n aria-label={labelText}\n >\n {labelText}\n </Components.Typography>\n {modalValue && modalValue.length > 0 && (\n <Components.Typography\n tag=\"div\"\n fontClass=\"Body2Regular\"\n data-testid=\"SelectBoxModal_VALUE\"\n className={styles.selectText}\n aria-label={modalValue}\n >\n {modalValue}\n </Components.Typography>\n )}\n </div>\n <Icons.Basic.ChevronDownSmall\n aria-label=\"кнопка развернуть\"\n fill=\"#758393\"\n className={styles.clearIcon}\n />\n </button>\n);\n",".selectContainer {\n display: flex;\n height: 56px;\n justify-content: space-between;\n align-items: center;\n background-color: var(--surface-surface-1);\n border-radius: 8px;\n padding: 8px 16px;\n}\n\n.label {\n display: flex;\n color: var(--text-secondary);\n}\n\n.errorLabel {\n display: flex;\n color: var(--icon-error-color);\n}\n\n.selectText {\n display: flex;\n color: var(--text-primary);\n}\n","// Typography.tsx\nimport React, { FC, JSX } from \"react\";\nimport { joinClasses } from \"~utils/joinClasses\";\n\nimport typography from \"~styles/typography.module.css\";\n\ntype TFontClass =\n | \"Heading1\"\n | \"Heading3\"\n | \"Subtitles3\"\n | \"Body1Medium\"\n | \"Body1Regular\"\n | \"Body2Medium\"\n | \"Body2Regular\"\n | \"Body3Regular\"\n | \"Caption1Medium\"\n | \"Caption1Regular\"\n | \"Caption1Semibold\"\n | \"Caption2Medium\"\n | \"Caption2Regular\";\n\nexport interface ITypographyProps extends React.HTMLAttributes<HTMLElement> {\n tag: keyof JSX.IntrinsicElements | React.JSXElementConstructor<any>;\n fontClass: TFontClass;\n}\n\nexport const Typography: FC<ITypographyProps> = ({\n tag,\n fontClass,\n className,\n children,\n style,\n ...restProps\n}) =>\n React.createElement(\n tag,\n {\n ...restProps,\n className: joinClasses(fontClass ? typography[fontClass] : \"\", className),\n style,\n },\n children\n );\n","import { Accordion } from \"./Accordion\";\nimport { Button } from \"./Button\";\nimport { InputField } from \"./InputField\";\nimport { Modal } from \"./Modal\";\nimport { CustomRadioButton, RadioGroup } from \"./RadioGroup\";\nimport { RadioToggle } from \"./RadioToggle\";\nimport { SelectBoxButton } from \"./SelectBoxButton\";\nimport { Typography } from \"./Typography\";\n\nexport const Components = {\n Accordion,\n Button,\n CustomRadioButton,\n InputField,\n Modal,\n RadioGroup,\n RadioToggle,\n SelectBoxButton,\n Typography,\n};\n\nexport { Button };\n","import { Components } from \"./components\";\n\nconst SystemDesign = {\n Components\n} \n\nexport default SystemDesign"]}
|
package/package.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@egov3/system-design",
|
|
3
|
-
"version": "2.2.
|
|
4
|
-
"main": "dist/
|
|
5
|
-
"
|
|
6
|
-
"
|
|
3
|
+
"version": "2.2.5",
|
|
4
|
+
"main": "dist/index.cjs",
|
|
5
|
+
"module": "dist/index.js",
|
|
6
|
+
"types": "dist/index.d.ts",
|
|
7
7
|
"files": [
|
|
8
8
|
"dist"
|
|
9
9
|
],
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
"url": "https://github.com/egov3/system-design.git"
|
|
13
13
|
},
|
|
14
14
|
"scripts": {
|
|
15
|
-
"build": "
|
|
15
|
+
"build": "tsup",
|
|
16
16
|
"test": "jest",
|
|
17
17
|
"sb": "storybook dev -p 6006",
|
|
18
18
|
"build-storybook": "storybook build"
|
|
@@ -31,9 +31,6 @@
|
|
|
31
31
|
"@babel/preset-typescript": "^7.16.0",
|
|
32
32
|
"@chromatic-com/storybook": "^3.2.4",
|
|
33
33
|
"@mdx-js/react": "^2.1.2",
|
|
34
|
-
"@rollup/plugin-commonjs": "^21.0.1",
|
|
35
|
-
"@rollup/plugin-node-resolve": "^13.0.6",
|
|
36
|
-
"@rollup/plugin-typescript": "^8.3.0",
|
|
37
34
|
"@storybook/addon-actions": "^8.5.2",
|
|
38
35
|
"@storybook/addon-essentials": "^8.5.2",
|
|
39
36
|
"@storybook/addon-links": "^8.5.2",
|
|
@@ -43,9 +40,10 @@
|
|
|
43
40
|
"@storybook/react": "^8.5.2",
|
|
44
41
|
"@storybook/react-webpack5": "^8.5.2",
|
|
45
42
|
"@storybook/test": "^8.5.2",
|
|
43
|
+
"@swc/core": "^1.11.24",
|
|
46
44
|
"@testing-library/react": "^13.3.0",
|
|
47
45
|
"@types/jest": "^28.1.6",
|
|
48
|
-
"@types/react": "^
|
|
46
|
+
"@types/react": "^19.0.0",
|
|
49
47
|
"babel-jest": "^27.3.1",
|
|
50
48
|
"babel-loader": "^8.2.3",
|
|
51
49
|
"css-loader": "^6.5.1",
|
|
@@ -54,15 +52,13 @@
|
|
|
54
52
|
"jest": "^28.1.3",
|
|
55
53
|
"postcss": "^8.5.3",
|
|
56
54
|
"postcss-loader": "^8.1.1",
|
|
57
|
-
"react": "^
|
|
58
|
-
"react-dom": "^
|
|
59
|
-
"rollup": "^2.60.0",
|
|
60
|
-
"rollup-plugin-dts": "^4.0.1",
|
|
61
|
-
"rollup-plugin-postcss": "^4.0.2",
|
|
55
|
+
"react": "^19.0.0",
|
|
56
|
+
"react-dom": "^19.0.0",
|
|
62
57
|
"sass": "^1.85.1",
|
|
63
58
|
"sass-loader": "^12.3.0",
|
|
64
59
|
"storybook": "^8.5.2",
|
|
65
60
|
"style-loader": "^3.3.1",
|
|
61
|
+
"tsup": "^8.4.0",
|
|
66
62
|
"typescript": "^4.7.4",
|
|
67
63
|
"webpack": "^5"
|
|
68
64
|
},
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import React, { Dispatch } from "react";
|
|
2
|
-
export interface IAccordionProps {
|
|
3
|
-
open: boolean;
|
|
4
|
-
setOpen: Dispatch<React.SetStateAction<boolean>>;
|
|
5
|
-
children: React.ReactNode;
|
|
6
|
-
title: React.JSX.Element;
|
|
7
|
-
}
|
|
8
|
-
export declare const Accordion: ({ open, setOpen, children, title, }: IAccordionProps) => React.JSX.Element;
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
export interface IButtonProps {
|
|
3
|
-
ariaLabel?: string;
|
|
4
|
-
onClick?: () => void;
|
|
5
|
-
children: React.ReactNode;
|
|
6
|
-
className?: string;
|
|
7
|
-
isRounded?: boolean;
|
|
8
|
-
disabled?: boolean;
|
|
9
|
-
variant?: 'default' | 'tinted' | 'secondary';
|
|
10
|
-
size?: 'mini' | 'small' | 'medium' | 'large';
|
|
11
|
-
style?: React.CSSProperties;
|
|
12
|
-
}
|
|
13
|
-
export declare const Button: ({ onClick, children, style, className, isRounded, disabled, variant, size, ariaLabel, }: IButtonProps) => React.JSX.Element;
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import React, { Dispatch, SetStateAction } from "react";
|
|
2
|
-
import { ICalendarPeriod, IDateItem, TPeriodKeys, TTimeUnit } from "~interfaces/Calendar";
|
|
3
|
-
export interface IBodyProps {
|
|
4
|
-
changeDate: IDateItem<(direction: number) => void>;
|
|
5
|
-
handleMouseDown: (e: React.MouseEvent, type: TTimeUnit) => void;
|
|
6
|
-
handleMouseUp: () => void;
|
|
7
|
-
selectedCalenderDate: ICalendarPeriod<string>;
|
|
8
|
-
selectedPeriodInterval: TPeriodKeys;
|
|
9
|
-
setDistanceTraveled: Dispatch<SetStateAction<number>>;
|
|
10
|
-
setInitialY: Dispatch<SetStateAction<number>>;
|
|
11
|
-
}
|
|
12
|
-
export declare const Body: ({ changeDate, handleMouseDown, handleMouseUp, selectedCalenderDate, selectedPeriodInterval, setDistanceTraveled, setInitialY, }: IBodyProps) => React.JSX.Element;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import React, { Dispatch, SetStateAction } from "react";
|
|
2
|
-
import { ICalendarPeriod, IStrictSelectedPeriod } from "~interfaces/Calendar";
|
|
3
|
-
export interface IFooterProps {
|
|
4
|
-
selectedCalenderDate: ICalendarPeriod<string>;
|
|
5
|
-
setSelectedPeriod: Dispatch<SetStateAction<IStrictSelectedPeriod>>;
|
|
6
|
-
setIsModalOpen: Dispatch<SetStateAction<boolean>>;
|
|
7
|
-
setSelectedRadioOption: Dispatch<SetStateAction<string>>;
|
|
8
|
-
}
|
|
9
|
-
export declare const Footer: ({ selectedCalenderDate, setSelectedPeriod, setIsModalOpen, setSelectedRadioOption, }: IFooterProps) => React.JSX.Element;
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import React, { Dispatch, SetStateAction } from "react";
|
|
2
|
-
import { ICalendarPeriod, TPeriodKeys } from "~interfaces/Calendar";
|
|
3
|
-
export interface IHeaderProps {
|
|
4
|
-
setSelectedPeriodInterval: Dispatch<SetStateAction<TPeriodKeys>>;
|
|
5
|
-
selectedPeriodInterval: TPeriodKeys;
|
|
6
|
-
selectedCalenderDate: ICalendarPeriod<string>;
|
|
7
|
-
}
|
|
8
|
-
export declare const Header: ({ setSelectedPeriodInterval, selectedPeriodInterval, selectedCalenderDate, }: IHeaderProps) => React.JSX.Element;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import React, { Dispatch, SetStateAction } from "react";
|
|
2
|
-
import { IStrictSelectedPeriod } from "~interfaces/Calendar";
|
|
3
|
-
export interface IMainProps {
|
|
4
|
-
setSelectedPeriod: Dispatch<SetStateAction<IStrictSelectedPeriod>>;
|
|
5
|
-
selectedPeriod: IStrictSelectedPeriod;
|
|
6
|
-
setIsModalOpen: Dispatch<SetStateAction<boolean>>;
|
|
7
|
-
setSelectedRadioOption: Dispatch<SetStateAction<string>>;
|
|
8
|
-
}
|
|
9
|
-
export declare const Main: ({ setSelectedPeriod, selectedPeriod, setIsModalOpen, setSelectedRadioOption, }: IMainProps) => React.JSX.Element;
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
declare const Calendar: {
|
|
3
|
-
Body: ({ changeDate, handleMouseDown, handleMouseUp, selectedCalenderDate, selectedPeriodInterval, setDistanceTraveled, setInitialY, }: import("./Body").IBodyProps) => import("react").JSX.Element;
|
|
4
|
-
Footer: ({ selectedCalenderDate, setSelectedPeriod, setIsModalOpen, setSelectedRadioOption, }: import("./Footer").IFooterProps) => import("react").JSX.Element;
|
|
5
|
-
Main: ({ setSelectedPeriod, selectedPeriod, setIsModalOpen, setSelectedRadioOption, }: import("./Main").IMainProps) => import("react").JSX.Element;
|
|
6
|
-
Header: ({ setSelectedPeriodInterval, selectedPeriodInterval, selectedCalenderDate, }: import("./Header").IHeaderProps) => import("react").JSX.Element;
|
|
7
|
-
};
|
|
8
|
-
export { Calendar };
|