@yakad/ui 1.1.0 → 1.1.1

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 (110) hide show
  1. package/{src/appBar → appBar}/appBar.module.css +0 -0
  2. package/{src/appBar → appBar}/appBar.tsx +0 -0
  3. package/button/button.module.css +113 -0
  4. package/button/button.tsx +53 -0
  5. package/{src/card → card}/card.module.css +0 -0
  6. package/{src/card → card}/card.tsx +0 -0
  7. package/{src/clickAwayListener → clickAwayListener}/clickAwayListener.tsx +0 -0
  8. package/{src/container → container}/container.module.css +1 -1
  9. package/{src/container → container}/container.tsx +0 -0
  10. package/{src/footer → footer}/footer.module.css +0 -0
  11. package/{src/footer → footer}/footer.tsx +0 -0
  12. package/{src/form → form}/form.module.css +0 -0
  13. package/{src/form → form}/form.tsx +0 -0
  14. package/gridContainer/gridContainer.module.css +5 -0
  15. package/gridContainer/gridContainer.tsx +28 -0
  16. package/gridItem/gridItem.module.css +192 -0
  17. package/{src/gridItem → gridItem}/gridItem.tsx +2 -3
  18. package/{src/historyBack → historyBack}/historyBack.tsx +0 -0
  19. package/{src/hr → hr}/hr.module.css +0 -0
  20. package/{src/hr → hr}/hr.tsx +0 -0
  21. package/{src/index.tsx → index.tsx} +0 -0
  22. package/{src/list → list}/list.module.css +0 -0
  23. package/{src/list → list}/list.tsx +0 -0
  24. package/{src/listItem → listItem}/listItem.module.css +0 -0
  25. package/{src/listItem → listItem}/listItem.tsx +0 -0
  26. package/{src/main → main}/main.module.css +0 -0
  27. package/{src/main → main}/main.tsx +0 -0
  28. package/{src/navigation → navigation}/navigation.module.css +0 -0
  29. package/{src/navigation → navigation}/navigation.tsx +0 -0
  30. package/package.json +1 -1
  31. package/{src/page → page}/page.module.css +0 -0
  32. package/{src/page → page}/page.tsx +0 -0
  33. package/{src/row → row}/row.module.css +0 -0
  34. package/{src/row → row}/row.tsx +0 -0
  35. package/{src/spacer → spacer}/spacer.module.css +0 -0
  36. package/{src/spacer → spacer}/spacer.tsx +0 -0
  37. package/{src/stack → stack}/stack.module.css +0 -0
  38. package/{src/stack → stack}/stack.tsx +0 -0
  39. package/{src/svgIcon → svgIcon}/svgIcon.module.css +0 -0
  40. package/{src/svgIcon → svgIcon}/svgIcon.tsx +0 -0
  41. package/tsconfig.json +11 -11
  42. package/declaration.d.ts +0 -1
  43. package/src/appBar/appBar.d.ts +0 -3
  44. package/src/appBar/appBar.js +0 -9
  45. package/src/appBar/appBar.js.map +0 -1
  46. package/src/button/button.d.ts +0 -9
  47. package/src/button/button.js +0 -17
  48. package/src/button/button.js.map +0 -1
  49. package/src/button/button.module.css +0 -113
  50. package/src/button/button.tsx +0 -49
  51. package/src/card/card.d.ts +0 -3
  52. package/src/card/card.js +0 -9
  53. package/src/card/card.js.map +0 -1
  54. package/src/clickAwayListener/clickAwayListener.d.ts +0 -6
  55. package/src/clickAwayListener/clickAwayListener.js +0 -17
  56. package/src/clickAwayListener/clickAwayListener.js.map +0 -1
  57. package/src/container/container.d.ts +0 -7
  58. package/src/container/container.js +0 -9
  59. package/src/container/container.js.map +0 -1
  60. package/src/footer/footer.d.ts +0 -3
  61. package/src/footer/footer.js +0 -9
  62. package/src/footer/footer.js.map +0 -1
  63. package/src/form/form.d.ts +0 -3
  64. package/src/form/form.js +0 -12
  65. package/src/form/form.js.map +0 -1
  66. package/src/gridContainer/gridContainer.d.ts +0 -12
  67. package/src/gridContainer/gridContainer.js +0 -11
  68. package/src/gridContainer/gridContainer.js.map +0 -1
  69. package/src/gridContainer/gridContainer.module.css +0 -5
  70. package/src/gridContainer/gridContainer.tsx +0 -28
  71. package/src/gridItem/gridItem.d.ts +0 -10
  72. package/src/gridItem/gridItem.js +0 -21
  73. package/src/gridItem/gridItem.js.map +0 -1
  74. package/src/gridItem/gridItem.module.css +0 -192
  75. package/src/historyBack/historyBack.d.ts +0 -3
  76. package/src/historyBack/historyBack.js +0 -11
  77. package/src/historyBack/historyBack.js.map +0 -1
  78. package/src/hr/hr.d.ts +0 -8
  79. package/src/hr/hr.js +0 -12
  80. package/src/hr/hr.js.map +0 -1
  81. package/src/index.d.ts +0 -21
  82. package/src/index.js +0 -22
  83. package/src/index.js.map +0 -1
  84. package/src/list/list.d.ts +0 -7
  85. package/src/list/list.js +0 -9
  86. package/src/list/list.js.map +0 -1
  87. package/src/listItem/listItem.d.ts +0 -3
  88. package/src/listItem/listItem.js +0 -7
  89. package/src/listItem/listItem.js.map +0 -1
  90. package/src/main/main.d.ts +0 -6
  91. package/src/main/main.js +0 -10
  92. package/src/main/main.js.map +0 -1
  93. package/src/navigation/navigation.d.ts +0 -7
  94. package/src/navigation/navigation.js +0 -9
  95. package/src/navigation/navigation.js.map +0 -1
  96. package/src/page/page.d.ts +0 -3
  97. package/src/page/page.js +0 -9
  98. package/src/page/page.js.map +0 -1
  99. package/src/row/row.d.ts +0 -3
  100. package/src/row/row.js +0 -9
  101. package/src/row/row.js.map +0 -1
  102. package/src/spacer/spacer.d.ts +0 -3
  103. package/src/spacer/spacer.js +0 -7
  104. package/src/spacer/spacer.js.map +0 -1
  105. package/src/stack/stack.d.ts +0 -3
  106. package/src/stack/stack.js +0 -9
  107. package/src/stack/stack.js.map +0 -1
  108. package/src/svgIcon/svgIcon.d.ts +0 -6
  109. package/src/svgIcon/svgIcon.js +0 -12
  110. package/src/svgIcon/svgIcon.js.map +0 -1
File without changes
File without changes
@@ -0,0 +1,113 @@
1
+ .button {
2
+ display: flex;
3
+ align-items: center;
4
+ line-height: 3rem;
5
+ padding: 0 var(--padding);
6
+ border: none;
7
+ background: none;
8
+ color: inherit;
9
+ fill: inherit;
10
+ user-select: none;
11
+ cursor: pointer;
12
+ box-sizing: border-box;
13
+ }
14
+ .small {
15
+ min-width: 3rem;
16
+ height: 3rem;
17
+ --padding: 1.2rem;
18
+ gap: 0.4rem;
19
+ font-size: 1.2rem;
20
+ --border-radius: 1.5rem;
21
+ }
22
+ .medium {
23
+ min-width: 4rem;
24
+ height: 4rem;
25
+ --padding: 1.8rem;
26
+ gap: 0.8rem;
27
+ font-size: 1.6rem;
28
+ --border-radius: 2rem;
29
+ }
30
+ .large {
31
+ min-width: 5rem;
32
+ height: 5rem;
33
+ --padding: 2.6rem;
34
+ gap: 1.1rem;
35
+ font-size: 1.8rem;
36
+ --border-radius: 2.5rem;
37
+ }
38
+
39
+ .iconButton {
40
+ padding: 0;
41
+ justify-content: center;
42
+ }
43
+
44
+ .none {
45
+ border-radius: 0;
46
+ }
47
+ .semi {
48
+ border-radius: 0 var(--border-radius) var(--border-radius) 0;
49
+ }
50
+ [dir="rtl"] .semi {
51
+ border-radius: var(--border-radius) 0 0 var(--border-radius);
52
+ }
53
+ .rounded {
54
+ border-radius: var(--border-radius);
55
+ }
56
+
57
+ @media (pointer: fine) {
58
+ .button:hover {
59
+ cursor: pointer;
60
+ box-shadow: inset 0 0 10rem #7d7d7d20;
61
+ }
62
+ }
63
+ .button:active {
64
+ box-shadow: inset 0 0 10rem #7d7d7d30;
65
+ }
66
+ .button:invalid {
67
+ border: 0.1rem solid var(--errorColor);
68
+ }
69
+
70
+ .outlined {
71
+ border: 0.1rem solid #7d7d7d70;
72
+ }
73
+ .filled {
74
+ background: var(--onBackgroundColor);
75
+ color: var(--onPrimaryColor);
76
+ fill: var(--onPrimaryColor);
77
+ }
78
+ .tonal {
79
+ background: var(--onHeaderColor);
80
+ color: var(--onSurfaceColor);
81
+ fill: var(--onSurfaceColor);
82
+ }
83
+ .elevated {
84
+ background-color: var(--onPrimaryColor);
85
+ color: var(--onSurfaceColor);
86
+ fill: var(--onSurfaceColor);
87
+ box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
88
+ }
89
+ .link {
90
+ background: transparent;
91
+ display: block;
92
+ position: relative;
93
+ transition: 0.3s;
94
+ }
95
+ .link:before {
96
+ content: "";
97
+ position: absolute;
98
+ bottom: 0.5rem;
99
+ left: 0;
100
+ right: 0;
101
+ width: 0;
102
+ height: 0.1rem;
103
+ padding: 0;
104
+ margin: 0 auto;
105
+ background-color: var(--secondaryColor);
106
+ transition: 0.3s;
107
+ }
108
+ .link:hover {
109
+ box-shadow: none;
110
+ }
111
+ .link:hover:before {
112
+ width: calc(100% - var(--padding));
113
+ }
@@ -0,0 +1,53 @@
1
+ import React from "react";
2
+ import { joinClassNames } from "@yakad/lib";
3
+ import styles from "./button.module.css";
4
+ import SvgIcon from "../svgIcon/svgIcon";
5
+
6
+ interface ButtonProps extends React.HTMLAttributes<HTMLButtonElement> {
7
+ variant?: "text" | "outlined" | "filled" | "tonal" | "elevated" | "link";
8
+ size?: "small" | "medium" | "large";
9
+ borderStyle?: "none" | "semi" | "rounded";
10
+ icon?: JSX.Element;
11
+ }
12
+
13
+ interface svgSizeMap {
14
+ small: number;
15
+ medium: number;
16
+ large: number;
17
+ }
18
+
19
+ const svgSizeMaps: svgSizeMap = {
20
+ small: 2,
21
+ medium: 2.4,
22
+ large: 3,
23
+ };
24
+
25
+ function Button(props: ButtonProps) {
26
+ const joinedClassNames = joinClassNames(
27
+ styles.button,
28
+ props.variant ? styles[props.variant] : styles.text,
29
+ props.size ? styles[props.size] : styles.medium,
30
+ props.borderStyle ? styles[props.borderStyle] : styles.rounded,
31
+ props.icon && !props.children ? styles.iconButton : "",
32
+ props.className!
33
+ );
34
+
35
+ return (
36
+ <button {...props} className={joinedClassNames}>
37
+ {props.icon ? (
38
+ <SvgIcon
39
+ size={
40
+ props.size
41
+ ? svgSizeMaps[props.size]
42
+ : svgSizeMaps.medium
43
+ }
44
+ >
45
+ {props.icon}
46
+ </SvgIcon>
47
+ ) : null}
48
+ {props.children}
49
+ </button>
50
+ );
51
+ }
52
+
53
+ export default Button;
File without changes
File without changes
@@ -1,6 +1,6 @@
1
1
  div.container {
2
2
  display: flex;
3
- flex-direction: column;
3
+ flex-direction: inherit;
4
4
  width: 100%;
5
5
  margin: auto;
6
6
  box-sizing: border-box;
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -0,0 +1,5 @@
1
+ .gridcontainer {
2
+ display: grid;
3
+ box-sizing: border-box;
4
+ grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
5
+ }
@@ -0,0 +1,28 @@
1
+ import React from "react";
2
+ import { joinClassNames, joinStyles } from "@yakad/lib";
3
+ import styles from "./gridContainer.module.css";
4
+
5
+ interface GridContainerProps extends React.HTMLAttributes<HTMLDivElement> {
6
+ rowGap?: number;
7
+ columnGap?: number;
8
+ }
9
+
10
+ // Custom Button Element
11
+ function GridContainer(props: GridContainerProps) {
12
+ const joinedClassNames = joinClassNames(
13
+ styles.gridcontainer,
14
+ props.className!
15
+ );
16
+ const joinedStyles = joinStyles(
17
+ { columnGap: props.columnGap ? props.columnGap + "rem" : "1.5rem" },
18
+ { rowGap: props.rowGap ? props.rowGap + "rem" : "1.5rem" },
19
+ props.style!
20
+ );
21
+ return (
22
+ <div {...props} className={joinedClassNames} style={joinedStyles}>
23
+ {props.children}
24
+ </div>
25
+ );
26
+ }
27
+
28
+ export default GridContainer;
@@ -0,0 +1,192 @@
1
+ .xl1 {
2
+ grid-column: span 1;
3
+ }
4
+ .xl2 {
5
+ grid-column: span 2;
6
+ }
7
+ .xl3 {
8
+ grid-column: span 3;
9
+ }
10
+ .xl4 {
11
+ grid-column: span 4;
12
+ }
13
+ .xl5 {
14
+ grid-column: span 5;
15
+ }
16
+ .xl6 {
17
+ grid-column: span 6;
18
+ }
19
+ .xl7 {
20
+ grid-column: span 7;
21
+ }
22
+ .xl8 {
23
+ grid-column: span 8;
24
+ }
25
+ .xl9 {
26
+ grid-column: span 9;
27
+ }
28
+ .xl10 {
29
+ grid-column: span 10;
30
+ }
31
+ .xl11 {
32
+ grid-column: span 11;
33
+ }
34
+ .xl12 {
35
+ grid-column: span 12;
36
+ }
37
+
38
+ @media screen and (max-width: 1200px) {
39
+ .lg1 {
40
+ grid-column: span 1;
41
+ }
42
+ .lg2 {
43
+ grid-column: span 2;
44
+ }
45
+ .lg3 {
46
+ grid-column: span 3;
47
+ }
48
+ .lg4 {
49
+ grid-column: span 4;
50
+ }
51
+ .lg5 {
52
+ grid-column: span 5;
53
+ }
54
+ .lg6 {
55
+ grid-column: span 6;
56
+ }
57
+ .lg7 {
58
+ grid-column: span 7;
59
+ }
60
+ .lg8 {
61
+ grid-column: span 8;
62
+ }
63
+ .lg9 {
64
+ grid-column: span 9;
65
+ }
66
+ .lg10 {
67
+ grid-column: span 10;
68
+ }
69
+ .lg11 {
70
+ grid-column: span 11;
71
+ }
72
+ .lg12 {
73
+ grid-column: span 12;
74
+ }
75
+ }
76
+
77
+ @media screen and (max-width: 900px) {
78
+ .md1 {
79
+ grid-column: span 1;
80
+ }
81
+ .md2 {
82
+ grid-column: span 2;
83
+ }
84
+ .md3 {
85
+ grid-column: span 3;
86
+ }
87
+ .md4 {
88
+ grid-column: span 4;
89
+ }
90
+ .md5 {
91
+ grid-column: span 5;
92
+ }
93
+ .md6 {
94
+ grid-column: span 6;
95
+ }
96
+ .md7 {
97
+ grid-column: span 7;
98
+ }
99
+ .md8 {
100
+ grid-column: span 8;
101
+ }
102
+ .md9 {
103
+ grid-column: span 9;
104
+ }
105
+ .md10 {
106
+ grid-column: span 10;
107
+ }
108
+ .md11 {
109
+ grid-column: span 11;
110
+ }
111
+ .md12 {
112
+ grid-column: span 12;
113
+ }
114
+ }
115
+
116
+ @media screen and (max-width: 600px) {
117
+ .sm1 {
118
+ grid-column: span 1;
119
+ }
120
+ .sm2 {
121
+ grid-column: span 2;
122
+ }
123
+ .sm3 {
124
+ grid-column: span 3;
125
+ }
126
+ .sm4 {
127
+ grid-column: span 4;
128
+ }
129
+ .sm5 {
130
+ grid-column: span 5;
131
+ }
132
+ .sm6 {
133
+ grid-column: span 6;
134
+ }
135
+ .sm7 {
136
+ grid-column: span 7;
137
+ }
138
+ .sm8 {
139
+ grid-column: span 8;
140
+ }
141
+ .sm9 {
142
+ grid-column: span 9;
143
+ }
144
+ .sm10 {
145
+ grid-column: span 10;
146
+ }
147
+ .sm11 {
148
+ grid-column: span 11;
149
+ }
150
+ .sm12 {
151
+ grid-column: span 12;
152
+ }
153
+ }
154
+
155
+ @media screen and (max-width: 444px) {
156
+ .xs1 {
157
+ grid-column: span 1;
158
+ }
159
+ .xs2 {
160
+ grid-column: span 2;
161
+ }
162
+ .xs3 {
163
+ grid-column: span 3;
164
+ }
165
+ .xs4 {
166
+ grid-column: span 4;
167
+ }
168
+ .xs5 {
169
+ grid-column: span 5;
170
+ }
171
+ .xs6 {
172
+ grid-column: span 6;
173
+ }
174
+ .xs7 {
175
+ grid-column: span 7;
176
+ }
177
+ .xs8 {
178
+ grid-column: span 8;
179
+ }
180
+ .xs9 {
181
+ grid-column: span 9;
182
+ }
183
+ .xs10 {
184
+ grid-column: span 10;
185
+ }
186
+ .xs11 {
187
+ grid-column: span 11;
188
+ }
189
+ .xs12 {
190
+ grid-column: span 12;
191
+ }
192
+ }
@@ -16,9 +16,8 @@ function GridItem(props: GridItemProps) {
16
16
  props.xl ? styles["xl" + props.xl] : "",
17
17
  props.lg ? styles["lg" + props.lg] : "",
18
18
  props.md ? styles["md" + props.md] : "",
19
- props.sm ? styles["sm" + props.md] : "",
20
- props.xs ? styles["xs" + props.md] : "",
21
-
19
+ props.md ? styles["sm" + props.md] : "",
20
+ props.md ? styles["xs" + props.md] : "",
22
21
  props.className!
23
22
  );
24
23
 
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yakad/ui",
3
- "version": "1.1.0",
3
+ "version": "1.1.1",
4
4
  "description": "",
5
5
  "main": "./src/index.js",
6
6
  "scripts": {
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
package/tsconfig.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
- "compilerOptions": {
3
- "noImplicitAny": true,
4
- "module": "es2022",
5
- "target": "es2022",
6
- "jsx": "react",
7
- "allowJs": true,
8
- "moduleResolution": "node",
9
- "declaration": true,
10
- "sourceMap": true,
11
- "allowSyntheticDefaultImports": true
12
- }
2
+ "compilerOptions": {
3
+ "noImplicitAny": true,
4
+ "module": "es2022",
5
+ "target": "es2022",
6
+ "jsx": "react",
7
+ "allowJs": true,
8
+ "moduleResolution": "node",
9
+ "declaration": true,
10
+ "sourceMap": true,
11
+ "allowSyntheticDefaultImports": true
12
+ }
13
13
  }
package/declaration.d.ts DELETED
@@ -1 +0,0 @@
1
- declare module "*.module.css";
@@ -1,3 +0,0 @@
1
- import React from "react";
2
- declare function AppBar(props: React.HTMLAttributes<HTMLElement>): JSX.Element;
3
- export default AppBar;
@@ -1,9 +0,0 @@
1
- import React from "react";
2
- import { joinClassNames } from "@yakad/lib";
3
- import styles from "./appBar.module.css";
4
- function AppBar(props) {
5
- const joinedClassNames = joinClassNames(styles.header, props.className);
6
- return (React.createElement("header", { ...props, className: joinedClassNames }, props.children));
7
- }
8
- export default AppBar;
9
- //# sourceMappingURL=appBar.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"appBar.js","sourceRoot":"","sources":["appBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAc,MAAM,YAAY,CAAC;AACxD,OAAO,MAAM,MAAM,qBAAqB,CAAC;AAEzC,SAAS,MAAM,CAAC,KAAwC;IACtD,MAAM,gBAAgB,GAAG,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,SAAU,CAAC,CAAC;IAEzE,OAAO,CACL,mCAAY,KAAK,EAAE,SAAS,EAAE,gBAAgB,IAC3C,KAAK,CAAC,QAAQ,CACR,CACV,CAAC;AACJ,CAAC;AAED,eAAe,MAAM,CAAC"}
@@ -1,9 +0,0 @@
1
- import React from "react";
2
- interface ButtonProps extends React.HTMLAttributes<HTMLButtonElement> {
3
- variant?: "text" | "outlined" | "filled" | "tonal" | "elevated" | "link";
4
- size?: "small" | "medium" | "large";
5
- borderStyle?: "none" | "semi" | "rounded";
6
- icon?: JSX.Element;
7
- }
8
- declare function Button(props: ButtonProps): JSX.Element;
9
- export default Button;
@@ -1,17 +0,0 @@
1
- import React from "react";
2
- import { joinClassNames } from "@yakad/lib";
3
- import styles from "./button.module.css";
4
- import SvgIcon from "../svgIcon/svgIcon";
5
- const svgSizeMaps = {
6
- small: 2,
7
- medium: 2.4,
8
- large: 3,
9
- };
10
- function Button(props) {
11
- const joinedClassNames = joinClassNames(styles.button, props.variant ? styles[props.variant] : styles.text, props.size ? styles[props.size] : styles.medium, props.borderStyle ? styles[props.borderStyle] : styles.rounded, props.icon && !props.children ? styles.iconButton : "", props.className);
12
- return (React.createElement("button", { ...props, className: joinedClassNames },
13
- props.icon ? (React.createElement(SvgIcon, { size: props.size ? svgSizeMaps[props.size] : svgSizeMaps.medium }, props.icon)) : null,
14
- props.children));
15
- }
16
- export default Button;
17
- //# sourceMappingURL=button.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"button.js","sourceRoot":"","sources":["button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,MAAM,MAAM,qBAAqB,CAAC;AACzC,OAAO,OAAO,MAAM,oBAAoB,CAAC;AAezC,MAAM,WAAW,GAAe;IAC9B,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,GAAG;IACX,KAAK,EAAE,CAAC;CACT,CAAC;AAEF,SAAS,MAAM,CAAC,KAAkB;IAChC,MAAM,gBAAgB,GAAG,cAAc,CACrC,MAAM,CAAC,MAAM,EACb,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EACnD,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAC/C,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,EAC9D,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EACtD,KAAK,CAAC,SAAU,CACjB,CAAC;IAEF,OAAO,CACL,mCAAY,KAAK,EAAE,SAAS,EAAE,gBAAgB;QAC3C,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CACZ,oBAAC,OAAO,IACN,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,IAE9D,KAAK,CAAC,IAAI,CACH,CACX,CAAC,CAAC,CAAC,IAAI;QACP,KAAK,CAAC,QAAQ,CACR,CACV,CAAC;AACJ,CAAC;AAED,eAAe,MAAM,CAAC"}