optikos 0.2.0 → 0.4.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 (434) hide show
  1. package/CHANGELOG.md +56 -1
  2. package/dist/bind.js +1 -1
  3. package/dist/bind.js.map +4 -4
  4. package/dist/{chunk-5JEXM5S7.js → chunk-2GKIF7A6.js} +2 -2
  5. package/dist/chunk-2HNQ2XRY.js +2 -0
  6. package/dist/chunk-2HNQ2XRY.js.map +7 -0
  7. package/dist/chunk-2QMI2RRB.js +2 -0
  8. package/dist/chunk-2QMI2RRB.js.map +7 -0
  9. package/dist/{chunk-W3H7GTJY.js → chunk-2YRQULDC.js} +2 -2
  10. package/dist/{chunk-ZPPELYNJ.js → chunk-3BG75P7T.js} +2 -2
  11. package/dist/{chunk-GNU4VOOE.js → chunk-3F4MN2BU.js} +2 -2
  12. package/dist/chunk-3FCIZKIN.js +2 -0
  13. package/dist/chunk-3FCIZKIN.js.map +7 -0
  14. package/dist/{chunk-5DJTP53N.js → chunk-3FK52VQX.js} +2 -2
  15. package/dist/chunk-3QRA3XOA.js +2 -0
  16. package/dist/chunk-3QRA3XOA.js.map +7 -0
  17. package/dist/chunk-3TCITFUU.js +2 -0
  18. package/dist/chunk-3TCITFUU.js.map +7 -0
  19. package/dist/chunk-3VDLX7ET.js +2 -0
  20. package/dist/chunk-3VDLX7ET.js.map +7 -0
  21. package/dist/{chunk-3TAW4AKH.js → chunk-4AZ44KV4.js} +2 -2
  22. package/dist/{chunk-TZOQWCVH.js → chunk-4CWYF4O7.js} +2 -2
  23. package/dist/{chunk-REW4LR46.js → chunk-4OB2IM5L.js} +2 -2
  24. package/dist/{chunk-3DBEZGOY.js → chunk-4S3HRFQB.js} +2 -2
  25. package/dist/chunk-5BMG5ZBY.js +2 -0
  26. package/dist/{chunk-KLLAY2IM.js.map → chunk-5BMG5ZBY.js.map} +2 -2
  27. package/dist/chunk-5PWPAN62.js +2 -0
  28. package/dist/chunk-5PWPAN62.js.map +7 -0
  29. package/dist/chunk-5PYJ6FJK.js +2 -0
  30. package/dist/chunk-5PYJ6FJK.js.map +7 -0
  31. package/dist/{chunk-OGRFQTXA.js → chunk-643FOYQB.js} +2 -2
  32. package/dist/{chunk-JOFQJGZK.js → chunk-6BOM5KZR.js} +2 -2
  33. package/dist/chunk-6LJK4QWF.js +2 -0
  34. package/dist/chunk-6LJK4QWF.js.map +7 -0
  35. package/dist/{chunk-JK74QK3M.js → chunk-6PZPBPAD.js} +2 -2
  36. package/dist/chunk-7Y2GHQRB.js +2 -0
  37. package/dist/{chunk-YHEMA56R.js → chunk-AQ3RTHG5.js} +2 -2
  38. package/dist/{chunk-M242VYZA.js → chunk-AT7VFZRB.js} +2 -2
  39. package/dist/{chunk-ZVK4L5GK.js → chunk-BCVOUMJJ.js} +2 -2
  40. package/dist/{chunk-HOF4JGMQ.js → chunk-BIGL3ZVD.js} +2 -2
  41. package/dist/chunk-BJWREA76.js +2 -0
  42. package/dist/chunk-BJWREA76.js.map +7 -0
  43. package/dist/{chunk-ZWNQREWS.js → chunk-BQEFLPDA.js} +2 -2
  44. package/dist/{chunk-ZWNQREWS.js.map → chunk-BQEFLPDA.js.map} +2 -2
  45. package/dist/{chunk-FEHGU6EP.js → chunk-C3MWS7P2.js} +2 -2
  46. package/dist/{chunk-G2KUK6AT.js → chunk-CFGCB37K.js} +2 -2
  47. package/dist/{chunk-JI265XFO.js → chunk-CMV3F6HR.js} +2 -2
  48. package/dist/{chunk-TOLTUOZS.js → chunk-CWIE74NX.js} +2 -2
  49. package/dist/{chunk-4EZJ5FKJ.js → chunk-DIOJGTUN.js} +2 -2
  50. package/dist/chunk-DJUSVBD5.js +2 -0
  51. package/dist/chunk-DJUSVBD5.js.map +7 -0
  52. package/dist/{chunk-HXDTGP2K.js → chunk-DWA45BWR.js} +2 -2
  53. package/dist/chunk-DWTDNKXX.js +2 -0
  54. package/dist/chunk-DWTDNKXX.js.map +7 -0
  55. package/dist/chunk-ESCLDVFS.js +2 -0
  56. package/dist/{chunk-YBAYEU25.js.map → chunk-ESCLDVFS.js.map} +1 -1
  57. package/dist/chunk-EXIADWI7.js +2 -0
  58. package/dist/chunk-EXIADWI7.js.map +7 -0
  59. package/dist/{chunk-5QUY72FX.js → chunk-F4HZUAKM.js} +2 -2
  60. package/dist/chunk-FCJI2JF7.js +3 -0
  61. package/dist/chunk-FCJI2JF7.js.map +7 -0
  62. package/dist/{chunk-II6ITOA6.js → chunk-FPU53CCV.js} +2 -2
  63. package/dist/{chunk-3S24ZRPK.js → chunk-GEBAYD6N.js} +2 -2
  64. package/dist/{chunk-G2DAD3MQ.js → chunk-GEJKFE4X.js} +2 -2
  65. package/dist/chunk-GFFZTFQH.js +2 -0
  66. package/dist/chunk-GFFZTFQH.js.map +7 -0
  67. package/dist/chunk-GFJRGBQR.js +2 -0
  68. package/dist/chunk-GFJRGBQR.js.map +7 -0
  69. package/dist/chunk-GZIDE5K2.js +2 -0
  70. package/dist/chunk-GZIDE5K2.js.map +7 -0
  71. package/dist/{chunk-5Q76ACVI.js → chunk-H25XXQVH.js} +2 -2
  72. package/dist/chunk-HG7OOHGD.js +2 -0
  73. package/dist/chunk-HG7OOHGD.js.map +7 -0
  74. package/dist/{chunk-2ZUZ5HDL.js → chunk-HLS5FI55.js} +2 -2
  75. package/dist/chunk-HRW25TMU.js +2 -0
  76. package/dist/chunk-HX6TWXTX.js +2 -0
  77. package/dist/chunk-HX6TWXTX.js.map +7 -0
  78. package/dist/chunk-I5A74NMJ.js +2 -0
  79. package/dist/chunk-I5A74NMJ.js.map +7 -0
  80. package/dist/chunk-IUOEPAWG.js +2 -0
  81. package/dist/chunk-IUOEPAWG.js.map +7 -0
  82. package/dist/{chunk-IHE2MQ3W.js → chunk-J5QPFJ7M.js} +2 -2
  83. package/dist/chunk-JE56CJX2.js +2 -0
  84. package/dist/chunk-JE56CJX2.js.map +7 -0
  85. package/dist/chunk-JJLOUMCJ.js +2 -0
  86. package/dist/chunk-JJLOUMCJ.js.map +7 -0
  87. package/dist/chunk-JLKIHXZP.js +3 -0
  88. package/dist/chunk-JLKIHXZP.js.map +7 -0
  89. package/dist/{chunk-5BC72727.js → chunk-JSEI44A7.js} +2 -2
  90. package/dist/chunk-L5SQQFO7.js +2 -0
  91. package/dist/chunk-L5SQQFO7.js.map +7 -0
  92. package/dist/chunk-M2ZRKHE4.js +2 -0
  93. package/dist/chunk-M2ZRKHE4.js.map +7 -0
  94. package/dist/chunk-M7FNPRV4.js +2 -0
  95. package/dist/chunk-M7FNPRV4.js.map +7 -0
  96. package/dist/chunk-MNSDGJKA.js +3 -0
  97. package/dist/chunk-MNSDGJKA.js.map +7 -0
  98. package/dist/{chunk-DBMWS3O5.js → chunk-MQ5BYGFY.js} +2 -2
  99. package/dist/chunk-N2LS4JD6.js +2 -0
  100. package/dist/chunk-N2LS4JD6.js.map +7 -0
  101. package/dist/chunk-NJ5IFOPR.js +4 -0
  102. package/dist/{chunk-XX2MVWFS.js.map → chunk-NJ5IFOPR.js.map} +1 -1
  103. package/dist/{chunk-NXSTUFS7.js → chunk-NNR2FNHG.js} +2 -2
  104. package/dist/chunk-NQV4THNE.js +2 -0
  105. package/dist/{chunk-BXYWVRKJ.js.map → chunk-NQV4THNE.js.map} +1 -1
  106. package/dist/{chunk-XHOBNSBO.js → chunk-P4O57S6N.js} +2 -2
  107. package/dist/{chunk-MB3MU6HR.js → chunk-PGVLRMTQ.js} +2 -2
  108. package/dist/chunk-PMOXLQ72.js +2 -0
  109. package/dist/chunk-PMOXLQ72.js.map +7 -0
  110. package/dist/chunk-Q6FY4L2F.js +2 -0
  111. package/dist/chunk-Q6FY4L2F.js.map +7 -0
  112. package/dist/chunk-R32HPK7R.js +2 -0
  113. package/dist/chunk-R32HPK7R.js.map +7 -0
  114. package/dist/{chunk-Z2JBUHKA.js → chunk-RG6SHPHF.js} +2 -2
  115. package/dist/{chunk-EDUMAMK4.js → chunk-S2CMWKVB.js} +2 -2
  116. package/dist/chunk-S4QD5NID.js +2 -0
  117. package/dist/chunk-S4QD5NID.js.map +7 -0
  118. package/dist/chunk-SB4ICXBV.js +2 -0
  119. package/dist/chunk-SB4ICXBV.js.map +7 -0
  120. package/dist/{chunk-23XLG2EM.js → chunk-SEW5OCQF.js} +2 -2
  121. package/dist/chunk-SWCB2GMN.js +2 -0
  122. package/dist/chunk-SWCB2GMN.js.map +7 -0
  123. package/dist/chunk-TQPQ4UEA.js +2 -0
  124. package/dist/chunk-TQPQ4UEA.js.map +7 -0
  125. package/dist/{chunk-Z2Z52GFT.js → chunk-U5L76VVB.js} +2 -2
  126. package/dist/chunk-UDXO3KM3.js +2 -0
  127. package/dist/chunk-UDXO3KM3.js.map +7 -0
  128. package/dist/{chunk-LQRFNQ2N.js → chunk-UQRQH2JW.js} +2 -2
  129. package/dist/chunk-V5G5JECN.js +2 -0
  130. package/dist/chunk-V5G5JECN.js.map +7 -0
  131. package/dist/{chunk-JBLRAM7Z.js → chunk-XFIREDWO.js} +2 -2
  132. package/dist/chunk-XQHATUKN.js +2 -0
  133. package/dist/{chunk-LW2WRUVL.js.map → chunk-XQHATUKN.js.map} +4 -4
  134. package/dist/chunk-XR677UYD.js +2 -0
  135. package/dist/chunk-XR677UYD.js.map +7 -0
  136. package/dist/{chunk-RNN55473.js → chunk-YDX2PCVL.js} +2 -2
  137. package/dist/{chunk-RNN55473.js.map → chunk-YDX2PCVL.js.map} +1 -1
  138. package/dist/chunk-YJTUFK4P.js +2 -0
  139. package/dist/chunk-YLFSCQL3.js +2 -0
  140. package/dist/chunk-YLFSCQL3.js.map +7 -0
  141. package/dist/chunk-YXOKWCYS.js +2 -0
  142. package/dist/chunk-YXOKWCYS.js.map +7 -0
  143. package/dist/{chunk-I4SP6JTU.js → chunk-Z6L55FTN.js} +2 -2
  144. package/dist/{chunk-6VBK2I5B.js → chunk-ZSPJZ3ZH.js} +2 -2
  145. package/dist/components/avatar.js +2 -0
  146. package/dist/components/avatar.js.map +7 -0
  147. package/dist/components/badge.js +1 -1
  148. package/dist/components/breadcrumb.js +1 -1
  149. package/dist/components/button.js +1 -1
  150. package/dist/components/calendar.js +1 -1
  151. package/dist/components/carousel.js +2 -0
  152. package/dist/components/carousel.js.map +7 -0
  153. package/dist/components/cellediting.js +1 -1
  154. package/dist/components/chart.js +2 -0
  155. package/dist/components/chart.js.map +7 -0
  156. package/dist/components/chat.js +1 -1
  157. package/dist/components/checkbox.js +1 -1
  158. package/dist/components/checkboxgroup.js +1 -1
  159. package/dist/components/chip.js +1 -1
  160. package/dist/components/codeviewer.js +1 -1
  161. package/dist/components/combobox.js +1 -1
  162. package/dist/components/commandpalette.js +1 -1
  163. package/dist/components/container.js +1 -1
  164. package/dist/components/dataview.js +1 -1
  165. package/dist/components/datefield.js +1 -1
  166. package/dist/components/daterangefield.js +1 -1
  167. package/dist/components/datetimefield.js +2 -0
  168. package/dist/components/datetimefield.js.map +7 -0
  169. package/dist/components/dial.js +1 -1
  170. package/dist/components/dropdown.js +1 -1
  171. package/dist/components/fieldgroup.js +1 -1
  172. package/dist/components/fieldlist.js +1 -1
  173. package/dist/components/fieldset.js +1 -1
  174. package/dist/components/filterbuilder.js +1 -1
  175. package/dist/components/form.js +1 -1
  176. package/dist/components/formactions.js +1 -1
  177. package/dist/components/formerrors.js +1 -1
  178. package/dist/components/formsection.js +1 -1
  179. package/dist/components/grid.js +1 -1
  180. package/dist/components/gridexport.js +2 -0
  181. package/dist/components/gridexport.js.map +7 -0
  182. package/dist/components/gridstate.js +2 -0
  183. package/dist/components/gridstate.js.map +7 -0
  184. package/dist/components/grouping.js +2 -0
  185. package/dist/components/grouping.js.map +7 -0
  186. package/dist/components/icon.js +1 -1
  187. package/dist/components/image.js +2 -0
  188. package/dist/components/image.js.map +7 -0
  189. package/dist/components/imagecanvas.js +2 -0
  190. package/dist/components/imagecanvas.js.map +7 -0
  191. package/dist/components/imagefield.js +2 -0
  192. package/dist/components/imagefield.js.map +7 -0
  193. package/dist/components/inputgroup.js +1 -1
  194. package/dist/components/label.js +1 -1
  195. package/dist/components/listbox.js +1 -1
  196. package/dist/components/lookupfield.js +1 -1
  197. package/dist/components/maskfield.js +2 -0
  198. package/dist/components/maskfield.js.map +7 -0
  199. package/dist/components/menu.js +1 -1
  200. package/dist/components/messagebox.js +1 -1
  201. package/dist/components/navmenu.js +1 -1
  202. package/dist/components/numberfield.js +1 -1
  203. package/dist/components/pagination.js +1 -1
  204. package/dist/components/panel.js +1 -1
  205. package/dist/components/pickerfield.js +1 -1
  206. package/dist/components/radiogroup.js +1 -1
  207. package/dist/components/rowediting.js +2 -0
  208. package/dist/components/rowediting.js.map +7 -0
  209. package/dist/components/searchgrid.js +1 -1
  210. package/dist/components/secretfield.js +1 -1
  211. package/dist/components/select.js +1 -1
  212. package/dist/components/shortcuts.js +2 -0
  213. package/dist/components/shortcuts.js.map +7 -0
  214. package/dist/components/slider.js +1 -1
  215. package/dist/components/spacer.js +1 -1
  216. package/dist/components/spinner.js +1 -1
  217. package/dist/components/stat.js +2 -0
  218. package/dist/components/stat.js.map +7 -0
  219. package/dist/components/stepform.js +1 -1
  220. package/dist/components/stepper.js +1 -1
  221. package/dist/components/suggestfield.js +1 -1
  222. package/dist/components/table.js +1 -1
  223. package/dist/components/tabs.js +1 -1
  224. package/dist/components/textarea.js +1 -1
  225. package/dist/components/textfield.js +1 -1
  226. package/dist/components/timefield.js +2 -0
  227. package/dist/components/timefield.js.map +7 -0
  228. package/dist/components/timeline.js +2 -0
  229. package/dist/components/timeline.js.map +7 -0
  230. package/dist/components/toast.js +1 -1
  231. package/dist/components/toggle.js +1 -1
  232. package/dist/components/toolbar.js +1 -1
  233. package/dist/components/tree.js +1 -1
  234. package/dist/components/treegrid.js +2 -0
  235. package/dist/components/treegrid.js.map +7 -0
  236. package/dist/components/viewmanager.js +1 -1
  237. package/dist/components/viewport.js +1 -1
  238. package/dist/components/widget.js +1 -1
  239. package/dist/components/window.js +1 -1
  240. package/dist/core.js +1 -1
  241. package/dist/css/avatar.css +68 -0
  242. package/dist/css/base.css +9 -0
  243. package/dist/css/carousel.css +119 -0
  244. package/dist/css/chart.css +168 -0
  245. package/dist/css/core.css +36 -0
  246. package/dist/css/datetimefield.css +15 -0
  247. package/dist/css/grid.css +40 -0
  248. package/dist/css/gridexport.css +35 -0
  249. package/dist/css/grouping.css +49 -0
  250. package/dist/css/image.css +46 -0
  251. package/dist/css/imagecanvas.css +75 -0
  252. package/dist/css/imagefield.css +103 -0
  253. package/dist/css/menu.css +9 -0
  254. package/dist/css/navmenu.css +9 -7
  255. package/dist/css/rowediting.css +39 -0
  256. package/dist/css/shortcuts.css +34 -0
  257. package/dist/css/stat.css +64 -0
  258. package/dist/css/stepform.css +10 -0
  259. package/dist/css/timeline.css +140 -0
  260. package/dist/css/treegrid.css +35 -0
  261. package/dist/css/window.css +2 -2
  262. package/dist/data.js +1 -1
  263. package/dist/dev.js +2 -0
  264. package/dist/dev.js.map +7 -0
  265. package/dist/index.js +16 -5
  266. package/dist/index.js.map +4 -4
  267. package/dist/optikos.css +1131 -21
  268. package/dist/testing.js +2 -0
  269. package/dist/testing.js.map +7 -0
  270. package/dist/themes/dark.css +7 -0
  271. package/dist/types/bind/index.d.ts +1 -1
  272. package/dist/types/bind/viewmodel.d.ts +33 -0
  273. package/dist/types/components/avatar.d.ts +1 -0
  274. package/dist/types/components/base/avatar/avatar.d.ts +22 -0
  275. package/dist/types/components/base/image/image.d.ts +25 -0
  276. package/dist/types/components/base/imagecanvas/imagecanvas.d.ts +39 -0
  277. package/dist/types/components/carousel.d.ts +1 -0
  278. package/dist/types/components/chart.d.ts +1 -0
  279. package/dist/types/components/charts/chart/chart.d.ts +64 -0
  280. package/dist/types/components/charts/stat/stat.d.ts +34 -0
  281. package/dist/types/components/data/cellediting/cellediting.d.ts +3 -0
  282. package/dist/types/components/data/grid/grid.d.ts +37 -0
  283. package/dist/types/components/data/gridexport/gridexport.d.ts +29 -0
  284. package/dist/types/components/data/gridstate/gridstate.d.ts +23 -0
  285. package/dist/types/components/data/grouping/grouping.d.ts +31 -0
  286. package/dist/types/components/data/rowediting/rowediting.d.ts +13 -0
  287. package/dist/types/components/data/searchgrid/searchgrid.d.ts +9 -2
  288. package/dist/types/components/data/timeline/timeline.d.ts +60 -0
  289. package/dist/types/components/data/treegrid/treegrid.d.ts +32 -0
  290. package/dist/types/components/datetimefield.d.ts +1 -0
  291. package/dist/types/components/fields/datetimefield/datetimefield.d.ts +28 -0
  292. package/dist/types/components/fields/imagefield/imagefield.d.ts +48 -0
  293. package/dist/types/components/fields/maskfield/maskfield.d.ts +28 -0
  294. package/dist/types/components/fields/numberfield/numberfield.d.ts +9 -0
  295. package/dist/types/components/fields/pickerfield/pickerfield.d.ts +3 -0
  296. package/dist/types/components/fields/timefield/timefield.d.ts +24 -0
  297. package/dist/types/components/form/fieldlist/fieldlist.d.ts +2 -0
  298. package/dist/types/components/form/form/form.d.ts +5 -0
  299. package/dist/types/components/form/stepform/stepform.d.ts +29 -5
  300. package/dist/types/components/gridexport.d.ts +1 -0
  301. package/dist/types/components/gridstate.d.ts +1 -0
  302. package/dist/types/components/grouping.d.ts +1 -0
  303. package/dist/types/components/image.d.ts +1 -0
  304. package/dist/types/components/imagecanvas.d.ts +1 -0
  305. package/dist/types/components/imagefield.d.ts +1 -0
  306. package/dist/types/components/layout/carousel/carousel.d.ts +58 -0
  307. package/dist/types/components/maskfield.d.ts +1 -0
  308. package/dist/types/components/navigation/navmenu/navmenu.d.ts +8 -0
  309. package/dist/types/components/overlays/commandpalette/commandpalette.d.ts +2 -0
  310. package/dist/types/components/overlays/menu/menu.d.ts +6 -1
  311. package/dist/types/components/overlays/shortcuts/shortcuts.d.ts +27 -0
  312. package/dist/types/components/overlays/window/window.d.ts +14 -1
  313. package/dist/types/components/rowediting.d.ts +1 -0
  314. package/dist/types/components/shortcuts.d.ts +1 -0
  315. package/dist/types/components/stat.d.ts +1 -0
  316. package/dist/types/components/timefield.d.ts +1 -0
  317. package/dist/types/components/timeline.d.ts +1 -0
  318. package/dist/types/components/treegrid.d.ts +1 -0
  319. package/dist/types/core/component.d.ts +7 -0
  320. package/dist/types/core/container.d.ts +10 -1
  321. package/dist/types/core/dev.d.ts +2 -0
  322. package/dist/types/core/field.d.ts +4 -0
  323. package/dist/types/core/i18n.d.ts +2 -0
  324. package/dist/types/core/index.d.ts +4 -1
  325. package/dist/types/core/path.d.ts +2 -0
  326. package/dist/types/core/permission.d.ts +11 -0
  327. package/dist/types/core/state.d.ts +9 -0
  328. package/dist/types/data/column.d.ts +8 -0
  329. package/dist/types/data/index.d.ts +1 -1
  330. package/dist/types/data/model.d.ts +2 -0
  331. package/dist/types/data/store.d.ts +21 -0
  332. package/dist/types/dev/index.d.ts +2 -0
  333. package/dist/types/dev/keys.d.ts +1 -0
  334. package/dist/types/index.d.ts +17 -0
  335. package/dist/types/testing/index.d.ts +25 -0
  336. package/dist/types/themes/color.d.ts +14 -0
  337. package/dist/types/themes/contrast.d.ts +15 -0
  338. package/dist/types/themes/define.d.ts +25 -3
  339. package/dist/types/themes/index.d.ts +3 -1
  340. package/dist/types/themes/seeds.d.ts +11 -0
  341. package/dist/types/ui/ui.d.ts +6 -0
  342. package/dist/ui.js +1 -1
  343. package/package.json +9 -1
  344. package/dist/chunk-27UZFEXD.js +0 -2
  345. package/dist/chunk-27UZFEXD.js.map +0 -7
  346. package/dist/chunk-2ZRNGG2N.js +0 -2
  347. package/dist/chunk-2ZRNGG2N.js.map +0 -7
  348. package/dist/chunk-4LZZ244E.js +0 -2
  349. package/dist/chunk-4LZZ244E.js.map +0 -7
  350. package/dist/chunk-4SYIIX5A.js +0 -2
  351. package/dist/chunk-4SYIIX5A.js.map +0 -7
  352. package/dist/chunk-5YS7OD5E.js +0 -2
  353. package/dist/chunk-5YS7OD5E.js.map +0 -7
  354. package/dist/chunk-7KMIFXHZ.js +0 -2
  355. package/dist/chunk-7KMIFXHZ.js.map +0 -7
  356. package/dist/chunk-A2NKDOYN.js +0 -2
  357. package/dist/chunk-A2NKDOYN.js.map +0 -7
  358. package/dist/chunk-ATFJ7PNA.js +0 -2
  359. package/dist/chunk-ATFJ7PNA.js.map +0 -7
  360. package/dist/chunk-BXYWVRKJ.js +0 -2
  361. package/dist/chunk-CKXS375P.js +0 -2
  362. package/dist/chunk-CKXS375P.js.map +0 -7
  363. package/dist/chunk-CUN5QO4T.js +0 -2
  364. package/dist/chunk-CUN5QO4T.js.map +0 -7
  365. package/dist/chunk-ELYARUCN.js +0 -2
  366. package/dist/chunk-EV73ADN2.js +0 -2
  367. package/dist/chunk-EV73ADN2.js.map +0 -7
  368. package/dist/chunk-FHM5NUS4.js +0 -3
  369. package/dist/chunk-FHM5NUS4.js.map +0 -7
  370. package/dist/chunk-GBPLNXMP.js +0 -2
  371. package/dist/chunk-GBPLNXMP.js.map +0 -7
  372. package/dist/chunk-GZ7X34QP.js +0 -2
  373. package/dist/chunk-KCEUD232.js +0 -2
  374. package/dist/chunk-KCEUD232.js.map +0 -7
  375. package/dist/chunk-KLLAY2IM.js +0 -2
  376. package/dist/chunk-LBJSMXLV.js +0 -2
  377. package/dist/chunk-LBJSMXLV.js.map +0 -7
  378. package/dist/chunk-LW2WRUVL.js +0 -2
  379. package/dist/chunk-MW3RWBZ7.js +0 -2
  380. package/dist/chunk-MW3RWBZ7.js.map +0 -7
  381. package/dist/chunk-OEAXCCVM.js +0 -2
  382. package/dist/chunk-OEAXCCVM.js.map +0 -7
  383. package/dist/chunk-VF7BGP6L.js +0 -2
  384. package/dist/chunk-VF7BGP6L.js.map +0 -7
  385. package/dist/chunk-VU3GIDZ3.js +0 -2
  386. package/dist/chunk-VU3GIDZ3.js.map +0 -7
  387. package/dist/chunk-XX2MVWFS.js +0 -4
  388. package/dist/chunk-XYZ6VZ5T.js +0 -2
  389. package/dist/chunk-YBAYEU25.js +0 -2
  390. /package/dist/{chunk-5JEXM5S7.js.map → chunk-2GKIF7A6.js.map} +0 -0
  391. /package/dist/{chunk-W3H7GTJY.js.map → chunk-2YRQULDC.js.map} +0 -0
  392. /package/dist/{chunk-ZPPELYNJ.js.map → chunk-3BG75P7T.js.map} +0 -0
  393. /package/dist/{chunk-GNU4VOOE.js.map → chunk-3F4MN2BU.js.map} +0 -0
  394. /package/dist/{chunk-5DJTP53N.js.map → chunk-3FK52VQX.js.map} +0 -0
  395. /package/dist/{chunk-3TAW4AKH.js.map → chunk-4AZ44KV4.js.map} +0 -0
  396. /package/dist/{chunk-TZOQWCVH.js.map → chunk-4CWYF4O7.js.map} +0 -0
  397. /package/dist/{chunk-REW4LR46.js.map → chunk-4OB2IM5L.js.map} +0 -0
  398. /package/dist/{chunk-3DBEZGOY.js.map → chunk-4S3HRFQB.js.map} +0 -0
  399. /package/dist/{chunk-OGRFQTXA.js.map → chunk-643FOYQB.js.map} +0 -0
  400. /package/dist/{chunk-JOFQJGZK.js.map → chunk-6BOM5KZR.js.map} +0 -0
  401. /package/dist/{chunk-JK74QK3M.js.map → chunk-6PZPBPAD.js.map} +0 -0
  402. /package/dist/{chunk-GZ7X34QP.js.map → chunk-7Y2GHQRB.js.map} +0 -0
  403. /package/dist/{chunk-YHEMA56R.js.map → chunk-AQ3RTHG5.js.map} +0 -0
  404. /package/dist/{chunk-M242VYZA.js.map → chunk-AT7VFZRB.js.map} +0 -0
  405. /package/dist/{chunk-ZVK4L5GK.js.map → chunk-BCVOUMJJ.js.map} +0 -0
  406. /package/dist/{chunk-HOF4JGMQ.js.map → chunk-BIGL3ZVD.js.map} +0 -0
  407. /package/dist/{chunk-FEHGU6EP.js.map → chunk-C3MWS7P2.js.map} +0 -0
  408. /package/dist/{chunk-G2KUK6AT.js.map → chunk-CFGCB37K.js.map} +0 -0
  409. /package/dist/{chunk-JI265XFO.js.map → chunk-CMV3F6HR.js.map} +0 -0
  410. /package/dist/{chunk-TOLTUOZS.js.map → chunk-CWIE74NX.js.map} +0 -0
  411. /package/dist/{chunk-4EZJ5FKJ.js.map → chunk-DIOJGTUN.js.map} +0 -0
  412. /package/dist/{chunk-HXDTGP2K.js.map → chunk-DWA45BWR.js.map} +0 -0
  413. /package/dist/{chunk-5QUY72FX.js.map → chunk-F4HZUAKM.js.map} +0 -0
  414. /package/dist/{chunk-II6ITOA6.js.map → chunk-FPU53CCV.js.map} +0 -0
  415. /package/dist/{chunk-3S24ZRPK.js.map → chunk-GEBAYD6N.js.map} +0 -0
  416. /package/dist/{chunk-G2DAD3MQ.js.map → chunk-GEJKFE4X.js.map} +0 -0
  417. /package/dist/{chunk-5Q76ACVI.js.map → chunk-H25XXQVH.js.map} +0 -0
  418. /package/dist/{chunk-2ZUZ5HDL.js.map → chunk-HLS5FI55.js.map} +0 -0
  419. /package/dist/{chunk-XYZ6VZ5T.js.map → chunk-HRW25TMU.js.map} +0 -0
  420. /package/dist/{chunk-IHE2MQ3W.js.map → chunk-J5QPFJ7M.js.map} +0 -0
  421. /package/dist/{chunk-5BC72727.js.map → chunk-JSEI44A7.js.map} +0 -0
  422. /package/dist/{chunk-DBMWS3O5.js.map → chunk-MQ5BYGFY.js.map} +0 -0
  423. /package/dist/{chunk-NXSTUFS7.js.map → chunk-NNR2FNHG.js.map} +0 -0
  424. /package/dist/{chunk-XHOBNSBO.js.map → chunk-P4O57S6N.js.map} +0 -0
  425. /package/dist/{chunk-MB3MU6HR.js.map → chunk-PGVLRMTQ.js.map} +0 -0
  426. /package/dist/{chunk-Z2JBUHKA.js.map → chunk-RG6SHPHF.js.map} +0 -0
  427. /package/dist/{chunk-EDUMAMK4.js.map → chunk-S2CMWKVB.js.map} +0 -0
  428. /package/dist/{chunk-23XLG2EM.js.map → chunk-SEW5OCQF.js.map} +0 -0
  429. /package/dist/{chunk-Z2Z52GFT.js.map → chunk-U5L76VVB.js.map} +0 -0
  430. /package/dist/{chunk-LQRFNQ2N.js.map → chunk-UQRQH2JW.js.map} +0 -0
  431. /package/dist/{chunk-JBLRAM7Z.js.map → chunk-XFIREDWO.js.map} +0 -0
  432. /package/dist/{chunk-ELYARUCN.js.map → chunk-YJTUFK4P.js.map} +0 -0
  433. /package/dist/{chunk-I4SP6JTU.js.map → chunk-Z6L55FTN.js.map} +0 -0
  434. /package/dist/{chunk-6VBK2I5B.js.map → chunk-ZSPJZ3ZH.js.map} +0 -0
@@ -0,0 +1,49 @@
1
+ @layer optikos {
2
+ .op-grid__row--group {
3
+ display: flex;
4
+ background: var(--op-grid-group-bg, var(--op-color-surface-2));
5
+ font-weight: var(--op-font-weight-bold);
6
+ cursor: pointer;
7
+ }
8
+ .op-grid__row--group .op-grid__cell {
9
+ flex: none;
10
+ }
11
+ .op-grid__row--group .op-grid__cell.is-group-label {
12
+ flex: 1;
13
+ gap: var(--op-space-2);
14
+ }
15
+ .op-grid__row--group .op-grid__cell:not(.is-group-label):not(.op-grid__selcell) {
16
+ display: none;
17
+ }
18
+ .op-grid__twist {
19
+ display: inline-flex;
20
+ transition: transform var(--op-duration) var(--op-easing);
21
+ }
22
+ .op-grid__row--group[aria-expanded='false'] .op-grid__twist {
23
+ transform: rotate(-90deg);
24
+ }
25
+ .op-grid__group-count {
26
+ color: var(--op-color-fg-muted);
27
+ font-weight: normal;
28
+ }
29
+ .op-grid__row--total {
30
+ font-weight: var(--op-font-weight-bold);
31
+ background: var(--op-grid-total-bg, var(--op-color-surface-2));
32
+ cursor: default;
33
+ }
34
+ .op-grid__row--total.is-grand-total {
35
+ border-block-start: var(--op-border-width) solid var(--op-color-border-strong);
36
+ }
37
+ .op-grid__row--total:hover {
38
+ background: var(--op-grid-total-bg, var(--op-color-surface-2));
39
+ }
40
+ .op-grid__body-row.is-grouped > .op-grid__cell:first-child:not(.op-grid__selcell),
41
+ .op-grid__body-row.is-grouped > .op-grid__selcell + .op-grid__cell {
42
+ padding-inline-start: calc(var(--op-grid-cell-padding-x, var(--op-control-padding-x)) + var(--op-grid-indent, var(--op-space-4)));
43
+ }
44
+ @media (prefers-reduced-motion: reduce) {
45
+ .op-grid__twist {
46
+ transition: none;
47
+ }
48
+ }
49
+ }
@@ -0,0 +1,46 @@
1
+ @layer optikos {
2
+ :root {
3
+ --op-image-icon-size: 2em;
4
+ }
5
+ .op-image {
6
+ position: relative;
7
+ display: block;
8
+ overflow: hidden;
9
+ background: var(--op-image-bg, var(--op-color-surface-2));
10
+ color: var(--op-color-fg-muted);
11
+ min-inline-size: 0;
12
+ }
13
+ .op-image--rounded {
14
+ border-radius: var(--op-image-radius, var(--op-radius));
15
+ }
16
+ .op-image__fallback {
17
+ position: absolute;
18
+ inset: 0;
19
+ display: flex;
20
+ align-items: center;
21
+ justify-content: center;
22
+ font-size: var(--op-image-icon-size);
23
+ }
24
+ .op-image__img {
25
+ position: absolute;
26
+ inset: 0;
27
+ inline-size: 100%;
28
+ block-size: 100%;
29
+ opacity: 0;
30
+ transition: opacity var(--op-duration) var(--op-easing);
31
+ }
32
+ .op-image.has-image .op-image__img {
33
+ opacity: 1;
34
+ }
35
+ .op-image--cover .op-image__img {
36
+ object-fit: cover;
37
+ }
38
+ .op-image--contain .op-image__img {
39
+ object-fit: contain;
40
+ }
41
+ @media (prefers-reduced-motion: reduce) {
42
+ .op-image__img {
43
+ transition: none;
44
+ }
45
+ }
46
+ }
@@ -0,0 +1,75 @@
1
+ @layer optikos {
2
+ .op-imagecanvas {
3
+ position: relative;
4
+ overflow: hidden;
5
+ aspect-ratio: 4 / 3;
6
+ background: var(--op-imagecanvas-bg, var(--op-color-surface-2));
7
+ border-radius: var(--op-imagecanvas-radius, var(--op-radius));
8
+ font-family: var(--op-font-family);
9
+ }
10
+ .op-imagecanvas__stage {
11
+ position: absolute;
12
+ inset: 0;
13
+ overflow: hidden;
14
+ touch-action: none;
15
+ }
16
+ .op-imagecanvas.is-zoomed .op-imagecanvas__stage {
17
+ cursor: grab;
18
+ }
19
+ .op-imagecanvas.is-dragging .op-imagecanvas__stage {
20
+ cursor: grabbing;
21
+ }
22
+ .op-imagecanvas__stage:focus-visible {
23
+ outline: var(--op-focus-width) solid var(--op-color-focus);
24
+ outline-offset: calc(var(--op-focus-width) * -1);
25
+ }
26
+ .op-imagecanvas__img {
27
+ display: block;
28
+ inline-size: 100%;
29
+ block-size: 100%;
30
+ user-select: none;
31
+ transition: transform var(--op-duration) var(--op-easing);
32
+ }
33
+ .op-imagecanvas.is-dragging .op-imagecanvas__img {
34
+ transition: none;
35
+ }
36
+ .op-imagecanvas.is-error .op-imagecanvas__img {
37
+ visibility: hidden;
38
+ }
39
+ .op-imagecanvas__status {
40
+ position: absolute;
41
+ inset: 0;
42
+ display: grid;
43
+ place-items: center;
44
+ padding: var(--op-space-3);
45
+ color: var(--op-color-fg-muted);
46
+ font-size: var(--op-font-size-sm);
47
+ text-align: center;
48
+ pointer-events: none;
49
+ }
50
+ .op-imagecanvas__tools {
51
+ position: absolute;
52
+ inset-block-end: var(--op-space-2);
53
+ inset-inline-end: var(--op-space-2);
54
+ display: flex;
55
+ gap: var(--op-border-width);
56
+ overflow: hidden;
57
+ border-radius: var(--op-radius);
58
+ box-shadow: var(--op-shadow);
59
+ }
60
+ .op-imagecanvas__tool {
61
+ display: inline-flex;
62
+ padding: var(--op-space-2);
63
+ color: var(--op-imagecanvas-tools-fg, var(--op-color-fg));
64
+ background: var(--op-imagecanvas-tools-bg, var(--op-color-surface));
65
+ border: 0;
66
+ cursor: pointer;
67
+ }
68
+ .op-imagecanvas__tool:hover {
69
+ background: var(--op-color-primary-soft);
70
+ }
71
+ .op-imagecanvas__tool:focus-visible {
72
+ outline: var(--op-focus-width) solid var(--op-color-focus);
73
+ outline-offset: calc(var(--op-focus-width) * -1);
74
+ }
75
+ }
@@ -0,0 +1,103 @@
1
+ @layer optikos {
2
+ :root {
3
+ --op-imagefield-thumb-size: 4rem;
4
+ --op-imagefield-remove-icon: 0.875rem;
5
+ }
6
+ .op-imagefield__box {
7
+ display: flex;
8
+ flex-direction: column;
9
+ gap: var(--op-space-2);
10
+ }
11
+ .op-imagefield__picker {
12
+ display: none;
13
+ }
14
+ .op-imagefield__zone {
15
+ display: flex;
16
+ flex-direction: column;
17
+ align-items: center;
18
+ justify-content: center;
19
+ gap: var(--op-space-2);
20
+ padding: var(--op-space-4);
21
+ min-block-size: calc(var(--op-imagefield-thumb-size) * 1.5);
22
+ box-sizing: border-box;
23
+ color: var(--op-color-fg-muted);
24
+ background: var(--op-imagefield-zone-bg, var(--op-color-surface));
25
+ border: var(--op-border-width) dashed var(--op-imagefield-zone-border, var(--op-color-border-strong));
26
+ border-radius: var(--op-imagefield-radius, var(--op-radius));
27
+ font: inherit;
28
+ font-size: var(--op-font-size-sm);
29
+ text-align: center;
30
+ cursor: pointer;
31
+ }
32
+ .op-imagefield__zone[hidden] {
33
+ display: none;
34
+ }
35
+ .op-imagefield__zone:hover:not(:disabled),
36
+ .op-imagefield.is-dragover .op-imagefield__zone {
37
+ background: var(--op-imagefield-zone-hover-bg, var(--op-color-primary-soft));
38
+ border-color: var(--op-color-primary);
39
+ }
40
+ .op-imagefield__zone:focus-visible,
41
+ .op-imagefield__remove:focus-visible {
42
+ outline: var(--op-focus-width) solid var(--op-color-focus);
43
+ outline-offset: var(--op-focus-offset);
44
+ }
45
+ .op-imagefield__zone:disabled {
46
+ cursor: not-allowed;
47
+ opacity: 0.6;
48
+ }
49
+ .op-imagefield.is-invalid .op-imagefield__zone {
50
+ border-color: var(--op-color-danger);
51
+ }
52
+ .op-imagefield__list {
53
+ display: flex;
54
+ flex-wrap: wrap;
55
+ gap: var(--op-space-2);
56
+ }
57
+ .op-imagefield__list:empty {
58
+ display: none;
59
+ }
60
+ .op-imagefield__item {
61
+ position: relative;
62
+ inline-size: var(--op-imagefield-thumb-size);
63
+ }
64
+ .op-imagefield__img {
65
+ display: block;
66
+ inline-size: 100%;
67
+ aspect-ratio: 1;
68
+ object-fit: cover;
69
+ background: var(--op-color-surface-2, var(--op-color-bg));
70
+ border: var(--op-border-width) solid var(--op-color-border);
71
+ border-radius: var(--op-imagefield-radius, var(--op-radius));
72
+ }
73
+ .op-imagefield__name {
74
+ display: block;
75
+ overflow: hidden;
76
+ color: var(--op-color-fg-muted);
77
+ font-size: var(--op-font-size-sm);
78
+ text-overflow: ellipsis;
79
+ white-space: nowrap;
80
+ }
81
+ .op-imagefield__remove {
82
+ position: absolute;
83
+ inset-block-start: var(--op-space-1);
84
+ inset-inline-end: var(--op-space-1);
85
+ display: inline-flex;
86
+ padding: var(--op-space-1);
87
+ color: var(--op-color-fg);
88
+ background: var(--op-color-surface);
89
+ border: var(--op-border-width) solid var(--op-color-border-strong);
90
+ border-radius: 50%;
91
+ cursor: pointer;
92
+ }
93
+ .op-imagefield__remove[hidden] {
94
+ display: none;
95
+ }
96
+ .op-imagefield__remove:hover:not(:disabled) {
97
+ color: var(--op-color-danger);
98
+ }
99
+ .op-imagefield__remove .op-icon {
100
+ inline-size: var(--op-imagefield-remove-icon);
101
+ block-size: var(--op-imagefield-remove-icon);
102
+ }
103
+ }
package/dist/css/menu.css CHANGED
@@ -89,4 +89,13 @@
89
89
  letter-spacing: var(--op-menu-group-tracking);
90
90
  text-transform: uppercase;
91
91
  }
92
+ .op-menu__badge {
93
+ min-inline-size: var(--op-space-4);
94
+ padding: 0 var(--op-space-1);
95
+ color: var(--op-menu-badge-fg, var(--op-color-primary-fg));
96
+ background: var(--op-menu-badge-bg, var(--op-color-primary));
97
+ border-radius: var(--op-radius-pill);
98
+ font-size: var(--op-font-size-sm);
99
+ text-align: center;
100
+ }
92
101
  }
@@ -95,19 +95,21 @@
95
95
  inline-size: var(--op-navmenu-rail-width);
96
96
  }
97
97
  .op-navmenu.is-rail .op-navmenu__text,
98
- .op-navmenu.is-rail .op-navmenu__chevron,
99
- .op-navmenu.is-rail .op-navmenu__item.is-group .op-navmenu__icon {
98
+ .op-navmenu.is-rail .op-navmenu__chevron {
100
99
  display: none;
101
100
  }
102
101
  .op-navmenu.is-rail .op-navmenu__item {
103
102
  justify-content: center;
104
103
  padding-inline: 0;
105
104
  }
106
- .op-navmenu.is-rail .op-navmenu__item.is-group {
107
- min-block-size: var(--op-space-3);
108
- border-block-start: var(--op-border-width) solid var(--op-color-border);
109
- border-radius: 0;
110
- pointer-events: none;
105
+ /* in the rail a group is an icon that opens a floating menu; it lights up when the active page is inside */
106
+ .op-navmenu.is-rail .op-navmenu__item.is-group .op-navmenu__icon {
107
+ font-weight: var(--op-font-weight-bold);
108
+ }
109
+ .op-navmenu.is-rail .op-navmenu__item.has-active,
110
+ .op-navmenu.is-rail .op-navmenu__item[aria-expanded='true'] {
111
+ color: var(--op-navmenu-active-fg, var(--op-color-primary));
112
+ background: var(--op-navmenu-active-bg, var(--op-color-primary-soft));
111
113
  }
112
114
  .op-navmenu.is-rail .op-navmenu__badge {
113
115
  display: none;
@@ -0,0 +1,39 @@
1
+ @layer optikos {
2
+ .op-grid__body-row.is-row-editing {
3
+ z-index: 2;
4
+ background: var(--op-grid-row-selected-bg, var(--op-color-selected));
5
+ }
6
+ .op-grid__rowbar {
7
+ position: absolute;
8
+ z-index: 1;
9
+ inset-block-start: 100%;
10
+ inset-inline-start: var(--op-grid-scroll-x);
11
+ display: flex;
12
+ gap: var(--op-space-2);
13
+ padding: var(--op-space-2);
14
+ background: var(--op-color-surface);
15
+ border: var(--op-border-width) solid var(--op-color-border-strong);
16
+ border-block-start: 0;
17
+ border-end-start-radius: var(--op-radius);
18
+ border-end-end-radius: var(--op-radius);
19
+ box-shadow: var(--op-shadow);
20
+ }
21
+ .op-grid__rowbtn {
22
+ padding: var(--op-space-1) var(--op-space-3);
23
+ color: var(--op-color-fg);
24
+ background: var(--op-color-surface);
25
+ border: var(--op-border-width) solid var(--op-color-border-strong);
26
+ border-radius: var(--op-radius);
27
+ font: inherit;
28
+ cursor: pointer;
29
+ }
30
+ .op-grid__rowbtn.is-primary {
31
+ color: var(--op-color-primary-fg);
32
+ background: var(--op-color-primary);
33
+ border-color: var(--op-color-primary);
34
+ }
35
+ .op-grid__rowbtn:focus-visible {
36
+ outline: var(--op-focus-width) solid var(--op-color-focus);
37
+ outline-offset: var(--op-focus-offset);
38
+ }
39
+ }
@@ -0,0 +1,34 @@
1
+ @layer optikos {
2
+ .op-shortcuts {
3
+ display: flex;
4
+ flex-direction: column;
5
+ gap: var(--op-space-1);
6
+ padding: var(--op-space-3) var(--op-space-4);
7
+ font-family: var(--op-font-family);
8
+ }
9
+ .op-shortcuts__group {
10
+ margin: var(--op-space-3) 0 var(--op-space-1);
11
+ color: var(--op-color-fg-muted);
12
+ font-size: var(--op-font-size-sm);
13
+ font-weight: 600;
14
+ text-transform: uppercase;
15
+ }
16
+ .op-shortcuts__group:first-child {
17
+ margin-block-start: 0;
18
+ }
19
+ .op-shortcuts__row {
20
+ display: flex;
21
+ justify-content: space-between;
22
+ gap: var(--op-space-4);
23
+ padding-block: var(--op-space-1);
24
+ }
25
+ .op-shortcuts__kbd {
26
+ padding: 0 var(--op-space-2);
27
+ background: var(--op-color-surface-2);
28
+ border: var(--op-border-width) solid var(--op-color-border);
29
+ border-radius: var(--op-radius);
30
+ font-family: inherit;
31
+ font-size: var(--op-font-size-sm);
32
+ white-space: nowrap;
33
+ }
34
+ }
@@ -0,0 +1,64 @@
1
+ @layer optikos {
2
+ :root {
3
+ --op-stat-value-size: 1.75rem;
4
+ --op-stat-spark-width: 6rem;
5
+ }
6
+ .op-stat {
7
+ position: relative;
8
+ display: flex;
9
+ flex-direction: column;
10
+ gap: var(--op-space-1);
11
+ padding: var(--op-space-4);
12
+ background: var(--op-stat-bg, var(--op-color-surface));
13
+ color: var(--op-color-fg);
14
+ border: var(--op-border-width) solid var(--op-color-border);
15
+ border-radius: var(--op-stat-radius, var(--op-radius));
16
+ font-family: var(--op-font-family);
17
+ min-inline-size: 0;
18
+ }
19
+ .op-stat__label {
20
+ display: flex;
21
+ align-items: center;
22
+ gap: var(--op-space-2);
23
+ color: var(--op-color-fg-muted);
24
+ font-size: var(--op-font-size-sm);
25
+ }
26
+ .op-stat__row {
27
+ display: flex;
28
+ align-items: baseline;
29
+ flex-wrap: wrap;
30
+ gap: var(--op-space-2);
31
+ }
32
+ .op-stat__value {
33
+ font-size: var(--op-stat-value-size);
34
+ font-weight: 600;
35
+ line-height: 1.1;
36
+ font-variant-numeric: tabular-nums;
37
+ }
38
+ .op-stat__delta {
39
+ display: inline-flex;
40
+ align-items: center;
41
+ gap: var(--op-space-1);
42
+ font-size: var(--op-font-size-sm);
43
+ font-weight: 600;
44
+ }
45
+ .op-stat__delta.is-good {
46
+ color: var(--op-color-success);
47
+ }
48
+ .op-stat__delta.is-bad {
49
+ color: var(--op-color-danger);
50
+ }
51
+ .op-stat__delta.is-flat {
52
+ color: var(--op-color-fg-muted);
53
+ }
54
+ .op-stat__caption {
55
+ color: var(--op-color-fg-muted);
56
+ font-size: var(--op-font-size-sm);
57
+ }
58
+ .op-stat__spark {
59
+ position: absolute;
60
+ inset-block-end: var(--op-space-3);
61
+ inset-inline-end: var(--op-space-4);
62
+ inline-size: var(--op-stat-spark-width);
63
+ }
64
+ }
@@ -42,5 +42,15 @@
42
42
  .op-stepform__review-list dd {
43
43
  margin: 0;
44
44
  overflow-wrap: anywhere;
45
+ white-space: pre-line; /* FieldList: one line per row */
46
+ }
47
+ /* a step's general message (its validate returned a string) */
48
+ .op-stepform__note {
49
+ margin-block-end: var(--op-space-3);
50
+ padding: var(--op-space-2) var(--op-space-3);
51
+ color: var(--op-color-danger);
52
+ background: var(--op-color-danger-soft);
53
+ border-radius: var(--op-radius);
54
+ font-size: var(--op-font-size-sm);
45
55
  }
46
56
  }
@@ -0,0 +1,140 @@
1
+ @layer optikos {
2
+ :root {
3
+ --op-timeline-marker: 0.875rem;
4
+ --op-timeline-when-width: 8rem;
5
+ --op-timeline-lane-width: 8rem;
6
+ --op-timeline-bar-height: 1.75rem;
7
+ --op-timeline-line: 2px;
8
+ }
9
+ .op-timeline {
10
+ font-family: var(--op-font-family);
11
+ color: var(--op-color-fg);
12
+ min-inline-size: 0;
13
+ }
14
+ .op-timeline--list {
15
+ display: flex;
16
+ flex-direction: column;
17
+ }
18
+ .op-timeline__item {
19
+ --op-timeline-c: var(--op-color-border-strong);
20
+ display: grid;
21
+ grid-template-columns: var(--op-timeline-when-width) var(--op-timeline-marker) 1fr;
22
+ gap: var(--op-space-3);
23
+ padding-block-end: var(--op-space-4);
24
+ border-radius: var(--op-radius);
25
+ }
26
+ .op-timeline__item:focus-visible,
27
+ .op-timeline__bar:focus-visible {
28
+ outline: var(--op-focus-width) solid var(--op-color-focus);
29
+ outline-offset: var(--op-focus-offset);
30
+ }
31
+ .op-timeline__item.is-success { --op-timeline-c: var(--op-color-success); }
32
+ .op-timeline__item.is-warning { --op-timeline-c: var(--op-color-warning); }
33
+ .op-timeline__item.is-danger { --op-timeline-c: var(--op-color-danger); }
34
+ .op-timeline__item.is-info { --op-timeline-c: var(--op-color-info); }
35
+ .op-timeline__when {
36
+ color: var(--op-color-fg-muted);
37
+ font-size: var(--op-font-size-sm);
38
+ text-align: end;
39
+ padding-block-start: var(--op-space-1);
40
+ }
41
+ .op-timeline__marker {
42
+ position: relative;
43
+ display: flex;
44
+ align-items: center;
45
+ justify-content: center;
46
+ inline-size: var(--op-timeline-marker);
47
+ block-size: var(--op-timeline-marker);
48
+ margin-block-start: var(--op-space-1);
49
+ border-radius: 50%;
50
+ background: var(--op-timeline-c);
51
+ color: var(--op-color-surface);
52
+ font-size: var(--op-font-size-sm);
53
+ }
54
+ .op-timeline__marker::after {
55
+ content: '';
56
+ position: absolute;
57
+ inset-block-start: 100%;
58
+ inset-inline-start: calc(50% - var(--op-timeline-line) / 2);
59
+ block-size: calc(100% + var(--op-space-5));
60
+ inline-size: var(--op-timeline-line);
61
+ background: var(--op-color-border);
62
+ }
63
+ .op-timeline__item:last-child .op-timeline__marker::after {
64
+ display: none;
65
+ }
66
+ .op-timeline__title {
67
+ font-weight: 600;
68
+ }
69
+ .op-timeline__text {
70
+ color: var(--op-color-fg-muted);
71
+ font-size: var(--op-font-size-sm);
72
+ }
73
+
74
+ .op-timeline__axis,
75
+ .op-timeline__lane,
76
+ .op-timeline__nowrow {
77
+ display: grid;
78
+ grid-template-columns: var(--op-timeline-lane-width) 1fr;
79
+ gap: var(--op-space-2);
80
+ align-items: center;
81
+ }
82
+ .op-timeline__lane {
83
+ border-block-start: var(--op-border-width) solid var(--op-color-border);
84
+ padding-block: var(--op-space-1);
85
+ }
86
+ .op-timeline__lane-name {
87
+ font-size: var(--op-font-size-sm);
88
+ overflow: hidden;
89
+ text-overflow: ellipsis;
90
+ white-space: nowrap;
91
+ }
92
+ .op-timeline__track {
93
+ position: relative;
94
+ block-size: var(--op-timeline-bar-height);
95
+ }
96
+ .op-timeline__axis .op-timeline__track {
97
+ block-size: auto;
98
+ min-block-size: var(--op-space-4);
99
+ }
100
+ .op-timeline__tick {
101
+ position: absolute;
102
+ color: var(--op-color-fg-muted);
103
+ font-size: var(--op-font-size-sm);
104
+ white-space: nowrap;
105
+ }
106
+ .op-timeline__bar {
107
+ --op-timeline-c: var(--op-color-primary);
108
+ position: absolute;
109
+ inset-block: 0;
110
+ display: flex;
111
+ align-items: center;
112
+ gap: var(--op-space-1);
113
+ padding-inline: var(--op-space-2);
114
+ overflow: hidden;
115
+ background: var(--op-timeline-c);
116
+ color: var(--op-color-primary-fg);
117
+ border-radius: var(--op-radius);
118
+ font-size: var(--op-font-size-sm);
119
+ cursor: pointer;
120
+ }
121
+ .op-timeline__bar.is-success { --op-timeline-c: var(--op-color-success); color: var(--op-color-surface); }
122
+ .op-timeline__bar.is-warning { --op-timeline-c: var(--op-color-warning); color: var(--op-color-surface); }
123
+ .op-timeline__bar.is-danger { --op-timeline-c: var(--op-color-danger); color: var(--op-color-danger-fg); }
124
+ .op-timeline__bar.is-info { --op-timeline-c: var(--op-color-info); color: var(--op-color-surface); }
125
+ .op-timeline__bar-text {
126
+ overflow: hidden;
127
+ text-overflow: ellipsis;
128
+ white-space: nowrap;
129
+ }
130
+ .op-timeline__nowrow {
131
+ block-size: 0;
132
+ }
133
+ .op-timeline__now {
134
+ position: absolute;
135
+ inset-block: calc(-1 * var(--op-space-6)) 0;
136
+ inline-size: var(--op-timeline-line);
137
+ background: var(--op-color-danger);
138
+ pointer-events: none;
139
+ }
140
+ }
@@ -0,0 +1,35 @@
1
+ @layer optikos {
2
+ :root {
3
+ --op-grid-indent: 1.25rem;
4
+ --op-grid-expander-size: 1.25rem;
5
+ }
6
+ .op-grid--tree .op-grid__cell:has(> .op-grid__expander) {
7
+ padding-inline-start: calc(var(--op-grid-cell-padding-x, var(--op-control-padding-x)) + var(--_depth, 0) * var(--op-grid-indent));
8
+ }
9
+ .op-grid__expander {
10
+ display: inline-flex;
11
+ flex: none;
12
+ align-items: center;
13
+ justify-content: center;
14
+ inline-size: var(--op-grid-expander-size);
15
+ block-size: var(--op-grid-expander-size);
16
+ margin-inline-end: var(--op-space-1);
17
+ color: var(--op-color-fg-muted);
18
+ cursor: pointer;
19
+ transition: transform var(--op-duration) var(--op-easing);
20
+ }
21
+ .op-grid__body-row[aria-expanded='false'] .op-grid__expander:not(.is-leaf) {
22
+ transform: rotate(-90deg);
23
+ }
24
+ .op-grid__expander.is-leaf {
25
+ cursor: default;
26
+ }
27
+ .op-grid__expander.is-loading {
28
+ cursor: progress;
29
+ }
30
+ @media (prefers-reduced-motion: reduce) {
31
+ .op-grid__expander {
32
+ transition: none;
33
+ }
34
+ }
35
+ }
@@ -1,6 +1,7 @@
1
1
  @layer optikos {
2
2
  :root {
3
3
  --op-window-width: 28rem;
4
+ --op-window-max-height: 85dvh;
4
5
  }
5
6
  .op-window-backdrop {
6
7
  position: fixed;
@@ -15,8 +16,7 @@
15
16
  position: fixed;
16
17
  inline-size: var(--op-window-width);
17
18
  max-inline-size: calc(100vw - var(--op-space-4));
18
- max-block-size: calc(100vh - var(--op-space-4));
19
- max-block-size: calc(100dvh - var(--op-space-4));
19
+ max-block-size: var(--op-window-max-height);
20
20
  background: var(--op-window-bg, var(--op-color-surface));
21
21
  border-radius: var(--op-window-radius, var(--op-radius-lg));
22
22
  box-shadow: var(--op-window-shadow, var(--op-shadow-lg));
package/dist/data.js CHANGED
@@ -1,2 +1,2 @@
1
- import{a as d,b as e}from"./chunk-X2ASKUFD.js";import{a as f,b as g,c as h}from"./chunk-LW2WRUVL.js";import{a,b,c}from"./chunk-OEAXCCVM.js";import"./chunk-MW3RWBZ7.js";import"./chunk-4C666HHU.js";export{d as MemoryProxy,a as Model,e as RestProxy,c as Store,h as cellContent,g as format,b as matchFilter,f as registerFormat};
1
+ import{a as d,b as e}from"./chunk-X2ASKUFD.js";import{a as h}from"./chunk-2HNQ2XRY.js";import{a as f,b as g}from"./chunk-XQHATUKN.js";import{a,b,c}from"./chunk-L5SQQFO7.js";import"./chunk-3VDLX7ET.js";import"./chunk-S4QD5NID.js";import"./chunk-4C666HHU.js";export{d as MemoryProxy,a as Model,e as RestProxy,c as Store,h as cellContent,g as format,b as matchFilter,f as registerFormat};
2
2
  //# sourceMappingURL=data.js.map