keyframekit 1.0.7 → 1.0.9

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 (36) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +129 -126
  3. package/dist/KeyframeKit.d.ts +138 -138
  4. package/dist/KeyframeKit.js +293 -293
  5. package/docs/.vitepress/components/Playground/Playground.js +242 -242
  6. package/docs/.vitepress/components/Playground/Playground.vue +206 -206
  7. package/docs/.vitepress/components/Playground/defaultExample.js +175 -175
  8. package/docs/.vitepress/components/Playground/interFont.js +14 -14
  9. package/docs/.vitepress/components/Playground/themes/githubDark.js +401 -401
  10. package/docs/.vitepress/components/Playground/themes/githubLight.js +398 -398
  11. package/docs/.vitepress/components/Playground/themes.js +24 -24
  12. package/docs/.vitepress/config.ts +84 -69
  13. package/docs/.vitepress/referenceNavigation.ts +37 -37
  14. package/docs/.vitepress/theme/base-styles.css +100 -91
  15. package/docs/.vitepress/theme/env.d.ts +5 -5
  16. package/docs/.vitepress/theme/index.ts +39 -39
  17. package/docs/docs/index.md +142 -141
  18. package/docs/docs/public/playground/KeyframeKit/dist/KeyframeKit.d.ts +138 -138
  19. package/docs/docs/public/playground/KeyframeKit/dist/KeyframeKit.js +293 -293
  20. package/docs/docs/reference/_media/LICENSE +21 -21
  21. package/docs/docs/reference/classes/KeyframeEffectParameters.md +95 -95
  22. package/docs/docs/reference/classes/ParsedKeyframes.md +49 -49
  23. package/docs/docs/reference/index.md +20 -20
  24. package/docs/docs/reference/interfaces/KeyframesFactory.md +151 -151
  25. package/docs/docs/reference/navigation.json +63 -63
  26. package/docs/docs/reference/type-aliases/KeyframeArgument.md +9 -9
  27. package/docs/docs/reference/type-aliases/KeyframesFactorySource.md +9 -9
  28. package/docs/docs/reference/type-aliases/ParsedKeyframesRules.md +15 -15
  29. package/docs/docs/reference/variables/default.md +7 -7
  30. package/docs/package.json +25 -25
  31. package/docs/typedoc/plugin-param-names.js +51 -51
  32. package/docs/typedoc.json +62 -62
  33. package/package.json +37 -37
  34. package/src/KeyframeKit.ts +508 -508
  35. package/tsconfig.json +47 -47
  36. package/vercel.json +12 -12
@@ -1,402 +1,402 @@
1
- export default {
2
- base: 'vs-dark',
3
- inherit: true,
4
- rules: [
5
- // Comments
6
- { token: 'comment', foreground: '6a737d' },
7
- { token: 'comment.line', foreground: '6a737d' },
8
- { token: 'comment.block', foreground: '6a737d' },
9
- { token: 'comment.doc', foreground: '6a737d' },
10
-
11
- // Keywords & Storage (red/pink)
12
- { token: 'keyword', foreground: 'f97583' },
13
- { token: 'keyword.control', foreground: 'f97583' },
14
- { token: 'keyword.operator', foreground: 'f97583' },
15
- { token: 'keyword.other', foreground: 'f97583' },
16
- { token: 'storage', foreground: 'f97583' },
17
- { token: 'storage.type', foreground: 'f97583' },
18
- { token: 'storage.modifier', foreground: 'f97583' },
19
-
20
- // Types / Classes / Entities (purple)
21
- { token: 'entity.name', foreground: 'b392f0' },
22
- { token: 'entity.name.type', foreground: 'b392f0' },
23
- { token: 'entity.name.class', foreground: 'b392f0' },
24
- { token: 'entity.name.function', foreground: 'b392f0' },
25
- { token: 'entity.name.namespace', foreground: 'b392f0' },
26
- { token: 'entity.name.enum', foreground: 'b392f0' },
27
- { token: 'entity.name.module', foreground: 'b392f0' },
28
- { token: 'entity.other.inherited-class', foreground: 'b392f0' },
29
- { token: 'type', foreground: 'b392f0' },
30
- { token: 'type.identifier', foreground: 'b392f0' },
31
-
32
- // HTML/XML tags (green)
33
- { token: 'tag', foreground: '85e89d' },
34
- { token: 'tag.html', foreground: '85e89d' },
35
- { token: 'metatag', foreground: '85e89d' },
36
- { token: 'metatag.html', foreground: '85e89d' },
37
-
38
- // Tag attributes (light blue)
39
- { token: 'attribute.name', foreground: 'b392f0' },
40
- { token: 'attribute.value', foreground: '9ecbff' },
41
-
42
- // Constants & Numbers (light blue)
43
- { token: 'constant', foreground: '79b8ff' },
44
- { token: 'constant.language', foreground: '79b8ff' },
45
- { token: 'constant.numeric', foreground: '79b8ff' },
46
- { token: 'constant.character', foreground: '79b8ff' },
47
- { token: 'constant.other', foreground: '79b8ff' },
48
- { token: 'number', foreground: '79b8ff' },
49
- { token: 'number.float', foreground: '79b8ff' },
50
- { token: 'number.hex', foreground: '79b8ff' },
51
- { token: 'number.octal', foreground: '79b8ff' },
52
- { token: 'number.binary', foreground: '79b8ff' },
53
- { token: 'variable.language', foreground: '79b8ff' },
54
-
55
- // Strings (light blue-white)
56
- { token: 'string', foreground: '9ecbff' },
57
- { token: 'string.quoted', foreground: '9ecbff' },
58
- { token: 'string.template', foreground: '9ecbff' },
59
- { token: 'string.interpolated', foreground: '9ecbff' },
60
-
61
- // String escape sequences (green bold)
62
- { token: 'string.escape', foreground: '85e89d', fontStyle: 'bold' },
63
- { token: 'constant.character.escape', foreground: '85e89d', fontStyle: 'bold' },
64
-
65
- // Regex (lighter blue)
66
- { token: 'regexp', foreground: 'dbedff' },
67
- { token: 'regexp.escape', foreground: '85e89d', fontStyle: 'bold' },
68
-
69
- // Variables (orange)
70
- { token: 'variable', foreground: 'ffab70' },
71
- { token: 'variable.name', foreground: 'ffab70' },
72
- { token: 'variable.parameter', foreground: 'e1e4e8' },
73
- { token: 'variable.other', foreground: 'e1e4e8' },
74
- { token: 'identifier', foreground: 'e1e4e8' },
75
- { token: 'parameter', foreground: 'e1e4e8' },
76
-
77
- // Support / Built-ins (light blue)
78
- { token: 'support', foreground: '79b8ff' },
79
- { token: 'support.function', foreground: '79b8ff' },
80
- { token: 'support.class', foreground: '79b8ff' },
81
- { token: 'support.type', foreground: '79b8ff' },
82
- { token: 'support.constant', foreground: '79b8ff' },
83
- { token: 'support.variable', foreground: '79b8ff' },
84
-
85
- // Decorators / Annotations
86
- { token: 'annotation', foreground: 'b392f0' },
87
- { token: 'decorator', foreground: 'b392f0' },
88
-
89
- // Operators & Punctuation
90
- { token: 'operator', foreground: 'f97583' },
91
- { token: 'delimiter', foreground: 'e1e4e8' },
92
- { token: 'delimiter.bracket', foreground: 'e1e4e8' },
93
- { token: 'delimiter.parenthesis', foreground: 'e1e4e8' },
94
- { token: 'delimiter.square', foreground: 'e1e4e8' },
95
- { token: 'delimiter.curly', foreground: 'e1e4e8' },
96
-
97
- // CSS-specific
98
- { token: 'attribute.value.css', foreground: '9ecbff' },
99
- { token: 'attribute.value.number.css', foreground: '79b8ff' },
100
- { token: 'attribute.value.unit.css', foreground: '79b8ff' },
101
- { token: 'attribute.value.hex.css', foreground: '79b8ff' },
102
- { token: 'selector', foreground: 'b392f0' },
103
- { token: 'selector.tag', foreground: '85e89d' },
104
- { token: 'selector.class', foreground: 'b392f0' },
105
- { token: 'selector.id', foreground: 'b392f0' },
106
- { token: 'property', foreground: '79b8ff' },
107
- { token: 'value', foreground: 'ffab70' },
108
- { token: 'unit', foreground: '79b8ff' },
109
-
110
- // Markdown
111
- { token: 'markup.heading', foreground: '79b8ff', fontStyle: 'bold' },
112
- { token: 'markup.bold', foreground: 'e1e4e8', fontStyle: 'bold' },
113
- { token: 'markup.italic', foreground: 'e1e4e8', fontStyle: 'italic' },
114
- { token: 'markup.underline', fontStyle: 'underline' },
115
- { token: 'markup.strikethrough', fontStyle: 'strikethrough' },
116
- { token: 'markup.inline.raw', foreground: '79b8ff' },
117
- { token: 'markup.quote', foreground: '85e89d' },
118
- { token: 'markup.list', foreground: 'ffab70' },
119
- { token: 'markup.link', foreground: 'dbedff', fontStyle: 'underline' },
120
-
121
- // Diff
122
- { token: 'markup.inserted', foreground: '85e89d' },
123
- { token: 'markup.deleted', foreground: 'fdaeb7' },
124
- { token: 'markup.changed', foreground: 'ffab70' },
125
-
126
- // JSON
127
- { token: 'key', foreground: '79b8ff' },
128
-
129
- // Invalid
130
- { token: 'invalid', foreground: 'fdaeb7', fontStyle: 'italic' },
131
- { token: 'invalid.deprecated', foreground: 'fdaeb7', fontStyle: 'italic' },
132
-
133
- // Default / Plain text
134
- { token: '', foreground: 'e1e4e8' },
135
- ],
136
- colors: {
137
- // Editor core
138
- 'editor.foreground': '#e1e4e8',
139
- 'editor.background': '#24292e',
140
- 'editor.lineHighlightBackground': '#2b3036',
141
- 'editor.selectionBackground': '#3392FF44',
142
- 'editor.inactiveSelectionBackground': '#3392FF22',
143
- 'editor.selectionHighlightBackground': '#17E5E633',
144
- 'editor.selectionHighlightBorder': '#17E5E600',
145
- 'editor.findMatchBackground': '#ffd33d44',
146
- 'editor.findMatchHighlightBackground': '#ffd33d22',
147
- 'editor.wordHighlightBackground': '#17E5E600',
148
- 'editor.wordHighlightStrongBackground': '#17E5E600',
149
- 'editor.wordHighlightBorder': '#17E5E699',
150
- 'editor.wordHighlightStrongBorder': '#17E5E666',
151
-
152
- // Cursor & whitespace
153
- 'editorCursor.foreground': '#c8e1ff',
154
- 'editorWhitespace.foreground': '#444d56',
155
- 'editorIndentGuide.background': '#2f363d',
156
- 'editorIndentGuide.activeBackground': '#444d56',
157
-
158
- // Line numbers
159
- 'editorLineNumber.foreground': '#444d56',
160
- 'editorLineNumber.activeForeground': '#e1e4e8',
161
-
162
- // Bracket matching
163
- 'editorBracketMatch.background': '#17E5E650',
164
- 'editorBracketMatch.border': '#17E5E600',
165
-
166
- // Bracket pair colorization
167
- 'editorBracketHighlight.foreground1': '#79b8ff',
168
- 'editorBracketHighlight.foreground2': '#ffab70',
169
- 'editorBracketHighlight.foreground3': '#b392f0',
170
- 'editorBracketHighlight.foreground4': '#79b8ff',
171
- 'editorBracketHighlight.foreground5': '#ffab70',
172
- 'editorBracketHighlight.foreground6': '#b392f0',
173
-
174
- // Errors & warnings
175
- 'editorError.foreground': '#f97583',
176
- 'editorWarning.foreground': '#ffea7f',
177
-
178
- // Overview ruler
179
- 'editorOverviewRuler.border': '#1b1f23',
180
-
181
- // Gutter
182
- 'editorGutter.modifiedBackground': '#2188ff',
183
- 'editorGutter.addedBackground': '#28a745',
184
- 'editorGutter.deletedBackground': '#ea4a5a',
185
-
186
- // Diff editor
187
- 'diffEditor.insertedTextBackground': '#28a74530',
188
- 'diffEditor.removedTextBackground': '#d73a4930',
189
-
190
- // Widgets
191
- /*
192
- 'editorWidget.background': '#202127',
193
- 'editorSuggestWidget.background': '#202127',
194
- 'editorSuggestWidget.border': '#2e2e32',
195
- 'editorSuggestWidget.foreground': '#e1e4e8',
196
- 'editorSuggestWidget.selectedBackground': '#2b2f37',
197
- 'editorSuggestWidget.highlightForeground': '#79b8ff',
198
- 'editorSuggestWidget.focusHighlightForeground': '#79b8ff',
199
- 'editorHoverWidget.background': '#202127',
200
- 'editorHoverWidget.border': '#2e2e32',
201
- */
202
-
203
- // Peek view
204
- 'peekViewEditor.background': '#1f242888',
205
- 'peekViewEditor.matchHighlightBackground': '#ffd33d33',
206
- 'peekViewResult.background': '#1f2428',
207
- 'peekViewResult.matchHighlightBackground': '#ffd33d33',
208
-
209
- // Scrollbar
210
- 'scrollbar.shadow': '#0008',
211
- 'scrollbarSlider.background': '#6a737d33',
212
- 'scrollbarSlider.hoverBackground': '#6a737d44',
213
- 'scrollbarSlider.activeBackground': '#6a737d88',
214
-
215
- // Focus border
216
- 'focusBorder': '#005cc5',
217
- 'foreground': '#d1d5da',
218
-
219
- // Title bar
220
- 'titleBar.activeBackground': '#24292e',
221
- 'titleBar.activeForeground': '#e1e4e8',
222
- 'titleBar.inactiveBackground': '#1f2428',
223
- 'titleBar.inactiveForeground': '#959da5',
224
- 'titleBar.border': '#1b1f23',
225
-
226
- // Activity bar
227
- 'activityBar.background': '#24292e',
228
- 'activityBar.foreground': '#e1e4e8',
229
- 'activityBar.inactiveForeground': '#6a737d',
230
- 'activityBar.border': '#1b1f23',
231
- 'activityBar.activeBorder': '#f9826c',
232
- 'activityBarBadge.background': '#0366d6',
233
- 'activityBarBadge.foreground': '#fff',
234
-
235
- // Side bar
236
- 'sideBar.background': '#1f2428',
237
- 'sideBar.foreground': '#d1d5da',
238
- 'sideBar.border': '#1b1f23',
239
- 'sideBarTitle.foreground': '#e1e4e8',
240
- 'sideBarSectionHeader.background': '#1f2428',
241
- 'sideBarSectionHeader.foreground': '#e1e4e8',
242
- 'sideBarSectionHeader.border': '#1b1f23',
243
-
244
- // Lists
245
- 'list.hoverBackground': '#282e34',
246
- 'list.hoverForeground': '#e1e4e8',
247
- 'list.activeSelectionBackground': '#39414a',
248
- 'list.activeSelectionForeground': '#e1e4e8',
249
- 'list.inactiveSelectionBackground': '#282e34',
250
- 'list.inactiveSelectionForeground': '#e1e4e8',
251
- 'list.focusBackground': '#044289',
252
- 'list.inactiveFocusBackground': '#1d2d3e',
253
-
254
- // Tabs
255
- 'editorGroupHeader.tabsBackground': '#1f2428',
256
- 'editorGroupHeader.tabsBorder': '#1b1f23',
257
- 'editorGroup.border': '#1b1f23',
258
- 'tab.activeBackground': '#24292e',
259
- 'tab.activeForeground': '#e1e4e8',
260
- 'tab.activeBorder': '#24292e',
261
- 'tab.activeBorderTop': '#f9826c',
262
- 'tab.inactiveBackground': '#1f2428',
263
- 'tab.inactiveForeground': '#959da5',
264
- 'tab.border': '#1b1f23',
265
- 'tab.hoverBackground': '#24292e',
266
- 'tab.unfocusedActiveBorder': '#24292e',
267
- 'tab.unfocusedActiveBorderTop': '#1b1f23',
268
- 'tab.unfocusedHoverBackground': '#24292e',
269
-
270
- // Breadcrumb
271
- 'breadcrumb.foreground': '#959da5',
272
- 'breadcrumb.focusForeground': '#e1e4e8',
273
- 'breadcrumb.activeSelectionForeground': '#d1d5da',
274
- 'breadcrumbPicker.background': '#2b3036',
275
-
276
- // Status bar
277
- 'statusBar.background': '#24292e',
278
- 'statusBar.foreground': '#d1d5da',
279
- 'statusBar.border': '#1b1f23',
280
- 'statusBar.noFolderBackground': '#24292e',
281
- 'statusBar.debuggingBackground': '#931c06',
282
- 'statusBar.debuggingForeground': '#fff',
283
- 'statusBarItem.prominentBackground': '#282e34',
284
- 'statusBarItem.remoteForeground': '#d1d5da',
285
- 'statusBarItem.remoteBackground': '#24292e',
286
-
287
- // Panel (terminal etc)
288
- 'panel.background': '#1f2428',
289
- 'panel.border': '#1b1f23',
290
- 'panelTitle.activeBorder': '#f9826c',
291
- 'panelTitle.activeForeground': '#e1e4e8',
292
- 'panelTitle.inactiveForeground': '#959da5',
293
- 'panelInput.border': '#2f363d',
294
-
295
- // Terminal
296
- 'terminal.foreground': '#d1d5da',
297
- 'terminal.tab.activeBorder': '#f9826c',
298
- 'terminalCursor.background': '#586069',
299
- 'terminalCursor.foreground': '#79b8ff',
300
- 'terminal.ansiBlack': '#586069',
301
- 'terminal.ansiRed': '#ea4a5a',
302
- 'terminal.ansiGreen': '#34d058',
303
- 'terminal.ansiYellow': '#ffea7f',
304
- 'terminal.ansiBlue': '#2188ff',
305
- 'terminal.ansiMagenta': '#b392f0',
306
- 'terminal.ansiCyan': '#39c5cf',
307
- 'terminal.ansiWhite': '#d1d5da',
308
- 'terminal.ansiBrightBlack': '#959da5',
309
- 'terminal.ansiBrightRed': '#f97583',
310
- 'terminal.ansiBrightGreen': '#85e89d',
311
- 'terminal.ansiBrightYellow': '#ffea7f',
312
- 'terminal.ansiBrightBlue': '#79b8ff',
313
- 'terminal.ansiBrightMagenta': '#b392f0',
314
- 'terminal.ansiBrightCyan': '#56d4dd',
315
- 'terminal.ansiBrightWhite': '#fafbfc',
316
-
317
- // Input
318
- 'input.background': '#2f363d',
319
- 'input.border': '#1b1f23',
320
- 'input.foreground': '#e1e4e8',
321
- 'input.placeholderForeground': '#959da5',
322
-
323
- // Dropdown
324
- 'dropdown.background': '#2f363d',
325
- 'dropdown.border': '#1b1f23',
326
- 'dropdown.foreground': '#e1e4e8',
327
- 'dropdown.listBackground': '#24292e',
328
-
329
- // Button
330
- 'button.background': '#176f2c',
331
- 'button.foreground': '#dcffe4',
332
- 'button.hoverBackground': '#22863a',
333
- 'button.secondaryBackground': '#444d56',
334
- 'button.secondaryForeground': '#fff',
335
- 'button.secondaryHoverBackground': '#586069',
336
-
337
- // Badge
338
- 'badge.background': '#044289',
339
- 'badge.foreground': '#c8e1ff',
340
-
341
- // Checkbox
342
- 'checkbox.background': '#444d56',
343
- 'checkbox.border': '#1b1f23',
344
-
345
- // Progress bar
346
- 'progressBar.background': '#0366d6',
347
-
348
- // Notifications
349
- 'notificationCenterHeader.background': '#24292e',
350
- 'notificationCenterHeader.foreground': '#959da5',
351
- 'notifications.background': '#2f363d',
352
- 'notifications.foreground': '#e1e4e8',
353
- 'notifications.border': '#1b1f23',
354
- 'notificationsErrorIcon.foreground': '#ea4a5a',
355
- 'notificationsWarningIcon.foreground': '#ffab70',
356
- 'notificationsInfoIcon.foreground': '#79b8ff',
357
-
358
- // Quick input
359
- 'quickInput.background': '#24292e',
360
- 'quickInput.foreground': '#e1e4e8',
361
-
362
- // Picker
363
- 'pickerGroup.border': '#444d56',
364
- 'pickerGroup.foreground': '#e1e4e8',
365
-
366
- // Git decorations
367
- 'gitDecoration.addedResourceForeground': '#34d058',
368
- 'gitDecoration.modifiedResourceForeground': '#79b8ff',
369
- 'gitDecoration.deletedResourceForeground': '#ea4a5a',
370
- 'gitDecoration.untrackedResourceForeground': '#34d058',
371
- 'gitDecoration.ignoredResourceForeground': '#6a737d',
372
- 'gitDecoration.conflictingResourceForeground': '#ffab70',
373
- 'gitDecoration.submoduleResourceForeground': '#6a737d',
374
-
375
- // Debug
376
- 'debugToolBar.background': '#2b3036',
377
- 'editor.stackFrameHighlightBackground': '#C6902625',
378
- 'editor.focusedStackFrameHighlightBackground': '#2b6a3033',
379
-
380
- // Settings
381
- 'settings.headerForeground': '#e1e4e8',
382
- 'settings.modifiedItemIndicator': '#0366d6',
383
-
384
- // Welcome
385
- 'welcomePage.buttonBackground': '#2f363d',
386
- 'welcomePage.buttonHoverBackground': '#444d56',
387
-
388
- // Text
389
- /* 'textLink.foreground': '#79b8ff',
390
- 'textLink.activeForeground': '#c8e1ff', */
391
- 'textBlockQuote.background': '#24292e',
392
- 'textBlockQuote.border': '#444d56',
393
- 'textCodeBlock.background': '#2f363d',
394
- 'textPreformat.foreground': '#d1d5da',
395
- 'textSeparator.foreground': '#586069',
396
- 'descriptionForeground': '#959da5',
397
- 'errorForeground': '#f97583',
398
-
399
- // Tree
400
- 'tree.indentGuidesStroke': '#2f363d',
401
- }
1
+ export default {
2
+ base: 'vs-dark',
3
+ inherit: true,
4
+ rules: [
5
+ // Comments
6
+ { token: 'comment', foreground: '6a737d' },
7
+ { token: 'comment.line', foreground: '6a737d' },
8
+ { token: 'comment.block', foreground: '6a737d' },
9
+ { token: 'comment.doc', foreground: '6a737d' },
10
+
11
+ // Keywords & Storage (red/pink)
12
+ { token: 'keyword', foreground: 'f97583' },
13
+ { token: 'keyword.control', foreground: 'f97583' },
14
+ { token: 'keyword.operator', foreground: 'f97583' },
15
+ { token: 'keyword.other', foreground: 'f97583' },
16
+ { token: 'storage', foreground: 'f97583' },
17
+ { token: 'storage.type', foreground: 'f97583' },
18
+ { token: 'storage.modifier', foreground: 'f97583' },
19
+
20
+ // Types / Classes / Entities (purple)
21
+ { token: 'entity.name', foreground: 'b392f0' },
22
+ { token: 'entity.name.type', foreground: 'b392f0' },
23
+ { token: 'entity.name.class', foreground: 'b392f0' },
24
+ { token: 'entity.name.function', foreground: 'b392f0' },
25
+ { token: 'entity.name.namespace', foreground: 'b392f0' },
26
+ { token: 'entity.name.enum', foreground: 'b392f0' },
27
+ { token: 'entity.name.module', foreground: 'b392f0' },
28
+ { token: 'entity.other.inherited-class', foreground: 'b392f0' },
29
+ { token: 'type', foreground: 'b392f0' },
30
+ { token: 'type.identifier', foreground: 'b392f0' },
31
+
32
+ // HTML/XML tags (green)
33
+ { token: 'tag', foreground: '85e89d' },
34
+ { token: 'tag.html', foreground: '85e89d' },
35
+ { token: 'metatag', foreground: '85e89d' },
36
+ { token: 'metatag.html', foreground: '85e89d' },
37
+
38
+ // Tag attributes (light blue)
39
+ { token: 'attribute.name', foreground: 'b392f0' },
40
+ { token: 'attribute.value', foreground: '9ecbff' },
41
+
42
+ // Constants & Numbers (light blue)
43
+ { token: 'constant', foreground: '79b8ff' },
44
+ { token: 'constant.language', foreground: '79b8ff' },
45
+ { token: 'constant.numeric', foreground: '79b8ff' },
46
+ { token: 'constant.character', foreground: '79b8ff' },
47
+ { token: 'constant.other', foreground: '79b8ff' },
48
+ { token: 'number', foreground: '79b8ff' },
49
+ { token: 'number.float', foreground: '79b8ff' },
50
+ { token: 'number.hex', foreground: '79b8ff' },
51
+ { token: 'number.octal', foreground: '79b8ff' },
52
+ { token: 'number.binary', foreground: '79b8ff' },
53
+ { token: 'variable.language', foreground: '79b8ff' },
54
+
55
+ // Strings (light blue-white)
56
+ { token: 'string', foreground: '9ecbff' },
57
+ { token: 'string.quoted', foreground: '9ecbff' },
58
+ { token: 'string.template', foreground: '9ecbff' },
59
+ { token: 'string.interpolated', foreground: '9ecbff' },
60
+
61
+ // String escape sequences (green bold)
62
+ { token: 'string.escape', foreground: '85e89d', fontStyle: 'bold' },
63
+ { token: 'constant.character.escape', foreground: '85e89d', fontStyle: 'bold' },
64
+
65
+ // Regex (lighter blue)
66
+ { token: 'regexp', foreground: 'dbedff' },
67
+ { token: 'regexp.escape', foreground: '85e89d', fontStyle: 'bold' },
68
+
69
+ // Variables (orange)
70
+ { token: 'variable', foreground: 'ffab70' },
71
+ { token: 'variable.name', foreground: 'ffab70' },
72
+ { token: 'variable.parameter', foreground: 'e1e4e8' },
73
+ { token: 'variable.other', foreground: 'e1e4e8' },
74
+ { token: 'identifier', foreground: 'e1e4e8' },
75
+ { token: 'parameter', foreground: 'e1e4e8' },
76
+
77
+ // Support / Built-ins (light blue)
78
+ { token: 'support', foreground: '79b8ff' },
79
+ { token: 'support.function', foreground: '79b8ff' },
80
+ { token: 'support.class', foreground: '79b8ff' },
81
+ { token: 'support.type', foreground: '79b8ff' },
82
+ { token: 'support.constant', foreground: '79b8ff' },
83
+ { token: 'support.variable', foreground: '79b8ff' },
84
+
85
+ // Decorators / Annotations
86
+ { token: 'annotation', foreground: 'b392f0' },
87
+ { token: 'decorator', foreground: 'b392f0' },
88
+
89
+ // Operators & Punctuation
90
+ { token: 'operator', foreground: 'f97583' },
91
+ { token: 'delimiter', foreground: 'e1e4e8' },
92
+ { token: 'delimiter.bracket', foreground: 'e1e4e8' },
93
+ { token: 'delimiter.parenthesis', foreground: 'e1e4e8' },
94
+ { token: 'delimiter.square', foreground: 'e1e4e8' },
95
+ { token: 'delimiter.curly', foreground: 'e1e4e8' },
96
+
97
+ // CSS-specific
98
+ { token: 'attribute.value.css', foreground: '9ecbff' },
99
+ { token: 'attribute.value.number.css', foreground: '79b8ff' },
100
+ { token: 'attribute.value.unit.css', foreground: '79b8ff' },
101
+ { token: 'attribute.value.hex.css', foreground: '79b8ff' },
102
+ { token: 'selector', foreground: 'b392f0' },
103
+ { token: 'selector.tag', foreground: '85e89d' },
104
+ { token: 'selector.class', foreground: 'b392f0' },
105
+ { token: 'selector.id', foreground: 'b392f0' },
106
+ { token: 'property', foreground: '79b8ff' },
107
+ { token: 'value', foreground: 'ffab70' },
108
+ { token: 'unit', foreground: '79b8ff' },
109
+
110
+ // Markdown
111
+ { token: 'markup.heading', foreground: '79b8ff', fontStyle: 'bold' },
112
+ { token: 'markup.bold', foreground: 'e1e4e8', fontStyle: 'bold' },
113
+ { token: 'markup.italic', foreground: 'e1e4e8', fontStyle: 'italic' },
114
+ { token: 'markup.underline', fontStyle: 'underline' },
115
+ { token: 'markup.strikethrough', fontStyle: 'strikethrough' },
116
+ { token: 'markup.inline.raw', foreground: '79b8ff' },
117
+ { token: 'markup.quote', foreground: '85e89d' },
118
+ { token: 'markup.list', foreground: 'ffab70' },
119
+ { token: 'markup.link', foreground: 'dbedff', fontStyle: 'underline' },
120
+
121
+ // Diff
122
+ { token: 'markup.inserted', foreground: '85e89d' },
123
+ { token: 'markup.deleted', foreground: 'fdaeb7' },
124
+ { token: 'markup.changed', foreground: 'ffab70' },
125
+
126
+ // JSON
127
+ { token: 'key', foreground: '79b8ff' },
128
+
129
+ // Invalid
130
+ { token: 'invalid', foreground: 'fdaeb7', fontStyle: 'italic' },
131
+ { token: 'invalid.deprecated', foreground: 'fdaeb7', fontStyle: 'italic' },
132
+
133
+ // Default / Plain text
134
+ { token: '', foreground: 'e1e4e8' },
135
+ ],
136
+ colors: {
137
+ // Editor core
138
+ 'editor.foreground': '#e1e4e8',
139
+ 'editor.background': '#24292e',
140
+ 'editor.lineHighlightBackground': '#2b3036',
141
+ 'editor.selectionBackground': '#3392FF44',
142
+ 'editor.inactiveSelectionBackground': '#3392FF22',
143
+ 'editor.selectionHighlightBackground': '#17E5E633',
144
+ 'editor.selectionHighlightBorder': '#17E5E600',
145
+ 'editor.findMatchBackground': '#ffd33d44',
146
+ 'editor.findMatchHighlightBackground': '#ffd33d22',
147
+ 'editor.wordHighlightBackground': '#17E5E600',
148
+ 'editor.wordHighlightStrongBackground': '#17E5E600',
149
+ 'editor.wordHighlightBorder': '#17E5E699',
150
+ 'editor.wordHighlightStrongBorder': '#17E5E666',
151
+
152
+ // Cursor & whitespace
153
+ 'editorCursor.foreground': '#c8e1ff',
154
+ 'editorWhitespace.foreground': '#444d56',
155
+ 'editorIndentGuide.background': '#2f363d',
156
+ 'editorIndentGuide.activeBackground': '#444d56',
157
+
158
+ // Line numbers
159
+ 'editorLineNumber.foreground': '#444d56',
160
+ 'editorLineNumber.activeForeground': '#e1e4e8',
161
+
162
+ // Bracket matching
163
+ 'editorBracketMatch.background': '#17E5E650',
164
+ 'editorBracketMatch.border': '#17E5E600',
165
+
166
+ // Bracket pair colorization
167
+ 'editorBracketHighlight.foreground1': '#79b8ff',
168
+ 'editorBracketHighlight.foreground2': '#ffab70',
169
+ 'editorBracketHighlight.foreground3': '#b392f0',
170
+ 'editorBracketHighlight.foreground4': '#79b8ff',
171
+ 'editorBracketHighlight.foreground5': '#ffab70',
172
+ 'editorBracketHighlight.foreground6': '#b392f0',
173
+
174
+ // Errors & warnings
175
+ 'editorError.foreground': '#f97583',
176
+ 'editorWarning.foreground': '#ffea7f',
177
+
178
+ // Overview ruler
179
+ 'editorOverviewRuler.border': '#1b1f23',
180
+
181
+ // Gutter
182
+ 'editorGutter.modifiedBackground': '#2188ff',
183
+ 'editorGutter.addedBackground': '#28a745',
184
+ 'editorGutter.deletedBackground': '#ea4a5a',
185
+
186
+ // Diff editor
187
+ 'diffEditor.insertedTextBackground': '#28a74530',
188
+ 'diffEditor.removedTextBackground': '#d73a4930',
189
+
190
+ // Widgets
191
+ /*
192
+ 'editorWidget.background': '#202127',
193
+ 'editorSuggestWidget.background': '#202127',
194
+ 'editorSuggestWidget.border': '#2e2e32',
195
+ 'editorSuggestWidget.foreground': '#e1e4e8',
196
+ 'editorSuggestWidget.selectedBackground': '#2b2f37',
197
+ 'editorSuggestWidget.highlightForeground': '#79b8ff',
198
+ 'editorSuggestWidget.focusHighlightForeground': '#79b8ff',
199
+ 'editorHoverWidget.background': '#202127',
200
+ 'editorHoverWidget.border': '#2e2e32',
201
+ */
202
+
203
+ // Peek view
204
+ 'peekViewEditor.background': '#1f242888',
205
+ 'peekViewEditor.matchHighlightBackground': '#ffd33d33',
206
+ 'peekViewResult.background': '#1f2428',
207
+ 'peekViewResult.matchHighlightBackground': '#ffd33d33',
208
+
209
+ // Scrollbar
210
+ 'scrollbar.shadow': '#0008',
211
+ 'scrollbarSlider.background': '#6a737d33',
212
+ 'scrollbarSlider.hoverBackground': '#6a737d44',
213
+ 'scrollbarSlider.activeBackground': '#6a737d88',
214
+
215
+ // Focus border
216
+ 'focusBorder': '#005cc5',
217
+ 'foreground': '#d1d5da',
218
+
219
+ // Title bar
220
+ 'titleBar.activeBackground': '#24292e',
221
+ 'titleBar.activeForeground': '#e1e4e8',
222
+ 'titleBar.inactiveBackground': '#1f2428',
223
+ 'titleBar.inactiveForeground': '#959da5',
224
+ 'titleBar.border': '#1b1f23',
225
+
226
+ // Activity bar
227
+ 'activityBar.background': '#24292e',
228
+ 'activityBar.foreground': '#e1e4e8',
229
+ 'activityBar.inactiveForeground': '#6a737d',
230
+ 'activityBar.border': '#1b1f23',
231
+ 'activityBar.activeBorder': '#f9826c',
232
+ 'activityBarBadge.background': '#0366d6',
233
+ 'activityBarBadge.foreground': '#fff',
234
+
235
+ // Side bar
236
+ 'sideBar.background': '#1f2428',
237
+ 'sideBar.foreground': '#d1d5da',
238
+ 'sideBar.border': '#1b1f23',
239
+ 'sideBarTitle.foreground': '#e1e4e8',
240
+ 'sideBarSectionHeader.background': '#1f2428',
241
+ 'sideBarSectionHeader.foreground': '#e1e4e8',
242
+ 'sideBarSectionHeader.border': '#1b1f23',
243
+
244
+ // Lists
245
+ 'list.hoverBackground': '#282e34',
246
+ 'list.hoverForeground': '#e1e4e8',
247
+ 'list.activeSelectionBackground': '#39414a',
248
+ 'list.activeSelectionForeground': '#e1e4e8',
249
+ 'list.inactiveSelectionBackground': '#282e34',
250
+ 'list.inactiveSelectionForeground': '#e1e4e8',
251
+ 'list.focusBackground': '#044289',
252
+ 'list.inactiveFocusBackground': '#1d2d3e',
253
+
254
+ // Tabs
255
+ 'editorGroupHeader.tabsBackground': '#1f2428',
256
+ 'editorGroupHeader.tabsBorder': '#1b1f23',
257
+ 'editorGroup.border': '#1b1f23',
258
+ 'tab.activeBackground': '#24292e',
259
+ 'tab.activeForeground': '#e1e4e8',
260
+ 'tab.activeBorder': '#24292e',
261
+ 'tab.activeBorderTop': '#f9826c',
262
+ 'tab.inactiveBackground': '#1f2428',
263
+ 'tab.inactiveForeground': '#959da5',
264
+ 'tab.border': '#1b1f23',
265
+ 'tab.hoverBackground': '#24292e',
266
+ 'tab.unfocusedActiveBorder': '#24292e',
267
+ 'tab.unfocusedActiveBorderTop': '#1b1f23',
268
+ 'tab.unfocusedHoverBackground': '#24292e',
269
+
270
+ // Breadcrumb
271
+ 'breadcrumb.foreground': '#959da5',
272
+ 'breadcrumb.focusForeground': '#e1e4e8',
273
+ 'breadcrumb.activeSelectionForeground': '#d1d5da',
274
+ 'breadcrumbPicker.background': '#2b3036',
275
+
276
+ // Status bar
277
+ 'statusBar.background': '#24292e',
278
+ 'statusBar.foreground': '#d1d5da',
279
+ 'statusBar.border': '#1b1f23',
280
+ 'statusBar.noFolderBackground': '#24292e',
281
+ 'statusBar.debuggingBackground': '#931c06',
282
+ 'statusBar.debuggingForeground': '#fff',
283
+ 'statusBarItem.prominentBackground': '#282e34',
284
+ 'statusBarItem.remoteForeground': '#d1d5da',
285
+ 'statusBarItem.remoteBackground': '#24292e',
286
+
287
+ // Panel (terminal etc)
288
+ 'panel.background': '#1f2428',
289
+ 'panel.border': '#1b1f23',
290
+ 'panelTitle.activeBorder': '#f9826c',
291
+ 'panelTitle.activeForeground': '#e1e4e8',
292
+ 'panelTitle.inactiveForeground': '#959da5',
293
+ 'panelInput.border': '#2f363d',
294
+
295
+ // Terminal
296
+ 'terminal.foreground': '#d1d5da',
297
+ 'terminal.tab.activeBorder': '#f9826c',
298
+ 'terminalCursor.background': '#586069',
299
+ 'terminalCursor.foreground': '#79b8ff',
300
+ 'terminal.ansiBlack': '#586069',
301
+ 'terminal.ansiRed': '#ea4a5a',
302
+ 'terminal.ansiGreen': '#34d058',
303
+ 'terminal.ansiYellow': '#ffea7f',
304
+ 'terminal.ansiBlue': '#2188ff',
305
+ 'terminal.ansiMagenta': '#b392f0',
306
+ 'terminal.ansiCyan': '#39c5cf',
307
+ 'terminal.ansiWhite': '#d1d5da',
308
+ 'terminal.ansiBrightBlack': '#959da5',
309
+ 'terminal.ansiBrightRed': '#f97583',
310
+ 'terminal.ansiBrightGreen': '#85e89d',
311
+ 'terminal.ansiBrightYellow': '#ffea7f',
312
+ 'terminal.ansiBrightBlue': '#79b8ff',
313
+ 'terminal.ansiBrightMagenta': '#b392f0',
314
+ 'terminal.ansiBrightCyan': '#56d4dd',
315
+ 'terminal.ansiBrightWhite': '#fafbfc',
316
+
317
+ // Input
318
+ 'input.background': '#2f363d',
319
+ 'input.border': '#1b1f23',
320
+ 'input.foreground': '#e1e4e8',
321
+ 'input.placeholderForeground': '#959da5',
322
+
323
+ // Dropdown
324
+ 'dropdown.background': '#2f363d',
325
+ 'dropdown.border': '#1b1f23',
326
+ 'dropdown.foreground': '#e1e4e8',
327
+ 'dropdown.listBackground': '#24292e',
328
+
329
+ // Button
330
+ 'button.background': '#176f2c',
331
+ 'button.foreground': '#dcffe4',
332
+ 'button.hoverBackground': '#22863a',
333
+ 'button.secondaryBackground': '#444d56',
334
+ 'button.secondaryForeground': '#fff',
335
+ 'button.secondaryHoverBackground': '#586069',
336
+
337
+ // Badge
338
+ 'badge.background': '#044289',
339
+ 'badge.foreground': '#c8e1ff',
340
+
341
+ // Checkbox
342
+ 'checkbox.background': '#444d56',
343
+ 'checkbox.border': '#1b1f23',
344
+
345
+ // Progress bar
346
+ 'progressBar.background': '#0366d6',
347
+
348
+ // Notifications
349
+ 'notificationCenterHeader.background': '#24292e',
350
+ 'notificationCenterHeader.foreground': '#959da5',
351
+ 'notifications.background': '#2f363d',
352
+ 'notifications.foreground': '#e1e4e8',
353
+ 'notifications.border': '#1b1f23',
354
+ 'notificationsErrorIcon.foreground': '#ea4a5a',
355
+ 'notificationsWarningIcon.foreground': '#ffab70',
356
+ 'notificationsInfoIcon.foreground': '#79b8ff',
357
+
358
+ // Quick input
359
+ 'quickInput.background': '#24292e',
360
+ 'quickInput.foreground': '#e1e4e8',
361
+
362
+ // Picker
363
+ 'pickerGroup.border': '#444d56',
364
+ 'pickerGroup.foreground': '#e1e4e8',
365
+
366
+ // Git decorations
367
+ 'gitDecoration.addedResourceForeground': '#34d058',
368
+ 'gitDecoration.modifiedResourceForeground': '#79b8ff',
369
+ 'gitDecoration.deletedResourceForeground': '#ea4a5a',
370
+ 'gitDecoration.untrackedResourceForeground': '#34d058',
371
+ 'gitDecoration.ignoredResourceForeground': '#6a737d',
372
+ 'gitDecoration.conflictingResourceForeground': '#ffab70',
373
+ 'gitDecoration.submoduleResourceForeground': '#6a737d',
374
+
375
+ // Debug
376
+ 'debugToolBar.background': '#2b3036',
377
+ 'editor.stackFrameHighlightBackground': '#C6902625',
378
+ 'editor.focusedStackFrameHighlightBackground': '#2b6a3033',
379
+
380
+ // Settings
381
+ 'settings.headerForeground': '#e1e4e8',
382
+ 'settings.modifiedItemIndicator': '#0366d6',
383
+
384
+ // Welcome
385
+ 'welcomePage.buttonBackground': '#2f363d',
386
+ 'welcomePage.buttonHoverBackground': '#444d56',
387
+
388
+ // Text
389
+ /* 'textLink.foreground': '#79b8ff',
390
+ 'textLink.activeForeground': '#c8e1ff', */
391
+ 'textBlockQuote.background': '#24292e',
392
+ 'textBlockQuote.border': '#444d56',
393
+ 'textCodeBlock.background': '#2f363d',
394
+ 'textPreformat.foreground': '#d1d5da',
395
+ 'textSeparator.foreground': '#586069',
396
+ 'descriptionForeground': '#959da5',
397
+ 'errorForeground': '#f97583',
398
+
399
+ // Tree
400
+ 'tree.indentGuidesStroke': '#2f363d',
401
+ }
402
402
  };