@definable/ui 0.1.13 → 0.1.15
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/README.md +0 -7
- package/dist/components/alert-dialog.js +55 -2
- package/dist/components/alert.js +63 -2
- package/dist/components/avatar.js +41 -2
- package/dist/components/badge.js +26 -2
- package/dist/components/button.d.ts +2 -2
- package/dist/components/button.js +49 -2
- package/dist/components/calendar.js +86 -2
- package/dist/components/card.js +61 -2
- package/dist/components/carousel.js +100 -2
- package/dist/components/checkbox.js +31 -2
- package/dist/components/collapse.js +49 -2
- package/dist/components/command-menu.js +89 -2
- package/dist/components/command.js +115 -2
- package/dist/components/confirmation-modal.js +44 -2
- package/dist/components/context-menu.js +185 -2
- package/dist/components/dialog.js +121 -2
- package/dist/components/dropdown-menu.js +48 -2
- package/dist/components/dropzone.js +44 -2
- package/dist/components/image-cropper-modal.js +250 -2
- package/dist/components/image-cropper.js +130 -2
- package/dist/components/input.js +21 -2
- package/dist/components/label.js +19 -2
- package/dist/components/loader.js +69 -2
- package/dist/components/loading-placeholder.js +24 -2
- package/dist/components/mention.js +153 -2
- package/dist/components/modal.js +135 -2
- package/dist/components/notification.js +25 -2
- package/dist/components/popover.js +23 -2
- package/dist/components/progress.js +34 -2
- package/dist/components/radio-group.js +47 -2
- package/dist/components/scroll-area.js +46 -2
- package/dist/components/select.js +130 -2
- package/dist/components/selection-bar.js +53 -2
- package/dist/components/separator.js +24 -2
- package/dist/components/sheet.js +128 -2
- package/dist/components/skeleton.js +17 -2
- package/dist/components/slider.js +32 -2
- package/dist/components/stepper/index.d.ts +4 -0
- package/dist/components/stepper/step-layout.d.ts +8 -0
- package/dist/components/stepper/stepper-modal.d.ts +26 -0
- package/dist/components/stepper/stepper.d.ts +7 -0
- package/dist/components/stepper/types.d.ts +6 -0
- package/dist/components/stepper.js +6 -2
- package/dist/components/switch.js +35 -2
- package/dist/components/table-empty.js +22 -2
- package/dist/components/table-mobile.js +91 -2
- package/dist/components/table.js +156 -2
- package/dist/components/tabs.js +46 -2
- package/dist/components/terminal.js +49 -2
- package/dist/components/textarea.js +20 -2
- package/dist/components/tooltip.js +75 -2
- package/dist/components/use-toast.js +64 -2
- package/dist/icons/icons.d.ts +8 -0
- package/dist/icons/index.d.ts +1 -0
- package/dist/icons/providers/anthropic.d.ts +2 -0
- package/dist/icons/providers/claude.d.ts +2 -0
- package/dist/icons/providers/deepseek.d.ts +2 -0
- package/dist/icons/providers/gemini.d.ts +2 -0
- package/dist/icons/providers/grok.d.ts +2 -0
- package/dist/icons/providers/index.d.ts +6 -0
- package/dist/icons/providers/openai.d.ts +2 -0
- package/dist/icons/providers/types.d.ts +4 -0
- package/dist/index.d.ts +48 -962
- package/dist/index.js +444 -2
- package/dist/lib/icons.d.ts +14 -0
- package/dist/lib/index.d.ts +2 -0
- package/dist/lib/utils.js +8 -2
- package/dist/{stepper-modal-SYU9mbXs.js → stepper-modal-JXpOXOV2.js} +90 -91
- package/dist/styles.css +1 -1
- package/package.json +180 -134
- package/dist/MonacoEditor-COZcVMEj.cjs +0 -8
- package/dist/MonacoEditor-COZcVMEj.cjs.map +0 -1
- package/dist/MonacoEditor-D3QSSKa4.js +0 -295
- package/dist/MonacoEditor-D3QSSKa4.js.map +0 -1
- package/dist/alert-dialog.d.ts +0 -18
- package/dist/alert.d.ts +0 -25
- package/dist/avatar.d.ts +0 -9
- package/dist/badge.d.ts +0 -15
- package/dist/button.d.ts +0 -16
- package/dist/calendar.d.ts +0 -21
- package/dist/card.d.ts +0 -15
- package/dist/carousel.d.ts +0 -18
- package/dist/charts.d.ts +0 -26
- package/dist/checkbox.d.ts +0 -6
- package/dist/collapse.d.ts +0 -15
- package/dist/command-menu.d.ts +0 -12
- package/dist/command.d.ts +0 -89
- package/dist/components/alert-dialog.esm.js +0 -59
- package/dist/components/alert-dialog.esm.js.map +0 -1
- package/dist/components/alert-dialog.js.map +0 -1
- package/dist/components/alert.esm.js +0 -64
- package/dist/components/alert.esm.js.map +0 -1
- package/dist/components/alert.js.map +0 -1
- package/dist/components/avatar.esm.js +0 -42
- package/dist/components/avatar.esm.js.map +0 -1
- package/dist/components/avatar.js.map +0 -1
- package/dist/components/badge.esm.js +0 -27
- package/dist/components/badge.esm.js.map +0 -1
- package/dist/components/badge.js.map +0 -1
- package/dist/components/button.esm.js +0 -48
- package/dist/components/button.esm.js.map +0 -1
- package/dist/components/button.js.map +0 -1
- package/dist/components/calendar.esm.js +0 -5562
- package/dist/components/calendar.esm.js.map +0 -1
- package/dist/components/calendar.js.map +0 -1
- package/dist/components/card.esm.js +0 -62
- package/dist/components/card.esm.js.map +0 -1
- package/dist/components/card.js.map +0 -1
- package/dist/components/carousel.esm.js +0 -101
- package/dist/components/carousel.esm.js.map +0 -1
- package/dist/components/carousel.js.map +0 -1
- package/dist/components/charts.d.ts +0 -17
- package/dist/components/charts.esm.js +0 -48
- package/dist/components/charts.esm.js.map +0 -1
- package/dist/components/charts.js +0 -2
- package/dist/components/charts.js.map +0 -1
- package/dist/components/checkbox.esm.js +0 -32
- package/dist/components/checkbox.esm.js.map +0 -1
- package/dist/components/checkbox.js.map +0 -1
- package/dist/components/collapse.esm.js +0 -50
- package/dist/components/collapse.esm.js.map +0 -1
- package/dist/components/collapse.js.map +0 -1
- package/dist/components/command-menu.esm.js +0 -90
- package/dist/components/command-menu.esm.js.map +0 -1
- package/dist/components/command-menu.js.map +0 -1
- package/dist/components/command.esm.js +0 -425
- package/dist/components/command.esm.js.map +0 -1
- package/dist/components/command.js.map +0 -1
- package/dist/components/confirmation-modal.esm.js +0 -46
- package/dist/components/confirmation-modal.esm.js.map +0 -1
- package/dist/components/confirmation-modal.js.map +0 -1
- package/dist/components/context-menu.esm.js +0 -186
- package/dist/components/context-menu.esm.js.map +0 -1
- package/dist/components/context-menu.js.map +0 -1
- package/dist/components/dialog.esm.js +0 -122
- package/dist/components/dialog.esm.js.map +0 -1
- package/dist/components/dialog.js.map +0 -1
- package/dist/components/dropdown-menu.esm.js +0 -49
- package/dist/components/dropdown-menu.esm.js.map +0 -1
- package/dist/components/dropdown-menu.js.map +0 -1
- package/dist/components/dropzone.esm.js +0 -45
- package/dist/components/dropzone.esm.js.map +0 -1
- package/dist/components/dropzone.js.map +0 -1
- package/dist/components/image-cropper-modal.esm.js +0 -251
- package/dist/components/image-cropper-modal.esm.js.map +0 -1
- package/dist/components/image-cropper-modal.js.map +0 -1
- package/dist/components/image-cropper.esm.js +0 -131
- package/dist/components/image-cropper.esm.js.map +0 -1
- package/dist/components/image-cropper.js.map +0 -1
- package/dist/components/input.esm.js +0 -22
- package/dist/components/input.esm.js.map +0 -1
- package/dist/components/input.js.map +0 -1
- package/dist/components/label.esm.js +0 -20
- package/dist/components/label.esm.js.map +0 -1
- package/dist/components/label.js.map +0 -1
- package/dist/components/loader.esm.js +0 -70
- package/dist/components/loader.esm.js.map +0 -1
- package/dist/components/loader.js.map +0 -1
- package/dist/components/loading-placeholder.esm.js +0 -25
- package/dist/components/loading-placeholder.esm.js.map +0 -1
- package/dist/components/loading-placeholder.js.map +0 -1
- package/dist/components/markdown.d.ts +0 -2
- package/dist/components/markdown.esm.js +0 -12066
- package/dist/components/markdown.esm.js.map +0 -1
- package/dist/components/markdown.js +0 -18
- package/dist/components/markdown.js.map +0 -1
- package/dist/components/mention.esm.js +0 -154
- package/dist/components/mention.esm.js.map +0 -1
- package/dist/components/mention.js.map +0 -1
- package/dist/components/modal.esm.js +0 -136
- package/dist/components/modal.esm.js.map +0 -1
- package/dist/components/modal.js.map +0 -1
- package/dist/components/monaco-editor.d.ts +0 -2
- package/dist/components/monaco-editor.esm.js +0 -9
- package/dist/components/monaco-editor.esm.js.map +0 -1
- package/dist/components/monaco-editor.js +0 -2
- package/dist/components/monaco-editor.js.map +0 -1
- package/dist/components/notification.esm.js +0 -26
- package/dist/components/notification.esm.js.map +0 -1
- package/dist/components/notification.js.map +0 -1
- package/dist/components/popover.esm.js +0 -24
- package/dist/components/popover.esm.js.map +0 -1
- package/dist/components/popover.js.map +0 -1
- package/dist/components/progress.esm.js +0 -35
- package/dist/components/progress.esm.js.map +0 -1
- package/dist/components/progress.js.map +0 -1
- package/dist/components/radio-group.esm.js +0 -48
- package/dist/components/radio-group.esm.js.map +0 -1
- package/dist/components/radio-group.js.map +0 -1
- package/dist/components/scroll-area.esm.js +0 -47
- package/dist/components/scroll-area.esm.js.map +0 -1
- package/dist/components/scroll-area.js.map +0 -1
- package/dist/components/select.esm.js +0 -131
- package/dist/components/select.esm.js.map +0 -1
- package/dist/components/select.js.map +0 -1
- package/dist/components/selection-bar.esm.js +0 -54
- package/dist/components/selection-bar.esm.js.map +0 -1
- package/dist/components/selection-bar.js.map +0 -1
- package/dist/components/separator.esm.js +0 -25
- package/dist/components/separator.esm.js.map +0 -1
- package/dist/components/separator.js.map +0 -1
- package/dist/components/sheet.esm.js +0 -129
- package/dist/components/sheet.esm.js.map +0 -1
- package/dist/components/sheet.js.map +0 -1
- package/dist/components/skeleton.esm.js +0 -18
- package/dist/components/skeleton.esm.js.map +0 -1
- package/dist/components/skeleton.js.map +0 -1
- package/dist/components/slider.esm.js +0 -33
- package/dist/components/slider.esm.js.map +0 -1
- package/dist/components/slider.js.map +0 -1
- package/dist/components/stepper.d.ts +0 -2
- package/dist/components/stepper.esm.js +0 -7
- package/dist/components/stepper.esm.js.map +0 -1
- package/dist/components/stepper.js.map +0 -1
- package/dist/components/switch.esm.js +0 -36
- package/dist/components/switch.esm.js.map +0 -1
- package/dist/components/switch.js.map +0 -1
- package/dist/components/table-empty.esm.js +0 -23
- package/dist/components/table-empty.esm.js.map +0 -1
- package/dist/components/table-empty.js.map +0 -1
- package/dist/components/table-mobile.esm.js +0 -92
- package/dist/components/table-mobile.esm.js.map +0 -1
- package/dist/components/table-mobile.js.map +0 -1
- package/dist/components/table.esm.js +0 -157
- package/dist/components/table.esm.js.map +0 -1
- package/dist/components/table.js.map +0 -1
- package/dist/components/tabs.esm.js +0 -47
- package/dist/components/tabs.esm.js.map +0 -1
- package/dist/components/tabs.js.map +0 -1
- package/dist/components/terminal.esm.js +0 -50
- package/dist/components/terminal.esm.js.map +0 -1
- package/dist/components/terminal.js.map +0 -1
- package/dist/components/textarea.esm.js +0 -21
- package/dist/components/textarea.esm.js.map +0 -1
- package/dist/components/textarea.js.map +0 -1
- package/dist/components/tooltip.esm.js +0 -76
- package/dist/components/tooltip.esm.js.map +0 -1
- package/dist/components/tooltip.js.map +0 -1
- package/dist/components/use-toast.esm.js +0 -65
- package/dist/components/use-toast.esm.js.map +0 -1
- package/dist/components/use-toast.js.map +0 -1
- package/dist/confirmation-modal.d.ts +0 -16
- package/dist/context-menu.d.ts +0 -41
- package/dist/dialog.d.ts +0 -33
- package/dist/dropdown-menu.d.ts +0 -16
- package/dist/dropzone.d.ts +0 -16
- package/dist/image-cropper-modal.d.ts +0 -14
- package/dist/image-cropper.d.ts +0 -15
- package/dist/index-DACAHwoB.js +0 -35
- package/dist/index-DACAHwoB.js.map +0 -1
- package/dist/index-Deooizx8.cjs +0 -2
- package/dist/index-Deooizx8.cjs.map +0 -1
- package/dist/index.esm.js +0 -458
- package/dist/index.esm.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/input.d.ts +0 -8
- package/dist/jsx-runtime-BYECrxsp.cjs +0 -31
- package/dist/jsx-runtime-BYECrxsp.cjs.map +0 -1
- package/dist/jsx-runtime-DGlMoOmv.js +0 -631
- package/dist/jsx-runtime-DGlMoOmv.js.map +0 -1
- package/dist/label.d.ts +0 -6
- package/dist/lib/utils.esm.js +0 -5
- package/dist/lib/utils.esm.js.map +0 -1
- package/dist/lib/utils.js.map +0 -1
- package/dist/loader.d.ts +0 -14
- package/dist/loading-placeholder.d.ts +0 -12
- package/dist/markdown.d.ts +0 -122
- package/dist/mention.d.ts +0 -29
- package/dist/modal.d.ts +0 -28
- package/dist/monaco-editor.d.ts +0 -76
- package/dist/notification.d.ts +0 -9
- package/dist/popover.d.ts +0 -10
- package/dist/progress.d.ts +0 -6
- package/dist/radio-group.d.ts +0 -8
- package/dist/scroll-area.d.ts +0 -8
- package/dist/select.d.ts +0 -31
- package/dist/selection-bar.d.ts +0 -15
- package/dist/separator.d.ts +0 -6
- package/dist/sheet.d.ts +0 -17
- package/dist/skeleton.d.ts +0 -5
- package/dist/slider.d.ts +0 -6
- package/dist/stepper-modal-CPlBpxWy.cjs +0 -2
- package/dist/stepper-modal-CPlBpxWy.cjs.map +0 -1
- package/dist/stepper-modal-SYU9mbXs.js.map +0 -1
- package/dist/stepper.d.ts +0 -75
- package/dist/switch.d.ts +0 -6
- package/dist/table-empty.d.ts +0 -13
- package/dist/table-mobile.d.ts +0 -37
- package/dist/table.d.ts +0 -37
- package/dist/tabs.d.ts +0 -12
- package/dist/terminal.d.ts +0 -47
- package/dist/textarea.d.ts +0 -8
- package/dist/tooltip.d.ts +0 -12
- package/dist/use-toast.d.ts +0 -28
- package/dist/utils-DSKoFOjv.cjs +0 -2
- package/dist/utils-DSKoFOjv.cjs.map +0 -1
- package/dist/utils-qaFjX9_3.js +0 -2279
- package/dist/utils-qaFjX9_3.js.map +0 -1
- package/dist/utils.d.ts +0 -5
package/package.json
CHANGED
|
@@ -1,279 +1,219 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@definable/ui",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.1.
|
|
4
|
+
"version": "0.1.15",
|
|
5
5
|
"private": false,
|
|
6
6
|
"description": "Definable UI Component Library",
|
|
7
7
|
"main": "dist/index.js",
|
|
8
|
-
"module": "dist/index.
|
|
8
|
+
"module": "dist/index.js",
|
|
9
9
|
"types": "dist/index.d.ts",
|
|
10
10
|
"files": [
|
|
11
11
|
"dist"
|
|
12
12
|
],
|
|
13
|
+
"sideEffects": [
|
|
14
|
+
"*.css",
|
|
15
|
+
"./dist/styles.css"
|
|
16
|
+
],
|
|
13
17
|
"publishConfig": {
|
|
14
18
|
"access": "public",
|
|
15
19
|
"registry": "https://registry.npmjs.org/"
|
|
16
20
|
},
|
|
17
21
|
"exports": {
|
|
18
22
|
".": {
|
|
19
|
-
"import": "./dist/index.
|
|
20
|
-
"require": "./dist/index.js",
|
|
23
|
+
"import": "./dist/index.js",
|
|
21
24
|
"types": "./dist/index.d.ts"
|
|
22
25
|
},
|
|
23
26
|
"./styles.css": "./dist/styles.css",
|
|
24
27
|
"./alert": {
|
|
25
|
-
"import": "./dist/components/alert.
|
|
26
|
-
"require": "./dist/components/alert.js",
|
|
28
|
+
"import": "./dist/components/alert.js",
|
|
27
29
|
"types": "./dist/components/alert.d.ts"
|
|
28
30
|
},
|
|
29
31
|
"./alert-dialog": {
|
|
30
|
-
"import": "./dist/components/alert-dialog.
|
|
31
|
-
"require": "./dist/components/alert-dialog.js",
|
|
32
|
+
"import": "./dist/components/alert-dialog.js",
|
|
32
33
|
"types": "./dist/components/alert-dialog.d.ts"
|
|
33
34
|
},
|
|
34
35
|
"./avatar": {
|
|
35
|
-
"import": "./dist/components/avatar.
|
|
36
|
-
"require": "./dist/components/avatar.js",
|
|
36
|
+
"import": "./dist/components/avatar.js",
|
|
37
37
|
"types": "./dist/components/avatar.d.ts"
|
|
38
38
|
},
|
|
39
39
|
"./badge": {
|
|
40
|
-
"import": "./dist/components/badge.
|
|
41
|
-
"require": "./dist/components/badge.js",
|
|
40
|
+
"import": "./dist/components/badge.js",
|
|
42
41
|
"types": "./dist/components/badge.d.ts"
|
|
43
42
|
},
|
|
44
43
|
"./button": {
|
|
45
|
-
"import": "./dist/components/button.
|
|
46
|
-
"require": "./dist/components/button.js",
|
|
44
|
+
"import": "./dist/components/button.js",
|
|
47
45
|
"types": "./dist/components/button.d.ts"
|
|
48
46
|
},
|
|
49
47
|
"./calendar": {
|
|
50
|
-
"import": "./dist/components/calendar.
|
|
51
|
-
"require": "./dist/components/calendar.js",
|
|
48
|
+
"import": "./dist/components/calendar.js",
|
|
52
49
|
"types": "./dist/components/calendar.d.ts"
|
|
53
50
|
},
|
|
54
51
|
"./card": {
|
|
55
|
-
"import": "./dist/components/card.
|
|
56
|
-
"require": "./dist/components/card.js",
|
|
52
|
+
"import": "./dist/components/card.js",
|
|
57
53
|
"types": "./dist/components/card.d.ts"
|
|
58
54
|
},
|
|
59
55
|
"./carousel": {
|
|
60
|
-
"import": "./dist/components/carousel.
|
|
61
|
-
"require": "./dist/components/carousel.js",
|
|
56
|
+
"import": "./dist/components/carousel.js",
|
|
62
57
|
"types": "./dist/components/carousel.d.ts"
|
|
63
58
|
},
|
|
64
|
-
"./charts": {
|
|
65
|
-
"import": "./dist/components/charts.esm.js",
|
|
66
|
-
"require": "./dist/components/charts.js",
|
|
67
|
-
"types": "./dist/components/charts.d.ts"
|
|
68
|
-
},
|
|
69
59
|
"./checkbox": {
|
|
70
|
-
"import": "./dist/components/checkbox.
|
|
71
|
-
"require": "./dist/components/checkbox.js",
|
|
60
|
+
"import": "./dist/components/checkbox.js",
|
|
72
61
|
"types": "./dist/components/checkbox.d.ts"
|
|
73
62
|
},
|
|
74
63
|
"./collapse": {
|
|
75
|
-
"import": "./dist/components/collapse.
|
|
76
|
-
"require": "./dist/components/collapse.js",
|
|
64
|
+
"import": "./dist/components/collapse.js",
|
|
77
65
|
"types": "./dist/components/collapse.d.ts"
|
|
78
66
|
},
|
|
79
67
|
"./command": {
|
|
80
|
-
"import": "./dist/components/command.
|
|
81
|
-
"require": "./dist/components/command.js",
|
|
68
|
+
"import": "./dist/components/command.js",
|
|
82
69
|
"types": "./dist/components/command.d.ts"
|
|
83
70
|
},
|
|
84
71
|
"./command-menu": {
|
|
85
|
-
"import": "./dist/components/command-menu.
|
|
86
|
-
"require": "./dist/components/command-menu.js",
|
|
72
|
+
"import": "./dist/components/command-menu.js",
|
|
87
73
|
"types": "./dist/components/command-menu.d.ts"
|
|
88
74
|
},
|
|
89
75
|
"./confirmation-modal": {
|
|
90
|
-
"import": "./dist/components/confirmation-modal.
|
|
91
|
-
"require": "./dist/components/confirmation-modal.js",
|
|
76
|
+
"import": "./dist/components/confirmation-modal.js",
|
|
92
77
|
"types": "./dist/components/confirmation-modal.d.ts"
|
|
93
78
|
},
|
|
94
79
|
"./context-menu": {
|
|
95
|
-
"import": "./dist/components/context-menu.
|
|
96
|
-
"require": "./dist/components/context-menu.js",
|
|
80
|
+
"import": "./dist/components/context-menu.js",
|
|
97
81
|
"types": "./dist/components/context-menu.d.ts"
|
|
98
82
|
},
|
|
99
83
|
"./dialog": {
|
|
100
|
-
"import": "./dist/components/dialog.
|
|
101
|
-
"require": "./dist/components/dialog.js",
|
|
84
|
+
"import": "./dist/components/dialog.js",
|
|
102
85
|
"types": "./dist/components/dialog.d.ts"
|
|
103
86
|
},
|
|
104
87
|
"./dropdown-menu": {
|
|
105
|
-
"import": "./dist/components/dropdown-menu.
|
|
106
|
-
"require": "./dist/components/dropdown-menu.js",
|
|
88
|
+
"import": "./dist/components/dropdown-menu.js",
|
|
107
89
|
"types": "./dist/components/dropdown-menu.d.ts"
|
|
108
90
|
},
|
|
109
91
|
"./dropzone": {
|
|
110
|
-
"import": "./dist/components/dropzone.
|
|
111
|
-
"require": "./dist/components/dropzone.js",
|
|
92
|
+
"import": "./dist/components/dropzone.js",
|
|
112
93
|
"types": "./dist/components/dropzone.d.ts"
|
|
113
94
|
},
|
|
114
95
|
"./image-cropper": {
|
|
115
|
-
"import": "./dist/components/image-cropper.
|
|
116
|
-
"require": "./dist/components/image-cropper.js",
|
|
96
|
+
"import": "./dist/components/image-cropper.js",
|
|
117
97
|
"types": "./dist/components/image-cropper.d.ts"
|
|
118
98
|
},
|
|
119
99
|
"./image-cropper-modal": {
|
|
120
|
-
"import": "./dist/components/image-cropper-modal.
|
|
121
|
-
"require": "./dist/components/image-cropper-modal.js",
|
|
100
|
+
"import": "./dist/components/image-cropper-modal.js",
|
|
122
101
|
"types": "./dist/components/image-cropper-modal.d.ts"
|
|
123
102
|
},
|
|
124
103
|
"./input": {
|
|
125
|
-
"import": "./dist/components/input.
|
|
126
|
-
"require": "./dist/components/input.js",
|
|
104
|
+
"import": "./dist/components/input.js",
|
|
127
105
|
"types": "./dist/components/input.d.ts"
|
|
128
106
|
},
|
|
129
107
|
"./label": {
|
|
130
|
-
"import": "./dist/components/label.
|
|
131
|
-
"require": "./dist/components/label.js",
|
|
108
|
+
"import": "./dist/components/label.js",
|
|
132
109
|
"types": "./dist/components/label.d.ts"
|
|
133
110
|
},
|
|
134
111
|
"./loader": {
|
|
135
|
-
"import": "./dist/components/loader.
|
|
136
|
-
"require": "./dist/components/loader.js",
|
|
112
|
+
"import": "./dist/components/loader.js",
|
|
137
113
|
"types": "./dist/components/loader.d.ts"
|
|
138
114
|
},
|
|
139
115
|
"./loading-placeholder": {
|
|
140
|
-
"import": "./dist/components/loading-placeholder.
|
|
141
|
-
"require": "./dist/components/loading-placeholder.js",
|
|
116
|
+
"import": "./dist/components/loading-placeholder.js",
|
|
142
117
|
"types": "./dist/components/loading-placeholder.d.ts"
|
|
143
118
|
},
|
|
144
|
-
"./markdown": {
|
|
145
|
-
"import": "./dist/components/markdown.esm.js",
|
|
146
|
-
"require": "./dist/components/markdown.js",
|
|
147
|
-
"types": "./dist/components/markdown.d.ts"
|
|
148
|
-
},
|
|
149
119
|
"./mention": {
|
|
150
|
-
"import": "./dist/components/mention.
|
|
151
|
-
"require": "./dist/components/mention.js",
|
|
120
|
+
"import": "./dist/components/mention.js",
|
|
152
121
|
"types": "./dist/components/mention.d.ts"
|
|
153
122
|
},
|
|
154
123
|
"./modal": {
|
|
155
|
-
"import": "./dist/components/modal.
|
|
156
|
-
"require": "./dist/components/modal.js",
|
|
124
|
+
"import": "./dist/components/modal.js",
|
|
157
125
|
"types": "./dist/components/modal.d.ts"
|
|
158
126
|
},
|
|
159
|
-
"./monaco-editor": {
|
|
160
|
-
"import": "./dist/components/monaco-editor.esm.js",
|
|
161
|
-
"require": "./dist/components/monaco-editor.js",
|
|
162
|
-
"types": "./dist/components/monaco-editor.d.ts"
|
|
163
|
-
},
|
|
164
127
|
"./notification": {
|
|
165
|
-
"import": "./dist/components/notification.
|
|
166
|
-
"require": "./dist/components/notification.js",
|
|
128
|
+
"import": "./dist/components/notification.js",
|
|
167
129
|
"types": "./dist/components/notification.d.ts"
|
|
168
130
|
},
|
|
169
131
|
"./popover": {
|
|
170
|
-
"import": "./dist/components/popover.
|
|
171
|
-
"require": "./dist/components/popover.js",
|
|
132
|
+
"import": "./dist/components/popover.js",
|
|
172
133
|
"types": "./dist/components/popover.d.ts"
|
|
173
134
|
},
|
|
174
135
|
"./progress": {
|
|
175
|
-
"import": "./dist/components/progress.
|
|
176
|
-
"require": "./dist/components/progress.js",
|
|
136
|
+
"import": "./dist/components/progress.js",
|
|
177
137
|
"types": "./dist/components/progress.d.ts"
|
|
178
138
|
},
|
|
179
139
|
"./radio-group": {
|
|
180
|
-
"import": "./dist/components/radio-group.
|
|
181
|
-
"require": "./dist/components/radio-group.js",
|
|
140
|
+
"import": "./dist/components/radio-group.js",
|
|
182
141
|
"types": "./dist/components/radio-group.d.ts"
|
|
183
142
|
},
|
|
184
143
|
"./scroll-area": {
|
|
185
|
-
"import": "./dist/components/scroll-area.
|
|
186
|
-
"require": "./dist/components/scroll-area.js",
|
|
144
|
+
"import": "./dist/components/scroll-area.js",
|
|
187
145
|
"types": "./dist/components/scroll-area.d.ts"
|
|
188
146
|
},
|
|
189
147
|
"./select": {
|
|
190
|
-
"import": "./dist/components/select.
|
|
191
|
-
"require": "./dist/components/select.js",
|
|
148
|
+
"import": "./dist/components/select.js",
|
|
192
149
|
"types": "./dist/components/select.d.ts"
|
|
193
150
|
},
|
|
194
151
|
"./selection-bar": {
|
|
195
|
-
"import": "./dist/components/selection-bar.
|
|
196
|
-
"require": "./dist/components/selection-bar.js",
|
|
152
|
+
"import": "./dist/components/selection-bar.js",
|
|
197
153
|
"types": "./dist/components/selection-bar.d.ts"
|
|
198
154
|
},
|
|
199
155
|
"./separator": {
|
|
200
|
-
"import": "./dist/components/separator.
|
|
201
|
-
"require": "./dist/components/separator.js",
|
|
156
|
+
"import": "./dist/components/separator.js",
|
|
202
157
|
"types": "./dist/components/separator.d.ts"
|
|
203
158
|
},
|
|
204
159
|
"./sheet": {
|
|
205
|
-
"import": "./dist/components/sheet.
|
|
206
|
-
"require": "./dist/components/sheet.js",
|
|
160
|
+
"import": "./dist/components/sheet.js",
|
|
207
161
|
"types": "./dist/components/sheet.d.ts"
|
|
208
162
|
},
|
|
209
163
|
"./skeleton": {
|
|
210
|
-
"import": "./dist/components/skeleton.
|
|
211
|
-
"require": "./dist/components/skeleton.js",
|
|
164
|
+
"import": "./dist/components/skeleton.js",
|
|
212
165
|
"types": "./dist/components/skeleton.d.ts"
|
|
213
166
|
},
|
|
214
167
|
"./slider": {
|
|
215
|
-
"import": "./dist/components/slider.
|
|
216
|
-
"require": "./dist/components/slider.js",
|
|
168
|
+
"import": "./dist/components/slider.js",
|
|
217
169
|
"types": "./dist/components/slider.d.ts"
|
|
218
170
|
},
|
|
219
171
|
"./stepper": {
|
|
220
|
-
"import": "./dist/components/stepper.
|
|
221
|
-
"require": "./dist/components/stepper.js",
|
|
172
|
+
"import": "./dist/components/stepper.js",
|
|
222
173
|
"types": "./dist/components/stepper.d.ts"
|
|
223
174
|
},
|
|
224
175
|
"./switch": {
|
|
225
|
-
"import": "./dist/components/switch.
|
|
226
|
-
"require": "./dist/components/switch.js",
|
|
176
|
+
"import": "./dist/components/switch.js",
|
|
227
177
|
"types": "./dist/components/switch.d.ts"
|
|
228
178
|
},
|
|
229
179
|
"./table": {
|
|
230
|
-
"import": "./dist/components/table.
|
|
231
|
-
"require": "./dist/components/table.js",
|
|
180
|
+
"import": "./dist/components/table.js",
|
|
232
181
|
"types": "./dist/components/table.d.ts"
|
|
233
182
|
},
|
|
234
183
|
"./table-empty": {
|
|
235
|
-
"import": "./dist/components/table-empty.
|
|
236
|
-
"require": "./dist/components/table-empty.js",
|
|
184
|
+
"import": "./dist/components/table-empty.js",
|
|
237
185
|
"types": "./dist/components/table-empty.d.ts"
|
|
238
186
|
},
|
|
239
187
|
"./table-mobile": {
|
|
240
|
-
"import": "./dist/components/table-mobile.
|
|
241
|
-
"require": "./dist/components/table-mobile.js",
|
|
188
|
+
"import": "./dist/components/table-mobile.js",
|
|
242
189
|
"types": "./dist/components/table-mobile.d.ts"
|
|
243
190
|
},
|
|
244
191
|
"./tabs": {
|
|
245
|
-
"import": "./dist/components/tabs.
|
|
246
|
-
"require": "./dist/components/tabs.js",
|
|
192
|
+
"import": "./dist/components/tabs.js",
|
|
247
193
|
"types": "./dist/components/tabs.d.ts"
|
|
248
194
|
},
|
|
249
195
|
"./terminal": {
|
|
250
|
-
"import": "./dist/components/terminal.
|
|
251
|
-
"require": "./dist/components/terminal.js",
|
|
196
|
+
"import": "./dist/components/terminal.js",
|
|
252
197
|
"types": "./dist/components/terminal.d.ts"
|
|
253
198
|
},
|
|
254
199
|
"./textarea": {
|
|
255
|
-
"import": "./dist/components/textarea.
|
|
256
|
-
"require": "./dist/components/textarea.js",
|
|
200
|
+
"import": "./dist/components/textarea.js",
|
|
257
201
|
"types": "./dist/components/textarea.d.ts"
|
|
258
202
|
},
|
|
259
203
|
"./tooltip": {
|
|
260
|
-
"import": "./dist/components/tooltip.
|
|
261
|
-
"require": "./dist/components/tooltip.js",
|
|
204
|
+
"import": "./dist/components/tooltip.js",
|
|
262
205
|
"types": "./dist/components/tooltip.d.ts"
|
|
263
206
|
},
|
|
264
207
|
"./use-toast": {
|
|
265
|
-
"import": "./dist/components/use-toast.
|
|
266
|
-
"require": "./dist/components/use-toast.js",
|
|
208
|
+
"import": "./dist/components/use-toast.js",
|
|
267
209
|
"types": "./dist/components/use-toast.d.ts"
|
|
268
210
|
},
|
|
269
211
|
"./utils": {
|
|
270
|
-
"import": "./dist/lib/utils.
|
|
271
|
-
"require": "./dist/lib/utils.js",
|
|
212
|
+
"import": "./dist/lib/utils.js",
|
|
272
213
|
"types": "./dist/lib/utils.d.ts"
|
|
273
214
|
},
|
|
274
215
|
"./lib": {
|
|
275
|
-
"import": "./dist/lib/index.
|
|
276
|
-
"require": "./dist/lib/index.js",
|
|
216
|
+
"import": "./dist/lib/index.js",
|
|
277
217
|
"types": "./dist/lib/index.d.ts"
|
|
278
218
|
}
|
|
279
219
|
},
|
|
@@ -284,8 +224,11 @@
|
|
|
284
224
|
"build-storybook": "storybook build",
|
|
285
225
|
"chromatic": "chromatic"
|
|
286
226
|
},
|
|
287
|
-
"dependencies": {
|
|
288
|
-
|
|
227
|
+
"dependencies": {},
|
|
228
|
+
"peerDependencies": {
|
|
229
|
+
"class-variance-authority": "^0.7.0",
|
|
230
|
+
"clsx": "^2.0.0",
|
|
231
|
+
"tailwind-merge": "^2.0.0",
|
|
289
232
|
"@radix-ui/react-accordion": "^1.2.3",
|
|
290
233
|
"@radix-ui/react-alert-dialog": "^1.1.6",
|
|
291
234
|
"@radix-ui/react-checkbox": "^1.1.4",
|
|
@@ -304,37 +247,129 @@
|
|
|
304
247
|
"@radix-ui/react-slot": "^1.1.2",
|
|
305
248
|
"@radix-ui/react-switch": "^1.1.3",
|
|
306
249
|
"@radix-ui/react-tabs": "^1.1.3",
|
|
307
|
-
"@smastrom/react-rating": "^1.5.0",
|
|
308
|
-
"@types/react-syntax-highlighter": "^15.5.13",
|
|
309
|
-
"class-variance-authority": "^0.7.0",
|
|
310
|
-
"clsx": "^2.0.0",
|
|
311
250
|
"cmdk": "^1.1.1",
|
|
312
251
|
"copy-to-clipboard": "^3.3.3",
|
|
313
252
|
"framer-motion": "^12.6.5",
|
|
314
253
|
"lucide-react": "^0.293.0",
|
|
315
254
|
"luxon": "^3.7.1",
|
|
255
|
+
"react": "^18.0.0",
|
|
256
|
+
"react-dom": "^18.0.0",
|
|
316
257
|
"react-dropzone": "^14.3.8",
|
|
317
|
-
"react-markdown": "^9.0.1",
|
|
318
258
|
"react-mentions": "^4.4.10",
|
|
319
|
-
"
|
|
320
|
-
"recharts": "^3.1.2",
|
|
321
|
-
"rehype-autolink-headings": "^7.1.0",
|
|
322
|
-
"rehype-figure": "^1.0.1",
|
|
323
|
-
"rehype-raw": "^7.0.0",
|
|
324
|
-
"rehype-slug": "^6.0.0",
|
|
325
|
-
"remark-gfm": "^4.0.1",
|
|
326
|
-
"sonner": "^2.0.7",
|
|
327
|
-
"tailwind-merge": "^2.0.0"
|
|
259
|
+
"sonner": "^2.0.7"
|
|
328
260
|
},
|
|
329
|
-
"
|
|
330
|
-
"
|
|
331
|
-
|
|
261
|
+
"peerDependenciesMeta": {
|
|
262
|
+
"class-variance-authority": {
|
|
263
|
+
"optional": true
|
|
264
|
+
},
|
|
265
|
+
"clsx": {
|
|
266
|
+
"optional": true
|
|
267
|
+
},
|
|
268
|
+
"tailwind-merge": {
|
|
269
|
+
"optional": true
|
|
270
|
+
},
|
|
271
|
+
"@radix-ui/react-accordion": {
|
|
272
|
+
"optional": true
|
|
273
|
+
},
|
|
274
|
+
"@radix-ui/react-alert-dialog": {
|
|
275
|
+
"optional": true
|
|
276
|
+
},
|
|
277
|
+
"@radix-ui/react-checkbox": {
|
|
278
|
+
"optional": true
|
|
279
|
+
},
|
|
280
|
+
"@radix-ui/react-context-menu": {
|
|
281
|
+
"optional": true
|
|
282
|
+
},
|
|
283
|
+
"@radix-ui/react-dialog": {
|
|
284
|
+
"optional": true
|
|
285
|
+
},
|
|
286
|
+
"@radix-ui/react-dropdown-menu": {
|
|
287
|
+
"optional": true
|
|
288
|
+
},
|
|
289
|
+
"@radix-ui/react-label": {
|
|
290
|
+
"optional": true
|
|
291
|
+
},
|
|
292
|
+
"@radix-ui/react-navigation-menu": {
|
|
293
|
+
"optional": true
|
|
294
|
+
},
|
|
295
|
+
"@radix-ui/react-popover": {
|
|
296
|
+
"optional": true
|
|
297
|
+
},
|
|
298
|
+
"@radix-ui/react-progress": {
|
|
299
|
+
"optional": true
|
|
300
|
+
},
|
|
301
|
+
"@radix-ui/react-radio-group": {
|
|
302
|
+
"optional": true
|
|
303
|
+
},
|
|
304
|
+
"@radix-ui/react-scroll-area": {
|
|
305
|
+
"optional": true
|
|
306
|
+
},
|
|
307
|
+
"@radix-ui/react-select": {
|
|
308
|
+
"optional": true
|
|
309
|
+
},
|
|
310
|
+
"@radix-ui/react-separator": {
|
|
311
|
+
"optional": true
|
|
312
|
+
},
|
|
313
|
+
"@radix-ui/react-slider": {
|
|
314
|
+
"optional": true
|
|
315
|
+
},
|
|
316
|
+
"@radix-ui/react-slot": {
|
|
317
|
+
"optional": true
|
|
318
|
+
},
|
|
319
|
+
"@radix-ui/react-switch": {
|
|
320
|
+
"optional": true
|
|
321
|
+
},
|
|
322
|
+
"@radix-ui/react-tabs": {
|
|
323
|
+
"optional": true
|
|
324
|
+
},
|
|
325
|
+
"cmdk": {
|
|
326
|
+
"optional": true
|
|
327
|
+
},
|
|
328
|
+
"copy-to-clipboard": {
|
|
329
|
+
"optional": true
|
|
330
|
+
},
|
|
331
|
+
"framer-motion": {
|
|
332
|
+
"optional": true
|
|
333
|
+
},
|
|
334
|
+
"lucide-react": {
|
|
335
|
+
"optional": true
|
|
336
|
+
},
|
|
337
|
+
"luxon": {
|
|
338
|
+
"optional": true
|
|
339
|
+
},
|
|
340
|
+
"react-dropzone": {
|
|
341
|
+
"optional": true
|
|
342
|
+
},
|
|
343
|
+
"react-mentions": {
|
|
344
|
+
"optional": true
|
|
345
|
+
},
|
|
346
|
+
"sonner": {
|
|
347
|
+
"optional": true
|
|
348
|
+
}
|
|
332
349
|
},
|
|
333
350
|
"devDependencies": {
|
|
334
351
|
"@babel/core": "^7.23.3",
|
|
335
352
|
"@babel/preset-env": "^7.23.3",
|
|
336
353
|
"@babel/preset-react": "^7.23.3",
|
|
337
354
|
"@babel/preset-typescript": "^7.23.3",
|
|
355
|
+
"@radix-ui/react-accordion": "^1.2.3",
|
|
356
|
+
"@radix-ui/react-alert-dialog": "^1.1.6",
|
|
357
|
+
"@radix-ui/react-checkbox": "^1.1.4",
|
|
358
|
+
"@radix-ui/react-context-menu": "^2.2.15",
|
|
359
|
+
"@radix-ui/react-dialog": "^1.0.5",
|
|
360
|
+
"@radix-ui/react-dropdown-menu": "^2.1.6",
|
|
361
|
+
"@radix-ui/react-label": "^2.1.2",
|
|
362
|
+
"@radix-ui/react-navigation-menu": "^1.1.4",
|
|
363
|
+
"@radix-ui/react-popover": "^1.1.6",
|
|
364
|
+
"@radix-ui/react-progress": "^1.1.2",
|
|
365
|
+
"@radix-ui/react-radio-group": "^1.2.3",
|
|
366
|
+
"@radix-ui/react-scroll-area": "^1.2.3",
|
|
367
|
+
"@radix-ui/react-select": "^2.1.6",
|
|
368
|
+
"@radix-ui/react-separator": "^1.1.2",
|
|
369
|
+
"@radix-ui/react-slider": "^1.2.3",
|
|
370
|
+
"@radix-ui/react-slot": "^1.1.2",
|
|
371
|
+
"@radix-ui/react-switch": "^1.1.3",
|
|
372
|
+
"@radix-ui/react-tabs": "^1.1.3",
|
|
338
373
|
"@storybook/addon-docs": "^9.1.1",
|
|
339
374
|
"@storybook/addon-links": "^9.1.1",
|
|
340
375
|
"@storybook/addon-onboarding": "^9.1.1",
|
|
@@ -342,6 +377,9 @@
|
|
|
342
377
|
"@storybook/react-vite": "^9.1.1",
|
|
343
378
|
"@storybook/testing-library": "^0.2.2",
|
|
344
379
|
"@tailwindcss/typography": "^0.5.16",
|
|
380
|
+
"class-variance-authority": "^0.7.0",
|
|
381
|
+
"clsx": "^2.0.0",
|
|
382
|
+
"tailwind-merge": "^2.0.0",
|
|
345
383
|
"@types/luxon": "^3.7.1",
|
|
346
384
|
"@types/node": "^24.2.1",
|
|
347
385
|
"@types/react": "^18.2.37",
|
|
@@ -350,10 +388,18 @@
|
|
|
350
388
|
"@vitejs/plugin-react": "^4.3.4",
|
|
351
389
|
"autoprefixer": "^10.4.16",
|
|
352
390
|
"chromatic": "^11.28.0",
|
|
391
|
+
"cmdk": "^1.1.1",
|
|
392
|
+
"copy-to-clipboard": "^3.3.3",
|
|
353
393
|
"esbuild": "^0.25.8",
|
|
394
|
+
"framer-motion": "^12.6.5",
|
|
395
|
+
"lucide-react": "^0.293.0",
|
|
396
|
+
"luxon": "^3.7.1",
|
|
354
397
|
"postcss": "^8.4.31",
|
|
355
398
|
"react": "^18.2.0",
|
|
356
399
|
"react-dom": "^18.2.0",
|
|
400
|
+
"react-dropzone": "^14.3.8",
|
|
401
|
+
"react-mentions": "^4.4.10",
|
|
402
|
+
"sonner": "^2.0.7",
|
|
357
403
|
"storybook": "^9.1.1",
|
|
358
404
|
"tailwindcss": "^3.3.5",
|
|
359
405
|
"typescript": "^5.2.2",
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
"use strict";const a=require("./jsx-runtime-BYECrxsp.cjs"),x=require("react"),P=require("@monaco-editor/react"),T=require("./components/modal.js"),M=require("./components/button.js"),S=require("lucide-react"),O={minimap:{enabled:!1},fontSize:14,scrollBeyondLastLine:!1,wordWrap:"on",lineNumbers:"on",automaticLayout:!0,scrollbar:{vertical:"auto",horizontal:"auto"}},U={javascript:{},typescript:{},python:{},json:{},html:{},css:{},markdown:{wordWrap:"on"},plaintext:{}},k=new Map;let K=0;function C(s,c,t,b){const{language:j,variablePrefix:o,variableSuffix:y}=b,e=`provider_${++K}`;console.log(`Setting up variable suggestions with ID ${e} (${t.length} variables)`);const r=c.languages.registerCompletionItemProvider(j,{triggerCharacters:["{"],provideCompletionItems:(u,l)=>{if(u.getLineContent(l.lineNumber).substring(0,l.column-1).endsWith(o)){if(console.log(`[${e}] Detected ${o} - showing ${t.length} variable suggestions`),t.length===0)return console.log(`[${e}] No variables available for suggestions`),{suggestions:[]};const i=Array.from(new Map(t.map(n=>[n.name,n])).values()).map(n=>({label:n.name,kind:c.languages.CompletionItemKind.Variable,detail:n.type,documentation:{value:n.description||"",isTrusted:!0},insertText:n.name,sortText:"0"+n.name,range:{startLineNumber:l.lineNumber,startColumn:l.column,endLineNumber:l.lineNumber,endColumn:l.column}}));return console.log(`[${e}] Created ${i.length} suggestions`),{suggestions:i}}return{suggestions:[]}}}),m=s.onKeyUp(u=>{if(u.code!=="BracketLeft"&&u.code!=="Digit2")return;const l=s.getPosition();if(!l)return;const h=s.getModel();if(!h)return;h.getLineContent(l.lineNumber).substring(0,l.column-1).endsWith(o)&&(console.log(`[${e}] Manually triggering suggestions on ${o}`),setTimeout(()=>{s.trigger("keyboard","editor.action.triggerSuggest",{})},20))}),p=()=>{console.log(`Disposing provider ${e}`),r.dispose(),m.dispose(),k.delete(e)};return k.set(e,{dispose:p,variables:t,config:b}),p}function V(s,c,t,b){const j=Array.from(new Map(t.map(o=>[o.name,o])).values());console.log(`Updating provider with ${j.length} variables`),C(s,c,j,b)}function I(s,c,t){var b;if(!(!t||t.length===0)){if(c==="javascript"||c==="typescript"){const j=t.map(e=>{if(e.isObject&&e.properties&&e.properties.length>0){const r=`I${e.name.charAt(0).toUpperCase()+e.name.slice(1)}`,m=e.properties.map(p=>` ${p.name}: ${p.type};`).join(`
|
|
2
|
-
`);return`
|
|
3
|
-
interface ${r} {
|
|
4
|
-
${m}
|
|
5
|
-
}
|
|
6
|
-
declare const ${e.name}: ${r};`}else return`declare const ${e.name}: ${e.type};`}).join(`
|
|
7
|
-
`),o="predefined-variables";(b=s.__extraLibDisposables)!=null&&b[o]&&s.__extraLibDisposables[o].dispose();const y=s.languages.typescript.javascriptDefaults.addExtraLib(j,`ts:filename/${o}.d.ts`);s.__extraLibDisposables||(s.__extraLibDisposables={}),s.__extraLibDisposables[o]=y}if(c==="python"){["python-hover-provider","python-completion-provider"].forEach(e=>{var m;const r=(m=s.__customDisposables)==null?void 0:m[e];r&&r.dispose()}),s.__customDisposables||(s.__customDisposables={});const o=s.languages.registerHoverProvider("python",{provideHover:(e,r)=>{const m=e.getWordAtPosition(r);if(!m)return null;const p=t.find(h=>h.name===m.word);if(p)return{contents:[{value:`(variable) ${p.name}: ${p.type}`},{value:p.documentation||""}]};const l=e.getLineContent(r.lineNumber).substring(0,r.column).match(/(\w+)\.(\w+)$/);if(l){const[h,g,d]=l,i=t.find(n=>n.name===g&&n.isObject);if(i&&i.properties){const n=i.properties.find($=>$.name===d);if(n)return{contents:[{value:`(property) ${g}.${n.name}: ${n.type}`},{value:n.documentation||""}]}}}return null}}),y=s.languages.registerCompletionItemProvider("python",{triggerCharacters:["."],provideCompletionItems:(e,r)=>{const u=e.getLineContent(r.lineNumber).substring(0,r.column).match(/(\w+)\.\s*$/);if(!u)return{suggestions:[]};const[l,h]=u,g=t.find(d=>d.name===h&&d.isObject);return g&&g.properties&&g.properties.length>0?{suggestions:g.properties.map(i=>({label:i.name,kind:s.languages.CompletionItemKind.Property,detail:i.type,documentation:{value:i.documentation||"",isTrusted:!0},insertText:i.name,range:{startLineNumber:r.lineNumber,startColumn:r.column,endLineNumber:r.lineNumber,endColumn:r.column}}))}:{suggestions:[]}}});s.__customDisposables["python-hover-provider"]=o,s.__customDisposables["python-completion-provider"]=y}}}function W({value:s,onChange:c,language:t="javascript",height:b="300px",className:j="",options:o={},onMount:y,title:e="Code Editor",variables:r=[],variablePrefix:m="{{",variableSuffix:p="}}",predefinedVariables:u=[],allowFullscreen:l=!0,isDark:h=!1}){const g=!h,d=x.useRef(null),i=x.useRef(null),[n,$]=x.useState(!1),v=x.useRef(null),E=x.useRef(`editor-${Math.random().toString(36).substr(2,9)}`),[q,z]=x.useState(null);x.useEffect(()=>{if(!(!d.current||!i.current))return v.current&&(v.current(),v.current=null),console.log(`Setting up variable suggestions for ${E.current}`),v.current=C(d.current,i.current,r,{language:t,variablePrefix:m,variableSuffix:p}),()=>{v.current&&(v.current(),v.current=null)}},[q,r,t,m,p]),x.useEffect(()=>{!i.current||u.length===0||(console.log("registering predefined variables",u),I(i.current,t,u))},[t,u]),x.useEffect(()=>{d.current&&setTimeout(()=>{var f;(f=d.current)==null||f.layout()},100)},[n]);const R=x.useCallback((f,N)=>{var D,L;console.log(`Editor ${E.current} mounted`),d.current=f,i.current=N,z(f),u.length>0&&I(N,t,u),t==="python"?(D=f.getModel())==null||D.updateOptions({tabSize:4,insertSpaces:!0}):t!=="markdown"&&((L=f.getModel())==null||L.updateOptions({tabSize:2,insertSpaces:!0})),y&&y(f,N)},[t,y,u]),_=x.useMemo(()=>({...O,...U[t]||{},...o}),[t,o]),w=x.useCallback(()=>{$(!n)},[n]);return a.jsxRuntimeExports.jsxs(a.jsxRuntimeExports.Fragment,{children:[a.jsxRuntimeExports.jsxs("div",{className:j,children:[l&&a.jsxRuntimeExports.jsx("div",{className:"flex justify-end mb-1",children:a.jsxRuntimeExports.jsx(M.Button,{variant:"ghost",size:"sm",onClick:w,className:"h-7 w-7 p-0",children:a.jsxRuntimeExports.jsx(S.Maximize,{className:"h-4 w-4"})})}),a.jsxRuntimeExports.jsx("div",{className:"relative",style:{display:n?"none":"block"},children:a.jsxRuntimeExports.jsx(P,{height:b,language:t,value:s,onChange:f=>c==null?void 0:c(f||""),options:_,onMount:R,theme:g?"vs-light":"vs-dark"},E.current)})]}),n&&a.jsxRuntimeExports.jsx(T.Modal,{isOpen:n,onClose:()=>$(!1),size:"2xl",title:e,header:a.jsxRuntimeExports.jsxs("div",{className:"flex items-center justify-between w-full",children:[a.jsxRuntimeExports.jsx("h2",{className:"text-sm font-medium",children:e}),a.jsxRuntimeExports.jsx(M.Button,{variant:"ghost",size:"sm",onClick:w,className:"h-7 w-7 p-0",children:a.jsxRuntimeExports.jsx(S.Minimize2,{className:"h-4 w-4"})})]}),children:a.jsxRuntimeExports.jsx("div",{className:"h-[80vh] w-full",children:a.jsxRuntimeExports.jsx(P,{height:"100%",language:t,value:s,onChange:f=>c==null?void 0:c(f||""),options:_,onMount:R,theme:g?"vs-light":"vs-dark"},`${E.current}-fullscreen`)})})]})}exports.MonacoEditor=W;exports.defaultOptions=O;exports.languageOptions=U;exports.setupVariableSuggestions=C;exports.updateVariableSuggestions=V;
|
|
8
|
-
//# sourceMappingURL=MonacoEditor-COZcVMEj.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MonacoEditor-COZcVMEj.cjs","sources":["../src/components/monaco-editor/constants.ts","../src/components/monaco-editor/variableSuggestions.ts","../src/components/monaco-editor/utils.ts","../src/components/monaco-editor/MonacoEditor.tsx"],"sourcesContent":["import { editor as monacoEditor } from 'monaco-editor';\nimport { MonacoEditorLanguage } from './types';\n\nexport const defaultOptions: monacoEditor.IEditorOptions = {\n minimap: { enabled: false },\n fontSize: 14,\n scrollBeyondLastLine: false,\n wordWrap: 'on',\n lineNumbers: 'on',\n automaticLayout: true,\n scrollbar: {\n vertical: 'auto',\n horizontal: 'auto',\n },\n};\n\nexport const languageOptions: Record<MonacoEditorLanguage, monacoEditor.IEditorOptions> = {\n javascript: {},\n typescript: {},\n python: {},\n json: {},\n html: {},\n css: {},\n markdown: {\n wordWrap: 'on',\n },\n plaintext: {},\n}; ","import { Monaco } from '@monaco-editor/react';\nimport { editor as monacoEditor } from 'monaco-editor';\nimport { VariableSuggestion } from './types';\n\ntype VariableSuggestionProviderConfig = {\n language: string;\n variablePrefix: string;\n variableSuffix: string;\n};\n\n// Keep track of registered providers with a uniqueId\nconst registeredProviders = new Map<string, {\n dispose: () => void,\n variables: VariableSuggestion[],\n config: VariableSuggestionProviderConfig\n}>();\n\n// Counter for unique IDs\nlet providerCounter = 0;\n\n/**\n * Setup variable suggestions for Monaco editor\n */\nexport function setupVariableSuggestions(\n editor: monacoEditor.IStandaloneCodeEditor,\n monaco: Monaco,\n variables: VariableSuggestion[],\n config: VariableSuggestionProviderConfig\n): () => void {\n const { language, variablePrefix, variableSuffix } = config;\n \n // Generate a unique ID for this provider\n const providerId = `provider_${++providerCounter}`;\n \n console.log(`Setting up variable suggestions with ID ${providerId} (${variables.length} variables)`);\n \n // Register completion provider\n const completionProvider = monaco.languages.registerCompletionItemProvider(language, {\n triggerCharacters: ['{'], \n \n provideCompletionItems: (model, position) => {\n // Get text before cursor\n const lineContent = model.getLineContent(position.lineNumber);\n const textUntilPosition = lineContent.substring(0, position.column - 1);\n \n // Check if we've just typed the variable prefix\n if (textUntilPosition.endsWith(variablePrefix)) {\n console.log(`[${providerId}] Detected ${variablePrefix} - showing ${variables.length} variable suggestions`);\n \n if (variables.length === 0) {\n console.log(`[${providerId}] No variables available for suggestions`);\n return { suggestions: [] };\n }\n \n // Use Set to ensure unique variable names\n const uniqueVariables = Array.from(\n new Map(variables.map(v => [v.name, v])).values()\n );\n \n // Create suggestions\n const suggestions = uniqueVariables.map(variable => ({\n label: variable.name,\n kind: monaco.languages.CompletionItemKind.Variable,\n detail: variable.type,\n documentation: {\n value: variable.description || '',\n isTrusted: true\n },\n insertText: variable.name,\n sortText: '0' + variable.name, // Force variable suggestions to appear at top\n range: {\n startLineNumber: position.lineNumber,\n startColumn: position.column,\n endLineNumber: position.lineNumber,\n endColumn: position.column\n }\n }));\n \n console.log(`[${providerId}] Created ${suggestions.length} suggestions`);\n return { suggestions };\n }\n \n return { suggestions: [] };\n }\n });\n \n // Add manual KeyUp handler to trigger suggestions\n const keyUpDisposable = editor.onKeyUp(e => {\n // Skip if not the right key\n if (e.code !== 'BracketLeft' && e.code !== 'Digit2') return;\n \n const position = editor.getPosition();\n if (!position) return;\n \n const model = editor.getModel();\n if (!model) return;\n \n const lineContent = model.getLineContent(position.lineNumber);\n const textUntilPosition = lineContent.substring(0, position.column - 1);\n \n if (textUntilPosition.endsWith(variablePrefix)) {\n console.log(`[${providerId}] Manually triggering suggestions on ${variablePrefix}`);\n \n // Delay slightly to ensure the model is updated\n setTimeout(() => {\n // Force suggestions to appear\n editor.trigger('keyboard', 'editor.action.triggerSuggest', {});\n }, 20);\n }\n });\n \n // Create dispose function\n const dispose = () => {\n console.log(`Disposing provider ${providerId}`);\n completionProvider.dispose();\n keyUpDisposable.dispose();\n registeredProviders.delete(providerId);\n };\n \n // Store in registeredProviders\n registeredProviders.set(providerId, {\n dispose,\n variables,\n config\n });\n \n return dispose;\n}\n\n/**\n * Update variables for an existing provider\n * Creates a new provider with the updated variables\n */\nexport function updateVariableSuggestions(\n editor: monacoEditor.IStandaloneCodeEditor,\n monaco: Monaco,\n variables: VariableSuggestion[],\n config: VariableSuggestionProviderConfig\n): void {\n // Remove duplicates from variables array\n const uniqueVariables = Array.from(\n new Map(variables.map(v => [v.name, v])).values()\n );\n \n console.log(`Updating provider with ${uniqueVariables.length} variables`);\n \n // Create a new provider with the updated variables\n setupVariableSuggestions(editor, monaco, uniqueVariables, config);\n} ","import { Monaco } from \"@monaco-editor/react\";\nimport { PredefinedVariable } from \"./types\";\n\n/**\n * Find the position of a variable prefix in a text string\n * \n * @param lineContent The current line content\n * @param currentColumn The current cursor column\n * @param variablePrefix The variable prefix to look for\n * @returns The starting position of the prefix, or -1 if not found\n */\nexport function findVariablePrefixPosition(\n lineContent: string, \n currentColumn: number, \n variablePrefix: string\n): number {\n let prefixStart = -1;\n \n // Look for the variable prefix before the cursor within a reasonable range\n for (let i = currentColumn - 1; i >= 0 && i >= currentColumn - variablePrefix.length - 10; i--) {\n if (i - variablePrefix.length + 1 >= 0) {\n const substring = lineContent.substring(i - variablePrefix.length + 1, i + 1);\n if (substring === variablePrefix) {\n prefixStart = i - variablePrefix.length + 1;\n break;\n }\n }\n }\n \n return prefixStart;\n}\n\n/**\n * Format a preview text with variable prefix and suffix\n * \n * @param variableName The variable name to format\n * @param variablePrefix The prefix to add\n * @param variableSuffix The suffix to add\n * @returns Formatted variable string\n */\nexport function formatVariablePreview(\n variableName: string | null, \n variablePrefix: string, \n variableSuffix: string\n): string {\n if (!variableName) return variablePrefix + '....' + variableSuffix;\n return variablePrefix + variableName + variableSuffix;\n}\n\n/**\n * Format code according to the specified language\n */\nexport function formatCode(monaco: Monaco, editor: any, language: string) {\n editor.getAction('editor.action.formatDocument').run();\n}\n\n/**\n * Get the appropriate EOL character for the current operating system\n */\nexport function getEOL() {\n return '\\n';\n}\n\n/**\n * Register predefined variables with the Monaco editor\n */\nexport function registerPredefinedVariables(\n monaco: Monaco, \n language: string, \n variables: PredefinedVariable[]\n) {\n if (!variables || variables.length === 0) return;\n \n // For JavaScript/TypeScript editor\n if (language === 'javascript' || language === 'typescript') {\n // Create TypeScript definitions for our variables\n const declarations = variables.map(variable => {\n if (variable.isObject && variable.properties && variable.properties.length > 0) {\n // Create a detailed interface for object types with properties\n const interfaceName = `I${variable.name.charAt(0).toUpperCase() + variable.name.slice(1)}`;\n const propertyDeclarations = variable.properties.map(prop => \n ` ${prop.name}: ${prop.type};`\n ).join('\\n');\n \n return `\ninterface ${interfaceName} {\n${propertyDeclarations}\n}\ndeclare const ${variable.name}: ${interfaceName};`;\n } else {\n // Simple variable declaration\n return `declare const ${variable.name}: ${variable.type};`;\n }\n }).join('\\n');\n \n // Check if we already have a stored disposable for the lib\n const libKey = 'predefined-variables';\n if ((monaco as any).__extraLibDisposables?.[libKey]) {\n (monaco as any).__extraLibDisposables[libKey].dispose();\n }\n \n // Add the library and store its disposable\n const disposable = monaco.languages.typescript.javascriptDefaults.addExtraLib(\n declarations,\n `ts:filename/${libKey}.d.ts`\n );\n \n // Initialize storage for disposables if needed\n if (!(monaco as any).__extraLibDisposables) {\n (monaco as any).__extraLibDisposables = {};\n }\n \n // Store the disposable for later cleanup\n (monaco as any).__extraLibDisposables[libKey] = disposable;\n }\n \n // For Python, we add hover providers and completion providers\n if (language === 'python') {\n // Remove previous providers if they exist\n const providerKeys = ['python-hover-provider', 'python-completion-provider'];\n providerKeys.forEach(key => {\n const disposable = (monaco as any).__customDisposables?.[key];\n if (disposable) {\n disposable.dispose();\n }\n });\n \n // Initialize storage for disposables if needed\n if (!(monaco as any).__customDisposables) {\n (monaco as any).__customDisposables = {};\n }\n \n // Create a new hover provider\n const hoverProvider = monaco.languages.registerHoverProvider('python', {\n provideHover: (model, position) => {\n const word = model.getWordAtPosition(position);\n if (!word) return null;\n \n // Check if it's a direct variable match\n const variable = variables.find(v => v.name === word.word);\n if (variable) {\n return {\n contents: [\n { value: `(variable) ${variable.name}: ${variable.type}` },\n { value: variable.documentation || '' }\n ]\n };\n }\n \n // Check if it's a property access (e.g., self.property)\n const lineContent = model.getLineContent(position.lineNumber);\n const dotMatch = lineContent.substring(0, position.column).match(/(\\w+)\\.(\\w+)$/);\n \n if (dotMatch) {\n const [_, objName, propName] = dotMatch;\n const objVar = variables.find(v => v.name === objName && v.isObject);\n \n if (objVar && objVar.properties) {\n const property = objVar.properties.find(p => p.name === propName);\n if (property) {\n return {\n contents: [\n { value: `(property) ${objName}.${property.name}: ${property.type}` },\n { value: property.documentation || '' }\n ]\n };\n }\n }\n }\n \n return null;\n }\n });\n \n // Create completion provider for object properties\n const completionProvider = monaco.languages.registerCompletionItemProvider('python', {\n triggerCharacters: ['.'],\n provideCompletionItems: (model, position) => {\n const lineContent = model.getLineContent(position.lineNumber);\n const textUntilPosition = lineContent.substring(0, position.column);\n \n // Match for object property access\n const match = textUntilPosition.match(/(\\w+)\\.\\s*$/);\n if (!match) return { suggestions: [] };\n \n const [_, objName] = match;\n const objVar = variables.find(v => v.name === objName && v.isObject);\n \n if (objVar && objVar.properties && objVar.properties.length > 0) {\n const suggestions = objVar.properties.map(prop => ({\n label: prop.name,\n kind: monaco.languages.CompletionItemKind.Property,\n detail: prop.type,\n documentation: {\n value: prop.documentation || '',\n isTrusted: true\n },\n insertText: prop.name,\n range: {\n startLineNumber: position.lineNumber,\n startColumn: position.column,\n endLineNumber: position.lineNumber,\n endColumn: position.column\n }\n }));\n \n return { suggestions };\n }\n \n return { suggestions: [] };\n }\n });\n \n // Store providers for later disposal\n (monaco as any).__customDisposables['python-hover-provider'] = hoverProvider;\n (monaco as any).__customDisposables['python-completion-provider'] = completionProvider;\n }\n} ","import { useRef, useState, useEffect, useMemo, useCallback } from \"react\";\nimport Editor, { Monaco } from '@monaco-editor/react';\nimport { editor as monacoEditor } from 'monaco-editor';\nimport { Modal } from \"../modal\";\nimport { Button } from \"../button\";\nimport { Maximize2, Minimize2, Maximize } from \"lucide-react\";\nimport { MonacoEditorProps } from \"./types\";\nimport { defaultOptions, languageOptions } from \"./constants\";\nimport { setupVariableSuggestions } from \"./variableSuggestions\";\nimport { registerPredefinedVariables } from \"./utils\";\n\nexport function MonacoEditor({\n value,\n onChange,\n language = 'javascript',\n height = '300px',\n className = '',\n options = {},\n onMount,\n title = 'Code Editor',\n variables = [],\n variablePrefix = '{{',\n variableSuffix = '}}',\n predefinedVariables = [],\n allowFullscreen = true,\n isDark = false,\n}: MonacoEditorProps) {\n const isLight = !isDark;\n const editorRef = useRef<monacoEditor.IStandaloneCodeEditor | null>(null);\n const monacoRef = useRef<Monaco | null>(null);\n const [isFullscreen, setIsFullscreen] = useState(false);\n const suggestionDisposableRef = useRef<(() => void) | null>(null);\n const editorIdRef = useRef<string>(`editor-${Math.random().toString(36).substr(2, 9)}`);\n const [editorInstance, setEditorInstance] = useState<monacoEditor.IStandaloneCodeEditor | null>(null);\n\n // Setup variable suggestions once the editor is mounted\n useEffect(() => {\n if (!editorRef.current || !monacoRef.current) return;\n \n // Clear any previous provider\n if (suggestionDisposableRef.current) {\n suggestionDisposableRef.current();\n suggestionDisposableRef.current = null;\n }\n \n // Setup a new provider with current variables\n console.log(`Setting up variable suggestions for ${editorIdRef.current}`);\n suggestionDisposableRef.current = setupVariableSuggestions(\n editorRef.current,\n monacoRef.current,\n variables,\n { language, variablePrefix, variableSuffix }\n );\n \n return () => {\n if (suggestionDisposableRef.current) {\n suggestionDisposableRef.current();\n suggestionDisposableRef.current = null;\n }\n };\n }, [editorInstance, variables, language, variablePrefix, variableSuffix]);\n\n // Register predefined variables like 'self'\n useEffect(() => {\n if (!monacoRef.current || predefinedVariables.length === 0) return;\n \n console.log('registering predefined variables', predefinedVariables);\n registerPredefinedVariables(\n monacoRef.current,\n language,\n predefinedVariables\n );\n }, [language, predefinedVariables]);\n\n // Handle fullscreen toggle - need to relayout the editor\n useEffect(() => {\n if (editorRef.current) {\n // Give the modal time to animate\n setTimeout(() => {\n editorRef.current?.layout();\n }, 100);\n }\n }, [isFullscreen]);\n\n // Handle editor mounting\n const handleEditorDidMount = useCallback((editor: monacoEditor.IStandaloneCodeEditor, monaco: Monaco) => {\n console.log(`Editor ${editorIdRef.current} mounted`);\n editorRef.current = editor;\n monacoRef.current = monaco;\n setEditorInstance(editor);\n \n // Register predefined variables immediately after mount\n if (predefinedVariables.length > 0) {\n registerPredefinedVariables(monaco, language, predefinedVariables);\n }\n \n // Set language-specific model options\n if (language === 'python') {\n editor.getModel()?.updateOptions({ tabSize: 4, insertSpaces: true });\n } else if (language !== 'markdown') {\n editor.getModel()?.updateOptions({ tabSize: 2, insertSpaces: true });\n }\n \n if (onMount) {\n onMount(editor, monaco);\n }\n }, [language, onMount, predefinedVariables]);\n\n // Merge default options with language-specific options and user options\n const mergedOptions = useMemo(() => {\n return {\n ...defaultOptions,\n ...(languageOptions[language] || {}),\n ...options,\n };\n }, [language, options]);\n\n const toggleFullscreen = useCallback(() => {\n setIsFullscreen(!isFullscreen);\n }, [isFullscreen]);\n\n return (\n <>\n <div className={className}>\n {allowFullscreen && (\n <div className=\"flex justify-end mb-1\">\n <Button \n variant=\"ghost\" \n size=\"sm\" \n onClick={toggleFullscreen} \n className=\"h-7 w-7 p-0\"\n >\n <Maximize className=\"h-4 w-4\" />\n </Button>\n </div>\n )}\n <div className=\"relative\" style={{ display: isFullscreen ? 'none' : 'block' }}>\n <Editor\n height={height}\n language={language}\n value={value}\n onChange={(value) => onChange?.(value || '')}\n options={mergedOptions}\n onMount={handleEditorDidMount}\n theme={isLight ? 'vs-light' : 'vs-dark'}\n key={editorIdRef.current} // Use the stable ID\n />\n </div>\n </div>\n\n {isFullscreen && (\n <Modal \n isOpen={isFullscreen} \n onClose={() => setIsFullscreen(false)}\n size=\"2xl\"\n title={title}\n header={\n <div className=\"flex items-center justify-between w-full\">\n <h2 className=\"text-sm font-medium\">{title}</h2>\n <Button \n variant=\"ghost\" \n size=\"sm\" \n onClick={toggleFullscreen} \n className=\"h-7 w-7 p-0\"\n >\n <Minimize2 className=\"h-4 w-4\" />\n </Button>\n </div>\n }\n >\n <div className=\"h-[80vh] w-full\">\n <Editor\n height=\"100%\"\n language={language}\n value={value}\n onChange={(value) => onChange?.(value || '')}\n options={mergedOptions}\n onMount={handleEditorDidMount}\n theme={isLight ? 'vs-light' : 'vs-dark'}\n key={`${editorIdRef.current}-fullscreen`} // Use the same ID with a suffix\n />\n </div>\n </Modal>\n )}\n </>\n );\n} "],"names":["defaultOptions","languageOptions","registeredProviders","providerCounter","setupVariableSuggestions","editor","monaco","variables","config","language","variablePrefix","variableSuffix","providerId","completionProvider","model","position","suggestions","v","variable","keyUpDisposable","e","dispose","updateVariableSuggestions","uniqueVariables","registerPredefinedVariables","declarations","interfaceName","propertyDeclarations","prop","libKey","_a","disposable","key","hoverProvider","word","dotMatch","_","objName","propName","objVar","property","p","match","MonacoEditor","value","onChange","height","className","options","onMount","title","predefinedVariables","allowFullscreen","isDark","isLight","editorRef","useRef","monacoRef","isFullscreen","setIsFullscreen","useState","suggestionDisposableRef","editorIdRef","editorInstance","setEditorInstance","useEffect","handleEditorDidMount","useCallback","_b","mergedOptions","useMemo","toggleFullscreen","jsxs","Fragment","jsx","Button","Maximize","Editor","Modal","Minimize2"],"mappings":"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"}
|