@egov3/system-design 2.1.49 → 2.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. package/README.md +26 -29
  2. package/dist/cjs/components/Accordion/index.d.ts +8 -0
  3. package/dist/cjs/components/Button/index.d.ts +13 -0
  4. package/dist/cjs/components/Calendar/Body/index.d.ts +12 -0
  5. package/dist/cjs/components/Calendar/Footer/index.d.ts +9 -0
  6. package/dist/cjs/components/Calendar/Header/index.d.ts +8 -0
  7. package/dist/cjs/components/Calendar/Main/index.d.ts +9 -0
  8. package/dist/cjs/components/Calendar/index.d.ts +8 -0
  9. package/dist/cjs/components/InputField/index.d.ts +22 -0
  10. package/dist/cjs/components/Modal/index.d.ts +9 -0
  11. package/dist/cjs/components/RadioGroup/index.d.ts +20 -0
  12. package/dist/cjs/components/RadioToggle/index.d.ts +6 -0
  13. package/dist/cjs/components/SelectBoxButton/index.d.ts +9 -0
  14. package/dist/cjs/components/Typography/index.d.ts +8 -0
  15. package/dist/cjs/components/index.d.ts +20 -0
  16. package/dist/cjs/constants/calendar/index.d.ts +2 -0
  17. package/dist/cjs/index.d.ts +21 -0
  18. package/dist/cjs/index.js +3496 -0
  19. package/dist/cjs/index.js.map +1 -0
  20. package/dist/cjs/interfaces/Calendar.d.ts +24 -0
  21. package/dist/cjs/stories/Accordion.stories.d.ts +7 -0
  22. package/dist/cjs/stories/Button.stories.d.ts +28 -0
  23. package/dist/cjs/stories/Calendar.stories.d.ts +6 -0
  24. package/dist/cjs/stories/CardWrapperItem.d.ts +4 -0
  25. package/dist/cjs/stories/InputField.stories.d.ts +22 -0
  26. package/dist/cjs/stories/Modal.stories.d.ts +8 -0
  27. package/dist/cjs/stories/RadioGroup.stories.d.ts +23 -0
  28. package/dist/cjs/stories/RadioToggle.stories.d.ts +13 -0
  29. package/dist/cjs/stories/Typography.stories.d.ts +12 -0
  30. package/dist/cjs/svg/ClearIcon.d.ts +4 -0
  31. package/dist/cjs/svg/index.d.ts +2 -0
  32. package/dist/cjs/utils/CreateArray.d.ts +1 -0
  33. package/dist/cjs/utils/GenerateArray.d.ts +1 -0
  34. package/dist/cjs/utils/date/convertType.d.ts +53 -0
  35. package/dist/cjs/utils/date/formatDate.d.ts +1 -0
  36. package/dist/cjs/utils/date/getDaysInMonth.d.ts +1 -0
  37. package/dist/cjs/utils/date/getMonthNameProper.d.ts +1 -0
  38. package/dist/cjs/utils/date/getValideMonth.d.ts +6 -0
  39. package/dist/cjs/utils/date/index.d.ts +6 -0
  40. package/dist/cjs/utils/date/inverseDate.d.ts +1 -0
  41. package/dist/cjs/utils/date/isValidateDate.d.ts +3 -0
  42. package/dist/cjs/utils/date/normalizeDayAndMonth.d.ts +2 -0
  43. package/dist/cjs/utils/date/range/getDaysRange.d.ts +2 -0
  44. package/dist/cjs/utils/date/range/getMonthRange.d.ts +1 -0
  45. package/dist/cjs/utils/date/range/getYearRange.d.ts +1 -0
  46. package/dist/cjs/utils/date/range/isValidDateRange.d.ts +3 -0
  47. package/dist/cjs/utils/joinClasses.d.ts +1 -0
  48. package/dist/cjs/utils/string/SetCharAt.d.ts +1 -0
  49. package/dist/cjs/utils/string/toPascalCase.d.ts +1 -0
  50. package/dist/esm/components/Accordion/index.d.ts +8 -0
  51. package/dist/esm/components/Button/index.d.ts +13 -0
  52. package/dist/esm/components/Calendar/Body/index.d.ts +12 -0
  53. package/dist/esm/components/Calendar/Footer/index.d.ts +9 -0
  54. package/dist/esm/components/Calendar/Header/index.d.ts +8 -0
  55. package/dist/esm/components/Calendar/Main/index.d.ts +9 -0
  56. package/dist/esm/components/Calendar/index.d.ts +8 -0
  57. package/dist/esm/components/InputField/index.d.ts +22 -0
  58. package/dist/esm/components/Modal/index.d.ts +9 -0
  59. package/dist/esm/components/RadioGroup/index.d.ts +20 -0
  60. package/dist/esm/components/RadioToggle/index.d.ts +6 -0
  61. package/dist/esm/components/SelectBoxButton/index.d.ts +9 -0
  62. package/dist/esm/components/Typography/index.d.ts +8 -0
  63. package/dist/esm/components/index.d.ts +20 -0
  64. package/dist/esm/constants/calendar/index.d.ts +2 -0
  65. package/dist/{index.d.ts → esm/index.d.ts} +6 -30
  66. package/dist/esm/index.js +3494 -0
  67. package/dist/esm/index.js.map +1 -0
  68. package/dist/esm/interfaces/Calendar.d.ts +24 -0
  69. package/dist/esm/stories/Accordion.stories.d.ts +7 -0
  70. package/dist/esm/stories/Button.stories.d.ts +28 -0
  71. package/dist/esm/stories/Calendar.stories.d.ts +6 -0
  72. package/dist/esm/stories/CardWrapperItem.d.ts +4 -0
  73. package/dist/esm/stories/InputField.stories.d.ts +22 -0
  74. package/dist/esm/stories/Modal.stories.d.ts +8 -0
  75. package/dist/esm/stories/RadioGroup.stories.d.ts +23 -0
  76. package/dist/esm/stories/RadioToggle.stories.d.ts +13 -0
  77. package/dist/esm/stories/Typography.stories.d.ts +12 -0
  78. package/dist/esm/svg/ClearIcon.d.ts +4 -0
  79. package/dist/esm/svg/index.d.ts +2 -0
  80. package/dist/esm/utils/CreateArray.d.ts +1 -0
  81. package/dist/esm/utils/GenerateArray.d.ts +1 -0
  82. package/dist/esm/utils/date/convertType.d.ts +53 -0
  83. package/dist/esm/utils/date/formatDate.d.ts +1 -0
  84. package/dist/esm/utils/date/getDaysInMonth.d.ts +1 -0
  85. package/dist/esm/utils/date/getMonthNameProper.d.ts +1 -0
  86. package/dist/esm/utils/date/getValideMonth.d.ts +6 -0
  87. package/dist/esm/utils/date/index.d.ts +6 -0
  88. package/dist/esm/utils/date/inverseDate.d.ts +1 -0
  89. package/dist/esm/utils/date/isValidateDate.d.ts +3 -0
  90. package/dist/esm/utils/date/normalizeDayAndMonth.d.ts +2 -0
  91. package/dist/esm/utils/date/range/getDaysRange.d.ts +2 -0
  92. package/dist/esm/utils/date/range/getMonthRange.d.ts +1 -0
  93. package/dist/esm/utils/date/range/getYearRange.d.ts +1 -0
  94. package/dist/esm/utils/date/range/isValidDateRange.d.ts +3 -0
  95. package/dist/esm/utils/joinClasses.d.ts +1 -0
  96. package/dist/esm/utils/string/SetCharAt.d.ts +1 -0
  97. package/dist/esm/utils/string/toPascalCase.d.ts +1 -0
  98. package/package.json +24 -32
  99. package/dist/index.cjs +0 -2
  100. package/dist/index.cjs.map +0 -1
  101. package/dist/index.css +0 -2
  102. package/dist/index.css.map +0 -1
  103. package/dist/index.d.cts +0 -164
  104. package/dist/index.js +0 -2
  105. package/dist/index.js.map +0 -1
@@ -0,0 +1,24 @@
1
+ export interface ISelectedPeriod {
2
+ fromDate?: string;
3
+ toDate?: string;
4
+ periodSelected: boolean;
5
+ }
6
+ export interface IStrictSelectedPeriod extends Omit<ISelectedPeriod, "fromDate" | "toDate"> {
7
+ fromDate: string;
8
+ toDate: string;
9
+ }
10
+ export interface IDateItem<T = number> {
11
+ day: T;
12
+ month: T;
13
+ year: T;
14
+ }
15
+ export interface IPeriodKeys {
16
+ from: "from";
17
+ to: "to";
18
+ }
19
+ export type TPeriodKeys = keyof IPeriodKeys;
20
+ export interface ICalendarPeriod<T = number> {
21
+ from: IDateItem<T>;
22
+ to: IDateItem<T>;
23
+ }
24
+ export type TTimeUnit = keyof IDateItem;
@@ -0,0 +1,7 @@
1
+ import React from "react";
2
+ export declare const AccordionStory: () => React.JSX.Element;
3
+ declare const meta: {
4
+ title: string;
5
+ component: ({ open, setOpen, children, title, }: import("../components/Accordion").IAccordionProps) => React.JSX.Element;
6
+ };
7
+ export default meta;
@@ -0,0 +1,28 @@
1
+ /// <reference types="react" />
2
+ import type { StoryObj } from "@storybook/react";
3
+ declare const meta: {
4
+ title: string;
5
+ component: ({ onClick, children, style, className, isRounded, disabled, variant, size, ariaLabel, }: import("../components/Button").IButtonProps) => import("react").JSX.Element;
6
+ parameters: {
7
+ layout: string;
8
+ };
9
+ tags: string[];
10
+ argTypes: {};
11
+ args: {
12
+ onClick: import("@vitest/spy").Mock<(...args: any[]) => any>;
13
+ };
14
+ };
15
+ export default meta;
16
+ type Story = StoryObj<typeof meta>;
17
+ export declare const IsRounded: Story;
18
+ export declare const NotRounded: Story;
19
+ export declare const Large: Story;
20
+ export declare const Medium: Story;
21
+ export declare const Small: Story;
22
+ export declare const Mini: Story;
23
+ export declare const VariantDefault: Story;
24
+ export declare const VariantTinted: Story;
25
+ export declare const VariantSecondary: Story;
26
+ export declare const VariantDefaultDisabled: Story;
27
+ export declare const VariantTintedDisabled: Story;
28
+ export declare const VariantSecondaryDisabled: Story;
@@ -0,0 +1,6 @@
1
+ import React from "react";
2
+ import { Meta } from "@storybook/react";
3
+ import { Components } from "~components";
4
+ declare const meta: Meta<typeof Components.Calendar>;
5
+ export default meta;
6
+ export declare const CalendarStory: () => React.JSX.Element;
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ export declare const CardWrapperItem: ({ children, }: {
3
+ children: React.ReactNode;
4
+ }) => React.JSX.Element;
@@ -0,0 +1,22 @@
1
+ import type { StoryObj } from "@storybook/react";
2
+ import React from "react";
3
+ declare const meta: {
4
+ title: string;
5
+ component: React.ForwardRefExoticComponent<Omit<import("../components/InputField").IInputFieldProps, "ref"> & React.RefAttributes<HTMLInputElement>>;
6
+ parameters: {
7
+ layout: string;
8
+ };
9
+ tags: string[];
10
+ argTypes: {};
11
+ args: {
12
+ onChange: import("@vitest/spy").Mock<(...args: any[]) => any>;
13
+ ariaLabel: string;
14
+ };
15
+ };
16
+ export default meta;
17
+ type Story = StoryObj<typeof meta>;
18
+ export declare const Default: Story;
19
+ export declare const LeftIcon: Story;
20
+ export declare const IsClearable: Story;
21
+ export declare const Label: Story;
22
+ export declare const InputGroup: () => React.JSX.Element;
@@ -0,0 +1,8 @@
1
+ import React from "react";
2
+ declare const meta: {
3
+ title: string;
4
+ component: ({ open, setOpen, children, headerTitle, variant, }: import("../components/Modal").IModalProps) => React.JSX.Element | null;
5
+ };
6
+ export default meta;
7
+ export declare const SmallVariant: () => React.JSX.Element;
8
+ export declare const LargeVariant: () => React.JSX.Element;
@@ -0,0 +1,23 @@
1
+ /// <reference types="react" />
2
+ import { StoryObj } from "@storybook/react";
3
+ declare const meta: {
4
+ title: string;
5
+ component: ({ RadioGroupItems, invokeCustomOnChange, setSelectedOption, selectedOption, }: import("../components/RadioGroup").IRadioGroupProps) => import("react").JSX.Element;
6
+ parameters: {
7
+ layout: string;
8
+ };
9
+ tags: string[];
10
+ argTypes: {};
11
+ args: {
12
+ RadioGroupItems: {
13
+ label: string;
14
+ value: string;
15
+ }[];
16
+ invokeCustomOnChange: import("@vitest/spy").Mock<(...args: any[]) => any>;
17
+ setSelectedOption: () => void;
18
+ selectedOption: string;
19
+ };
20
+ };
21
+ export default meta;
22
+ type Story = StoryObj<typeof meta>;
23
+ export declare const Default: Story;
@@ -0,0 +1,13 @@
1
+ import React from "react";
2
+ declare const meta: {
3
+ title: string;
4
+ component: ({ lock, setLock }: import("../components/RadioToggle").IRadioToggleProps) => React.JSX.Element;
5
+ parameters: {
6
+ layout: string;
7
+ };
8
+ tags: string[];
9
+ args: {};
10
+ };
11
+ export default meta;
12
+ export declare const Unlock: () => React.JSX.Element;
13
+ export declare const Lock: () => React.JSX.Element;
@@ -0,0 +1,12 @@
1
+ import React from "react";
2
+ declare const meta: {
3
+ title: string;
4
+ component: React.FC<import("../components/Typography").ITypographyProps>;
5
+ parameters: {
6
+ layout: string;
7
+ };
8
+ tags: string[];
9
+ args: {};
10
+ };
11
+ export default meta;
12
+ export declare const Typography: () => React.JSX.Element;
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ export declare const ClearIcon: ({ fill, pathFill, width, height, ...props }: React.SVGProps<SVGSVGElement> & {
3
+ pathFill?: string | undefined;
4
+ }) => React.JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { ClearIcon } from "./ClearIcon";
2
+ export { ClearIcon };
@@ -0,0 +1 @@
1
+ export declare const CreateArray: (n: number) => number[];
@@ -0,0 +1 @@
1
+ export declare const GenerateArray: (length: number, start?: number) => number[];
@@ -0,0 +1,53 @@
1
+ import { ICalendarPeriod, IDateItem } from "~interfaces/Calendar";
2
+ export declare const convertType: {
3
+ day: {
4
+ toString: (num: number) => string;
5
+ toNumber: (str: string) => number;
6
+ };
7
+ month: {
8
+ toString: (num: number) => string;
9
+ toNumber: (str: string) => number;
10
+ };
11
+ year: {
12
+ toString: (num: number) => string;
13
+ toNumber: (str: string) => number;
14
+ };
15
+ date: {
16
+ toString: ({ day, month, year }: IDateItem<number>) => {
17
+ day: string;
18
+ month: string;
19
+ year: string;
20
+ };
21
+ toNumber: ({ day, month, year }: IDateItem<string>) => {
22
+ day: number;
23
+ month: number;
24
+ year: number;
25
+ };
26
+ };
27
+ dateRange: {
28
+ toString: ({ from: { day: fromday, month: fromMonth, year: fromYear }, to: { day: toDay, month: toMonth, year: toYear }, }: ICalendarPeriod<number>) => {
29
+ from: {
30
+ day: string;
31
+ month: string;
32
+ year: string;
33
+ };
34
+ to: {
35
+ day: string;
36
+ month: string;
37
+ year: string;
38
+ };
39
+ };
40
+ toNumber: ({ from: { day: fromday, month: fromMonth, year: fromYear }, to: { day: toDay, month: toMonth, year: toYear }, }: ICalendarPeriod<string>) => {
41
+ from: {
42
+ day: number;
43
+ month: number;
44
+ year: number;
45
+ };
46
+ to: {
47
+ day: number;
48
+ month: number;
49
+ year: number;
50
+ };
51
+ };
52
+ };
53
+ };
@@ -0,0 +1 @@
1
+ export declare const formatDate: (date: Date) => string;
@@ -0,0 +1 @@
1
+ export declare const getDaysInMonth: (month: number, year: number) => number;
@@ -0,0 +1 @@
1
+ export declare const getMonthNameProper: (month: number) => string;
@@ -0,0 +1,6 @@
1
+ import { IDateItem } from "~interfaces/Calendar";
2
+ export declare const getValideMonthAndDay: ({ day, month, year }: IDateItem) => {
3
+ day: number;
4
+ month: number;
5
+ year: number;
6
+ };
@@ -0,0 +1,6 @@
1
+ export declare const minYear: number;
2
+ export declare const minMonth = 0;
3
+ export declare const maxMonth = 11;
4
+ export declare const currentYear: number;
5
+ export declare const currentMonth: number;
6
+ export declare const currentDay: number;
@@ -0,0 +1 @@
1
+ export declare const inverseDate: (dateStr: string) => string;
@@ -0,0 +1,3 @@
1
+ import { IDateItem } from "~interfaces/Calendar";
2
+ export declare const isValidateDate: (date: IDateItem) => boolean;
3
+ export declare const isInvalidateDate: (props: IDateItem) => boolean;
@@ -0,0 +1,2 @@
1
+ import { IDateItem } from "~interfaces/Calendar";
2
+ export declare const normalizeDayAndMonth: ({ day, month, year }: IDateItem) => number;
@@ -0,0 +1,2 @@
1
+ import { IDateItem } from "~interfaces/Calendar";
2
+ export declare const getDaysRange: ({ day, month, year }: IDateItem<number>) => number[];
@@ -0,0 +1 @@
1
+ export declare const getMonthRange: (month: number, year: number) => number[];
@@ -0,0 +1 @@
1
+ export declare const getYearRange: (year: number) => string[];
@@ -0,0 +1,3 @@
1
+ import { ICalendarPeriod } from "~interfaces/Calendar";
2
+ export declare const isValidDateRange: ({ from, to }: ICalendarPeriod) => boolean;
3
+ export declare const isInvalidDateRange: (props: ICalendarPeriod) => boolean;
@@ -0,0 +1 @@
1
+ export declare const joinClasses: (...args: unknown[]) => string;
@@ -0,0 +1 @@
1
+ export declare const SetCharAt: (str: string, index: number, chr: string) => string;
@@ -0,0 +1 @@
1
+ export declare const toPascalCase: (str: string) => string;
package/package.json CHANGED
@@ -1,13 +1,9 @@
1
1
  {
2
2
  "name": "@egov3/system-design",
3
- "version": "2.1.49",
4
- "main": "dist/index.cjs",
5
- "module": "dist/index.js",
6
- "types": "dist/index.d.ts",
7
- "type": "module",
8
- "author": "Zhassulan Baigozha",
9
- "license": "ISC",
10
- "description": "A system-design NPM package in Typescript",
3
+ "version": "2.2.2",
4
+ "main": "dist/cjs/index.js",
5
+ "types": "dist/esm/index.d.ts",
6
+ "module": "dist/esm/index.js",
11
7
  "files": [
12
8
  "dist"
13
9
  ],
@@ -16,13 +12,14 @@
16
12
  "url": "https://github.com/egov3/system-design.git"
17
13
  },
18
14
  "scripts": {
19
- "rebuild": "rm -rf node_modules dist && yarn cache clean && yarn install && yarn build",
20
- "build": "tsup",
21
- "depcheck": "depcheck",
22
- "prepublishOnly": "yarn build",
15
+ "build": "rollup -c",
16
+ "test": "jest",
23
17
  "sb": "storybook dev -p 6006",
24
- "test": "jest"
18
+ "build-storybook": "storybook build"
25
19
  },
20
+ "author": "Zhassulan Baigozha",
21
+ "license": "ISC",
22
+ "description": "A system-design NPM package in Typescript",
26
23
  "peerDependencies": {
27
24
  "react": ">=18.0.0 <20.0.0",
28
25
  "react-dom": ">=18.0.0 <20.0.0"
@@ -34,48 +31,43 @@
34
31
  "@babel/preset-typescript": "^7.16.0",
35
32
  "@chromatic-com/storybook": "^3.2.4",
36
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
37
  "@storybook/addon-actions": "^8.5.2",
38
38
  "@storybook/addon-essentials": "^8.5.2",
39
39
  "@storybook/addon-links": "^8.5.2",
40
40
  "@storybook/addon-webpack5-compiler-babel": "^3.0.5",
41
- "@storybook/core": "^8.6.4",
42
41
  "@storybook/mdx2-csf": "^1.1.0",
43
42
  "@storybook/preset-scss": "^1.0.3",
44
43
  "@storybook/react": "^8.5.2",
45
44
  "@storybook/react-webpack5": "^8.5.2",
46
45
  "@storybook/test": "^8.5.2",
47
- "@testing-library/dom": "^10.4.0",
48
- "@testing-library/react": "^16.2.0",
49
- "@types/css-modules": "^1.0.5",
46
+ "@testing-library/react": "^13.3.0",
50
47
  "@types/jest": "^28.1.6",
51
- "@types/node": "^22.13.10",
52
- "@types/react": "^19.0.10",
53
- "@types/react-dom": "^19.0.4",
48
+ "@types/react": "^18.0.15",
54
49
  "babel-jest": "^27.3.1",
55
50
  "babel-loader": "^8.2.3",
56
51
  "css-loader": "^6.5.1",
57
- "depcheck": "^1.4.7",
58
- "esbuild": "^0.25.1",
59
- "esbuild-sass-plugin": "^3.3.1",
60
52
  "html-webpack-plugin": "^5.5.0",
61
53
  "identity-obj-proxy": "^3.0.0",
62
54
  "jest": "^28.1.3",
63
55
  "postcss": "^8.5.3",
64
56
  "postcss-loader": "^8.1.1",
65
- "react": "^19.0.0",
66
- "react-dom": "^19.0.0",
57
+ "react": "^18.2.0",
58
+ "react-dom": "^18.2.0",
59
+ "rollup": "^2.60.0",
60
+ "rollup-plugin-dts": "^4.0.1",
61
+ "rollup-plugin-postcss": "^4.0.2",
67
62
  "sass": "^1.85.1",
68
- "sass-embedded": "^1.85.1",
69
- "sass-loader": "^16.0.5",
63
+ "sass-loader": "^12.3.0",
70
64
  "storybook": "^8.5.2",
71
65
  "style-loader": "^3.3.1",
72
- "tsup": "^8.4.0",
73
- "typescript": "^5.8.2",
74
- "typescript-plugin-css-modules": "^5.1.0",
75
- "webpack": "^5.98.0"
66
+ "typescript": "^4.7.4",
67
+ "webpack": "^5"
76
68
  },
77
69
  "dependencies": {
78
- "@egov3/graphics": "^1.0.48",
70
+ "@egov3/graphics": "^1.0.49",
79
71
  "tsconfig-paths-webpack-plugin": "^4.2.0"
80
72
  }
81
73
  }
package/dist/index.cjs DELETED
@@ -1,2 +0,0 @@
1
- "use strict";var jt=Object.create;var q=Object.defineProperty;var Gt=Object.getOwnPropertyDescriptor;var $t=Object.getOwnPropertyNames;var Ut=Object.getPrototypeOf,Kt=Object.prototype.hasOwnProperty;var Xt=(t,e)=>{for(var r in e)q(t,r,{get:e[r],enumerable:!0})},yt=(t,e,r,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of $t(e))!Kt.call(t,o)&&o!==r&&q(t,o,{get:()=>e[o],enumerable:!(a=Gt(e,o))||a.enumerable});return t};var b=(t,e,r)=>(r=t!=null?jt(Ut(t)):{},yt(e||!t||!t.__esModule?q(r,"default",{value:t,enumerable:!0}):r,t)),zt=t=>yt(q({},"__esModule",{value:!0}),t);var ce={};Xt(ce,{default:()=>pe});module.exports=zt(ce);var R=b(require("react"),1);var Q={};var p=(...t)=>t.filter(e=>!!e).join(" ");var ft=({open:t,setOpen:e,children:r,title:a})=>R.default.createElement(R.default.Fragment,null,R.default.createElement("button",{"data-testid":"Accordion_BUTTON",className:Q.accordionBtn,onClick:()=>{e(!t)}},a,R.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"}},R.default.createElement("path",{d:"M15.8346 7.5L10.0013 13.3333L4.16797 7.5",stroke:"#758393"}))),R.default.createElement("div",{"data-testid":"Accordion_CONTENT",className:p(Q.accordionContent,!t&&Q["accordionContent--hidden"])},r));var gt=b(require("react"),1);var A={};var bt=({onClick:t,children:e,style:r,className:a="",isRounded:o=!1,disabled:n=!1,variant:s="default",size:I="medium",ariaLabel:D="\u041A\u043D\u043E\u043F\u043A\u0430"})=>gt.default.createElement("button",{"data-testid":"Button_MAIN","aria-label":D,disabled:n,"aria-disabled":n,onClick:t,className:p(A[`btn--${I}`],o?A[`btn-rounded--${I}`]:A[`btn-square--${I}`],n?A[`btn-${s}--disabled`]:A[`btn-${s}`],A.button,a),style:r},e);var pt=b(require("@egov3/graphics"),1),v=b(require("react"),1);var u={day:{toString:t=>String(t).padStart(2,"0"),toNumber:t=>+t},month:{toString:t=>String(t+1).padStart(2,"0"),toNumber:t=>+t-1},year:{toString:t=>String(t),toNumber:t=>+t}},Wt={toString:({day:t,month:e,year:r})=>({day:u.day.toString(t),month:u.month.toString(e),year:u.year.toString(r)}),toNumber:({day:t,month:e,year:r})=>({day:u.day.toNumber(t),month:u.month.toNumber(e),year:u.year.toNumber(r)})},qt={toString:({from:{day:t,month:e,year:r},to:{day:a,month:o,year:n}})=>({from:{day:u.day.toString(t),month:u.month.toString(e),year:u.year.toString(r)},to:{day:u.day.toString(a),month:u.month.toString(o),year:u.year.toString(n)}}),toNumber:({from:{day:t,month:e,year:r},to:{day:a,month:o,year:n}})=>({from:{day:u.day.toNumber(t),month:u.month.toNumber(e),year:u.year.toNumber(r)},to:{day:u.day.toNumber(a),month:u.month.toNumber(o),year:u.year.toNumber(n)}})},l={date:Wt,dateRange:qt,...u};var Z=new Date(0).getFullYear(),ht=0,xt=11,N=new Date().getFullYear(),z=new Date().getMonth(),lt=new Date().getDate();var dt=t=>{let e=new Date(N,t).toLocaleString("ru-RU",{month:"long"});return e.charAt(0).toUpperCase()+e.slice(1)};var tt=(t,e)=>new Date(e,t+1,0).getDate();var G=(t,e=1)=>Array.from({length:t},(r,a)=>e+a);var vt=({day:t,month:e,year:r})=>{let a=Math.max(t-2,1),o=Math.min(t+2,tt(e,r));return G(o-a+1,a)};var It=(t,e)=>{if(!Number.isInteger(t)||t<0||t>11)throw new Error(`Invalid month: ${t}`);if(!Number.isInteger(e))throw new Error(`Invalid year: ${e}`);let r=Math.max(t-2,ht),a=Math.min(t+2,xt);return G(a-r+1,r)};var Ct=t=>{let e=Math.max(t-2,Z),r=Math.min(t+2,N);return G(r-e+1,e).map(String)};var Qt=({from:t,to:e})=>{let r=new Date(t.year,t.month-1,t.day),a=new Date(e.year,e.month-1,e.day);return r.getTime()<=a.getTime()},L=t=>!Qt(t);var E=t=>t.toLowerCase().charAt(0).toUpperCase()+t.toLowerCase().slice(1);var g={};var Dt=({changeDate:t,handleMouseDown:e,handleMouseUp:r,selectedCalenderDate:a,selectedPeriodInterval:o,setDistanceTraveled:n,setInitialY:s})=>{let I={day:l.month.toNumber(a[o].month)<15,month:l.month.toNumber(a[o].month)<6,year:l.year.toNumber(a[o].year)<2020},D={day:i=>a[o].day===i?g.currentText:g.text,month:i=>i===dt(l.month.toNumber(a[o].month))?p(g.currentText,g.currentMonth):g.text,year:i=>a[o].year===i?g.currentText:g.text},C=Ct(l.year.toNumber(a[o].year)),P=It(l.month.toNumber(a[o].month),l.year.toNumber(a[o].year)).map(i=>dt(i)),S=vt(l.date.toNumber(a[o])).map(i=>l.day.toString(i)),T={year:C,month:P,day:S},B=(i,h)=>{let M=i.deltaY,j=Math.abs(M),X=M>0?1:-1;j>0&&(t[h](X),n(j),s(i.clientY))},F=["day","month","year"];return v.default.createElement("div",{"data-testid":"Calendar_COVER",className:g.cover},F.map(i=>v.default.createElement("div",{"data-testid":`Calendar${E(i)}_WRAPPER`,className:p(g.wrapper,`styles.wrapper${E(i)}`),key:i},v.default.createElement("button",{"data-testid":`Calendar${E(i)}Button_UP`,onClick:()=>t[i](-1),"aria-label":"\u041A\u043D\u043E\u043F\u043A\u0430 \u0432\u0432\u0435\u0440\u0445",className:g.btnUpAndDown},v.default.createElement(pt.default.Basic.ChevronUpSmall,{fill:"#758393"})),v.default.createElement("div",{"data-testid":`Calendar${E(i)}_SELECT`,className:p(g.block,I[i]?g.end:g.start)},v.default.createElement("button",{"data-testid":`Calendar${E(i)}_BUTTON`,onMouseDown:h=>e(h,i),onMouseUp:r,onWheel:h=>B(h,i),className:g.btn},T[i].map(h=>v.default.createElement(f.Typography,{key:h,"data-testid":`Calendar${E(i)}_ITEM`,tag:"span",fontClass:"Body1Regular","aria-label":h,className:p(D[i](h),L(l.dateRange.toNumber(a))?g.currentError:void 0)},h)))),v.default.createElement("button",{"data-testid":`Calendar${E(i)}Button_DOWN`,onClick:()=>{t[i](1)},"aria-label":"\u043A\u043D\u043E\u043F\u043A\u0430 \u0432\u043D\u0438\u0437",className:g.btnUpAndDown},v.default.createElement(pt.default.Basic.ChevronDownSmall,{fill:"#758393"})))))};var V=b(require("react"),1);var et={};var St=({selectedCalenderDate:t,setSelectedPeriod:e,setIsModalOpen:r,setSelectedRadioOption:a})=>{let o=()=>{r(!1),a("custom");let n=[t.from.year,t.from.month,t.from.day].join("-"),s=[t.to.year,t.to.month,t.to.day].join("-");e({fromDate:n,toDate:s,periodSelected:!0})};return V.default.createElement(V.default.Fragment,null,L(l.dateRange.toNumber(t))&&V.default.createElement(f.Typography,{className:p(et.currentError,et.textError),"data-testid":"CalendarError_DISCRIPTION",tag:"span",fontClass:"Caption1Regular","aria-label":"\u0412\u044B \u0432\u0432\u0435\u043B\u0438 \u043D\u0435\u043A\u043E\u0440\u0440\u0435\u043A\u0442\u043D\u0443\u044E \u0434\u0430\u0442\u0443, \u0438\u0437\u043C\u0435\u043D\u0438\u0442\u0435 \u0434\u0430\u043D\u043D\u044B\u0435"},"\u0412\u044B \u0432\u0432\u0435\u043B\u0438 \u043D\u0435\u043A\u043E\u0440\u0440\u0435\u043A\u0442\u043D\u0443\u044E \u0434\u0430\u0442\u0443, \u0438\u0437\u043C\u0435\u043D\u0438\u0442\u0435 \u0434\u0430\u043D\u043D\u044B\u0435"),V.default.createElement(f.Button,{disabled:L(l.dateRange.toNumber(t)),className:et.save,size:"large",onClick:o},"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C"))};var ot=b(require("react"),1);var _={from:"from",to:"to"};var J={};var Tt=({setSelectedPeriodInterval:t,selectedPeriodInterval:e,selectedCalenderDate:r})=>{let a=[{key:_.from,label:"\u041F\u0435\u0440\u0438\u043E\u0434 \u0441",onClick:()=>{t(_.from)}},{key:_.to,label:"\u041F\u0435\u0440\u0438\u043E\u0434 \u0434\u043E",onClick:()=>{t(_.to)}}];return ot.default.createElement("div",{"data-testid":"CalendarTab_WRAP",className:J.tab},a.map(o=>ot.default.createElement("button",{key:o.key,"data-testid":`CalendarTabButton_${o.key.toUpperCase()}`,className:p(e===o.key?J.titleActiv:J.title,L(l.dateRange.toNumber(r))?J.titleError:void 0),onClick:()=>{t(o.key)},"aria-label":`\u041A\u043D\u043E\u043F\u043A\u0430 ${o.label}`},ot.default.createElement(f.Typography,{"data-testid":`CalendarTabTitle_${o.key.toUpperCase()}`,tag:"span",fontClass:"Body1Medium","aria-label":"\u041F\u0435\u0440\u0438\u043E\u0434 \u0441"},o.label," ...*"))))};var c=b(require("react"),1);var rt=({day:t,month:e,year:r})=>{let a=tt(e,r),o;return t>a?o=a:o=t,e===z&&r===N&&o>lt&&(o=lt),o};var Mt=({day:t,month:e,year:r})=>{let a=N===r&&e>z?z:e;return{day:rt({day:t,month:a,year:r}),month:a,year:r}};var at=t=>{let{day:e,month:r,year:a}=t;if(a<Z||r<0||r>11)return!1;let o=new Date(a,r,e);if(o.getFullYear()!==a||o.getMonth()!==r||o.getDate()!==e)return!1;let n=new Date,s=new Date(n.getFullYear(),n.getMonth(),n.getDate());return o<=s};var wt={};var Nt=({setSelectedPeriod:t,selectedPeriod:e,setIsModalOpen:r,setSelectedRadioOption:a})=>{let[o,n]=(0,c.useState)({from:{day:e.fromDate.split("-")[2],month:e.fromDate.split("-")[1],year:e.fromDate.split("-")[0]},to:{day:e.toDate.split("-")[2],month:e.fromDate.split("-")[1],year:e.toDate.split("-")[0]}}),[s,I]=(0,c.useState)(_.from),[D,C]=(0,c.useState)({day:!1,month:!1,year:!1}),[P,S]=(0,c.useState)(0),[T,B]=(0,c.useState)(0),F=(0,c.useCallback)(d=>{let y={day:l.day.toNumber(o[s].day)+d,month:l.month.toNumber(o[s].month),year:l.year.toNumber(o[s].year)};at(y)&&n({...o,[s]:l.date.toString(y)})},[o,s,n]),i=(0,c.useCallback)(d=>{let m=l.month.toNumber(o[s].month)+d,x={day:rt({day:l.day.toNumber(o[s].day),month:m,year:l.year.toNumber(o[s].year)}),month:m,year:l.year.toNumber(o[s].year)};at(x)&&n({...o,[s]:l.date.toString(x)})},[o,s,n]),h=(0,c.useCallback)(d=>{let m=l.year.toNumber(o[s].year)+d,y=Mt(l.date.toNumber({day:o[s].day,month:o[s].month,year:l.year.toString(m)}));at(y)&&n({...o,[s]:l.date.toString(y)})},[o,s,n]),M=(0,c.useMemo)(()=>({day:F,month:i,year:h}),[F,i,h]),j=(d,m)=>{let y={day:()=>C(x=>({...x,day:!0})),month:()=>C(x=>({...x,month:!0})),year:()=>C(x=>({...x,year:!0}))};y[m]&&y[m](),S(d.clientY),B(0)},X=d=>{let m=document.querySelector("[aria-disabled=true]");if(!m)return!1;let y=m.getBoundingClientRect();return d.clientX>=y.left&&d.clientX<=y.right&&d.clientY>=y.top&&d.clientY<=y.bottom},w=(0,c.useCallback)(()=>{C({day:!1,month:!1,year:!1})},[]),W=(0,c.useCallback)((d,m)=>{if(X(d)){w();return}let y=d.clientY-P;if(!D[m])return;let x=Math.abs(y);x>5&&x-T>=5&&(M[m](y>0?-1:1),B(x),S(d.clientY)),m==="year"&&C(Ft=>({...Ft,year:!0}))},[M,T,w,P,D]);return(0,c.useEffect)(()=>{let d=m=>{["day","month","year"].forEach(x=>{W(m,x)})};return document.addEventListener("mousemove",d),document.addEventListener("mouseup",w),()=>{document.removeEventListener("mousemove",d),document.removeEventListener("mouseup",w)}},[W,w]),c.default.createElement("div",{"data-testid":"Calendar_MODAL",className:wt.modalBlock},c.default.createElement(f.Calendar.Header,{selectedCalenderDate:o,selectedPeriodInterval:s,setSelectedPeriodInterval:I}),c.default.createElement(f.Calendar.Body,{changeDate:M,handleMouseDown:j,handleMouseUp:w,selectedCalenderDate:o,selectedPeriodInterval:s,setDistanceTraveled:B,setInitialY:S}),c.default.createElement(f.Calendar.Footer,{selectedCalenderDate:o,setIsModalOpen:r,setSelectedPeriod:t,setSelectedRadioOption:a}))};var Et={Body:Dt,Footer:St,Main:Nt,Header:Tt};var k=b(require("react"),1);var O={};var ct=b(require("react"),1),mt=({fill:t="none",pathFill:e="#fff",width:r=20,height:a=20,...o})=>ct.default.createElement("svg",{"data-testid":"Icons_CLEAR",xmlns:"http://www.w3.org/2000/svg",width:r,height:a,fill:t,viewBox:"0 0 20 20",...o},ct.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 kt=(0,k.forwardRef)(({onFocus:t,onBlur:e,onChange:r,onEnterPress:a,value:o="",inputLeftIcon:n,placeholder:s="",className:I="",style:D,isClearable:C=!1,type:P="text",id:S,labelText:T="",ariaLabel:B="",focused:F=!1,setFocused:i=()=>{},readOnly:h=!1,inline:M=!0},j)=>{let X=()=>{r&&r({target:{value:""}})},w=()=>{i(!0),t&&t()},W=()=>{i(!1),e&&e()},d=m=>{a&&m.key==="Enter"&&a(m)};return k.default.createElement("div",{"data-testid":"InputField_MAIN",className:p(O[T.length?"inputContainerLabeled":"inputContainer"],F?O["input--onfocus"]:void 0,O[`input-${P?.toLocaleLowerCase()}`],I),style:D},k.default.createElement("div",{className:M&&O.inline},T.length>0&&k.default.createElement("label",{htmlFor:S,"data-testid":"InputField_LABEL"},T),n,k.default.createElement("input",{ref:j,"data-testid":"InputField_INPUT","aria-label":B,id:S,type:P,className:O.input,placeholder:s,"aria-placeholder":s,onFocus:w,onBlur:W,onChange:r,onKeyDown:d,value:o,readOnly:h})),C&&o&&k.default.createElement(mt,{fill:"red",pathFill:"#758393",className:O.clearIcon,onClick:X}))});var Y=b(require("react"),1),Pt=b(require("@egov3/graphics"),1);var $={};var Bt=({open:t,setOpen:e,children:r,headerTitle:a,variant:o})=>t?Y.default.createElement("div",{"data-testid":"Modal_OVERLAY",className:$.overlay},Y.default.createElement("div",{"data-testid":"Modal_WRAPPER",className:p($.contentWrap,$[`${o}Variant`])},a&&a.length>0&&Y.default.createElement("div",{"data-testid":"Modal_HEADER",className:$.contentHeader},Y.default.createElement(f.Typography,{tag:"h3",fontClass:"Body1Medium","data-testid":"Modal_TITLE",className:$.title},a),Y.default.createElement("button",{"data-testid":"ModalHeader_BTN",onClick:()=>{e(!t)}},Y.default.createElement(Pt.default.General.Close,{"data-testid":"Modal_ICON"}))),r)):null;var H=b(require("react"),1);var nt={};var ut=({label:t,name:e,checked:r,onChange:a,value:o})=>H.default.createElement("label",{"data-testid":"RadioGroupItem_LABEL",className:nt.radio},H.default.createElement("input",{"data-testid":"RadioGroupItem_INPUT",value:o,type:"radio",name:e,checked:r,onChange:a}),H.default.createElement("span",{"data-testid":"RadioGroupItem_RADIO",className:nt.radioBtn}),H.default.createElement("span",{"data-testid":"RadioGroupItem_TEXT",className:nt.radioBtnText},t)),Rt=({RadioGroupItems:t,invokeCustomOnChange:e,setSelectedOption:r,selectedOption:a})=>{let o=n=>{r(n.target.value),e(n)};return H.default.createElement("fieldset",{"data-testid":"RadioGroup_FIELDSET"},t.map(n=>H.default.createElement(ut,{key:n.label,label:n.label,name:"radio",checked:a===n.value,onChange:o,value:n.value})))};var st=b(require("react"),1);var it={};var At=({lock:t,setLock:e})=>st.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)}},st.default.createElement("div",{"data-testid":"RadioToggle_WRAP",className:p(it.wrap,t&&it.wrapLock)},st.default.createElement("div",{"data-testid":"RadioToggle_ROUND",className:it.round})));var K=b(require("react"),1),Lt=b(require("@egov3/graphics"),1);var U={};var _t=({setIsOpen:t,labelText:e,disabled:r,error:a,modalValue:o})=>K.default.createElement("button",{"data-testid":"SelectBoxModal_BUTTON",className:U.selectContainer,onClick:()=>!r&&t(!0)},K.default.createElement("div",{"data-testid":"SelectBoxModal_TITLE"},K.default.createElement(f.Typography,{tag:"label",fontClass:"Caption1Regular","data-testid":"SelectBoxModal_LABEL",className:a?U.errorLabel:U.label,"aria-label":e},e),o&&o.length>0&&K.default.createElement(f.Typography,{tag:"div",fontClass:"Body2Regular","data-testid":"SelectBoxModal_VALUE",className:U.selectText,"aria-label":o},o)),K.default.createElement(Lt.default.Basic.ChevronDownSmall,{"aria-label":"\u043A\u043D\u043E\u043F\u043A\u0430 \u0440\u0430\u0437\u0432\u0435\u0440\u043D\u0443\u0442\u044C",fill:"#758393",className:U.clearIcon}));var Yt=b(require("react"),1);var Ot={};var Ht=({tag:t,fontClass:e,className:r,children:a,style:o,...n})=>Yt.default.createElement(t,{...n,className:p(e?Ot[e]:"",r),style:o},a);var f={Accordion:ft,Button:bt,Calendar:Et,CustomRadioButton:ut,InputField:kt,Modal:Bt,RadioGroup:Rt,RadioToggle:At,SelectBoxButton:_t,Typography:Ht};var de={Components:f},pe=de;
2
- //# sourceMappingURL=index.cjs.map