@nattstack/ui 0.0.85 → 0.0.87

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 (169) hide show
  1. package/dist/components/button/button-spinner.css +97 -0
  2. package/dist/components/button/button-spinner.js +14 -0
  3. package/dist/components/button/button-spinner.module.js +8 -0
  4. package/dist/components/button/button.css +191 -0
  5. package/dist/components/button/button.d.ts +25 -0
  6. package/dist/components/button/button.js +54 -0
  7. package/dist/components/button/button.module.js +21 -0
  8. package/dist/components/button-link/button-link.d.ts +18 -0
  9. package/dist/components/button-link/button-link.js +23 -0
  10. package/dist/components/checkbox/checkbox-icon.js +22 -0
  11. package/dist/components/checkbox/checkbox.css +55 -0
  12. package/dist/components/checkbox/checkbox.d.ts +8 -0
  13. package/dist/components/checkbox/checkbox.js +21 -0
  14. package/dist/components/checkbox/checkbox.module.js +9 -0
  15. package/dist/components/column/column.css +6 -0
  16. package/dist/components/column/column.d.ts +16 -0
  17. package/dist/components/column/column.js +23 -0
  18. package/dist/components/column/column.module.js +5 -0
  19. package/dist/components/dialog-responsive/dialog-responsive-backdrop.css +28 -0
  20. package/dist/components/dialog-responsive/dialog-responsive-backdrop.js +17 -0
  21. package/dist/components/dialog-responsive/dialog-responsive-backdrop.module.js +5 -0
  22. package/dist/components/dialog-responsive/dialog-responsive-bar.css +16 -0
  23. package/dist/components/dialog-responsive/dialog-responsive-bar.js +15 -0
  24. package/dist/components/dialog-responsive/dialog-responsive-bar.module.js +5 -0
  25. package/dist/components/dialog-responsive/dialog-responsive-popup.css +56 -0
  26. package/dist/components/dialog-responsive/dialog-responsive-popup.d.ts +8 -0
  27. package/dist/components/dialog-responsive/dialog-responsive-popup.js +22 -0
  28. package/dist/components/dialog-responsive/dialog-responsive-popup.module.js +5 -0
  29. package/dist/components/dialog-responsive/dialog-responsive-portal.css +7 -0
  30. package/dist/components/dialog-responsive/dialog-responsive-portal.js +17 -0
  31. package/dist/components/dialog-responsive/dialog-responsive-portal.module.js +5 -0
  32. package/dist/components/dialog-responsive/dialog-responsive-trigger.d.ts +7 -0
  33. package/dist/components/dialog-responsive/dialog-responsive-trigger.js +12 -0
  34. package/dist/components/dialog-responsive/dialog-responsive-viewport.css +18 -0
  35. package/dist/components/dialog-responsive/dialog-responsive-viewport.js +17 -0
  36. package/dist/components/dialog-responsive/dialog-responsive-viewport.module.js +5 -0
  37. package/dist/components/dialog-responsive/dialog-responsive.d.ts +10 -0
  38. package/dist/components/dialog-responsive/dialog-responsive.js +15 -0
  39. package/dist/components/icon-button/icon-button.css +21 -0
  40. package/dist/components/icon-button/icon-button.d.ts +12 -0
  41. package/dist/components/icon-button/icon-button.js +34 -0
  42. package/dist/components/icon-button/icon-button.module.js +11 -0
  43. package/dist/components/index.d.ts +46 -359
  44. package/dist/components/index.js +46 -1034
  45. package/dist/components/input/input.css +84 -0
  46. package/dist/components/input/input.d.ts +22 -0
  47. package/dist/components/input/input.js +44 -0
  48. package/dist/components/input/input.module.js +14 -0
  49. package/dist/components/label/label.css +8 -0
  50. package/dist/components/label/label.d.ts +7 -0
  51. package/dist/components/label/label.js +16 -0
  52. package/dist/components/label/label.module.js +5 -0
  53. package/dist/components/menu/menu-checkbox-item.d.ts +14 -0
  54. package/dist/components/menu/menu-checkbox-item.js +44 -0
  55. package/dist/components/menu/menu-class-names.d.ts +23 -0
  56. package/dist/components/menu/menu-class-names.js +24 -0
  57. package/dist/components/menu/menu-content.d.ts +11 -0
  58. package/dist/components/menu/menu-content.js +38 -0
  59. package/dist/components/menu/menu-group-label.d.ts +9 -0
  60. package/dist/components/menu/menu-group-label.js +16 -0
  61. package/dist/components/menu/menu-group.d.ts +9 -0
  62. package/dist/components/menu/menu-group.js +16 -0
  63. package/dist/components/menu/menu-item.d.ts +10 -0
  64. package/dist/components/menu/menu-item.js +18 -0
  65. package/dist/components/menu/menu-link-item.d.ts +7 -0
  66. package/dist/components/menu/menu-link-item.js +13 -0
  67. package/dist/components/menu/menu-radio-group.d.ts +10 -0
  68. package/dist/components/menu/menu-radio-group.js +17 -0
  69. package/dist/components/menu/menu-radio-item.d.ts +12 -0
  70. package/dist/components/menu/menu-radio-item.js +43 -0
  71. package/dist/components/menu/menu-separator.d.ts +9 -0
  72. package/dist/components/menu/menu-separator.js +16 -0
  73. package/dist/components/menu/menu-submenu-trigger.d.ts +7 -0
  74. package/dist/components/menu/menu-submenu-trigger.js +13 -0
  75. package/dist/components/menu/menu-submenu.d.ts +11 -0
  76. package/dist/components/menu/menu-submenu.js +15 -0
  77. package/dist/components/menu/menu-trigger.d.ts +7 -0
  78. package/dist/components/menu/menu-trigger.js +12 -0
  79. package/dist/components/menu/menu-viewport.d.ts +9 -0
  80. package/dist/components/menu/menu-viewport.js +16 -0
  81. package/dist/components/menu/menu.css +209 -0
  82. package/dist/components/menu/menu.d.ts +12 -0
  83. package/dist/components/menu/menu.js +16 -0
  84. package/dist/components/menu/menu.module.js +24 -0
  85. package/dist/components/otp-field/otp-field-input.css +33 -0
  86. package/dist/components/otp-field/otp-field-input.d.ts +8 -0
  87. package/dist/components/otp-field/otp-field-input.js +16 -0
  88. package/dist/components/otp-field/otp-field-input.module.js +5 -0
  89. package/dist/components/otp-field/otp-field.css +13 -0
  90. package/dist/components/otp-field/otp-field.d.ts +13 -0
  91. package/dist/components/otp-field/otp-field.js +27 -0
  92. package/dist/components/otp-field/otp-field.module.js +8 -0
  93. package/dist/components/row/row.css +6 -0
  94. package/dist/components/row/row.d.ts +16 -0
  95. package/dist/components/row/row.js +23 -0
  96. package/dist/components/row/row.module.js +5 -0
  97. package/dist/components/spacer/spacer.css +5 -0
  98. package/dist/components/spacer/spacer.d.ts +10 -0
  99. package/dist/components/spacer/spacer.js +19 -0
  100. package/dist/components/spacer/spacer.module.js +5 -0
  101. package/dist/components/switch/switch.css +54 -0
  102. package/dist/components/switch/switch.d.ts +19 -0
  103. package/dist/components/switch/switch.js +31 -0
  104. package/dist/components/switch/switch.module.js +10 -0
  105. package/dist/components/tabs/tabs-panel.css +14 -0
  106. package/dist/components/tabs/tabs-panel.d.ts +8 -0
  107. package/dist/components/tabs/tabs-panel.js +17 -0
  108. package/dist/components/tabs/tabs-panel.module.js +5 -0
  109. package/dist/components/tabs/tabs.css +6 -0
  110. package/dist/components/tabs/tabs.d.ts +8 -0
  111. package/dist/components/tabs/tabs.js +17 -0
  112. package/dist/components/tabs/tabs.module.js +5 -0
  113. package/dist/components/tabs-pill/tabs-pill-indicator.css +14 -0
  114. package/dist/components/tabs-pill/tabs-pill-indicator.js +18 -0
  115. package/dist/components/tabs-pill/tabs-pill-indicator.module.js +5 -0
  116. package/dist/components/tabs-pill/tabs-pill-list.css +9 -0
  117. package/dist/components/tabs-pill/tabs-pill-list.d.ts +8 -0
  118. package/dist/components/tabs-pill/tabs-pill-list.js +19 -0
  119. package/dist/components/tabs-pill/tabs-pill-list.module.js +5 -0
  120. package/dist/components/tabs-pill/tabs-pill-tab.css +66 -0
  121. package/dist/components/tabs-pill/tabs-pill-tab.d.ts +10 -0
  122. package/dist/components/tabs-pill/tabs-pill-tab.js +21 -0
  123. package/dist/components/tabs-pill/tabs-pill-tab.module.js +9 -0
  124. package/dist/components/tabs-segmented/tabs-segmented-indicator.css +14 -0
  125. package/dist/components/tabs-segmented/tabs-segmented-indicator.js +18 -0
  126. package/dist/components/tabs-segmented/tabs-segmented-indicator.module.js +5 -0
  127. package/dist/components/tabs-segmented/tabs-segmented-list.css +13 -0
  128. package/dist/components/tabs-segmented/tabs-segmented-list.d.ts +8 -0
  129. package/dist/components/tabs-segmented/tabs-segmented-list.js +19 -0
  130. package/dist/components/tabs-segmented/tabs-segmented-list.module.js +5 -0
  131. package/dist/components/tabs-segmented/tabs-segmented-tab.css +37 -0
  132. package/dist/components/tabs-segmented/tabs-segmented-tab.d.ts +10 -0
  133. package/dist/components/tabs-segmented/tabs-segmented-tab.js +18 -0
  134. package/dist/components/tabs-segmented/tabs-segmented-tab.module.js +5 -0
  135. package/dist/components/tabs-underline/tabs-underline-indicator.css +12 -0
  136. package/dist/components/tabs-underline/tabs-underline-indicator.js +18 -0
  137. package/dist/components/tabs-underline/tabs-underline-indicator.module.js +5 -0
  138. package/dist/components/tabs-underline/tabs-underline-list.css +10 -0
  139. package/dist/components/tabs-underline/tabs-underline-list.d.ts +8 -0
  140. package/dist/components/tabs-underline/tabs-underline-list.js +19 -0
  141. package/dist/components/tabs-underline/tabs-underline-list.module.js +5 -0
  142. package/dist/components/tabs-underline/tabs-underline-tab.css +36 -0
  143. package/dist/components/tabs-underline/tabs-underline-tab.d.ts +10 -0
  144. package/dist/components/tabs-underline/tabs-underline-tab.js +18 -0
  145. package/dist/components/tabs-underline/tabs-underline-tab.module.js +5 -0
  146. package/dist/components/textarea/textarea.css +9 -0
  147. package/dist/components/textarea/textarea.d.ts +17 -0
  148. package/dist/components/textarea/textarea.js +31 -0
  149. package/dist/components/textarea/textarea.module.js +5 -0
  150. package/dist/components/toggle-group/toggle-group-item.css +47 -0
  151. package/dist/components/toggle-group/toggle-group-item.d.ts +11 -0
  152. package/dist/components/toggle-group/toggle-group-item.js +18 -0
  153. package/dist/components/toggle-group/toggle-group-item.module.js +5 -0
  154. package/dist/components/toggle-group/toggle-group.css +7 -0
  155. package/dist/components/toggle-group/toggle-group.d.ts +12 -0
  156. package/dist/components/toggle-group/toggle-group.js +19 -0
  157. package/dist/components/toggle-group/toggle-group.module.js +5 -0
  158. package/dist/components/tooltip/tooltip-popup.css +32 -0
  159. package/dist/components/tooltip/tooltip-popup.d.ts +8 -0
  160. package/dist/components/tooltip/tooltip-popup.js +25 -0
  161. package/dist/components/tooltip/tooltip-popup.module.js +8 -0
  162. package/dist/components/tooltip/tooltip-provider.d.ts +7 -0
  163. package/dist/components/tooltip/tooltip-provider.js +12 -0
  164. package/dist/components/tooltip/tooltip-trigger.d.ts +7 -0
  165. package/dist/components/tooltip/tooltip-trigger.js +12 -0
  166. package/dist/components/tooltip/tooltip.d.ts +10 -0
  167. package/dist/components/tooltip/tooltip.js +14 -0
  168. package/package.json +6 -3
  169. package/dist/components/style.css +0 -1182
@@ -0,0 +1,97 @@
1
+ @layer components {
2
+ .button-spinner-module_base_UApLZa {
3
+ height: var(--size);
4
+ width: var(--size);
5
+ animation: 1s steps(12, end) infinite button-spinner-module_spinner_UApLZa;
6
+ position: absolute;
7
+ scale: -1 1;
8
+ }
9
+
10
+ @keyframes button-spinner-module_spinner_UApLZa {
11
+ to {
12
+ rotate: 1turn;
13
+ }
14
+ }
15
+
16
+ .button-spinner-module_base_UApLZa > div {
17
+ height: calc(var(--size) / 12);
18
+ pointer-events: none;
19
+ transform-origin: 0;
20
+ width: calc(var(--size) / 2);
21
+ transition: all .15s;
22
+ position: absolute;
23
+ top: 50%;
24
+ right: 0;
25
+ translate: 0 -50%;
26
+ }
27
+
28
+ .button-spinner-module_base_UApLZa > div:after {
29
+ content: "";
30
+ background-color: currentColor;
31
+ border-radius: 9999px;
32
+ width: 50%;
33
+ height: 100%;
34
+ position: absolute;
35
+ right: 0;
36
+ }
37
+
38
+ .button-spinner-module_base_UApLZa > div:first-child {
39
+ opacity: 1;
40
+ rotate: 0deg;
41
+ }
42
+
43
+ .button-spinner-module_base_UApLZa > div:nth-child(2) {
44
+ opacity: .925;
45
+ rotate: 30deg;
46
+ }
47
+
48
+ .button-spinner-module_base_UApLZa > div:nth-child(3) {
49
+ opacity: .85;
50
+ rotate: 60deg;
51
+ }
52
+
53
+ .button-spinner-module_base_UApLZa > div:nth-child(4) {
54
+ opacity: .775;
55
+ rotate: 90deg;
56
+ }
57
+
58
+ .button-spinner-module_base_UApLZa > div:nth-child(5) {
59
+ opacity: .7;
60
+ rotate: 120deg;
61
+ }
62
+
63
+ .button-spinner-module_base_UApLZa > div:nth-child(6) {
64
+ opacity: .625;
65
+ rotate: 150deg;
66
+ }
67
+
68
+ .button-spinner-module_base_UApLZa > div:nth-child(7) {
69
+ opacity: .55;
70
+ rotate: 180deg;
71
+ }
72
+
73
+ .button-spinner-module_base_UApLZa > div:nth-child(8) {
74
+ opacity: .475;
75
+ rotate: 210deg;
76
+ }
77
+
78
+ .button-spinner-module_base_UApLZa > div:nth-child(9) {
79
+ opacity: .4;
80
+ rotate: 240deg;
81
+ }
82
+
83
+ .button-spinner-module_base_UApLZa > div:nth-child(10) {
84
+ opacity: .325;
85
+ rotate: 270deg;
86
+ }
87
+
88
+ .button-spinner-module_base_UApLZa > div:nth-child(11) {
89
+ opacity: .25;
90
+ rotate: 300deg;
91
+ }
92
+
93
+ .button-spinner-module_base_UApLZa > div:nth-child(12) {
94
+ opacity: .15;
95
+ rotate: 330deg;
96
+ }
97
+ }
@@ -0,0 +1,14 @@
1
+ import button_spinner_module_default from "./button-spinner.module.js";
2
+ import { jsx } from "react/jsx-runtime";
3
+ //#region src/components/button/button-spinner.tsx
4
+ const SIZE = 18;
5
+ function ButtonSpinner() {
6
+ return /* @__PURE__ */ jsx("div", {
7
+ className: button_spinner_module_default.base,
8
+ "data-slot": "button-spinner",
9
+ style: { "--size": `${SIZE}px` },
10
+ children: Array.from({ length: 12 }).map((_, index) => /* @__PURE__ */ jsx("div", {}, index))
11
+ });
12
+ }
13
+ //#endregion
14
+ export { ButtonSpinner };
@@ -0,0 +1,8 @@
1
+ import './button-spinner.css';
2
+ //#region src/components/button/button-spinner.module.css
3
+ var button_spinner_module_default = {
4
+ "base": "button-spinner-module_base_UApLZa",
5
+ "spinner": "button-spinner-module_spinner_UApLZa"
6
+ };
7
+ //#endregion
8
+ export { button_spinner_module_default as default };
@@ -0,0 +1,191 @@
1
+ @layer components {
2
+ .button-module_base_4nLWdW {
3
+ cursor: pointer;
4
+ outline-offset: 2px;
5
+ user-select: none;
6
+ outline: 2px solid #0000;
7
+ justify-content: center;
8
+ align-items: center;
9
+ column-gap: 8px;
10
+ font-size: 14px;
11
+ font-weight: 500;
12
+ transition-property: background-color, box-shadow, translate;
13
+ transition-duration: .15s;
14
+ display: inline-flex;
15
+ position: relative;
16
+ overflow: hidden;
17
+ }
18
+
19
+ .button-module_base_4nLWdW:active:not(:disabled) {
20
+ translate: 0 1px;
21
+ }
22
+
23
+ .button-module_base_4nLWdW:focus-visible {
24
+ outline-color: var(--color-outline);
25
+ }
26
+
27
+ .button-module_disabled_4nLWdW, .button-module_loading_4nLWdW {
28
+ cursor: not-allowed;
29
+ opacity: .5;
30
+ }
31
+
32
+ .button-module_loading_4nLWdW > :not([data-slot="button-spinner"]) {
33
+ color: #0000;
34
+ text-shadow: none;
35
+ }
36
+
37
+ .button-module_rounded_base_4nLWdW.button-module_size_32_4nLWdW {
38
+ border-radius: 8px;
39
+ padding: 0 12px;
40
+ }
41
+
42
+ .button-module_rounded_base_4nLWdW.button-module_size_36_4nLWdW {
43
+ border-radius: 9px;
44
+ padding: 0 14px;
45
+ }
46
+
47
+ .button-module_rounded_base_4nLWdW.button-module_size_40_4nLWdW {
48
+ border-radius: 10px;
49
+ padding: 0 16px;
50
+ }
51
+
52
+ .button-module_rounded_base_4nLWdW.button-module_size_44_4nLWdW {
53
+ border-radius: 11px;
54
+ padding: 0 18px;
55
+ }
56
+
57
+ .button-module_rounded_base_4nLWdW.button-module_size_48_4nLWdW {
58
+ border-radius: 12px;
59
+ padding: 0 20px;
60
+ }
61
+
62
+ .button-module_rounded_full_4nLWdW.button-module_size_32_4nLWdW {
63
+ border-radius: 16px;
64
+ padding: 0 12px;
65
+ }
66
+
67
+ .button-module_rounded_full_4nLWdW.button-module_size_36_4nLWdW {
68
+ border-radius: 18px;
69
+ padding: 0 17px;
70
+ }
71
+
72
+ .button-module_rounded_full_4nLWdW.button-module_size_40_4nLWdW {
73
+ border-radius: 20px;
74
+ padding: 0 20px;
75
+ }
76
+
77
+ .button-module_rounded_full_4nLWdW.button-module_size_44_4nLWdW {
78
+ border-radius: 22px;
79
+ padding: 0 23px;
80
+ }
81
+
82
+ .button-module_rounded_full_4nLWdW.button-module_size_48_4nLWdW {
83
+ border-radius: 24px;
84
+ padding: 0 28px;
85
+ }
86
+
87
+ .button-module_size_32_4nLWdW {
88
+ height: 32px;
89
+ }
90
+
91
+ .button-module_size_36_4nLWdW {
92
+ height: 36px;
93
+ }
94
+
95
+ .button-module_size_40_4nLWdW {
96
+ height: 40px;
97
+ }
98
+
99
+ .button-module_size_44_4nLWdW {
100
+ height: 44px;
101
+ }
102
+
103
+ .button-module_size_48_4nLWdW {
104
+ height: 48px;
105
+ }
106
+
107
+ .button-module_variant_ghost_4nLWdW {
108
+ color: #000;
109
+ background-color: #0000;
110
+ }
111
+
112
+ .button-module_variant_ghost_4nLWdW:hover:not(:disabled) {
113
+ background-color: var(--color-gray-4);
114
+ }
115
+
116
+ .dark .button-module_variant_ghost_4nLWdW {
117
+ color: #fff;
118
+ }
119
+
120
+ .button-module_variant_primary_4nLWdW {
121
+ background-color: var(--color-primary);
122
+ box-shadow: inset 0 0 0 1px var(--color-primary),
123
+ inset 0 1px 0 1px #ffffff40;
124
+ color: #fff;
125
+ isolation: isolate;
126
+ }
127
+
128
+ .button-module_variant_primary_4nLWdW:after {
129
+ content: "";
130
+ mix-blend-mode: overlay;
131
+ pointer-events: none;
132
+ transition-duration: inherit;
133
+ background-image: radial-gradient(75% 100% at 50% -50%, #ffffff40, #0000);
134
+ transition-property: opacity;
135
+ position: absolute;
136
+ inset: 0;
137
+ }
138
+
139
+ .button-module_variant_primary_4nLWdW:hover:not(:disabled):after {
140
+ opacity: 0;
141
+ }
142
+
143
+ .dark .button-module_variant_primary_4nLWdW {
144
+ box-shadow: inset 0 1px #ffffff40;
145
+ }
146
+
147
+ .button-module_variant_primary_4nLWdW:hover:not(:disabled) {
148
+ --color-mixed: #000;
149
+ background-color: color-mix(in oklab, var(--color-primary) 100%, var(--color-mixed) 10%);
150
+ box-shadow: none;
151
+ }
152
+
153
+ .dark .button-module_variant_primary_4nLWdW:hover:not(:disabled) {
154
+ --color-mixed: #fff;
155
+ }
156
+
157
+ .button-module_variant_primary_4nLWdW > * {
158
+ --opacity: .25;
159
+ filter: drop-shadow(0 1px 1px hsla(0, 0%, 0%, var(--opacity)));
160
+ transition-duration: inherit;
161
+ transition-property: filter;
162
+ }
163
+
164
+ .button-module_variant_primary_4nLWdW:hover:not(:disabled) > * {
165
+ --opacity: 0;
166
+ }
167
+
168
+ .button-module_variant_secondary_4nLWdW {
169
+ --color-text: #000;
170
+ background-color: var(--color-bg-shell-outer);
171
+ box-shadow: inset 0 0 0 1px var(--color-border);
172
+ color: var(--color-text);
173
+ }
174
+
175
+ .dark .button-module_variant_secondary_4nLWdW {
176
+ --color-text: #fff;
177
+ }
178
+
179
+ .button-module_variant_secondary_4nLWdW:hover:not(:disabled) {
180
+ background-color: var(--color-gray-4);
181
+ box-shadow: none;
182
+ }
183
+
184
+ .button-module_width_base_4nLWdW {
185
+ width: fit-content;
186
+ }
187
+
188
+ .button-module_width_full_4nLWdW {
189
+ width: stretch;
190
+ }
191
+ }
@@ -0,0 +1,25 @@
1
+ import { VariantProps } from "class-variance-authority";
2
+ import { ComponentProps, JSX, ReactNode } from "react";
3
+ //#region src/components/button/button.d.ts
4
+ interface ButtonProps extends Omit<ComponentProps<"button">, "children" | "disabled"> {
5
+ iconEnd?: ReactNode;
6
+ iconStart?: ReactNode;
7
+ isDisabled?: ComponentProps<"button">["disabled"];
8
+ isFullWidth?: VariantProps<typeof button>["isFullWidth"];
9
+ isLoading?: ComponentProps<"button">["disabled"];
10
+ isRounded?: VariantProps<typeof button>["isRounded"];
11
+ label?: number | number[] | string | string[];
12
+ size?: VariantProps<typeof button>["size"];
13
+ variant?: VariantProps<typeof button>["variant"];
14
+ }
15
+ declare function Button(props: ButtonProps): JSX.Element;
16
+ declare const button: (props?: ({
17
+ isDisabled?: boolean | null | undefined;
18
+ isFullWidth?: boolean | null | undefined;
19
+ isLoading?: boolean | null | undefined;
20
+ isRounded?: boolean | null | undefined;
21
+ size?: 32 | 36 | 40 | 44 | 48 | null | undefined;
22
+ variant?: "ghost" | "primary" | "secondary" | null | undefined;
23
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
24
+ //#endregion
25
+ export { Button, ButtonProps, button };
@@ -0,0 +1,54 @@
1
+ import { ButtonSpinner } from "./button-spinner.js";
2
+ import button_module_default from "./button.module.js";
3
+ import { cva } from "class-variance-authority";
4
+ import { jsx, jsxs } from "react/jsx-runtime";
5
+ //#region src/components/button/button.tsx
6
+ function Button(props) {
7
+ const { className = "", isDisabled = false, iconStart = "", iconEnd = "", isFullWidth = false, isLoading = false, isRounded = false, label = "", variant = "primary", size = 40, ...rest } = props;
8
+ return /* @__PURE__ */ jsxs("button", {
9
+ className: button({
10
+ className,
11
+ isDisabled,
12
+ isFullWidth,
13
+ isLoading,
14
+ isRounded,
15
+ size,
16
+ variant
17
+ }),
18
+ disabled: isDisabled || isLoading,
19
+ type: "button",
20
+ ...rest,
21
+ children: [
22
+ isLoading && /* @__PURE__ */ jsx(ButtonSpinner, {}),
23
+ iconStart,
24
+ label !== "" && /* @__PURE__ */ jsx("span", { children: label }),
25
+ iconEnd
26
+ ]
27
+ });
28
+ }
29
+ const button = cva(button_module_default.base, { variants: {
30
+ isDisabled: { true: button_module_default.disabled },
31
+ isFullWidth: {
32
+ false: button_module_default.width_base,
33
+ true: button_module_default.width_full
34
+ },
35
+ isLoading: { true: button_module_default.loading },
36
+ isRounded: {
37
+ false: button_module_default.rounded_base,
38
+ true: button_module_default.rounded_full
39
+ },
40
+ size: {
41
+ 32: button_module_default.size_32,
42
+ 36: button_module_default.size_36,
43
+ 40: button_module_default.size_40,
44
+ 44: button_module_default.size_44,
45
+ 48: button_module_default.size_48
46
+ },
47
+ variant: {
48
+ ghost: button_module_default.variant_ghost,
49
+ primary: button_module_default.variant_primary,
50
+ secondary: button_module_default.variant_secondary
51
+ }
52
+ } });
53
+ //#endregion
54
+ export { Button, button };
@@ -0,0 +1,21 @@
1
+ import './button.css';
2
+ //#region src/components/button/button.module.css
3
+ var button_module_default = {
4
+ "base": "button-module_base_4nLWdW",
5
+ "disabled": "button-module_disabled_4nLWdW",
6
+ "loading": "button-module_loading_4nLWdW",
7
+ "rounded_base": "button-module_rounded_base_4nLWdW",
8
+ "rounded_full": "button-module_rounded_full_4nLWdW",
9
+ "size_32": "button-module_size_32_4nLWdW",
10
+ "size_36": "button-module_size_36_4nLWdW",
11
+ "size_40": "button-module_size_40_4nLWdW",
12
+ "size_44": "button-module_size_44_4nLWdW",
13
+ "size_48": "button-module_size_48_4nLWdW",
14
+ "variant_ghost": "button-module_variant_ghost_4nLWdW",
15
+ "variant_primary": "button-module_variant_primary_4nLWdW",
16
+ "variant_secondary": "button-module_variant_secondary_4nLWdW",
17
+ "width_base": "button-module_width_base_4nLWdW",
18
+ "width_full": "button-module_width_full_4nLWdW"
19
+ };
20
+ //#endregion
21
+ export { button_module_default as default };
@@ -0,0 +1,18 @@
1
+ import { button } from "../button/button.js";
2
+ import { VariantProps } from "class-variance-authority";
3
+ import { ComponentProps, ElementType, JSX, ReactNode } from "react";
4
+ //#region src/components/button-link/button-link.d.ts
5
+ type ButtonLinkProps<ComponentType extends ElementType = "a"> = ButtonLinkInternalProps<ComponentType> & Omit<ComponentProps<ComponentType>, "children" | keyof ButtonLinkInternalProps>;
6
+ interface ButtonLinkInternalProps<ComponentType extends ElementType = "a"> {
7
+ as?: ComponentType;
8
+ iconEnd?: ReactNode;
9
+ iconStart?: ReactNode;
10
+ isFullWidth?: VariantProps<typeof button>["isFullWidth"];
11
+ isRounded?: VariantProps<typeof button>["isRounded"];
12
+ label?: number | number[] | string | string[];
13
+ size?: VariantProps<typeof button>["size"];
14
+ variant?: VariantProps<typeof button>["variant"];
15
+ }
16
+ declare function ButtonLink<ComponentType extends ElementType = "a">(props: ButtonLinkProps<ComponentType>): JSX.Element;
17
+ //#endregion
18
+ export { ButtonLink, ButtonLinkProps };
@@ -0,0 +1,23 @@
1
+ import { button } from "../button/button.js";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
3
+ //#region src/components/button-link/button-link.tsx
4
+ function ButtonLink(props) {
5
+ const { as: Component = "a", className = "", iconStart = "", iconEnd = "", isFullWidth = false, isRounded = false, label = "", size = 40, variant = "primary", ...rest } = props;
6
+ return /* @__PURE__ */ jsxs(Component, {
7
+ className: button({
8
+ className,
9
+ isFullWidth,
10
+ isRounded,
11
+ size,
12
+ variant
13
+ }),
14
+ ...rest,
15
+ children: [
16
+ iconStart,
17
+ label !== "" && /* @__PURE__ */ jsx("span", { children: label }),
18
+ iconEnd
19
+ ]
20
+ });
21
+ }
22
+ //#endregion
23
+ export { ButtonLink };
@@ -0,0 +1,22 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ //#region src/components/checkbox/checkbox-icon.tsx
3
+ function CheckboxIcon(props) {
4
+ const { ...rest } = props;
5
+ return /* @__PURE__ */ jsx("svg", {
6
+ fill: "none",
7
+ height: "24",
8
+ viewBox: "0 0 24 24",
9
+ width: "24",
10
+ xmlns: "http://www.w3.org/2000/svg",
11
+ ...rest,
12
+ children: /* @__PURE__ */ jsx("path", {
13
+ d: "M5 13.875L9.2 18L19 7",
14
+ stroke: "black",
15
+ strokeLinecap: "round",
16
+ strokeLinejoin: "round",
17
+ strokeWidth: "1.5"
18
+ })
19
+ });
20
+ }
21
+ //#endregion
22
+ export { CheckboxIcon };
@@ -0,0 +1,55 @@
1
+ @layer components {
2
+ .checkbox-module_checkbox_tQ0i7W {
3
+ --size: 16px;
4
+ background-color: var(--color-bg-shell-inner);
5
+ border: 1px solid var(--color-border);
6
+ cursor: pointer;
7
+ height: var(--size);
8
+ outline-color: var(--color-primary);
9
+ outline-offset: 2px;
10
+ width: var(--size);
11
+ border-radius: 4px;
12
+ outline-width: 0;
13
+ outline-style: solid;
14
+ justify-content: center;
15
+ align-items: center;
16
+ transition-property: background-color, border-color;
17
+ transition-duration: .15s;
18
+ display: flex;
19
+ }
20
+
21
+ .checkbox-module_checkbox_tQ0i7W:focus-visible {
22
+ outline-width: 2px;
23
+ }
24
+
25
+ .checkbox-module_checkbox_tQ0i7W:hover {
26
+ background-color: var(--color-gray-3);
27
+ border-color: var(--color-gray-6);
28
+ }
29
+
30
+ .checkbox-module_checkbox_tQ0i7W[data-checked] {
31
+ background-color: var(--color-primary);
32
+ border-color: #0000;
33
+ }
34
+
35
+ .checkbox-module_indicator_tQ0i7W {
36
+ opacity: 0;
37
+ transition-property: opacity;
38
+ transition-duration: .15s;
39
+ }
40
+
41
+ .checkbox-module_indicator_tQ0i7W[data-checked] {
42
+ opacity: 1;
43
+ }
44
+
45
+ .checkbox-module_icon_tQ0i7W {
46
+ --size: 12px;
47
+ height: var(--size);
48
+ width: var(--size);
49
+
50
+ & > path {
51
+ stroke-width: 3px;
52
+ stroke: #fff;
53
+ }
54
+ }
55
+ }
@@ -0,0 +1,8 @@
1
+ import { Checkbox } from "@base-ui/react";
2
+ import { ComponentProps, JSX } from "react";
3
+ //#region src/components/checkbox/checkbox.d.ts
4
+ interface CheckboxProps extends ComponentProps<typeof Checkbox.Root> {}
5
+ declare function Checkbox$1(props: CheckboxProps): JSX.Element;
6
+ declare const checkboxVariants: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
7
+ //#endregion
8
+ export { Checkbox$1 as Checkbox, CheckboxProps, checkboxVariants };
@@ -0,0 +1,21 @@
1
+ import { CheckboxIcon } from "./checkbox-icon.js";
2
+ import checkbox_module_default from "./checkbox.module.js";
3
+ import { cva } from "class-variance-authority";
4
+ import { jsx } from "react/jsx-runtime";
5
+ import { Checkbox } from "@base-ui/react";
6
+ //#region src/components/checkbox/checkbox.tsx
7
+ function Checkbox$1(props) {
8
+ const { children = void 0, className: customClassName = "", ...rest } = props;
9
+ const combinedClassName = checkboxVariants({ className: customClassName });
10
+ return /* @__PURE__ */ jsx(Checkbox.Root, {
11
+ className: combinedClassName,
12
+ ...rest,
13
+ children: /* @__PURE__ */ jsx(Checkbox.Indicator, {
14
+ className: checkbox_module_default.indicator,
15
+ children: children ?? /* @__PURE__ */ jsx(CheckboxIcon, { className: checkbox_module_default.icon })
16
+ })
17
+ });
18
+ }
19
+ const checkboxVariants = cva(checkbox_module_default.checkbox);
20
+ //#endregion
21
+ export { Checkbox$1 as Checkbox, checkboxVariants };
@@ -0,0 +1,9 @@
1
+ import './checkbox.css';
2
+ //#region src/components/checkbox/checkbox.module.css
3
+ var checkbox_module_default = {
4
+ "checkbox": "checkbox-module_checkbox_tQ0i7W",
5
+ "icon": "checkbox-module_icon_tQ0i7W",
6
+ "indicator": "checkbox-module_indicator_tQ0i7W"
7
+ };
8
+ //#endregion
9
+ export { checkbox_module_default as default };
@@ -0,0 +1,6 @@
1
+ @layer components {
2
+ .column-module_column_CgFaGG {
3
+ flex-direction: column;
4
+ display: flex;
5
+ }
6
+ }
@@ -0,0 +1,16 @@
1
+ import { CSSProperties, ComponentProps, ElementType, JSX } from "react";
2
+ //#region src/components/column/column.d.ts
3
+ type ColumnProps<ComponentType extends ElementType = "div"> = ColumnInternalProps & ComponentProps<ComponentType>;
4
+ interface ColumnInternalProps {
5
+ alignItems?: CSSProperties["alignItems"];
6
+ as?: keyof JSX.IntrinsicElements;
7
+ flexWrap?: CSSProperties["flexWrap"];
8
+ gap?: CSSProperties["gap"];
9
+ gapX?: CSSProperties["columnGap"];
10
+ gapY?: CSSProperties["rowGap"];
11
+ justifyContent?: CSSProperties["justifyContent"];
12
+ }
13
+ declare function Column(props: ColumnProps): JSX.Element;
14
+ declare const columnVariants: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
15
+ //#endregion
16
+ export { Column, ColumnProps, columnVariants };
@@ -0,0 +1,23 @@
1
+ import column_module_default from "./column.module.js";
2
+ import { cva } from "class-variance-authority";
3
+ import { createElement } from "react";
4
+ //#region src/components/column/column.tsx
5
+ function Column(props) {
6
+ const { alignItems = void 0, as = "div", className: customClassName = "", flexWrap = void 0, gap = void 0, gapX = void 0, gapY = void 0, justifyContent = void 0, style: customStyle, ...rest } = props;
7
+ return createElement(as, {
8
+ className: columnVariants({ className: customClassName }),
9
+ style: {
10
+ ...customStyle,
11
+ ...gap === void 0 ? {} : { gap },
12
+ ...gapX === void 0 ? {} : { columnGap: gapX },
13
+ ...gapY === void 0 ? {} : { rowGap: gapY },
14
+ ...flexWrap === void 0 ? {} : { flexWrap },
15
+ ...alignItems === void 0 ? {} : { alignItems },
16
+ ...justifyContent === void 0 ? {} : { justifyContent }
17
+ },
18
+ ...rest
19
+ });
20
+ }
21
+ const columnVariants = cva(column_module_default.column);
22
+ //#endregion
23
+ export { Column, columnVariants };
@@ -0,0 +1,5 @@
1
+ import './column.css';
2
+ //#region src/components/column/column.module.css
3
+ var column_module_default = { "column": "column-module_column_CgFaGG" };
4
+ //#endregion
5
+ export { column_module_default as default };
@@ -0,0 +1,28 @@
1
+ @layer components {
2
+ .dialog-responsive-backdrop-module_dialog_responsive_backdrop_-X7FOq {
3
+ --backdrop-opacity: .25;
4
+ opacity: calc(var(--backdrop-opacity) * (1 - var(--drawer-swipe-progress)));
5
+ outline-color: var(--color-primary-9);
6
+ background-color: #000;
7
+ transition-property: opacity;
8
+ transition-duration: .15s;
9
+ position: fixed;
10
+ inset: 0;
11
+ }
12
+
13
+ .dialog-responsive-backdrop-module_dialog_responsive_backdrop_-X7FOq[data-ending-style], .dialog-responsive-backdrop-module_dialog_responsive_backdrop_-X7FOq[data-starting-style] {
14
+ opacity: 0;
15
+ }
16
+
17
+ .dialog-responsive-backdrop-module_dialog_responsive_backdrop_-X7FOq[data-ending-style] {
18
+ transition-duration: calc(var(--drawer-swipe-strength) * .4s);
19
+ }
20
+
21
+ .dialog-responsive-backdrop-module_dialog_responsive_backdrop_-X7FOq[data-swiping] {
22
+ transition-duration: 0s;
23
+ }
24
+
25
+ .dark .dialog-responsive-backdrop-module_dialog_responsive_backdrop_-X7FOq {
26
+ --backdrop-opacity: .75;
27
+ }
28
+ }
@@ -0,0 +1,17 @@
1
+ import dialog_responsive_backdrop_module_default from "./dialog-responsive-backdrop.module.js";
2
+ import { cva } from "class-variance-authority";
3
+ import { jsx } from "react/jsx-runtime";
4
+ import { Drawer } from "@base-ui/react";
5
+ //#region src/components/dialog-responsive/dialog-responsive-backdrop.tsx
6
+ function DialogResponsiveBackdrop(props) {
7
+ const { className: customClassName = "", ...rest } = props;
8
+ const combinedClassName = dialogResponsiveBackdropVariants({ className: customClassName });
9
+ return /* @__PURE__ */ jsx(Drawer.Backdrop, {
10
+ className: combinedClassName,
11
+ "data-slot": "dialog-responsive-backdrop",
12
+ ...rest
13
+ });
14
+ }
15
+ const dialogResponsiveBackdropVariants = cva(dialog_responsive_backdrop_module_default.dialog_responsive_backdrop);
16
+ //#endregion
17
+ export { DialogResponsiveBackdrop, dialogResponsiveBackdropVariants };