baraqex 1.0.74 → 2.0.0

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 (185) hide show
  1. package/CHANGELOG.md +73 -0
  2. package/README.md +272 -472
  3. package/bin/baraqex.js +150 -12
  4. package/dist/browser.d.ts +1 -1
  5. package/dist/browser.d.ts.map +1 -1
  6. package/dist/browser.js +2319 -205
  7. package/dist/browser.js.map +4 -4
  8. package/dist/core/batch.d.ts +10 -0
  9. package/dist/core/batch.d.ts.map +1 -0
  10. package/dist/core/component.d.ts +69 -0
  11. package/dist/core/component.d.ts.map +1 -0
  12. package/dist/core/context.d.ts +22 -0
  13. package/dist/core/context.d.ts.map +1 -0
  14. package/dist/core/errors.d.ts +125 -0
  15. package/dist/core/errors.d.ts.map +1 -0
  16. package/dist/core/event-bus.d.ts +29 -0
  17. package/dist/core/event-bus.d.ts.map +1 -0
  18. package/dist/core/forms.d.ts +128 -0
  19. package/dist/core/forms.d.ts.map +1 -0
  20. package/dist/core/hooks.d.ts +84 -0
  21. package/dist/core/hooks.d.ts.map +1 -0
  22. package/dist/core/index.d.ts +23 -0
  23. package/dist/core/index.d.ts.map +1 -0
  24. package/dist/core/jsx-runtime.d.ts +45 -0
  25. package/dist/core/jsx-runtime.d.ts.map +1 -0
  26. package/dist/core/lifecycle-events.d.ts +71 -0
  27. package/dist/core/lifecycle-events.d.ts.map +1 -0
  28. package/dist/core/renderer.d.ts +39 -0
  29. package/dist/core/renderer.d.ts.map +1 -0
  30. package/dist/core/router.d.ts +108 -0
  31. package/dist/core/router.d.ts.map +1 -0
  32. package/dist/core/server-renderer.d.ts +26 -0
  33. package/dist/core/server-renderer.d.ts.map +1 -0
  34. package/dist/core/store.d.ts +102 -0
  35. package/dist/core/store.d.ts.map +1 -0
  36. package/dist/core/types.d.ts +66 -0
  37. package/dist/core/types.d.ts.map +1 -0
  38. package/dist/core/utils.d.ts +153 -0
  39. package/dist/core/utils.d.ts.map +1 -0
  40. package/dist/core/vdom.d.ts +29 -0
  41. package/dist/core/vdom.d.ts.map +1 -0
  42. package/dist/index.d.ts +39 -35
  43. package/dist/index.d.ts.map +1 -1
  44. package/dist/index.js +2592 -508
  45. package/dist/index.js.map +4 -4
  46. package/dist/server/auth.d.ts +8 -3
  47. package/dist/server/auth.d.ts.map +1 -1
  48. package/dist/server/index.d.ts +2 -2
  49. package/dist/server/index.d.ts.map +1 -1
  50. package/dist/server/index.js +173 -112
  51. package/dist/server/index.js.map +4 -4
  52. package/dist/server/middleware.d.ts +10 -1
  53. package/dist/server/middleware.d.ts.map +1 -1
  54. package/package.json +224 -124
  55. package/templates/basic-app/src/main.jsx +336 -0
  56. package/templates/complete-app/api/hello.js +0 -0
  57. package/templates/complete-app/client.js +58 -0
  58. package/templates/complete-app/lib/frontend-hamroun.js +182 -0
  59. package/templates/complete-app/package.json +18 -0
  60. package/templates/complete-app/pages/about.js +119 -0
  61. package/templates/complete-app/pages/about.jsx +0 -0
  62. package/templates/complete-app/pages/index.js +157 -0
  63. package/templates/complete-app/pages/index.jsx +0 -0
  64. package/templates/complete-app/pages/wasm-demo.js +290 -0
  65. package/templates/complete-app/pages/wasm-demo.jsx +0 -0
  66. package/templates/complete-app/public/client.js +89 -0
  67. package/templates/complete-app/public/index.html +118 -0
  68. package/templates/complete-app/public/styles.css +76 -0
  69. package/templates/complete-app/readme.md +188 -0
  70. package/templates/complete-app/server.js +226 -0
  71. package/templates/complete-app/server.ts +275 -0
  72. package/templates/complete-app/src/App.tsx +59 -0
  73. package/templates/complete-app/src/client.ts +61 -0
  74. package/templates/complete-app/src/client.tsx +18 -0
  75. package/templates/complete-app/src/pages/index.tsx +51 -0
  76. package/templates/complete-app/src/server.ts +218 -0
  77. package/templates/complete-app/tsconfig.json +22 -0
  78. package/templates/complete-app/tsconfig.server.json +19 -0
  79. package/templates/complete-app/vite.config.js +57 -0
  80. package/templates/complete-app/vite.config.ts +30 -0
  81. package/templates/complete-app/wasm/build.bat +0 -0
  82. package/templates/complete-app/wasm/build.sh +0 -0
  83. package/templates/complete-app/wasm/example.go +0 -0
  84. package/templates/fullstack-app/README.md +37 -0
  85. package/templates/fullstack-app/api/hello.js +11 -0
  86. package/templates/fullstack-app/api/hello.ts +18 -0
  87. package/templates/fullstack-app/api/users/[id].ts +73 -0
  88. package/templates/fullstack-app/api/users/index.ts +32 -0
  89. package/templates/fullstack-app/build/main.css +874 -0
  90. package/templates/fullstack-app/build/main.css.map +7 -0
  91. package/templates/fullstack-app/build/main.js +967 -0
  92. package/templates/fullstack-app/build/main.js.map +7 -0
  93. package/templates/fullstack-app/build.ts +210 -0
  94. package/templates/fullstack-app/index.html +36 -0
  95. package/templates/fullstack-app/package.json +35 -0
  96. package/templates/fullstack-app/postcss.config.js +6 -0
  97. package/templates/fullstack-app/process-tailwind.js +45 -0
  98. package/templates/fullstack-app/public/_redirects +1 -0
  99. package/templates/fullstack-app/public/route-handler.js +47 -0
  100. package/templates/fullstack-app/public/spa-fix.html +17 -0
  101. package/templates/fullstack-app/public/styles.css +975 -0
  102. package/templates/fullstack-app/public/tailwind.css +15 -0
  103. package/templates/fullstack-app/server.js +267 -0
  104. package/templates/fullstack-app/server.ts +474 -0
  105. package/templates/fullstack-app/src/README.md +55 -0
  106. package/templates/fullstack-app/src/client.js +87 -0
  107. package/templates/fullstack-app/src/components/ClientHome.tsx +0 -0
  108. package/templates/fullstack-app/src/components/ErrorBoundary.tsx +36 -0
  109. package/templates/fullstack-app/src/components/Layout.tsx +42 -0
  110. package/templates/fullstack-app/src/components/StateDemo.tsx +207 -0
  111. package/templates/fullstack-app/src/components/UserList.tsx +44 -0
  112. package/templates/fullstack-app/src/config.ts +42 -0
  113. package/templates/fullstack-app/src/data/api.ts +206 -0
  114. package/templates/fullstack-app/src/main.tsx +155 -0
  115. package/templates/fullstack-app/src/middleware.ts +28 -0
  116. package/templates/fullstack-app/src/pages/404.tsx +28 -0
  117. package/templates/fullstack-app/src/pages/[id].tsx +0 -0
  118. package/templates/fullstack-app/src/pages/_app.tsx +11 -0
  119. package/templates/fullstack-app/src/pages/_document.tsx +25 -0
  120. package/templates/fullstack-app/src/pages/_error.tsx +45 -0
  121. package/templates/fullstack-app/src/pages/about/index.tsx +67 -0
  122. package/templates/fullstack-app/src/pages/about.tsx +71 -0
  123. package/templates/fullstack-app/src/pages/api/users/[id].ts +73 -0
  124. package/templates/fullstack-app/src/pages/api/users/index.ts +43 -0
  125. package/templates/fullstack-app/src/pages/index.tsx +110 -0
  126. package/templates/fullstack-app/src/pages/users/[id].tsx +153 -0
  127. package/templates/fullstack-app/src/pages/users.tsx +60 -0
  128. package/templates/fullstack-app/src/pages/wasm-demo.tsx +1 -0
  129. package/templates/fullstack-app/src/router.ts +255 -0
  130. package/templates/fullstack-app/src/styles.css +5 -0
  131. package/templates/fullstack-app/tailwind.config.js +11 -0
  132. package/templates/fullstack-app/tsconfig.json +18 -0
  133. package/templates/fullstack-app/vite.config.js +87 -0
  134. package/templates/go/build.bat +36 -0
  135. package/templates/go/build.sh +43 -0
  136. package/templates/go/example.go +205 -0
  137. package/templates/go-wasm-app/README.md +38 -0
  138. package/templates/go-wasm-app/babel.config.js +21 -0
  139. package/templates/go-wasm-app/build-client.js +49 -0
  140. package/templates/go-wasm-app/build-wasm.js +237 -0
  141. package/templates/go-wasm-app/build.config.js +62 -0
  142. package/templates/go-wasm-app/build.js +218 -0
  143. package/templates/go-wasm-app/package.json +32 -0
  144. package/templates/go-wasm-app/public/index.html +128 -0
  145. package/templates/go-wasm-app/public/styles.css +197 -0
  146. package/templates/go-wasm-app/public/wasm/example.wasm +0 -0
  147. package/templates/go-wasm-app/public/wasm/wasm_exec.js +561 -0
  148. package/templates/go-wasm-app/public/wasm/wasm_exec_node.js +39 -0
  149. package/templates/go-wasm-app/server.js +70 -0
  150. package/templates/go-wasm-app/src/App.jsx +38 -0
  151. package/templates/go-wasm-app/src/app.js +173 -0
  152. package/templates/go-wasm-app/src/client.js +57 -0
  153. package/templates/go-wasm-app/src/components/Footer.jsx +13 -0
  154. package/templates/go-wasm-app/src/components/Header.jsx +19 -0
  155. package/templates/go-wasm-app/src/components/WasmDemo.jsx +120 -0
  156. package/templates/go-wasm-app/src/main.jsx +12 -0
  157. package/templates/go-wasm-app/src/wasm/example.go +75 -0
  158. package/templates/go-wasm-app/tsconfig.server.json +18 -0
  159. package/templates/go-wasm-app/vite.config.js +45 -0
  160. package/templates/ssr-template/package.json +16 -10
  161. package/templates/wasm/package.json +43 -43
  162. package/templates/wasm/src/App.tsx +2 -2
  163. package/dist/forms/index.d.ts +0 -2
  164. package/dist/forms/index.d.ts.map +0 -1
  165. package/dist/forms/types.d.ts +0 -2
  166. package/dist/forms/types.d.ts.map +0 -1
  167. package/dist/frontend/components/WasmLoader.d.ts +0 -2
  168. package/dist/frontend/components/WasmLoader.d.ts.map +0 -1
  169. package/dist/frontend/hooks/useWasm.d.ts +0 -2
  170. package/dist/frontend/hooks/useWasm.d.ts.map +0 -1
  171. package/dist/frontend/index.d.ts +0 -2
  172. package/dist/frontend/index.d.ts.map +0 -1
  173. package/dist/router/index.d.ts +0 -2
  174. package/dist/router/index.d.ts.map +0 -1
  175. package/dist/router/types.d.ts +0 -2
  176. package/dist/router/types.d.ts.map +0 -1
  177. package/dist/store/index.d.ts +0 -2
  178. package/dist/store/index.d.ts.map +0 -1
  179. package/dist/store/types.d.ts +0 -2
  180. package/dist/store/types.d.ts.map +0 -1
  181. package/templates/basic-app/package-lock.json +0 -7173
  182. package/templates/fullstack-template/package-lock.json +0 -3558
  183. package/templates/ssr-template/package-lock.json +0 -5380
  184. package/templates/wasm/package-lock.json +0 -5347
  185. package/templates/wasm/public/example.wasm +0 -0
@@ -0,0 +1,874 @@
1
+ /* src/styles.css */
2
+ *,
3
+ ::before,
4
+ ::after {
5
+ --tw-border-spacing-x: 0;
6
+ --tw-border-spacing-y: 0;
7
+ --tw-translate-x: 0;
8
+ --tw-translate-y: 0;
9
+ --tw-rotate: 0;
10
+ --tw-skew-x: 0;
11
+ --tw-skew-y: 0;
12
+ --tw-scale-x: 1;
13
+ --tw-scale-y: 1;
14
+ --tw-pan-x: ;
15
+ --tw-pan-y: ;
16
+ --tw-pinch-zoom: ;
17
+ --tw-scroll-snap-strictness: proximity;
18
+ --tw-gradient-from-position: ;
19
+ --tw-gradient-via-position: ;
20
+ --tw-gradient-to-position: ;
21
+ --tw-ordinal: ;
22
+ --tw-slashed-zero: ;
23
+ --tw-numeric-figure: ;
24
+ --tw-numeric-spacing: ;
25
+ --tw-numeric-fraction: ;
26
+ --tw-ring-inset: ;
27
+ --tw-ring-offset-width: 0px;
28
+ --tw-ring-offset-color: #fff;
29
+ --tw-ring-color: rgb(59 130 246 / 0.5);
30
+ --tw-ring-offset-shadow: 0 0 #0000;
31
+ --tw-ring-shadow: 0 0 #0000;
32
+ --tw-shadow: 0 0 #0000;
33
+ --tw-shadow-colored: 0 0 #0000;
34
+ --tw-blur: ;
35
+ --tw-brightness: ;
36
+ --tw-contrast: ;
37
+ --tw-grayscale: ;
38
+ --tw-hue-rotate: ;
39
+ --tw-invert: ;
40
+ --tw-saturate: ;
41
+ --tw-sepia: ;
42
+ --tw-drop-shadow: ;
43
+ --tw-backdrop-blur: ;
44
+ --tw-backdrop-brightness: ;
45
+ --tw-backdrop-contrast: ;
46
+ --tw-backdrop-grayscale: ;
47
+ --tw-backdrop-hue-rotate: ;
48
+ --tw-backdrop-invert: ;
49
+ --tw-backdrop-opacity: ;
50
+ --tw-backdrop-saturate: ;
51
+ --tw-backdrop-sepia: ;
52
+ --tw-contain-size: ;
53
+ --tw-contain-layout: ;
54
+ --tw-contain-paint: ;
55
+ --tw-contain-style: ;
56
+ }
57
+ ::backdrop {
58
+ --tw-border-spacing-x: 0;
59
+ --tw-border-spacing-y: 0;
60
+ --tw-translate-x: 0;
61
+ --tw-translate-y: 0;
62
+ --tw-rotate: 0;
63
+ --tw-skew-x: 0;
64
+ --tw-skew-y: 0;
65
+ --tw-scale-x: 1;
66
+ --tw-scale-y: 1;
67
+ --tw-pan-x: ;
68
+ --tw-pan-y: ;
69
+ --tw-pinch-zoom: ;
70
+ --tw-scroll-snap-strictness: proximity;
71
+ --tw-gradient-from-position: ;
72
+ --tw-gradient-via-position: ;
73
+ --tw-gradient-to-position: ;
74
+ --tw-ordinal: ;
75
+ --tw-slashed-zero: ;
76
+ --tw-numeric-figure: ;
77
+ --tw-numeric-spacing: ;
78
+ --tw-numeric-fraction: ;
79
+ --tw-ring-inset: ;
80
+ --tw-ring-offset-width: 0px;
81
+ --tw-ring-offset-color: #fff;
82
+ --tw-ring-color: rgb(59 130 246 / 0.5);
83
+ --tw-ring-offset-shadow: 0 0 #0000;
84
+ --tw-ring-shadow: 0 0 #0000;
85
+ --tw-shadow: 0 0 #0000;
86
+ --tw-shadow-colored: 0 0 #0000;
87
+ --tw-blur: ;
88
+ --tw-brightness: ;
89
+ --tw-contrast: ;
90
+ --tw-grayscale: ;
91
+ --tw-hue-rotate: ;
92
+ --tw-invert: ;
93
+ --tw-saturate: ;
94
+ --tw-sepia: ;
95
+ --tw-drop-shadow: ;
96
+ --tw-backdrop-blur: ;
97
+ --tw-backdrop-brightness: ;
98
+ --tw-backdrop-contrast: ;
99
+ --tw-backdrop-grayscale: ;
100
+ --tw-backdrop-hue-rotate: ;
101
+ --tw-backdrop-invert: ;
102
+ --tw-backdrop-opacity: ;
103
+ --tw-backdrop-saturate: ;
104
+ --tw-backdrop-sepia: ;
105
+ --tw-contain-size: ;
106
+ --tw-contain-layout: ;
107
+ --tw-contain-paint: ;
108
+ --tw-contain-style: ;
109
+ }
110
+ *,
111
+ ::before,
112
+ ::after {
113
+ box-sizing: border-box;
114
+ border-width: 0;
115
+ border-style: solid;
116
+ border-color: #e5e7eb;
117
+ }
118
+ ::before,
119
+ ::after {
120
+ --tw-content: "";
121
+ }
122
+ html,
123
+ :host {
124
+ line-height: 1.5;
125
+ -webkit-text-size-adjust: 100%;
126
+ -moz-tab-size: 4;
127
+ -o-tab-size: 4;
128
+ tab-size: 4;
129
+ font-family:
130
+ ui-sans-serif,
131
+ system-ui,
132
+ sans-serif,
133
+ "Apple Color Emoji",
134
+ "Segoe UI Emoji",
135
+ "Segoe UI Symbol",
136
+ "Noto Color Emoji";
137
+ font-feature-settings: normal;
138
+ font-variation-settings: normal;
139
+ -webkit-tap-highlight-color: transparent;
140
+ }
141
+ body {
142
+ margin: 0;
143
+ line-height: inherit;
144
+ }
145
+ hr {
146
+ height: 0;
147
+ color: inherit;
148
+ border-top-width: 1px;
149
+ }
150
+ abbr:where([title]) {
151
+ -webkit-text-decoration: underline dotted;
152
+ text-decoration: underline dotted;
153
+ }
154
+ h1,
155
+ h2,
156
+ h3,
157
+ h4,
158
+ h5,
159
+ h6 {
160
+ font-size: inherit;
161
+ font-weight: inherit;
162
+ }
163
+ a {
164
+ color: inherit;
165
+ text-decoration: inherit;
166
+ }
167
+ b,
168
+ strong {
169
+ font-weight: bolder;
170
+ }
171
+ code,
172
+ kbd,
173
+ samp,
174
+ pre {
175
+ font-family:
176
+ ui-monospace,
177
+ SFMono-Regular,
178
+ Menlo,
179
+ Monaco,
180
+ Consolas,
181
+ "Liberation Mono",
182
+ "Courier New",
183
+ monospace;
184
+ font-feature-settings: normal;
185
+ font-variation-settings: normal;
186
+ font-size: 1em;
187
+ }
188
+ small {
189
+ font-size: 80%;
190
+ }
191
+ sub,
192
+ sup {
193
+ font-size: 75%;
194
+ line-height: 0;
195
+ position: relative;
196
+ vertical-align: baseline;
197
+ }
198
+ sub {
199
+ bottom: -0.25em;
200
+ }
201
+ sup {
202
+ top: -0.5em;
203
+ }
204
+ table {
205
+ text-indent: 0;
206
+ border-color: inherit;
207
+ border-collapse: collapse;
208
+ }
209
+ button,
210
+ input,
211
+ optgroup,
212
+ select,
213
+ textarea {
214
+ font-family: inherit;
215
+ font-feature-settings: inherit;
216
+ font-variation-settings: inherit;
217
+ font-size: 100%;
218
+ font-weight: inherit;
219
+ line-height: inherit;
220
+ letter-spacing: inherit;
221
+ color: inherit;
222
+ margin: 0;
223
+ padding: 0;
224
+ }
225
+ button,
226
+ select {
227
+ text-transform: none;
228
+ }
229
+ button,
230
+ input:where([type=button]),
231
+ input:where([type=reset]),
232
+ input:where([type=submit]) {
233
+ -webkit-appearance: button;
234
+ background-color: transparent;
235
+ background-image: none;
236
+ }
237
+ :-moz-focusring {
238
+ outline: auto;
239
+ }
240
+ :-moz-ui-invalid {
241
+ box-shadow: none;
242
+ }
243
+ progress {
244
+ vertical-align: baseline;
245
+ }
246
+ ::-webkit-inner-spin-button,
247
+ ::-webkit-outer-spin-button {
248
+ height: auto;
249
+ }
250
+ [type=search] {
251
+ -webkit-appearance: textfield;
252
+ outline-offset: -2px;
253
+ }
254
+ ::-webkit-search-decoration {
255
+ -webkit-appearance: none;
256
+ }
257
+ ::-webkit-file-upload-button {
258
+ -webkit-appearance: button;
259
+ font: inherit;
260
+ }
261
+ summary {
262
+ display: list-item;
263
+ }
264
+ blockquote,
265
+ dl,
266
+ dd,
267
+ h1,
268
+ h2,
269
+ h3,
270
+ h4,
271
+ h5,
272
+ h6,
273
+ hr,
274
+ figure,
275
+ p,
276
+ pre {
277
+ margin: 0;
278
+ }
279
+ fieldset {
280
+ margin: 0;
281
+ padding: 0;
282
+ }
283
+ legend {
284
+ padding: 0;
285
+ }
286
+ ol,
287
+ ul,
288
+ menu {
289
+ list-style: none;
290
+ margin: 0;
291
+ padding: 0;
292
+ }
293
+ dialog {
294
+ padding: 0;
295
+ }
296
+ textarea {
297
+ resize: vertical;
298
+ }
299
+ input::-moz-placeholder,
300
+ textarea::-moz-placeholder {
301
+ opacity: 1;
302
+ color: #9ca3af;
303
+ }
304
+ input::placeholder,
305
+ textarea::placeholder {
306
+ opacity: 1;
307
+ color: #9ca3af;
308
+ }
309
+ button,
310
+ [role=button] {
311
+ cursor: pointer;
312
+ }
313
+ :disabled {
314
+ cursor: default;
315
+ }
316
+ img,
317
+ svg,
318
+ video,
319
+ canvas,
320
+ audio,
321
+ iframe,
322
+ embed,
323
+ object {
324
+ display: block;
325
+ vertical-align: middle;
326
+ }
327
+ img,
328
+ video {
329
+ max-width: 100%;
330
+ height: auto;
331
+ }
332
+ [hidden]:where(:not([hidden=until-found])) {
333
+ display: none;
334
+ }
335
+ .container {
336
+ width: 100%;
337
+ }
338
+ @media (min-width: 640px) {
339
+ .container {
340
+ max-width: 640px;
341
+ }
342
+ }
343
+ @media (min-width: 768px) {
344
+ .container {
345
+ max-width: 768px;
346
+ }
347
+ }
348
+ @media (min-width: 1024px) {
349
+ .container {
350
+ max-width: 1024px;
351
+ }
352
+ }
353
+ @media (min-width: 1280px) {
354
+ .container {
355
+ max-width: 1280px;
356
+ }
357
+ }
358
+ @media (min-width: 1536px) {
359
+ .container {
360
+ max-width: 1536px;
361
+ }
362
+ }
363
+ .m-1 {
364
+ margin: 0.25rem;
365
+ }
366
+ .mx-4 {
367
+ margin-left: 1rem;
368
+ margin-right: 1rem;
369
+ }
370
+ .mx-auto {
371
+ margin-left: auto;
372
+ margin-right: auto;
373
+ }
374
+ .mb-1 {
375
+ margin-bottom: 0.25rem;
376
+ }
377
+ .mb-2 {
378
+ margin-bottom: 0.5rem;
379
+ }
380
+ .mb-3 {
381
+ margin-bottom: 0.75rem;
382
+ }
383
+ .mb-4 {
384
+ margin-bottom: 1rem;
385
+ }
386
+ .mb-6 {
387
+ margin-bottom: 1.5rem;
388
+ }
389
+ .mb-8 {
390
+ margin-bottom: 2rem;
391
+ }
392
+ .mr-2 {
393
+ margin-right: 0.5rem;
394
+ }
395
+ .mt-2 {
396
+ margin-top: 0.5rem;
397
+ }
398
+ .mt-3 {
399
+ margin-top: 0.75rem;
400
+ }
401
+ .mt-4 {
402
+ margin-top: 1rem;
403
+ }
404
+ .mt-6 {
405
+ margin-top: 1.5rem;
406
+ }
407
+ .mt-8 {
408
+ margin-top: 2rem;
409
+ }
410
+ .block {
411
+ display: block;
412
+ }
413
+ .inline-block {
414
+ display: inline-block;
415
+ }
416
+ .flex {
417
+ display: flex;
418
+ }
419
+ .table {
420
+ display: table;
421
+ }
422
+ .grid {
423
+ display: grid;
424
+ }
425
+ .h-4 {
426
+ height: 1rem;
427
+ }
428
+ .h-40 {
429
+ height: 10rem;
430
+ }
431
+ .h-5 {
432
+ height: 1.25rem;
433
+ }
434
+ .h-8 {
435
+ height: 2rem;
436
+ }
437
+ .max-h-24 {
438
+ max-height: 6rem;
439
+ }
440
+ .max-h-96 {
441
+ max-height: 24rem;
442
+ }
443
+ .min-h-screen {
444
+ min-height: 100vh;
445
+ }
446
+ .w-1\/2 {
447
+ width: 50%;
448
+ }
449
+ .w-1\/4 {
450
+ width: 25%;
451
+ }
452
+ .w-3\/4 {
453
+ width: 75%;
454
+ }
455
+ .w-5 {
456
+ width: 1.25rem;
457
+ }
458
+ .w-full {
459
+ width: 100%;
460
+ }
461
+ .max-w-4xl {
462
+ max-width: 56rem;
463
+ }
464
+ .flex-grow {
465
+ flex-grow: 1;
466
+ }
467
+ @keyframes pulse {
468
+ 50% {
469
+ opacity: .5;
470
+ }
471
+ }
472
+ .animate-pulse {
473
+ animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
474
+ }
475
+ .list-disc {
476
+ list-style-type: disc;
477
+ }
478
+ .grid-cols-3 {
479
+ grid-template-columns: repeat(3, minmax(0, 1fr));
480
+ }
481
+ .flex-col {
482
+ flex-direction: column;
483
+ }
484
+ .items-center {
485
+ align-items: center;
486
+ }
487
+ .justify-between {
488
+ justify-content: space-between;
489
+ }
490
+ .gap-2 {
491
+ gap: 0.5rem;
492
+ }
493
+ .space-x-6 > :not([hidden]) ~ :not([hidden]) {
494
+ --tw-space-x-reverse: 0;
495
+ margin-right: calc(1.5rem * var(--tw-space-x-reverse));
496
+ margin-left: calc(1.5rem * calc(1 - var(--tw-space-x-reverse)));
497
+ }
498
+ .space-y-2 > :not([hidden]) ~ :not([hidden]) {
499
+ --tw-space-y-reverse: 0;
500
+ margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));
501
+ margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));
502
+ }
503
+ .space-y-4 > :not([hidden]) ~ :not([hidden]) {
504
+ --tw-space-y-reverse: 0;
505
+ margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
506
+ margin-bottom: calc(1rem * var(--tw-space-y-reverse));
507
+ }
508
+ .divide-y > :not([hidden]) ~ :not([hidden]) {
509
+ --tw-divide-y-reverse: 0;
510
+ border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
511
+ border-bottom-width: calc(1px * var(--tw-divide-y-reverse));
512
+ }
513
+ .divide-gray-100 > :not([hidden]) ~ :not([hidden]) {
514
+ --tw-divide-opacity: 1;
515
+ border-color: rgb(243 244 246 / var(--tw-divide-opacity, 1));
516
+ }
517
+ .divide-gray-200 > :not([hidden]) ~ :not([hidden]) {
518
+ --tw-divide-opacity: 1;
519
+ border-color: rgb(229 231 235 / var(--tw-divide-opacity, 1));
520
+ }
521
+ .self-center {
522
+ align-self: center;
523
+ }
524
+ .overflow-auto {
525
+ overflow: auto;
526
+ }
527
+ .overflow-hidden {
528
+ overflow: hidden;
529
+ }
530
+ .overflow-x-auto {
531
+ overflow-x: auto;
532
+ }
533
+ .overflow-y-auto {
534
+ overflow-y: auto;
535
+ }
536
+ .rounded {
537
+ border-radius: 0.25rem;
538
+ }
539
+ .rounded-lg {
540
+ border-radius: 0.5rem;
541
+ }
542
+ .rounded-md {
543
+ border-radius: 0.375rem;
544
+ }
545
+ .border {
546
+ border-width: 1px;
547
+ }
548
+ .border-b {
549
+ border-bottom-width: 1px;
550
+ }
551
+ .border-t {
552
+ border-top-width: 1px;
553
+ }
554
+ .border-blue-100 {
555
+ --tw-border-opacity: 1;
556
+ border-color: rgb(219 234 254 / var(--tw-border-opacity, 1));
557
+ }
558
+ .border-gray-200 {
559
+ --tw-border-opacity: 1;
560
+ border-color: rgb(229 231 235 / var(--tw-border-opacity, 1));
561
+ }
562
+ .border-red-200 {
563
+ --tw-border-opacity: 1;
564
+ border-color: rgb(254 202 202 / var(--tw-border-opacity, 1));
565
+ }
566
+ .border-red-500 {
567
+ --tw-border-opacity: 1;
568
+ border-color: rgb(239 68 68 / var(--tw-border-opacity, 1));
569
+ }
570
+ .border-yellow-200 {
571
+ --tw-border-opacity: 1;
572
+ border-color: rgb(254 240 138 / var(--tw-border-opacity, 1));
573
+ }
574
+ .bg-blue-50 {
575
+ --tw-bg-opacity: 1;
576
+ background-color: rgb(239 246 255 / var(--tw-bg-opacity, 1));
577
+ }
578
+ .bg-blue-600 {
579
+ --tw-bg-opacity: 1;
580
+ background-color: rgb(37 99 235 / var(--tw-bg-opacity, 1));
581
+ }
582
+ .bg-gray-100 {
583
+ --tw-bg-opacity: 1;
584
+ background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
585
+ }
586
+ .bg-gray-200 {
587
+ --tw-bg-opacity: 1;
588
+ background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));
589
+ }
590
+ .bg-gray-50 {
591
+ --tw-bg-opacity: 1;
592
+ background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));
593
+ }
594
+ .bg-gray-800 {
595
+ --tw-bg-opacity: 1;
596
+ background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));
597
+ }
598
+ .bg-green-50 {
599
+ --tw-bg-opacity: 1;
600
+ background-color: rgb(240 253 244 / var(--tw-bg-opacity, 1));
601
+ }
602
+ .bg-red-50 {
603
+ --tw-bg-opacity: 1;
604
+ background-color: rgb(254 242 242 / var(--tw-bg-opacity, 1));
605
+ }
606
+ .bg-red-600 {
607
+ --tw-bg-opacity: 1;
608
+ background-color: rgb(220 38 38 / var(--tw-bg-opacity, 1));
609
+ }
610
+ .bg-white {
611
+ --tw-bg-opacity: 1;
612
+ background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
613
+ }
614
+ .bg-yellow-50 {
615
+ --tw-bg-opacity: 1;
616
+ background-color: rgb(254 252 232 / var(--tw-bg-opacity, 1));
617
+ }
618
+ .p-2 {
619
+ padding: 0.5rem;
620
+ }
621
+ .p-4 {
622
+ padding: 1rem;
623
+ }
624
+ .p-6 {
625
+ padding: 1.5rem;
626
+ }
627
+ .p-8 {
628
+ padding: 2rem;
629
+ }
630
+ .px-2 {
631
+ padding-left: 0.5rem;
632
+ padding-right: 0.5rem;
633
+ }
634
+ .px-3 {
635
+ padding-left: 0.75rem;
636
+ padding-right: 0.75rem;
637
+ }
638
+ .px-4 {
639
+ padding-left: 1rem;
640
+ padding-right: 1rem;
641
+ }
642
+ .px-6 {
643
+ padding-left: 1.5rem;
644
+ padding-right: 1.5rem;
645
+ }
646
+ .py-1 {
647
+ padding-top: 0.25rem;
648
+ padding-bottom: 0.25rem;
649
+ }
650
+ .py-12 {
651
+ padding-top: 3rem;
652
+ padding-bottom: 3rem;
653
+ }
654
+ .py-2 {
655
+ padding-top: 0.5rem;
656
+ padding-bottom: 0.5rem;
657
+ }
658
+ .py-3 {
659
+ padding-top: 0.75rem;
660
+ padding-bottom: 0.75rem;
661
+ }
662
+ .py-4 {
663
+ padding-top: 1rem;
664
+ padding-bottom: 1rem;
665
+ }
666
+ .py-6 {
667
+ padding-top: 1.5rem;
668
+ padding-bottom: 1.5rem;
669
+ }
670
+ .py-8 {
671
+ padding-top: 2rem;
672
+ padding-bottom: 2rem;
673
+ }
674
+ .pb-4 {
675
+ padding-bottom: 1rem;
676
+ }
677
+ .pl-6 {
678
+ padding-left: 1.5rem;
679
+ }
680
+ .pt-4 {
681
+ padding-top: 1rem;
682
+ }
683
+ .text-left {
684
+ text-align: left;
685
+ }
686
+ .text-center {
687
+ text-align: center;
688
+ }
689
+ .text-2xl {
690
+ font-size: 1.5rem;
691
+ line-height: 2rem;
692
+ }
693
+ .text-3xl {
694
+ font-size: 1.875rem;
695
+ line-height: 2.25rem;
696
+ }
697
+ .text-lg {
698
+ font-size: 1.125rem;
699
+ line-height: 1.75rem;
700
+ }
701
+ .text-sm {
702
+ font-size: 0.875rem;
703
+ line-height: 1.25rem;
704
+ }
705
+ .text-xl {
706
+ font-size: 1.25rem;
707
+ line-height: 1.75rem;
708
+ }
709
+ .text-xs {
710
+ font-size: 0.75rem;
711
+ line-height: 1rem;
712
+ }
713
+ .font-bold {
714
+ font-weight: 700;
715
+ }
716
+ .font-medium {
717
+ font-weight: 500;
718
+ }
719
+ .font-semibold {
720
+ font-weight: 600;
721
+ }
722
+ .uppercase {
723
+ text-transform: uppercase;
724
+ }
725
+ .italic {
726
+ font-style: italic;
727
+ }
728
+ .tracking-wider {
729
+ letter-spacing: 0.05em;
730
+ }
731
+ .text-blue-600 {
732
+ --tw-text-opacity: 1;
733
+ color: rgb(37 99 235 / var(--tw-text-opacity, 1));
734
+ }
735
+ .text-blue-700 {
736
+ --tw-text-opacity: 1;
737
+ color: rgb(29 78 216 / var(--tw-text-opacity, 1));
738
+ }
739
+ .text-blue-800 {
740
+ --tw-text-opacity: 1;
741
+ color: rgb(30 64 175 / var(--tw-text-opacity, 1));
742
+ }
743
+ .text-gray-100 {
744
+ --tw-text-opacity: 1;
745
+ color: rgb(243 244 246 / var(--tw-text-opacity, 1));
746
+ }
747
+ .text-gray-400 {
748
+ --tw-text-opacity: 1;
749
+ color: rgb(156 163 175 / var(--tw-text-opacity, 1));
750
+ }
751
+ .text-gray-500 {
752
+ --tw-text-opacity: 1;
753
+ color: rgb(107 114 128 / var(--tw-text-opacity, 1));
754
+ }
755
+ .text-gray-600 {
756
+ --tw-text-opacity: 1;
757
+ color: rgb(75 85 99 / var(--tw-text-opacity, 1));
758
+ }
759
+ .text-gray-700 {
760
+ --tw-text-opacity: 1;
761
+ color: rgb(55 65 81 / var(--tw-text-opacity, 1));
762
+ }
763
+ .text-gray-800 {
764
+ --tw-text-opacity: 1;
765
+ color: rgb(31 41 55 / var(--tw-text-opacity, 1));
766
+ }
767
+ .text-gray-900 {
768
+ --tw-text-opacity: 1;
769
+ color: rgb(17 24 39 / var(--tw-text-opacity, 1));
770
+ }
771
+ .text-green-500 {
772
+ --tw-text-opacity: 1;
773
+ color: rgb(34 197 94 / var(--tw-text-opacity, 1));
774
+ }
775
+ .text-red-600 {
776
+ --tw-text-opacity: 1;
777
+ color: rgb(220 38 38 / var(--tw-text-opacity, 1));
778
+ }
779
+ .text-red-700 {
780
+ --tw-text-opacity: 1;
781
+ color: rgb(185 28 28 / var(--tw-text-opacity, 1));
782
+ }
783
+ .text-red-800 {
784
+ --tw-text-opacity: 1;
785
+ color: rgb(153 27 27 / var(--tw-text-opacity, 1));
786
+ }
787
+ .text-white {
788
+ --tw-text-opacity: 1;
789
+ color: rgb(255 255 255 / var(--tw-text-opacity, 1));
790
+ }
791
+ .text-yellow-600 {
792
+ --tw-text-opacity: 1;
793
+ color: rgb(202 138 4 / var(--tw-text-opacity, 1));
794
+ }
795
+ .text-yellow-700 {
796
+ --tw-text-opacity: 1;
797
+ color: rgb(161 98 7 / var(--tw-text-opacity, 1));
798
+ }
799
+ .underline {
800
+ text-decoration-line: underline;
801
+ }
802
+ .shadow-lg {
803
+ --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
804
+ --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
805
+ box-shadow:
806
+ var(--tw-ring-offset-shadow, 0 0 #0000),
807
+ var(--tw-ring-shadow, 0 0 #0000),
808
+ var(--tw-shadow);
809
+ }
810
+ .shadow-md {
811
+ --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
812
+ --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
813
+ box-shadow:
814
+ var(--tw-ring-offset-shadow, 0 0 #0000),
815
+ var(--tw-ring-shadow, 0 0 #0000),
816
+ var(--tw-shadow);
817
+ }
818
+ .shadow-sm {
819
+ --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
820
+ --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
821
+ box-shadow:
822
+ var(--tw-ring-offset-shadow, 0 0 #0000),
823
+ var(--tw-ring-shadow, 0 0 #0000),
824
+ var(--tw-shadow);
825
+ }
826
+ .filter {
827
+ filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
828
+ }
829
+ .transition-colors {
830
+ transition-property:
831
+ color,
832
+ background-color,
833
+ border-color,
834
+ text-decoration-color,
835
+ fill,
836
+ stroke;
837
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
838
+ transition-duration: 150ms;
839
+ }
840
+ .hover\:bg-blue-700:hover {
841
+ --tw-bg-opacity: 1;
842
+ background-color: rgb(29 78 216 / var(--tw-bg-opacity, 1));
843
+ }
844
+ .hover\:bg-gray-300:hover {
845
+ --tw-bg-opacity: 1;
846
+ background-color: rgb(209 213 219 / var(--tw-bg-opacity, 1));
847
+ }
848
+ .hover\:bg-gray-50:hover {
849
+ --tw-bg-opacity: 1;
850
+ background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));
851
+ }
852
+ .hover\:bg-red-700:hover {
853
+ --tw-bg-opacity: 1;
854
+ background-color: rgb(185 28 28 / var(--tw-bg-opacity, 1));
855
+ }
856
+ .hover\:text-blue-100:hover {
857
+ --tw-text-opacity: 1;
858
+ color: rgb(219 234 254 / var(--tw-text-opacity, 1));
859
+ }
860
+ .hover\:text-blue-800:hover {
861
+ --tw-text-opacity: 1;
862
+ color: rgb(30 64 175 / var(--tw-text-opacity, 1));
863
+ }
864
+ .hover\:text-red-600:hover {
865
+ --tw-text-opacity: 1;
866
+ color: rgb(220 38 38 / var(--tw-text-opacity, 1));
867
+ }
868
+ .hover\:underline:hover {
869
+ text-decoration-line: underline;
870
+ }
871
+ .disabled\:opacity-50:disabled {
872
+ opacity: 0.5;
873
+ }
874
+ /*# sourceMappingURL=main.css.map */