@dxos/ui-theme 0.8.4-main.c85a9c8dae → 0.8.4-main.e00bdcdb52

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 (147) hide show
  1. package/dist/lib/browser/index.mjs +397 -471
  2. package/dist/lib/browser/index.mjs.map +4 -4
  3. package/dist/lib/browser/meta.json +1 -1
  4. package/dist/lib/node-esm/index.mjs +397 -471
  5. package/dist/lib/node-esm/index.mjs.map +4 -4
  6. package/dist/lib/node-esm/meta.json +1 -1
  7. package/dist/plugin/node-cjs/{theme.css → main.css} +122 -55
  8. package/dist/plugin/node-cjs/main.css.map +7 -0
  9. package/dist/plugin/node-cjs/meta.json +1 -1
  10. package/dist/plugin/node-cjs/plugins/ThemePlugin.cjs +8 -15
  11. package/dist/plugin/node-cjs/plugins/ThemePlugin.cjs.map +3 -3
  12. package/dist/plugin/node-esm/{theme.css → main.css} +122 -55
  13. package/dist/plugin/node-esm/main.css.map +7 -0
  14. package/dist/plugin/node-esm/meta.json +1 -1
  15. package/dist/plugin/node-esm/plugins/ThemePlugin.mjs +8 -15
  16. package/dist/plugin/node-esm/plugins/ThemePlugin.mjs.map +3 -3
  17. package/dist/types/src/Theme.stories.d.ts.map +1 -1
  18. package/dist/types/src/defs.d.ts +2 -2
  19. package/dist/types/src/defs.d.ts.map +1 -1
  20. package/dist/types/src/fragments/density.d.ts +1 -4
  21. package/dist/types/src/fragments/density.d.ts.map +1 -1
  22. package/dist/types/src/fragments/index.d.ts +0 -5
  23. package/dist/types/src/fragments/index.d.ts.map +1 -1
  24. package/dist/types/src/fragments/text.d.ts +0 -5
  25. package/dist/types/src/fragments/text.d.ts.map +1 -1
  26. package/dist/types/src/index.d.ts +1 -1
  27. package/dist/types/src/index.d.ts.map +1 -1
  28. package/dist/types/src/plugins/ThemePlugin.d.ts +1 -1
  29. package/dist/types/src/plugins/ThemePlugin.d.ts.map +1 -1
  30. package/dist/types/src/theme/components/avatar.d.ts.map +1 -1
  31. package/dist/types/src/theme/components/card.d.ts +3 -2
  32. package/dist/types/src/theme/components/card.d.ts.map +1 -1
  33. package/dist/types/src/theme/components/dialog.d.ts.map +1 -1
  34. package/dist/types/src/theme/components/focus.d.ts +6 -0
  35. package/dist/types/src/theme/components/focus.d.ts.map +1 -0
  36. package/dist/types/src/theme/components/icon-button.d.ts +1 -0
  37. package/dist/types/src/theme/components/icon-button.d.ts.map +1 -1
  38. package/dist/types/src/theme/components/icon.d.ts +3 -0
  39. package/dist/types/src/theme/components/icon.d.ts.map +1 -1
  40. package/dist/types/src/theme/components/index.d.ts +1 -0
  41. package/dist/types/src/theme/components/index.d.ts.map +1 -1
  42. package/dist/types/src/theme/components/input.d.ts +8 -8
  43. package/dist/types/src/theme/components/input.d.ts.map +1 -1
  44. package/dist/types/src/theme/components/link.d.ts.map +1 -1
  45. package/dist/types/src/theme/components/list.d.ts.map +1 -1
  46. package/dist/types/src/theme/components/main.d.ts.map +1 -1
  47. package/dist/types/src/theme/components/message.d.ts.map +1 -1
  48. package/dist/types/src/theme/components/popover.d.ts.map +1 -1
  49. package/dist/types/src/theme/components/scroll-area.d.ts +12 -2
  50. package/dist/types/src/theme/components/scroll-area.d.ts.map +1 -1
  51. package/dist/types/src/theme/components/select.d.ts.map +1 -1
  52. package/dist/types/src/theme/components/status.d.ts +1 -1
  53. package/dist/types/src/theme/components/status.d.ts.map +1 -1
  54. package/dist/types/src/theme/components/toast.d.ts.map +1 -1
  55. package/dist/types/src/theme/components/toolbar.d.ts +0 -1
  56. package/dist/types/src/theme/components/toolbar.d.ts.map +1 -1
  57. package/dist/types/src/theme/components/tooltip.d.ts.map +1 -1
  58. package/dist/types/src/theme/components/treegrid.d.ts.map +1 -1
  59. package/dist/types/src/theme/index.d.ts +1 -0
  60. package/dist/types/src/theme/index.d.ts.map +1 -1
  61. package/dist/types/src/theme/primitives/column.d.ts +25 -3
  62. package/dist/types/src/theme/primitives/column.d.ts.map +1 -1
  63. package/dist/types/src/theme/primitives/panel.d.ts +9 -5
  64. package/dist/types/src/theme/primitives/panel.d.ts.map +1 -1
  65. package/dist/types/src/theme/theme.d.ts.map +1 -1
  66. package/dist/types/src/util/elevation.d.ts.map +1 -0
  67. package/dist/types/src/util/hash-styles.d.ts.map +1 -1
  68. package/dist/types/src/util/index.d.ts +3 -0
  69. package/dist/types/src/util/index.d.ts.map +1 -1
  70. package/dist/types/src/util/mx.d.ts +52 -4
  71. package/dist/types/src/util/mx.d.ts.map +1 -1
  72. package/dist/types/src/util/size.d.ts +27 -0
  73. package/dist/types/src/util/size.d.ts.map +1 -0
  74. package/dist/types/src/util/valence.d.ts +4 -0
  75. package/dist/types/src/util/valence.d.ts.map +1 -0
  76. package/dist/types/tsconfig.tsbuildinfo +1 -1
  77. package/package.json +13 -15
  78. package/src/css/components/button.css +2 -1
  79. package/src/css/components/{focus-ring.css → focus.css} +15 -1
  80. package/src/css/components/icon.css +9 -0
  81. package/src/css/components/panel.css +22 -22
  82. package/src/css/components/selected.css +30 -0
  83. package/src/css/components/tag.css +3 -1
  84. package/src/css/integrations/codemirror.css +5 -3
  85. package/src/css/integrations/tldraw.css +1 -0
  86. package/src/css/layout/main.css +0 -7
  87. package/src/css/layout/size.css +19 -27
  88. package/src/css/theme/animation.css +31 -0
  89. package/src/css/theme/palette.css +8 -0
  90. package/src/css/theme/semantic.css +25 -9
  91. package/src/css/theme/spacing.css +36 -19
  92. package/src/css/utilities.css +114 -3
  93. package/src/defs.ts +1 -1
  94. package/src/fragments/AUDIT.md +57 -0
  95. package/src/fragments/density.ts +8 -5
  96. package/src/fragments/index.ts +1 -6
  97. package/src/fragments/text.ts +1 -6
  98. package/src/index.ts +1 -1
  99. package/src/{theme.css → main.css} +10 -6
  100. package/src/plugins/ThemePlugin.ts +12 -24
  101. package/src/plugins/main.css +45 -0
  102. package/src/theme/components/avatar.ts +3 -4
  103. package/src/theme/components/button.ts +1 -1
  104. package/src/theme/components/card.ts +19 -11
  105. package/src/theme/components/dialog.ts +4 -3
  106. package/src/theme/components/focus.ts +33 -0
  107. package/src/theme/components/icon-button.ts +6 -5
  108. package/src/theme/components/icon.ts +13 -4
  109. package/src/theme/components/index.ts +1 -0
  110. package/src/theme/components/input.ts +15 -30
  111. package/src/theme/components/link.ts +1 -2
  112. package/src/theme/components/list.ts +4 -4
  113. package/src/theme/components/menu.ts +4 -4
  114. package/src/theme/components/message.ts +2 -3
  115. package/src/theme/components/popover.ts +4 -5
  116. package/src/theme/components/scroll-area.ts +58 -46
  117. package/src/theme/components/select.ts +2 -3
  118. package/src/theme/components/status.ts +5 -5
  119. package/src/theme/components/toast.ts +2 -3
  120. package/src/theme/components/toolbar.ts +1 -7
  121. package/src/theme/components/tooltip.ts +1 -2
  122. package/src/theme/components/treegrid.ts +1 -1
  123. package/src/theme/index.ts +1 -0
  124. package/src/theme/primitives/column.ts +49 -8
  125. package/src/theme/primitives/panel.ts +19 -23
  126. package/src/theme/theme.ts +2 -0
  127. package/src/typings.d.ts +3 -0
  128. package/src/util/index.ts +3 -0
  129. package/src/util/mx.ts +119 -8
  130. package/src/util/size.ts +103 -0
  131. package/dist/plugin/node-cjs/theme.css.map +0 -7
  132. package/dist/plugin/node-esm/theme.css.map +0 -7
  133. package/dist/types/src/fragments/elevation.d.ts.map +0 -1
  134. package/dist/types/src/fragments/focus.d.ts +0 -4
  135. package/dist/types/src/fragments/focus.d.ts.map +0 -1
  136. package/dist/types/src/fragments/selected.d.ts +0 -4
  137. package/dist/types/src/fragments/selected.d.ts.map +0 -1
  138. package/dist/types/src/fragments/size.d.ts +0 -7
  139. package/dist/types/src/fragments/size.d.ts.map +0 -1
  140. package/dist/types/src/fragments/valence.d.ts +0 -4
  141. package/dist/types/src/fragments/valence.d.ts.map +0 -1
  142. package/src/fragments/focus.ts +0 -11
  143. package/src/fragments/selected.ts +0 -12
  144. package/src/fragments/size.ts +0 -117
  145. /package/dist/types/src/{fragments → util}/elevation.d.ts +0 -0
  146. /package/src/{fragments → util}/elevation.ts +0 -0
  147. /package/src/{fragments → util}/valence.ts +0 -0
@@ -6,24 +6,38 @@
6
6
 
7
7
  /* src/css/theme/animation.css */
8
8
  @theme { --ease-in-out-symmetric: cubic-bezier(0.5, 0, 0.5, 1); @keyframes fade-in { from { opacity: 0; } to { opacity: 1; } } @keyframes fade-out { from { opacity: 1; } to { opacity: 0; } } --animate-fade-in: fade-in 200ms ease-out; --animate-fade-out: fade-out 400ms ease-out; @keyframes slide-down-and-fade { from { opacity: 1; transform: translateY(0); } to { opacity: 0; transform: translateY(16px); } } @keyframes slide-left-and-fade { from { opacity: 0; transform: translateX(-16px); } to { opacity: 1; transform: translateX(0); } } @keyframes slide-up-and-fade { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: translateY(0); } } @keyframes slide-right-and-fade { from { opacity: 0; transform: translateX(16px); } to { opacity: 1; transform: translateX(0); } } --animate-slide-down-and-fade: slide-down-and-fade 400ms cubic-bezier(0.16, 1, 0.3, 1); --animate-slide-left-and-fade: slide-left-and-fade 400ms cubic-bezier(0.16, 1, 0.3, 1); --animate-slide-up-and-fade: slide-up-and-fade 400ms cubic-bezier(0.16, 1, 0.3, 1); --animate-slide-right-and-fade: slide-right-and-fade 400ms cubic-bezier(0.16, 1, 0.3, 1); @keyframes toast-hide { 0% { opacity: 1; } 100% { opacity: 0; } } @keyframes toast-slide-in-right { 0% { transform: translateX(calc(100% + 1rem)); } 100% { transform: translateX(0); } } @keyframes toast-slide-in-bottom { 0% { transform: translateY(calc(100% + 1rem)); } 100% { transform: translateY(0); } } @keyframes toast-swipe-out { 0% { transform: translateX(var(--radix-toast-swipe-end-x)); } 100% { transform: translateX(calc(100% + 1rem)); } } --animate-toast-hide: toast-hide 100ms ease-in forwards; --animate-toast-slide-in-right: toast-slide-in-right 150ms cubic-bezier(0.16, 1, 0.3, 1); --animate-toast-slide-in-bottom: toast-slide-in-bottom 150ms cubic-bezier(0.16, 1, 0.3, 1); --animate-toast-swipe-out: toast-swipe-out 100ms ease-out forwards; @keyframes slide-down { from { height: 0px; } to { height: var(--radix-accordion-content-height); } } @keyframes slide-up { from { height: var(--radix-accordion-content-height); } to { height: 0px; } } --animate-slide-down: slide-down 300ms cubic-bezier(0.87, 0, 0.13, 1); --animate-slide-up: slide-up 300ms cubic-bezier(0.87, 0, 0.13, 1); @keyframes shimmer-loop { 100% { transform: translateX(100%); } } --animate-shimmer: shimmer-loop 2s infinite; @keyframes halo-pulse { 0% { opacity: 0.3; } 5% { opacity: 1; } 100% { opacity: 0.3; } } --animate-halo-pulse: halo-pulse 2s ease-out infinite; @keyframes progress-indeterminate { 0% { left: 0; width: 0%; } 25% { left: 25%; width: 50%; } 75% { left: 50%; width: 100%; } 100% { left: 100%; width: 0%; } } --animate-progress-indeterminate: progress-indeterminate 2s ease-out infinite; @keyframes trail { to { offset-distance: 100%; } } @keyframes trail-offset { 0% { offset-distance: 50%; } 100% { offset-distance: 150%; } } --animate-trail: trail 6s linear infinite; --animate-trail-offset: trail-offset 6s linear infinite; --animate-spin-slow: spin 3s linear infinite; @keyframes blink { 0%, 50%, 100% { opacity: 1; } 25%, 75% { opacity: 0; } } --animate-blink: blink 1s step-start infinite; }
9
+ @keyframes shimmer-text {
10
+ from {
11
+ mask-position-x: 100%;
12
+ -webkit-mask-position-x: 100%;
13
+ }
14
+ to {
15
+ mask-position-x: -100%;
16
+ -webkit-mask-position-x: -100%;
17
+ }
18
+ }
19
+ @media (prefers-reduced-motion: reduce) {
20
+ .animate-halo-pulse,
21
+ .animate-spin-slow,
22
+ .animate-trail,
23
+ .animate-trail-offset,
24
+ .animate-shimmer {
25
+ animation: none;
26
+ }
27
+ }
9
28
 
10
29
  /* src/css/theme/border.css */
11
30
  @theme { --ring-offset-width-focus-offset: var(--dx-focus-offset); --ring-width-focus-line: var(--dx-focus-line); --ring-width-hair-line: var(--dx-hair-line); --ring-width-thick-line: var(--dx-thick-line); --ring-width-no-line: var(--dx-no-line); --border-width-landmark-line: var(--dx-landmark-line); --radius-none: 0; --radius-sm: 0.25rem; --radius: 0.5rem; --radius-md: 0.75rem; --radius-lg: 1rem; --shadow-slider: 0 0 0 5px rgba(0, 0, 0, 0.3); }
12
31
 
13
32
  /* src/css/theme/palette.css */
14
- @theme { --color-neutral-75: color-mix(in oklch, var(--color-neutral-50) 50%, var(--color-neutral-100) 50%); --color-neutral-250: color-mix(in oklch, var(--color-neutral-200) 50%, var(--color-neutral-300) 50%); --color-neutral-750: color-mix(in oklch, var(--color-neutral-700) 50%, var(--color-neutral-800) 50%); --color-neutral-925: color-mix(in oklch, var(--color-neutral-900) 50%, var(--color-neutral-950) 50%); --color-primary-50: var(--color-blue-50); --color-primary-100: var(--color-blue-100); --color-primary-200: var(--color-blue-200); --color-primary-300: var(--color-blue-300); --color-primary-400: var(--color-blue-400); --color-primary-500: var(--color-blue-500); --color-primary-600: var(--color-blue-600); --color-primary-700: var(--color-blue-700); --color-primary-800: var(--color-blue-800); --color-primary-900: var(--color-blue-900); --color-primary-950: var(--color-blue-950); }
33
+ @theme { --color-neutral-75: color-mix(in oklch, var(--color-neutral-50) 50%, var(--color-neutral-100) 50%); --color-neutral-150: color-mix(in oklch, var(--color-neutral-100) 50%, var(--color-neutral-200) 50%); --color-neutral-250: color-mix(in oklch, var(--color-neutral-200) 50%, var(--color-neutral-300) 50%); --color-neutral-750: color-mix(in oklch, var(--color-neutral-700) 50%, var(--color-neutral-800) 50%); --color-neutral-850: color-mix(in oklch, var(--color-neutral-800) 50%, var(--color-neutral-900) 50%); --color-neutral-925: color-mix(in oklch, var(--color-neutral-900) 50%, var(--color-neutral-950) 50%); --color-primary-50: var(--color-blue-50); --color-primary-100: var(--color-blue-100); --color-primary-200: var(--color-blue-200); --color-primary-300: var(--color-blue-300); --color-primary-400: var(--color-blue-400); --color-primary-500: var(--color-blue-500); --color-primary-600: var(--color-blue-600); --color-primary-700: var(--color-blue-700); --color-primary-800: var(--color-blue-800); --color-primary-900: var(--color-blue-900); --color-primary-950: var(--color-blue-950); --color-composer-100: rgb(5 40 61); --color-composer-200: rgb(10 75 105); --color-composer-300: rgb(1 122 183); --color-composer-400: rgb(6 197 253); }
15
34
 
16
35
  /* src/css/theme/semantic.css */
17
- @theme { --color-base-surface: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-base-surface-text: light-dark(var(--color-neutral-950), var(--color-neutral-50)); --color-inverse-surface: light-dark(var(--color-neutral-800), var(--color-neutral-200)); --color-inverse-surface-text: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-input-surface: light-dark(var(--color-neutral-200), var(--color-neutral-800)); --color-input-surface-text: light-dark(var(--color-neutral-950), var(--color-neutral-50)); --color-deck-surface: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-scrim-surface: light-dark( oklch(from var(--color-neutral-50) l c h / 0.5), oklch(from var(--color-neutral-950) l c h / 0.25) ); --color-toolbar-surface: light-dark(var(--color-neutral-75), var(--color-neutral-925)); --color-group-surface: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-modal-surface: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-card-surface: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-sidebar-surface: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-header-surface: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-current-surface: light-dark(var(--color-neutral-200), var(--color-neutral-800)); --color-active-surface: light-dark(var(--color-neutral-200), var(--color-neutral-800)); --color-active-text: light-dark(var(--color-neutral-950), var(--color-neutral-50)); --color-hover-overlay: light-dark(var(--color-neutral-250), var(--color-neutral-750)); --color-hover-surface: light-dark(var(--color-neutral-250), var(--color-neutral-750)); --color-hover-surface-text: light-dark(var(--color-neutral-950), var(--color-neutral-50)); --color-attention-surface: var(--color-focus-surface); --color-focus-surface: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-neutral-focus-indicator: light-dark(var(--color-neutral-400), var(--color-neutral-600)); --color-accent-surface: light-dark(var(--color-blue-600), var(--color-blue-600)); --color-accent-surface-hover: light-dark(var(--color-blue-800), var(--color-blue-800)); --color-accent-surface-text: var(--color-blue-100); --color-accent-text: light-dark(var(--color-blue-600), var(--color-blue-600)); --color-accent-text-hover: light-dark(var(--color-blue-500), var(--color-blue-500)); --color-accent-focus-indicator: light-dark(var(--color-blue-600), var(--color-blue-600)); --color-un-accent: var(--color-neutral-400); --color-un-accent-hover: var(--color-neutral-500); --color-separator: light-dark(var(--color-neutral-200), var(--color-neutral-800)); --color-primary-separator: light-dark(var(--color-neutral-400), var(--color-neutral-800)); --color-subdued-separator: light-dark(var(--color-neutral-300), var(--color-neutral-900)); --color-scrollbar-track: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-scrollbar-thumb: light-dark(var(--color-neutral-200), var(--color-neutral-700)); --color-scrollbar-thumb-active: light-dark(var(--color-neutral-200), var(--color-neutral-600)); --color-scrollbar-thumb-hover: light-dark(var(--color-neutral-200), var(--color-neutral-600)); --color-axis-selected-surface: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-axis-selected-text: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-axis-surface: light-dark(var(--color-neutral-50), var(--color-neutral-800)); --color-axis-text: light-dark(var(--color-neutral-800), var(--color-neutral-200)); --color-grid-surface: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-grid-highlight: oklch(from var(--color-emerald-500) l c h / 0.5); --color-grid-comment: light-dark(var(--color-green-400), var(--color-green-600)); --color-grid-comment-active: light-dark( oklch(from var(--color-green-400) l c h / 0.5), oklch(from var(--color-green-600) l c h / 0.5) ); --color-grid-hover-overlay: oklch(from var(--color-neutral-500) l c h / 0.1); --color-grid-selection-overlay: var(--color-blue-500); --color-grid-line: light-dark(var(--color-neutral-200), var(--color-neutral-800)); --color-grid-focus-indicator: light-dark(var(--color-primary-600), var(--color-primary-600)); --color-placeholder: light-dark(var(--color-neutral-400), var(--color-neutral-600)); --color-subdued: light-dark(var(--color-neutral-500), var(--color-neutral-500)); --color-description: light-dark(var(--color-neutral-600), var(--color-neutral-400)); }
36
+ @theme { --color-base-surface: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-base-surface-text: light-dark(var(--color-neutral-950), var(--color-neutral-50)); --color-inverse-surface: light-dark(var(--color-neutral-800), var(--color-neutral-200)); --color-inverse-surface-text: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-deck-surface: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-scrim-surface: light-dark( oklch(from var(--color-neutral-50) l c h / 0.5), oklch(from var(--color-neutral-950) l c h / 0.25) ); --color-toolbar-surface: light-dark(var(--color-neutral-75), var(--color-neutral-925)); --color-card-surface: light-dark(var(--color-neutral-75), var(--color-neutral-925)); --color-group-surface: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-modal-surface: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-sidebar-surface: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-header-surface: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-input-surface: light-dark(var(--color-neutral-200), var(--color-neutral-800)); --color-input-surface-text: light-dark(var(--color-neutral-950), var(--color-neutral-50)); --color-current-surface: light-dark(var(--color-neutral-200), var(--color-neutral-800)); --color-active-surface: light-dark(var(--color-neutral-200), var(--color-neutral-800)); --color-active-text: light-dark(var(--color-neutral-950), var(--color-neutral-50)); --color-hover-overlay: light-dark(var(--color-neutral-250), var(--color-neutral-750)); --color-hover-surface: light-dark(var(--color-neutral-250), var(--color-neutral-750)); --color-hover-surface-text: light-dark(var(--color-neutral-950), var(--color-neutral-50)); --color-attention-surface: var(--color-focus-surface); --color-attention-contains: oklch(from var(--color-accent-surface) l c h / 0.3); --color-focus-surface: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-neutral-focus-indicator: light-dark(var(--color-neutral-400), var(--color-neutral-600)); --color-highlight-surface: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-highlight-surface-hover: light-dark(var(--color-neutral-250), var(--color-neutral-750)); --color-highlight-surface-text: light-dark(var(--color-neutral-950), var(--color-neutral-50)); --color-selected-surface: light-dark(var(--color-neutral-150), var(--color-neutral-850)); --color-selected-surface-hover: light-dark(var(--color-neutral-250), var(--color-neutral-750)); --color-selected-surface-text: light-dark(var(--color-neutral-950), var(--color-neutral-50)); --color-accent-surface: light-dark(var(--color-blue-500), var(--color-blue-700)); --color-accent-surface-hover: light-dark(var(--color-blue-800), var(--color-blue-800)); --color-accent-surface-text: var(--color-blue-100); --color-accent-text: light-dark(var(--color-blue-600), var(--color-blue-400)); --color-accent-text-hover: light-dark(var(--color-blue-500), var(--color-blue-500)); --color-accent-focus-indicator: light-dark(var(--color-blue-600), var(--color-blue-600)); --color-un-accent: var(--color-neutral-400); --color-un-accent-hover: var(--color-neutral-500); --color-separator: light-dark(var(--color-neutral-200), var(--color-neutral-800)); --color-subdued-separator: light-dark(var(--color-neutral-150), var(--color-neutral-850)); --color-primary-separator: light-dark(var(--color-neutral-500), var(--color-neutral-700)); --color-active-separator: light-dark(var(--color-blue-500), var(--color-blue-500)); --color-scrollbar-track: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-scrollbar-thumb: light-dark(var(--color-neutral-200), var(--color-neutral-700)); --color-scrollbar-thumb-active: light-dark(var(--color-neutral-200), var(--color-neutral-600)); --color-scrollbar-thumb-hover: light-dark(var(--color-neutral-200), var(--color-neutral-600)); --color-axis-selected-surface: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-axis-selected-text: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-axis-surface: light-dark(var(--color-neutral-50), var(--color-neutral-800)); --color-axis-text: light-dark(var(--color-neutral-800), var(--color-neutral-200)); --color-grid-surface: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-grid-highlight: oklch(from var(--color-emerald-500) l c h / 0.5); --color-grid-comment: light-dark(var(--color-green-400), var(--color-green-600)); --color-grid-comment-active: light-dark( oklch(from var(--color-green-400) l c h / 0.5), oklch(from var(--color-green-600) l c h / 0.5) ); --color-grid-hover-overlay: oklch(from var(--color-neutral-500) l c h / 0.1); --color-grid-selection-overlay: var(--color-blue-500); --color-grid-line: light-dark(var(--color-neutral-200), var(--color-neutral-800)); --color-grid-focus-indicator: light-dark(var(--color-primary-600), var(--color-primary-600)); --color-placeholder: light-dark(var(--color-neutral-400), var(--color-neutral-600)); --color-subdued: light-dark(var(--color-neutral-500), var(--color-neutral-500)); --color-description: light-dark(var(--color-neutral-600), var(--color-neutral-400)); }
18
37
 
19
38
  /* src/css/theme/spacing.css */
20
- @theme { --spacing-screen-border: 1rem; --spacing-article-max-width: 50rem; --spacing-prose-max-width: 50rem; --spacing-popover-min-width: 12rem; --spacing-card-default-width: 20rem; --spacing-card-min-width: 18rem; --spacing-card-max-width: 22rem; --spacing-card-min-height: 18rem; --spacing-card-max-height: 30rem; --spacing-trim-xs: 0.375rem; --spacing-trim-sm: 0.5rem; --spacing-trim-md: 0.75rem; --spacing-trim-lg: 1.5rem; --spacing-tag-padding-block: 0.125rem; --spacing-text-content: calc(50rem - env(safe-area-inset-left) - env(safe-area-inset-right)); --spacing-form-chrome: var(--spacing-trim-xs); --spacing-form-padding: var(--spacing-trim-sm); --spacing-icon-button-padding: var(--spacing-trim-xs); --spacing-scroll-padding: 4px; }
39
+ @theme { --spacing-screen-border: 2rem; --spacing-popover-default-width: 20rem; --spacing-popover-min-width: 16rem; --spacing-document-max-width: 50rem; --spacing-document-width: calc(50rem - env(safe-area-inset-left) - env(safe-area-inset-right)); --spacing-card-default-width: 20rem; --spacing-card-min-width: 18rem; --spacing-card-max-width: 22rem; --spacing-card-min-height: 18rem; --spacing-card-max-height: 30rem; --spacing-tag-padding-block: 0.125rem; --spacing-trim-xs: 0.25rem; --spacing-trim-sm: 0.5rem; --spacing-trim-md: 0.75rem; --spacing-trim-lg: 1.5rem; --spacing-form-chrome: var(--spacing-trim-xs); --spacing-form-gap: var(--spacing-trim-sm); --spacing-form-section-gap: var(--spacing-trim-lg); --spacing-form-padding: var(--spacing-trim-sm); --spacing-icon-button-padding: var(--spacing-trim-xs); --spacing-scroll-padding: 4px; }
21
40
  @layer dx-tokens {
22
- .dx-density-coarse {
23
- --spacing-form-padding: var(--spacing-trim-md);
24
- --spacing-icon-button-padding: var(--spacing-trim-sm);
25
- --spacing-scroll-padding: 8px;
26
- }
27
41
  }
28
42
  @layer dx-tokens {
29
43
  :root {
@@ -34,10 +48,10 @@
34
48
  --dx-lacuna-3: 0.375rem;
35
49
  --dx-lacuna-4: 0.5rem;
36
50
  --dx-lacuna-6: 0.75rem;
37
- --dx-gutter-xs: 0.125rem;
38
- --dx-gutter-sm: 0.5rem;
39
- --dx-gutter-md: 1rem;
40
- --dx-gutter-lg: 2rem;
51
+ --dx-gutter-xs: 0.25rem;
52
+ --dx-gutter-sm: 1rem;
53
+ --dx-gutter-md: 2rem;
54
+ --dx-gutter-lg: 2.5rem;
41
55
  }
42
56
  :root {
43
57
  --dx-hair-line: 1px;
@@ -55,6 +69,7 @@
55
69
  --dx-grid-focus-indicator-width: var(--dx-hair-line);
56
70
  --dx-input-fine: var(--dx-lacuna-3);
57
71
  --dx-input-coarse: var(--dx-lacuna-4);
72
+ --dx-default-icons-size: 1rem;
58
73
  }
59
74
  [data-grid-focus-indicator-variant=stack] {
60
75
  --dx-grid-focus-indicator-width: var(--dx-thick-line);
@@ -63,14 +78,14 @@
63
78
  --dx-rail-content: 3rem;
64
79
  --dx-rail-size: calc(var(--dx-rail-content) + 1px);
65
80
  --dx-rail-item: calc(var(--dx-rail-content) - 1rem);
66
- --dx-rail-action: calc(var(--dx-rail-content) - 0.5rem + 1px);
81
+ --dx-rail-action: calc(var(--dx-rail-content) - 0.5rem);
67
82
  --dx-topbar-size: var(--dx-rail-size);
68
- --dx-toolbar-size: var(--dx-rail-content);
69
- --dx-statusbar-size: var(--dx-rail-content);
70
- --dx-nav-sidebar-size: 23rem;
83
+ --dx-toolbar-size: var(--dx-rail-action);
84
+ --dx-statusbar-size: var(--dx-rail-item);
85
+ --dx-nav-sidebar-size: 350px;
71
86
  --dx-complementary-sidebar-size: 25rem;
72
87
  --dx-drawer-size: 50dvh;
73
- --dx-l0-size: 74px;
88
+ --dx-l0-size: 72px;
74
89
  --dx-l0-avatar-size: 3rem;
75
90
  --dx-l1-size: calc(var(--dx-nav-sidebar-size) - var(--dx-l0-size));
76
91
  --dx-r0-size: var(--dx-rail-size);
@@ -247,7 +262,8 @@
247
262
  /* src/css/components/button.css */
248
263
  @layer dx-components {
249
264
  .dx-button {
250
- @apply font-medium shrink-0 inline-flex select-none items-center justify-center overflow-hidden transition-colors duration-100 ease-linear bg-input-surface min-h-[2.5rem] px-3;
265
+ @apply shrink-0 inline-flex select-none items-center justify-center overflow-hidden min-h-[2.5rem] px-3;
266
+ @apply font-medium transition-colors duration-100 ease-linear bg-input-surface;
251
267
  &[aria-pressed=true],
252
268
  &[aria-checked=true] {
253
269
  @apply text-accent-text bg-attention-surface;
@@ -416,7 +432,7 @@
416
432
  }
417
433
  }
418
434
 
419
- /* src/css/components/focus-ring.css */
435
+ /* src/css/components/focus.css */
420
436
  @layer dx-components {
421
437
  .dx-focus-ring,
422
438
  .dx-focus-ring-inset {
@@ -439,6 +455,12 @@
439
455
  }
440
456
  }
441
457
  }
458
+ .dx-focus-ring-none {
459
+ &:focus,
460
+ &:focus-visible {
461
+ @apply outline-hidden! ring-0!;
462
+ }
463
+ }
442
464
  .dx-focus-ring-always,
443
465
  .dx-focus-ring-inset-always {
444
466
  &:not([disabled]),
@@ -603,95 +625,108 @@
603
625
  }
604
626
  }
605
627
  }
628
+ .dx-focus-subdued {
629
+ @apply focus:outline-hidden focus-visible:outline-hidden focus:ring-0 ring-0 focus:border-0 border-0;
630
+ }
631
+ .dx-focus-static {
632
+ @apply ring-2 ring-offset-0 ring-primary-300 ring-offset-white dark:ring-primary-400 dark:ring-offset-black;
633
+ }
634
+ }
635
+
636
+ /* src/css/components/icon.css */
637
+ @layer dx-components {
638
+ .dx-icon-inline {
639
+ @apply inline-block align-[-0.125em];
640
+ }
606
641
  }
607
642
 
608
643
  /* src/css/components/panel.css */
609
644
  @layer dx-components {
610
- .dx-panel[data-hue=neutral],
645
+ [data-hue=neutral] .dx-panel,
611
646
  .dx-panel--neutral {
612
647
  @apply bg-neutral-surface text-neutral-surface-text border-neutral-border;
613
648
  }
614
- .dx-panel[data-hue=red],
649
+ [data-hue=red] .dx-panel,
615
650
  .dx-panel--red {
616
651
  @apply bg-red-surface text-red-surface-text border-red-border;
617
652
  }
618
- .dx-panel[data-hue=orange],
653
+ [data-hue=orange] .dx-panel,
619
654
  .dx-panel--orange {
620
655
  @apply bg-orange-surface text-orange-surface-text border-orange-border;
621
656
  }
622
- .dx-panel[data-hue=amber],
657
+ [data-hue=amber] .dx-panel,
623
658
  .dx-panel--amber {
624
659
  @apply bg-amber-surface text-amber-surface-text border-amber-border;
625
660
  }
626
- .dx-panel[data-hue=yellow],
661
+ [data-hue=yellow] .dx-panel,
627
662
  .dx-panel--yellow {
628
663
  @apply bg-yellow-surface text-yellow-surface-text border-yellow-border;
629
664
  }
630
- .dx-panel[data-hue=lime],
665
+ [data-hue=lime] .dx-panel,
631
666
  .dx-panel--lime {
632
667
  @apply bg-lime-surface text-lime-surface-text border-lime-border;
633
668
  }
634
- .dx-panel[data-hue=green],
669
+ [data-hue=green] .dx-panel,
635
670
  .dx-panel--green {
636
671
  @apply bg-green-surface text-green-surface-text border-green-border;
637
672
  }
638
- .dx-panel[data-hue=emerald],
673
+ [data-hue=emerald] .dx-panel,
639
674
  .dx-panel--emerald {
640
675
  @apply bg-emerald-surface text-emerald-surface-text border-emerald-border;
641
676
  }
642
- .dx-panel[data-hue=teal],
677
+ [data-hue=teal] .dx-panel,
643
678
  .dx-panel--teal {
644
679
  @apply bg-teal-surface text-teal-surface-text border-teal-border;
645
680
  }
646
- .dx-panel[data-hue=cyan],
681
+ [data-hue=cyan] .dx-panel,
647
682
  .dx-panel--cyan {
648
683
  @apply bg-cyan-surface text-cyan-surface-text border-cyan-border;
649
684
  }
650
- .dx-panel[data-hue=sky],
685
+ [data-hue=sky] .dx-panel,
651
686
  .dx-panel--sky {
652
687
  @apply bg-sky-surface text-sky-surface-text border-sky-border;
653
688
  }
654
- .dx-panel[data-hue=blue],
689
+ [data-hue=blue] .dx-panel,
655
690
  .dx-panel--blue {
656
691
  @apply bg-blue-surface text-blue-surface-text border-blue-border;
657
692
  }
658
- .dx-panel[data-hue=indigo],
693
+ [data-hue=indigo] .dx-panel,
659
694
  .dx-panel--indigo {
660
695
  @apply bg-indigo-surface text-indigo-surface-text border-indigo-border;
661
696
  }
662
- .dx-panel[data-hue=violet],
697
+ [data-hue=violet] .dx-panel,
663
698
  .dx-panel--violet {
664
699
  @apply bg-violet-surface text-violet-surface-text border-violet-border;
665
700
  }
666
- .dx-panel[data-hue=purple],
701
+ [data-hue=purple] .dx-panel,
667
702
  .dx-panel--purple {
668
703
  @apply bg-purple-surface text-purple-surface-text border-purple-border;
669
704
  }
670
- .dx-panel[data-hue=fuchsia],
705
+ [data-hue=fuchsia] .dx-panel,
671
706
  .dx-panel--fuchsia {
672
707
  @apply bg-fuchsia-surface text-fuchsia-surface-text border-fuchsia-border;
673
708
  }
674
- .dx-panel[data-hue=pink],
709
+ [data-hue=pink] .dx-panel,
675
710
  .dx-panel--pink {
676
711
  @apply bg-pink-surface text-pink-surface-text border-pink-border;
677
712
  }
678
- .dx-panel[data-hue=rose],
713
+ [data-hue=rose] .dx-panel,
679
714
  .dx-panel--rose {
680
715
  @apply bg-rose-surface text-rose-surface-text border-rose-border;
681
716
  }
682
- .dx-panel[data-hue=info],
717
+ [data-hue=info] .dx-panel,
683
718
  .dx-panel--info {
684
719
  @apply bg-info-surface text-info-surface-text border-info-border;
685
720
  }
686
- .dx-panel[data-hue=success],
721
+ [data-hue=success] .dx-panel,
687
722
  .dx-panel--success {
688
723
  @apply bg-success-surface text-success-surface-text border-success-border;
689
724
  }
690
- .dx-panel[data-hue=warning],
725
+ [data-hue=warning] .dx-panel,
691
726
  .dx-panel--warning {
692
727
  @apply bg-warning-surface text-warning-surface-text border-warning-border;
693
728
  }
694
- .dx-panel[data-hue=error],
729
+ [data-hue=error] .dx-panel,
695
730
  .dx-panel--error {
696
731
  @apply bg-error-surface text-error-surface-text border-error-border;
697
732
  }
@@ -724,6 +759,22 @@
724
759
  }
725
760
  }
726
761
 
762
+ /* src/css/components/selected.css */
763
+ @layer dx-components {
764
+ .dx-hover {
765
+ @apply cursor-pointer hover:bg-highlight-surface! hover:text-highlight-surface-text!;
766
+ }
767
+ .dx-highlighted {
768
+ @apply data-[highlighted]:bg-highlight-surface data-[highlighted]:text-highlight-surface-text hover:data-[highlighted]:bg-highlight-surface-hover;
769
+ }
770
+ .dx-current {
771
+ @apply dx-ring-pseudo aria-[current=true]:bg-highlight-surface aria-[current=true]:text-highlight-surface-text aria-[current=true]:after:ring-active-separator!;
772
+ }
773
+ .dx-selected {
774
+ @apply aria-selected:bg-selected-surface aria-selected:text-selected-surface-text hover:aria-selected:text-selected-surface-text aria-selected:font-semibold aria-selected:tracking-normal transition-[color, font-variation-settings, letter-spacing];
775
+ }
776
+ }
777
+
727
778
  /* src/css/components/surface.css */
728
779
  @layer dx-components {
729
780
  .dx-base-surface {
@@ -752,7 +803,8 @@
752
803
  user-select: none;
753
804
  }
754
805
  .dx-tag--anchor {
755
- @apply inline cursor-pointer -mx-[4px] px-[3px] py-0.5 border border-separator rounded-xs bg-group-surface transition-colors;
806
+ @apply inline cursor-pointer -mx-[3px] px-[2px] py-0.5 border rounded-xs transition-colors;
807
+ @apply bg-group-surface text-sky-surface-text border-sky-border;
756
808
  &:hover {
757
809
  @apply bg-hover-surface;
758
810
  }
@@ -956,9 +1008,6 @@
956
1008
  inset-block-end: 0;
957
1009
  z-index: 0;
958
1010
  }
959
- .dx-main-mobile-layout {
960
- @apply absolute inset-0 overflow-hidden flex flex-col;
961
- }
962
1011
  .dx-main-content-padding-transitions {
963
1012
  transition-duration: 200ms;
964
1013
  transition-timing-function: cubic-bezier(0.4, 0, 0.6, 1);
@@ -1153,11 +1202,14 @@
1153
1202
  .dx-size-container {
1154
1203
  container-type: size;
1155
1204
  }
1156
- .dx-container {
1157
- @apply flex-1 min-h-0 min-w-0 h-full w-full;
1205
+ .dx-inline-size-container {
1206
+ container-type: inline-size;
1158
1207
  }
1159
- .dx-article {
1160
- @apply w-full max-w-article-max-width mx-auto;
1208
+ .dx-document {
1209
+ @apply mx-auto w-full max-w-document-max-width;
1210
+ }
1211
+ .dx-card {
1212
+ @apply flex flex-col w-full;
1161
1213
  }
1162
1214
  .dx-card-square {
1163
1215
  inline-size: min(min(var(--radix-popper-available-width), var(--spacing-card-max-width)), min(var(--radix-popper-available-height), 100dvh));
@@ -1462,10 +1514,24 @@
1462
1514
  }
1463
1515
 
1464
1516
  /* src/css/utilities.css */
1465
- @utility dx-icon-inline { @apply inline-block align-[-0.125em]; }
1517
+ @utility dx-expander { @apply flex-1 min-h-0 min-w-0 h-full w-full; }
1518
+ @utility dx-container { @apply dx-expander overflow-hidden; }
1519
+ @utility dx-column { @apply flex-1 min-w-0 w-full; }
1520
+ @utility dx-fullscreen { @apply absolute inset-0; }
1521
+ @utility dx-slot-warning { @apply border border-rose-500 border-dashed; }
1522
+ @utility dx-ring-pseudo { @apply relative after:content-[""] after:absolute after:inset-0 after:rounded-[inherit] after:pointer-events-none after:ring after:ring-inset after:ring-transparent; }
1523
+ @utility shimmer-text { mask-image: linear-gradient(90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.4) 30%, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 0.4) 70%, rgba(0, 0, 0, 0.4) 100%); -webkit-mask-image: linear-gradient(90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.4) 30%, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 0.4) 70%, rgba(0, 0, 0, 0.4) 100%); mask-size: 200% 100%; -webkit-mask-size: 200% 100%; mask-repeat: repeat-x; -webkit-mask-repeat: repeat-x; animation: shimmer-text 2s linear infinite; }
1524
+ @media (prefers-reduced-motion: reduce) {
1525
+ .shimmer-text {
1526
+ animation: none;
1527
+ mask-image: none;
1528
+ -webkit-mask-image: none;
1529
+ opacity: 0.6;
1530
+ }
1531
+ }
1466
1532
 
1467
1533
  /* src/css/integrations/codemirror.css */
1468
- @theme { --color-cm-codeblock: oklch(from var(--color-neutral-500) l c h / 0.1); --color-cm-active-line: light-dark( oklch(from var(--color-neutral-200) l c h / 0.5), oklch(from var(--color-neutral-800) l c h / 0.5) ); --color-cm-separator: var(--color-blue-500); --color-cm-cursor: light-dark(var(--color-neutral-900), var(--color-neutral-100)); --color-cm-selection: light-dark( oklch(from var(--color-blue-400) l c h / 0.5), oklch(from var(--color-blue-600) l c h / 0.5) ); --color-cm-focused-selection: light-dark(var(--color-blue-400), var(--color-blue-600)); --color-cm-highlight: light-dark(var(--color-neutral-950), var(--color-neutral-50)); --color-cm-highlight-surface: light-dark(var(--color-sky-200), var(--color-cyan-800)); --color-cm-comment-text: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-cm-comment-surface: light-dark(var(--color-amber-800), var(--color-amber-200)); --color-cm-code: light-dark(var(--color-neutral-700), var(--color-neutral-300)); --color-cm-code-mark: var(--color-blue-500); --color-cm-mark-opacity: 0.5; --color-cm-heading: light-dark(var(--color-neutral-900), var(--color-neutral-400)); }
1534
+ @theme { --color-cm-codeblock: oklch(from var(--color-neutral-500) l c h / 0.1); --color-cm-active-line: light-dark( oklch(from var(--color-neutral-200) l c h / 0.5), oklch(from var(--color-neutral-800) l c h / 0.5) ); --color-cm-separator: var(--color-blue-500); --color-cm-cursor: light-dark(var(--color-neutral-900), var(--color-neutral-100)); --color-cm-selection: light-dark( oklch(from var(--color-blue-400) l c h / 0.5), oklch(from var(--color-blue-600) l c h / 0.5) ); --color-cm-focused-selection: light-dark(var(--color-blue-400), var(--color-blue-600)); --color-cm-highlight: light-dark(var(--color-neutral-950), var(--color-neutral-50)); --color-cm-highlight-surface: light-dark(var(--color-sky-200), var(--color-cyan-800)); --color-cm-comment-text: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-cm-comment-surface: light-dark(var(--color-amber-800), var(--color-amber-200)); --color-cm-code: light-dark(var(--color-stone-600), var(--color-stone-400)); --color-cm-code-inline: light-dark(var(--color-green-500), var(--color-green-500)); --color-cm-code-mark: var(--color-blue-500); --color-cm-heading: light-dark(var(--color-blue-700), var(--color-blue-300)); --color-cm-heading-number: light-dark(var(--color-blue-600), var(--color-blue-400)); }
1469
1535
 
1470
1536
  /* src/css/integrations/tldraw.css */
1471
1537
  .tl-background {
@@ -1478,7 +1544,7 @@
1478
1544
  --color-panel-contrast: var(--color-separator);
1479
1545
  }
1480
1546
 
1481
- /* src/theme.css */
1547
+ /* src/main.css */
1482
1548
  @source inline("bg-{neutral,red,orange,amber,yellow,lime,green,emerald,teal,cyan,sky,blue,indigo,violet,purple,fuchsia,pink,rose}-{50,100,200,300,400,500,600,700,800,900,950}");
1483
1549
  @source inline("bg-{neutral,red,orange,amber,yellow,lime,green,emerald,teal,cyan,sky,blue,indigo,violet,purple,fuchsia,pink,rose}-{fill,surface,surface-text,text,border}");
1484
1550
  @source inline("border-{neutral,red,orange,amber,yellow,lime,green,emerald,teal,cyan,sky,blue,indigo,violet,purple,fuchsia,pink,rose}-border");
@@ -1488,7 +1554,8 @@
1488
1554
  @plugin "tailwind-scrollbar";
1489
1555
  @plugin "tailwindcss-radix";
1490
1556
  @variant dark (&:where(.dark, .dark *));
1491
- @custom-variant is-current (&[aria-current]:not([aria-current="false"]));
1492
- @custom-variant hover-hover (@media (hover: hover));
1557
+ @custom-variant pointer-coarse (@media (pointer: coarse));
1493
1558
  @custom-variant pointer-fine (@media (pointer: fine));
1494
- /*# sourceMappingURL=theme.css.map */
1559
+ @custom-variant hover-hover (@media (hover: hover));
1560
+ @custom-variant is-current (&[aria-current]:not([aria-current="false"]));
1561
+ /*# sourceMappingURL=main.css.map */