@salilvnair/dui 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +185 -0
  3. package/dist/chunks/EditorView.shell-BGH2VhWM.js +460 -0
  4. package/dist/chunks/EditorView.shell-BGH2VhWM.js.map +1 -0
  5. package/dist/chunks/daakia-icons-DxWnX_IQ.js +1726 -0
  6. package/dist/chunks/daakia-icons-DxWnX_IQ.js.map +1 -0
  7. package/dist/icons/daakia-icons.d.ts +304 -0
  8. package/dist/index.d.ts +2 -0
  9. package/dist/index.js +17032 -0
  10. package/dist/index.js.map +1 -0
  11. package/dist/lib/components/button/AIButtonView.d.ts +20 -0
  12. package/dist/lib/components/button/ButtonView.d.ts +28 -0
  13. package/dist/lib/components/button/DropDownButtonView.d.ts +19 -0
  14. package/dist/lib/components/button/IconButtonView.d.ts +22 -0
  15. package/dist/lib/components/button/SegmentedView.d.ts +17 -0
  16. package/dist/lib/components/button/SplitButtonView.d.ts +23 -0
  17. package/dist/lib/components/chips/ChipView.d.ts +21 -0
  18. package/dist/lib/components/display/CodeBlockView.d.ts +11 -0
  19. package/dist/lib/components/display/ColoredTextView.d.ts +18 -0
  20. package/dist/lib/components/display/CopyButtonView.d.ts +11 -0
  21. package/dist/lib/components/display/DataTableView.d.ts +27 -0
  22. package/dist/lib/components/display/DottedCardView.d.ts +10 -0
  23. package/dist/lib/components/display/EmptyStateView.d.ts +14 -0
  24. package/dist/lib/components/display/ExpandableLogEntryView.d.ts +14 -0
  25. package/dist/lib/components/display/FeatureCategoryView.d.ts +18 -0
  26. package/dist/lib/components/display/HudView.d.ts +25 -0
  27. package/dist/lib/components/display/JsonTreeView.d.ts +11 -0
  28. package/dist/lib/components/display/LiveColorCustomizer.d.ts +21 -0
  29. package/dist/lib/components/display/LoaderView.d.ts +12 -0
  30. package/dist/lib/components/display/MarkdownView.d.ts +19 -0
  31. package/dist/lib/components/display/PromptCardView.d.ts +33 -0
  32. package/dist/lib/components/display/PromptLibraryEditorView.d.ts +32 -0
  33. package/dist/lib/components/display/PromptLibraryListView.d.ts +30 -0
  34. package/dist/lib/components/display/StageView.d.ts +26 -0
  35. package/dist/lib/components/display/StatsCardView.d.ts +15 -0
  36. package/dist/lib/components/display/StatusIndicatorView.d.ts +14 -0
  37. package/dist/lib/components/display/ToastView.d.ts +19 -0
  38. package/dist/lib/components/display/YamlKeyChip.d.ts +15 -0
  39. package/dist/lib/components/input/CheckboxView.d.ts +15 -0
  40. package/dist/lib/components/input/DebugEditorView.d.ts +26 -0
  41. package/dist/lib/components/input/DiffEditorView.d.ts +18 -0
  42. package/dist/lib/components/input/DiffEditorView.fallback.d.ts +2 -0
  43. package/dist/lib/components/input/DiffEditorView.monaco.d.ts +2 -0
  44. package/dist/lib/components/input/DurationInputView.d.ts +15 -0
  45. package/dist/lib/components/input/EditorView.d.ts +222 -0
  46. package/dist/lib/components/input/EditorView.fallback.d.ts +10 -0
  47. package/dist/lib/components/input/EditorView.monaco.d.ts +2 -0
  48. package/dist/lib/components/input/EditorView.shell.d.ts +13 -0
  49. package/dist/lib/components/input/FormDataTableView.d.ts +22 -0
  50. package/dist/lib/components/input/HiddenKeyValueItemView.d.ts +22 -0
  51. package/dist/lib/components/input/HighlightedInputView.d.ts +26 -0
  52. package/dist/lib/components/input/KeyValueTableRowView.d.ts +31 -0
  53. package/dist/lib/components/input/KeyValueTableView.d.ts +59 -0
  54. package/dist/lib/components/input/MergedInputView.d.ts +43 -0
  55. package/dist/lib/components/input/MultilineInputView.d.ts +15 -0
  56. package/dist/lib/components/input/SearchInputView.d.ts +17 -0
  57. package/dist/lib/components/input/SegmentedControlView.d.ts +23 -0
  58. package/dist/lib/components/input/SelectInputView.d.ts +31 -0
  59. package/dist/lib/components/input/SelectTextInputView.d.ts +44 -0
  60. package/dist/lib/components/input/SliderView.d.ts +15 -0
  61. package/dist/lib/components/input/TabView.d.ts +28 -0
  62. package/dist/lib/components/input/TagInputView.d.ts +10 -0
  63. package/dist/lib/components/input/TextInputView.d.ts +36 -0
  64. package/dist/lib/components/input/ThemeCardSelectorView.d.ts +18 -0
  65. package/dist/lib/components/input/ToggleSwitchView.d.ts +19 -0
  66. package/dist/lib/components/layout/BottomPanelView.d.ts +16 -0
  67. package/dist/lib/components/layout/CollapsibleSectionView.d.ts +14 -0
  68. package/dist/lib/components/layout/DebugView.d.ts +63 -0
  69. package/dist/lib/components/layout/FolderView.d.ts +85 -0
  70. package/dist/lib/components/layout/ResizablePanelView.d.ts +10 -0
  71. package/dist/lib/components/layout/SettingsNavView.d.ts +29 -0
  72. package/dist/lib/components/layout/SideNavView.d.ts +39 -0
  73. package/dist/lib/components/layout/SpacerView.d.ts +7 -0
  74. package/dist/lib/components/layout/SplitPanelView.d.ts +33 -0
  75. package/dist/lib/components/modal/ContextMenuView.d.ts +28 -0
  76. package/dist/lib/components/modal/InfoPopupView.d.ts +17 -0
  77. package/dist/lib/components/modal/ModalView.d.ts +41 -0
  78. package/dist/lib/components/rearrange/RearrangeView.d.ts +34 -0
  79. package/dist/lib/components/tabs/PilledTabView.d.ts +19 -0
  80. package/dist/lib/components/tabs/TabBarView.d.ts +28 -0
  81. package/dist/lib/components/tabs/TabView.d.ts +34 -0
  82. package/dist/lib/core/ButtonBase.d.ts +28 -0
  83. package/dist/lib/core/CardBase.d.ts +21 -0
  84. package/dist/lib/core/ChipBase.d.ts +21 -0
  85. package/dist/lib/core/DisplayBase.d.ts +21 -0
  86. package/dist/lib/core/DuiContext.d.ts +53 -0
  87. package/dist/lib/core/DuiTokens.d.ts +115 -0
  88. package/dist/lib/core/DuiTypes.d.ts +29 -0
  89. package/dist/lib/core/EditorBase.d.ts +13 -0
  90. package/dist/lib/core/InputBase.d.ts +25 -0
  91. package/dist/lib/core/MenuBase.d.ts +23 -0
  92. package/dist/lib/core/NavBase.d.ts +26 -0
  93. package/dist/lib/core/OverlayBase.d.ts +20 -0
  94. package/dist/lib/core/SelectBase.d.ts +22 -0
  95. package/dist/lib/core/TabBase.d.ts +25 -0
  96. package/dist/lib/core/TableBase.d.ts +19 -0
  97. package/dist/lib/core/ToggleBase.d.ts +19 -0
  98. package/dist/lib/core/index.d.ts +25 -0
  99. package/dist/lib/index.d.ts +159 -0
  100. package/dist/lib/monaco-runtime.d.ts +29 -0
  101. package/dist/lib/theme/core.d.ts +8 -0
  102. package/dist/lib/theme/editor.d.ts +11 -0
  103. package/dist/lib/theme/utils.d.ts +6 -0
  104. package/dist/monaco-setup.d.ts +4 -0
  105. package/dist/monaco-setup.js +883 -0
  106. package/dist/monaco-setup.js.map +1 -0
  107. package/dist/style.css +1 -0
  108. package/dist/style.js +2 -0
  109. package/dist/style.js.map +1 -0
  110. package/dist/theme/core.js +191 -0
  111. package/dist/theme/core.js.map +1 -0
  112. package/dist/theme/editor.js +104 -0
  113. package/dist/theme/editor.js.map +1 -0
  114. package/dist/theme/utils.js +67 -0
  115. package/dist/theme/utils.js.map +1 -0
  116. package/package.json +81 -0
@@ -0,0 +1,191 @@
1
+ const r = [
2
+ // brand
3
+ { group: "brand", key: "primary", cssVar: "--color-primary", comment: "Main accent" },
4
+ { group: "brand", key: "primary_hover", cssVar: "--color-primary-hover", comment: "Accent hover" },
5
+ { group: "brand", key: "primary_light", cssVar: "--color-primary-light", comment: "Accent light" },
6
+ { group: "brand", key: "primary_dark", cssVar: "--color-primary-dark", comment: "Accent dark" },
7
+ // surface
8
+ { group: "surface", key: "background", cssVar: "--color-surface", comment: "Main surface bg" },
9
+ { group: "surface", key: "hover", cssVar: "--color-surface-hover", comment: "Surface hover" },
10
+ { group: "surface", key: "active", cssVar: "--color-surface-active", comment: "Surface active" },
11
+ { group: "surface", key: "border", cssVar: "--color-surface-border", comment: "Surface border" },
12
+ { group: "surface", key: "bg", cssVar: "--color-surface-bg", comment: "Alt surface bg" },
13
+ // panel
14
+ { group: "panel", key: "background", cssVar: "--color-panel", comment: "Sidebar / panel bg" },
15
+ { group: "panel", key: "border", cssVar: "--color-panel-border", comment: "Panel border" },
16
+ // elevated
17
+ { group: "elevated", key: "background", cssVar: "--color-elevated", comment: "Card / modal bg" },
18
+ { group: "elevated", key: "border", cssVar: "--color-elevated-border", comment: "Card / modal border" },
19
+ // input
20
+ { group: "input", key: "background", cssVar: "--color-input-bg", comment: "Input bg" },
21
+ { group: "input", key: "border", cssVar: "--color-input-border", comment: "Input border" },
22
+ { group: "input", key: "hover", cssVar: "--color-input-hover", comment: "Input hover" },
23
+ { group: "input", key: "focus", cssVar: "--color-input-focus", comment: "Input focus bg" },
24
+ // interactive
25
+ { group: "interactive", key: "icon_hover_bg", cssVar: "--color-icon-hover-bg", comment: "Icon hover bg" },
26
+ { group: "interactive", key: "item_hover_bg", cssVar: "--color-item-hover-bg", comment: "List item hover" },
27
+ // text
28
+ { group: "text", key: "primary", cssVar: "--color-text-primary", comment: "Primary text" },
29
+ { group: "text", key: "secondary", cssVar: "--color-text-secondary", comment: "Secondary text" },
30
+ { group: "text", key: "muted", cssVar: "--color-text-muted", comment: "Muted / placeholder" },
31
+ // status
32
+ { group: "status", key: "success", cssVar: "--color-success", comment: "Success green" },
33
+ { group: "status", key: "warning", cssVar: "--color-warning", comment: "Warning amber" },
34
+ { group: "status", key: "error", cssVar: "--color-error", comment: "Error red" },
35
+ { group: "status", key: "info", cssVar: "--color-info", comment: "Info blue" },
36
+ // http_methods
37
+ { group: "http_methods", key: "get", cssVar: "--color-method-get", comment: "GET" },
38
+ { group: "http_methods", key: "post", cssVar: "--color-method-post", comment: "POST" },
39
+ { group: "http_methods", key: "put", cssVar: "--color-method-put", comment: "PUT" },
40
+ { group: "http_methods", key: "patch", cssVar: "--color-method-patch", comment: "PATCH" },
41
+ { group: "http_methods", key: "delete", cssVar: "--color-method-delete", comment: "DELETE" },
42
+ { group: "http_methods", key: "head", cssVar: "--color-method-head", comment: "HEAD" },
43
+ { group: "http_methods", key: "options", cssVar: "--color-method-options", comment: "OPTIONS" },
44
+ // sidebar
45
+ { group: "sidebar", key: "collections", cssVar: "--color-sidebar-collections", comment: "Collections tab" },
46
+ { group: "sidebar", key: "history", cssVar: "--color-sidebar-history", comment: "History tab" },
47
+ { group: "sidebar", key: "environments", cssVar: "--color-sidebar-environments", comment: "Environments tab" },
48
+ // protocols
49
+ { group: "protocols", key: "rest", cssVar: "--color-protocol-rest", comment: "REST" },
50
+ { group: "protocols", key: "graphql", cssVar: "--color-protocol-graphql", comment: "GraphQL" },
51
+ { group: "protocols", key: "websocket", cssVar: "--color-protocol-websocket", comment: "WebSocket" },
52
+ { group: "protocols", key: "sse", cssVar: "--color-protocol-sse", comment: "SSE" },
53
+ { group: "protocols", key: "socketio", cssVar: "--color-protocol-socketio", comment: "Socket.IO" },
54
+ { group: "protocols", key: "mqtt", cssVar: "--color-protocol-mqtt", comment: "MQTT" },
55
+ { group: "protocols", key: "grpc", cssVar: "--color-protocol-grpc", comment: "gRPC" },
56
+ { group: "protocols", key: "soap", cssVar: "--color-protocol-soap", comment: "SOAP" },
57
+ { group: "protocols", key: "ai", cssVar: "--color-protocol-ai", comment: "AI" },
58
+ { group: "protocols", key: "mcp", cssVar: "--color-protocol-mcp", comment: "MCP" },
59
+ // mock_server
60
+ { group: "mock_server", key: "accent", cssVar: "--color-mock-server", comment: "Mock server accent" },
61
+ { group: "mock_server", key: "muted", cssVar: "--color-mock-server-muted", comment: "Mock server muted" },
62
+ { group: "mock_server", key: "try_button", cssVar: "--color-try-button", comment: "Try button" },
63
+ // settings
64
+ { group: "settings", key: "accent", cssVar: "--color-settings", comment: "Settings accent" },
65
+ // response_time
66
+ { group: "response_time", key: "fast", cssVar: "--color-time-fast", comment: "< 200 ms" },
67
+ { group: "response_time", key: "moderate", cssVar: "--color-time-moderate", comment: "200–1000 ms" },
68
+ { group: "response_time", key: "slow", cssVar: "--color-time-slow", comment: "1–3 s" },
69
+ { group: "response_time", key: "critical", cssVar: "--color-time-critical", comment: "> 3 s" },
70
+ // misc
71
+ { group: "misc", key: "muted", cssVar: "--color-muted", comment: "General muted" },
72
+ { group: "misc", key: "muted_fallback", cssVar: "--color-muted-fallback", comment: "Muted fallback" },
73
+ { group: "misc", key: "status_5xx", cssVar: "--color-status-5xx", comment: "5xx error" },
74
+ // context_menu
75
+ { group: "context_menu", key: "rename", cssVar: "--color-ctx-rename", comment: "Rename action" },
76
+ { group: "context_menu", key: "duplicate", cssVar: "--color-ctx-duplicate", comment: "Duplicate action" },
77
+ { group: "context_menu", key: "pin", cssVar: "--color-ctx-pin", comment: "Pin action" },
78
+ { group: "context_menu", key: "close", cssVar: "--color-ctx-close", comment: "Close action" },
79
+ { group: "context_menu", key: "close_batch", cssVar: "--color-ctx-close-batch", comment: "Close others" },
80
+ { group: "context_menu", key: "close_saved", cssVar: "--color-ctx-close-saved", comment: "Close saved" },
81
+ { group: "context_menu", key: "close_all", cssVar: "--color-ctx-close-all", comment: "Close all" },
82
+ // component — button
83
+ { group: "component_button", key: "primary_bg", cssVar: "--color-btn-primary-bg", comment: "Primary button background" },
84
+ { group: "component_button", key: "primary_hover", cssVar: "--color-btn-primary-hover", comment: "Primary button hover background" },
85
+ { group: "component_button", key: "secondary_bg", cssVar: "--color-btn-secondary-bg", comment: "Secondary button background" },
86
+ { group: "component_button", key: "secondary_hover", cssVar: "--color-btn-secondary-hover", comment: "Secondary button hover background" },
87
+ { group: "component_button", key: "secondary_border", cssVar: "--color-btn-secondary-border", comment: "Secondary button border" },
88
+ { group: "component_button", key: "ghost_hover", cssVar: "--color-btn-ghost-hover", comment: "Ghost button hover background" },
89
+ { group: "component_button", key: "danger_bg", cssVar: "--color-btn-danger-bg", comment: "Danger button background" },
90
+ // component — sidenav
91
+ { group: "component_sidenav", key: "item_hover", cssVar: "--color-sidenav-item-hover", comment: "Nav item hover background" },
92
+ { group: "component_sidenav", key: "active_bg", cssVar: "--color-sidenav-active-bg", comment: "Active nav item background" },
93
+ { group: "component_sidenav", key: "active_text", cssVar: "--color-sidenav-active-text", comment: "Active nav item text" },
94
+ { group: "component_sidenav", key: "hover_bg", cssVar: "--color-sidenav-hover-bg", comment: "Nav item hover background" },
95
+ // component — toggle
96
+ { group: "component_toggle", key: "track_on", cssVar: "--color-toggle-on", comment: "Toggle track color when enabled" },
97
+ { group: "component_toggle", key: "thumb", cssVar: "--color-toggle-thumb", comment: "Toggle thumb / dot color" },
98
+ // component — prompt card
99
+ { group: "component_prompt_card", key: "avatar_bg", cssVar: "--color-promptcard-avatar-bg", comment: "Avatar background color" },
100
+ { group: "component_prompt_card", key: "avatar_text", cssVar: "--color-promptcard-avatar-text", comment: "Avatar text / icon color" },
101
+ { group: "component_prompt_card", key: "title_text", cssVar: "--color-promptcard-title", comment: "Card title text color" },
102
+ { group: "component_prompt_card", key: "body_text", cssVar: "--color-promptcard-body", comment: "Body / description text color" },
103
+ { group: "component_prompt_card", key: "chip_color", cssVar: "--color-promptcard-chip", comment: "Protocol chip accent color" },
104
+ { group: "component_prompt_card", key: "badge_bg", cssVar: "--color-promptcard-badge-bg", comment: "CUSTOM badge background" },
105
+ { group: "component_prompt_card", key: "badge_text", cssVar: "--color-promptcard-badge-text", comment: "CUSTOM badge text color" },
106
+ { group: "component_prompt_card", key: "action_icon", cssVar: "--color-promptcard-action-icon", comment: "Use/Copy/Edit icon color" },
107
+ { group: "component_prompt_card", key: "delete_icon", cssVar: "--color-promptcard-delete-icon", comment: "Delete icon color" },
108
+ // component — var pill
109
+ { group: "component_var_pill", key: "background", cssVar: "--color-var-pill-bg", comment: "{{var}} token background" },
110
+ { group: "component_var_pill", key: "text", cssVar: "--color-var-pill-text", comment: "{{var}} token text color" },
111
+ { group: "component_var_pill", key: "border", cssVar: "--color-var-pill-border", comment: "{{var}} token border color" },
112
+ // component — tooltip
113
+ { group: "component_tooltip", key: "bg", cssVar: "--color-tooltip-bg", comment: "Tooltip background" },
114
+ { group: "component_tooltip", key: "text", cssVar: "--color-tooltip-text", comment: "Tooltip text" },
115
+ { group: "component_tooltip", key: "border", cssVar: "--color-tooltip-border", comment: "Tooltip border" },
116
+ // component — modal
117
+ { group: "component_modal", key: "backdrop", cssVar: "--color-modal-backdrop", comment: "Modal overlay background" },
118
+ { group: "component_modal", key: "header_tint", cssVar: "--color-modal-header-tint", comment: "Modal header tint" },
119
+ // component — tag_input
120
+ { group: "component_tag_input", key: "tag_bg", cssVar: "--color-tag-bg", comment: "Tag pill background" },
121
+ { group: "component_tag_input", key: "tag_text", cssVar: "--color-tag-text", comment: "Tag pill text" },
122
+ { group: "component_tag_input", key: "tag_border", cssVar: "--color-tag-border", comment: "Tag pill border" },
123
+ { group: "component_tag_input", key: "remove_hover", cssVar: "--color-tag-remove-hover", comment: "Tag × remove icon hover" },
124
+ // component — pill_tabs
125
+ { group: "component_pill_tabs", key: "track_bg", cssVar: "--color-pilltab-track-bg", comment: "PillTabs container background" },
126
+ { group: "component_pill_tabs", key: "indicator_bg", cssVar: "--color-pilltab-indicator-bg", comment: "Active tab indicator fill" },
127
+ { group: "component_pill_tabs", key: "indicator_border", cssVar: "--color-pilltab-indicator-border", comment: "Active tab indicator border" },
128
+ { group: "component_pill_tabs", key: "text_active", cssVar: "--color-pilltab-text-active", comment: "Active tab text" },
129
+ { group: "component_pill_tabs", key: "text_inactive", cssVar: "--color-pilltab-text-inactive", comment: "Inactive tab text" },
130
+ // component — duration_input
131
+ { group: "component_duration", key: "segment_bg", cssVar: "--color-dur-segment-bg", comment: "Unit segment background" },
132
+ { group: "component_duration", key: "segment_hover", cssVar: "--color-dur-segment-hover", comment: "Unit segment hover" },
133
+ { group: "component_duration", key: "segment_selected", cssVar: "--color-dur-segment-selected", comment: "Selected unit segment" },
134
+ // component — table
135
+ { group: "component_table", key: "stripe", cssVar: "--color-table-stripe", comment: "Alternating row stripe" },
136
+ { group: "component_table", key: "header_bg", cssVar: "--color-table-header-bg", comment: "Table header background" },
137
+ { group: "component_table", key: "border", cssVar: "--color-table-border", comment: "Table border / divider" },
138
+ // component — code_block
139
+ { group: "component_code_block", key: "bg", cssVar: "--color-codeblock-bg", comment: "Code block background" },
140
+ { group: "component_code_block", key: "header_bg", cssVar: "--color-codeblock-header-bg", comment: "Code block header bar" },
141
+ { group: "component_code_block", key: "border", cssVar: "--color-codeblock-border", comment: "Code block border" },
142
+ // component — resizable_panel
143
+ { group: "component_resizable", key: "grip", cssVar: "--color-resizable-grip", comment: "Resize handle color" },
144
+ { group: "component_resizable", key: "grip_hover", cssVar: "--color-resizable-grip-hover", comment: "Resize handle hover" },
145
+ // component — stage
146
+ { group: "component_stage", key: "check", cssVar: "--color-stage-check", comment: "Completed step color" },
147
+ { group: "component_stage", key: "spin", cssVar: "--color-stage-spin", comment: "Active step color" },
148
+ { group: "component_stage", key: "pulse", cssVar: "--color-stage-pulse", comment: "Pending step color" },
149
+ { group: "component_stage", key: "error", cssVar: "--color-stage-error", comment: "Error step color" },
150
+ // component — loader
151
+ { group: "component_loader", key: "accent", cssVar: "--color-loader-accent", comment: "Loader spinner / bar color" },
152
+ { group: "component_loader", key: "track", cssVar: "--color-loader-track", comment: "Loader track background" },
153
+ // component — chip
154
+ { group: "component_chip", key: "active_text", cssVar: "--color-chip-active-text", comment: "Active (filled) chip text color" },
155
+ // component — icon_button
156
+ { group: "component_icon_button", key: "bg_hover", cssVar: "--color-iconbtn-bg-hover", comment: "Icon button hover background" },
157
+ { group: "component_icon_button", key: "bg_active", cssVar: "--color-iconbtn-bg-active", comment: "Icon button active/pressed bg" },
158
+ { group: "component_icon_button", key: "border", cssVar: "--color-iconbtn-border", comment: "Icon button border (outline variant)" },
159
+ // component — stats_card
160
+ { group: "component_stats_card", key: "bg", cssVar: "--color-statscard-bg", comment: "Stats card background" },
161
+ { group: "component_stats_card", key: "border", cssVar: "--color-statscard-border", comment: "Stats card border" },
162
+ { group: "component_stats_card", key: "trend_up", cssVar: "--color-statscard-trend-up", comment: "Positive trend indicator" },
163
+ { group: "component_stats_card", key: "trend_down", cssVar: "--color-statscard-trend-down", comment: "Negative trend indicator" },
164
+ // component — empty_state
165
+ { group: "component_empty_state", key: "icon", cssVar: "--color-emptystate-icon", comment: "Empty state icon color" },
166
+ { group: "component_empty_state", key: "title", cssVar: "--color-emptystate-title", comment: "Empty state title text" },
167
+ { group: "component_empty_state", key: "desc", cssVar: "--color-emptystate-desc", comment: "Empty state description text" },
168
+ // component — ai_button
169
+ { group: "component_ai_button", key: "bg", cssVar: "--color-aibtn-bg", comment: "AI button background" },
170
+ { group: "component_ai_button", key: "border", cssVar: "--color-aibtn-border", comment: "AI button border" },
171
+ { group: "component_ai_button", key: "text", cssVar: "--color-aibtn-text", comment: "AI button text / icon color" },
172
+ { group: "component_ai_button", key: "bg_hover", cssVar: "--color-aibtn-bg-hover", comment: "AI button hover background" },
173
+ // component — prompt_library_avatars
174
+ { group: "component_prompt_avatar", key: "rest", cssVar: "--color-prompt-avatar-rest", comment: "REST agent avatar" },
175
+ { group: "component_prompt_avatar", key: "curl", cssVar: "--color-prompt-avatar-curl", comment: "cURL agent avatar" },
176
+ { group: "component_prompt_avatar", key: "mock", cssVar: "--color-prompt-avatar-mock", comment: "Mock agent avatar" },
177
+ { group: "component_prompt_avatar", key: "test", cssVar: "--color-prompt-avatar-test", comment: "Test agent avatar" },
178
+ { group: "component_prompt_avatar", key: "knowledge", cssVar: "--color-prompt-avatar-knowledge", comment: "Knowledge agent avatar" },
179
+ { group: "component_prompt_avatar", key: "ask", cssVar: "--color-prompt-avatar-ask", comment: "Ask agent avatar" },
180
+ { group: "component_prompt_avatar", key: "explain", cssVar: "--color-prompt-avatar-explain", comment: "Explain agent avatar" },
181
+ { group: "component_prompt_avatar", key: "followup", cssVar: "--color-prompt-avatar-followup", comment: "Follow-up agent avatar" },
182
+ { group: "component_prompt_avatar", key: "generate", cssVar: "--color-prompt-avatar-generate", comment: "Generate agent avatar" },
183
+ { group: "component_prompt_avatar", key: "suggest", cssVar: "--color-prompt-avatar-suggest", comment: "Suggest agent avatar" },
184
+ { group: "component_prompt_avatar", key: "headers", cssVar: "--color-prompt-avatar-headers", comment: "Headers agent avatar" },
185
+ { group: "component_prompt_avatar", key: "body", cssVar: "--color-prompt-avatar-body", comment: "Body agent avatar" }
186
+ ], e = [...new Set(r.map((o) => o.group))];
187
+ export {
188
+ e as GROUPS,
189
+ r as SCHEMA
190
+ };
191
+ //# sourceMappingURL=core.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.js","sources":["../../src/lib/theme/core.ts"],"sourcesContent":["export interface ThemeSchemaEntry {\n group: string;\n key: string;\n cssVar: string;\n comment: string;\n}\n\nexport const SCHEMA: ThemeSchemaEntry[] = [\n // brand\n { group: 'brand', key: 'primary', cssVar: '--color-primary', comment: 'Main accent' },\n { group: 'brand', key: 'primary_hover', cssVar: '--color-primary-hover', comment: 'Accent hover' },\n { group: 'brand', key: 'primary_light', cssVar: '--color-primary-light', comment: 'Accent light' },\n { group: 'brand', key: 'primary_dark', cssVar: '--color-primary-dark', comment: 'Accent dark' },\n // surface\n { group: 'surface', key: 'background', cssVar: '--color-surface', comment: 'Main surface bg' },\n { group: 'surface', key: 'hover', cssVar: '--color-surface-hover', comment: 'Surface hover' },\n { group: 'surface', key: 'active', cssVar: '--color-surface-active', comment: 'Surface active' },\n { group: 'surface', key: 'border', cssVar: '--color-surface-border', comment: 'Surface border' },\n { group: 'surface', key: 'bg', cssVar: '--color-surface-bg', comment: 'Alt surface bg' },\n // panel\n { group: 'panel', key: 'background', cssVar: '--color-panel', comment: 'Sidebar / panel bg' },\n { group: 'panel', key: 'border', cssVar: '--color-panel-border', comment: 'Panel border' },\n // elevated\n { group: 'elevated', key: 'background', cssVar: '--color-elevated', comment: 'Card / modal bg' },\n { group: 'elevated', key: 'border', cssVar: '--color-elevated-border', comment: 'Card / modal border' },\n // input\n { group: 'input', key: 'background', cssVar: '--color-input-bg', comment: 'Input bg' },\n { group: 'input', key: 'border', cssVar: '--color-input-border', comment: 'Input border' },\n { group: 'input', key: 'hover', cssVar: '--color-input-hover', comment: 'Input hover' },\n { group: 'input', key: 'focus', cssVar: '--color-input-focus', comment: 'Input focus bg' },\n // interactive\n { group: 'interactive', key: 'icon_hover_bg', cssVar: '--color-icon-hover-bg', comment: 'Icon hover bg' },\n { group: 'interactive', key: 'item_hover_bg', cssVar: '--color-item-hover-bg', comment: 'List item hover' },\n // text\n { group: 'text', key: 'primary', cssVar: '--color-text-primary', comment: 'Primary text' },\n { group: 'text', key: 'secondary', cssVar: '--color-text-secondary', comment: 'Secondary text' },\n { group: 'text', key: 'muted', cssVar: '--color-text-muted', comment: 'Muted / placeholder' },\n // status\n { group: 'status', key: 'success', cssVar: '--color-success', comment: 'Success green' },\n { group: 'status', key: 'warning', cssVar: '--color-warning', comment: 'Warning amber' },\n { group: 'status', key: 'error', cssVar: '--color-error', comment: 'Error red' },\n { group: 'status', key: 'info', cssVar: '--color-info', comment: 'Info blue' },\n // http_methods\n { group: 'http_methods', key: 'get', cssVar: '--color-method-get', comment: 'GET' },\n { group: 'http_methods', key: 'post', cssVar: '--color-method-post', comment: 'POST' },\n { group: 'http_methods', key: 'put', cssVar: '--color-method-put', comment: 'PUT' },\n { group: 'http_methods', key: 'patch', cssVar: '--color-method-patch', comment: 'PATCH' },\n { group: 'http_methods', key: 'delete', cssVar: '--color-method-delete', comment: 'DELETE' },\n { group: 'http_methods', key: 'head', cssVar: '--color-method-head', comment: 'HEAD' },\n { group: 'http_methods', key: 'options', cssVar: '--color-method-options', comment: 'OPTIONS' },\n // sidebar\n { group: 'sidebar', key: 'collections', cssVar: '--color-sidebar-collections', comment: 'Collections tab' },\n { group: 'sidebar', key: 'history', cssVar: '--color-sidebar-history', comment: 'History tab' },\n { group: 'sidebar', key: 'environments', cssVar: '--color-sidebar-environments', comment: 'Environments tab' },\n // protocols\n { group: 'protocols', key: 'rest', cssVar: '--color-protocol-rest', comment: 'REST' },\n { group: 'protocols', key: 'graphql', cssVar: '--color-protocol-graphql', comment: 'GraphQL' },\n { group: 'protocols', key: 'websocket', cssVar: '--color-protocol-websocket', comment: 'WebSocket' },\n { group: 'protocols', key: 'sse', cssVar: '--color-protocol-sse', comment: 'SSE' },\n { group: 'protocols', key: 'socketio', cssVar: '--color-protocol-socketio', comment: 'Socket.IO' },\n { group: 'protocols', key: 'mqtt', cssVar: '--color-protocol-mqtt', comment: 'MQTT' },\n { group: 'protocols', key: 'grpc', cssVar: '--color-protocol-grpc', comment: 'gRPC' },\n { group: 'protocols', key: 'soap', cssVar: '--color-protocol-soap', comment: 'SOAP' },\n { group: 'protocols', key: 'ai', cssVar: '--color-protocol-ai', comment: 'AI' },\n { group: 'protocols', key: 'mcp', cssVar: '--color-protocol-mcp', comment: 'MCP' },\n // mock_server\n { group: 'mock_server', key: 'accent', cssVar: '--color-mock-server', comment: 'Mock server accent' },\n { group: 'mock_server', key: 'muted', cssVar: '--color-mock-server-muted', comment: 'Mock server muted' },\n { group: 'mock_server', key: 'try_button', cssVar: '--color-try-button', comment: 'Try button' },\n // settings\n { group: 'settings', key: 'accent', cssVar: '--color-settings', comment: 'Settings accent' },\n // response_time\n { group: 'response_time', key: 'fast', cssVar: '--color-time-fast', comment: '< 200 ms' },\n { group: 'response_time', key: 'moderate', cssVar: '--color-time-moderate', comment: '200–1000 ms' },\n { group: 'response_time', key: 'slow', cssVar: '--color-time-slow', comment: '1–3 s' },\n { group: 'response_time', key: 'critical', cssVar: '--color-time-critical', comment: '> 3 s' },\n // misc\n { group: 'misc', key: 'muted', cssVar: '--color-muted', comment: 'General muted' },\n { group: 'misc', key: 'muted_fallback', cssVar: '--color-muted-fallback', comment: 'Muted fallback' },\n { group: 'misc', key: 'status_5xx', cssVar: '--color-status-5xx', comment: '5xx error' },\n // context_menu\n { group: 'context_menu', key: 'rename', cssVar: '--color-ctx-rename', comment: 'Rename action' },\n { group: 'context_menu', key: 'duplicate', cssVar: '--color-ctx-duplicate', comment: 'Duplicate action' },\n { group: 'context_menu', key: 'pin', cssVar: '--color-ctx-pin', comment: 'Pin action' },\n { group: 'context_menu', key: 'close', cssVar: '--color-ctx-close', comment: 'Close action' },\n { group: 'context_menu', key: 'close_batch', cssVar: '--color-ctx-close-batch', comment: 'Close others' },\n { group: 'context_menu', key: 'close_saved', cssVar: '--color-ctx-close-saved', comment: 'Close saved' },\n { group: 'context_menu', key: 'close_all', cssVar: '--color-ctx-close-all', comment: 'Close all' },\n // component — button\n { group: 'component_button', key: 'primary_bg', cssVar: '--color-btn-primary-bg', comment: 'Primary button background' },\n { group: 'component_button', key: 'primary_hover', cssVar: '--color-btn-primary-hover', comment: 'Primary button hover background' },\n { group: 'component_button', key: 'secondary_bg', cssVar: '--color-btn-secondary-bg', comment: 'Secondary button background' },\n { group: 'component_button', key: 'secondary_hover', cssVar: '--color-btn-secondary-hover', comment: 'Secondary button hover background' },\n { group: 'component_button', key: 'secondary_border', cssVar: '--color-btn-secondary-border', comment: 'Secondary button border' },\n { group: 'component_button', key: 'ghost_hover', cssVar: '--color-btn-ghost-hover', comment: 'Ghost button hover background' },\n { group: 'component_button', key: 'danger_bg', cssVar: '--color-btn-danger-bg', comment: 'Danger button background' },\n // component — sidenav\n { group: 'component_sidenav', key: 'item_hover', cssVar: '--color-sidenav-item-hover', comment: 'Nav item hover background' },\n { group: 'component_sidenav', key: 'active_bg', cssVar: '--color-sidenav-active-bg', comment: 'Active nav item background' },\n { group: 'component_sidenav', key: 'active_text', cssVar: '--color-sidenav-active-text', comment: 'Active nav item text' },\n { group: 'component_sidenav', key: 'hover_bg', cssVar: '--color-sidenav-hover-bg', comment: 'Nav item hover background' },\n // component — toggle\n { group: 'component_toggle', key: 'track_on', cssVar: '--color-toggle-on', comment: 'Toggle track color when enabled' },\n { group: 'component_toggle', key: 'thumb', cssVar: '--color-toggle-thumb', comment: 'Toggle thumb / dot color' },\n // component — prompt card\n { group: 'component_prompt_card', key: 'avatar_bg', cssVar: '--color-promptcard-avatar-bg', comment: 'Avatar background color' },\n { group: 'component_prompt_card', key: 'avatar_text', cssVar: '--color-promptcard-avatar-text', comment: 'Avatar text / icon color' },\n { group: 'component_prompt_card', key: 'title_text', cssVar: '--color-promptcard-title', comment: 'Card title text color' },\n { group: 'component_prompt_card', key: 'body_text', cssVar: '--color-promptcard-body', comment: 'Body / description text color' },\n { group: 'component_prompt_card', key: 'chip_color', cssVar: '--color-promptcard-chip', comment: 'Protocol chip accent color' },\n { group: 'component_prompt_card', key: 'badge_bg', cssVar: '--color-promptcard-badge-bg', comment: 'CUSTOM badge background' },\n { group: 'component_prompt_card', key: 'badge_text', cssVar: '--color-promptcard-badge-text', comment: 'CUSTOM badge text color' },\n { group: 'component_prompt_card', key: 'action_icon', cssVar: '--color-promptcard-action-icon', comment: 'Use/Copy/Edit icon color' },\n { group: 'component_prompt_card', key: 'delete_icon', cssVar: '--color-promptcard-delete-icon', comment: 'Delete icon color' },\n // component — var pill\n { group: 'component_var_pill', key: 'background', cssVar: '--color-var-pill-bg', comment: '{{var}} token background' },\n { group: 'component_var_pill', key: 'text', cssVar: '--color-var-pill-text', comment: '{{var}} token text color' },\n { group: 'component_var_pill', key: 'border', cssVar: '--color-var-pill-border', comment: '{{var}} token border color' },\n // component — tooltip\n { group: 'component_tooltip', key: 'bg', cssVar: '--color-tooltip-bg', comment: 'Tooltip background' },\n { group: 'component_tooltip', key: 'text', cssVar: '--color-tooltip-text', comment: 'Tooltip text' },\n { group: 'component_tooltip', key: 'border', cssVar: '--color-tooltip-border', comment: 'Tooltip border' },\n // component — modal\n { group: 'component_modal', key: 'backdrop', cssVar: '--color-modal-backdrop', comment: 'Modal overlay background' },\n { group: 'component_modal', key: 'header_tint', cssVar: '--color-modal-header-tint', comment: 'Modal header tint' },\n // component — tag_input\n { group: 'component_tag_input', key: 'tag_bg', cssVar: '--color-tag-bg', comment: 'Tag pill background' },\n { group: 'component_tag_input', key: 'tag_text', cssVar: '--color-tag-text', comment: 'Tag pill text' },\n { group: 'component_tag_input', key: 'tag_border', cssVar: '--color-tag-border', comment: 'Tag pill border' },\n { group: 'component_tag_input', key: 'remove_hover', cssVar: '--color-tag-remove-hover', comment: 'Tag × remove icon hover' },\n // component — pill_tabs\n { group: 'component_pill_tabs', key: 'track_bg', cssVar: '--color-pilltab-track-bg', comment: 'PillTabs container background' },\n { group: 'component_pill_tabs', key: 'indicator_bg', cssVar: '--color-pilltab-indicator-bg', comment: 'Active tab indicator fill' },\n { group: 'component_pill_tabs', key: 'indicator_border', cssVar: '--color-pilltab-indicator-border', comment: 'Active tab indicator border' },\n { group: 'component_pill_tabs', key: 'text_active', cssVar: '--color-pilltab-text-active', comment: 'Active tab text' },\n { group: 'component_pill_tabs', key: 'text_inactive', cssVar: '--color-pilltab-text-inactive', comment: 'Inactive tab text' },\n // component — duration_input\n { group: 'component_duration', key: 'segment_bg', cssVar: '--color-dur-segment-bg', comment: 'Unit segment background' },\n { group: 'component_duration', key: 'segment_hover', cssVar: '--color-dur-segment-hover', comment: 'Unit segment hover' },\n { group: 'component_duration', key: 'segment_selected', cssVar: '--color-dur-segment-selected', comment: 'Selected unit segment' },\n // component — table\n { group: 'component_table', key: 'stripe', cssVar: '--color-table-stripe', comment: 'Alternating row stripe' },\n { group: 'component_table', key: 'header_bg', cssVar: '--color-table-header-bg', comment: 'Table header background' },\n { group: 'component_table', key: 'border', cssVar: '--color-table-border', comment: 'Table border / divider' },\n // component — code_block\n { group: 'component_code_block', key: 'bg', cssVar: '--color-codeblock-bg', comment: 'Code block background' },\n { group: 'component_code_block', key: 'header_bg', cssVar: '--color-codeblock-header-bg', comment: 'Code block header bar' },\n { group: 'component_code_block', key: 'border', cssVar: '--color-codeblock-border', comment: 'Code block border' },\n // component — resizable_panel\n { group: 'component_resizable', key: 'grip', cssVar: '--color-resizable-grip', comment: 'Resize handle color' },\n { group: 'component_resizable', key: 'grip_hover', cssVar: '--color-resizable-grip-hover', comment: 'Resize handle hover' },\n // component — stage\n { group: 'component_stage', key: 'check', cssVar: '--color-stage-check', comment: 'Completed step color' },\n { group: 'component_stage', key: 'spin', cssVar: '--color-stage-spin', comment: 'Active step color' },\n { group: 'component_stage', key: 'pulse', cssVar: '--color-stage-pulse', comment: 'Pending step color' },\n { group: 'component_stage', key: 'error', cssVar: '--color-stage-error', comment: 'Error step color' },\n // component — loader\n { group: 'component_loader', key: 'accent', cssVar: '--color-loader-accent', comment: 'Loader spinner / bar color' },\n { group: 'component_loader', key: 'track', cssVar: '--color-loader-track', comment: 'Loader track background' },\n // component — chip\n { group: 'component_chip', key: 'active_text', cssVar: '--color-chip-active-text', comment: 'Active (filled) chip text color' },\n // component — icon_button\n { group: 'component_icon_button', key: 'bg_hover', cssVar: '--color-iconbtn-bg-hover', comment: 'Icon button hover background' },\n { group: 'component_icon_button', key: 'bg_active', cssVar: '--color-iconbtn-bg-active', comment: 'Icon button active/pressed bg' },\n { group: 'component_icon_button', key: 'border', cssVar: '--color-iconbtn-border', comment: 'Icon button border (outline variant)' },\n // component — stats_card\n { group: 'component_stats_card', key: 'bg', cssVar: '--color-statscard-bg', comment: 'Stats card background' },\n { group: 'component_stats_card', key: 'border', cssVar: '--color-statscard-border', comment: 'Stats card border' },\n { group: 'component_stats_card', key: 'trend_up', cssVar: '--color-statscard-trend-up', comment: 'Positive trend indicator' },\n { group: 'component_stats_card', key: 'trend_down', cssVar: '--color-statscard-trend-down', comment: 'Negative trend indicator' },\n // component — empty_state\n { group: 'component_empty_state', key: 'icon', cssVar: '--color-emptystate-icon', comment: 'Empty state icon color' },\n { group: 'component_empty_state', key: 'title', cssVar: '--color-emptystate-title', comment: 'Empty state title text' },\n { group: 'component_empty_state', key: 'desc', cssVar: '--color-emptystate-desc', comment: 'Empty state description text' },\n // component — ai_button\n { group: 'component_ai_button', key: 'bg', cssVar: '--color-aibtn-bg', comment: 'AI button background' },\n { group: 'component_ai_button', key: 'border', cssVar: '--color-aibtn-border', comment: 'AI button border' },\n { group: 'component_ai_button', key: 'text', cssVar: '--color-aibtn-text', comment: 'AI button text / icon color' },\n { group: 'component_ai_button', key: 'bg_hover', cssVar: '--color-aibtn-bg-hover', comment: 'AI button hover background' },\n // component — prompt_library_avatars\n { group: 'component_prompt_avatar', key: 'rest', cssVar: '--color-prompt-avatar-rest', comment: 'REST agent avatar' },\n { group: 'component_prompt_avatar', key: 'curl', cssVar: '--color-prompt-avatar-curl', comment: 'cURL agent avatar' },\n { group: 'component_prompt_avatar', key: 'mock', cssVar: '--color-prompt-avatar-mock', comment: 'Mock agent avatar' },\n { group: 'component_prompt_avatar', key: 'test', cssVar: '--color-prompt-avatar-test', comment: 'Test agent avatar' },\n { group: 'component_prompt_avatar', key: 'knowledge', cssVar: '--color-prompt-avatar-knowledge', comment: 'Knowledge agent avatar' },\n { group: 'component_prompt_avatar', key: 'ask', cssVar: '--color-prompt-avatar-ask', comment: 'Ask agent avatar' },\n { group: 'component_prompt_avatar', key: 'explain', cssVar: '--color-prompt-avatar-explain', comment: 'Explain agent avatar' },\n { group: 'component_prompt_avatar', key: 'followup', cssVar: '--color-prompt-avatar-followup', comment: 'Follow-up agent avatar' },\n { group: 'component_prompt_avatar', key: 'generate', cssVar: '--color-prompt-avatar-generate', comment: 'Generate agent avatar' },\n { group: 'component_prompt_avatar', key: 'suggest', cssVar: '--color-prompt-avatar-suggest', comment: 'Suggest agent avatar' },\n { group: 'component_prompt_avatar', key: 'headers', cssVar: '--color-prompt-avatar-headers', comment: 'Headers agent avatar' },\n { group: 'component_prompt_avatar', key: 'body', cssVar: '--color-prompt-avatar-body', comment: 'Body agent avatar' },\n];\n\nexport const GROUPS = [...new Set(SCHEMA.map(s => s.group))];\n"],"names":["SCHEMA","GROUPS","s"],"mappings":"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"}
@@ -0,0 +1,104 @@
1
+ import { jsxs as t, jsx as e } from "react/jsx-runtime";
2
+ import { useState as g } from "react";
3
+ import { toHexSafe as x } from "./utils.js";
4
+ import { f } from "../chunks/daakia-icons-DxWnX_IQ.js";
5
+ function m({ entry: a, currentValue: l, isOverridden: d, onApply: p, onReset: u, onClose: i }) {
6
+ const [o, c] = g(l), s = /^#[0-9a-fA-F]{6}$/.test(o.trim()), n = (r) => {
7
+ c(r), p(r);
8
+ };
9
+ return /* @__PURE__ */ t("div", { style: {
10
+ margin: "6px 0 4px",
11
+ padding: "10px 12px",
12
+ background: "var(--color-elevated)",
13
+ border: "1px solid var(--color-primary)",
14
+ borderRadius: "8px",
15
+ display: "flex",
16
+ flexDirection: "column",
17
+ gap: "8px"
18
+ }, children: [
19
+ /* @__PURE__ */ t("div", { style: { display: "flex", alignItems: "center", gap: "8px" }, children: [
20
+ /* @__PURE__ */ e("code", { style: { fontSize: 10, color: "var(--color-text-muted)", fontFamily: "monospace", flex: 1, minWidth: 0, overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" }, children: a.cssVar }),
21
+ /* @__PURE__ */ e("span", { style: { fontSize: 10, color: "var(--color-text-muted)" }, children: a.comment }),
22
+ /* @__PURE__ */ e(
23
+ "button",
24
+ {
25
+ type: "button",
26
+ onClick: i,
27
+ style: { width: 20, height: 20, display: "flex", alignItems: "center", justifyContent: "center", border: "none", background: "transparent", cursor: "pointer", color: "var(--color-text-muted)", borderRadius: 4, flexShrink: 0 },
28
+ onMouseEnter: (r) => {
29
+ r.currentTarget.style.color = "var(--color-text-primary)", r.currentTarget.style.background = "var(--color-surface-hover)";
30
+ },
31
+ onMouseLeave: (r) => {
32
+ r.currentTarget.style.color = "var(--color-text-muted)", r.currentTarget.style.background = "transparent";
33
+ },
34
+ children: /* @__PURE__ */ e(f, { size: 11 })
35
+ }
36
+ )
37
+ ] }),
38
+ /* @__PURE__ */ t("div", { style: { display: "flex", alignItems: "center", gap: "8px" }, children: [
39
+ /* @__PURE__ */ t("label", { style: { position: "relative", flexShrink: 0, cursor: "pointer" }, children: [
40
+ /* @__PURE__ */ e("div", { style: { width: 30, height: 30, borderRadius: 6, background: `var(${a.cssVar})`, border: "2px solid var(--color-surface-border)", boxShadow: "inset 0 0 0 1px rgba(0,0,0,0.15)" } }),
41
+ /* @__PURE__ */ e(
42
+ "input",
43
+ {
44
+ type: "color",
45
+ value: x(o),
46
+ onChange: (r) => n(r.target.value),
47
+ style: { position: "absolute", inset: 0, opacity: 0, width: "100%", height: "100%", cursor: "pointer", padding: 0, border: "none" }
48
+ }
49
+ )
50
+ ] }),
51
+ /* @__PURE__ */ e(
52
+ "input",
53
+ {
54
+ type: "text",
55
+ value: o,
56
+ onChange: (r) => c(r.target.value),
57
+ onKeyDown: (r) => {
58
+ r.key === "Enter" && n(o), r.key === "Escape" && i();
59
+ },
60
+ onBlur: () => {
61
+ o !== l && n(o);
62
+ },
63
+ placeholder: "e.g. #6366f1 or rgba(99,102,241,0.4)",
64
+ style: {
65
+ flex: 1,
66
+ height: 30,
67
+ padding: "0 10px",
68
+ borderRadius: 6,
69
+ background: "var(--color-input-bg)",
70
+ border: `1px solid ${s ? "var(--color-input-border)" : "var(--color-warning)"}`,
71
+ color: "var(--color-text-primary)",
72
+ fontSize: 11,
73
+ fontFamily: "Menlo, Monaco, monospace",
74
+ outline: "none"
75
+ },
76
+ onFocus: (r) => {
77
+ r.currentTarget.style.borderColor = "var(--color-primary)";
78
+ }
79
+ }
80
+ ),
81
+ d && /* @__PURE__ */ e(
82
+ "button",
83
+ {
84
+ type: "button",
85
+ onClick: u,
86
+ title: "Reset to built-in default",
87
+ style: { height: 30, padding: "0 10px", borderRadius: 6, border: "1px solid var(--color-surface-border)", background: "transparent", color: "var(--color-text-muted)", fontSize: 10, cursor: "pointer", flexShrink: 0, whiteSpace: "nowrap" },
88
+ onMouseEnter: (r) => {
89
+ r.currentTarget.style.color = "var(--color-error)", r.currentTarget.style.borderColor = "var(--color-error)";
90
+ },
91
+ onMouseLeave: (r) => {
92
+ r.currentTarget.style.color = "var(--color-text-muted)", r.currentTarget.style.borderColor = "var(--color-surface-border)";
93
+ },
94
+ children: "↺ Reset"
95
+ }
96
+ )
97
+ ] }),
98
+ o && !s && /* @__PURE__ */ e("div", { style: { fontSize: 10, color: "var(--color-warning)", lineHeight: 1.4 }, children: "Non-hex value (e.g. rgba, color-mix, var) — color picker shows approximate. Press Enter to apply." })
99
+ ] });
100
+ }
101
+ export {
102
+ m as ColorEditor
103
+ };
104
+ //# sourceMappingURL=editor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"editor.js","sources":["../../src/lib/theme/editor.tsx"],"sourcesContent":["import { useState } from 'react';\nimport { CloseIcon } from '../../icons';\nimport { toHexSafe } from './utils';\nimport type { ThemeSchemaEntry } from './core';\n\ninterface ColorEditorProps {\n entry: Pick<ThemeSchemaEntry, 'cssVar' | 'key' | 'comment'>;\n currentValue: string;\n isOverridden: boolean;\n onApply: (v: string) => void;\n onReset: () => void;\n onClose: () => void;\n}\n\nexport function ColorEditor({ entry, currentValue, isOverridden, onApply, onReset, onClose }: ColorEditorProps) {\n const [draft, setDraft] = useState(currentValue);\n const isHex = /^#[0-9a-fA-F]{6}$/.test(draft.trim());\n\n const commit = (v: string) => { setDraft(v); onApply(v); };\n\n return (\n <div style={{\n margin: '6px 0 4px', padding: '10px 12px',\n background: 'var(--color-elevated)',\n border: '1px solid var(--color-primary)',\n borderRadius: '8px',\n display: 'flex', flexDirection: 'column', gap: '8px',\n }}>\n {/* Header */}\n <div style={{ display: 'flex', alignItems: 'center', gap: '8px' }}>\n <code style={{ fontSize: 10, color: 'var(--color-text-muted)', fontFamily: 'monospace', flex: 1, minWidth: 0, overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap' }}>\n {entry.cssVar}\n </code>\n <span style={{ fontSize: 10, color: 'var(--color-text-muted)' }}>{entry.comment}</span>\n <button\n type=\"button\"\n onClick={onClose}\n style={{ width: 20, height: 20, display: 'flex', alignItems: 'center', justifyContent: 'center', border: 'none', background: 'transparent', cursor: 'pointer', color: 'var(--color-text-muted)', borderRadius: 4, flexShrink: 0 }}\n onMouseEnter={e => { (e.currentTarget as HTMLElement).style.color = 'var(--color-text-primary)'; (e.currentTarget as HTMLElement).style.background = 'var(--color-surface-hover)'; }}\n onMouseLeave={e => { (e.currentTarget as HTMLElement).style.color = 'var(--color-text-muted)'; (e.currentTarget as HTMLElement).style.background = 'transparent'; }}\n >\n <CloseIcon size={11} />\n </button>\n </div>\n\n {/* Picker row */}\n <div style={{ display: 'flex', alignItems: 'center', gap: '8px' }}>\n <label style={{ position: 'relative', flexShrink: 0, cursor: 'pointer' }}>\n <div style={{ width: 30, height: 30, borderRadius: 6, background: `var(${entry.cssVar})`, border: '2px solid var(--color-surface-border)', boxShadow: 'inset 0 0 0 1px rgba(0,0,0,0.15)' }} />\n <input\n type=\"color\"\n value={toHexSafe(draft)}\n onChange={e => commit(e.target.value)}\n style={{ position: 'absolute', inset: 0, opacity: 0, width: '100%', height: '100%', cursor: 'pointer', padding: 0, border: 'none' }}\n />\n </label>\n\n <input\n type=\"text\"\n value={draft}\n onChange={e => setDraft(e.target.value)}\n onKeyDown={e => { if (e.key === 'Enter') commit(draft); if (e.key === 'Escape') onClose(); }}\n onBlur={() => { if (draft !== currentValue) commit(draft); }}\n placeholder=\"e.g. #6366f1 or rgba(99,102,241,0.4)\"\n style={{\n flex: 1, height: 30, padding: '0 10px', borderRadius: 6,\n background: 'var(--color-input-bg)',\n border: `1px solid ${isHex ? 'var(--color-input-border)' : 'var(--color-warning)'}`,\n color: 'var(--color-text-primary)', fontSize: 11,\n fontFamily: 'Menlo, Monaco, monospace', outline: 'none',\n }}\n onFocus={e => { (e.currentTarget as HTMLInputElement).style.borderColor = 'var(--color-primary)'; }}\n />\n\n {isOverridden && (\n <button\n type=\"button\"\n onClick={onReset}\n title=\"Reset to built-in default\"\n style={{ height: 30, padding: '0 10px', borderRadius: 6, border: '1px solid var(--color-surface-border)', background: 'transparent', color: 'var(--color-text-muted)', fontSize: 10, cursor: 'pointer', flexShrink: 0, whiteSpace: 'nowrap' }}\n onMouseEnter={e => { (e.currentTarget as HTMLElement).style.color = 'var(--color-error)'; (e.currentTarget as HTMLElement).style.borderColor = 'var(--color-error)'; }}\n onMouseLeave={e => { (e.currentTarget as HTMLElement).style.color = 'var(--color-text-muted)'; (e.currentTarget as HTMLElement).style.borderColor = 'var(--color-surface-border)'; }}\n >\n ↺ Reset\n </button>\n )}\n </div>\n\n {draft && !isHex && (\n <div style={{ fontSize: 10, color: 'var(--color-warning)', lineHeight: 1.4 }}>\n Non-hex value (e.g. rgba, color-mix, var) — color picker shows approximate. Press Enter to apply.\n </div>\n )}\n </div>\n );\n}\n"],"names":["ColorEditor","entry","currentValue","isOverridden","onApply","onReset","onClose","draft","setDraft","useState","isHex","commit","v","jsxs","jsx","e","CloseIcon","toHexSafe"],"mappings":"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"}
@@ -0,0 +1,67 @@
1
+ import { SCHEMA as i } from "./core.js";
2
+ function y() {
3
+ const e = getComputedStyle(document.documentElement), t = [
4
+ "# Daakia Theme Configuration",
5
+ `# Exported: ${(/* @__PURE__ */ new Date()).toISOString()}`,
6
+ "# Edit color values and upload back to apply live — no rebuild needed.",
7
+ ""
8
+ ];
9
+ let n = "";
10
+ for (const o of i) {
11
+ o.group !== n && (n && t.push(""), t.push(`${o.group}:`), n = o.group);
12
+ const s = e.getPropertyValue(o.cssVar).trim() || "inherit";
13
+ t.push(` ${o.key}: "${s}" # ${o.comment} (${o.cssVar})`);
14
+ }
15
+ return t.push(""), t.join(`
16
+ `);
17
+ }
18
+ function g(e) {
19
+ const t = {};
20
+ let n = "";
21
+ for (const o of e.split(`
22
+ `)) {
23
+ const s = o.trimEnd();
24
+ if (!s || s.trim().startsWith("#")) continue;
25
+ const l = s.trimStart(), m = s.length - l.length, c = l.replace(/#.*$/, "").trimEnd();
26
+ if (m === 0)
27
+ c.endsWith(":") && !c.includes(": ") && (n = c.slice(0, -1).trim());
28
+ else if (m > 0 && n) {
29
+ const u = c.indexOf(":");
30
+ if (u > 0) {
31
+ const p = c.slice(0, u).trim();
32
+ let r = c.slice(u + 1).trim();
33
+ if (r.length >= 2 && (r[0] === '"' && r[r.length - 1] === '"' || r[0] === "'" && r[r.length - 1] === "'") && (r = r.slice(1, -1)), r) {
34
+ const a = i.find((f) => f.group === n && f.key === p);
35
+ a && (t[a.cssVar] = r);
36
+ }
37
+ }
38
+ }
39
+ }
40
+ return t;
41
+ }
42
+ function h(e) {
43
+ for (const [t, n] of Object.entries(e))
44
+ document.documentElement.style.setProperty(t, n);
45
+ }
46
+ function V() {
47
+ for (const e of i)
48
+ document.documentElement.style.removeProperty(e.cssVar);
49
+ }
50
+ function E() {
51
+ const e = getComputedStyle(document.documentElement), t = {};
52
+ for (const n of i)
53
+ t[n.cssVar] = e.getPropertyValue(n.cssVar).trim();
54
+ return t;
55
+ }
56
+ function $(e) {
57
+ return /^#[0-9a-fA-F]{6}$/.test(e.trim()) ? e.trim() : "#6366f1";
58
+ }
59
+ export {
60
+ h as applyThemeVars,
61
+ y as generateYaml,
62
+ g as parseThemeYaml,
63
+ E as readCurrentColors,
64
+ V as resetThemeVars,
65
+ $ as toHexSafe
66
+ };
67
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sources":["../../src/lib/theme/utils.ts"],"sourcesContent":["import { SCHEMA } from './core';\n\nexport function generateYaml(): string {\n const computed = getComputedStyle(document.documentElement);\n const lines = [\n '# Daakia Theme Configuration',\n `# Exported: ${new Date().toISOString()}`,\n '# Edit color values and upload back to apply live — no rebuild needed.',\n '',\n ];\n let currentGroup = '';\n for (const entry of SCHEMA) {\n if (entry.group !== currentGroup) {\n if (currentGroup) lines.push('');\n lines.push(`${entry.group}:`);\n currentGroup = entry.group;\n }\n const val = computed.getPropertyValue(entry.cssVar).trim() || 'inherit';\n lines.push(` ${entry.key}: \"${val}\" # ${entry.comment} (${entry.cssVar})`);\n }\n lines.push('');\n return lines.join('\\n');\n}\n\nexport function parseThemeYaml(text: string): Record<string, string> {\n const map: Record<string, string> = {};\n let currentGroup = '';\n for (const rawLine of text.split('\\n')) {\n const line = rawLine.trimEnd();\n if (!line || line.trim().startsWith('#')) continue;\n const stripped = line.trimStart();\n const indent = line.length - stripped.length;\n const content = stripped.replace(/#.*$/, '').trimEnd();\n if (indent === 0) {\n if (content.endsWith(':') && !content.includes(': ')) {\n currentGroup = content.slice(0, -1).trim();\n }\n } else if (indent > 0 && currentGroup) {\n const colonIdx = content.indexOf(':');\n if (colonIdx > 0) {\n const yamlKey = content.slice(0, colonIdx).trim();\n let value = content.slice(colonIdx + 1).trim();\n if (value.length >= 2 &&\n ((value[0] === '\"' && value[value.length - 1] === '\"') ||\n (value[0] === \"'\" && value[value.length - 1] === \"'\"))) {\n value = value.slice(1, -1);\n }\n if (value) {\n const entry = SCHEMA.find(s => s.group === currentGroup && s.key === yamlKey);\n if (entry) map[entry.cssVar] = value;\n }\n }\n }\n }\n return map;\n}\n\nexport function applyThemeVars(cssVarMap: Record<string, string>): void {\n for (const [cssVar, value] of Object.entries(cssVarMap)) {\n document.documentElement.style.setProperty(cssVar, value);\n }\n}\n\nexport function resetThemeVars(): void {\n for (const entry of SCHEMA) {\n document.documentElement.style.removeProperty(entry.cssVar);\n }\n}\n\nexport function readCurrentColors(): Record<string, string> {\n const computed = getComputedStyle(document.documentElement);\n const result: Record<string, string> = {};\n for (const entry of SCHEMA) {\n result[entry.cssVar] = computed.getPropertyValue(entry.cssVar).trim();\n }\n return result;\n}\n\nexport function toHexSafe(val: string): string {\n if (/^#[0-9a-fA-F]{6}$/.test(val.trim())) return val.trim();\n return '#6366f1';\n}\n"],"names":["generateYaml","computed","lines","currentGroup","entry","SCHEMA","val","parseThemeYaml","text","map","rawLine","line","stripped","indent","content","colonIdx","yamlKey","value","s","applyThemeVars","cssVarMap","cssVar","resetThemeVars","readCurrentColors","result","toHexSafe"],"mappings":";AAEO,SAASA,IAAuB;AACrC,QAAMC,IAAW,iBAAiB,SAAS,eAAe,GACpDC,IAAQ;AAAA,IACZ;AAAA,IACA,gBAAe,oBAAI,KAAA,GAAO,aAAa;AAAA,IACvC;AAAA,IACA;AAAA,EAAA;AAEF,MAAIC,IAAe;AACnB,aAAWC,KAASC,GAAQ;AAC1B,IAAID,EAAM,UAAUD,MACdA,KAAcD,EAAM,KAAK,EAAE,GAC/BA,EAAM,KAAK,GAAGE,EAAM,KAAK,GAAG,GAC5BD,IAAeC,EAAM;AAEvB,UAAME,IAAML,EAAS,iBAAiBG,EAAM,MAAM,EAAE,UAAU;AAC9D,IAAAF,EAAM,KAAK,KAAKE,EAAM,GAAG,MAAME,CAAG,QAAQF,EAAM,OAAO,MAAMA,EAAM,MAAM,GAAG;AAAA,EAC9E;AACA,SAAAF,EAAM,KAAK,EAAE,GACNA,EAAM,KAAK;AAAA,CAAI;AACxB;AAEO,SAASK,EAAeC,GAAsC;AACnE,QAAMC,IAA8B,CAAA;AACpC,MAAIN,IAAe;AACnB,aAAWO,KAAWF,EAAK,MAAM;AAAA,CAAI,GAAG;AACtC,UAAMG,IAAOD,EAAQ,QAAA;AACrB,QAAI,CAACC,KAAQA,EAAK,OAAO,WAAW,GAAG,EAAG;AAC1C,UAAMC,IAAWD,EAAK,UAAA,GAChBE,IAAWF,EAAK,SAASC,EAAS,QAClCE,IAAWF,EAAS,QAAQ,QAAQ,EAAE,EAAE,QAAA;AAC9C,QAAIC,MAAW;AACb,MAAIC,EAAQ,SAAS,GAAG,KAAK,CAACA,EAAQ,SAAS,IAAI,MACjDX,IAAeW,EAAQ,MAAM,GAAG,EAAE,EAAE,KAAA;AAAA,aAE7BD,IAAS,KAAKV,GAAc;AACrC,YAAMY,IAAWD,EAAQ,QAAQ,GAAG;AACpC,UAAIC,IAAW,GAAG;AAChB,cAAMC,IAAUF,EAAQ,MAAM,GAAGC,CAAQ,EAAE,KAAA;AAC3C,YAAIE,IAAYH,EAAQ,MAAMC,IAAW,CAAC,EAAE,KAAA;AAM5C,YALIE,EAAM,UAAU,MAChBA,EAAM,CAAC,MAAM,OAAOA,EAAMA,EAAM,SAAS,CAAC,MAAM,OAChDA,EAAM,CAAC,MAAM,OAAOA,EAAMA,EAAM,SAAS,CAAC,MAAM,SAClDA,IAAQA,EAAM,MAAM,GAAG,EAAE,IAEvBA,GAAO;AACT,gBAAMb,IAAQC,EAAO,KAAK,CAAAa,MAAKA,EAAE,UAAUf,KAAgBe,EAAE,QAAQF,CAAO;AAC5E,UAAIZ,MAAOK,EAAIL,EAAM,MAAM,IAAIa;AAAA,QACjC;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACA,SAAOR;AACT;AAEO,SAASU,EAAeC,GAAyC;AACtE,aAAW,CAACC,GAAQJ,CAAK,KAAK,OAAO,QAAQG,CAAS;AACpD,aAAS,gBAAgB,MAAM,YAAYC,GAAQJ,CAAK;AAE5D;AAEO,SAASK,IAAuB;AACrC,aAAWlB,KAASC;AAClB,aAAS,gBAAgB,MAAM,eAAeD,EAAM,MAAM;AAE9D;AAEO,SAASmB,IAA4C;AAC1D,QAAMtB,IAAW,iBAAiB,SAAS,eAAe,GACpDuB,IAAiC,CAAA;AACvC,aAAWpB,KAASC;AAClB,IAAAmB,EAAOpB,EAAM,MAAM,IAAIH,EAAS,iBAAiBG,EAAM,MAAM,EAAE,KAAA;AAEjE,SAAOoB;AACT;AAEO,SAASC,EAAUnB,GAAqB;AAC7C,SAAI,oBAAoB,KAAKA,EAAI,KAAA,CAAM,IAAUA,EAAI,KAAA,IAC9C;AACT;"}
package/package.json ADDED
@@ -0,0 +1,81 @@
1
+ {
2
+ "name": "@salilvnair/dui",
3
+ "version": "1.0.0",
4
+ "description": "Daakia UI component library — shared across ck8t and daakia",
5
+ "type": "module",
6
+ "license": "MIT",
7
+ "main": "./dist/index.js",
8
+ "module": "./dist/index.js",
9
+ "types": "./dist/index.d.ts",
10
+ "exports": {
11
+ ".": {
12
+ "types": "./dist/index.d.ts",
13
+ "import": "./dist/index.js"
14
+ },
15
+ "./monaco-setup": {
16
+ "types": "./dist/monaco-setup.d.ts",
17
+ "import": "./dist/monaco-setup.js"
18
+ },
19
+ "./style.css": "./dist/style.css",
20
+ "./theme/core": {
21
+ "types": "./dist/lib/theme/core.d.ts",
22
+ "import": "./dist/theme/core.js"
23
+ },
24
+ "./theme/utils": {
25
+ "types": "./dist/lib/theme/utils.d.ts",
26
+ "import": "./dist/theme/utils.js"
27
+ },
28
+ "./theme/editor": {
29
+ "types": "./dist/lib/theme/editor.d.ts",
30
+ "import": "./dist/theme/editor.js"
31
+ }
32
+ },
33
+ "files": [
34
+ "dist",
35
+ "README.md",
36
+ "LICENSE"
37
+ ],
38
+ "sideEffects": [
39
+ "**/*.css"
40
+ ],
41
+ "scripts": {
42
+ "dev": "vite",
43
+ "build": "vite build",
44
+ "build:lib": "vite build --config vite.publish.config.ts",
45
+ "prepublishOnly": "npm run build:lib",
46
+ "preview": "vite preview"
47
+ },
48
+ "dependencies": {
49
+ "highlight.js": "^11.10.0",
50
+ "marked": "^14.0.0"
51
+ },
52
+ "peerDependencies": {
53
+ "@monaco-editor/react": ">=4",
54
+ "monaco-editor": ">=0.50",
55
+ "react": ">=18",
56
+ "react-dom": ">=18",
57
+ "zustand": ">=4"
58
+ },
59
+ "peerDependenciesMeta": {
60
+ "@monaco-editor/react": {
61
+ "optional": true
62
+ },
63
+ "monaco-editor": {
64
+ "optional": true
65
+ }
66
+ },
67
+ "devDependencies": {
68
+ "@monaco-editor/react": "^4.7.0",
69
+ "@tailwindcss/vite": "^4.0.0",
70
+ "@types/node": "^26.1.0",
71
+ "@types/react": "^19.0.0",
72
+ "@types/react-dom": "^19.0.0",
73
+ "@vitejs/plugin-react": "^4.3.0",
74
+ "monaco-editor": "^0.55.1",
75
+ "sucrase": "^3.35.1",
76
+ "tailwindcss": "^4.0.0",
77
+ "typescript": "^5.7.0",
78
+ "vite": "^6.0.0",
79
+ "vite-plugin-dts": "^5.0.3"
80
+ }
81
+ }