@crisp-ui-kit/crisp 0.31.5 → 0.32.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 (403) hide show
  1. package/NOTICE +88 -0
  2. package/README.md +22 -0
  3. package/dist/accordion.css +13 -13
  4. package/dist/accordion.layered.css +23 -0
  5. package/dist/appshell.css +11 -11
  6. package/dist/appshell.layered.css +25 -0
  7. package/dist/authshell.css +23 -23
  8. package/dist/authshell.layered.css +59 -0
  9. package/dist/avatar.css +23 -23
  10. package/dist/avatar.layered.css +41 -0
  11. package/dist/avatargroup.css +2 -2
  12. package/dist/avatargroup.layered.css +7 -0
  13. package/dist/badge.css +31 -31
  14. package/dist/badge.layered.css +51 -0
  15. package/dist/barchart.css +15 -15
  16. package/dist/barchart.layered.css +25 -0
  17. package/dist/base.css +4 -4
  18. package/dist/board.css +20 -20
  19. package/dist/board.layered.css +34 -0
  20. package/dist/breadcrumb.css +8 -8
  21. package/dist/breadcrumb.layered.css +13 -0
  22. package/dist/bulkbar.css +13 -13
  23. package/dist/bulkbar.layered.css +23 -0
  24. package/dist/button.css +21 -21
  25. package/dist/button.layered.css +46 -0
  26. package/dist/callout.css +15 -15
  27. package/dist/callout.layered.css +18 -0
  28. package/dist/card.css +14 -14
  29. package/dist/card.layered.css +30 -0
  30. package/dist/checkbox.css +9 -9
  31. package/dist/checkbox.layered.css +21 -0
  32. package/dist/cjs/components/accordion/accordion.js +1 -1
  33. package/dist/cjs/components/accordion/accordion.recipe.js +10 -10
  34. package/dist/cjs/components/badge/badge.js +1 -1
  35. package/dist/cjs/components/badge/badge.recipe.js +1 -1
  36. package/dist/cjs/components/barchart/barchart.js +3 -3
  37. package/dist/cjs/components/barchart/barchart.recipe.js +14 -14
  38. package/dist/cjs/components/breadcrumb/breadcrumb.js +1 -1
  39. package/dist/cjs/components/breadcrumb/breadcrumb.recipe.js +6 -6
  40. package/dist/cjs/components/bulkbar/bulkbar.js +2 -2
  41. package/dist/cjs/components/bulkbar/bulkbar.recipe.js +10 -10
  42. package/dist/cjs/components/callout/callout.js +1 -1
  43. package/dist/cjs/components/callout/callout.recipe.js +9 -9
  44. package/dist/cjs/components/card/card.js +3 -3
  45. package/dist/cjs/components/card/card.recipe.js +5 -5
  46. package/dist/cjs/components/columncalc/columncalc.js +1 -1
  47. package/dist/cjs/components/columncalc/columncalc.recipe.js +16 -9
  48. package/dist/cjs/components/contextmenu/contextmenu.js +4 -4
  49. package/dist/cjs/components/contextmenu/contextmenu.recipe.js +9 -9
  50. package/dist/cjs/components/datatable/datatable.js +21 -19
  51. package/dist/cjs/components/datatable/datatable.recipe.js +57 -57
  52. package/dist/cjs/components/datepicker/datepicker.js +12 -12
  53. package/dist/cjs/components/datepicker/datepicker.recipe.js +45 -45
  54. package/dist/cjs/components/datepickerfield/datepickerfield.js +2 -2
  55. package/dist/cjs/components/datepickerfield/datepickerfield.recipe.js +9 -9
  56. package/dist/cjs/components/dialog/dialog.js +5 -5
  57. package/dist/cjs/components/dialog/dialog.recipe.js +16 -16
  58. package/dist/cjs/components/donutchart/donutchart.js +1 -1
  59. package/dist/cjs/components/donutchart/donutchart.recipe.js +12 -12
  60. package/dist/cjs/components/drawer/drawer.js +3 -3
  61. package/dist/cjs/components/drawer/drawer.recipe.js +14 -14
  62. package/dist/cjs/components/emptystate/emptystate.js +1 -1
  63. package/dist/cjs/components/emptystate/emptystate.recipe.js +9 -9
  64. package/dist/cjs/components/fileupload/fileupload.js +3 -3
  65. package/dist/cjs/components/fileupload/fileupload.recipe.js +23 -23
  66. package/dist/cjs/components/formfield/formfield.js +1 -1
  67. package/dist/cjs/components/formfield/formfield.recipe.js +5 -5
  68. package/dist/cjs/components/input/input.js +1 -1
  69. package/dist/cjs/components/input/input.recipe.js +6 -6
  70. package/dist/cjs/components/linechart/linechart.js +4 -4
  71. package/dist/cjs/components/linechart/linechart.recipe.js +14 -14
  72. package/dist/cjs/components/menu/menu.js +6 -6
  73. package/dist/cjs/components/menu/menu.recipe.js +19 -19
  74. package/dist/cjs/components/multiselect/multiselect.js +5 -5
  75. package/dist/cjs/components/multiselect/multiselect.recipe.js +29 -29
  76. package/dist/cjs/components/popover/popover.js +1 -1
  77. package/dist/cjs/components/popover/popover.recipe.js +3 -3
  78. package/dist/cjs/components/progress/progress.js +2 -2
  79. package/dist/cjs/components/progress/progress.recipe.js +3 -3
  80. package/dist/cjs/components/quantitypicker/quantitypicker.js +2 -2
  81. package/dist/cjs/components/quantitypicker/quantitypicker.recipe.js +16 -16
  82. package/dist/cjs/components/radiogroup/radiogroup.js +1 -1
  83. package/dist/cjs/components/radiogroup/radiogroup.recipe.js +14 -14
  84. package/dist/cjs/components/resizablepanel/resizablepanel.js +3 -3
  85. package/dist/cjs/components/resizablepanel/resizablepanel.recipe.js +24 -24
  86. package/dist/cjs/components/segmented/segmented.js +4 -4
  87. package/dist/cjs/components/segmented/segmented.recipe.js +7 -7
  88. package/dist/cjs/components/select/select.js +3 -3
  89. package/dist/cjs/components/select/select.recipe.js +25 -25
  90. package/dist/cjs/components/slider/slider.js +2 -2
  91. package/dist/cjs/components/slider/slider.recipe.js +15 -15
  92. package/dist/cjs/components/stagebar/stagebar.js +1 -1
  93. package/dist/cjs/components/stagebar/stagebar.recipe.js +1 -1
  94. package/dist/cjs/components/statcard/statcard.js +1 -1
  95. package/dist/cjs/components/statcard/statcard.recipe.js +9 -9
  96. package/dist/cjs/components/switch/switch.js +1 -1
  97. package/dist/cjs/components/switch/switch.recipe.js +2 -2
  98. package/dist/cjs/components/table/table.js +1 -1
  99. package/dist/cjs/components/table/table.recipe.js +1 -1
  100. package/dist/cjs/components/tabletoolbar/tabletoolbar.chrome.js +65 -64
  101. package/dist/cjs/components/tabletoolbar/tabletoolbar.js +13 -13
  102. package/dist/cjs/components/tabs/tabs.js +4 -4
  103. package/dist/cjs/components/tabs/tabs.recipe.js +12 -12
  104. package/dist/cjs/components/textarea/textarea.js +2 -2
  105. package/dist/cjs/components/textarea/textarea.recipe.js +11 -11
  106. package/dist/cjs/components/toast/toast.js +4 -4
  107. package/dist/cjs/components/toast/toast.recipe.js +14 -14
  108. package/dist/cjs/components/wheelpicker/wheelpicker.js +2 -2
  109. package/dist/cjs/components/wheelpicker/wheelpicker.recipe.js +19 -19
  110. package/dist/cjs/core/dialog-description.js +1 -1
  111. package/dist/cjs/core/namespace.js +17 -0
  112. package/dist/cjs/core/resolve.js +5 -3
  113. package/dist/cjs/index.js +1 -1
  114. package/dist/cjs/product/appshell/appshell.js +2 -2
  115. package/dist/cjs/product/appshell/appshell.recipe.js +8 -8
  116. package/dist/cjs/product/authshell/authshell.js +1 -1
  117. package/dist/cjs/product/authshell/authshell.recipe.js +20 -20
  118. package/dist/cjs/product/board/board.js +3 -3
  119. package/dist/cjs/product/board/board.recipe.js +17 -17
  120. package/dist/cjs/product/command/command.js +3 -3
  121. package/dist/cjs/product/command/command.recipe.js +25 -25
  122. package/dist/cjs/product/entitycard/entitycard.js +1 -1
  123. package/dist/cjs/product/entitycard/entitycard.recipe.js +7 -7
  124. package/dist/cjs/product/flowcanvas/flowcanvas.js +5 -5
  125. package/dist/cjs/product/flowcanvas/flowcanvas.recipe.js +11 -11
  126. package/dist/cjs/product/inbox/inbox.js +1 -1
  127. package/dist/cjs/product/inbox/inbox.recipe.js +22 -22
  128. package/dist/cjs/product/listpage/listpage.js +3 -3
  129. package/dist/cjs/product/listpage/listpage.recipe.js +18 -18
  130. package/dist/cjs/product/navitem/navitem.js +1 -1
  131. package/dist/cjs/product/navitem/navitem.recipe.js +2 -2
  132. package/dist/cjs/product/onboarding/onboarding.js +1 -1
  133. package/dist/cjs/product/onboarding/onboarding.recipe.js +19 -19
  134. package/dist/cjs/product/recordpage/recordpage.js +24 -24
  135. package/dist/cjs/product/recordpage/recordpage.recipe.js +117 -117
  136. package/dist/cjs/product/recordpanel/recordpanel.js +4 -4
  137. package/dist/cjs/product/recordpanel/recordpanel.recipe.js +15 -15
  138. package/dist/cjs/product/recordstable/recordstable.js +48 -48
  139. package/dist/cjs/product/recordstable/recordstable.recipe.js +87 -87
  140. package/dist/cjs/product/recordstable/recordstable.tag.js +8 -8
  141. package/dist/cjs/product/richtext/richtext.js +4 -4
  142. package/dist/cjs/product/richtext/richtext.recipe.js +21 -21
  143. package/dist/cjs/product/settingssection/settingssection.js +1 -1
  144. package/dist/cjs/product/settingssection/settingssection.recipe.js +6 -6
  145. package/dist/cjs/product/settingsshell/settingsshell.js +1 -1
  146. package/dist/cjs/product/settingsshell/settingsshell.recipe.js +20 -20
  147. package/dist/cjs/product/sidebar/sidebar.js +2 -2
  148. package/dist/cjs/product/sidebar/sidebar.recipe.js +21 -21
  149. package/dist/cjs/product/tasklist/tasklist.js +2 -2
  150. package/dist/cjs/product/tasklist/tasklist.recipe.js +14 -14
  151. package/dist/cjs/product/trialbanner/trialbanner.js +1 -1
  152. package/dist/cjs/product/trialbanner/trialbanner.recipe.js +6 -6
  153. package/dist/cjs/product/viewtoggle/viewtoggle.js +1 -1
  154. package/dist/cjs/product/viewtoggle/viewtoggle.recipe.js +4 -4
  155. package/dist/cjs/tokens/contract.js +3 -2
  156. package/dist/cjs/tokens/elevation.js +4 -4
  157. package/dist/cjs/tokens/palette.js +2 -2
  158. package/dist/cjs/tokens/scale.js +6 -6
  159. package/dist/cjs/tokens/semantic.js +1 -1
  160. package/dist/columncalc.css +19 -12
  161. package/dist/columncalc.layered.css +35 -0
  162. package/dist/command.css +28 -28
  163. package/dist/command.layered.css +44 -0
  164. package/dist/contextmenu.css +12 -12
  165. package/dist/contextmenu.layered.css +22 -0
  166. package/dist/datatable.css +66 -66
  167. package/dist/datatable.layered.css +108 -0
  168. package/dist/datepicker.css +86 -86
  169. package/dist/datepicker.layered.css +179 -0
  170. package/dist/datepickerfield.css +19 -19
  171. package/dist/datepickerfield.layered.css +29 -0
  172. package/dist/dialog.css +19 -19
  173. package/dist/dialog.layered.css +29 -0
  174. package/dist/divider.css +2 -2
  175. package/dist/divider.layered.css +7 -0
  176. package/dist/donutchart.css +15 -15
  177. package/dist/donutchart.layered.css +26 -0
  178. package/dist/drawer.css +17 -17
  179. package/dist/drawer.layered.css +27 -0
  180. package/dist/emptystate.css +15 -15
  181. package/dist/emptystate.layered.css +22 -0
  182. package/dist/entitycard.css +14 -14
  183. package/dist/entitycard.layered.css +28 -0
  184. package/dist/esm/components/accordion/accordion.js +1 -1
  185. package/dist/esm/components/accordion/accordion.recipe.js +10 -10
  186. package/dist/esm/components/badge/badge.js +1 -1
  187. package/dist/esm/components/badge/badge.recipe.js +1 -1
  188. package/dist/esm/components/barchart/barchart.js +3 -3
  189. package/dist/esm/components/barchart/barchart.recipe.js +14 -14
  190. package/dist/esm/components/breadcrumb/breadcrumb.js +1 -1
  191. package/dist/esm/components/breadcrumb/breadcrumb.recipe.js +6 -6
  192. package/dist/esm/components/bulkbar/bulkbar.js +2 -2
  193. package/dist/esm/components/bulkbar/bulkbar.recipe.js +10 -10
  194. package/dist/esm/components/callout/callout.js +1 -1
  195. package/dist/esm/components/callout/callout.recipe.js +9 -9
  196. package/dist/esm/components/card/card.js +3 -3
  197. package/dist/esm/components/card/card.recipe.js +5 -5
  198. package/dist/esm/components/columncalc/columncalc.js +1 -1
  199. package/dist/esm/components/columncalc/columncalc.recipe.js +16 -9
  200. package/dist/esm/components/contextmenu/contextmenu.js +4 -4
  201. package/dist/esm/components/contextmenu/contextmenu.recipe.js +9 -9
  202. package/dist/esm/components/datatable/datatable.js +21 -19
  203. package/dist/esm/components/datatable/datatable.recipe.js +57 -57
  204. package/dist/esm/components/datepicker/datepicker.js +12 -12
  205. package/dist/esm/components/datepicker/datepicker.recipe.js +45 -45
  206. package/dist/esm/components/datepickerfield/datepickerfield.js +2 -2
  207. package/dist/esm/components/datepickerfield/datepickerfield.recipe.js +9 -9
  208. package/dist/esm/components/dialog/dialog.js +5 -5
  209. package/dist/esm/components/dialog/dialog.recipe.js +16 -16
  210. package/dist/esm/components/donutchart/donutchart.js +1 -1
  211. package/dist/esm/components/donutchart/donutchart.recipe.js +12 -12
  212. package/dist/esm/components/drawer/drawer.js +3 -3
  213. package/dist/esm/components/drawer/drawer.recipe.js +14 -14
  214. package/dist/esm/components/emptystate/emptystate.js +1 -1
  215. package/dist/esm/components/emptystate/emptystate.recipe.js +9 -9
  216. package/dist/esm/components/fileupload/fileupload.js +3 -3
  217. package/dist/esm/components/fileupload/fileupload.recipe.js +23 -23
  218. package/dist/esm/components/formfield/formfield.js +1 -1
  219. package/dist/esm/components/formfield/formfield.recipe.js +5 -5
  220. package/dist/esm/components/input/input.js +1 -1
  221. package/dist/esm/components/input/input.recipe.js +6 -6
  222. package/dist/esm/components/linechart/linechart.js +4 -4
  223. package/dist/esm/components/linechart/linechart.recipe.js +14 -14
  224. package/dist/esm/components/menu/menu.js +6 -6
  225. package/dist/esm/components/menu/menu.recipe.js +19 -19
  226. package/dist/esm/components/multiselect/multiselect.js +5 -5
  227. package/dist/esm/components/multiselect/multiselect.recipe.js +29 -29
  228. package/dist/esm/components/popover/popover.js +1 -1
  229. package/dist/esm/components/popover/popover.recipe.js +3 -3
  230. package/dist/esm/components/progress/progress.js +2 -2
  231. package/dist/esm/components/progress/progress.recipe.js +3 -3
  232. package/dist/esm/components/quantitypicker/quantitypicker.js +2 -2
  233. package/dist/esm/components/quantitypicker/quantitypicker.recipe.js +16 -16
  234. package/dist/esm/components/radiogroup/radiogroup.js +1 -1
  235. package/dist/esm/components/radiogroup/radiogroup.recipe.js +14 -14
  236. package/dist/esm/components/resizablepanel/resizablepanel.js +3 -3
  237. package/dist/esm/components/resizablepanel/resizablepanel.recipe.js +24 -24
  238. package/dist/esm/components/segmented/segmented.js +4 -4
  239. package/dist/esm/components/segmented/segmented.recipe.js +7 -7
  240. package/dist/esm/components/select/select.js +3 -3
  241. package/dist/esm/components/select/select.recipe.js +25 -25
  242. package/dist/esm/components/slider/slider.js +2 -2
  243. package/dist/esm/components/slider/slider.recipe.js +15 -15
  244. package/dist/esm/components/stagebar/stagebar.js +1 -1
  245. package/dist/esm/components/stagebar/stagebar.recipe.js +1 -1
  246. package/dist/esm/components/statcard/statcard.js +1 -1
  247. package/dist/esm/components/statcard/statcard.recipe.js +9 -9
  248. package/dist/esm/components/switch/switch.js +1 -1
  249. package/dist/esm/components/switch/switch.recipe.js +2 -2
  250. package/dist/esm/components/table/table.js +1 -1
  251. package/dist/esm/components/table/table.recipe.js +1 -1
  252. package/dist/esm/components/tabletoolbar/tabletoolbar.chrome.js +65 -64
  253. package/dist/esm/components/tabletoolbar/tabletoolbar.js +13 -13
  254. package/dist/esm/components/tabs/tabs.js +4 -4
  255. package/dist/esm/components/tabs/tabs.recipe.js +12 -12
  256. package/dist/esm/components/textarea/textarea.js +2 -2
  257. package/dist/esm/components/textarea/textarea.recipe.js +11 -11
  258. package/dist/esm/components/toast/toast.js +4 -4
  259. package/dist/esm/components/toast/toast.recipe.js +14 -14
  260. package/dist/esm/components/wheelpicker/wheelpicker.js +2 -2
  261. package/dist/esm/components/wheelpicker/wheelpicker.recipe.js +19 -19
  262. package/dist/esm/core/dialog-description.js +1 -1
  263. package/dist/esm/core/namespace.js +14 -0
  264. package/dist/esm/core/resolve.js +5 -3
  265. package/dist/esm/index.js +1 -1
  266. package/dist/esm/product/appshell/appshell.js +2 -2
  267. package/dist/esm/product/appshell/appshell.recipe.js +8 -8
  268. package/dist/esm/product/authshell/authshell.js +1 -1
  269. package/dist/esm/product/authshell/authshell.recipe.js +20 -20
  270. package/dist/esm/product/board/board.js +3 -3
  271. package/dist/esm/product/board/board.recipe.js +17 -17
  272. package/dist/esm/product/command/command.js +3 -3
  273. package/dist/esm/product/command/command.recipe.js +25 -25
  274. package/dist/esm/product/entitycard/entitycard.js +1 -1
  275. package/dist/esm/product/entitycard/entitycard.recipe.js +7 -7
  276. package/dist/esm/product/flowcanvas/flowcanvas.js +5 -5
  277. package/dist/esm/product/flowcanvas/flowcanvas.recipe.js +11 -11
  278. package/dist/esm/product/inbox/inbox.js +1 -1
  279. package/dist/esm/product/inbox/inbox.recipe.js +22 -22
  280. package/dist/esm/product/listpage/listpage.js +3 -3
  281. package/dist/esm/product/listpage/listpage.recipe.js +18 -18
  282. package/dist/esm/product/navitem/navitem.js +1 -1
  283. package/dist/esm/product/navitem/navitem.recipe.js +2 -2
  284. package/dist/esm/product/onboarding/onboarding.js +1 -1
  285. package/dist/esm/product/onboarding/onboarding.recipe.js +19 -19
  286. package/dist/esm/product/recordpage/recordpage.js +24 -24
  287. package/dist/esm/product/recordpage/recordpage.recipe.js +117 -117
  288. package/dist/esm/product/recordpanel/recordpanel.js +4 -4
  289. package/dist/esm/product/recordpanel/recordpanel.recipe.js +15 -15
  290. package/dist/esm/product/recordstable/recordstable.js +48 -48
  291. package/dist/esm/product/recordstable/recordstable.recipe.js +87 -87
  292. package/dist/esm/product/recordstable/recordstable.tag.js +8 -8
  293. package/dist/esm/product/richtext/richtext.js +4 -4
  294. package/dist/esm/product/richtext/richtext.recipe.js +21 -21
  295. package/dist/esm/product/settingssection/settingssection.js +1 -1
  296. package/dist/esm/product/settingssection/settingssection.recipe.js +6 -6
  297. package/dist/esm/product/settingsshell/settingsshell.js +1 -1
  298. package/dist/esm/product/settingsshell/settingsshell.recipe.js +20 -20
  299. package/dist/esm/product/sidebar/sidebar.js +2 -2
  300. package/dist/esm/product/sidebar/sidebar.recipe.js +21 -21
  301. package/dist/esm/product/tasklist/tasklist.js +2 -2
  302. package/dist/esm/product/tasklist/tasklist.recipe.js +14 -14
  303. package/dist/esm/product/trialbanner/trialbanner.js +1 -1
  304. package/dist/esm/product/trialbanner/trialbanner.recipe.js +6 -6
  305. package/dist/esm/product/viewtoggle/viewtoggle.js +1 -1
  306. package/dist/esm/product/viewtoggle/viewtoggle.recipe.js +4 -4
  307. package/dist/esm/tokens/contract.js +3 -2
  308. package/dist/esm/tokens/elevation.js +4 -4
  309. package/dist/esm/tokens/palette.js +2 -2
  310. package/dist/esm/tokens/scale.js +6 -6
  311. package/dist/esm/tokens/semantic.js +1 -1
  312. package/dist/fileupload.css +46 -46
  313. package/dist/fileupload.layered.css +91 -0
  314. package/dist/flowcanvas.css +13 -13
  315. package/dist/flowcanvas.layered.css +17 -0
  316. package/dist/formfield.css +7 -7
  317. package/dist/formfield.layered.css +10 -0
  318. package/dist/inbox.css +26 -26
  319. package/dist/inbox.layered.css +41 -0
  320. package/dist/input.css +17 -17
  321. package/dist/input.layered.css +45 -0
  322. package/dist/kbd.css +2 -2
  323. package/dist/kbd.layered.css +5 -0
  324. package/dist/linechart.css +14 -14
  325. package/dist/linechart.layered.css +17 -0
  326. package/dist/listpage.css +22 -22
  327. package/dist/listpage.layered.css +41 -0
  328. package/dist/menu.css +29 -29
  329. package/dist/menu.layered.css +48 -0
  330. package/dist/multiselect.css +42 -42
  331. package/dist/multiselect.layered.css +63 -0
  332. package/dist/navitem.css +14 -14
  333. package/dist/navitem.layered.css +25 -0
  334. package/dist/onboarding.css +24 -24
  335. package/dist/onboarding.layered.css +39 -0
  336. package/dist/popover.css +6 -6
  337. package/dist/popover.layered.css +16 -0
  338. package/dist/progress.css +7 -7
  339. package/dist/progress.layered.css +17 -0
  340. package/dist/quantitypicker.css +34 -34
  341. package/dist/quantitypicker.layered.css +80 -0
  342. package/dist/radiogroup.css +18 -18
  343. package/dist/radiogroup.layered.css +33 -0
  344. package/dist/recordpage.css +122 -122
  345. package/dist/recordpage.layered.css +153 -0
  346. package/dist/recordpanel.css +31 -31
  347. package/dist/recordpanel.layered.css +50 -0
  348. package/dist/recordstable.css +162 -162
  349. package/dist/recordstable.layered.css +222 -0
  350. package/dist/resizablepanel.css +26 -26
  351. package/dist/resizablepanel.layered.css +55 -0
  352. package/dist/richtext.css +24 -24
  353. package/dist/richtext.layered.css +38 -0
  354. package/dist/segmented.css +10 -10
  355. package/dist/segmented.layered.css +20 -0
  356. package/dist/select.css +43 -43
  357. package/dist/select.layered.css +72 -0
  358. package/dist/settingssection.css +8 -8
  359. package/dist/settingssection.layered.css +11 -0
  360. package/dist/settingsshell.css +23 -23
  361. package/dist/settingsshell.layered.css +44 -0
  362. package/dist/sidebar.css +27 -27
  363. package/dist/sidebar.layered.css +40 -0
  364. package/dist/skeleton.css +4 -4
  365. package/dist/skeleton.layered.css +15 -0
  366. package/dist/slider.css +23 -23
  367. package/dist/slider.layered.css +58 -0
  368. package/dist/spinner.css +3 -3
  369. package/dist/spinner.layered.css +14 -0
  370. package/dist/stagebar.css +4 -4
  371. package/dist/stagebar.layered.css +14 -0
  372. package/dist/statcard.css +14 -14
  373. package/dist/statcard.layered.css +21 -0
  374. package/dist/styles.css +1816 -1725
  375. package/dist/styles.layered.css +2932 -0
  376. package/dist/switch.css +7 -7
  377. package/dist/switch.layered.css +22 -0
  378. package/dist/table.css +16 -16
  379. package/dist/table.layered.css +36 -0
  380. package/dist/tabletoolbar.css +67 -67
  381. package/dist/tabletoolbar.layered.css +80 -0
  382. package/dist/tabs.css +15 -15
  383. package/dist/tabs.layered.css +29 -0
  384. package/dist/tasklist.css +17 -17
  385. package/dist/tasklist.layered.css +34 -0
  386. package/dist/textarea.css +18 -18
  387. package/dist/textarea.layered.css +42 -0
  388. package/dist/toast.css +17 -17
  389. package/dist/toast.layered.css +27 -0
  390. package/dist/tokens.css +199 -115
  391. package/dist/tooltip.css +3 -3
  392. package/dist/tooltip.layered.css +13 -0
  393. package/dist/trialbanner.css +13 -13
  394. package/dist/trialbanner.layered.css +28 -0
  395. package/dist/types/core/dialog-description.d.ts +1 -1
  396. package/dist/types/core/namespace.d.ts +2 -0
  397. package/dist/types/tokens/elevation.d.ts +4 -4
  398. package/dist/viewtoggle.css +10 -10
  399. package/dist/viewtoggle.layered.css +23 -0
  400. package/dist/wheelpicker.css +29 -29
  401. package/dist/wheelpicker.layered.css +70 -0
  402. package/licenses/Apache-2.0.txt +201 -0
  403. package/package.json +5 -2
package/dist/textarea.css CHANGED
@@ -1,38 +1,38 @@
1
- .textarea {
1
+ .crisp-textarea {
2
2
 
3
- position: relative; display: block; width: 100%; font-family: var(--font-sans);
3
+ position: relative; display: block; width: 100%; font-family: var(--crisp-font-sans);
4
4
 
5
- & .textarea-field {
5
+ & .crisp-textarea-field {
6
6
  box-sizing: border-box; display: block; width: 100%; min-height: 80px; resize: vertical;
7
- margin: 0; padding: var(--space-1-5) var(--space-2-5); border: none; border-radius: var(--radius-md);
8
- background: var(--bg-surface); box-shadow: inset 0 0 0 1px var(--ring-neutral), 0 0 2px rgba(28,40,64,0.18), 0 1px 3px rgba(0,0,0,0.04);
9
- font-family: inherit; font-size: var(--text-lg); line-height: 20px; color: var(--fg-primary);
7
+ margin: 0; padding: var(--crisp-space-1-5) var(--crisp-space-2-5); border: none; border-radius: var(--crisp-radius-md);
8
+ background: var(--crisp-bg-surface); box-shadow: inset 0 0 0 1px var(--crisp-ring-neutral), 0 0 2px rgba(28,40,64,0.18), 0 1px 3px rgba(0,0,0,0.04);
9
+ font-family: inherit; font-size: var(--crisp-text-lg); line-height: 20px; color: var(--crisp-fg-primary);
10
10
  outline: none; transition: box-shadow .15s ease;
11
11
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
12
12
  }
13
- & .textarea-field::placeholder { color: var(--fg-muted); }
14
- & .textarea-field:disabled { opacity: 0.5; cursor: not-allowed; }
13
+ & .crisp-textarea-field::placeholder { color: var(--crisp-fg-muted); }
14
+ & .crisp-textarea-field:disabled { opacity: 0.5; cursor: not-allowed; }
15
15
 
16
16
  /* seed-design's focus treatment, same as Input: a 2px ring on an ::after
17
17
  overlay that is present-but-transparent at rest, so focusing never
18
18
  shifts the box, animating only its colour. */
19
- & .textarea-wrap { position: relative; display: block; }
20
- & .textarea-wrap::after {
21
- content: ""; position: absolute; inset: 0; border-radius: var(--radius-md);
19
+ & .crisp-textarea-wrap { position: relative; display: block; }
20
+ & .crisp-textarea-wrap::after {
21
+ content: ""; position: absolute; inset: 0; border-radius: var(--crisp-radius-md);
22
22
  border: 2px solid transparent; transition: border-color .1s ease;
23
23
  pointer-events: none;
24
24
  }
25
- & .textarea-wrap:focus-within::after { border-color: var(--stroke-field-focus); }
26
- &[data-invalid] .textarea-wrap::after { border-color: var(--bg-danger); }
27
- &[data-invalid] .textarea-wrap:focus-within::after { border-color: var(--bg-danger); }
28
- &[data-counted] .textarea-field { padding-bottom: var(--space-5); }
29
- & .textarea-count { position: absolute; inset-inline-end: var(--space-2-5); bottom: var(--space-1-5); font-size: var(--text-sm); color: var(--fg-muted); pointer-events: none; }
30
- & .textarea-count[data-over] { color: var(--bg-danger); }
25
+ & .crisp-textarea-wrap:focus-within::after { border-color: var(--crisp-stroke-field-focus); }
26
+ &[data-invalid] .crisp-textarea-wrap::after { border-color: var(--crisp-bg-danger); }
27
+ &[data-invalid] .crisp-textarea-wrap:focus-within::after { border-color: var(--crisp-bg-danger); }
28
+ &[data-counted] .crisp-textarea-field { padding-bottom: var(--crisp-space-5); }
29
+ & .crisp-textarea-count { position: absolute; inset-inline-end: var(--crisp-space-2-5); bottom: var(--crisp-space-1-5); font-size: var(--crisp-text-sm); color: var(--crisp-fg-muted); pointer-events: none; }
30
+ & .crisp-textarea-count[data-over] { color: var(--crisp-bg-danger); }
31
31
 
32
32
  }
33
33
 
34
34
  @media (prefers-reduced-motion: reduce) {
35
- .textarea, .textarea * {
35
+ .crisp-textarea, .crisp-textarea * {
36
36
  animation-duration: 0.01ms !important;
37
37
  animation-iteration-count: 1 !important;
38
38
  transition-duration: 0.01ms !important;
@@ -0,0 +1,42 @@
1
+ @layer crisp-components {
2
+ .crisp-textarea {
3
+
4
+ position: relative; display: block; width: 100%; font-family: var(--crisp-font-sans);
5
+
6
+ & .crisp-textarea-field {
7
+ box-sizing: border-box; display: block; width: 100%; min-height: 80px; resize: vertical;
8
+ margin: 0; padding: var(--crisp-space-1-5) var(--crisp-space-2-5); border: none; border-radius: var(--crisp-radius-md);
9
+ background: var(--crisp-bg-surface); box-shadow: inset 0 0 0 1px var(--crisp-ring-neutral), 0 0 2px rgba(28,40,64,0.18), 0 1px 3px rgba(0,0,0,0.04);
10
+ font-family: inherit; font-size: var(--crisp-text-lg); line-height: 20px; color: var(--crisp-fg-primary);
11
+ outline: none; transition: box-shadow .15s ease;
12
+ -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
13
+ }
14
+ & .crisp-textarea-field::placeholder { color: var(--crisp-fg-muted); }
15
+ & .crisp-textarea-field:disabled { opacity: 0.5; cursor: not-allowed; }
16
+
17
+ /* seed-design's focus treatment, same as Input: a 2px ring on an ::after
18
+ overlay that is present-but-transparent at rest, so focusing never
19
+ shifts the box, animating only its colour. */
20
+ & .crisp-textarea-wrap { position: relative; display: block; }
21
+ & .crisp-textarea-wrap::after {
22
+ content: ""; position: absolute; inset: 0; border-radius: var(--crisp-radius-md);
23
+ border: 2px solid transparent; transition: border-color .1s ease;
24
+ pointer-events: none;
25
+ }
26
+ & .crisp-textarea-wrap:focus-within::after { border-color: var(--crisp-stroke-field-focus); }
27
+ &[data-invalid] .crisp-textarea-wrap::after { border-color: var(--crisp-bg-danger); }
28
+ &[data-invalid] .crisp-textarea-wrap:focus-within::after { border-color: var(--crisp-bg-danger); }
29
+ &[data-counted] .crisp-textarea-field { padding-bottom: var(--crisp-space-5); }
30
+ & .crisp-textarea-count { position: absolute; inset-inline-end: var(--crisp-space-2-5); bottom: var(--crisp-space-1-5); font-size: var(--crisp-text-sm); color: var(--crisp-fg-muted); pointer-events: none; }
31
+ & .crisp-textarea-count[data-over] { color: var(--crisp-bg-danger); }
32
+
33
+ }
34
+
35
+ @media (prefers-reduced-motion: reduce) {
36
+ .crisp-textarea, .crisp-textarea * {
37
+ animation-duration: 0.01ms !important;
38
+ animation-iteration-count: 1 !important;
39
+ transition-duration: 0.01ms !important;
40
+ }
41
+ }
42
+ }
package/dist/toast.css CHANGED
@@ -1,23 +1,23 @@
1
- .toast {
2
- display: contents; font-family: var(--font-sans);
3
- & .toast-viewport { position: fixed; z-index: 80; inset-inline-end: var(--space-4); bottom: var(--space-4); display: flex; flex-direction: column; gap: var(--space-2); width: 360px; max-width: calc(100vw - var(--space-8)); pointer-events: none; }
4
- & .toast { pointer-events: auto; display: flex; align-items: flex-start; gap: var(--space-2-5); box-sizing: border-box; padding: var(--space-3); border-radius: var(--radius-xl); background: var(--bg-raised); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--fg-primary) 5%, transparent), 0 8px 28px -6px rgba(28,40,64,0.16), 0 2px 6px -2px rgba(28,40,64,0.10); opacity: 1; transform: translateY(0); transition: opacity 0.15s ease, transform 0.15s ease; @starting-style { opacity: 0; transform: translateY(8px); } }
5
- & .toast-icon { flex-shrink: 0; margin-top: 1px; display: inline-flex; color: var(--fg-muted); }
6
- & .toast[data-tone="info"] .toast-icon { color: var(--bg-brand-solid); }
7
- & .toast[data-tone="success"] .toast-icon { color: var(--bg-success); }
8
- & .toast[data-tone="warning"] .toast-icon { color: var(--bg-warning); }
9
- & .toast[data-tone="danger"] .toast-icon { color: var(--bg-danger); }
10
- & .toast-body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
11
- & .toast-title { font-size: var(--text-md); font-weight: var(--weight-semibold); color: var(--fg-primary); }
12
- & .toast-desc { font-size: var(--text-md); color: var(--fg-muted); }
13
- & .toast-action { align-self: flex-start; margin-top: var(--space-1-5); height: 24px; padding: 0 var(--space-2); border: none; border-radius: var(--radius-md); background: color-mix(in srgb, var(--fg-primary) 6%, transparent); color: var(--fg-primary); font-family: inherit; font-size: var(--text-sm); font-weight: var(--weight-medium); cursor: pointer; }
14
- & .toast-action:hover { background: color-mix(in srgb, var(--fg-primary) 10%, transparent); }
15
- & .toast-close { flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; margin: -2px -2px 0 0; padding: 0; border: none; border-radius: var(--radius-md); background: none; color: var(--fg-muted); font-family: inherit; cursor: pointer; }
16
- & .toast-close:hover { background: color-mix(in srgb, var(--fg-primary) 6%, transparent); color: var(--fg-primary); }
1
+ .crisp-toast {
2
+ display: contents; font-family: var(--crisp-font-sans);
3
+ & .crisp-toast-viewport { position: fixed; z-index: 80; inset-inline-end: var(--crisp-space-4); bottom: var(--crisp-space-4); display: flex; flex-direction: column; gap: var(--crisp-space-2); width: 360px; max-width: calc(100vw - var(--crisp-space-8)); pointer-events: none; }
4
+ & .crisp-toast { pointer-events: auto; display: flex; align-items: flex-start; gap: var(--crisp-space-2-5); box-sizing: border-box; padding: var(--crisp-space-3); border-radius: var(--crisp-radius-xl); background: var(--crisp-bg-raised); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--crisp-fg-primary) 5%, transparent), 0 8px 28px -6px rgba(28,40,64,0.16), 0 2px 6px -2px rgba(28,40,64,0.10); opacity: 1; transform: translateY(0); transition: opacity 0.15s ease, transform 0.15s ease; @starting-style { opacity: 0; transform: translateY(8px); } }
5
+ & .crisp-toast-icon { flex-shrink: 0; margin-top: 1px; display: inline-flex; color: var(--crisp-fg-muted); }
6
+ & .crisp-toast[data-tone="info"] .crisp-toast-icon { color: var(--crisp-bg-brand-solid); }
7
+ & .crisp-toast[data-tone="success"] .crisp-toast-icon { color: var(--crisp-bg-success); }
8
+ & .crisp-toast[data-tone="warning"] .crisp-toast-icon { color: var(--crisp-bg-warning); }
9
+ & .crisp-toast[data-tone="danger"] .crisp-toast-icon { color: var(--crisp-bg-danger); }
10
+ & .crisp-toast-body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
11
+ & .crisp-toast-title { font-size: var(--crisp-text-md); font-weight: var(--crisp-weight-semibold); color: var(--crisp-fg-primary); }
12
+ & .crisp-toast-desc { font-size: var(--crisp-text-md); color: var(--crisp-fg-muted); }
13
+ & .crisp-toast-action { align-self: flex-start; margin-top: var(--crisp-space-1-5); height: 24px; padding: 0 var(--crisp-space-2); border: none; border-radius: var(--crisp-radius-md); background: color-mix(in srgb, var(--crisp-fg-primary) 6%, transparent); color: var(--crisp-fg-primary); font-family: inherit; font-size: var(--crisp-text-sm); font-weight: var(--crisp-weight-medium); cursor: pointer; }
14
+ & .crisp-toast-action:hover { background: color-mix(in srgb, var(--crisp-fg-primary) 10%, transparent); }
15
+ & .crisp-toast-close { flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; margin: -2px -2px 0 0; padding: 0; border: none; border-radius: var(--crisp-radius-md); background: none; color: var(--crisp-fg-muted); font-family: inherit; cursor: pointer; }
16
+ & .crisp-toast-close:hover { background: color-mix(in srgb, var(--crisp-fg-primary) 6%, transparent); color: var(--crisp-fg-primary); }
17
17
  }
18
18
 
19
19
  @media (prefers-reduced-motion: reduce) {
20
- .toast, .toast * {
20
+ .crisp-toast, .crisp-toast * {
21
21
  animation-duration: 0.01ms !important;
22
22
  animation-iteration-count: 1 !important;
23
23
  transition-duration: 0.01ms !important;
@@ -0,0 +1,27 @@
1
+ @layer crisp-components {
2
+ .crisp-toast {
3
+ display: contents; font-family: var(--crisp-font-sans);
4
+ & .crisp-toast-viewport { position: fixed; z-index: 80; inset-inline-end: var(--crisp-space-4); bottom: var(--crisp-space-4); display: flex; flex-direction: column; gap: var(--crisp-space-2); width: 360px; max-width: calc(100vw - var(--crisp-space-8)); pointer-events: none; }
5
+ & .crisp-toast { pointer-events: auto; display: flex; align-items: flex-start; gap: var(--crisp-space-2-5); box-sizing: border-box; padding: var(--crisp-space-3); border-radius: var(--crisp-radius-xl); background: var(--crisp-bg-raised); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--crisp-fg-primary) 5%, transparent), 0 8px 28px -6px rgba(28,40,64,0.16), 0 2px 6px -2px rgba(28,40,64,0.10); opacity: 1; transform: translateY(0); transition: opacity 0.15s ease, transform 0.15s ease; @starting-style { opacity: 0; transform: translateY(8px); } }
6
+ & .crisp-toast-icon { flex-shrink: 0; margin-top: 1px; display: inline-flex; color: var(--crisp-fg-muted); }
7
+ & .crisp-toast[data-tone="info"] .crisp-toast-icon { color: var(--crisp-bg-brand-solid); }
8
+ & .crisp-toast[data-tone="success"] .crisp-toast-icon { color: var(--crisp-bg-success); }
9
+ & .crisp-toast[data-tone="warning"] .crisp-toast-icon { color: var(--crisp-bg-warning); }
10
+ & .crisp-toast[data-tone="danger"] .crisp-toast-icon { color: var(--crisp-bg-danger); }
11
+ & .crisp-toast-body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
12
+ & .crisp-toast-title { font-size: var(--crisp-text-md); font-weight: var(--crisp-weight-semibold); color: var(--crisp-fg-primary); }
13
+ & .crisp-toast-desc { font-size: var(--crisp-text-md); color: var(--crisp-fg-muted); }
14
+ & .crisp-toast-action { align-self: flex-start; margin-top: var(--crisp-space-1-5); height: 24px; padding: 0 var(--crisp-space-2); border: none; border-radius: var(--crisp-radius-md); background: color-mix(in srgb, var(--crisp-fg-primary) 6%, transparent); color: var(--crisp-fg-primary); font-family: inherit; font-size: var(--crisp-text-sm); font-weight: var(--crisp-weight-medium); cursor: pointer; }
15
+ & .crisp-toast-action:hover { background: color-mix(in srgb, var(--crisp-fg-primary) 10%, transparent); }
16
+ & .crisp-toast-close { flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; margin: -2px -2px 0 0; padding: 0; border: none; border-radius: var(--crisp-radius-md); background: none; color: var(--crisp-fg-muted); font-family: inherit; cursor: pointer; }
17
+ & .crisp-toast-close:hover { background: color-mix(in srgb, var(--crisp-fg-primary) 6%, transparent); color: var(--crisp-fg-primary); }
18
+ }
19
+
20
+ @media (prefers-reduced-motion: reduce) {
21
+ .crisp-toast, .crisp-toast * {
22
+ animation-duration: 0.01ms !important;
23
+ animation-iteration-count: 1 !important;
24
+ transition-duration: 0.01ms !important;
25
+ }
26
+ }
27
+ }
package/dist/tokens.css CHANGED
@@ -1,123 +1,207 @@
1
1
  :root {
2
- --bg-brand-solid: #266df0;
3
- --bg-brand-solid-pressed: #1f5fd6;
4
- --fg-on-brand: #ffffff;
5
- --fg-on-tone: #101112;
6
- --bg-surface: #ffffff;
7
- --bg-raised: #f4f4f5;
8
- --border-default: #e4e4e7;
9
- --border-subtle: #eeeff1;
10
- --ring-neutral: transparent;
11
- --bg-tile-active: #ffffff;
12
- --shadow-tile-active: rgba(0,0,0,0.04);
13
- --bg-overlay-frost: #ffffff;
14
- --shadow-overlay1: rgba(28,40,64,0.12);
15
- --shadow-overlay2: rgba(28,40,64,0.16);
16
- --shadow-overlay3: rgba(28,40,64,0.16);
17
- --bg-popover: #ffffff;
18
- --ring-popover: rgba(0,0,0,0);
19
- --shadow-popover1: rgba(28,40,64,0.04);
20
- --shadow-popover2: rgba(28,40,64,0.12);
21
- --shadow-popover3: rgba(24,41,75,0.16);
22
- --fg-primary: #101112;
23
- --fg-muted: #71717a;
24
- --bg-danger: #e5484d;
25
- --bg-danger-solid: #ba2525;
26
- --stroke-field-focus: #1a1c20;
27
- --fg-disabled: #d1d3d8;
28
- --bg-neutral-weak: #f3f4f5;
29
- --bg-neutral-inverted: #2a3038;
30
- --fg-on-neutral-inverted: #ffffff;
31
- --fg-neutral-subtle: #868b94;
32
- --fg-neutral-muted: #555d6d;
33
- --stroke-focus-ring: #1e82eb;
34
- --bg-success: #1f9d57;
35
- --bg-warning: #b5730f;
36
- --bg-orange: #f97514;
37
- --bg-cyan: #00b9eb;
38
- --bg-purple: #9b69ff;
39
- --bg-sidebar: #fbfbfb;
40
- --bg-subtle: #fbfbfb;
2
+ --crisp-bg-brand-solid: #266df0;
3
+ --crisp-bg-brand-solid-pressed: #1f5fd6;
4
+ --crisp-fg-on-brand: #ffffff;
5
+ --crisp-fg-on-tone: #101112;
6
+ --crisp-bg-surface: #ffffff;
7
+ --crisp-bg-raised: #f4f4f5;
8
+ --crisp-border-default: #e4e4e7;
9
+ --crisp-border-subtle: #eeeff1;
10
+ --crisp-ring-neutral: transparent;
11
+ --crisp-bg-tile-active: #ffffff;
12
+ --crisp-shadow-tile-active: rgba(0,0,0,0.04);
13
+ --crisp-bg-overlay-frost: #ffffff;
14
+ --crisp-shadow-overlay1: rgba(28,40,64,0.12);
15
+ --crisp-shadow-overlay2: rgba(28,40,64,0.16);
16
+ --crisp-shadow-overlay3: rgba(28,40,64,0.16);
17
+ --crisp-bg-popover: #ffffff;
18
+ --crisp-ring-popover: rgba(0,0,0,0);
19
+ --crisp-shadow-popover1: rgba(28,40,64,0.04);
20
+ --crisp-shadow-popover2: rgba(28,40,64,0.12);
21
+ --crisp-shadow-popover3: rgba(24,41,75,0.16);
22
+ --crisp-fg-primary: #101112;
23
+ --crisp-fg-muted: #71717a;
24
+ --crisp-bg-danger: #e5484d;
25
+ --crisp-bg-danger-solid: #ba2525;
26
+ --crisp-stroke-field-focus: #1a1c20;
27
+ --crisp-fg-disabled: #d1d3d8;
28
+ --crisp-bg-neutral-weak: #f3f4f5;
29
+ --crisp-bg-neutral-inverted: #2a3038;
30
+ --crisp-fg-on-neutral-inverted: #ffffff;
31
+ --crisp-fg-neutral-subtle: #868b94;
32
+ --crisp-fg-neutral-muted: #555d6d;
33
+ --crisp-stroke-focus-ring: #1e82eb;
34
+ --crisp-bg-success: #1f9d57;
35
+ --crisp-bg-warning: #b5730f;
36
+ --crisp-bg-orange: #f97514;
37
+ --crisp-bg-cyan: #00b9eb;
38
+ --crisp-bg-purple: #9b69ff;
39
+ --crisp-bg-sidebar: #fbfbfb;
40
+ --crisp-bg-subtle: #fbfbfb;
41
41
  }
42
42
 
43
43
  [data-theme="dark"] {
44
- --bg-brand-solid: #266df0;
45
- --bg-brand-solid-pressed: #1f5fd6;
46
- --fg-on-brand: #ffffff;
47
- --fg-on-tone: #101112;
48
- --bg-surface: #0a0a0a;
49
- --bg-raised: #101112;
50
- --border-default: #212224;
51
- --border-subtle: #1c1d1f;
52
- --ring-neutral: #212224;
53
- --bg-tile-active: #101112;
54
- --shadow-tile-active: rgba(0,0,0,0);
55
- --bg-overlay-frost: #1c1d1f;
56
- --shadow-overlay1: rgba(0,0,0,0.48);
57
- --shadow-overlay2: rgba(0,0,0,0.64);
58
- --shadow-overlay3: rgba(0,0,0,0);
59
- --bg-popover: #17181a;
60
- --ring-popover: #212224;
61
- --shadow-popover1: rgba(0,0,0,0.16);
62
- --shadow-popover2: rgba(0,0,0,0.24);
63
- --shadow-popover3: rgba(0,0,0,0.32);
64
- --fg-primary: #f5f5f5;
65
- --fg-muted: #9a9aa2;
66
- --bg-danger: #ff5a5f;
67
- --bg-danger-solid: #ba2525;
68
- --stroke-field-focus: #f3f4f5;
69
- --fg-disabled: #5b606a;
70
- --bg-neutral-weak: #1d2025;
71
- --bg-neutral-inverted: #f3f4f5;
72
- --fg-on-neutral-inverted: #16171b;
73
- --fg-neutral-subtle: #b0b3ba;
74
- --fg-neutral-muted: #dcdee3;
75
- --stroke-focus-ring: #5e98fe;
76
- --bg-success: #2ea968;
77
- --bg-warning: #e0982a;
78
- --bg-orange: #f97514;
79
- --bg-cyan: #00b9eb;
80
- --bg-purple: #9b69ff;
81
- --bg-sidebar: #0e0f10;
82
- --bg-subtle: #0e0f10;
44
+ --crisp-bg-brand-solid: #266df0;
45
+ --crisp-bg-brand-solid-pressed: #1f5fd6;
46
+ --crisp-fg-on-brand: #ffffff;
47
+ --crisp-fg-on-tone: #101112;
48
+ --crisp-bg-surface: #0a0a0a;
49
+ --crisp-bg-raised: #101112;
50
+ --crisp-border-default: #212224;
51
+ --crisp-border-subtle: #1c1d1f;
52
+ --crisp-ring-neutral: #212224;
53
+ --crisp-bg-tile-active: #101112;
54
+ --crisp-shadow-tile-active: rgba(0,0,0,0);
55
+ --crisp-bg-overlay-frost: #1c1d1f;
56
+ --crisp-shadow-overlay1: rgba(0,0,0,0.48);
57
+ --crisp-shadow-overlay2: rgba(0,0,0,0.64);
58
+ --crisp-shadow-overlay3: rgba(0,0,0,0);
59
+ --crisp-bg-popover: #17181a;
60
+ --crisp-ring-popover: #212224;
61
+ --crisp-shadow-popover1: rgba(0,0,0,0.16);
62
+ --crisp-shadow-popover2: rgba(0,0,0,0.24);
63
+ --crisp-shadow-popover3: rgba(0,0,0,0.32);
64
+ --crisp-fg-primary: #f5f5f5;
65
+ --crisp-fg-muted: #9a9aa2;
66
+ --crisp-bg-danger: #ff5a5f;
67
+ --crisp-bg-danger-solid: #ba2525;
68
+ --crisp-stroke-field-focus: #f3f4f5;
69
+ --crisp-fg-disabled: #5b606a;
70
+ --crisp-bg-neutral-weak: #1d2025;
71
+ --crisp-bg-neutral-inverted: #f3f4f5;
72
+ --crisp-fg-on-neutral-inverted: #16171b;
73
+ --crisp-fg-neutral-subtle: #b0b3ba;
74
+ --crisp-fg-neutral-muted: #dcdee3;
75
+ --crisp-stroke-focus-ring: #5e98fe;
76
+ --crisp-bg-success: #2ea968;
77
+ --crisp-bg-warning: #e0982a;
78
+ --crisp-bg-orange: #f97514;
79
+ --crisp-bg-cyan: #00b9eb;
80
+ --crisp-bg-purple: #9b69ff;
81
+ --crisp-bg-sidebar: #0e0f10;
82
+ --crisp-bg-subtle: #0e0f10;
83
83
  }
84
84
 
85
85
  :root {
86
- --space-1: 4px;
87
- --space-2: 8px;
88
- --space-3: 12px;
89
- --space-4: 16px;
90
- --space-5: 20px;
91
- --space-6: 24px;
92
- --space-8: 32px;
93
- --space-px: 1px;
94
- --space-0-5: 2px;
95
- --space-1-5: 6px;
96
- --space-2-5: 10px;
97
- --radius-chip: 7px;
98
- --radius-sm: 6px;
99
- --radius-md: 8px;
100
- --radius-lg: 9px;
101
- --radius-xl: 12px;
102
- --radius-2xl: 16px;
103
- --radius-full: 999px;
104
- --size-icon: 16px;
105
- --size-chip: 22px;
106
- --size-row: 28px;
107
- --size-menuRow: 32px;
108
- --size-tableRow: 36px;
109
- --size-tableHeader: 40px;
110
- --size-header: 48px;
111
- --size-calendarCell: 34px;
112
- --size-calendarPill: 32px;
113
- --text-xs: 11px;
114
- --text-sm: 12px;
115
- --text-md: 13px;
116
- --text-lg: 14px;
117
- --text-xl: 16px;
118
- --weight-regular: 400;
119
- --weight-medium: 500;
120
- --weight-semibold: 600;
121
- --weight-bold: 700;
122
- --font-sans: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
86
+ --crisp-space-1: 4px;
87
+ --crisp-space-2: 8px;
88
+ --crisp-space-3: 12px;
89
+ --crisp-space-4: 16px;
90
+ --crisp-space-5: 20px;
91
+ --crisp-space-6: 24px;
92
+ --crisp-space-8: 32px;
93
+ --crisp-space-px: 1px;
94
+ --crisp-space-0-5: 2px;
95
+ --crisp-space-1-5: 6px;
96
+ --crisp-space-2-5: 10px;
97
+ --crisp-radius-chip: 7px;
98
+ --crisp-radius-sm: 6px;
99
+ --crisp-radius-md: 8px;
100
+ --crisp-radius-lg: 9px;
101
+ --crisp-radius-xl: 12px;
102
+ --crisp-radius-2xl: 16px;
103
+ --crisp-radius-full: 999px;
104
+ --crisp-size-icon: 16px;
105
+ --crisp-size-chip: 22px;
106
+ --crisp-size-row: 28px;
107
+ --crisp-size-menuRow: 32px;
108
+ --crisp-size-tableRow: 36px;
109
+ --crisp-size-tableHeader: 40px;
110
+ --crisp-size-header: 48px;
111
+ --crisp-size-calendarCell: 34px;
112
+ --crisp-size-calendarPill: 32px;
113
+ --crisp-text-xs: 11px;
114
+ --crisp-text-sm: 12px;
115
+ --crisp-text-md: 13px;
116
+ --crisp-text-lg: 14px;
117
+ --crisp-text-xl: 16px;
118
+ --crisp-weight-regular: 400;
119
+ --crisp-weight-medium: 500;
120
+ --crisp-weight-semibold: 600;
121
+ --crisp-weight-bold: 700;
122
+ --crisp-font-sans: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
123
+ }
124
+
125
+ /* -----------------------------------------------------------------
126
+ * Deprecated unprefixed aliases (issue #276) — SCHEDULED FOR REMOVAL in
127
+ * the next major version. Prefer the --crisp-* custom property
128
+ * above; these only forward to it so an existing override keeps working.
129
+ * ----------------------------------------------------------------- */
130
+ :root {
131
+ --bg-brand-solid: var(--crisp-bg-brand-solid);
132
+ --bg-brand-solid-pressed: var(--crisp-bg-brand-solid-pressed);
133
+ --fg-on-brand: var(--crisp-fg-on-brand);
134
+ --fg-on-tone: var(--crisp-fg-on-tone);
135
+ --bg-surface: var(--crisp-bg-surface);
136
+ --bg-raised: var(--crisp-bg-raised);
137
+ --border-default: var(--crisp-border-default);
138
+ --border-subtle: var(--crisp-border-subtle);
139
+ --ring-neutral: var(--crisp-ring-neutral);
140
+ --bg-tile-active: var(--crisp-bg-tile-active);
141
+ --shadow-tile-active: var(--crisp-shadow-tile-active);
142
+ --bg-overlay-frost: var(--crisp-bg-overlay-frost);
143
+ --shadow-overlay1: var(--crisp-shadow-overlay1);
144
+ --shadow-overlay2: var(--crisp-shadow-overlay2);
145
+ --shadow-overlay3: var(--crisp-shadow-overlay3);
146
+ --bg-popover: var(--crisp-bg-popover);
147
+ --ring-popover: var(--crisp-ring-popover);
148
+ --shadow-popover1: var(--crisp-shadow-popover1);
149
+ --shadow-popover2: var(--crisp-shadow-popover2);
150
+ --shadow-popover3: var(--crisp-shadow-popover3);
151
+ --fg-primary: var(--crisp-fg-primary);
152
+ --fg-muted: var(--crisp-fg-muted);
153
+ --bg-danger: var(--crisp-bg-danger);
154
+ --bg-danger-solid: var(--crisp-bg-danger-solid);
155
+ --stroke-field-focus: var(--crisp-stroke-field-focus);
156
+ --fg-disabled: var(--crisp-fg-disabled);
157
+ --bg-neutral-weak: var(--crisp-bg-neutral-weak);
158
+ --bg-neutral-inverted: var(--crisp-bg-neutral-inverted);
159
+ --fg-on-neutral-inverted: var(--crisp-fg-on-neutral-inverted);
160
+ --fg-neutral-subtle: var(--crisp-fg-neutral-subtle);
161
+ --fg-neutral-muted: var(--crisp-fg-neutral-muted);
162
+ --stroke-focus-ring: var(--crisp-stroke-focus-ring);
163
+ --bg-success: var(--crisp-bg-success);
164
+ --bg-warning: var(--crisp-bg-warning);
165
+ --bg-orange: var(--crisp-bg-orange);
166
+ --bg-cyan: var(--crisp-bg-cyan);
167
+ --bg-purple: var(--crisp-bg-purple);
168
+ --bg-sidebar: var(--crisp-bg-sidebar);
169
+ --bg-subtle: var(--crisp-bg-subtle);
170
+ --space-1: var(--crisp-space-1);
171
+ --space-2: var(--crisp-space-2);
172
+ --space-3: var(--crisp-space-3);
173
+ --space-4: var(--crisp-space-4);
174
+ --space-5: var(--crisp-space-5);
175
+ --space-6: var(--crisp-space-6);
176
+ --space-8: var(--crisp-space-8);
177
+ --space-px: var(--crisp-space-px);
178
+ --space-0-5: var(--crisp-space-0-5);
179
+ --space-1-5: var(--crisp-space-1-5);
180
+ --space-2-5: var(--crisp-space-2-5);
181
+ --radius-chip: var(--crisp-radius-chip);
182
+ --radius-sm: var(--crisp-radius-sm);
183
+ --radius-md: var(--crisp-radius-md);
184
+ --radius-lg: var(--crisp-radius-lg);
185
+ --radius-xl: var(--crisp-radius-xl);
186
+ --radius-2xl: var(--crisp-radius-2xl);
187
+ --radius-full: var(--crisp-radius-full);
188
+ --size-icon: var(--crisp-size-icon);
189
+ --size-chip: var(--crisp-size-chip);
190
+ --size-row: var(--crisp-size-row);
191
+ --size-menuRow: var(--crisp-size-menuRow);
192
+ --size-tableRow: var(--crisp-size-tableRow);
193
+ --size-tableHeader: var(--crisp-size-tableHeader);
194
+ --size-header: var(--crisp-size-header);
195
+ --size-calendarCell: var(--crisp-size-calendarCell);
196
+ --size-calendarPill: var(--crisp-size-calendarPill);
197
+ --text-xs: var(--crisp-text-xs);
198
+ --text-sm: var(--crisp-text-sm);
199
+ --text-md: var(--crisp-text-md);
200
+ --text-lg: var(--crisp-text-lg);
201
+ --text-xl: var(--crisp-text-xl);
202
+ --weight-regular: var(--crisp-weight-regular);
203
+ --weight-medium: var(--crisp-weight-medium);
204
+ --weight-semibold: var(--crisp-weight-semibold);
205
+ --weight-bold: var(--crisp-weight-bold);
206
+ --font-sans: var(--crisp-font-sans);
123
207
  }
package/dist/tooltip.css CHANGED
@@ -1,9 +1,9 @@
1
- .tooltip {
2
- position: fixed; z-index: 70; box-sizing: border-box; pointer-events: none; max-width: 260px; padding: var(--space-1) var(--space-2); border-radius: var(--radius-sm); background: #20242c; color: #fff; font-family: var(--font-sans); font-size: var(--text-sm); font-weight: var(--weight-medium); line-height: 1.45; box-shadow: 0 4px 14px -2px rgba(28,40,64,0.28), 0 0 0 1px rgba(255,255,255,0.04); opacity: 1; transition: opacity 0.12s ease; @starting-style { opacity: 0; }
1
+ .crisp-tooltip {
2
+ position: fixed; z-index: 70; box-sizing: border-box; pointer-events: none; max-width: 260px; padding: var(--crisp-space-1) var(--crisp-space-2); border-radius: var(--crisp-radius-sm); background: #20242c; color: #fff; font-family: var(--crisp-font-sans); font-size: var(--crisp-text-sm); font-weight: var(--crisp-weight-medium); line-height: 1.45; box-shadow: 0 4px 14px -2px rgba(28,40,64,0.28), 0 0 0 1px rgba(255,255,255,0.04); opacity: 1; transition: opacity 0.12s ease; @starting-style { opacity: 0; }
3
3
  }
4
4
 
5
5
  @media (prefers-reduced-motion: reduce) {
6
- .tooltip, .tooltip * {
6
+ .crisp-tooltip, .crisp-tooltip * {
7
7
  animation-duration: 0.01ms !important;
8
8
  animation-iteration-count: 1 !important;
9
9
  transition-duration: 0.01ms !important;
@@ -0,0 +1,13 @@
1
+ @layer crisp-components {
2
+ .crisp-tooltip {
3
+ position: fixed; z-index: 70; box-sizing: border-box; pointer-events: none; max-width: 260px; padding: var(--crisp-space-1) var(--crisp-space-2); border-radius: var(--crisp-radius-sm); background: #20242c; color: #fff; font-family: var(--crisp-font-sans); font-size: var(--crisp-text-sm); font-weight: var(--crisp-weight-medium); line-height: 1.45; box-shadow: 0 4px 14px -2px rgba(28,40,64,0.28), 0 0 0 1px rgba(255,255,255,0.04); opacity: 1; transition: opacity 0.12s ease; @starting-style { opacity: 0; }
4
+ }
5
+
6
+ @media (prefers-reduced-motion: reduce) {
7
+ .crisp-tooltip, .crisp-tooltip * {
8
+ animation-duration: 0.01ms !important;
9
+ animation-iteration-count: 1 !important;
10
+ transition-duration: 0.01ms !important;
11
+ }
12
+ }
13
+ }
@@ -1,24 +1,24 @@
1
- .trialbanner {
2
- display: flex; align-items: center; gap: var(--space-1-5); box-sizing: border-box; min-height: 28px;
3
- padding: 0 var(--space-1); border-radius: var(--radius-lg); font-family: var(--font-sans);
4
- font-size: var(--text-lg); color: var(--fg-primary);
1
+ .crisp-trialbanner {
2
+ display: flex; align-items: center; gap: var(--crisp-space-1-5); box-sizing: border-box; min-height: 28px;
3
+ padding: 0 var(--crisp-space-1); border-radius: var(--crisp-radius-lg); font-family: var(--crisp-font-sans);
4
+ font-size: var(--crisp-text-lg); color: var(--crisp-fg-primary);
5
5
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
6
6
 
7
- & .trialbanner-icon { display: inline-flex; flex-shrink: 0; color: var(--fg-muted); }
8
- & .trialbanner-msg { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
9
- & .trialbanner-action { display: inline-flex; align-items: center; gap: var(--space-1); height: 20px; flex-shrink: 0;
10
- padding: 0 var(--space-1-5); margin: 0; border: none; border-radius: var(--radius-sm); background: var(--bg-surface);
7
+ & .crisp-trialbanner-icon { display: inline-flex; flex-shrink: 0; color: var(--crisp-fg-muted); }
8
+ & .crisp-trialbanner-msg { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
9
+ & .crisp-trialbanner-action { display: inline-flex; align-items: center; gap: var(--crisp-space-1); height: 20px; flex-shrink: 0;
10
+ padding: 0 var(--crisp-space-1-5); margin: 0; border: none; border-radius: var(--crisp-radius-sm); background: var(--crisp-bg-surface);
11
11
  box-shadow: 0 0 2px rgba(28,40,64,0.18), 0 1px 3px rgba(0,0,0,0.04);
12
- font-family: inherit; font-size: var(--text-md); font-weight: var(--weight-medium); color: var(--fg-primary);
12
+ font-family: inherit; font-size: var(--crisp-text-md); font-weight: var(--crisp-weight-medium); color: var(--crisp-fg-primary);
13
13
  white-space: nowrap; cursor: pointer; transition: background-color .12s; }
14
- & .trialbanner-action:hover { background: var(--bg-raised); }
14
+ & .crisp-trialbanner-action:hover { background: var(--crisp-bg-raised); }
15
15
 
16
- &[data-tone="warning"] .trialbanner-icon { color: var(--bg-warning); }
17
- &[data-tone="danger"] .trialbanner-icon { color: var(--bg-danger); }
16
+ &[data-tone="warning"] .crisp-trialbanner-icon { color: var(--crisp-bg-warning); }
17
+ &[data-tone="danger"] .crisp-trialbanner-icon { color: var(--crisp-bg-danger); }
18
18
  }
19
19
 
20
20
  @media (prefers-reduced-motion: reduce) {
21
- .trialbanner, .trialbanner * {
21
+ .crisp-trialbanner, .crisp-trialbanner * {
22
22
  animation-duration: 0.01ms !important;
23
23
  animation-iteration-count: 1 !important;
24
24
  transition-duration: 0.01ms !important;
@@ -0,0 +1,28 @@
1
+ @layer crisp-components {
2
+ .crisp-trialbanner {
3
+ display: flex; align-items: center; gap: var(--crisp-space-1-5); box-sizing: border-box; min-height: 28px;
4
+ padding: 0 var(--crisp-space-1); border-radius: var(--crisp-radius-lg); font-family: var(--crisp-font-sans);
5
+ font-size: var(--crisp-text-lg); color: var(--crisp-fg-primary);
6
+ -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
7
+
8
+ & .crisp-trialbanner-icon { display: inline-flex; flex-shrink: 0; color: var(--crisp-fg-muted); }
9
+ & .crisp-trialbanner-msg { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
10
+ & .crisp-trialbanner-action { display: inline-flex; align-items: center; gap: var(--crisp-space-1); height: 20px; flex-shrink: 0;
11
+ padding: 0 var(--crisp-space-1-5); margin: 0; border: none; border-radius: var(--crisp-radius-sm); background: var(--crisp-bg-surface);
12
+ box-shadow: 0 0 2px rgba(28,40,64,0.18), 0 1px 3px rgba(0,0,0,0.04);
13
+ font-family: inherit; font-size: var(--crisp-text-md); font-weight: var(--crisp-weight-medium); color: var(--crisp-fg-primary);
14
+ white-space: nowrap; cursor: pointer; transition: background-color .12s; }
15
+ & .crisp-trialbanner-action:hover { background: var(--crisp-bg-raised); }
16
+
17
+ &[data-tone="warning"] .crisp-trialbanner-icon { color: var(--crisp-bg-warning); }
18
+ &[data-tone="danger"] .crisp-trialbanner-icon { color: var(--crisp-bg-danger); }
19
+ }
20
+
21
+ @media (prefers-reduced-motion: reduce) {
22
+ .crisp-trialbanner, .crisp-trialbanner * {
23
+ animation-duration: 0.01ms !important;
24
+ animation-iteration-count: 1 !important;
25
+ transition-duration: 0.01ms !important;
26
+ }
27
+ }
28
+ }
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Zag's dialog machine always advertises a description: `getContentProps()`
3
3
  * returns an `aria-describedby` pointing at the id of a description element.
4
- * crisp renders no such element — Attio's modals have a title and a body, no
4
+ * crisp renders no such element — the measured modals have a title and a body, no
5
5
  * description line — so the reference dangles, and a dangling id is not a
6
6
  * relationship a screen reader can follow.
7
7
  *
@@ -0,0 +1,2 @@
1
+ export declare const CLASS_PREFIX = "crisp-";
2
+ export declare const VAR_PREFIX = "crisp-";
@@ -1,8 +1,8 @@
1
1
  /**
2
- * Attio's measured elevation recipes, written **once**.
2
+ * The measured elevation recipes, written **once**.
3
3
  *
4
4
  * The whole product runs on two elevation tiers plus one control shadow
5
- * (measured live — see `docs/study/attio-panels.md` §4). Before this module each
5
+ * (measured live — see the panels study §4). Before this module each
6
6
  * surface carried its own copy of the string: the tier-1 stack appeared in 9
7
7
  * places, the control shadow in 12. Copies drift, and every drift was a real
8
8
  * bug — `Drawer`/`RecordPanel` grew invented directional shadows, `BulkBar`'s
@@ -19,14 +19,14 @@ export declare const elevation: {
19
19
  /**
20
20
  * Tier 2 — the modal frosted bezel (Dialog, Command). Sits on the
21
21
  * `bgOverlayFrost` 60% + `blur(15px)` surface at radius 16, wrapping an inner
22
- * card at radius 12. Attio dims nothing behind it; the blur does the work.
22
+ * card at radius 12. Nothing is dimmed behind it; the blur does the work.
23
23
  */
24
24
  readonly modal: `0 8px 28px -6px var(--${string}), 0 18px 88px -4px var(--${string}), 0 0 1px var(--${string})`;
25
25
  /**
26
26
  * The neutral/outlined control shadow — buttons, inputs, textareas, the
27
27
  * sidebar search, record-page actions.
28
28
  *
29
- * The two raw values **are** the measured Attio value (Lessons 22 and 29) and
29
+ * The two raw values **are** the measured value (Lessons 22 and 29) and
30
30
  * must stay raw. `rgba(0,0,0,0.04)` equals `tileActiveShadow`'s light value by
31
31
  * coincidence, not by meaning; tokenizing it would delete a measured layer in
32
32
  * dark mode. Only the ring is theme-aware, via `ringNeutral`.