@pstdio/ui 0.7.1 → 0.9.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 (85) hide show
  1. package/dist/{MermaidComponent-D7Baqkwx.js → MermaidComponent-Cz_Iob5U.js} +56 -53
  2. package/dist/MermaidComponent-Cz_Iob5U.js.map +1 -0
  3. package/dist/chat-ui.js +117 -117
  4. package/dist/chat-ui.js.map +1 -1
  5. package/dist/components/breadcrumb.d.ts +2 -0
  6. package/dist/components/chat-ui/tool-rendering/build-timeline.d.ts +2 -2
  7. package/dist/components/chat-ui/tool-rendering/shared.d.ts +1 -1
  8. package/dist/components/{tickets/ticket-board.d.ts → data-renderer/data-renderer-board.d.ts} +15 -14
  9. package/dist/components/data-renderer/data-renderer-card.d.ts +15 -0
  10. package/dist/components/data-renderer/data-renderer-grouping.d.ts +23 -0
  11. package/dist/components/data-renderer/data-renderer-helpers.d.ts +66 -0
  12. package/dist/components/data-renderer/data-renderer-list.d.ts +28 -0
  13. package/dist/components/data-renderer/data-renderer-toolbar.d.ts +12 -0
  14. package/dist/components/data-renderer/data-renderer.d.ts +29 -0
  15. package/dist/components/data-renderer/display-menu.d.ts +16 -0
  16. package/dist/components/data-renderer/filter-menu.d.ts +12 -0
  17. package/dist/components/data-renderer/types.d.ts +98 -0
  18. package/dist/components/data-renderer/use-data-renderer-store.d.ts +56 -0
  19. package/dist/components/data-renderer/use-resolved-attributes.d.ts +14 -0
  20. package/dist/components/diff-viewer/diff-card-body.d.ts +10 -0
  21. package/dist/components/diff-viewer/diff-card-content.d.ts +1 -0
  22. package/dist/components/diff-viewer/diff-card.d.ts +1 -0
  23. package/dist/components/diff-viewer/diff-size.d.ts +2 -0
  24. package/dist/components/icon-color-picker.d.ts +13 -0
  25. package/dist/components/list-row/list-row-content.d.ts +9 -0
  26. package/dist/components/list-row/list-row.types.d.ts +1 -0
  27. package/dist/components/resource-context-menu.d.ts +1 -1
  28. package/dist/components/rich-text/shared/lexical-code.d.ts +2 -0
  29. package/dist/components/rich-text/shared/plugins/CodePlugin/CodeBlockPlugin.d.ts +1 -1
  30. package/dist/components/rich-text/shared/prism-global.d.ts +2 -0
  31. package/dist/components/status-option-editor/index.d.ts +2 -0
  32. package/dist/components/status-option-editor/status-option-editor.d.ts +2 -0
  33. package/dist/components/status-option-editor/status-option-editor.types.d.ts +39 -0
  34. package/dist/components/status-option-editor/status-option-row.d.ts +16 -0
  35. package/dist/components/tab-strip/tab-visibility-filter.d.ts +19 -0
  36. package/dist/components/tab-strip/tab-visibility.store.d.ts +41 -0
  37. package/dist/components/tree-list/tree-list-model.d.ts +58 -0
  38. package/dist/components/tree-list/tree-list-node-row.d.ts +20 -0
  39. package/dist/components/tree-list/tree-list-order-filter.d.ts +3 -0
  40. package/dist/components/tree-list/tree-list-order.store.d.ts +42 -0
  41. package/dist/components/tree-list/tree-list-reorder.d.ts +13 -0
  42. package/dist/components/tree-list/tree-list-section-header.d.ts +14 -0
  43. package/dist/components/tree-list/tree-list-sortable.d.ts +22 -0
  44. package/dist/components/tree-list/tree-list-visibility-filter.d.ts +17 -0
  45. package/dist/components/tree-list/tree-list-visibility.store.d.ts +45 -0
  46. package/dist/components/tree-list/tree-list.d.ts +7 -27
  47. package/dist/components/tree-list/tree-list.types.d.ts +2 -0
  48. package/dist/components/tree-list/use-tree-list-keyboard-navigation.d.ts +15 -0
  49. package/dist/get-file-type-icon-ufFb0IkR.js +102 -0
  50. package/dist/get-file-type-icon-ufFb0IkR.js.map +1 -0
  51. package/dist/index.d.ts +32 -12
  52. package/dist/index.js +6470 -5163
  53. package/dist/index.js.map +1 -1
  54. package/dist/{rich-message-33DPxuWJ.js → rich-message-CEOSsdR2.js} +428 -421
  55. package/dist/rich-message-CEOSsdR2.js.map +1 -0
  56. package/dist/rich-text.js +26 -26
  57. package/dist/rich-text.js.map +1 -1
  58. package/dist/theme/custom/index.d.ts +0 -3
  59. package/dist/theme/index.d.ts +1 -1
  60. package/dist/theme/recipes/menu.d.ts +1 -1
  61. package/dist/theme/recipes/tabs.d.ts +30 -0
  62. package/dist/theme/tokens/colors.d.ts +6 -0
  63. package/dist/{theme-D-aCJqTf.js → theme-qP4YOZ2R.js} +197 -148
  64. package/dist/theme-qP4YOZ2R.js.map +1 -0
  65. package/dist/theme.js +2 -4
  66. package/dist/utils/browser-storage.d.ts +7 -0
  67. package/dist/utils/prism.d.ts +1 -0
  68. package/package.json +8 -3
  69. package/dist/MermaidComponent-D7Baqkwx.js.map +0 -1
  70. package/dist/components/tickets/display-menu.d.ts +0 -15
  71. package/dist/components/tickets/filter-menu.d.ts +0 -11
  72. package/dist/components/tickets/tag-badge.d.ts +0 -10
  73. package/dist/components/tickets/tag-option-icon.d.ts +0 -2
  74. package/dist/components/tickets/ticket-card.d.ts +0 -30
  75. package/dist/components/tickets/ticket-grouping.d.ts +0 -22
  76. package/dist/components/tickets/ticket-list.d.ts +0 -31
  77. package/dist/components/tickets/tickets-workspace.d.ts +0 -38
  78. package/dist/components/tickets/types.d.ts +0 -64
  79. package/dist/components/tickets/use-workspace-store.d.ts +0 -51
  80. package/dist/components/tickets/workspace-helpers.d.ts +0 -18
  81. package/dist/get-file-type-icon-Bwqf1WXA.js +0 -101
  82. package/dist/get-file-type-icon-Bwqf1WXA.js.map +0 -1
  83. package/dist/rich-message-33DPxuWJ.js.map +0 -1
  84. package/dist/theme/custom/monokai.json.d.ts +0 -80
  85. package/dist/theme-D-aCJqTf.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme-qP4YOZ2R.js","sources":["../src/theme/custom/vscode-theme.ts","../src/theme/global.ts","../src/theme/primitives/colors.ts","../src/theme/primitives/fonts.ts","../src/theme/primitives/sizes.ts","../src/theme/recipes/alert.ts","../src/theme/recipes/button.ts","../src/theme/recipes/dialog.ts","../src/theme/recipes/divider.ts","../src/theme/recipes/drawer.ts","../src/theme/recipes/editable.ts","../src/theme/recipes/form.ts","../src/theme/recipes/input.ts","../src/theme/recipes/kbd.ts","../src/theme/recipes/menu.ts","../src/theme/recipes/popover.ts","../src/theme/recipes/progress-circle.ts","../src/theme/recipes/skeleton.ts","../src/theme/recipes/tabs.ts","../src/theme/recipes/textarea.ts","../src/theme/recipes/tooltip.ts","../src/theme/tokens/borders.ts","../src/theme/tokens/colors.ts","../src/theme/tokens/layer-styles.ts","../src/theme/tokens/shadows.ts","../src/theme/tokens/text.ts","../src/theme/theme.ts"],"sourcesContent":["import type { ThemePreferenceMode, ThemePreferenceOption } from \"../../utils/apply-theme-preference\";\n\nexport interface VsCodeColorTheme {\n colors?: Record<string, string>;\n tokenColors?: VsCodeTokenColor[];\n}\n\ninterface VsCodeTokenColor {\n scope?: string | string[];\n settings?: {\n foreground?: string;\n fontStyle?: string;\n };\n}\n\nexport interface MonacoThemeData {\n base: \"vs\" | \"vs-dark\";\n inherit: true;\n rules: { token: string; foreground?: string; fontStyle?: string }[];\n colors: Record<string, string>;\n}\n\nconst tokenMap = {\n \"editor.background\": [\"colors.bg\", \"colors.bg.code\"],\n \"editor.foreground\": [\"colors.fg\"],\n \"editor.lineHighlightBackground\": [\"colors.bg.hover\"],\n \"editor.selectionBackground\": [\"colors.bg.active\"],\n \"editorWidget.background\": [\"colors.bg.panel\"],\n \"sideBar.background\": [\"colors.bg.panel\"],\n \"panel.background\": [\"colors.bg.panel\"],\n \"input.background\": [\"colors.bg.subtle\"],\n \"input.foreground\": [\"colors.fg\"],\n \"input.border\": [\"colors.border\"],\n \"dropdown.background\": [\"colors.bg.panel\"],\n \"menu.background\": [\"colors.bg.panel\", \"colors.bg.menu-item.default\"],\n \"menu.foreground\": [\"colors.fg.menu-item.default\"],\n \"menu.selectionBackground\": [\n \"colors.bg.menu-item.hover\",\n \"colors.bg.menu-item.focus\",\n \"colors.bg.menu-item.selected\",\n ],\n \"button.background\": [\"colors.bg.button.primary.default\", \"colors.bg.accent-primary.default\"],\n \"button.hoverBackground\": [\"colors.bg.button.primary.hover\", \"colors.bg.accent-primary.hover\"],\n \"button.foreground\": [\"colors.fg.button.primary.default\"],\n focusBorder: [\"colors.border.accent\"],\n foreground: [\"colors.fg\"],\n descriptionForeground: [\"colors.fg.muted\"],\n disabledForeground: [\"colors.fg.subtle\"],\n border: [\"colors.border\", \"colors.border.muted\", \"colors.border.subtle\"],\n} satisfies Record<string, string[]>;\n\nconst getVsCodeTokenPath = (token: string) => `colors.vscode.${token}`;\n\nconst stripHash = (value: string) => value.replace(/^#/, \"\");\n\nexport const createThemePreferenceFromVsCodeTheme = (input: {\n id: string;\n mode: ThemePreferenceMode;\n theme: VsCodeColorTheme;\n}): ThemePreferenceOption => {\n const tokens: Record<string, string> = {};\n const colors = input.theme.colors ?? {};\n\n for (const [vsCodeToken, value] of Object.entries(colors)) {\n tokens[getVsCodeTokenPath(vsCodeToken)] = value;\n }\n\n for (const [vsCodeToken, tokenPaths] of Object.entries(tokenMap)) {\n const value = colors[vsCodeToken];\n if (!value) continue;\n for (const tokenPath of tokenPaths) tokens[tokenPath] = value;\n }\n\n return { id: input.id, mode: input.mode, tokens };\n};\n\nexport const createMonacoThemeFromVsCodeTheme = (input: {\n mode: ThemePreferenceMode;\n theme: VsCodeColorTheme;\n}): MonacoThemeData => {\n const rules = (input.theme.tokenColors ?? []).flatMap((tokenColor) => {\n const scopes = Array.isArray(tokenColor.scope) ? tokenColor.scope : tokenColor.scope ? [tokenColor.scope] : [];\n return scopes.map((scope) => ({\n token: scope,\n ...(tokenColor.settings?.foreground ? { foreground: stripHash(tokenColor.settings.foreground) } : {}),\n ...(tokenColor.settings?.fontStyle ? { fontStyle: tokenColor.settings.fontStyle } : {}),\n }));\n });\n\n return {\n base: input.mode === \"dark\" ? \"vs-dark\" : \"vs\",\n inherit: true,\n rules,\n colors: input.theme.colors ?? {},\n };\n};\n","export const globalCss = {\n \"*::selection\": {\n bg: {\n base: \"bg.accent-secondary.blue-medium\",\n _dark: \"bg.accent-secondary.blue-medium\",\n },\n color: {\n _dark: \"fg.inverted\",\n },\n },\n\n \":root\": {\n \"--focus-border\": \"blue.border\",\n \"--separator-border\": \"transparent !important\",\n },\n\n html: {\n height: \"100%\",\n width: \"100%\",\n overflow: \"hidden\",\n },\n\n body: {\n height: \"100%\",\n width: \"100%\",\n fontFamily: \"body\",\n fontWeight: \"regular\",\n fontSize: \"md\",\n bg: \"bg\",\n color: \"fg\",\n borderColor: \"border\",\n overflow: \"hidden\",\n },\n\n \"#root\": {\n height: \"100%\",\n width: \"100%\",\n display: \"flex\",\n },\n\n \".sash\": {\n zIndex: \"docked\",\n },\n\n \"@keyframes message-fade-in\": {\n from: { opacity: 0, transform: \"translateY(4px)\" },\n to: { opacity: 1, transform: \"translateY(0)\" },\n },\n\n \"@media (min-width: 2560px)\": {\n html: { fontSize: \"1.25rem\" },\n },\n\n \"@media (min-width: 3840px)\": {\n html: { fontSize: \"1.5rem\" },\n },\n};\n","export const blacks = {\n DEFAULT: { value: \"#0A0D15\" },\n 50: { value: \"#FFFFFF\" },\n 75: { value: \"#FCFCFC\" },\n 100: { value: \"#F9F9F9\" },\n 200: { value: \"#F5F5F5\" },\n 300: { value: \"#EAEAEA\" },\n 400: { value: \"#C5C5C7\" },\n 450: { value: \"#9DA0A6\" },\n 500: { value: \"#797D83\" },\n 600: { value: \"#5A5F67\" },\n 700: { value: \"#444750\" },\n 750: { value: \"#33363E\" },\n 800: { value: \"#22252C\" },\n 850: { value: \"#1b2028\" },\n 900: { value: \"#0A0D15\" },\n 1000: { value: \"#000000\" },\n};\n\nexport const blue = {\n DEFAULT: { value: \"#5098FF\" },\n 50: { value: \"#EEF5FF\" },\n 100: { value: \"#D2E4FF\" },\n 200: { value: \"#A8CBFE\" },\n 300: { value: \"#81B4FE\" },\n 400: { value: \"#6CA9FF\" },\n 500: { value: \"#5098FF\" },\n 600: { value: \"#2B82FF\" },\n 700: { value: \"#0E6EF6\" },\n 800: { value: \"#0652C3\" },\n 900: { value: \"#002862\" },\n};\n\nexport const sapphire = {\n DEFAULT: { value: \"#3A4BE4\" },\n 25: { value: \"#F0F1FF\" },\n 50: { value: \"#E0E3FF\" },\n 100: { value: \"#BEC4FF\" },\n 200: { value: \"#97A2FF\" },\n 300: { value: \"#6A78F8\" },\n 400: { value: \"#4E5FF3\" },\n 500: { value: \"#3A4BE4\" },\n 600: { value: \"#2A3CD7\" },\n 700: { value: \"#202FB8\" },\n 800: { value: \"#131F87\" },\n 900: { value: \"#0A125A\" },\n};\n\nexport const pink = {\n DEFAULT: { value: \"#E054EC\" },\n 25: { value: \"#FDF0FF\" },\n 50: { value: \"#FCE1FF\" },\n 100: { value: \"#F5CBF9\" },\n 200: { value: \"#F6B4FC\" },\n 300: { value: \"#F69AFF\" },\n 400: { value: \"#EF81FA\" },\n 500: { value: \"#E054EC\" },\n 600: { value: \"#B636C1\" },\n 700: { value: \"#951BA0\" },\n 800: { value: \"#6F0C78\" },\n 900: { value: \"#520659\" },\n};\n\nexport const peach = {\n DEFAULT: { value: \"#FBD8CE\" },\n 50: { value: \"#FFF2EC\" },\n 100: { value: \"#FCE1DA\" },\n 200: { value: \"#FBD8CE\" },\n 300: { value: \"#F7C4B8\" },\n 400: { value: \"#F3AA9A\" },\n 500: { value: \"#EB8A75\" },\n 600: { value: \"#D17059\" },\n 700: { value: \"#A85646\" },\n 800: { value: \"#7B3F34\" },\n 900: { value: \"#522923\" },\n};\n\nexport const red = {\n DEFAULT: { value: \"#FF3232\" },\n 50: { value: \"#FFE0E3\" },\n 100: { value: \"#FFCCCC\" },\n 200: { value: \"#FDA8A8\" },\n 300: { value: \"#FF8B8B\" },\n 400: { value: \"#FF6B6B\" },\n 500: { value: \"#FF3232\" },\n 600: { value: \"#DE1D1D\" },\n 700: { value: \"#BA1313\" },\n 800: { value: \"#8E0E0E\" },\n 900: { value: \"#580707\" },\n};\n\nexport const orange = {\n DEFAULT: { value: \"#F78C25\" },\n 50: { value: \"#FFF4E8\" },\n 100: { value: \"#FFE2C1\" },\n 200: { value: \"#FFC98E\" },\n 300: { value: \"#FFAD57\" },\n 400: { value: \"#F78C25\" },\n 500: { value: \"#E26F12\" },\n 600: { value: \"#C85D12\" },\n 700: { value: \"#A74810\" },\n 800: { value: \"#7E330C\" },\n 900: { value: \"#552107\" },\n};\n\nexport const yellow = {\n DEFAULT: { value: \"#FFD643\" },\n 50: { value: \"#FFF7D9\" },\n 75: { value: \"#FFF3C2\" },\n 100: { value: \"#FFEEB3\" },\n 150: { value: \"#FFE999\" },\n 200: { value: \"#FFE792\" },\n 300: { value: \"#FFDE67\" },\n 400: { value: \"#FFD643\" },\n 500: { value: \"#FFC909\" },\n 600: { value: \"#E4B200\" },\n 700: { value: \"#C69B00\" },\n 800: { value: \"#9D7A00\" },\n 900: { value: \"#644E00\" },\n};\n\nexport const green = {\n DEFAULT: { value: \"#2DD665\" },\n 50: { value: \"#CFFFDF\" },\n 100: { value: \"#ACFBC7\" },\n 200: { value: \"#86F3AB\" },\n 300: { value: \"#61EA8F\" },\n 400: { value: \"#2DD665\" },\n 500: { value: \"#0AB744\" },\n 600: { value: \"#029232\" },\n 700: { value: \"#007126\" },\n 800: { value: \"#00511B\" },\n 900: { value: \"#003110\" },\n};\n\nexport const teal = {\n DEFAULT: { value: \"#3EECC4\" },\n 50: { value: \"#C9FFF3\" },\n 100: { value: \"#9EFBE6\" },\n 200: { value: \"#6DF4D5\" },\n 300: { value: \"#3EECC4\" },\n 400: { value: \"#16DFB0\" },\n 500: { value: \"#12C69C\" },\n 600: { value: \"#10A884\" },\n 700: { value: \"#0C8367\" },\n 800: { value: \"#096C55\" },\n 900: { value: \"#024F3D\" },\n};\n\nexport const cyan = {\n DEFAULT: { value: \"#5CDCFF\" },\n 50: { value: \"#DAF7FE\" },\n 100: { value: \"#ADEDFF\" },\n 200: { value: \"#85E4FF\" },\n 300: { value: \"#5CDCFF\" },\n 400: { value: \"#30D2FF\" },\n 500: { value: \"#00C0F5\" },\n 600: { value: \"#03AAD7\" },\n 700: { value: \"#0095BE\" },\n 800: { value: \"#007A9B\" },\n 900: { value: \"#005B73\" },\n};\n\nexport const purple = {\n DEFAULT: { value: \"#8B47FF\" },\n 50: { value: \"#EFE6FF\" },\n 100: { value: \"#D8C2FF\" },\n 200: { value: \"#BE99FF\" },\n 300: { value: \"#A36DFF\" },\n 400: { value: \"#8B47FF\" },\n 500: { value: \"#7223F9\" },\n 600: { value: \"#5A00F5\" },\n 700: { value: \"#4600C0\" },\n 800: { value: \"#310086\" },\n 900: { value: \"#1E0050\" },\n};\n\nexport const sand = {\n DEFAULT: { value: \"#F4F2EC\" },\n 50: { value: \"#FCF7EF\" },\n 100: { value: \"#F4F2EC\" },\n 200: { value: \"#E8CECE\" },\n 300: { value: \"#E8CECE\" },\n 400: { value: \"#E8CECE\" },\n 500: { value: \"#E8CECE\" },\n 600: { value: \"#E8CECE\" },\n 700: { value: \"#E8CECE\" },\n 800: { value: \"#E8CECE\" },\n 900: { value: \"#E8CECE\" },\n};\n\nexport const neutral = {\n 50: { value: \"#FCFDFC\" },\n 75: { value: \"#F7F9F7\" },\n 100: { value: \"#F1F5F2\" },\n 200: { value: \"#EDF1EE\" },\n 300: { value: \"#E9EFEA\" },\n 400: { value: \"#DEE5DF\" },\n 500: { value: \"#CCD1CE\" },\n 600: { value: \"#404347\" },\n 700: { value: \"#31363C\" },\n 750: { value: \"#252A2F\" },\n 800: { value: \"#222A35\" },\n 850: { value: \"#1A202A\" },\n 900: { value: \"#141923\" },\n 950: { value: \"#10141B\" },\n};\n\nexport const mint = {\n 100: { value: \"#D3ECEE\" },\n 200: { value: \"#B3DEE2\" },\n};\n\nexport const colors = {\n sand,\n blacks,\n blue,\n sapphire,\n pink,\n peach,\n red,\n orange,\n yellow,\n green,\n teal,\n cyan,\n purple,\n neutral,\n mint,\n};\n","export const fonts = {\n display: { value: \"'Playfair Display', serif\" },\n brand: { value: \"Onest, sans-serif\" },\n heading: { value: \"Onest, sans-serif\" },\n label: { value: \"Onest, sans-serif\" },\n body: { value: \"Inter, sans-serif\" },\n};\n\nexport const fontSizes = {\n xs: { value: \"0.625rem\" }, // 10px\n sm: { value: \"0.75rem\" }, // 12px\n md: { value: \"0.875rem\" }, // 14px\n lg: { value: \"1rem\" }, // 16px\n xl: { value: \"1.125rem\" }, // 18px\n \"2xl\": { value: \"1.25rem\" }, // 20px\n \"3xl\": { value: \"1.5rem\" }, // 24px\n \"3.5xl\": { value: \"1.75rem\" }, // 28px\n \"4xl\": { value: \"2.25rem\" }, // 36px\n \"5xl\": { value: \"3rem\" }, // 48px\n \"6xl\": { value: \"4.375rem\" }, // 70px\n \"7xl\": { value: \"5.25rem\" }, // 84px\n \"icon-xs\": { value: \"0.875rem\" }, // 14px\n \"icon-sm\": { value: \"1rem\" }, // 16px\n \"icon-md\": { value: \"1.25rem\" }, // 20px\n \"icon-lg\": { value: \"1.25rem\" }, // 20px\n};\n\nexport const fontWeights = {\n regular: { value: 400 },\n medium: { value: 500 },\n semibold: { value: 600 },\n bold: { value: 700 },\n};\n","export const sp = {\n 0: \"0rem\", // 0px\n 25: \"0.125rem\", // 2px\n 50: \"0.25rem\", // 4px\n 100: \"0.5rem\", // 8px\n 150: \"0.75rem\", // 12px\n 200: \"1rem\", // 16px\n 250: \"1.25rem\", // 20px\n 300: \"1.5rem\", // 24px\n 400: \"2rem\", // 32px\n 500: \"2.5rem\", // 40px\n 600: \"3rem\", // 48px\n 700: \"3.5rem\", // 56px\n 800: \"4rem\", // 64px\n 900: \"4.5rem\", // 72px\n 1000: \"5rem\", // 80px\n 1200: \"6rem\", // 96px\n 1600: \"8rem\", // 128px\n 2000: \"10rem\", // 160px\n 3000: \"15rem\", // 240px\n 4000: \"20rem\", // 320px\n};\n\nexport const spacing = {\n none: { value: \"0\" },\n \"2xs\": { value: sp[50] },\n xs: { value: sp[100] },\n sm: { value: sp[150] },\n md: { value: sp[200] },\n lg: { value: sp[300] },\n xl: { value: sp[400] },\n \"2xl\": { value: sp[500] },\n \"3xl\": { value: sp[600] },\n \"3.5xl\": { value: sp[700] },\n \"4xl\": { value: sp[800] },\n \"4.5xl\": { value: sp[900] },\n \"5xl\": { value: sp[1600] },\n};\n\nexport const radii = {\n none: { value: \"0\" },\n \"2xs\": { value: sp[25] },\n xs: { value: sp[50] },\n sm: { value: sp[100] },\n md: { value: sp[150] },\n lg: { value: sp[200] },\n xl: { value: sp[400] },\n full: { value: \"100%\" },\n};\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\nimport { alertAnatomy } from \"@chakra-ui/react/anatomy\";\n\nexport const alertSlotRecipe = defineSlotRecipe({\n slots: alertAnatomy.keys(),\n base: {\n root: {\n pt: \"xs\",\n pb: \"xs\",\n },\n },\n});\n","import { defineRecipe } from \"@chakra-ui/react\";\n\nexport const buttonRecipe = defineRecipe({\n base: {\n borderRadius: \"sm\",\n transition: \"all 0.1s ease-in-out\",\n fontFamily: \"label\",\n fontWeight: \"500\",\n color: \"fg\",\n bg: \"bg\",\n borderColor: \"border.muted\",\n _disabled: {\n opacity: 1,\n color: \"fg.subtle\",\n bg: \"bg.muted\",\n _hover: { bg: \"bg.muted\" },\n },\n _loading: {\n opacity: 1,\n color: \"fg.subtle\",\n bg: \"bg.muted\",\n _hover: { bg: \"bg.muted\" },\n },\n },\n variants: {\n variant: {\n \"display-primary\": {\n bg: \"blacks.900\",\n color: \"fg.inverted\",\n borderRadius: \"xl\",\n outline: \"none\",\n border: \"none\",\n _hover: { bg: \"blacks.800\" },\n },\n \"display-outline\": {\n bg: \"transparent\",\n color: \"fg\",\n borderRadius: \"xl\",\n border: \"2px solid {fg}\",\n _hover: { bg: \"bg.hover\" },\n _active: { bg: \"bg.active\" },\n },\n \"display-ghost\": {\n bg: \"transparent\",\n color: \"fg\",\n borderRadius: \"xl\",\n _hover: { bg: \"bg.hover\" },\n _active: { bg: \"bg.active\" },\n },\n \"display-link\": {\n bg: \"transparent\",\n color: \"fg\",\n border: \"none\",\n borderRadius: \"xl\",\n _hover: { textDecoration: \"underline\" },\n _active: { textDecoration: \"underline\" },\n },\n primary: {\n color: \"blacks.1000\",\n bg: \"bg.button.primary.default\",\n border: \"none\",\n _hover: { bg: \"bg.button.primary.hover\" },\n _active: { bg: \"bg.button.primary.pressed\" },\n },\n secondary: {\n color: \"fg\",\n bg: \"bg\",\n border: \"2px solid border.muted\",\n _hover: { bg: \"bg.hover\" },\n _active: { bg: \"bg.active\" },\n _disabled: {\n opacity: 1,\n color: \"fg.subtle\",\n borderColor: \"border.muted\",\n },\n },\n outline: {\n color: \"fg\",\n bg: \"bg\",\n border: \"border.muted\",\n _hover: { bg: \"bg.hover\" },\n _active: { bg: \"bg.active\" },\n _expanded: { bg: \"bg.active\" },\n _disabled: {\n opacity: 1,\n color: \"fg.subtle\",\n borderColor: \"border.muted\",\n },\n },\n ghost: {\n color: \"fg\",\n bg: \"transparent\",\n border: \"none\",\n _hover: { bg: \"bg.hover\" },\n _active: { bg: \"bg.active\" },\n _expanded: { bg: \"bg.active\" },\n _disabled: {\n bg: \"transparent\",\n _hover: { bg: \"transparent\" },\n },\n },\n subtle: {\n color: \"fg\",\n bg: \"bg.subtle\",\n border: \"none\",\n _hover: { bg: \"bg.hover\" },\n _active: { bg: \"bg.active\" },\n _expanded: { bg: \"bg.active\" },\n _disabled: {\n opacity: 1,\n color: \"fg.subtle\",\n bg: \"bg.muted\",\n _hover: { bg: \"bg.muted\" },\n },\n },\n },\n size: {\n xs: {\n _icon: {\n width: \"0.875rem\",\n height: \"0.875rem\",\n },\n },\n \"2xl\": {\n px: \"1.5rem\",\n h: \"3.5rem\",\n textStyle: \"label/L/medium\",\n },\n lg: {\n px: \"1rem\",\n h: \"3rem\",\n textStyle: \"label/M/medium\",\n },\n md: {\n textStyle: \"label/M/medium\",\n },\n sm: {\n px: \"0.5rem\",\n h: \"2rem\",\n textStyle: \"label/S/medium\",\n },\n },\n },\n\n defaultVariants: { size: \"md\", variant: \"outline\" },\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\nimport { dialogAnatomy } from \"@chakra-ui/react/anatomy\";\n\nexport const dialogSlotRecipe = defineSlotRecipe({\n slots: dialogAnatomy.keys(),\n base: {\n content: {\n bg: \"bg\",\n },\n },\n});\n","import { defineRecipe } from \"@chakra-ui/react\";\n\nexport const dividerRecipe = defineRecipe({\n base: {\n borderColor: \"border\",\n },\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\nimport { drawerAnatomy as parts } from \"@chakra-ui/react/anatomy\";\n\nexport const drawerSlotRecipe = defineSlotRecipe({\n slots: parts.keys(),\n base: {\n header: {\n fontWeight: \"medium\",\n textStyle: \"label/M/medium\",\n p: \"xs\",\n },\n content: {\n bg: \"bg\",\n },\n },\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\n\nexport const editableSlotRecipe = defineSlotRecipe({\n slots: [\"preview\", \"input\", \"textarea\"] as const,\n base: {\n preview: {\n textStyle: \"label/L/medium\",\n borderRadius: \"2xs\",\n focusRingColor: \"border\",\n py: \"0\",\n lineHeight: \"1.5rem\",\n transitionProperty: \"common\",\n transitionDuration: \"normal\",\n _hover: { bg: \"bg.hover\" },\n },\n input: {\n textStyle: \"label/L/medium\",\n borderRadius: \"2xs\",\n focusRingColor: \"border\",\n py: \"0\",\n lineHeight: \"1.5rem\",\n transitionProperty: \"common\",\n transitionDuration: \"normal\",\n bg: \"bg\",\n width: \"auto\",\n _focusVisible: { boxShadow: \"none\" },\n _placeholder: { color: \"fg.muted\" },\n },\n textarea: {\n textStyle: \"label/L/medium\",\n borderRadius: \"2xs\",\n focusRingColor: \"border\",\n py: \"0\",\n transitionProperty: \"common\",\n transitionDuration: \"normal\",\n bg: \"bg.muted\",\n width: \"auto\",\n _focusVisible: { boxShadow: \"none\" },\n _placeholder: { color: \"fg.muted\" },\n },\n },\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\nimport { fieldsetAnatomy } from \"@chakra-ui/react/anatomy\";\n\nexport const fieldsetSlotRecipe = defineSlotRecipe({\n slots: fieldsetAnatomy.keys(),\n base: {\n legend: {\n mb: \"2xs\",\n },\n },\n});\n","import { defineRecipe } from \"@chakra-ui/react\";\n\nexport const inputRecipe = defineRecipe({\n base: {\n px: \"sm\",\n borderRadius: \"sm\",\n transition: \"border-color 0.2s ease-in-out\",\n bg: \"bg\",\n color: \"fg\",\n borderColor: \"border.muted\",\n _hover: { borderColor: \"border\" },\n _active: { borderColor: \"blue.border\" },\n _focus: { borderColor: \"blue.border\" },\n _focusVisible: { borderColor: \"blue.border\", outline: \"none\" },\n _placeholder: { color: \"fg.subtle\" },\n },\n variants: {\n size: {\n sm: {\n h: \"2rem\",\n },\n },\n },\n});\n","import { defineRecipe } from \"@chakra-ui/react\";\n\nexport const kbdRecipe = defineRecipe({\n base: {\n display: \"inline-flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n flexShrink: \"0\",\n minW: \"1.25rem\",\n px: \"1\",\n borderRadius: \"0\",\n borderWidth: \"1px\",\n borderStyle: \"solid\",\n fontFamily: \"mono\",\n fontWeight: \"medium\",\n lineHeight: \"1\",\n userSelect: \"none\",\n whiteSpace: \"nowrap\",\n wordSpacing: \"normal\",\n },\n variants: {\n variant: {\n raised: {\n color: \"fg.muted\",\n bg: \"bg.subtle\",\n borderColor: \"border.muted\",\n borderBottomWidth: \"2px\",\n },\n outline: {\n color: \"fg.muted\",\n bg: \"transparent\",\n borderColor: \"border.muted\",\n },\n subtle: {\n color: \"fg\",\n bg: \"bg.muted\",\n borderColor: \"border.subtle\",\n },\n plain: {\n color: \"fg.muted\",\n bg: \"transparent\",\n borderColor: \"transparent\",\n minW: \"auto\",\n px: \"0\",\n },\n },\n size: {\n sm: {\n height: \"1rem\",\n textStyle: \"label/XS/medium\",\n },\n md: {\n height: \"1.25rem\",\n textStyle: \"label/XS/medium\",\n },\n lg: {\n height: \"1.5rem\",\n textStyle: \"label/S/medium\",\n },\n },\n },\n defaultVariants: {\n size: \"md\",\n variant: \"raised\",\n },\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\nimport { menuAnatomy } from \"@chakra-ui/react/anatomy\";\n\nexport const menuSlotRecipe = defineSlotRecipe({\n slots: menuAnatomy.keys(),\n base: {\n itemGroupLabel: {\n ml: \"{2xs}\",\n textStyle: \"label/S/regular\",\n fontWeight: \"normal\",\n color: \"fg.muted\",\n },\n\n item: {\n bg: \"bg.menu-item.default\",\n color: \"fg.menu-item.default\",\n textStyle: \"label/M/regular\",\n cursor: \"pointer\",\n px: \"0\",\n h: \"auto\",\n _hover: {\n bg: \"bg.menu-item.hover\",\n },\n _highlighted: {\n bg: \"bg.menu-item.hover\",\n },\n _focusVisible: {\n bg: \"bg.menu-item.focus\",\n },\n _disabled: {\n cursor: \"not-allowed\",\n },\n },\n\n separator: {\n my: \"2xs\",\n borderColor: \"border.muted\",\n },\n\n content: {\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"0\",\n borderRadius: \"sm\",\n p: \"0\",\n px: \"0\",\n py: \"0\",\n bg: \"bg\",\n borderWidth: \"1px\",\n borderStyle: \"solid\",\n borderColor: \"border.muted\",\n boxShadow: \"low\",\n zIndex: \"dropdown\",\n textStyle: \"label/M/regular\",\n },\n },\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\nimport { popoverAnatomy } from \"@chakra-ui/react/anatomy\";\n\nexport const popoverRecipe = defineSlotRecipe({\n slots: popoverAnatomy.keys(),\n base: {\n positioner: {\n _focus: { boxShadow: \"none !important\" },\n },\n closeTrigger: {\n textStyle: \"label/M/medium\",\n color: \"fg\",\n },\n arrow: {\n bg: \"background-primary !important\",\n borderColor: \"button-secondary-stroke\",\n },\n content: {\n gap: \"8px\",\n py: \"xs\",\n borderRadius: \"xs\",\n bg: \"bg\",\n borderWidth: \"1px\",\n borderStyle: \"solid\",\n borderColor: \"border.muted\",\n _focus: { boxShadow: \"none !important\" },\n },\n title: {\n borderBottom: \"none\",\n textStyle: \"label/M/medium\",\n bg: \"bg\",\n },\n body: { textStyle: \"primary\" },\n footer: {},\n },\n variants: {\n variant: {\n responsive: {\n content: { width: \"unset\" },\n },\n },\n size: {\n \"2xl\": {\n content: { width: \"2xl\" },\n },\n },\n },\n});\n","import { progressCircleSlotRecipe as baseProgressCircleSlotRecipe } from \"@chakra-ui/react/theme\";\n\nconst baseSizeVariants = baseProgressCircleSlotRecipe.variants?.size ?? {};\n\nexport const progressCircleSlotRecipe = {\n ...baseProgressCircleSlotRecipe,\n variants: {\n ...baseProgressCircleSlotRecipe.variants,\n size: {\n ...baseSizeVariants,\n \"2xs\": {\n circle: {\n \"--size\": \"14px\",\n \"--thickness\": \"2px\",\n },\n valueText: {\n textStyle: \"2xs\",\n },\n },\n },\n },\n};\n","import { defineRecipe } from \"@chakra-ui/react\";\n\nexport const skeletonRecipe = defineRecipe({\n base: {\n \"--start-color\": \"fg\",\n \"--end-color\": \"fg.muted\",\n },\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\nimport { tabsAnatomy } from \"@chakra-ui/react/anatomy\";\n\nexport const tabsSlotRecipe = defineSlotRecipe({\n slots: tabsAnatomy.keys(),\n base: {\n trigger: {\n borderRadius: \"0\",\n },\n },\n variants: {\n variant: {\n subtle: {\n trigger: {\n color: \"fg.muted\",\n bg: \"transparent\",\n _hover: {\n bg: \"bg.hover\",\n color: \"fg\",\n },\n _selected: {\n bg: \"bg.muted\",\n color: \"fg\",\n },\n },\n },\n // Folder-style tabs: only the selected tab is outlined and it merges with\n // the panel content below via a transparent bottom border. Adapts Chakra's\n // built-in `outline` variant for use inside a workbench header — the\n // header paints its own full-width bottom line, so the variant's own\n // underline and the negative margins that overlap it are suppressed.\n outline: {\n list: {\n border: \"0\",\n _horizontal: {\n _before: {\n borderBottomWidth: \"0\",\n },\n },\n },\n trigger: {\n color: \"fg.muted\",\n bg: \"transparent\",\n borderWidth: \"1px\",\n borderColor: \"transparent\",\n _selected: {\n color: \"fg\",\n borderColor: \"border.muted\",\n borderBottomColor: \"transparent\",\n },\n _horizontal: {\n borderTopRadius: \"0\",\n marginBottom: \"0\",\n marginEnd: \"0\",\n _selected: {\n borderColor: \"border.muted\",\n borderBottomColor: \"transparent\",\n },\n },\n },\n },\n },\n },\n});\n","import { defineRecipe } from \"@chakra-ui/react\";\n\nexport const textareaRecipe = defineRecipe({\n base: {\n paddingX: \"sm\",\n paddingY: \"xs\",\n opacity: \"1\",\n outline: \"none\",\n color: \"fg\",\n border: \"1px solid\",\n transition: \"border-color 0.2s ease-in-out\",\n borderColor: \"border.muted\",\n _hover: {\n borderColor: \"border\",\n },\n _active: {\n borderColor: \"blue.border\",\n },\n _focus: {\n borderColor: \"blue.border\",\n },\n _focusVisible: {\n borderColor: \"blue.border\",\n },\n _placeholder: {\n color: \"fg.subtle\",\n },\n },\n});\n","import { defineSlotRecipe } from \"@chakra-ui/react\";\nimport { tooltipAnatomy } from \"@chakra-ui/react/anatomy\";\n\nexport const tooltipRecipe = defineSlotRecipe({\n slots: tooltipAnatomy.keys(),\n base: {\n content: {\n bg: \"bg.inverted\",\n color: \"fg.inverted\",\n },\n arrow: {\n bg: \"bg.inverted\",\n },\n },\n});\n","export const borders = {\n DEFAULT: {\n value: \"1px solid {colors.border}\",\n },\n\n muted: {\n value: \"1px solid {colors.border.muted}\",\n },\n\n subtle: {\n value: \"1px solid {colors.border.subtle}\",\n },\n\n inverted: {\n value: \"1px solid {colors.border.inverted}\",\n },\n\n accent: {\n value: \"1px solid {colors.border.accent}\",\n },\n\n \"accent-light\": {\n value: \"1px solid {colors.border.accent-light}\",\n },\n};\n","export const fg = {\n DEFAULT: {\n value: {\n _light: \"{colors.blacks.800}\",\n _dark: \"{colors.blacks.200}\",\n },\n },\n\n muted: {\n value: {\n _light: \"{colors.blacks.450}\",\n _dark: \"{colors.blacks.500}\",\n },\n },\n\n subtle: {\n value: {\n _light: \"{colors.blacks.400}\",\n _dark: \"{colors.blacks.600}\",\n },\n },\n\n inverted: {\n value: {\n _light: \"{colors.blacks.50}\",\n _dark: \"{colors.blacks.800}\",\n },\n },\n\n success: {\n value: {\n _light: \"{colors.green.400}\",\n _dark: \"{colors.green.400}\",\n },\n },\n\n error: {\n value: {\n _light: \"{colors.red.400}\",\n _dark: \"{colors.red.400}\",\n },\n },\n\n accent: {\n \"pink-dark\": {\n value: {\n _light: \"{colors.pink.700}\",\n _dark: \"{colors.pink.50}\",\n },\n },\n },\n\n \"green-dark\": {\n value: {\n _light: \"{colors.green.700}\",\n _dark: \"{colors.green.50}\",\n },\n },\n\n \"blue-dark\": {\n value: {\n _light: \"{colors.sapphire.700}\",\n _dark: \"{colors.sapphire.100}\",\n },\n },\n\n \"blue-very-dark\": {\n value: {\n _light: \"{colors.sapphire.900}\",\n _dark: \"{colors.sapphire.800}\",\n },\n },\n\n button: {\n primary: {\n default: {\n value: {\n _light: \"{colors.blacks.200}\",\n _dark: \"{colors.blacks.200}\",\n },\n },\n disabled: {\n value: \"{colors.fg.subtle}\",\n },\n },\n },\n\n \"menu-item\": {\n default: {\n value: \"{colors.fg}\",\n },\n secondary: {\n value: \"{colors.fg.muted}\",\n },\n },\n};\n\nexport const bg = {\n DEFAULT: {\n value: {\n _light: \"{colors.blacks.50}\",\n _dark: \"{colors.blacks.900}\",\n },\n },\n\n muted: {\n value: {\n _light: \"{colors.neutral.200}\",\n _dark: \"{colors.neutral.800}\",\n },\n },\n\n subtle: {\n value: {\n _light: \"{colors.neutral.50}\",\n _dark: \"{colors.neutral.950}\",\n },\n },\n\n hover: {\n value: {\n _light: \"{colors.neutral.100}\",\n _dark: \"{colors.neutral.850}\",\n },\n },\n\n active: {\n value: {\n _light: \"{colors.neutral.75}\",\n _dark: \"{colors.blacks.850}\",\n },\n },\n\n code: {\n value: {\n _light: \"{colors.blacks.50}\",\n _dark: \"{colors.blacks.800}\",\n },\n },\n\n emphasized: {\n value: {\n _light: \"{colors.bg.active}\",\n _dark: \"{colors.bg.active}\",\n },\n },\n\n inverted: {\n value: {\n _light: \"{colors.blacks.800}\",\n _dark: \"{colors.blacks.100}\",\n },\n },\n\n panel: {\n value: {\n _light: \"{colors.blacks.100}\",\n _dark: \"{colors.blacks.850}\",\n },\n },\n\n dark: {\n value: {\n _light: \"{colors.blacks.900}\",\n _dark: \"{colors.blacks.900}\",\n },\n },\n\n white: {\n value: {\n _light: \"{colors.blacks.50}\",\n _dark: \"{colors.blacks.50}\",\n },\n },\n\n button: {\n primary: {\n default: {\n value: {\n _light: \"{colors.bg.accent-primary.default}\",\n _dark: \"{colors.bg.accent-primary.dark}\",\n },\n },\n hover: {\n value: {\n _light: \"{colors.bg.accent-primary.hover}\",\n _dark: \"{colors.bg.accent-primary.medium}\",\n },\n },\n pressed: {\n value: {\n _light: \"{colors.bg.accent-primary.pressed}\",\n _dark: \"{colors.bg.accent-primary.medium}\",\n },\n },\n disabled: {\n value: \"{colors.bg.muted}\",\n },\n },\n },\n\n \"menu-item\": {\n default: {\n value: \"{colors.bg}\",\n },\n hover: {\n value: {\n _light: \"{colors.bg.hover}\",\n _dark: \"{colors.bg.hover}\",\n },\n },\n focus: {\n value: {\n _light: \"{colors.bg.hover}\",\n _dark: \"{colors.bg.hover}\",\n },\n },\n selected: {\n value: {\n _light: \"{colors.bg.muted}\",\n _dark: \"{colors.bg.muted}\",\n },\n },\n },\n\n display: {\n \"very-light\": {\n value: {\n _light: \"{colors.sand.50}\",\n _dark: \"{colors.blacks.1000}\",\n },\n },\n },\n\n \"accent-primary\": {\n default: {\n value: {\n _light: \"{colors.yellow.75}\",\n _dark: \"{colors.yellow.75}\",\n },\n },\n hover: {\n value: {\n _light: \"{colors.yellow.100}\",\n _dark: \"{colors.yellow.100}\",\n },\n },\n pressed: {\n value: {\n _light: \"{colors.yellow.150}\",\n _dark: \"{colors.yellow.150}\",\n },\n },\n \"very-light\": {\n value: {\n _light: \"{colors.yellow.75}\",\n _dark: \"{colors.yellow.75}\",\n },\n },\n light: {\n value: {\n _light: \"{colors.yellow.75}\",\n _dark: \"{colors.yellow.75}\",\n },\n },\n medium: {\n value: {\n _light: \"{colors.yellow.100}\",\n _dark: \"{colors.yellow.100}\",\n },\n },\n dark: {\n value: {\n _light: \"{colors.yellow.150}\",\n _dark: \"{colors.yellow.150}\",\n },\n },\n },\n\n \"accent-secondary\": {\n \"grey-dark\": {\n value: {\n _light: \"{colors.blacks.50}\",\n _dark: \"{colors.blacks.1000}\",\n },\n },\n \"grey-light\": {\n value: {\n _light: \"{colors.blacks.100}\",\n _dark: \"{colors.blacks.900}\",\n },\n },\n \"red-very-light\": {\n value: {\n _light: \"{colors.red.50}\",\n _dark: \"{colors.red.100}\",\n },\n },\n \"red-light\": {\n value: {\n _light: \"{colors.red.100}\",\n _dark: \"{colors.red.100}\",\n },\n },\n \"pink-light\": {\n value: {\n _light: \"{colors.pink.50}\",\n _dark: \"{colors.pink.700}\",\n },\n },\n \"pink-medium\": {\n value: {\n _light: \"{colors.pink.100}\",\n _dark: \"{colors.pink.800}\",\n },\n },\n \"blue-very-light\": {\n value: {\n _light: \"{colors.blue.25}\",\n _dark: \"{colors.blue.50}\",\n },\n },\n \"blue-light\": {\n value: {\n _light: \"{colors.mint.100}\",\n _dark: \"{colors.mint.100}\",\n },\n },\n \"blue-medium\": {\n value: {\n _light: \"{colors.mint.200}\",\n _dark: \"{colors.mint.200}\",\n },\n },\n \"blue-dark\": {\n value: {\n _light: \"{colors.blue.700}\",\n _dark: \"{colors.blue.200}\",\n },\n },\n \"cyan-light\": {\n value: {\n _light: \"{colors.cyan.50}\",\n _dark: \"{colors.cyan.100}\",\n },\n },\n \"green-light\": {\n value: {\n _light: \"{colors.green.50}\",\n _dark: \"{colors.sapphire.50}\",\n },\n },\n \"yellow-light\": {\n value: {\n _light: \"{colors.yellow.75}\",\n _dark: \"{colors.yellow.75}\",\n },\n },\n \"yellow-medium\": {\n value: {\n _light: \"{colors.yellow.100}\",\n _dark: \"{colors.yellow.100}\",\n },\n },\n \"yellow-dark\": {\n value: {\n _light: \"{colors.yellow.150}\",\n _dark: \"{colors.yellow.150}\",\n },\n },\n \"sand-light\": {\n value: {\n _light: \"{colors.sand.100}\",\n _dark: \"{colors.sand.100}\",\n },\n },\n },\n};\n\nexport const border = {\n DEFAULT: {\n value: {\n _light: \"{colors.neutral.500}\",\n _dark: \"{colors.neutral.600}\",\n },\n },\n\n muted: {\n value: {\n _light: \"{colors.neutral.400}\",\n _dark: \"{colors.neutral.700}\",\n },\n },\n\n subtle: {\n value: {\n _light: \"{colors.neutral.300}\",\n _dark: \"{colors.neutral.750}\",\n },\n },\n\n inverted: {\n value: {\n _light: \"{colors.neutral.600}\",\n _dark: \"{colors.neutral.500}\",\n },\n },\n\n \"accent-light\": {\n value: {\n _light: \"{colors.mint.100}\",\n _dark: \"{colors.mint.100}\",\n },\n },\n\n accent: {\n value: {\n _light: \"{colors.blue.700}\",\n _dark: \"{colors.blue.200}\",\n },\n },\n\n button: {\n primary: {\n value: \"{colors.border.muted}\",\n },\n },\n};\n\nexport const blue = {\n border: {\n value: {\n _light: \"{colors.mint.200}\",\n _dark: \"{colors.mint.200}\",\n },\n },\n};\n\nexport const orange = {\n contrast: {\n value: {\n _light: \"black\",\n _dark: \"black\",\n },\n },\n fg: {\n value: {\n _light: \"{colors.orange.700}\",\n _dark: \"{colors.orange.300}\",\n },\n },\n subtle: {\n value: {\n _light: \"{colors.orange.100}\",\n _dark: \"{colors.orange.900}\",\n },\n },\n muted: {\n value: {\n _light: \"{colors.orange.200}\",\n _dark: \"{colors.orange.800}\",\n },\n },\n emphasized: {\n value: {\n _light: \"{colors.orange.300}\",\n _dark: \"{colors.orange.700}\",\n },\n },\n solid: {\n value: {\n _light: \"{colors.orange.500}\",\n _dark: \"{colors.orange.400}\",\n },\n },\n focusRing: {\n value: {\n _light: \"{colors.orange.500}\",\n _dark: \"{colors.orange.500}\",\n },\n },\n border: {\n value: {\n _light: \"{colors.orange.400}\",\n _dark: \"{colors.orange.500}\",\n },\n },\n};\n\nexport const vis = {\n text: {\n primary: {\n value: {\n _light: \"{colors.blacks.800}\",\n _dark: \"{colors.blacks.200}\",\n },\n },\n secondary: {\n value: {\n _light: \"{colors.blacks.600}\",\n _dark: \"{colors.blacks.500}\",\n },\n },\n },\n\n grid: {\n value: {\n _light: \"{colors.blacks.300}\",\n _dark: \"{colors.blacks.800}\",\n },\n },\n\n axis: {\n value: {\n _light: \"{colors.blacks.700}\",\n _dark: \"{colors.blacks.300}\",\n },\n },\n\n categorical: {\n 1: {\n value: {\n _light: \"{colors.blue.300}\",\n _dark: \"{colors.blue.300}\",\n },\n },\n 2: {\n value: {\n _light: \"{colors.orange.500}\",\n _dark: \"{colors.orange.500}\",\n },\n },\n 3: {\n value: {\n _light: \"{colors.purple.700}\",\n _dark: \"{colors.purple.700}\",\n },\n },\n 4: {\n value: {\n _light: \"{colors.red.500}\",\n _dark: \"{colors.red.600}\",\n },\n },\n 5: {\n value: {\n _light: \"{colors.pink.500}\",\n _dark: \"{colors.pink.500}\",\n },\n },\n 6: {\n value: {\n _light: \"{colors.cyan.800}\",\n _dark: \"{colors.green.500}\",\n },\n },\n 7: {\n value: {\n _light: \"{colors.red.200}\",\n _dark: \"{colors.cyan.700}\",\n },\n },\n },\n\n sequential: {\n blue: {\n \"low-3\": {\n value: {\n _light: \"{colors.blue.200}\",\n _dark: \"{colors.blue.800}\",\n },\n },\n \"low-2\": {\n value: {\n _light: \"{colors.blue.300}\",\n _dark: \"{colors.blue.700}\",\n },\n },\n \"low-1\": {\n value: {\n _light: \"{colors.blue.400}\",\n _dark: \"{colors.blue.600}\",\n },\n },\n default: {\n value: {\n _light: \"{colors.blue.500}\",\n _dark: \"{colors.blue.500}\",\n },\n },\n \"high-1\": {\n value: {\n _light: \"{colors.blue.600}\",\n _dark: \"{colors.blue.400}\",\n },\n },\n \"high-2\": {\n value: {\n _light: \"{colors.blue.700}\",\n _dark: \"{colors.blue.300}\",\n },\n },\n \"high-3\": {\n value: {\n _light: \"{colors.blue.800}\",\n _dark: \"{colors.blue.200}\",\n },\n },\n },\n red: {\n \"low-3\": {\n value: {\n _light: \"{colors.red.200}\",\n _dark: \"{colors.red.800}\",\n },\n },\n \"low-2\": {\n value: {\n _light: \"{colors.red.300}\",\n _dark: \"{colors.red.700}\",\n },\n },\n \"low-1\": {\n value: {\n _light: \"{colors.red.400}\",\n _dark: \"{colors.red.600}\",\n },\n },\n default: {\n value: {\n _light: \"{colors.red.500}\",\n _dark: \"{colors.red.500}\",\n },\n },\n \"high-1\": {\n value: {\n _light: \"{colors.red.600}\",\n _dark: \"{colors.red.400}\",\n },\n },\n \"high-2\": {\n value: {\n _light: \"{colors.red.700}\",\n _dark: \"{colors.red.300}\",\n },\n },\n \"high-3\": {\n value: {\n _light: \"{colors.red.800}\",\n _dark: \"{colors.red.200}\",\n },\n },\n },\n },\n};\n\nexport const text = {\n selectable: {\n primary: {\n value: {\n _light: \"{colors.blacks.800}\",\n _dark: \"{colors.blacks.800}\",\n },\n },\n },\n};\n\nexport const semanticColors = {\n fg,\n bg,\n border,\n blue,\n orange,\n vis,\n text,\n};\n","import { defineLayerStyles } from \"@chakra-ui/react\";\n\nexport const layerStyles = defineLayerStyles({\n modal: {\n value: {\n paddingInline: \"xs\",\n paddingBlock: \"sm\",\n borderRadius: \"sm\",\n bg: \"bg\",\n border: \"1px solid\",\n borderColor: \"border\",\n boxShadow: \"mid\",\n },\n },\n});\n","// Primitive shadow tokens\nexport const shadows = {\n \"low-light\": { value: \"0px 2px 4px 0px rgba(0, 0, 0, 0.10)\" },\n \"mid-light\": { value: \"0px 6px 12px 0px rgba(0, 0, 0, 0.10)\" },\n \"high-light\": { value: \"0px 12px 24px 0px rgba(0, 0, 0, 0.10)\" },\n \"low-dark\": { value: \"0px 2px 4px 0px rgba(0, 0, 0, 0.45)\" },\n \"mid-dark\": { value: \"0px 6px 12px 0px rgba(0, 0, 0, 0.5)\" },\n \"high-dark\": { value: \"0px 12px 24px 0px rgba(0, 0, 0, 0.55)\" },\n \"desktop-icon-label-text-light\": { value: \"0px 1px 3px rgba(15, 23, 42, 0.45)\" },\n \"desktop-icon-label-text-dark\": { value: \"0px 1px 3px rgba(8, 15, 35, 0.75)\" },\n \"desktop-icon-label-text-selected-light\": { value: \"0px 1px 3px rgba(37, 99, 235, 0.55)\" },\n \"desktop-icon-label-text-selected-dark\": { value: \"0px 2px 4px rgba(37, 99, 235, 0.75)\" },\n};\n\n// Semantic shadow tokens for light/dark mode\nexport const semanticShadows = {\n low: {\n value: {\n _light: \"{shadows.low-light}\",\n _dark: \"{shadows.low-dark}\",\n },\n },\n mid: {\n value: {\n _light: \"{shadows.mid-light}\",\n _dark: \"{shadows.mid-dark}\",\n },\n },\n high: {\n value: {\n _light: \"{shadows.high-light}\",\n _dark: \"{shadows.high-dark}\",\n },\n },\n \"desktop-icon-label\": {\n value: {\n _light: \"{shadows.desktop-icon-label-text-light}\",\n _dark: \"{shadows.desktop-icon-label-text-dark}\",\n },\n },\n \"desktop-icon-label-selected\": {\n value: {\n _light: \"{shadows.desktop-icon-label-text-selected-light}\",\n _dark: \"{shadows.desktop-icon-label-text-selected-dark}\",\n },\n },\n};\n","import { defineTextStyles } from \"@chakra-ui/react\";\n\nexport const textStyles = defineTextStyles({\n brand: {\n value: {\n fontFamily: \"brand\",\n fontSize: \"3xl\",\n fontWeight: \"500\",\n },\n },\n \"heading/display/L\": {\n value: {\n fontFamily: \"display\",\n fontWeight: \"600\",\n fontSize: [\"5xl\", \"5xl\", \"5xl\", \"6xl\"],\n lineHeight: \"120%\",\n },\n },\n \"heading/display/M\": {\n value: {\n fontFamily: \"display\",\n fontWeight: \"600\",\n fontSize: [\"4xl\", \"5xl\"],\n lineHeight: \"120%\",\n },\n },\n \"heading/display/S\": {\n value: {\n fontFamily: \"display\",\n fontWeight: \"600\",\n fontSize: [\"3xl\", \"4xl\"],\n lineHeight: \"120%\",\n },\n },\n \"heading/XL\": {\n value: {\n fontFamily: \"heading\",\n fontSize: \"5xl\",\n fontWeight: \"500\",\n lineHeight: \"120%\",\n },\n },\n \"heading/L\": {\n value: {\n fontFamily: \"heading\",\n fontSize: \"4xl\",\n fontWeight: \"500\",\n lineHeight: \"110%\",\n },\n },\n \"heading/M\": {\n value: {\n fontFamily: \"heading\",\n fontSize: \"3xl\",\n fontWeight: \"500\",\n lineHeight: \"120%\",\n },\n },\n \"heading/S\": {\n value: {\n fontFamily: \"heading\",\n fontSize: \"2xl\",\n fontWeight: \"500\",\n lineHeight: \"120%\",\n },\n },\n \"label/XL/regular\": {\n value: {\n fontFamily: \"label\",\n fontSize: \"2xl\",\n fontWeight: \"400\",\n lineHeight: \"150%\",\n letterSpacing: \"0.16px\",\n },\n },\n \"label/L/regular\": {\n value: {\n fontFamily: \"label\",\n fontSize: \"lg\",\n fontWeight: \"400\",\n lineHeight: \"20px\",\n letterSpacing: \"0.16px\",\n },\n },\n \"label/L/medium\": {\n value: {\n fontFamily: \"label\",\n fontSize: \"lg\",\n fontWeight: \"500\",\n lineHeight: \"20px\",\n letterSpacing: \"0.16px\",\n },\n },\n \"label/L/medium/underline\": {\n value: {\n textDecoration: \"underline\",\n fontFamily: \"label\",\n fontSize: \"lg\",\n fontWeight: \"500\",\n lineHeight: \"20px\",\n letterSpacing: \"0.16px\",\n },\n },\n \"label/L/medium/uppercase\": {\n value: {\n letterSpacing: \"0.089rem\",\n fontFamily: \"label\",\n fontWeight: \"600\",\n fontSize: \"lg\",\n lineHeight: \"150%\",\n textTransform: \"uppercase\",\n color: \"fg.muted\",\n },\n },\n \"label/M/regular\": {\n value: {\n fontFamily: \"label\",\n fontSize: \"md\",\n fontWeight: \"400\",\n lineHeight: \"150%\",\n letterSpacing: \"0.14px\",\n },\n },\n \"label/M/regular/underline\": {\n value: {\n fontFamily: \"label\",\n fontSize: \"md\",\n fontWeight: \"400\",\n lineHeight: \"150%\",\n textDecoration: \"underline\",\n letterSpacing: \"0.14px\",\n },\n },\n \"label/M/medium\": {\n value: {\n fontFamily: \"label\",\n fontSize: \"md\",\n fontWeight: \"500\",\n lineHeight: \"150%\",\n letterSpacing: \"0.14px\",\n },\n },\n \"label/S/regular\": {\n value: {\n fontFamily: \"label\",\n fontSize: \"sm\",\n fontWeight: \"400\",\n lineHeight: \"150%\",\n letterSpacing: \"0.12px\",\n },\n },\n \"label/S/medium\": {\n value: {\n fontFamily: \"label\",\n fontSize: \"sm\",\n fontWeight: \"500\",\n lineHeight: \"150%\",\n letterSpacing: \"0.12px\",\n },\n },\n \"label/S/italic\": {\n value: {\n fontFamily: \"label\",\n fontSize: \"sm\",\n fontWeight: \"400\",\n lineHeight: \"150%\",\n letterSpacing: \"0.12px\",\n fontStyle: \"italic\",\n },\n },\n \"label/XS\": {\n value: {\n fontFamily: \"label\",\n fontSize: \"xs\",\n fontWeight: \"400\",\n lineHeight: \"150%\",\n letterSpacing: \"0.1px\",\n },\n },\n \"paragraph/M/regular\": {\n value: {\n fontFamily: \"body\",\n fontSize: \"md\",\n fontWeight: \"400\",\n lineHeight: \"171%\",\n letterSpacing: \"0.14px\",\n },\n },\n \"paragraph/M/medium\": {\n value: {\n fontFamily: \"body\",\n fontSize: \"md\",\n fontWeight: \"500\",\n lineHeight: \"171%\",\n letterSpacing: \"0.14px\",\n },\n },\n \"paragraph/L/regular\": {\n value: {\n fontFamily: \"body\",\n fontSize: \"lg\",\n fontWeight: \"400\",\n lineHeight: \"150%\",\n letterSpacing: \"0.14px\",\n },\n },\n \"paragraph/L/medium\": {\n value: {\n fontFamily: \"body\",\n fontSize: \"lg\",\n fontWeight: \"500\",\n lineHeight: \"150%\",\n letterSpacing: \"0.14px\",\n },\n },\n \"paragraph/XL/regular\": {\n value: {\n fontFamily: \"body\",\n fontWeight: \"400\",\n lineHeight: \"150%\",\n fontSize: [\"xl\", \"2xl\"],\n color: \"fg\",\n letterSpacing: \"0.14px\",\n },\n },\n \"paragraph/XL/medium\": {\n value: {\n fontFamily: \"body\",\n fontWeight: \"500\",\n lineHeight: \"150%\",\n fontSize: [\"xl\", \"2xl\"],\n color: \"fg\",\n letterSpacing: \"0.14px\",\n },\n },\n} satisfies Parameters<typeof defineTextStyles>[0]);\n","import { createSystem, defaultConfig, defineConfig } from \"@chakra-ui/react\";\nimport { globalCss } from \"./global\";\nimport { colors } from \"./primitives/colors\";\nimport { fontSizes, fonts, fontWeights } from \"./primitives/fonts\";\nimport { radii, spacing } from \"./primitives/sizes\";\nimport { alertSlotRecipe } from \"./recipes/alert\";\nimport { buttonRecipe } from \"./recipes/button\";\nimport { dialogSlotRecipe } from \"./recipes/dialog\";\nimport { dividerRecipe } from \"./recipes/divider\";\nimport { drawerSlotRecipe } from \"./recipes/drawer\";\nimport { editableSlotRecipe } from \"./recipes/editable\";\nimport { fieldsetSlotRecipe } from \"./recipes/form\";\nimport { inputRecipe } from \"./recipes/input\";\nimport { kbdRecipe } from \"./recipes/kbd\";\nimport { menuSlotRecipe } from \"./recipes/menu\";\nimport { popoverRecipe } from \"./recipes/popover\";\nimport { progressCircleSlotRecipe } from \"./recipes/progress-circle\";\nimport { skeletonRecipe } from \"./recipes/skeleton\";\nimport { tabsSlotRecipe } from \"./recipes/tabs\";\nimport { textareaRecipe } from \"./recipes/textarea\";\nimport { tooltipRecipe } from \"./recipes/tooltip\";\nimport { borders } from \"./tokens/borders\";\nimport { semanticColors } from \"./tokens/colors\";\nimport { layerStyles } from \"./tokens/layer-styles\";\nimport { semanticShadows, shadows } from \"./tokens/shadows\";\nimport { textStyles } from \"./tokens/text\";\n\nconst config = defineConfig({\n globalCss,\n theme: {\n breakpoints: {\n \"3xl\": \"2560px\",\n \"4xl\": \"3840px\",\n },\n textStyles,\n layerStyles,\n recipes: {\n button: buttonRecipe,\n divider: dividerRecipe,\n input: inputRecipe,\n kbd: kbdRecipe,\n skeleton: skeletonRecipe,\n textarea: textareaRecipe,\n },\n tokens: {\n colors,\n fonts,\n fontSizes,\n fontWeights,\n radii,\n shadows,\n spacing,\n },\n semanticTokens: {\n colors: semanticColors,\n borders,\n shadows: semanticShadows,\n },\n slotRecipes: {\n alert: alertSlotRecipe,\n drawer: drawerSlotRecipe,\n tooltip: tooltipRecipe,\n popover: popoverRecipe,\n menu: menuSlotRecipe,\n editable: editableSlotRecipe,\n form: fieldsetSlotRecipe,\n dialog: dialogSlotRecipe,\n progressCircle: progressCircleSlotRecipe,\n tabs: tabsSlotRecipe,\n },\n },\n});\n\nexport default createSystem(defaultConfig, config);\n"],"names":["tokenMap","focusBorder","foreground","descriptionForeground","disabledForeground","border","getVsCodeTokenPath","token","stripHash","value","replace","createThemePreferenceFromVsCodeTheme","input","tokens","colors","theme","vsCodeToken","Object","entries","tokenPaths","tokenPath","id","mode","createMonacoThemeFromVsCodeTheme","rules","tokenColors","flatMap","tokenColor","Array","isArray","scope","map","settings","fontStyle","base","inherit","globalCss","bg","_dark","color","html","height","width","overflow","body","fontFamily","fontWeight","fontSize","borderColor","display","zIndex","from","opacity","transform","to","blacks","DEFAULT","blue","sapphire","pink","peach","red","orange","yellow","green","teal","cyan","purple","sand","neutral","mint","fonts","brand","heading","label","fontSizes","xs","sm","md","lg","xl","fontWeights","regular","medium","semibold","bold","sp","spacing","none","radii","full","alertSlotRecipe","defineSlotRecipe","slots","alertAnatomy","keys","root","pt","pb","buttonRecipe","defineRecipe","borderRadius","transition","_disabled","_hover","_loading","variants","variant","outline","_active","textDecoration","primary","secondary","_expanded","ghost","subtle","size","_icon","px","h","textStyle","defaultVariants","dialogSlotRecipe","dialogAnatomy","content","dividerRecipe","drawerSlotRecipe","parts","header","p","editableSlotRecipe","preview","focusRingColor","py","lineHeight","transitionProperty","transitionDuration","_focusVisible","boxShadow","_placeholder","textarea","fieldsetSlotRecipe","fieldsetAnatomy","legend","mb","inputRecipe","_focus","kbdRecipe","alignItems","justifyContent","flexShrink","minW","borderWidth","borderStyle","userSelect","whiteSpace","wordSpacing","raised","borderBottomWidth","plain","menuSlotRecipe","menuAnatomy","itemGroupLabel","ml","item","cursor","_highlighted","separator","my","flexDirection","gap","popoverRecipe","popoverAnatomy","positioner","closeTrigger","arrow","title","borderBottom","footer","responsive","baseSizeVariants","baseProgressCircleSlotRecipe","progressCircleSlotRecipe","circle","valueText","skeletonRecipe","tabsSlotRecipe","tabsAnatomy","trigger","_selected","list","_horizontal","_before","borderBottomColor","borderTopRadius","marginBottom","marginEnd","textareaRecipe","paddingX","paddingY","tooltipRecipe","tooltipAnatomy","borders","muted","inverted","accent","fg","_light","success","error","button","default","disabled","hover","active","code","emphasized","panel","dark","white","pressed","focus","selected","light","contrast","solid","focusRing","vis","text","grid","axis","categorical","sequential","selectable","semanticColors","layerStyles","defineLayerStyles","modal","paddingInline","paddingBlock","shadows","semanticShadows","low","mid","high","textStyles","defineTextStyles","letterSpacing","textTransform","config","defineConfig","breakpoints","recipes","divider","kbd","skeleton","semanticTokens","slotRecipes","alert","drawer","tooltip","popover","menu","editable","form","dialog","progressCircle","tabs","createSystem","defaultConfig"],"mappings":"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"}
package/dist/theme.js CHANGED
@@ -6,12 +6,10 @@ import "@fontsource/playfair-display/700.css";
6
6
  import "@fontsource/onest/400.css";
7
7
  import "@fontsource/onest/500.css";
8
8
  import "@fontsource/onest/700.css";
9
- import { c as h, a as T, b as n, m as f, t as P } from "./theme-D-aCJqTf.js";
9
+ import { c as h, a as T, t as d } from "./theme-qP4YOZ2R.js";
10
10
  export {
11
11
  h as createMonacoThemeFromVsCodeTheme,
12
12
  T as createThemePreferenceFromVsCodeTheme,
13
- n as customThemePreferences,
14
- f as monokaiThemePreference,
15
- P as psTheme
13
+ d as psTheme
16
14
  };
17
15
  //# sourceMappingURL=theme.js.map
@@ -0,0 +1,7 @@
1
+ interface BrowserStorage {
2
+ getItem: (key: string) => string | null;
3
+ removeItem: (key: string) => void;
4
+ setItem: (key: string, value: string) => void;
5
+ }
6
+ export declare const createBrowserStorage: () => BrowserStorage;
7
+ export {};
@@ -0,0 +1 @@
1
+ export declare const installPrismGlobal: () => Promise<void>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pstdio/ui",
3
- "version": "0.7.1",
3
+ "version": "0.9.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/pufflyai/prompt-studio"
@@ -33,10 +33,10 @@
33
33
  "./style.css": "./dist/style.css"
34
34
  },
35
35
  "scripts": {
36
- "build": "vite build",
36
+ "build": "bun run typegen:tokens && vite build",
37
37
  "visualize-bundle": "bunx vite-bundle-visualizer",
38
38
  "lint": "biome check .",
39
- "typegen:tokens": "chakra typegen ./src/theme/theme.ts",
39
+ "typegen:tokens": "chakra typegen ./src/theme/theme.ts && rm -f chakra-config.json",
40
40
  "test": "bun test --silent",
41
41
  "perf:chat": "bunx playwright test -c playwright.chat-perf.config.ts",
42
42
  "perf:chat:trace": "PLAYWRIGHT_TRACE=on bunx playwright test -c playwright.chat-perf.config.ts",
@@ -52,6 +52,9 @@
52
52
  "react-dom": "^19.0.0"
53
53
  },
54
54
  "dependencies": {
55
+ "@dnd-kit/core": "^6.3.1",
56
+ "@dnd-kit/sortable": "^10.0.0",
57
+ "@dnd-kit/utilities": "^3.2.2",
55
58
  "@fontsource/inter": "^5.2.8",
56
59
  "@fontsource/onest": "^5.2.11",
57
60
  "@fontsource/playfair-display": "^5.2.8",
@@ -78,6 +81,7 @@
78
81
  "lexical": "^0.40.0",
79
82
  "lucide-react": "^0.556.0",
80
83
  "mermaid": "11.15.0",
84
+ "prismjs": "^1.30.0",
81
85
  "use-stick-to-bottom": "^1.1.3",
82
86
  "y-protocols": "^1.0.7",
83
87
  "y-websocket": "^3.0.0",
@@ -85,6 +89,7 @@
85
89
  "zustand": "^5.0.8"
86
90
  },
87
91
  "devDependencies": {
92
+ "@chakra-ui/cli": "^3.30.0",
88
93
  "@chakra-ui/react": "3.32.0",
89
94
  "@emotion/react": "11.14.0",
90
95
  "@playwright/test": "^1.50.0",
@@ -1 +0,0 @@
1
- {"version":3,"file":"MermaidComponent-D7Baqkwx.js","sources":["../src/components/rich-text/shared/plugins/MermaidPlugin/MermaidComponent.tsx"],"sourcesContent":["import { Box, Button, Flex, NumberInput, Text, Textarea } from \"@chakra-ui/react\";\nimport { useLexicalComposerContext } from \"@lexical/react/LexicalComposerContext\";\nimport { useLexicalEditable } from \"@lexical/react/useLexicalEditable\";\nimport { $getNodeByKey } from \"lexical\";\nimport mermaid from \"mermaid\";\nimport { useEffect, useId, useRef, useState } from \"react\";\nimport { $isMermaidNode } from \"./MermaidNode\";\n\nlet mermaidInitialized = false;\n\nfunction initializeMermaid() {\n if (mermaidInitialized) {\n return;\n }\n\n mermaid.initialize({\n startOnLoad: false,\n securityLevel: \"strict\",\n theme: \"default\",\n });\n\n mermaidInitialized = true;\n}\n\nfunction formatErrorMessage(error: unknown) {\n if (!(error instanceof Error)) {\n return \"Failed to render mermaid diagram.\";\n }\n\n return error.message;\n}\n\nconst MIN_ZOOM = 0;\nconst MAX_ZOOM = 2;\nconst ZOOM_STEP = 0.1;\n\nfunction clampZoom(value: number) {\n return Number(Math.min(MAX_ZOOM, Math.max(MIN_ZOOM, value)).toFixed(2));\n}\n\ninterface MermaidComponentProps {\n code: string;\n nodeKey: string;\n}\n\nexport default function MermaidComponent(props: MermaidComponentProps) {\n const { code, nodeKey } = props;\n const [editor] = useLexicalComposerContext();\n const isEditable = useLexicalEditable();\n const [isEditing, setIsEditing] = useState(false);\n const [draftCode, setDraftCode] = useState(code);\n const [previewCode, setPreviewCode] = useState(code);\n const [svgMarkup, setSvgMarkup] = useState(\"\");\n const [renderError, setRenderError] = useState(\"\");\n const [isRendering, setIsRendering] = useState(false);\n const [zoom, setZoom] = useState(1);\n const [offset, setOffset] = useState({ x: 0, y: 0 });\n const [isPanning, setIsPanning] = useState(false);\n const panStartRef = useRef({ pointerId: -1, x: 0, y: 0 });\n const renderId = useId().replaceAll(\":\", \"-\");\n\n useEffect(() => {\n setDraftCode(code);\n setPreviewCode(code);\n }, [code]);\n\n useEffect(() => {\n let cancelled = false;\n\n async function renderDiagram() {\n initializeMermaid();\n setIsRendering(true);\n setRenderError(\"\");\n\n try {\n const { svg } = await mermaid.render(`mermaid-${renderId}`, previewCode);\n if (!cancelled) {\n setSvgMarkup(svg);\n }\n } catch (error) {\n if (!cancelled) {\n setSvgMarkup(\"\");\n setRenderError(formatErrorMessage(error));\n }\n } finally {\n if (!cancelled) {\n setIsRendering(false);\n }\n }\n }\n\n if (!isEditing) {\n void renderDiagram();\n }\n\n return () => {\n cancelled = true;\n };\n }, [isEditing, previewCode, renderId]);\n\n const commitCodeChanges = () => {\n editor.update(() => {\n const node = $getNodeByKey(nodeKey);\n if ($isMermaidNode(node)) {\n node.setCode(draftCode);\n }\n });\n\n setPreviewCode(draftCode);\n resetView();\n setIsEditing(false);\n };\n\n const cancelEditing = () => {\n setDraftCode(previewCode);\n setIsEditing(false);\n };\n\n const resetView = () => {\n setZoom(1);\n setOffset({ x: 0, y: 0 });\n };\n\n return (\n <Box borderWidth=\"1px\" borderColor=\"border.muted\" borderRadius=\"md\" overflow=\"hidden\" width=\"100%\">\n <Flex justifyContent=\"flex-end\" alignItems=\"center\" gap=\"xs\" paddingX=\"sm\" paddingY=\"xs\" bg=\"bg.muted\">\n {!isEditing && !renderError && !isRendering ? (\n <NumberInput.Root\n size=\"xs\"\n width=\"64px\"\n defaultValue={\"100\"}\n min={MIN_ZOOM}\n max={MAX_ZOOM}\n step={ZOOM_STEP}\n formatOptions={{\n style: \"percent\",\n }}\n onValueChange={({ valueAsNumber }) => {\n if (Number.isNaN(valueAsNumber)) {\n return;\n }\n\n setZoom(clampZoom(valueAsNumber));\n }}\n >\n <NumberInput.Control />\n <NumberInput.Input aria-label=\"Zoom percentage\" />\n </NumberInput.Root>\n ) : null}\n\n {isEditable ? (\n isEditing ? (\n <Flex gap=\"xs\">\n <Button size=\"xs\" variant=\"surface\" onClick={cancelEditing}>\n Cancel\n </Button>\n <Button size=\"xs\" onClick={commitCodeChanges}>\n Preview\n </Button>\n </Flex>\n ) : (\n <Button size=\"xs\" variant=\"surface\" onClick={() => setIsEditing(true)}>\n Edit\n </Button>\n )\n ) : null}\n </Flex>\n\n {isEditing ? (\n <Box padding=\"sm\" bg=\"bg.muted\">\n <Textarea\n value={draftCode}\n onChange={(event) => setDraftCode(event.target.value)}\n minHeight=\"180px\"\n resize=\"vertical\"\n fontFamily=\"mono\"\n fontSize=\"sm\"\n spellCheck={false}\n />\n </Box>\n ) : (\n <Box paddingX=\"sm\" paddingBottom=\"sm\" background=\"bg.muted\">\n {isRendering ? <Text color=\"fg.muted\">Rendering diagram...</Text> : null}\n {renderError ? (\n <Box>\n <Text color=\"fg.error\" textStyle=\"label/S/medium\">\n Mermaid parse failed\n </Text>\n <Text color=\"fg.muted\" textStyle=\"label/S/regular\" marginTop=\"2xs\">\n {renderError}\n </Text>\n <Box as=\"pre\" marginTop=\"sm\" padding=\"sm\" borderRadius=\"sm\" bg=\"bg.panel\" overflowX=\"auto\">\n {previewCode}\n </Box>\n </Box>\n ) : (\n <Box\n borderRadius=\"sm\"\n overflow=\"hidden\"\n minHeight=\"160px\"\n onWheel={(event) => {\n event.preventDefault();\n event.stopPropagation();\n }}\n >\n <Box\n transform={`translate(${offset.x}px, ${offset.y}px) scale(${zoom})`}\n transformOrigin=\"top left\"\n cursor={isPanning ? \"grabbing\" : \"grab\"}\n touchAction=\"none\"\n onPointerDown={(event) => {\n panStartRef.current = {\n pointerId: event.pointerId,\n x: event.clientX - offset.x,\n y: event.clientY - offset.y,\n };\n setIsPanning(true);\n event.currentTarget.setPointerCapture(event.pointerId);\n }}\n onPointerMove={(event) => {\n if (!isPanning || panStartRef.current.pointerId !== event.pointerId) {\n return;\n }\n\n setOffset({\n x: event.clientX - panStartRef.current.x,\n y: event.clientY - panStartRef.current.y,\n });\n }}\n onPointerUp={(event) => {\n if (panStartRef.current.pointerId !== event.pointerId) {\n return;\n }\n\n setIsPanning(false);\n event.currentTarget.releasePointerCapture(event.pointerId);\n }}\n onPointerCancel={() => {\n setIsPanning(false);\n }}\n css={{\n \"& img\": {\n display: \"block\",\n width: \"100%\",\n height: \"auto\",\n userSelect: \"none\",\n },\n }}\n >\n <img\n alt=\"Mermaid diagram\"\n src={`data:image/svg+xml;utf8,${encodeURIComponent(svgMarkup)}`}\n draggable={false}\n />\n </Box>\n </Box>\n )}\n </Box>\n )}\n </Box>\n );\n}\n"],"names":["mermaidInitialized","initializeMermaid","mermaid","initialize","startOnLoad","securityLevel","theme","formatErrorMessage","error","Error","message","MIN_ZOOM","MAX_ZOOM","ZOOM_STEP","clampZoom","value","Number","Math","min","max","toFixed","MermaidComponent","props","code","nodeKey","editor","useLexicalComposerContext","isEditable","useLexicalEditable","isEditing","setIsEditing","useState","draftCode","setDraftCode","previewCode","setPreviewCode","svgMarkup","setSvgMarkup","renderError","setRenderError","isRendering","setIsRendering","zoom","setZoom","offset","setOffset","x","y","isPanning","setIsPanning","panStartRef","useRef","pointerId","renderId","useId","replaceAll","useEffect","cancelled","renderDiagram","svg","render","commitCodeChanges","update","node","$getNodeByKey","$isMermaidNode","setCode","resetView","cancelEditing","jsxs","Box","Flex","NumberInput","style","valueAsNumber","isNaN","jsx","Button","Textarea","event","target","Text","preventDefault","stopPropagation","current","clientX","clientY","currentTarget","setPointerCapture","releasePointerCapture","display","width","height","userSelect","encodeURIComponent"],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- import { DisplayProperty, GroupingField, OrderingField, WorkspaceOption, WorkspaceSettings } from './types';
2
- interface DisplayMenuProps {
3
- settings: WorkspaceSettings;
4
- groupingOptions: WorkspaceOption<GroupingField>[];
5
- orderingOptions: WorkspaceOption<OrderingField>[];
6
- displayPropertyOptions: WorkspaceOption<DisplayProperty>[];
7
- onViewModeChange: (value: WorkspaceSettings["viewMode"]) => void;
8
- onColumnGroupingChange: (value: GroupingField) => void;
9
- onRowGroupingChange: (value: GroupingField) => void;
10
- onOrderingFieldChange: (value: OrderingField) => void;
11
- onSortDirectionToggle: () => void;
12
- onDisplayPropertyToggle: (property: DisplayProperty) => void;
13
- }
14
- export declare const DisplayMenu: (props: DisplayMenuProps) => import("react/jsx-runtime").JSX.Element;
15
- export {};
@@ -1,11 +0,0 @@
1
- import { FilterState, WorkspaceFilterCategory } from './types';
2
- interface FilterMenuProps {
3
- categories: WorkspaceFilterCategory[];
4
- filters: FilterState;
5
- countsByCategory: Record<string, Record<string, number>>;
6
- onToggleFilterValue: (category: WorkspaceFilterCategory["id"], value: string) => void;
7
- onClearFilter: (category: WorkspaceFilterCategory["id"]) => void;
8
- onClearAll: () => void;
9
- }
10
- export declare const FilterMenu: (props: FilterMenuProps) => import("react/jsx-runtime").JSX.Element;
11
- export {};
@@ -1,10 +0,0 @@
1
- import { WorkspaceTagOption } from './types';
2
- interface TagBadgeProps {
3
- value: string | null;
4
- label?: string;
5
- color?: string;
6
- options: WorkspaceTagOption[];
7
- onValueChange?: (newValue: string) => void;
8
- }
9
- export declare const TagBadge: (props: TagBadgeProps) => import("react/jsx-runtime").JSX.Element;
10
- export {};
@@ -1,2 +0,0 @@
1
- import { LucideIcon } from 'lucide-react';
2
- export declare const getTagOptionIcon: (icon: string | null | undefined) => LucideIcon | null;
@@ -1,30 +0,0 @@
1
- import { DragEventHandler } from 'react';
2
- import { WorkspaceBadgeProps } from '../workspace-badge';
3
- import { WorkspaceTagOption } from './types';
4
- export interface TicketCardBadge {
5
- label: string;
6
- color?: string;
7
- }
8
- export interface TicketCardTagBadge {
9
- tagName: string;
10
- label: string;
11
- value: string | null;
12
- color?: string;
13
- options: WorkspaceTagOption[];
14
- }
15
- interface TicketCardProps {
16
- ticketId: string;
17
- parentPath?: string[];
18
- title: string;
19
- badges?: TicketCardBadge[];
20
- tagBadges?: TicketCardTagBadge[];
21
- workspaceBadge?: WorkspaceBadgeProps;
22
- isSelected?: boolean;
23
- draggable?: boolean;
24
- onDragStart?: DragEventHandler<HTMLDivElement>;
25
- onDragEnd?: DragEventHandler<HTMLDivElement>;
26
- onClick?: () => void;
27
- onTagChange?: (tagName: string, newValue: string) => void;
28
- }
29
- export declare const TicketCard: (props: TicketCardProps) => import("react/jsx-runtime").JSX.Element;
30
- export {};
@@ -1,22 +0,0 @@
1
- import { FilterCategory, FilterState, GroupingField, WorkspaceOrdering, WorkspaceTagDefinition, WorkspaceTicket } from './types';
2
- interface GroupingOptions {
3
- columnGrouping: GroupingField;
4
- rowGrouping: GroupingField;
5
- knownColumnKeys?: string[];
6
- }
7
- interface TicketRowGroup {
8
- key: string;
9
- label: string;
10
- tickets: WorkspaceTicket[];
11
- }
12
- interface TicketColumnGroup {
13
- key: string;
14
- label: string;
15
- tickets: WorkspaceTicket[];
16
- rows: TicketRowGroup[];
17
- }
18
- export declare const orderTickets: (tickets: WorkspaceTicket[], ordering: WorkspaceOrdering, tagDefinitions?: WorkspaceTagDefinition[]) => WorkspaceTicket[];
19
- export declare const groupTickets: (tickets: WorkspaceTicket[], options: GroupingOptions) => TicketColumnGroup[];
20
- export declare const filterTickets: (tickets: WorkspaceTicket[], filters: FilterState) => WorkspaceTicket[];
21
- export declare const countFilterValues: (tickets: WorkspaceTicket[], category: FilterCategory) => Record<string, number>;
22
- export type { TicketColumnGroup, TicketRowGroup };
@@ -1,31 +0,0 @@
1
- import { ComponentType, ReactNode } from 'react';
2
- import { ResourceContextAction } from '../resource-context-menu';
3
- import { TicketCardBadge, TicketCardTagBadge } from './ticket-card';
4
- export interface TicketListItem {
5
- id: string;
6
- ticketId: string;
7
- title: string;
8
- countBadge?: number;
9
- statusIcon?: ComponentType<{
10
- size?: number | string;
11
- }>;
12
- statusColor?: string;
13
- badges?: TicketCardBadge[];
14
- tagBadges?: TicketCardTagBadge[];
15
- date?: string;
16
- assigneeIcon?: ReactNode;
17
- children?: TicketListItem[];
18
- onClick?: () => void;
19
- onTagChange?: (tagName: string, newValue: string) => void;
20
- contextMenuActions?: ResourceContextAction[];
21
- draggable?: boolean;
22
- onDropTicket?: (ticketId: string) => void;
23
- }
24
- interface TicketListProps {
25
- items: TicketListItem[];
26
- selectedItemId?: string | null;
27
- onItemClick?: (item: TicketListItem) => void;
28
- }
29
- export declare const getTicketListIndentation: (depth: number) => string | undefined;
30
- export declare const TicketList: (props: TicketListProps) => import("react/jsx-runtime").JSX.Element;
31
- export {};
@@ -1,38 +0,0 @@
1
- import { TicketBoardColumnAction } from './ticket-board';
2
- import { DisplayProperty, GroupingField, OrderingField, WorkspaceFilterCategory, WorkspaceOption, WorkspaceTagDefinition, WorkspaceTicket } from './types';
3
- interface BoardColumnConfig {
4
- color?: string;
5
- canDragIn?: boolean;
6
- canDragOut?: boolean;
7
- canCreate?: boolean;
8
- actions?: TicketBoardColumnAction[];
9
- }
10
- interface TicketsWorkspaceProps<TTicket extends WorkspaceTicket = WorkspaceTicket> {
11
- tickets: TTicket[];
12
- storageKey: string;
13
- tagDefinitions?: WorkspaceTagDefinition[];
14
- selectedTicketId?: string | null;
15
- groupingOptions?: WorkspaceOption<GroupingField>[];
16
- orderingOptions?: WorkspaceOption<OrderingField>[];
17
- displayPropertyOptions?: WorkspaceOption<DisplayProperty>[];
18
- filterCategories?: WorkspaceFilterCategory[];
19
- knownColumnKeys?: string[];
20
- emptyTitle?: string;
21
- emptyDescription?: string;
22
- hideToolbar?: boolean;
23
- onTicketClick?: (ticket: TTicket) => void;
24
- onTagChange?: (ticketId: string, tagName: string, newValue: string) => void;
25
- onMoveTicket?: (ticketId: string, targetColumnId: string, context?: {
26
- columnGrouping: GroupingField;
27
- beforeTicketId?: string;
28
- }) => void;
29
- onMoveToGroup?: (ticketId: string, targetGroupKey: string, context?: {
30
- rowGrouping: GroupingField;
31
- beforeTicketId?: string;
32
- }) => void;
33
- onCreateTicket?: (columnId: string) => void;
34
- onColumnAction?: (columnId: string, actionId: string) => Promise<void> | void;
35
- getBoardColumnConfig?: (groupKey: string) => BoardColumnConfig;
36
- }
37
- export declare const TicketsWorkspace: <TTicket extends WorkspaceTicket>(props: TicketsWorkspaceProps<TTicket>) => import("react/jsx-runtime").JSX.Element;
38
- export type { TicketsWorkspaceProps };
@@ -1,64 +0,0 @@
1
- export type ViewMode = "board" | "list";
2
- export type GroupingField = "status" | "assignee" | "none" | `tag:${string}`;
3
- export type OrderingField = "manual" | "updated" | "title" | "ticketId" | `tag:${string}`;
4
- export type SortDirection = "asc" | "desc";
5
- export type DisplayProperty = "id" | "status" | "assignee" | "updated" | `tag:${string}`;
6
- export type FilterCategory = "status" | "assignee" | `tag:${string}`;
7
- export interface WorkspaceOrdering {
8
- field: OrderingField;
9
- direction: SortDirection;
10
- }
11
- export interface WorkspaceSettings {
12
- viewMode: ViewMode;
13
- columnGrouping: GroupingField;
14
- rowGrouping: GroupingField;
15
- ordering: WorkspaceOrdering;
16
- displayProperties: DisplayProperty[];
17
- }
18
- export type FilterState = Partial<Record<FilterCategory, string[]>>;
19
- export interface WorkspaceOption<TValue extends string> {
20
- value: TValue;
21
- label: string;
22
- }
23
- export interface WorkspaceFilterOption {
24
- value: string;
25
- label: string;
26
- }
27
- export interface WorkspaceFilterCategory {
28
- id: FilterCategory;
29
- label: string;
30
- options: WorkspaceFilterOption[];
31
- }
32
- export interface WorkspaceTagOption {
33
- value: string;
34
- label: string;
35
- color?: string;
36
- icon?: string | null;
37
- }
38
- export interface WorkspaceTagDefinition {
39
- name: string;
40
- label: string;
41
- options: WorkspaceTagOption[];
42
- }
43
- export interface WorkspaceTag {
44
- name: string;
45
- value: string;
46
- }
47
- export interface WorkspaceTicket {
48
- id: string;
49
- ticketId: string;
50
- title: string;
51
- status?: string | null;
52
- statusColor?: string;
53
- assignee?: string | null;
54
- tags?: WorkspaceTag[];
55
- updatedAt?: string | null;
56
- parentPath?: string[];
57
- isSubIssue?: boolean;
58
- }
59
- export declare const DEFAULT_WORKSPACE_SETTINGS: WorkspaceSettings;
60
- export declare const DEFAULT_GROUPING_OPTIONS: WorkspaceOption<GroupingField>[];
61
- export declare const DEFAULT_ORDERING_OPTIONS: WorkspaceOption<OrderingField>[];
62
- export declare const DEFAULT_DISPLAY_PROPERTY_OPTIONS: WorkspaceOption<DisplayProperty>[];
63
- export declare const isTagKey: (key: string) => key is `tag:${string}`;
64
- export declare const toTagName: (key: `tag:${string}`) => string;