@kb-labs/studio-ui-core 2.118.2 → 2.119.0-canary.0c078654e

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/tokens/colors.ts","../src/tokens/spacing.ts","../src/tokens/typography.ts","../src/tokens/radius.ts","../src/tokens/shadows.ts","../src/themes/light.ts","../src/themes/dark.ts","../src/themes/semantic-colors.ts","../src/utils/css-vars.ts"],"names":["colors","spacing","typography","radius","shadows","lightTheme","darkTheme"],"mappings":"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","file":"index.js","sourcesContent":["export const colors = {\n // Primary brand colors\n primary: {\n 50: '#eff6ff',\n 100: '#dbeafe',\n 200: '#bfdbfe',\n 300: '#93c5fd',\n 400: '#60a5fa',\n 500: '#3b82f6',\n 600: '#2563eb',\n 700: '#1d4ed8',\n 800: '#1e40af',\n 900: '#1e3a8a',\n 950: '#172554',\n },\n \n // Secondary accent colors\n secondary: {\n 50: '#f0f9ff',\n 100: '#e0f2fe',\n 200: '#bae6fd',\n 300: '#7dd3fc',\n 400: '#38bdf8',\n 500: '#0ea5e9',\n 600: '#0284c7',\n 700: '#0369a1',\n 800: '#075985',\n 900: '#0c4a6e',\n 950: '#082f49',\n },\n \n // Semantic colors\n success: {\n 50: '#f0fdf4',\n 500: '#22c55e',\n 600: '#16a34a',\n 700: '#15803d',\n },\n \n warning: {\n 50: '#fffbeb',\n 500: '#f59e0b',\n 600: '#d97706',\n 700: '#b45309',\n },\n \n error: {\n 50: '#fef2f2',\n 500: '#ef4444',\n 600: '#dc2626',\n 700: '#b91c1c',\n },\n \n // Neutral grays - updated to KB Labs UI Color Kit\n neutral: {\n 0: '#ffffff', // Light: Surface/Card\n 50: '#f9fafb', // Light: Background\n 100: '#f3f4f6', // Light: Muted Surface\n 200: '#e5e7eb', // Light: Border\n 300: '#d4d4d4', // Light: Lighter borders\n 400: '#9ca3af', // Light: Disabled\n 500: '#6b7280', // Light: Text Secondary\n 600: '#525252', // Light: Darker text\n 700: '#404040', // Dark: Lighter borders\n 800: '#27272a', // Dark: Muted Surface\n 900: '#1a1a1c', // Dark: Surface/Card\n 950: '#0d0d0f', // Dark: Background\n },\n \n // Muted/subtle colors - updated to KB Labs UI Color Kit\n muted: {\n background: '#F3F4F6', // Light: Muted Surface\n foreground: '#6B7280', // Light: Text Secondary\n },\n} as const;\n\nexport type Colors = typeof colors;\n\n","export const spacing = {\n 0: '0',\n 1: '0.25rem', // 4px\n 2: '0.5rem', // 8px\n 3: '0.75rem', // 12px\n 4: '1rem', // 16px\n 5: '1.25rem', // 20px\n 6: '1.5rem', // 24px\n 8: '2rem', // 32px\n 10: '2.5rem', // 40px\n 12: '3rem', // 48px\n 16: '4rem', // 64px\n} as const;\n\nexport type Spacing = typeof spacing;\n\n","export const typography = {\n fontFamily: {\n sans: ['Inter', 'system-ui', '-apple-system', 'sans-serif'],\n mono: ['Fira Code', 'Courier New', 'monospace'],\n },\n \n fontSize: {\n xs: ['0.75rem', { lineHeight: '1rem' }], // 12px\n sm: ['0.875rem', { lineHeight: '1.25rem' }], // 14px\n base: ['1rem', { lineHeight: '1.5rem' }], // 16px\n lg: ['1.125rem', { lineHeight: '1.75rem' }], // 18px\n xl: ['1.25rem', { lineHeight: '1.75rem' }], // 20px\n '2xl': ['1.5rem', { lineHeight: '2rem' }], // 24px\n '3xl': ['1.875rem', { lineHeight: '2.25rem' }], // 30px\n '4xl': ['2.25rem', { lineHeight: '2.5rem' }], // 36px\n },\n \n fontWeight: {\n normal: '400',\n medium: '500',\n semibold: '600',\n bold: '700',\n },\n} as const;\n\nexport type Typography = typeof typography;\n\n","export const radius = {\n none: '0',\n sm: '0.125rem', // 2px\n md: '0.375rem', // 6px\n lg: '0.5rem', // 8px\n xl: '0.75rem', // 12px\n full: '9999px',\n} as const;\n\nexport type Radius = typeof radius;\n\n","// Updated to KB Labs UI Color Kit\n// Light theme uses rgba(0,0,0,0.05) for subtle shadows\n// Dark theme uses rgba(0,0,0,0.4) for deeper shadows\nexport const shadows = {\n sm: '0 1px 2px 0 rgba(0, 0, 0, 0.05)',\n md: '0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1)',\n lg: '0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)',\n xl: '0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1)',\n '2xl': '0 25px 50px -12px rgba(0, 0, 0, 0.25)',\n none: 'none',\n} as const;\n\nexport type Shadows = typeof shadows;\n\n","import type { Theme } from './types';\nimport { colors } from '../tokens/colors';\nimport { spacing } from '../tokens/spacing';\nimport { typography } from '../tokens/typography';\nimport { radius } from '../tokens/radius';\nimport { shadows } from '../tokens/shadows';\n\nexport const lightTheme: Theme = {\n colors,\n spacing,\n typography,\n radius,\n shadows,\n};\n\n","import type { Theme } from './types';\nimport { colors } from '../tokens/colors';\nimport { spacing } from '../tokens/spacing';\nimport { typography } from '../tokens/typography';\nimport { radius } from '../tokens/radius';\nimport { shadows } from '../tokens/shadows';\n\nexport const darkTheme: Theme = {\n colors,\n spacing,\n typography,\n radius,\n shadows,\n};\n\n","export const lightSemanticColors = {\n // Backgrounds\n 'bg-primary': '#F9FAFB', // Background (почти белый, но не режет глаза)\n 'bg-secondary': '#FFFFFF', // Surface / Card (карточки, панели, таблицы)\n 'bg-tertiary': '#F3F4F6', // Muted Surface (вторичные блоки, фильтры, сайдбар)\n \n // Text\n 'text-primary': '#111827', // Text Primary (почти чёрный, но мягкий)\n 'text-secondary': '#6B7280', // Text Secondary (подписи, вторичный текст)\n 'text-tertiary': '#6B7280', // Text Tertiary (вторичный текст)\n 'text-inverse': '#FFFFFF', // Text Inverse (белый текст)\n \n // Borders\n 'border-primary': '#E5E7EB', // Border (границы карточек, таблиц)\n 'border-secondary': '#D4D4D4', // Border Secondary (более светлые границы)\n \n // Interactive\n 'link': '#2563EB', // Accent Primary (KB Blue — кнопки, ссылки, активные табы)\n 'link-hover': '#1E40AF', // Accent Hover (hover на синих элементах)\n 'accent-subtle': '#DBEAFE', // Accent Subtle (фон и выделения для активных блоков)\n \n // Status\n 'success': '#16A34A', // Success (успешные статусы, зелёные метрики)\n 'warning': '#F59E0B', // Warning (предупреждения)\n 'error': '#DC2626', // Error (ошибки)\n 'info': '#0EA5E9', // Info (информационные состояния)\n \n // States\n 'disabled': '#9CA3AF', // Disabled (неактивные элементы)\n \n // Effects\n 'shadow': 'rgba(0, 0, 0, 0.05)', // Shadow (тени для карточек и кнопок)\n} as const;\n\nexport const darkSemanticColors = {\n // Backgrounds\n 'bg-primary': '#0D0D0F', // Background (глубокий, чуть теплее чистого чёрного)\n 'bg-secondary': '#1A1A1C', // Surface / Card (карточки и панели)\n 'bg-tertiary': '#27272A', // Muted Surface (вторичные зоны, hover-эффекты)\n \n // Text\n 'text-primary': '#F5F5F7', // Text Primary (основной текст)\n 'text-secondary': '#A1A1AA', // Text Secondary (вторичный текст)\n 'text-tertiary': '#A1A1AA', // Text Tertiary (вторичный текст)\n 'text-inverse': '#1A1A1C', // Text Inverse (тёмный текст)\n \n // Borders\n 'border-primary': '#3F3F46', // Border (границы элементов)\n 'border-secondary': '#52525B', // Border Secondary (более светлые границы)\n \n // Interactive\n 'link': '#3B82F6', // Accent Primary (KB Blue)\n 'link-hover': '#60A5FA', // Accent Hover (hover для кнопок/ссылок)\n 'accent-subtle': '#1E3A8A', // Accent Subtle (тонкий фон подсветки)\n \n // Status\n 'success': '#22C55E', // Success (успешные статусы)\n 'warning': '#EAB308', // Warning (предупреждения)\n 'error': '#EF4444', // Error (ошибки)\n 'info': '#38BDF8', // Info (информационные элементы)\n \n // States\n 'disabled': '#52525B', // Disabled (неактивные кнопки)\n \n // Effects\n 'shadow': 'rgba(0, 0, 0, 0.4)', // Shadow (глубокие тени для контраста)\n} as const;\n\n","import type { Theme } from '../themes/types';\nimport { lightSemanticColors, darkSemanticColors } from '../themes/semantic-colors';\n\nexport function generateCSSVars(theme: Theme, semanticColors: Record<string, string>): string {\n const { colors, spacing, typography, radius, shadows } = theme;\n \n const cssVars: string[] = [];\n\n // Semantic colors (theme-aware)\n Object.entries(semanticColors).forEach(([key, value]) => {\n cssVars.push(` --${key}: ${value};`);\n });\n\n // Raw color tokens\n Object.entries(colors).forEach(([colorName, colorValue]) => {\n if (typeof colorValue === 'object' && colorValue !== null) {\n Object.entries(colorValue).forEach(([shade, value]) => {\n cssVars.push(` --color-${colorName}-${shade}: ${value};`);\n });\n }\n });\n\n // Spacing\n Object.entries(spacing).forEach(([key, value]) => {\n cssVars.push(` --spacing-${key}: ${value};`);\n });\n\n // Typography\n Object.entries(typography).forEach(([key, value]) => {\n if (typeof value === 'object') {\n Object.entries(value).forEach(([prop, val]) => {\n cssVars.push(` --typography-${key}-${prop}: ${val};`);\n });\n } else {\n cssVars.push(` --typography-${key}: ${value};`);\n }\n });\n\n // Radius\n Object.entries(radius).forEach(([key, value]) => {\n cssVars.push(` --radius-${key}: ${value};`);\n });\n\n // Shadows\n Object.entries(shadows).forEach(([key, value]) => {\n cssVars.push(` --shadow-${key}: ${value};`);\n });\n\n return cssVars.join('\\n');\n}\n\nexport function generateThemeCSS(lightTheme: Theme, darkTheme: Theme): string {\n return `\n:root {\n${generateCSSVars(lightTheme, lightSemanticColors)}\n}\n\n.dark {\n${generateCSSVars(darkTheme, darkSemanticColors)}\n}\n`.trim();\n}\n\n"]}
1
+ {"version":3,"sources":["../../home/runner/work/kb-labs/kb-labs/studio/ui-core/src/tokens/colors.ts","../../home/runner/work/kb-labs/kb-labs/studio/ui-core/src/tokens/spacing.ts","../../home/runner/work/kb-labs/kb-labs/studio/ui-core/src/tokens/typography.ts","../../home/runner/work/kb-labs/kb-labs/studio/ui-core/src/tokens/radius.ts","../../home/runner/work/kb-labs/kb-labs/studio/ui-core/src/tokens/shadows.ts","../../home/runner/work/kb-labs/kb-labs/studio/ui-core/src/themes/light.ts","../../home/runner/work/kb-labs/kb-labs/studio/ui-core/src/themes/dark.ts","../../home/runner/work/kb-labs/kb-labs/studio/ui-core/src/themes/semantic-colors.ts","../../home/runner/work/kb-labs/kb-labs/studio/ui-core/src/utils/css-vars.ts"],"names":["colors","spacing","typography","radius","shadows","lightTheme","darkTheme"],"mappings":"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","file":"index.js","sourcesContent":["export const colors = {\n // Primary brand colors\n primary: {\n 50: '#eff6ff',\n 100: '#dbeafe',\n 200: '#bfdbfe',\n 300: '#93c5fd',\n 400: '#60a5fa',\n 500: '#3b82f6',\n 600: '#2563eb',\n 700: '#1d4ed8',\n 800: '#1e40af',\n 900: '#1e3a8a',\n 950: '#172554',\n },\n \n // Secondary accent colors\n secondary: {\n 50: '#f0f9ff',\n 100: '#e0f2fe',\n 200: '#bae6fd',\n 300: '#7dd3fc',\n 400: '#38bdf8',\n 500: '#0ea5e9',\n 600: '#0284c7',\n 700: '#0369a1',\n 800: '#075985',\n 900: '#0c4a6e',\n 950: '#082f49',\n },\n \n // Semantic colors\n success: {\n 50: '#f0fdf4',\n 500: '#22c55e',\n 600: '#16a34a',\n 700: '#15803d',\n },\n \n warning: {\n 50: '#fffbeb',\n 500: '#f59e0b',\n 600: '#d97706',\n 700: '#b45309',\n },\n \n error: {\n 50: '#fef2f2',\n 500: '#ef4444',\n 600: '#dc2626',\n 700: '#b91c1c',\n },\n \n // Neutral grays - updated to KB Labs UI Color Kit\n neutral: {\n 0: '#ffffff', // Light: Surface/Card\n 50: '#f9fafb', // Light: Background\n 100: '#f3f4f6', // Light: Muted Surface\n 200: '#e5e7eb', // Light: Border\n 300: '#d4d4d4', // Light: Lighter borders\n 400: '#9ca3af', // Light: Disabled\n 500: '#6b7280', // Light: Text Secondary\n 600: '#525252', // Light: Darker text\n 700: '#404040', // Dark: Lighter borders\n 800: '#27272a', // Dark: Muted Surface\n 900: '#1a1a1c', // Dark: Surface/Card\n 950: '#0d0d0f', // Dark: Background\n },\n \n // Muted/subtle colors - updated to KB Labs UI Color Kit\n muted: {\n background: '#F3F4F6', // Light: Muted Surface\n foreground: '#6B7280', // Light: Text Secondary\n },\n} as const;\n\nexport type Colors = typeof colors;\n\n","export const spacing = {\n 0: '0',\n 1: '0.25rem', // 4px\n 2: '0.5rem', // 8px\n 3: '0.75rem', // 12px\n 4: '1rem', // 16px\n 5: '1.25rem', // 20px\n 6: '1.5rem', // 24px\n 8: '2rem', // 32px\n 10: '2.5rem', // 40px\n 12: '3rem', // 48px\n 16: '4rem', // 64px\n} as const;\n\nexport type Spacing = typeof spacing;\n\n","export const typography = {\n fontFamily: {\n sans: ['Inter', 'system-ui', '-apple-system', 'sans-serif'],\n mono: ['Fira Code', 'Courier New', 'monospace'],\n },\n \n fontSize: {\n xs: ['0.75rem', { lineHeight: '1rem' }], // 12px\n sm: ['0.875rem', { lineHeight: '1.25rem' }], // 14px\n base: ['1rem', { lineHeight: '1.5rem' }], // 16px\n lg: ['1.125rem', { lineHeight: '1.75rem' }], // 18px\n xl: ['1.25rem', { lineHeight: '1.75rem' }], // 20px\n '2xl': ['1.5rem', { lineHeight: '2rem' }], // 24px\n '3xl': ['1.875rem', { lineHeight: '2.25rem' }], // 30px\n '4xl': ['2.25rem', { lineHeight: '2.5rem' }], // 36px\n },\n \n fontWeight: {\n normal: '400',\n medium: '500',\n semibold: '600',\n bold: '700',\n },\n} as const;\n\nexport type Typography = typeof typography;\n\n","export const radius = {\n none: '0',\n sm: '0.125rem', // 2px\n md: '0.375rem', // 6px\n lg: '0.5rem', // 8px\n xl: '0.75rem', // 12px\n full: '9999px',\n} as const;\n\nexport type Radius = typeof radius;\n\n","// Updated to KB Labs UI Color Kit\n// Light theme uses rgba(0,0,0,0.05) for subtle shadows\n// Dark theme uses rgba(0,0,0,0.4) for deeper shadows\nexport const shadows = {\n sm: '0 1px 2px 0 rgba(0, 0, 0, 0.05)',\n md: '0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1)',\n lg: '0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)',\n xl: '0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1)',\n '2xl': '0 25px 50px -12px rgba(0, 0, 0, 0.25)',\n none: 'none',\n} as const;\n\nexport type Shadows = typeof shadows;\n\n","import type { Theme } from './types';\nimport { colors } from '../tokens/colors';\nimport { spacing } from '../tokens/spacing';\nimport { typography } from '../tokens/typography';\nimport { radius } from '../tokens/radius';\nimport { shadows } from '../tokens/shadows';\n\nexport const lightTheme: Theme = {\n colors,\n spacing,\n typography,\n radius,\n shadows,\n};\n\n","import type { Theme } from './types';\nimport { colors } from '../tokens/colors';\nimport { spacing } from '../tokens/spacing';\nimport { typography } from '../tokens/typography';\nimport { radius } from '../tokens/radius';\nimport { shadows } from '../tokens/shadows';\n\nexport const darkTheme: Theme = {\n colors,\n spacing,\n typography,\n radius,\n shadows,\n};\n\n","export const lightSemanticColors = {\n // Backgrounds\n 'bg-primary': '#F9FAFB', // Background (почти белый, но не режет глаза)\n 'bg-secondary': '#FFFFFF', // Surface / Card (карточки, панели, таблицы)\n 'bg-tertiary': '#F3F4F6', // Muted Surface (вторичные блоки, фильтры, сайдбар)\n \n // Text\n 'text-primary': '#111827', // Text Primary (почти чёрный, но мягкий)\n 'text-secondary': '#6B7280', // Text Secondary (подписи, вторичный текст)\n 'text-tertiary': '#6B7280', // Text Tertiary (вторичный текст)\n 'text-inverse': '#FFFFFF', // Text Inverse (белый текст)\n \n // Borders\n 'border-primary': '#E5E7EB', // Border (границы карточек, таблиц)\n 'border-secondary': '#D4D4D4', // Border Secondary (более светлые границы)\n \n // Interactive\n 'link': '#2563EB', // Accent Primary (KB Blue — кнопки, ссылки, активные табы)\n 'link-hover': '#1E40AF', // Accent Hover (hover на синих элементах)\n 'accent-subtle': '#DBEAFE', // Accent Subtle (фон и выделения для активных блоков)\n \n // Status\n 'success': '#16A34A', // Success (успешные статусы, зелёные метрики)\n 'warning': '#F59E0B', // Warning (предупреждения)\n 'error': '#DC2626', // Error (ошибки)\n 'info': '#0EA5E9', // Info (информационные состояния)\n \n // States\n 'disabled': '#9CA3AF', // Disabled (неактивные элементы)\n \n // Effects\n 'shadow': 'rgba(0, 0, 0, 0.05)', // Shadow (тени для карточек и кнопок)\n} as const;\n\nexport const darkSemanticColors = {\n // Backgrounds\n 'bg-primary': '#0D0D0F', // Background (глубокий, чуть теплее чистого чёрного)\n 'bg-secondary': '#1A1A1C', // Surface / Card (карточки и панели)\n 'bg-tertiary': '#27272A', // Muted Surface (вторичные зоны, hover-эффекты)\n \n // Text\n 'text-primary': '#F5F5F7', // Text Primary (основной текст)\n 'text-secondary': '#A1A1AA', // Text Secondary (вторичный текст)\n 'text-tertiary': '#A1A1AA', // Text Tertiary (вторичный текст)\n 'text-inverse': '#1A1A1C', // Text Inverse (тёмный текст)\n \n // Borders\n 'border-primary': '#3F3F46', // Border (границы элементов)\n 'border-secondary': '#52525B', // Border Secondary (более светлые границы)\n \n // Interactive\n 'link': '#3B82F6', // Accent Primary (KB Blue)\n 'link-hover': '#60A5FA', // Accent Hover (hover для кнопок/ссылок)\n 'accent-subtle': '#1E3A8A', // Accent Subtle (тонкий фон подсветки)\n \n // Status\n 'success': '#22C55E', // Success (успешные статусы)\n 'warning': '#EAB308', // Warning (предупреждения)\n 'error': '#EF4444', // Error (ошибки)\n 'info': '#38BDF8', // Info (информационные элементы)\n \n // States\n 'disabled': '#52525B', // Disabled (неактивные кнопки)\n \n // Effects\n 'shadow': 'rgba(0, 0, 0, 0.4)', // Shadow (глубокие тени для контраста)\n} as const;\n\n","import type { Theme } from '../themes/types';\nimport { lightSemanticColors, darkSemanticColors } from '../themes/semantic-colors';\n\nexport function generateCSSVars(theme: Theme, semanticColors: Record<string, string>): string {\n const { colors, spacing, typography, radius, shadows } = theme;\n \n const cssVars: string[] = [];\n\n // Semantic colors (theme-aware)\n Object.entries(semanticColors).forEach(([key, value]) => {\n cssVars.push(` --${key}: ${value};`);\n });\n\n // Raw color tokens\n Object.entries(colors).forEach(([colorName, colorValue]) => {\n if (typeof colorValue === 'object' && colorValue !== null) {\n Object.entries(colorValue).forEach(([shade, value]) => {\n cssVars.push(` --color-${colorName}-${shade}: ${value};`);\n });\n }\n });\n\n // Spacing\n Object.entries(spacing).forEach(([key, value]) => {\n cssVars.push(` --spacing-${key}: ${value};`);\n });\n\n // Typography\n Object.entries(typography).forEach(([key, value]) => {\n if (typeof value === 'object') {\n Object.entries(value).forEach(([prop, val]) => {\n cssVars.push(` --typography-${key}-${prop}: ${val};`);\n });\n } else {\n cssVars.push(` --typography-${key}: ${value};`);\n }\n });\n\n // Radius\n Object.entries(radius).forEach(([key, value]) => {\n cssVars.push(` --radius-${key}: ${value};`);\n });\n\n // Shadows\n Object.entries(shadows).forEach(([key, value]) => {\n cssVars.push(` --shadow-${key}: ${value};`);\n });\n\n return cssVars.join('\\n');\n}\n\nexport function generateThemeCSS(lightTheme: Theme, darkTheme: Theme): string {\n return `\n:root {\n${generateCSSVars(lightTheme, lightSemanticColors)}\n}\n\n.dark {\n${generateCSSVars(darkTheme, darkSemanticColors)}\n}\n`.trim();\n}\n\n"]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@kb-labs/studio-ui-core",
3
3
  "description": "KB Labs design system foundation — design tokens, themes, CSS variables (framework-agnostic)",
4
- "version": "2.118.2",
4
+ "version": "2.119.0-canary.0c078654e",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
7
7
  "types": "./dist/index.d.ts",
@@ -21,7 +21,7 @@
21
21
  "tsup": "^8.5.0",
22
22
  "typescript": "^5.6.3",
23
23
  "vitest": "^3.2.6",
24
- "@kb-labs/devkit": "2.118.2"
24
+ "@kb-labs/devkit": "2.119.0-canary.0c078654e"
25
25
  },
26
26
  "engines": {
27
27
  "node": ">=22.0.0",