@health-samurai/react-components 0.0.0-alpha.1 → 0.0.0-alpha.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.
- package/dist/bundle.css +100 -7
- package/dist/src/components/code-editor/index.js +53 -29
- package/dist/src/components/code-editor/index.js.map +1 -1
- package/dist/src/components/code-editor.stories.js +22 -7
- package/dist/src/components/code-editor.stories.js.map +1 -1
- package/dist/src/components/copy-icon.js +11 -4
- package/dist/src/components/copy-icon.js.map +1 -1
- package/dist/src/components/request-line-editor.js +56 -14
- package/dist/src/components/request-line-editor.js.map +1 -1
- package/dist/src/components/request-line-editor.stories.js +71 -22
- package/dist/src/components/request-line-editor.stories.js.map +1 -1
- package/dist/src/global.d.js +2 -0
- package/dist/src/global.d.js.map +1 -0
- package/dist/src/index.css +6 -0
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +52 -50
- package/dist/src/index.js.map +1 -1
- package/dist/src/index.stories.js +8 -5
- package/dist/src/index.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/accordion.js +34 -5
- package/dist/src/shadcn/components/ui/accordion.js.map +1 -1
- package/dist/src/shadcn/components/ui/accordion.stories.js +68 -3
- package/dist/src/shadcn/components/ui/accordion.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/alert-dialog.js +61 -14
- package/dist/src/shadcn/components/ui/alert-dialog.js.map +1 -1
- package/dist/src/shadcn/components/ui/alert-dialog.stories.js +39 -4
- package/dist/src/shadcn/components/ui/alert-dialog.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/alert.js +24 -8
- package/dist/src/shadcn/components/ui/alert.js.map +1 -1
- package/dist/src/shadcn/components/ui/alert.stories.js +57 -3
- package/dist/src/shadcn/components/ui/alert.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/aspect-ratio.js +5 -1
- package/dist/src/shadcn/components/ui/aspect-ratio.js.map +1 -1
- package/dist/src/shadcn/components/ui/aspect-ratio.stories.js +12 -3
- package/dist/src/shadcn/components/ui/aspect-ratio.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/avatar.js +17 -4
- package/dist/src/shadcn/components/ui/avatar.js.map +1 -1
- package/dist/src/shadcn/components/ui/avatar.stories.js +69 -3
- package/dist/src/shadcn/components/ui/avatar.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/badge.js +13 -6
- package/dist/src/shadcn/components/ui/badge.js.map +1 -1
- package/dist/src/shadcn/components/ui/badge.stories.js +55 -3
- package/dist/src/shadcn/components/ui/badge.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/breadcrumb.js +56 -11
- package/dist/src/shadcn/components/ui/breadcrumb.js.map +1 -1
- package/dist/src/shadcn/components/ui/breadcrumb.stories.js +69 -4
- package/dist/src/shadcn/components/ui/breadcrumb.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/button.js +23 -13
- package/dist/src/shadcn/components/ui/button.js.map +1 -1
- package/dist/src/shadcn/components/ui/button.stories.js +190 -10
- package/dist/src/shadcn/components/ui/button.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/calendar.js +75 -33
- package/dist/src/shadcn/components/ui/calendar.js.map +1 -1
- package/dist/src/shadcn/components/ui/calendar.stories.js +12 -5
- package/dist/src/shadcn/components/ui/calendar.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/card.js +38 -9
- package/dist/src/shadcn/components/ui/card.js.map +1 -1
- package/dist/src/shadcn/components/ui/card.stories.js +91 -6
- package/dist/src/shadcn/components/ui/card.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/carousel.js +99 -39
- package/dist/src/shadcn/components/ui/carousel.js.map +1 -1
- package/dist/src/shadcn/components/ui/carousel.stories.js +30 -6
- package/dist/src/shadcn/components/ui/carousel.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/chart.js +118 -55
- package/dist/src/shadcn/components/ui/chart.js.map +1 -1
- package/dist/src/shadcn/components/ui/chart.stories.js +72 -12
- package/dist/src/shadcn/components/ui/chart.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/checkbox.js +14 -2
- package/dist/src/shadcn/components/ui/checkbox.js.map +1 -1
- package/dist/src/shadcn/components/ui/checkbox.stories.js +79 -4
- package/dist/src/shadcn/components/ui/checkbox.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/collapsible.js +13 -3
- package/dist/src/shadcn/components/ui/collapsible.js.map +1 -1
- package/dist/src/shadcn/components/ui/collapsible.stories.js +54 -6
- package/dist/src/shadcn/components/ui/collapsible.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/command.js +77 -12
- package/dist/src/shadcn/components/ui/command.js.map +1 -1
- package/dist/src/shadcn/components/ui/command.stories.js +88 -4
- package/dist/src/shadcn/components/ui/command.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/context-menu.js +106 -17
- package/dist/src/shadcn/components/ui/context-menu.js.map +1 -1
- package/dist/src/shadcn/components/ui/context-menu.stories.js +101 -3
- package/dist/src/shadcn/components/ui/context-menu.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/dialog.js +69 -12
- package/dist/src/shadcn/components/ui/dialog.js.map +1 -1
- package/dist/src/shadcn/components/ui/dialog.stories.js +82 -6
- package/dist/src/shadcn/components/ui/dialog.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/drawer.js +61 -12
- package/dist/src/shadcn/components/ui/drawer.js.map +1 -1
- package/dist/src/shadcn/components/ui/drawer.stories.js +154 -21
- package/dist/src/shadcn/components/ui/drawer.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/dropdown-menu.js +107 -17
- package/dist/src/shadcn/components/ui/dropdown-menu.js.map +1 -1
- package/dist/src/shadcn/components/ui/dropdown-menu.stories.js +119 -4
- package/dist/src/shadcn/components/ui/dropdown-menu.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/form.js +58 -18
- package/dist/src/shadcn/components/ui/form.js.map +1 -1
- package/dist/src/shadcn/components/ui/form.stories.js +45 -11
- package/dist/src/shadcn/components/ui/form.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/hover-card.js +20 -4
- package/dist/src/shadcn/components/ui/hover-card.js.map +1 -1
- package/dist/src/shadcn/components/ui/hover-card.stories.js +51 -5
- package/dist/src/shadcn/components/ui/hover-card.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/input-otp.js +35 -7
- package/dist/src/shadcn/components/ui/input-otp.js.map +1 -1
- package/dist/src/shadcn/components/ui/input-otp.stories.js +35 -3
- package/dist/src/shadcn/components/ui/input-otp.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/input.js +59 -40
- package/dist/src/shadcn/components/ui/input.js.map +1 -1
- package/dist/src/shadcn/components/ui/input.stories.js +391 -23
- package/dist/src/shadcn/components/ui/input.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/label.js +7 -2
- package/dist/src/shadcn/components/ui/label.js.map +1 -1
- package/dist/src/shadcn/components/ui/label.stories.js +18 -4
- package/dist/src/shadcn/components/ui/label.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/menubar.js +116 -19
- package/dist/src/shadcn/components/ui/menubar.js.map +1 -1
- package/dist/src/shadcn/components/ui/menubar.stories.js +216 -3
- package/dist/src/shadcn/components/ui/menubar.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/navigation-menu.js +62 -10
- package/dist/src/shadcn/components/ui/navigation-menu.js.map +1 -1
- package/dist/src/shadcn/components/ui/navigation-menu.stories.js +263 -11
- package/dist/src/shadcn/components/ui/navigation-menu.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/pagination.js +73 -16
- package/dist/src/shadcn/components/ui/pagination.js.map +1 -1
- package/dist/src/shadcn/components/ui/pagination.stories.js +41 -3
- package/dist/src/shadcn/components/ui/pagination.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/popover.js +23 -5
- package/dist/src/shadcn/components/ui/popover.js.map +1 -1
- package/dist/src/shadcn/components/ui/popover.stories.js +99 -6
- package/dist/src/shadcn/components/ui/popover.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/progress.js +14 -2
- package/dist/src/shadcn/components/ui/progress.js.map +1 -1
- package/dist/src/shadcn/components/ui/progress.stories.js +12 -8
- package/dist/src/shadcn/components/ui/progress.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/radio-group.js +19 -3
- package/dist/src/shadcn/components/ui/radio-group.js.map +1 -1
- package/dist/src/shadcn/components/ui/radio-group.stories.js +48 -4
- package/dist/src/shadcn/components/ui/radio-group.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/resizable.js +22 -4
- package/dist/src/shadcn/components/ui/resizable.js.map +1 -1
- package/dist/src/shadcn/components/ui/resizable.stories.js +49 -3
- package/dist/src/shadcn/components/ui/resizable.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/scroll-area.js +26 -5
- package/dist/src/shadcn/components/ui/scroll-area.js.map +1 -1
- package/dist/src/shadcn/components/ui/scroll-area.stories.js +30 -5
- package/dist/src/shadcn/components/ui/scroll-area.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/select.js +98 -19
- package/dist/src/shadcn/components/ui/select.js.map +1 -1
- package/dist/src/shadcn/components/ui/select.stories.js +84 -5
- package/dist/src/shadcn/components/ui/select.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/separator.js +9 -2
- package/dist/src/shadcn/components/ui/separator.js.map +1 -1
- package/dist/src/shadcn/components/ui/separator.stories.js +43 -3
- package/dist/src/shadcn/components/ui/separator.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/sheet.js +69 -16
- package/dist/src/shadcn/components/ui/sheet.js.map +1 -1
- package/dist/src/shadcn/components/ui/sheet.stories.js +77 -6
- package/dist/src/shadcn/components/ui/sheet.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/sidebar.js +304 -79
- package/dist/src/shadcn/components/ui/sidebar.js.map +1 -1
- package/dist/src/shadcn/components/ui/sidebar.stories.js +321 -59
- package/dist/src/shadcn/components/ui/sidebar.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/skeleton.js +7 -2
- package/dist/src/shadcn/components/ui/skeleton.js.map +1 -1
- package/dist/src/shadcn/components/ui/skeleton.stories.js +22 -3
- package/dist/src/shadcn/components/ui/skeleton.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/slider.js +40 -7
- package/dist/src/shadcn/components/ui/slider.js.map +1 -1
- package/dist/src/shadcn/components/ui/slider.stories.js +11 -3
- package/dist/src/shadcn/components/ui/slider.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/sonner.js +10 -4
- package/dist/src/shadcn/components/ui/sonner.js.map +1 -1
- package/dist/src/shadcn/components/ui/sonner.stories.js +14 -9
- package/dist/src/shadcn/components/ui/sonner.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/switch.js +11 -2
- package/dist/src/shadcn/components/ui/switch.js.map +1 -1
- package/dist/src/shadcn/components/ui/switch.stories.js +16 -4
- package/dist/src/shadcn/components/ui/switch.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/table.js +47 -10
- package/dist/src/shadcn/components/ui/table.js.map +1 -1
- package/dist/src/shadcn/components/ui/table.stories.js +72 -11
- package/dist/src/shadcn/components/ui/table.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/tabs.d.ts +9 -5
- package/dist/src/shadcn/components/ui/tabs.d.ts.map +1 -1
- package/dist/src/shadcn/components/ui/tabs.js +75 -18
- package/dist/src/shadcn/components/ui/tabs.js.map +1 -1
- package/dist/src/shadcn/components/ui/tabs.stories.d.ts +6 -0
- package/dist/src/shadcn/components/ui/tabs.stories.d.ts.map +1 -1
- package/dist/src/shadcn/components/ui/tabs.stories.js +221 -10
- package/dist/src/shadcn/components/ui/tabs.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/textarea.js +7 -2
- package/dist/src/shadcn/components/ui/textarea.js.map +1 -1
- package/dist/src/shadcn/components/ui/textarea.stories.js +6 -3
- package/dist/src/shadcn/components/ui/textarea.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/toggle-group.js +29 -8
- package/dist/src/shadcn/components/ui/toggle-group.js.map +1 -1
- package/dist/src/shadcn/components/ui/toggle-group.stories.js +30 -3
- package/dist/src/shadcn/components/ui/toggle-group.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/toggle.js +16 -7
- package/dist/src/shadcn/components/ui/toggle.js.map +1 -1
- package/dist/src/shadcn/components/ui/toggle.stories.js +9 -3
- package/dist/src/shadcn/components/ui/toggle.stories.js.map +1 -1
- package/dist/src/shadcn/components/ui/tooltip.js +26 -5
- package/dist/src/shadcn/components/ui/tooltip.js.map +1 -1
- package/dist/src/shadcn/components/ui/tooltip.stories.js +20 -4
- package/dist/src/shadcn/components/ui/tooltip.stories.js.map +1 -1
- package/dist/src/shadcn/hooks/use-mobile.js +4 -3
- package/dist/src/shadcn/hooks/use-mobile.js.map +1 -1
- package/dist/src/shadcn/lib/utils.js +1 -0
- package/dist/src/shadcn/lib/utils.js.map +1 -1
- package/package.json +8 -4
- package/src/index.css +6 -0
- package/src/index.tsx +1 -0
- package/src/shadcn/components/ui/tabs.stories.tsx +57 -0
- package/src/shadcn/components/ui/tabs.tsx +76 -26
package/dist/bundle.css
CHANGED
|
@@ -40,6 +40,7 @@
|
|
|
40
40
|
--color-blue-950: #05101e;
|
|
41
41
|
--color-violet-200: oklch(89.4% 0.057 293.283);
|
|
42
42
|
--color-violet-400: oklch(70.2% 0.183 293.541);
|
|
43
|
+
--color-violet-500: oklch(60.6% 0.25 292.717);
|
|
43
44
|
--color-violet-600: oklch(54.1% 0.281 293.009);
|
|
44
45
|
--color-purple-200: oklch(90.2% 0.063 306.703);
|
|
45
46
|
--color-pink-200: oklch(89.9% 0.061 343.231);
|
|
@@ -163,6 +164,8 @@
|
|
|
163
164
|
--color-fg-tertiary: var(--color-neutral-400);
|
|
164
165
|
--color-fg-disabled: var(--color-neutral-300);
|
|
165
166
|
--color-fg-success-secondary: var(--color-green-400);
|
|
167
|
+
--color-utility-green: var(--color-green-500);
|
|
168
|
+
--color-utility-yellow: var(--color-yellow-600);
|
|
166
169
|
}
|
|
167
170
|
}
|
|
168
171
|
@layer base {
|
|
@@ -518,6 +521,9 @@
|
|
|
518
521
|
.ml-auto {
|
|
519
522
|
margin-left: auto;
|
|
520
523
|
}
|
|
524
|
+
.box-border {
|
|
525
|
+
box-sizing: border-box;
|
|
526
|
+
}
|
|
521
527
|
.box-content {
|
|
522
528
|
box-sizing: content-box;
|
|
523
529
|
}
|
|
@@ -1289,6 +1295,9 @@
|
|
|
1289
1295
|
.border-t-transparent {
|
|
1290
1296
|
border-top-color: transparent;
|
|
1291
1297
|
}
|
|
1298
|
+
.border-b-transparent {
|
|
1299
|
+
border-bottom-color: transparent;
|
|
1300
|
+
}
|
|
1292
1301
|
.border-l-transparent {
|
|
1293
1302
|
border-left-color: transparent;
|
|
1294
1303
|
}
|
|
@@ -1493,6 +1502,9 @@
|
|
|
1493
1502
|
.pt-0 {
|
|
1494
1503
|
padding-top: calc(var(--spacing) * 0);
|
|
1495
1504
|
}
|
|
1505
|
+
.pt-2\.5 {
|
|
1506
|
+
padding-top: calc(var(--spacing) * 2.5);
|
|
1507
|
+
}
|
|
1496
1508
|
.pt-3 {
|
|
1497
1509
|
padding-top: calc(var(--spacing) * 3);
|
|
1498
1510
|
}
|
|
@@ -1520,6 +1532,9 @@
|
|
|
1520
1532
|
.pb-0 {
|
|
1521
1533
|
padding-bottom: calc(var(--spacing) * 0);
|
|
1522
1534
|
}
|
|
1535
|
+
.pb-2 {
|
|
1536
|
+
padding-bottom: calc(var(--spacing) * 2);
|
|
1537
|
+
}
|
|
1523
1538
|
.pb-3 {
|
|
1524
1539
|
padding-bottom: calc(var(--spacing) * 3);
|
|
1525
1540
|
}
|
|
@@ -1716,6 +1731,12 @@
|
|
|
1716
1731
|
.text-text-tertiary {
|
|
1717
1732
|
color: var(--color-text-tertiary);
|
|
1718
1733
|
}
|
|
1734
|
+
.text-utility-green {
|
|
1735
|
+
color: var(--color-utility-green);
|
|
1736
|
+
}
|
|
1737
|
+
.text-utility-yellow {
|
|
1738
|
+
color: var(--color-utility-yellow);
|
|
1739
|
+
}
|
|
1719
1740
|
.text-violet-600 {
|
|
1720
1741
|
color: var(--color-violet-600);
|
|
1721
1742
|
}
|
|
@@ -1830,11 +1851,6 @@
|
|
|
1830
1851
|
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
|
|
1831
1852
|
transition-duration: var(--tw-duration, var(--default-transition-duration));
|
|
1832
1853
|
}
|
|
1833
|
-
.transition-\[color\,box-shadow\,border\] {
|
|
1834
|
-
transition-property: color,box-shadow,border;
|
|
1835
|
-
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
|
|
1836
|
-
transition-duration: var(--tw-duration, var(--default-transition-duration));
|
|
1837
|
-
}
|
|
1838
1854
|
.transition-\[color\,box-shadow\] {
|
|
1839
1855
|
transition-property: color,box-shadow;
|
|
1840
1856
|
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
|
|
@@ -2468,6 +2484,16 @@
|
|
|
2468
2484
|
}
|
|
2469
2485
|
}
|
|
2470
2486
|
}
|
|
2487
|
+
.hover\:bg-bg-secondary\/60 {
|
|
2488
|
+
&:hover {
|
|
2489
|
+
@media (hover: hover) {
|
|
2490
|
+
background-color: color-mix(in srgb, #f9f9f9 60%, transparent);
|
|
2491
|
+
@supports (color: color-mix(in lab, red, red)) {
|
|
2492
|
+
background-color: color-mix(in oklab, var(--color-bg-secondary) 60%, transparent);
|
|
2493
|
+
}
|
|
2494
|
+
}
|
|
2495
|
+
}
|
|
2496
|
+
}
|
|
2471
2497
|
.hover\:bg-muted {
|
|
2472
2498
|
&:hover {
|
|
2473
2499
|
@media (hover: hover) {
|
|
@@ -3499,9 +3525,42 @@
|
|
|
3499
3525
|
}
|
|
3500
3526
|
}
|
|
3501
3527
|
}
|
|
3502
|
-
|
|
3528
|
+
.\*\*\:data-\[slot\=tabs-list\]\:divide-x {
|
|
3529
|
+
:is(& *) {
|
|
3530
|
+
&[data-slot="tabs-list"] {
|
|
3531
|
+
:where(& > :not(:last-child)) {
|
|
3532
|
+
--tw-divide-x-reverse: 0;
|
|
3533
|
+
border-inline-style: var(--tw-border-style);
|
|
3534
|
+
border-inline-start-width: calc(1px * var(--tw-divide-x-reverse));
|
|
3535
|
+
border-inline-end-width: calc(1px * calc(1 - var(--tw-divide-x-reverse)));
|
|
3536
|
+
}
|
|
3537
|
+
}
|
|
3538
|
+
}
|
|
3539
|
+
}
|
|
3540
|
+
.\*\*\:data-\[slot\=tabs-list\]\:overflow-x-auto {
|
|
3541
|
+
:is(& *) {
|
|
3542
|
+
&[data-slot="tabs-list"] {
|
|
3543
|
+
overflow-x: auto;
|
|
3544
|
+
}
|
|
3545
|
+
}
|
|
3546
|
+
}
|
|
3547
|
+
.\*\*\:data-\[slot\=tabs-trigger\]\:max-w-80 {
|
|
3548
|
+
:is(& *) {
|
|
3549
|
+
&[data-slot="tabs-trigger"] {
|
|
3550
|
+
max-width: calc(var(--spacing) * 80);
|
|
3551
|
+
}
|
|
3552
|
+
}
|
|
3553
|
+
}
|
|
3554
|
+
.\*\*\:data-\[slot\=tabs-trigger\]\:min-w-40 {
|
|
3555
|
+
:is(& *) {
|
|
3556
|
+
&[data-slot="tabs-trigger"] {
|
|
3557
|
+
min-width: calc(var(--spacing) * 40);
|
|
3558
|
+
}
|
|
3559
|
+
}
|
|
3560
|
+
}
|
|
3561
|
+
.data-\[state\=active\]\:border-b-border-brand {
|
|
3503
3562
|
&[data-state="active"] {
|
|
3504
|
-
border-color: var(--color-border-brand);
|
|
3563
|
+
border-bottom-color: var(--color-border-brand);
|
|
3505
3564
|
}
|
|
3506
3565
|
}
|
|
3507
3566
|
.data-\[state\=active\]\:text-text-primary {
|
|
@@ -3626,6 +3685,34 @@
|
|
|
3626
3685
|
--tw-exit-opacity: 0;
|
|
3627
3686
|
}
|
|
3628
3687
|
}
|
|
3688
|
+
.\*\*\:data-\[slot\=tabs-trigger\]\:data-\[state\=inactive\]\:border-b-1 {
|
|
3689
|
+
:is(& *) {
|
|
3690
|
+
&[data-slot="tabs-trigger"] {
|
|
3691
|
+
&[data-state="inactive"] {
|
|
3692
|
+
border-bottom-style: var(--tw-border-style);
|
|
3693
|
+
border-bottom-width: 1px;
|
|
3694
|
+
}
|
|
3695
|
+
}
|
|
3696
|
+
}
|
|
3697
|
+
}
|
|
3698
|
+
.\*\*\:data-\[slot\=tabs-trigger\]\:data-\[state\=inactive\]\:border-b-border-secondary {
|
|
3699
|
+
:is(& *) {
|
|
3700
|
+
&[data-slot="tabs-trigger"] {
|
|
3701
|
+
&[data-state="inactive"] {
|
|
3702
|
+
border-bottom-color: var(--color-border-secondary);
|
|
3703
|
+
}
|
|
3704
|
+
}
|
|
3705
|
+
}
|
|
3706
|
+
}
|
|
3707
|
+
.\*\*\:data-\[slot\=tabs-trigger\]\:data-\[state\=inactive\]\:pt-\[9px\] {
|
|
3708
|
+
:is(& *) {
|
|
3709
|
+
&[data-slot="tabs-trigger"] {
|
|
3710
|
+
&[data-state="inactive"] {
|
|
3711
|
+
padding-top: 9px;
|
|
3712
|
+
}
|
|
3713
|
+
}
|
|
3714
|
+
}
|
|
3715
|
+
}
|
|
3629
3716
|
.data-\[state\=on\]\:bg-accent {
|
|
3630
3717
|
&[data-state="on"] {
|
|
3631
3718
|
background-color: var(--accent);
|
|
@@ -5402,6 +5489,11 @@ body {
|
|
|
5402
5489
|
syntax: "*";
|
|
5403
5490
|
inherits: false;
|
|
5404
5491
|
}
|
|
5492
|
+
@property --tw-divide-x-reverse {
|
|
5493
|
+
syntax: "*";
|
|
5494
|
+
inherits: false;
|
|
5495
|
+
initial-value: 0;
|
|
5496
|
+
}
|
|
5405
5497
|
@keyframes pulse {
|
|
5406
5498
|
50% {
|
|
5407
5499
|
opacity: 0.5;
|
|
@@ -5505,6 +5597,7 @@ body {
|
|
|
5505
5597
|
--tw-drop-shadow-color: initial;
|
|
5506
5598
|
--tw-drop-shadow-alpha: 100%;
|
|
5507
5599
|
--tw-drop-shadow-size: initial;
|
|
5600
|
+
--tw-divide-x-reverse: 0;
|
|
5508
5601
|
--tw-animation-delay: 0s;
|
|
5509
5602
|
--tw-animation-direction: normal;
|
|
5510
5603
|
--tw-animation-duration: initial;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { autocompletion, closeBrackets, closeBracketsKeymap, completionKeymap
|
|
2
|
+
import { autocompletion, closeBrackets, closeBracketsKeymap, completionKeymap } from "@codemirror/autocomplete";
|
|
3
3
|
import { defaultKeymap, history, historyKeymap } from "@codemirror/commands";
|
|
4
4
|
import { json, jsonParseLinter } from "@codemirror/lang-json";
|
|
5
|
-
import { bracketMatching, foldGutter, foldKeymap, HighlightStyle, indentOnInput, syntaxHighlighting
|
|
5
|
+
import { bracketMatching, foldGutter, foldKeymap, HighlightStyle, indentOnInput, syntaxHighlighting } from "@codemirror/language";
|
|
6
6
|
import { linter, lintGutter, lintKeymap } from "@codemirror/lint";
|
|
7
7
|
import { highlightSelectionMatches, searchKeymap } from "@codemirror/search";
|
|
8
8
|
import { EditorState } from "@codemirror/state";
|
|
9
|
-
import { crosshairCursor, drawSelection, dropCursor, EditorView, highlightActiveLine, highlightActiveLineGutter, highlightSpecialChars, keymap, lineNumbers, rectangularSelection
|
|
9
|
+
import { crosshairCursor, drawSelection, dropCursor, EditorView, highlightActiveLine, highlightActiveLineGutter, highlightSpecialChars, keymap, lineNumbers, rectangularSelection } from "@codemirror/view";
|
|
10
10
|
import { tags } from "@lezer/highlight";
|
|
11
11
|
import * as React from "react";
|
|
12
12
|
const baseTheme = EditorView.baseTheme({
|
|
@@ -16,46 +16,61 @@ const baseTheme = EditorView.baseTheme({
|
|
|
16
16
|
width: "100%",
|
|
17
17
|
fontSize: "14px",
|
|
18
18
|
paddingTop: "8px",
|
|
19
|
-
paddingBottom: "8px"
|
|
19
|
+
paddingBottom: "8px"
|
|
20
20
|
},
|
|
21
21
|
".cm-scroller": {
|
|
22
|
-
overflow: "auto"
|
|
22
|
+
overflow: "auto"
|
|
23
23
|
},
|
|
24
24
|
".cm-content": {
|
|
25
25
|
fontFamily: "var(--font-family-mono)",
|
|
26
|
-
padding: "0"
|
|
26
|
+
padding: "0"
|
|
27
27
|
},
|
|
28
28
|
"&.cm-focused": {
|
|
29
|
-
outline: "none"
|
|
29
|
+
outline: "none"
|
|
30
30
|
},
|
|
31
31
|
".cm-gutter": {
|
|
32
|
-
fontFamily: "var(--font-family-mono)"
|
|
32
|
+
fontFamily: "var(--font-family-mono)"
|
|
33
33
|
},
|
|
34
34
|
".cm-gutters": {
|
|
35
35
|
backgroundColor: "var(--color-bg-primary)",
|
|
36
|
-
border: "none"
|
|
36
|
+
border: "none"
|
|
37
37
|
},
|
|
38
38
|
".cm-lineNumbers": {
|
|
39
|
-
paddingLeft: "16px"
|
|
39
|
+
paddingLeft: "16px"
|
|
40
40
|
},
|
|
41
41
|
".cm-activeLineGutter": {
|
|
42
42
|
backgroundColor: "var(--color-bg-primary)",
|
|
43
|
-
color: "var(--color-text-primary)"
|
|
43
|
+
color: "var(--color-text-primary)"
|
|
44
44
|
},
|
|
45
45
|
".cm-activeLine": {
|
|
46
|
-
backgroundColor: "rgba(255, 255, 255, 0)"
|
|
47
|
-
}
|
|
46
|
+
backgroundColor: "rgba(255, 255, 255, 0)"
|
|
47
|
+
}
|
|
48
48
|
});
|
|
49
49
|
const customHighlightStyle = HighlightStyle.define([
|
|
50
|
-
{
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
{
|
|
50
|
+
{
|
|
51
|
+
tag: tags.propertyName,
|
|
52
|
+
color: "#EA4A35"
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
tag: tags.string,
|
|
56
|
+
color: "#405CBF"
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
tag: tags.number,
|
|
60
|
+
color: "#00A984"
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
tag: tags.bool,
|
|
64
|
+
color: "#569cd6"
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
tag: tags.null,
|
|
68
|
+
color: "#569cd6"
|
|
69
|
+
}
|
|
55
70
|
]);
|
|
56
|
-
export function CodeEditor({ defaultValue, onChange
|
|
71
|
+
export function CodeEditor({ defaultValue, onChange }) {
|
|
57
72
|
const editorRef = React.useRef(null);
|
|
58
|
-
React.useEffect(()
|
|
73
|
+
React.useEffect(()=>{
|
|
59
74
|
if (!editorRef.current) {
|
|
60
75
|
return;
|
|
61
76
|
}
|
|
@@ -90,20 +105,29 @@ export function CodeEditor({ defaultValue, onChange, }) {
|
|
|
90
105
|
...historyKeymap,
|
|
91
106
|
...foldKeymap,
|
|
92
107
|
...completionKeymap,
|
|
93
|
-
...lintKeymap
|
|
108
|
+
...lintKeymap
|
|
94
109
|
]),
|
|
95
|
-
linter(jsonParseLinter(), {
|
|
110
|
+
linter(jsonParseLinter(), {
|
|
111
|
+
delay: 300
|
|
112
|
+
}),
|
|
96
113
|
lintGutter(),
|
|
97
|
-
EditorView.updateListener.of((update)
|
|
114
|
+
EditorView.updateListener.of((update)=>{
|
|
98
115
|
if (update.docChanged && onChange) {
|
|
99
116
|
onChange(update.view.state.doc.toString());
|
|
100
117
|
}
|
|
101
|
-
})
|
|
102
|
-
]
|
|
103
|
-
})
|
|
118
|
+
})
|
|
119
|
+
]
|
|
120
|
+
})
|
|
104
121
|
});
|
|
105
|
-
return ()
|
|
106
|
-
}, [
|
|
107
|
-
|
|
122
|
+
return ()=>view.destroy();
|
|
123
|
+
}, [
|
|
124
|
+
defaultValue,
|
|
125
|
+
onChange
|
|
126
|
+
]);
|
|
127
|
+
return /*#__PURE__*/ _jsx("div", {
|
|
128
|
+
className: "h-full w-full",
|
|
129
|
+
ref: editorRef
|
|
130
|
+
});
|
|
108
131
|
}
|
|
132
|
+
|
|
109
133
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/code-editor/index.tsx"],"sourcesContent":["import {\n\tautocompletion,\n\tcloseBrackets,\n\tcloseBracketsKeymap,\n\tcompletionKeymap,\n} from \"@codemirror/autocomplete\";\nimport { defaultKeymap, history, historyKeymap } from \"@codemirror/commands\";\nimport { json, jsonParseLinter } from \"@codemirror/lang-json\";\nimport {\n\tbracketMatching,\n\tfoldGutter,\n\tfoldKeymap,\n\tHighlightStyle,\n\tindentOnInput,\n\tsyntaxHighlighting,\n} from \"@codemirror/language\";\nimport { linter, lintGutter, lintKeymap } from \"@codemirror/lint\";\nimport { highlightSelectionMatches, searchKeymap } from \"@codemirror/search\";\nimport { EditorState } from \"@codemirror/state\";\nimport {\n\tcrosshairCursor,\n\tdrawSelection,\n\tdropCursor,\n\tEditorView,\n\thighlightActiveLine,\n\thighlightActiveLineGutter,\n\thighlightSpecialChars,\n\tkeymap,\n\tlineNumbers,\n\trectangularSelection,\n} from \"@codemirror/view\";\nimport { tags } from \"@lezer/highlight\";\nimport * as React from \"react\";\n\nconst baseTheme = EditorView.baseTheme({\n\t\"&\": {\n\t\tbackgroundColor: \"var(--color-bg-primary)\",\n\t\theight: \"100%\",\n\t\twidth: \"100%\",\n\t\tfontSize: \"14px\",\n\t\tpaddingTop: \"8px\",\n\t\tpaddingBottom: \"8px\",\n\t},\n\t\".cm-scroller\": {\n\t\toverflow: \"auto\",\n\t},\n\t\".cm-content\": {\n\t\tfontFamily: \"var(--font-family-mono)\",\n\t\tpadding: \"0\",\n\t},\n\t\"&.cm-focused\": {\n\t\toutline: \"none\",\n\t},\n\t\".cm-gutter\": {\n\t\tfontFamily: \"var(--font-family-mono)\",\n\t},\n\t\".cm-gutters\": {\n\t\tbackgroundColor: \"var(--color-bg-primary)\",\n\t\tborder: \"none\",\n\t},\n\t\".cm-lineNumbers\": {\n\t\tpaddingLeft: \"16px\",\n\t},\n\t\".cm-activeLineGutter\": {\n\t\tbackgroundColor: \"var(--color-bg-primary)\",\n\t\tcolor: \"var(--color-text-primary)\",\n\t},\n\t\".cm-activeLine\": {\n\t\tbackgroundColor: \"rgba(255, 255, 255, 0)\",\n\t},\n});\n\nconst customHighlightStyle = HighlightStyle.define([\n\t{ tag: tags.propertyName, color: \"#EA4A35\" },\n\t{ tag: tags.string, color: \"#405CBF\" },\n\t{ tag: tags.number, color: \"#00A984\" },\n\t{ tag: tags.bool, color: \"#569cd6\" },\n\t{ tag: tags.null, color: \"#569cd6\" },\n]);\n\nexport function CodeEditor({\n\tdefaultValue,\n\tonChange,\n}: {\n\tdefaultValue?: string;\n\tonChange?: (value: string) => void;\n}) {\n\tconst editorRef = React.useRef(null);\n\n\tReact.useEffect(() => {\n\t\tif (!editorRef.current) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst view = new EditorView({\n\t\t\tparent: editorRef.current,\n\t\t\tstate: EditorState.create({\n\t\t\t\tdoc: defaultValue ?? \"\",\n\t\t\t\textensions: [\n\t\t\t\t\tlineNumbers(),\n\t\t\t\t\tfoldGutter(),\n\t\t\t\t\thighlightSpecialChars(),\n\t\t\t\t\thistory(),\n\t\t\t\t\tdrawSelection(),\n\t\t\t\t\tdropCursor(),\n\t\t\t\t\tEditorState.allowMultipleSelections.of(true),\n\t\t\t\t\tindentOnInput(),\n\t\t\t\t\tjson(),\n\t\t\t\t\tsyntaxHighlighting(customHighlightStyle),\n\t\t\t\t\tbracketMatching(),\n\t\t\t\t\tcloseBrackets(),\n\t\t\t\t\tautocompletion(),\n\t\t\t\t\trectangularSelection(),\n\t\t\t\t\tcrosshairCursor(),\n\t\t\t\t\thighlightActiveLine(),\n\t\t\t\t\thighlightActiveLineGutter(),\n\t\t\t\t\thighlightSelectionMatches(),\n\t\t\t\t\tbaseTheme,\n\t\t\t\t\tkeymap.of([\n\t\t\t\t\t\t...closeBracketsKeymap,\n\t\t\t\t\t\t...defaultKeymap,\n\t\t\t\t\t\t...searchKeymap,\n\t\t\t\t\t\t...historyKeymap,\n\t\t\t\t\t\t...foldKeymap,\n\t\t\t\t\t\t...completionKeymap,\n\t\t\t\t\t\t...lintKeymap,\n\t\t\t\t\t]),\n\t\t\t\t\tlinter(jsonParseLinter(), { delay: 300 }),\n\t\t\t\t\tlintGutter(),\n\t\t\t\t\tEditorView.updateListener.of((update) => {\n\t\t\t\t\t\tif (update.docChanged && onChange) {\n\t\t\t\t\t\t\tonChange(update.view.state.doc.toString());\n\t\t\t\t\t\t}\n\t\t\t\t\t}),\n\t\t\t\t],\n\t\t\t}),\n\t\t});\n\n\t\treturn () => view.destroy();\n\t}, [defaultValue, onChange]);\n\n\treturn <div className=\"h-full w-full\" ref={editorRef} />;\n}\n"],"names":["autocompletion","closeBrackets","closeBracketsKeymap","completionKeymap","defaultKeymap","history","historyKeymap","json","jsonParseLinter","bracketMatching","foldGutter","foldKeymap","HighlightStyle","indentOnInput","syntaxHighlighting","linter","lintGutter","lintKeymap","highlightSelectionMatches","searchKeymap","EditorState","crosshairCursor","drawSelection","dropCursor","EditorView","highlightActiveLine","highlightActiveLineGutter","highlightSpecialChars","keymap","lineNumbers","rectangularSelection","tags","React","baseTheme","backgroundColor","height","width","fontSize","paddingTop","paddingBottom","overflow","fontFamily","padding","outline","border","paddingLeft","color","customHighlightStyle","define","tag","propertyName","string","number","bool","null","CodeEditor","defaultValue","onChange","editorRef","useRef","useEffect","current","view","parent","state","create","doc","extensions","allowMultipleSelections","of","delay","updateListener","update","docChanged","toString","destroy","div","className","ref"],"mappings":"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"}
|
|
@@ -1,23 +1,38 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { CodeEditor } from "./code-editor";
|
|
2
|
+
import { CodeEditor } from "./code-editor/index.js";
|
|
3
3
|
const meta = {
|
|
4
4
|
title: "Component/Editor",
|
|
5
5
|
component: CodeEditor,
|
|
6
6
|
parameters: {
|
|
7
|
-
layout: "centered"
|
|
7
|
+
layout: "centered"
|
|
8
8
|
},
|
|
9
|
-
tags: [
|
|
9
|
+
tags: [
|
|
10
|
+
"autodocs"
|
|
11
|
+
]
|
|
10
12
|
};
|
|
11
13
|
export default meta;
|
|
12
14
|
export const Default = {
|
|
13
15
|
args: {
|
|
14
16
|
defaultValue: JSON.stringify({
|
|
15
17
|
resourceType: "Patient",
|
|
16
|
-
meta: {
|
|
18
|
+
meta: {
|
|
19
|
+
versionId: 10
|
|
20
|
+
},
|
|
17
21
|
gender: "male",
|
|
18
|
-
name: [
|
|
19
|
-
|
|
22
|
+
name: [
|
|
23
|
+
{
|
|
24
|
+
family: "Doe",
|
|
25
|
+
given: [
|
|
26
|
+
"John"
|
|
27
|
+
]
|
|
28
|
+
}
|
|
29
|
+
]
|
|
30
|
+
}, null, 2)
|
|
20
31
|
},
|
|
21
|
-
render: ()
|
|
32
|
+
render: ()=>/*#__PURE__*/ _jsx("div", {
|
|
33
|
+
className: "h-[500px] w-[500px]",
|
|
34
|
+
children: /*#__PURE__*/ _jsx(CodeEditor, {})
|
|
35
|
+
})
|
|
22
36
|
};
|
|
37
|
+
|
|
23
38
|
//# sourceMappingURL=code-editor.stories.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../../../src/components/code-editor.stories.tsx"],"sourcesContent":["import type { Meta, StoryObj } from \"@storybook/react-vite\";\nimport { CodeEditor } from \"./code-editor\";\n\nconst meta: Meta<typeof CodeEditor> = {\n\ttitle: \"Component/Editor\",\n\tcomponent: CodeEditor,\n\tparameters: {\n\t\tlayout: \"centered\",\n\t},\n\ttags: [\"autodocs\"],\n};\n\nexport default meta;\ntype Story = StoryObj<typeof CodeEditor>;\n\nexport const Default: Story = {\n\targs: {\n\t\tdefaultValue: JSON.stringify(\n\t\t\t{\n\t\t\t\tresourceType: \"Patient\",\n\t\t\t\tmeta: { versionId: 10 },\n\t\t\t\tgender: \"male\",\n\t\t\t\tname: [{ family: \"Doe\", given: [\"John\"] }],\n\t\t\t},\n\t\t\tnull,\n\t\t\t2,\n\t\t),\n\t},\n\trender: () => (\n\t\t<div className=\"h-[500px] w-[500px]\">\n\t\t\t<CodeEditor />\n\t\t</div>\n\t),\n};\n"],"names":["CodeEditor","meta","title","component","parameters","layout","tags","Default","args","defaultValue","JSON","stringify","resourceType","versionId","gender","name","family","given","render","div","className"],"mappings":";AACA,SAASA,UAAU,QAAQ,yBAAgB;AAE3C,MAAMC,OAAgC;IACrCC,OAAO;IACPC,WAAWH;IACXI,YAAY;QACXC,QAAQ;IACT;IACAC,MAAM;QAAC;KAAW;AACnB;AAEA,eAAeL,KAAK;AAGpB,OAAO,MAAMM,UAAiB;IAC7BC,MAAM;QACLC,cAAcC,KAAKC,SAAS,CAC3B;YACCC,cAAc;YACdX,MAAM;gBAAEY,WAAW;YAAG;YACtBC,QAAQ;YACRC,MAAM;gBAAC;oBAAEC,QAAQ;oBAAOC,OAAO;wBAAC;qBAAO;gBAAC;aAAE;QAC3C,GACA,MACA;IAEF;IACAC,QAAQ,kBACP,KAACC;YAAIC,WAAU;sBACd,cAAA,KAACpB;;AAGJ,EAAE"}
|
|
@@ -7,15 +7,22 @@ function CopyIcon({ text }) {
|
|
|
7
7
|
try {
|
|
8
8
|
await navigator.clipboard.writeText(text);
|
|
9
9
|
setIsActive(true);
|
|
10
|
-
setTimeout(()
|
|
10
|
+
setTimeout(()=>{
|
|
11
11
|
setIsActive(false);
|
|
12
12
|
}, 1000);
|
|
13
|
-
}
|
|
14
|
-
catch (error) {
|
|
13
|
+
} catch (error) {
|
|
15
14
|
console.error("Failed to copy to clipboard:", error);
|
|
16
15
|
}
|
|
17
16
|
}
|
|
18
|
-
return
|
|
17
|
+
return /*#__PURE__*/ _jsx("button", {
|
|
18
|
+
type: "button",
|
|
19
|
+
onClick: handleClick,
|
|
20
|
+
style: {
|
|
21
|
+
cursor: "pointer"
|
|
22
|
+
},
|
|
23
|
+
children: isActive ? /*#__PURE__*/ _jsx(Check, {}) : /*#__PURE__*/ _jsx(Copy, {})
|
|
24
|
+
});
|
|
19
25
|
}
|
|
20
26
|
export { CopyIcon };
|
|
27
|
+
|
|
21
28
|
//# sourceMappingURL=copy-icon.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../../../src/components/copy-icon.tsx"],"sourcesContent":["import { Check, Copy } from \"lucide-react\";\nimport * as React from \"react\";\n\ninterface CopyIconProps {\n\ttext: string;\n}\n\nfunction CopyIcon({ text }: CopyIconProps) {\n\tconst [isActive, setIsActive] = React.useState(false);\n\n\tasync function handleClick() {\n\t\ttry {\n\t\t\tawait navigator.clipboard.writeText(text);\n\t\t\tsetIsActive(true);\n\t\t\tsetTimeout(() => {\n\t\t\t\tsetIsActive(false);\n\t\t\t}, 1000);\n\t\t} catch (error) {\n\t\t\tconsole.error(\"Failed to copy to clipboard:\", error);\n\t\t}\n\t}\n\n\treturn (\n\t\t<button type=\"button\" onClick={handleClick} style={{ cursor: \"pointer\" }}>\n\t\t\t{isActive ? <Check /> : <Copy />}\n\t\t</button>\n\t);\n}\n\nexport { CopyIcon };\n"],"names":["Check","Copy","React","CopyIcon","text","isActive","setIsActive","useState","handleClick","navigator","clipboard","writeText","setTimeout","error","console","button","type","onClick","style","cursor"],"mappings":";AAAA,SAASA,KAAK,EAAEC,IAAI,QAAQ,eAAe;AAC3C,YAAYC,WAAW,QAAQ;AAM/B,SAASC,SAAS,EAAEC,IAAI,EAAiB;IACxC,MAAM,CAACC,UAAUC,YAAY,GAAGJ,MAAMK,QAAQ,CAAC;IAE/C,eAAeC;QACd,IAAI;YACH,MAAMC,UAAUC,SAAS,CAACC,SAAS,CAACP;YACpCE,YAAY;YACZM,WAAW;gBACVN,YAAY;YACb,GAAG;QACJ,EAAE,OAAOO,OAAO;YACfC,QAAQD,KAAK,CAAC,gCAAgCA;QAC/C;IACD;IAEA,qBACC,KAACE;QAAOC,MAAK;QAASC,SAAST;QAAaU,OAAO;YAAEC,QAAQ;QAAU;kBACrEd,yBAAW,KAACL,2BAAW,KAACC;;AAG5B;AAEA,SAASE,QAAQ,GAAG"}
|
|
@@ -1,40 +1,82 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { Input } from "
|
|
3
|
-
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue
|
|
4
|
-
import { cn } from "
|
|
5
|
-
import { CopyIcon } from "./copy-icon";
|
|
2
|
+
import { Input } from "../shadcn/components/ui/input.js";
|
|
3
|
+
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "../shadcn/components/ui/select.js";
|
|
4
|
+
import { cn } from "../shadcn/lib/utils.js";
|
|
5
|
+
import { CopyIcon } from "./copy-icon.js";
|
|
6
6
|
const METHOD_COLORS = {
|
|
7
7
|
GET: {
|
|
8
8
|
text: "text-[#6D9F0F] [&_svg]:text-[#6D9F0F]!",
|
|
9
9
|
background: "bg-green-200",
|
|
10
|
-
border: "border-fg-success-secondary! hover:border-fg-success-secondary ring-green-200!"
|
|
10
|
+
border: "border-fg-success-secondary! hover:border-fg-success-secondary ring-green-200!"
|
|
11
11
|
},
|
|
12
12
|
POST: {
|
|
13
13
|
text: "text-yellow-600 [&_svg]:text-yellow-600!",
|
|
14
14
|
background: "bg-yellow-200",
|
|
15
|
-
border: "border-[#F4CB00]! hover:border-[#F4CB00] ring-yellow-200!"
|
|
15
|
+
border: "border-[#F4CB00]! hover:border-[#F4CB00] ring-yellow-200!"
|
|
16
16
|
},
|
|
17
17
|
PUT: {
|
|
18
18
|
text: "text-blue-500 [&_svg]:text-blue-500!",
|
|
19
19
|
background: "bg-blue-200",
|
|
20
|
-
border: "border-blue-400! hover:border-blue-400 ring-blue-200!"
|
|
20
|
+
border: "border-blue-400! hover:border-blue-400 ring-blue-200!"
|
|
21
21
|
},
|
|
22
22
|
PATCH: {
|
|
23
23
|
text: "text-violet-600 [&_svg]:text-violet-600",
|
|
24
24
|
background: "bg-violet-200",
|
|
25
|
-
border: "border-violet-400! hover:border-violet-400 ring-violet-200!"
|
|
25
|
+
border: "border-violet-400! hover:border-violet-400 ring-violet-200!"
|
|
26
26
|
},
|
|
27
27
|
DELETE: {
|
|
28
28
|
text: "text-red-600 [&_svg]:text-red-600!",
|
|
29
29
|
background: "bg-red-200",
|
|
30
|
-
border: "border-red-300! hover:border-red-300 ring-red-200!"
|
|
31
|
-
}
|
|
30
|
+
border: "border-red-300! hover:border-red-300 ring-red-200!"
|
|
31
|
+
}
|
|
32
32
|
};
|
|
33
|
-
function RequestMethodSelector({ selectedMethod, setMethod, methods
|
|
34
|
-
return
|
|
33
|
+
function RequestMethodSelector({ selectedMethod, setMethod, methods }) {
|
|
34
|
+
return /*#__PURE__*/ _jsxs(Select, {
|
|
35
|
+
value: selectedMethod,
|
|
36
|
+
onValueChange: setMethod,
|
|
37
|
+
children: [
|
|
38
|
+
/*#__PURE__*/ _jsx(SelectTrigger, {
|
|
39
|
+
className: `min-w-26 border-r-0 rounded-r-none shadow-none ${METHOD_COLORS[selectedMethod].text} ${METHOD_COLORS[selectedMethod].background} ${METHOD_COLORS[selectedMethod].border}`,
|
|
40
|
+
children: /*#__PURE__*/ _jsx(SelectValue, {})
|
|
41
|
+
}),
|
|
42
|
+
/*#__PURE__*/ _jsx(SelectContent, {
|
|
43
|
+
children: methods.map((method)=>/*#__PURE__*/ _jsx(SelectItem, {
|
|
44
|
+
value: method,
|
|
45
|
+
children: /*#__PURE__*/ _jsxs("span", {
|
|
46
|
+
className: `${METHOD_COLORS[method].text}`,
|
|
47
|
+
children: [
|
|
48
|
+
" ",
|
|
49
|
+
method,
|
|
50
|
+
" "
|
|
51
|
+
]
|
|
52
|
+
})
|
|
53
|
+
}, method))
|
|
54
|
+
})
|
|
55
|
+
]
|
|
56
|
+
});
|
|
35
57
|
}
|
|
36
|
-
function RequestLineEditor({ className, selectedMethod, setMethod, methods, inputValue, onInputChange
|
|
37
|
-
return
|
|
58
|
+
function RequestLineEditor({ className, selectedMethod, setMethod, methods, inputValue, onInputChange }) {
|
|
59
|
+
return /*#__PURE__*/ _jsxs("div", {
|
|
60
|
+
className: cn("flex", className),
|
|
61
|
+
children: [
|
|
62
|
+
/*#__PURE__*/ _jsx(RequestMethodSelector, {
|
|
63
|
+
selectedMethod: selectedMethod,
|
|
64
|
+
setMethod: setMethod,
|
|
65
|
+
methods: methods
|
|
66
|
+
}),
|
|
67
|
+
/*#__PURE__*/ _jsx(Input, {
|
|
68
|
+
className: `rounded-l-none ${METHOD_COLORS[selectedMethod].border}`,
|
|
69
|
+
value: inputValue,
|
|
70
|
+
rightSlot: /*#__PURE__*/ _jsx(CopyIcon, {
|
|
71
|
+
text: `${selectedMethod} ${inputValue}`
|
|
72
|
+
}),
|
|
73
|
+
...onInputChange !== undefined ? {
|
|
74
|
+
onChange: onInputChange
|
|
75
|
+
} : {}
|
|
76
|
+
})
|
|
77
|
+
]
|
|
78
|
+
});
|
|
38
79
|
}
|
|
39
80
|
export { RequestLineEditor, METHOD_COLORS };
|
|
81
|
+
|
|
40
82
|
//# sourceMappingURL=request-line-editor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["../../../src/components/request-line-editor.tsx"],"sourcesContent":["import type * as React from \"react\";\nimport { Input } from \"#shadcn/components/ui/input\";\nimport {\n\tSelect,\n\tSelectContent,\n\tSelectItem,\n\tSelectTrigger,\n\tSelectValue,\n} from \"#shadcn/components/ui/select\";\nimport { cn } from \"#shadcn/lib/utils\";\nimport { CopyIcon } from \"./copy-icon\";\n\ninterface RequestLineEditorProps extends React.ComponentProps<\"div\"> {\n\tselectedMethod: string;\n\tsetMethod: (value: string) => void;\n\tmethods: string[];\n\tinputValue?: string | undefined;\n\tonInputChange?: React.ChangeEventHandler<HTMLInputElement>;\n}\n\nconst METHOD_COLORS = {\n\tGET: {\n\t\ttext: \"text-[#6D9F0F] [&_svg]:text-[#6D9F0F]!\",\n\t\tbackground: \"bg-green-200\",\n\t\tborder:\n\t\t\t\"border-fg-success-secondary! hover:border-fg-success-secondary ring-green-200!\",\n\t},\n\tPOST: {\n\t\ttext: \"text-yellow-600 [&_svg]:text-yellow-600!\",\n\t\tbackground: \"bg-yellow-200\",\n\t\tborder: \"border-[#F4CB00]! hover:border-[#F4CB00] ring-yellow-200!\",\n\t},\n\tPUT: {\n\t\ttext: \"text-blue-500 [&_svg]:text-blue-500!\",\n\t\tbackground: \"bg-blue-200\",\n\t\tborder: \"border-blue-400! hover:border-blue-400 ring-blue-200!\",\n\t},\n\tPATCH: {\n\t\ttext: \"text-violet-600 [&_svg]:text-violet-600\",\n\t\tbackground: \"bg-violet-200\",\n\t\tborder: \"border-violet-400! hover:border-violet-400 ring-violet-200!\",\n\t},\n\tDELETE: {\n\t\ttext: \"text-red-600 [&_svg]:text-red-600!\",\n\t\tbackground: \"bg-red-200\",\n\t\tborder: \"border-red-300! hover:border-red-300 ring-red-200!\",\n\t},\n};\n\nfunction RequestMethodSelector({\n\tselectedMethod,\n\tsetMethod,\n\tmethods,\n}: RequestLineEditorProps) {\n\treturn (\n\t\t<Select value={selectedMethod} onValueChange={setMethod}>\n\t\t\t<SelectTrigger\n\t\t\t\tclassName={`min-w-26 border-r-0 rounded-r-none shadow-none ${METHOD_COLORS[selectedMethod as keyof typeof METHOD_COLORS].text} ${METHOD_COLORS[selectedMethod as keyof typeof METHOD_COLORS].background} ${METHOD_COLORS[selectedMethod as keyof typeof METHOD_COLORS].border}`}\n\t\t\t>\n\t\t\t\t<SelectValue />\n\t\t\t</SelectTrigger>\n\t\t\t<SelectContent>\n\t\t\t\t{methods.map((method) => (\n\t\t\t\t\t<SelectItem key={method} value={method}>\n\t\t\t\t\t\t<span\n\t\t\t\t\t\t\tclassName={`${METHOD_COLORS[method as keyof typeof METHOD_COLORS].text}`}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{\" \"}\n\t\t\t\t\t\t\t{method}{\" \"}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</SelectItem>\n\t\t\t\t))}\n\t\t\t</SelectContent>\n\t\t</Select>\n\t);\n}\n\nfunction RequestLineEditor({\n\tclassName,\n\tselectedMethod,\n\tsetMethod,\n\tmethods,\n\tinputValue,\n\tonInputChange,\n}: RequestLineEditorProps) {\n\treturn (\n\t\t<div className={cn(\"flex\", className)}>\n\t\t\t<RequestMethodSelector\n\t\t\t\tselectedMethod={selectedMethod}\n\t\t\t\tsetMethod={setMethod}\n\t\t\t\tmethods={methods}\n\t\t\t/>\n\t\t\t<Input\n\t\t\t\tclassName={`rounded-l-none ${METHOD_COLORS[selectedMethod as keyof typeof METHOD_COLORS].border}`}\n\t\t\t\tvalue={inputValue}\n\t\t\t\trightSlot={<CopyIcon text={`${selectedMethod} ${inputValue}`} />}\n\t\t\t\t{...(onInputChange !== undefined ? { onChange: onInputChange } : {})}\n\t\t\t/>\n\t\t</div>\n\t);\n}\n\nexport { RequestLineEditor, type RequestLineEditorProps, METHOD_COLORS };\n"],"names":["Input","Select","SelectContent","SelectItem","SelectTrigger","SelectValue","cn","CopyIcon","METHOD_COLORS","GET","text","background","border","POST","PUT","PATCH","DELETE","RequestMethodSelector","selectedMethod","setMethod","methods","value","onValueChange","className","map","method","span","RequestLineEditor","inputValue","onInputChange","div","rightSlot","undefined","onChange"],"mappings":";AACA,SAASA,KAAK,QAAQ,mCAA8B;AACpD,SACCC,MAAM,EACNC,aAAa,EACbC,UAAU,EACVC,aAAa,EACbC,WAAW,QACL,oCAA+B;AACtC,SAASC,EAAE,QAAQ,yBAAoB;AACvC,SAASC,QAAQ,QAAQ,iBAAc;AAUvC,MAAMC,gBAAgB;IACrBC,KAAK;QACJC,MAAM;QACNC,YAAY;QACZC,QACC;IACF;IACAC,MAAM;QACLH,MAAM;QACNC,YAAY;QACZC,QAAQ;IACT;IACAE,KAAK;QACJJ,MAAM;QACNC,YAAY;QACZC,QAAQ;IACT;IACAG,OAAO;QACNL,MAAM;QACNC,YAAY;QACZC,QAAQ;IACT;IACAI,QAAQ;QACPN,MAAM;QACNC,YAAY;QACZC,QAAQ;IACT;AACD;AAEA,SAASK,sBAAsB,EAC9BC,cAAc,EACdC,SAAS,EACTC,OAAO,EACiB;IACxB,qBACC,MAACnB;QAAOoB,OAAOH;QAAgBI,eAAeH;;0BAC7C,KAACf;gBACAmB,WAAW,CAAC,+CAA+C,EAAEf,aAAa,CAACU,eAA6C,CAACR,IAAI,CAAC,CAAC,EAAEF,aAAa,CAACU,eAA6C,CAACP,UAAU,CAAC,CAAC,EAAEH,aAAa,CAACU,eAA6C,CAACN,MAAM,EAAE;0BAE/Q,cAAA,KAACP;;0BAEF,KAACH;0BACCkB,QAAQI,GAAG,CAAC,CAACC,uBACb,KAACtB;wBAAwBkB,OAAOI;kCAC/B,cAAA,MAACC;4BACAH,WAAW,GAAGf,aAAa,CAACiB,OAAqC,CAACf,IAAI,EAAE;;gCAEvE;gCACAe;gCAAQ;;;uBALMA;;;;AAYtB;AAEA,SAASE,kBAAkB,EAC1BJ,SAAS,EACTL,cAAc,EACdC,SAAS,EACTC,OAAO,EACPQ,UAAU,EACVC,aAAa,EACW;IACxB,qBACC,MAACC;QAAIP,WAAWjB,GAAG,QAAQiB;;0BAC1B,KAACN;gBACAC,gBAAgBA;gBAChBC,WAAWA;gBACXC,SAASA;;0BAEV,KAACpB;gBACAuB,WAAW,CAAC,eAAe,EAAEf,aAAa,CAACU,eAA6C,CAACN,MAAM,EAAE;gBACjGS,OAAOO;gBACPG,yBAAW,KAACxB;oBAASG,MAAM,GAAGQ,eAAe,CAAC,EAAEU,YAAY;;gBAC3D,GAAIC,kBAAkBG,YAAY;oBAAEC,UAAUJ;gBAAc,IAAI,CAAC,CAAC;;;;AAIvE;AAEA,SAASF,iBAAiB,EAA+BnB,aAAa,GAAG"}
|