@jackuait/blok 0.10.0-beta.4 → 0.10.0-beta.6

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 (355) hide show
  1. package/dist/blok.mjs +3 -3
  2. package/dist/chunks/{blok-D_0qAdUd.mjs → blok-BdlR_lX6.mjs} +2073 -2034
  3. package/dist/chunks/chunk-Byubey_H.mjs +20 -0
  4. package/dist/chunks/{constants-DxSXr7kd.mjs → constants-Cp8O0UfP.mjs} +524 -550
  5. package/dist/chunks/default-DIfXCS2E.mjs +4 -0
  6. package/dist/chunks/{i18next-G6FKbZqA.mjs → i18next-KNC_XV5x.mjs} +1 -1
  7. package/dist/chunks/{i18next-loader-CwNimni3.mjs → i18next-loader-oDO9ZKUV.mjs} +2 -2
  8. package/dist/chunks/katex-NjLaA6AJ.mjs +22026 -0
  9. package/dist/chunks/{lightweight-i18n-DWCdzAw0.mjs → lightweight-i18n-DTySD6f6.mjs} +16 -18
  10. package/dist/chunks/mdast-util-math-yS0EygZV.mjs +151 -0
  11. package/dist/{messages-DVQNjdPk.mjs → chunks/messages-5ArOv8cj.mjs} +3 -17
  12. package/dist/chunks/{messages-Czny5pPT2.mjs → messages-876bKyUj2.mjs} +3 -17
  13. package/dist/{messages-JhoVMjfX2.mjs → chunks/messages-9l49jauY.mjs} +3 -17
  14. package/dist/{messages-D3cAcyzj.mjs → chunks/messages-B5aAzExz.mjs} +3 -17
  15. package/dist/chunks/{messages-CmrMwBv3.mjs → messages-B5fKJXd6.mjs} +3 -17
  16. package/dist/chunks/{messages-DBpXyvRe2.mjs → messages-B9N__q552.mjs} +3 -17
  17. package/dist/{messages-CVcQD-9u.mjs → chunks/messages-BAP2OAQk.mjs} +3 -17
  18. package/dist/chunks/{messages-R2W_rGOo2.mjs → messages-BDXl53cy2.mjs} +3 -17
  19. package/dist/{messages-CM5fsPo02.mjs → chunks/messages-BGCQCeWd.mjs} +3 -17
  20. package/dist/{messages-DtrSrdfE2.mjs → chunks/messages-BHhbHLoq.mjs} +3 -17
  21. package/dist/{messages-C6Y4Jv2N.mjs → chunks/messages-BMq9k_lI.mjs} +3 -17
  22. package/dist/{messages-DjJQoYvP2.mjs → chunks/messages-BXSXk3oS2.mjs} +3 -17
  23. package/dist/{messages-pgPcitDH.mjs → chunks/messages-BXn9Vzbx2.mjs} +3 -17
  24. package/dist/chunks/{messages-DR09nkcZ.mjs → messages-BaoJwsEZ.mjs} +3 -17
  25. package/dist/{messages-CdlsTFB1.mjs → chunks/messages-BbfLRqLh2.mjs} +3 -17
  26. package/dist/{messages-BvgTQLf72.mjs → chunks/messages-BhcYsC_M2.mjs} +3 -17
  27. package/dist/chunks/{messages-Cdx4QMR1.mjs → messages-BlO_37l_.mjs} +3 -17
  28. package/dist/{messages--S8_taOd2.mjs → chunks/messages-BlcRm2I3.mjs} +3 -17
  29. package/dist/{messages-DbxbxUiK2.mjs → chunks/messages-Btr121zI2.mjs} +3 -17
  30. package/dist/chunks/{messages-p4byLfvR.mjs → messages-BxBID_0B.mjs} +3 -17
  31. package/dist/chunks/{messages-Cs9XBt4T.mjs → messages-ByAqzAhB.mjs} +3 -17
  32. package/dist/chunks/{messages-JQKFJo7C.mjs → messages-C-jA6Rf7.mjs} +3 -17
  33. package/dist/{messages-BAcH6PtT2.mjs → chunks/messages-C5aCWL7B.mjs} +3 -17
  34. package/dist/{messages-BCG_evLg.mjs → chunks/messages-CF_PfacZ.mjs} +3 -17
  35. package/dist/{messages-B-4fku2H2.mjs → chunks/messages-CKRJDX0K2.mjs} +3 -17
  36. package/dist/chunks/{messages-CrMfiGu5.mjs → messages-CL3mCbi6.mjs} +3 -17
  37. package/dist/chunks/{messages-BnznaKEP2.mjs → messages-CNEJxD8q2.mjs} +3 -17
  38. package/dist/{messages-hTpeKUaW.mjs → chunks/messages-CZ5Sbf8U.mjs} +3 -17
  39. package/dist/chunks/{messages-CljStrYi.mjs → messages-CcyIKgGU.mjs} +3 -17
  40. package/dist/{messages-Dcyrzdxa2.mjs → chunks/messages-CdzF0Hvl.mjs} +3 -17
  41. package/dist/chunks/{messages-IDEUsFhQ2.mjs → messages-CgedvWCf.mjs} +3 -17
  42. package/dist/chunks/{messages-CmXADeab2.mjs → messages-CjVPwkVy.mjs} +3 -17
  43. package/dist/chunks/{messages-wLSVQbsA2.mjs → messages-CnQydQJd2.mjs} +3 -17
  44. package/dist/chunks/{messages-BS1nOvZ-.mjs → messages-CqgEz7C5.mjs} +3 -17
  45. package/dist/{messages-BCuTVHBV.mjs → chunks/messages-CvlMT1e62.mjs} +3 -17
  46. package/dist/{messages-CYX48nfg.mjs → chunks/messages-CyxDkx8a.mjs} +3 -17
  47. package/dist/chunks/{messages-ClRHDxzh.mjs → messages-D7n_wJK7.mjs} +3 -17
  48. package/dist/chunks/{messages-Dplnp19q.mjs → messages-D8-N0FmU.mjs} +3 -17
  49. package/dist/chunks/{messages-DAVsuDWh2.mjs → messages-D8dKkyII2.mjs} +3 -17
  50. package/dist/chunks/{messages-B3s2vra72.mjs → messages-DGD6BiGd.mjs} +3 -17
  51. package/dist/chunks/{messages-DHCVA7XQ.mjs → messages-DJO0ERQT.mjs} +3 -17
  52. package/dist/chunks/{messages-B7MIRzCa2.mjs → messages-DMyRdafk2.mjs} +3 -17
  53. package/dist/chunks/{messages-C-b6tPad2.mjs → messages-DN-194c32.mjs} +3 -17
  54. package/dist/chunks/{messages-BW_7lfqG2.mjs → messages-DQ5ng0_t2.mjs} +3 -17
  55. package/dist/{messages-DUBHHfEt.mjs → chunks/messages-DRv4g-IA.mjs} +3 -17
  56. package/dist/chunks/{messages-xfjdrZmx.mjs → messages-DSO2U-ul.mjs} +3 -17
  57. package/dist/{messages-CgzbJ8_l2.mjs → chunks/messages-DUGEqDEG.mjs} +3 -17
  58. package/dist/{messages-DA-o8X3A.mjs → chunks/messages-DVKifYlq.mjs} +3 -17
  59. package/dist/{messages-tsHpMdDT2.mjs → chunks/messages-DWD0ry9x.mjs} +3 -17
  60. package/dist/{messages-Dddxv8-f2.mjs → chunks/messages-DYizZHT2.mjs} +3 -17
  61. package/dist/chunks/{messages-Csvm4mtA.mjs → messages-DZwCufSb.mjs} +3 -17
  62. package/dist/{messages-BJ7BuFZi.mjs → chunks/messages-DdmWzF5M.mjs} +3 -17
  63. package/dist/{messages-Bo_FUvVH.mjs → chunks/messages-DgEGJECT.mjs} +3 -17
  64. package/dist/chunks/{messages-Bpda_3PM2.mjs → messages-Dgng6KN8.mjs} +3 -17
  65. package/dist/{messages-CBzd_x7H.mjs → chunks/messages-DkTxBa1V.mjs} +3 -17
  66. package/dist/{messages-Bio7KYsr2.mjs → chunks/messages-DnJHflSh.mjs} +3 -17
  67. package/dist/{messages-CjmSrt1D.mjs → chunks/messages-DopbvJlg.mjs} +3 -17
  68. package/dist/{messages-DIRha_gg2.mjs → chunks/messages-Dux1S0-D2.mjs} +3 -17
  69. package/dist/chunks/{messages-1Raf1IK82.mjs → messages-Dw2rmKMi2.mjs} +3 -17
  70. package/dist/chunks/{messages-D5IgUbBD2.mjs → messages-Dz3UhEco2.mjs} +3 -17
  71. package/dist/{messages-C6OJvnJg2.mjs → chunks/messages-FYl9woii2.mjs} +3 -17
  72. package/dist/{messages-BBvDbp62.mjs → chunks/messages-Jps5Tc77.mjs} +3 -17
  73. package/dist/chunks/{messages-Dfpi8pDY.mjs → messages-NJsvFwJj.mjs} +3 -17
  74. package/dist/chunks/{messages-DPykxECP2.mjs → messages-SSDr5fGF2.mjs} +3 -17
  75. package/dist/{messages-BXI3qIos.mjs → chunks/messages-bmwto4UV.mjs} +3 -17
  76. package/dist/{messages-CBdQ3XP9.mjs → chunks/messages-vN4T4r67.mjs} +3 -17
  77. package/dist/{messages-tK67CBqn.mjs → chunks/messages-yszqJukE.mjs} +3 -17
  78. package/dist/chunks/micromark-extension-math-CCEGWpdz.mjs +169 -0
  79. package/dist/chunks/micromark-factory-space-WwmyBO_J.mjs +36 -0
  80. package/dist/chunks/{notifier-Butv4Dvo.mjs → notifier-BOwxj_Ok.mjs} +1 -1
  81. package/dist/chunks/{objectSpread2-BY4mgzrQ.mjs → objectSpread2-CWwMYL_U.mjs} +1 -1
  82. package/dist/chunks/{tools-DVZ3zU40.mjs → tools-DGOsJbHH.mjs} +1816 -2916
  83. package/dist/full.mjs +14 -14
  84. package/dist/locales.mjs +82 -84
  85. package/dist/markdown.mjs +3962 -0
  86. package/dist/{messages-DqyqEw1_.mjs → messages--cUQf9JX.mjs} +3 -17
  87. package/dist/{messages-BtxaN-xx.mjs → messages-12_eyAo-.mjs} +3 -17
  88. package/dist/{chunks/messages-LxumrNue2.mjs → messages-B3Yhiycb2.mjs} +3 -17
  89. package/dist/{chunks/messages-Cqc-6rfh2.mjs → messages-B4lhNMKm2.mjs} +3 -17
  90. package/dist/{chunks/messages-B0ffBqzr.mjs → messages-BOE2mzCj2.mjs} +3 -17
  91. package/dist/{chunks/messages-BaPZuLjN.mjs → messages-BPL7riv-.mjs} +3 -17
  92. package/dist/{messages-DD5pW0zJ.mjs → messages-BYQ769S5.mjs} +3 -17
  93. package/dist/{chunks/messages-C11byid72.mjs → messages-B_sKqaeK.mjs} +3 -17
  94. package/dist/{messages-BmNaAyKS.mjs → messages-Bdk4ocMI.mjs} +3 -17
  95. package/dist/{chunks/messages-6mikOS4D2.mjs → messages-BeI2HORe2.mjs} +3 -17
  96. package/dist/{chunks/messages-u2yxkNTE2.mjs → messages-Bug6Du35.mjs} +3 -17
  97. package/dist/{messages-eTourT12.mjs → messages-C2veeQpU.mjs} +3 -17
  98. package/dist/{messages-BokEflKa.mjs → messages-C5Uufygq.mjs} +3 -17
  99. package/dist/{chunks/messages-BPog17132.mjs → messages-C8f1I5EQ2.mjs} +3 -17
  100. package/dist/{chunks/messages-ID1PHnMv.mjs → messages-CBPiFbEf2.mjs} +3 -17
  101. package/dist/{messages-DZEcrbmH.mjs → messages-CByBLxWk.mjs} +3 -17
  102. package/dist/{chunks/messages-BgVEGd4c.mjs → messages-CD8K1g_t2.mjs} +3 -17
  103. package/dist/{messages-Dkg99bfr2.mjs → messages-CEEzfqMO2.mjs} +3 -17
  104. package/dist/{messages-DV9e1DW7.mjs → messages-CNNcKuGH.mjs} +3 -17
  105. package/dist/{messages-C30Vz-UZ2.mjs → messages-CSl0Wla62.mjs} +3 -17
  106. package/dist/{messages-fLi0P2dP.mjs → messages-CUzBNjnc.mjs} +3 -17
  107. package/dist/{chunks/messages-DJA6fb_P2.mjs → messages-CWEL1WDy2.mjs} +3 -17
  108. package/dist/{messages-BcFQFcJ92.mjs → messages-C_HmWyXc2.mjs} +3 -17
  109. package/dist/{chunks/messages-CpzO7KRA.mjs → messages-Cb3wXGnc.mjs} +3 -17
  110. package/dist/{messages-C5XPUD9T2.mjs → messages-Cd23UgLV2.mjs} +3 -17
  111. package/dist/{chunks/messages-DSjXen8E.mjs → messages-Cg1CF4pw.mjs} +3 -17
  112. package/dist/{messages-i4S6q64n2.mjs → messages-CgEDVri-2.mjs} +3 -17
  113. package/dist/{messages-CHJ5SOZI.mjs → messages-ChTWmxS8.mjs} +3 -17
  114. package/dist/{messages-BVKZK-3t.mjs → messages-Cho2VTAX.mjs} +3 -17
  115. package/dist/{chunks/messages-d0Ky6QjR.mjs → messages-CkySRhtd2.mjs} +3 -17
  116. package/dist/{chunks/messages-C1OqT_nL.mjs → messages-Clsh86WQ.mjs} +3 -17
  117. package/dist/{chunks/messages-BrFl5773.mjs → messages-CsiGzUSP2.mjs} +3 -17
  118. package/dist/{messages-BKjqW08U.mjs → messages-Cv-DKlZd.mjs} +3 -17
  119. package/dist/{messages-BGsDZTQp2.mjs → messages-CvvbLyTy2.mjs} +3 -17
  120. package/dist/{chunks/messages-DA7Zk-Cy.mjs → messages-CwCEcbWG.mjs} +3 -17
  121. package/dist/{chunks/messages-DQ5AyNCU.mjs → messages-D38h5XlF.mjs} +3 -17
  122. package/dist/{chunks/messages-DC7TX-YT.mjs → messages-D7juvhHp.mjs} +3 -17
  123. package/dist/{chunks/messages-BdnSVKOw.mjs → messages-D8WvwU42.mjs} +3 -17
  124. package/dist/{chunks/messages-Df87zXXG.mjs → messages-DACg1XAu.mjs} +3 -17
  125. package/dist/{messages-BBq0M604.mjs → messages-DIKCwGog.mjs} +3 -17
  126. package/dist/{messages-Ccd587Yn.mjs → messages-DJU4YLij.mjs} +3 -17
  127. package/dist/{chunks/messages-Dm4YVlrm.mjs → messages-DQN1y6E9.mjs} +3 -17
  128. package/dist/{messages-CqkRG9mH.mjs → messages-DRU_IgoW.mjs} +3 -17
  129. package/dist/{chunks/messages-DT7fRpCy.mjs → messages-DbZsJAff.mjs} +3 -17
  130. package/dist/{messages-upqrRZQH2.mjs → messages-Dg2CDXZi2.mjs} +3 -17
  131. package/dist/{messages-DJKLtW7u.mjs → messages-Dj79y02X.mjs} +3 -17
  132. package/dist/{chunks/messages-Ct7AMBS82.mjs → messages-DjWfVYHS2.mjs} +3 -17
  133. package/dist/{chunks/messages-B2pW6jO_.mjs → messages-DkvQ-6HC2.mjs} +3 -17
  134. package/dist/{chunks/messages-ZJ0b1C3a.mjs → messages-DnhEzmXJ2.mjs} +3 -17
  135. package/dist/{chunks/messages-BgsPQXfP.mjs → messages-DqJTZbwt.mjs} +3 -17
  136. package/dist/{chunks/messages-DUDgFEEe2.mjs → messages-Dq_v7slw2.mjs} +3 -17
  137. package/dist/{chunks/messages-CyNsByCY.mjs → messages-En8LDjUB.mjs} +3 -17
  138. package/dist/{chunks/messages-FHrCEJmY2.mjs → messages-JK9Okzsy2.mjs} +3 -17
  139. package/dist/{messages-DnatBKPm.mjs → messages-KSxF8eib.mjs} +3 -17
  140. package/dist/{chunks/messages-DD7BI6BK.mjs → messages-KbYSpNrE.mjs} +3 -17
  141. package/dist/{messages-BvgXeMSL2.mjs → messages-KqWQKmIu2.mjs} +3 -17
  142. package/dist/{messages-BSe3QDnQ.mjs → messages-PvMdmlxI.mjs} +3 -17
  143. package/dist/{chunks/messages-DJkIeapn.mjs → messages-So3SHdIc2.mjs} +3 -17
  144. package/dist/{messages-BywbKcPC.mjs → messages-X80Nh0ib.mjs} +3 -17
  145. package/dist/{messages-DOTJ2NvJ.mjs → messages-hrSlVSHp.mjs} +3 -17
  146. package/dist/{messages-DJT4Bt_02.mjs → messages-mipkPgwQ2.mjs} +3 -17
  147. package/dist/{messages-xEI8gEDK.mjs → messages-nOe1gJYu.mjs} +3 -17
  148. package/dist/{messages-Bk984gRE2.mjs → messages-rbox5gSb2.mjs} +3 -17
  149. package/dist/{chunks/messages-CgRvtOEY.mjs → messages-uCsQjz7M.mjs} +3 -17
  150. package/dist/{chunks/messages-BbdNugdi.mjs → messages-vcoib5Ga.mjs} +3 -17
  151. package/dist/{chunks/messages-CvfKofOP.mjs → messages-vptt-pVF.mjs} +3 -17
  152. package/dist/{chunks/messages-BkCjgGxc.mjs → messages-x353UCBI.mjs} +3 -17
  153. package/dist/react.mjs +3 -3
  154. package/dist/tools.mjs +3 -3
  155. package/dist/vendor.LICENSE.txt +1622 -182
  156. package/package.json +15 -2
  157. package/src/components/blocks.ts +26 -1
  158. package/src/components/i18n/locales/am/messages.json +3 -17
  159. package/src/components/i18n/locales/ar/messages.json +3 -17
  160. package/src/components/i18n/locales/az/messages.json +3 -17
  161. package/src/components/i18n/locales/bg/messages.json +3 -17
  162. package/src/components/i18n/locales/bn/messages.json +3 -17
  163. package/src/components/i18n/locales/bs/messages.json +3 -17
  164. package/src/components/i18n/locales/cs/messages.json +3 -17
  165. package/src/components/i18n/locales/da/messages.json +3 -17
  166. package/src/components/i18n/locales/de/messages.json +3 -17
  167. package/src/components/i18n/locales/dv/messages.json +3 -17
  168. package/src/components/i18n/locales/el/messages.json +3 -17
  169. package/src/components/i18n/locales/en/messages.json +15 -17
  170. package/src/components/i18n/locales/es/messages.json +3 -17
  171. package/src/components/i18n/locales/et/messages.json +3 -17
  172. package/src/components/i18n/locales/fa/messages.json +3 -17
  173. package/src/components/i18n/locales/fi/messages.json +3 -17
  174. package/src/components/i18n/locales/fil/messages.json +3 -17
  175. package/src/components/i18n/locales/fr/messages.json +3 -17
  176. package/src/components/i18n/locales/gu/messages.json +3 -17
  177. package/src/components/i18n/locales/he/messages.json +3 -17
  178. package/src/components/i18n/locales/hi/messages.json +3 -17
  179. package/src/components/i18n/locales/hr/messages.json +3 -17
  180. package/src/components/i18n/locales/hu/messages.json +3 -17
  181. package/src/components/i18n/locales/hy/messages.json +3 -17
  182. package/src/components/i18n/locales/id/messages.json +3 -17
  183. package/src/components/i18n/locales/it/messages.json +3 -17
  184. package/src/components/i18n/locales/ja/messages.json +3 -17
  185. package/src/components/i18n/locales/ka/messages.json +3 -17
  186. package/src/components/i18n/locales/km/messages.json +3 -17
  187. package/src/components/i18n/locales/kn/messages.json +3 -17
  188. package/src/components/i18n/locales/ko/messages.json +3 -17
  189. package/src/components/i18n/locales/ku/messages.json +3 -17
  190. package/src/components/i18n/locales/lo/messages.json +3 -17
  191. package/src/components/i18n/locales/lt/messages.json +3 -17
  192. package/src/components/i18n/locales/lv/messages.json +3 -17
  193. package/src/components/i18n/locales/mk/messages.json +3 -17
  194. package/src/components/i18n/locales/ml/messages.json +3 -17
  195. package/src/components/i18n/locales/mn/messages.json +3 -17
  196. package/src/components/i18n/locales/mr/messages.json +3 -17
  197. package/src/components/i18n/locales/ms/messages.json +3 -17
  198. package/src/components/i18n/locales/my/messages.json +3 -17
  199. package/src/components/i18n/locales/ne/messages.json +3 -17
  200. package/src/components/i18n/locales/nl/messages.json +3 -17
  201. package/src/components/i18n/locales/no/messages.json +3 -17
  202. package/src/components/i18n/locales/pa/messages.json +3 -17
  203. package/src/components/i18n/locales/pl/messages.json +3 -17
  204. package/src/components/i18n/locales/ps/messages.json +3 -17
  205. package/src/components/i18n/locales/pt/messages.json +3 -17
  206. package/src/components/i18n/locales/ro/messages.json +3 -17
  207. package/src/components/i18n/locales/ru/messages.json +3 -17
  208. package/src/components/i18n/locales/sd/messages.json +3 -17
  209. package/src/components/i18n/locales/si/messages.json +3 -17
  210. package/src/components/i18n/locales/sk/messages.json +3 -17
  211. package/src/components/i18n/locales/sl/messages.json +3 -17
  212. package/src/components/i18n/locales/sq/messages.json +3 -17
  213. package/src/components/i18n/locales/sr/messages.json +3 -17
  214. package/src/components/i18n/locales/sv/messages.json +3 -17
  215. package/src/components/i18n/locales/sw/messages.json +3 -17
  216. package/src/components/i18n/locales/ta/messages.json +3 -17
  217. package/src/components/i18n/locales/te/messages.json +3 -17
  218. package/src/components/i18n/locales/th/messages.json +3 -17
  219. package/src/components/i18n/locales/tr/messages.json +3 -17
  220. package/src/components/i18n/locales/ug/messages.json +3 -17
  221. package/src/components/i18n/locales/uk/messages.json +3 -17
  222. package/src/components/i18n/locales/ur/messages.json +3 -17
  223. package/src/components/i18n/locales/vi/messages.json +3 -17
  224. package/src/components/i18n/locales/yi/messages.json +3 -17
  225. package/src/components/i18n/locales/zh/messages.json +3 -17
  226. package/src/components/icons/index.ts +30 -56
  227. package/src/components/inline-tools/inline-tool-code.ts +399 -0
  228. package/src/components/modules/api/blocks.ts +17 -0
  229. package/src/components/modules/api/tools.ts +0 -19
  230. package/src/components/modules/blockEvents/composers/blockSelectionKeys.ts +20 -3
  231. package/src/components/modules/blockEvents/composers/keyboardNavigation.ts +5 -5
  232. package/src/components/modules/blockManager/blockManager.ts +0 -11
  233. package/src/components/modules/blockManager/event-binder.ts +1 -12
  234. package/src/components/modules/paste/handlers/html-handler.ts +13 -10
  235. package/src/components/modules/paste/handlers/index.ts +1 -0
  236. package/src/components/modules/paste/index.ts +6 -0
  237. package/src/components/modules/themeManager.ts +1 -3
  238. package/src/components/modules/toolbar/blockSettings.ts +1 -0
  239. package/src/components/modules/toolbar/inline/index.ts +3 -0
  240. package/src/components/modules/uiControllers/controllers/keyboard.ts +0 -29
  241. package/src/components/modules/uiControllers/controllers/selection.ts +2 -14
  242. package/src/components/ui/toolbox.ts +1 -0
  243. package/src/components/utils/popover/popover-position.ts +2 -4
  244. package/src/markdown/index.ts +63 -0
  245. package/src/markdown/markdown-handler.ts +110 -0
  246. package/src/markdown/mdast-to-blocks.ts +418 -0
  247. package/src/markdown/phrasing-to-html.ts +60 -0
  248. package/src/markdown/types.ts +42 -0
  249. package/src/styles/main.css +0 -1139
  250. package/src/tools/callout/index.ts +24 -0
  251. package/src/tools/code/code-keyboard.ts +135 -0
  252. package/src/tools/code/constants.ts +73 -0
  253. package/src/tools/code/dom-builder.ts +146 -0
  254. package/src/tools/code/index.ts +322 -0
  255. package/src/tools/code/katex-loader.ts +50 -0
  256. package/src/tools/code/language-picker.ts +241 -0
  257. package/src/tools/divider/index.ts +9 -1
  258. package/src/tools/index.ts +4 -2
  259. package/src/tools/list/block-operations.ts +3 -1
  260. package/src/tools/list/depth-validator.ts +4 -7
  261. package/src/tools/list/dom-builder.ts +5 -3
  262. package/src/tools/list/index.ts +21 -3
  263. package/src/tools/list/list-helpers.ts +9 -2
  264. package/src/tools/list/list-keyboard.ts +56 -14
  265. package/src/tools/list/list-lifecycle.ts +3 -1
  266. package/src/tools/list/marker-calculator.ts +37 -0
  267. package/src/tools/list/ordered-marker-manager.ts +4 -2
  268. package/src/tools/table/index.ts +2 -2
  269. package/src/tools/table/table-cell-clipboard.ts +1 -1
  270. package/types/api/tools.d.ts +0 -18
  271. package/types/markdown.d.ts +2 -0
  272. package/types/tools/code.d.ts +11 -0
  273. package/src/tools/database/database-backend-sync.ts +0 -101
  274. package/src/tools/database/database-board-view.ts +0 -301
  275. package/src/tools/database/database-card-drag.ts +0 -306
  276. package/src/tools/database/database-card-drawer.ts +0 -546
  277. package/src/tools/database/database-column-controls.ts +0 -46
  278. package/src/tools/database/database-column-drag.ts +0 -262
  279. package/src/tools/database/database-keyboard.ts +0 -35
  280. package/src/tools/database/database-list-row-drag.ts +0 -245
  281. package/src/tools/database/database-list-view.ts +0 -333
  282. package/src/tools/database/database-model.ts +0 -246
  283. package/src/tools/database/database-property-type-popover.ts +0 -108
  284. package/src/tools/database/database-tab-bar.ts +0 -532
  285. package/src/tools/database/database-view-popover.ts +0 -109
  286. package/src/tools/database/database-view-renderer.ts +0 -25
  287. package/src/tools/database/index.ts +0 -948
  288. package/src/tools/database/types.ts +0 -144
  289. /package/dist/chunks/{am-CHDDMHkd.mjs → am-CS-JjQ0N.mjs} +0 -0
  290. /package/dist/chunks/{ar-DoqfNqut.mjs → ar-Dt4XzR5U.mjs} +0 -0
  291. /package/dist/chunks/{az-C34P9iEa.mjs → az-CaDTXby8.mjs} +0 -0
  292. /package/dist/chunks/{bg-jroXLY8Y.mjs → bg-D1pLog-R.mjs} +0 -0
  293. /package/dist/chunks/{bn-BRI-WqxY.mjs → bn-Db_ae60m.mjs} +0 -0
  294. /package/dist/chunks/{bs-CCGUpNHu.mjs → bs-DJTg1R9e.mjs} +0 -0
  295. /package/dist/chunks/{cs-D5qZOGuc.mjs → cs-_Gc21gSL.mjs} +0 -0
  296. /package/dist/chunks/{da-DrJ7W37K.mjs → da-xDB8uhCd.mjs} +0 -0
  297. /package/dist/chunks/{de-BW6-kp2c.mjs → de-B6gVjh1Z.mjs} +0 -0
  298. /package/dist/chunks/{el-C-Vc_Otu.mjs → el-ClbRSnOs.mjs} +0 -0
  299. /package/dist/chunks/{es-B6fI5K9i.mjs → es-CuY9rnLK.mjs} +0 -0
  300. /package/dist/chunks/{et-BhVlZ-Yz.mjs → et-BLu5lDVc.mjs} +0 -0
  301. /package/dist/chunks/{fa-D55Ijdqa.mjs → fa-P3gnrZH8.mjs} +0 -0
  302. /package/dist/chunks/{fi-jNLjhKUQ.mjs → fi-B8PVHLjq.mjs} +0 -0
  303. /package/dist/chunks/{fil-DYd0T5aX.mjs → fil-B9JII5iF.mjs} +0 -0
  304. /package/dist/chunks/{fr-yxy5xWw_.mjs → fr-BWLDZdcc.mjs} +0 -0
  305. /package/dist/chunks/{gu-CcY_LJe7.mjs → gu-BH3R_s4c.mjs} +0 -0
  306. /package/dist/chunks/{he-DL9s7wNw.mjs → he-CCmeCVR_.mjs} +0 -0
  307. /package/dist/chunks/{hi-C8eGXgw5.mjs → hi-BBav00DN.mjs} +0 -0
  308. /package/dist/chunks/{hr-DLpybOhU.mjs → hr-B5ZX0r9G.mjs} +0 -0
  309. /package/dist/chunks/{hu-BkT0gT00.mjs → hu-1jgDa3YU.mjs} +0 -0
  310. /package/dist/chunks/{hy-CVFDCp2S.mjs → hy-LX4Kp2PE.mjs} +0 -0
  311. /package/dist/chunks/{id-0P4W9Az0.mjs → id-CcG40D1H.mjs} +0 -0
  312. /package/dist/chunks/{it-mLY6_uoW.mjs → it-Cb8_K72W.mjs} +0 -0
  313. /package/dist/chunks/{ja-7RkeRNWG.mjs → ja-ipCH91mv.mjs} +0 -0
  314. /package/dist/chunks/{ka-C7Lx-Qsh.mjs → ka-BRvREIgq.mjs} +0 -0
  315. /package/dist/chunks/{km-Q8udaraH.mjs → km-BJwVw7Fg.mjs} +0 -0
  316. /package/dist/chunks/{kn-BiETM-iq.mjs → kn-BPgUazCC.mjs} +0 -0
  317. /package/dist/chunks/{ko-tiB80pF1.mjs → ko-CQLzxe7k.mjs} +0 -0
  318. /package/dist/chunks/{ku-CY-OABkR.mjs → ku-BHhHu8Iz.mjs} +0 -0
  319. /package/dist/chunks/{lo-CTBhEnyk.mjs → lo-DsTgYblY.mjs} +0 -0
  320. /package/dist/chunks/{lt-BHKHEtqK.mjs → lt-CDzHJm71.mjs} +0 -0
  321. /package/dist/chunks/{lv-DWxgtfUg.mjs → lv-MLLIAnIX.mjs} +0 -0
  322. /package/dist/chunks/{mk-BjookGdx.mjs → mk-DQdmUquZ.mjs} +0 -0
  323. /package/dist/chunks/{ml-L-NnZcp9.mjs → ml-DqehZnra.mjs} +0 -0
  324. /package/dist/chunks/{mn-OMWi7Hl_.mjs → mn-4cFkKFjW.mjs} +0 -0
  325. /package/dist/chunks/{mr-B6JPzITo.mjs → mr-DWiztOP4.mjs} +0 -0
  326. /package/dist/chunks/{ms-CG3S-sPB.mjs → ms-BSz-iSnc.mjs} +0 -0
  327. /package/dist/chunks/{my-BLAmGfhT.mjs → my-DbtbM1MW.mjs} +0 -0
  328. /package/dist/chunks/{native-BPcABu9z.mjs → native-CzYG0YgY.mjs} +0 -0
  329. /package/dist/chunks/{ne-D1JHLfYw.mjs → ne-CqALWw_f.mjs} +0 -0
  330. /package/dist/chunks/{nl-Ca7Q8FnY.mjs → nl-D_ra6RvH.mjs} +0 -0
  331. /package/dist/chunks/{no-Coxcohcz.mjs → no-Cg_kz_jl.mjs} +0 -0
  332. /package/dist/chunks/{pa-CCaXqpaI.mjs → pa-NLAsNqwY.mjs} +0 -0
  333. /package/dist/chunks/{pl-Cl_fAZ84.mjs → pl-NHKp4YDg.mjs} +0 -0
  334. /package/dist/chunks/{ps-WD5qGAWy.mjs → ps-D1zEqNeg.mjs} +0 -0
  335. /package/dist/chunks/{pt-C4zvLfvq.mjs → pt-DBtqbUEB.mjs} +0 -0
  336. /package/dist/chunks/{ro-DbefHcmM.mjs → ro-lqr63ai5.mjs} +0 -0
  337. /package/dist/chunks/{ru-uU1J14jd.mjs → ru-BycNnDyN.mjs} +0 -0
  338. /package/dist/chunks/{sd-DKu368Ip.mjs → sd-DpHpIN9Z.mjs} +0 -0
  339. /package/dist/chunks/{si-BsJCiPkZ.mjs → si-BwiwaC7N.mjs} +0 -0
  340. /package/dist/chunks/{sk-CD-a3SN6.mjs → sk-CqRHT2Gp.mjs} +0 -0
  341. /package/dist/chunks/{sl-CXhrPJe_.mjs → sl-DA348uQ_.mjs} +0 -0
  342. /package/dist/chunks/{sq-CTctCoFQ.mjs → sq-D7JNgve1.mjs} +0 -0
  343. /package/dist/chunks/{sr-BZkhBwXj.mjs → sr-D8RK6Kwp.mjs} +0 -0
  344. /package/dist/chunks/{sv-NmRZb_xi.mjs → sv-dwgT67ZG.mjs} +0 -0
  345. /package/dist/chunks/{sw-Be5ik3H6.mjs → sw-ZRRJnkem.mjs} +0 -0
  346. /package/dist/chunks/{ta-DsXh6neL.mjs → ta-5x4L5Krl.mjs} +0 -0
  347. /package/dist/chunks/{te-CwpCbM8M.mjs → te-BZpEimwA.mjs} +0 -0
  348. /package/dist/chunks/{th-CcZ15OLk.mjs → th-Bhr-33kv.mjs} +0 -0
  349. /package/dist/chunks/{tr-q3bTgvhW.mjs → tr-6tSNKGNB.mjs} +0 -0
  350. /package/dist/chunks/{tw-DmW6-pCY.mjs → tw-CqxBf-1Y.mjs} +0 -0
  351. /package/dist/chunks/{ug-919EhLsL.mjs → ug-_e-jvr2b.mjs} +0 -0
  352. /package/dist/chunks/{uk-aNMEzd0Y.mjs → uk-DooSc2Ja.mjs} +0 -0
  353. /package/dist/chunks/{ur-BwQI77sh.mjs → ur-rb-krkIO.mjs} +0 -0
  354. /package/dist/chunks/{vi-Dxq806-F.mjs → vi-CQkLn2AQ.mjs} +0 -0
  355. /package/dist/chunks/{zh-BcHuy1Ti.mjs → zh-CXQ40Q2_.mjs} +0 -0
@@ -709,30 +709,6 @@
709
709
  --blok-table-grip-outline: transparent;
710
710
  --blok-table-drag-source-bg: #f3f4f6;
711
711
 
712
- /* Database / Kanban */
713
- --blok-database-card-bg: #fff;
714
- --blok-database-card-bg-hover: #f7f7f5;
715
- --blok-database-card-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
716
- --blok-database-card-shadow-hover: 0 4px 12px rgba(0, 0, 0, 0.12);
717
- --blok-database-card-border: rgba(0, 0, 0, 0.06);
718
- --blok-database-card-border-active: rgba(35, 131, 226, 0.57);
719
- --blok-database-card-placeholder: rgba(55, 53, 47, 0.4);
720
- --blok-database-column-bg: rgba(0, 0, 0, 0.04);
721
- --blok-database-add-text: rgba(55, 53, 47, 0.5);
722
- --blok-database-add-border: rgba(55, 53, 47, 0.25);
723
- --blok-database-add-hover-bg: rgba(55, 53, 47, 0.06);
724
- --blok-database-delete-text: rgba(55, 53, 47, 0.35);
725
- --blok-database-delete-hover-text: rgba(55, 53, 47, 0.65);
726
- --blok-database-drawer-border: #e8e8eb;
727
- --blok-database-tab-bg: transparent;
728
- --blok-database-tab-bg-active: rgba(0, 0, 0, 0.06);
729
- --blok-database-tab-bg-hover: rgba(0, 0, 0, 0.04);
730
- --blok-database-tab-text: rgba(55, 53, 47, 0.5);
731
- --blok-database-tab-text-active: #37352f;
732
- --blok-database-popover-bg: #fff;
733
- --blok-database-popover-shadow: 0 4px 24px rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.04);
734
- --blok-database-popover-hover: rgba(0, 0, 0, 0.04);
735
-
736
712
  /* Toggle switch */
737
713
  --blok-toggle-off-bg: #d4d4d8;
738
714
  --blok-toggle-on-bg: #2383e2;
@@ -826,30 +802,6 @@
826
802
  --blok-table-grip-outline: rgba(255, 255, 255, 0.12);
827
803
  --blok-table-drag-source-bg: rgba(255, 255, 255, 0.07);
828
804
 
829
- /* Database / Kanban */
830
- --blok-database-card-bg: #2d2d2c;
831
- --blok-database-card-bg-hover: #353534;
832
- --blok-database-card-shadow: 0 1px 3px rgba(0, 0, 0, 0.25);
833
- --blok-database-card-shadow-hover: 0 4px 12px rgba(0, 0, 0, 0.45);
834
- --blok-database-card-border: rgba(255, 255, 255, 0.06);
835
- --blok-database-card-border-active: rgba(35, 131, 226, 0.7);
836
- --blok-database-card-placeholder: rgba(255, 255, 255, 0.3);
837
- --blok-database-column-bg: rgba(255, 255, 255, 0.05);
838
- --blok-database-add-text: rgba(255, 255, 255, 0.4);
839
- --blok-database-add-border: rgba(255, 255, 255, 0.2);
840
- --blok-database-add-hover-bg: rgba(255, 255, 255, 0.06);
841
- --blok-database-delete-text: rgba(255, 255, 255, 0.3);
842
- --blok-database-delete-hover-text: rgba(255, 255, 255, 0.55);
843
- --blok-database-drawer-border: rgba(255, 255, 255, 0.1);
844
- --blok-database-tab-bg: transparent;
845
- --blok-database-tab-bg-active: rgba(255, 255, 255, 0.08);
846
- --blok-database-tab-bg-hover: rgba(255, 255, 255, 0.04);
847
- --blok-database-tab-text: rgba(255, 255, 255, 0.45);
848
- --blok-database-tab-text-active: rgba(255, 255, 255, 0.9);
849
- --blok-database-popover-bg: #2d2d2c;
850
- --blok-database-popover-shadow: 0 4px 24px rgba(0, 0, 0, 0.35), 0 0 0 1px rgba(255, 255, 255, 0.08);
851
- --blok-database-popover-hover: rgba(255, 255, 255, 0.06);
852
-
853
805
  /* Toggle switch */
854
806
  --blok-toggle-off-bg: #3f3f46;
855
807
  --blok-toggle-on-bg: #529cca;
@@ -943,28 +895,6 @@
943
895
  --blok-table-grip-outline: rgba(255, 255, 255, 0.12);
944
896
  --blok-table-drag-source-bg: rgba(255, 255, 255, 0.07);
945
897
 
946
- /* Database / Kanban */
947
- --blok-database-card-bg: #2d2d2c;
948
- --blok-database-card-bg-hover: #353534;
949
- --blok-database-card-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
950
- --blok-database-card-shadow-hover: 0 4px 12px rgba(0, 0, 0, 0.45);
951
- --blok-database-card-border: rgba(255, 255, 255, 0.06);
952
- --blok-database-column-bg: rgba(255, 255, 255, 0.03);
953
- --blok-database-add-text: rgba(255, 255, 255, 0.4);
954
- --blok-database-add-border: rgba(255, 255, 255, 0.2);
955
- --blok-database-add-hover-bg: rgba(255, 255, 255, 0.06);
956
- --blok-database-delete-text: rgba(255, 255, 255, 0.3);
957
- --blok-database-delete-hover-text: rgba(255, 255, 255, 0.55);
958
- --blok-database-drawer-border: rgba(255, 255, 255, 0.1);
959
- --blok-database-tab-bg: transparent;
960
- --blok-database-tab-bg-active: rgba(255, 255, 255, 0.08);
961
- --blok-database-tab-bg-hover: rgba(255, 255, 255, 0.04);
962
- --blok-database-tab-text: rgba(255, 255, 255, 0.45);
963
- --blok-database-tab-text-active: rgba(255, 255, 255, 0.9);
964
- --blok-database-popover-bg: #2d2d2c;
965
- --blok-database-popover-shadow: 0 4px 24px rgba(0, 0, 0, 0.35), 0 0 0 1px rgba(255, 255, 255, 0.08);
966
- --blok-database-popover-hover: rgba(255, 255, 255, 0.06);
967
-
968
898
  /* Toggle switch */
969
899
  --blok-toggle-off-bg: #3f3f46;
970
900
  --blok-toggle-on-bg: #e4e4e7;
@@ -1496,1072 +1426,3 @@
1496
1426
  [data-emoji-picker-body]::-webkit-scrollbar-thumb:hover {
1497
1427
  background: color-mix(in srgb, currentColor 22%, transparent);
1498
1428
  }
1499
-
1500
- /* ═══════════════════════════════════════════════════════
1501
- Database / Kanban board
1502
- ═══════════════════════════════════════════════════════ */
1503
-
1504
- /**
1505
- * Board area — scrollable padding on both sides so columns can be
1506
- * scrolled all the way to either edge of the editor. The initial
1507
- * scrollLeft (set in DatabaseTool.rendered()) positions the first
1508
- * column at the content-area left edge.
1509
- */
1510
- [data-blok-database-board] {
1511
- padding-left: max(0px, calc((100% - var(--max-width-content)) / 2));
1512
- padding-right: max(0px, calc((100% - var(--max-width-content)) / 2));
1513
-
1514
- /* macOS-style scrollbar — thin, rounded, visible on hover/scroll */
1515
- scrollbar-width: thin;
1516
- scrollbar-color: transparent transparent;
1517
- }
1518
- [data-blok-database-board]:hover {
1519
- scrollbar-color: color-mix(in srgb, currentColor 15%, transparent) transparent;
1520
- }
1521
- [data-blok-database-board]::-webkit-scrollbar {
1522
- height: 8px;
1523
- }
1524
- [data-blok-database-board]::-webkit-scrollbar-track {
1525
- background: transparent;
1526
- }
1527
- [data-blok-database-board]::-webkit-scrollbar-thumb {
1528
- background: transparent;
1529
- border-radius: 4px;
1530
- }
1531
- [data-blok-database-board]:hover::-webkit-scrollbar-thumb {
1532
- background: color-mix(in srgb, currentColor 15%, transparent);
1533
- }
1534
- [data-blok-database-board]::-webkit-scrollbar-thumb:hover {
1535
- background: color-mix(in srgb, currentColor 25%, transparent);
1536
- }
1537
-
1538
- /**
1539
- * Column background tint — a subtle fill so columns read as lanes.
1540
- */
1541
- [data-blok-database-column] {
1542
- background-color: var(--blok-database-column-bg);
1543
- border-radius: 10px;
1544
- padding: 8px;
1545
- }
1546
-
1547
- /**
1548
- * Column header — grab cursor to indicate draggable area.
1549
- */
1550
- [data-blok-database-column-header] {
1551
- cursor: grab;
1552
- }
1553
-
1554
- /**
1555
- * Cards — elevated surface with subtle border and shadow.
1556
- */
1557
- [data-blok-database-card] {
1558
- background-color: var(--blok-database-card-bg);
1559
- box-shadow: var(--blok-database-card-shadow);
1560
- border: 1px solid var(--blok-database-card-border);
1561
- border-radius: 8px;
1562
- transition: background-color 150ms ease, box-shadow 150ms ease, border-color 150ms ease, outline-color 150ms ease;
1563
- }
1564
-
1565
- [data-blok-database-card]:hover {
1566
- background-color: var(--blok-database-card-bg-hover);
1567
- }
1568
-
1569
- [data-blok-database-card-active] {
1570
- background-color: var(--blok-database-card-bg-hover);
1571
- outline: 2px solid var(--blok-database-card-border-active);
1572
- outline-offset: -1px;
1573
- }
1574
-
1575
- /**
1576
- * During drag — smooth card displacement transitions.
1577
- */
1578
- [data-blok-database-dragging] [data-blok-database-card] {
1579
- transition: box-shadow 150ms ease, border-color 150ms ease, margin-top 200ms cubic-bezier(0.25, 0.1, 0.25, 1);
1580
- }
1581
-
1582
- [data-blok-database-dragging] [data-blok-database-cards] {
1583
- transition: padding-bottom 200ms cubic-bezier(0.25, 0.1, 0.25, 1);
1584
- }
1585
-
1586
- /**
1587
- * During column reorder — smooth gap displacement and grab cursor.
1588
- */
1589
- [data-blok-database-column-reordering] {
1590
- cursor: grabbing;
1591
- }
1592
-
1593
- [data-blok-database-column-reordering] [data-blok-database-column] {
1594
- transition: margin-left 200ms cubic-bezier(0.25, 0.1, 0.25, 1);
1595
- }
1596
-
1597
- [data-blok-database-column-reordering] [data-blok-database-board] {
1598
- transition: padding-right 200ms cubic-bezier(0.25, 0.1, 0.25, 1);
1599
- }
1600
-
1601
- /**
1602
- * Delete card button — hidden until card hover.
1603
- */
1604
- [data-blok-database-delete-card] {
1605
- opacity: 0;
1606
- background: none;
1607
- border: none;
1608
- cursor: pointer;
1609
- color: var(--blok-database-delete-text);
1610
- font-size: 16px;
1611
- line-height: 1;
1612
- padding: 0 2px;
1613
- transition: opacity 120ms ease, color 120ms ease;
1614
- }
1615
-
1616
- [data-blok-database-card]:hover [data-blok-database-delete-card] {
1617
- opacity: 1;
1618
- }
1619
-
1620
- [data-blok-database-delete-card]:hover {
1621
- color: var(--blok-database-delete-hover-text);
1622
- }
1623
-
1624
- /**
1625
- * Add card / Add column buttons — muted text with hover fill.
1626
- */
1627
- [data-blok-database-add-card],
1628
- [data-blok-database-add-column] {
1629
- background: none;
1630
- border: 1px solid var(--blok-database-add-border);
1631
- cursor: pointer;
1632
- color: var(--blok-database-add-text);
1633
- font-size: 14px;
1634
- padding: 6px 8px;
1635
- border-radius: 8px;
1636
- text-align: left;
1637
- width: 100%;
1638
- transition: background-color 120ms ease, color 120ms ease, border-color 120ms ease;
1639
- }
1640
-
1641
- [data-blok-database-add-card]:hover,
1642
- [data-blok-database-add-column]:hover {
1643
- background-color: var(--blok-database-add-hover-bg);
1644
- color: var(--blok-text-primary, inherit);
1645
- }
1646
-
1647
- [data-blok-database-add-column] {
1648
- white-space: nowrap;
1649
- align-self: flex-start;
1650
- flex-shrink: 0;
1651
- padding: 10px 12px;
1652
- border-radius: 8px;
1653
- }
1654
-
1655
- /**
1656
- * Column header delete button — hidden until column header hover.
1657
- */
1658
- [data-blok-database-delete-column] {
1659
- opacity: 0;
1660
- background: none;
1661
- border: none;
1662
- cursor: pointer;
1663
- color: var(--blok-database-delete-text);
1664
- font-size: 14px;
1665
- line-height: 1;
1666
- padding: 2px 4px;
1667
- border-radius: 3px;
1668
- flex-shrink: 0;
1669
- transition: opacity 120ms ease, color 120ms ease;
1670
- }
1671
-
1672
- [data-blok-database-column-header]:hover [data-blok-database-delete-column] {
1673
- opacity: 1;
1674
- }
1675
-
1676
- [data-blok-database-delete-column]:hover {
1677
- color: var(--blok-database-delete-hover-text);
1678
- }
1679
-
1680
- /**
1681
- * Column header pill — rounded badge containing dot + title.
1682
- */
1683
- [data-blok-database-column-pill] {
1684
- display: inline-flex;
1685
- align-items: center;
1686
- gap: 6px;
1687
- padding: 2px 4px;
1688
- border-radius: 4px;
1689
- }
1690
-
1691
- /**
1692
- * Column status dot — small colored circle.
1693
- */
1694
- [data-blok-database-column-dot] {
1695
- width: 8px;
1696
- height: 8px;
1697
- border-radius: 50%;
1698
- flex-shrink: 0;
1699
- }
1700
-
1701
- /**
1702
- * Column title text — uppercase status-label style, truncate long titles.
1703
- */
1704
- [data-blok-database-column-title] {
1705
- overflow: hidden;
1706
- text-overflow: ellipsis;
1707
- white-space: nowrap;
1708
- font-size: 12px;
1709
- text-transform: uppercase;
1710
- letter-spacing: 0.04em;
1711
- }
1712
-
1713
- /**
1714
- * Card title text — clamp to two lines.
1715
- */
1716
- [data-blok-database-card-title] {
1717
- font-size: 14px;
1718
- font-weight: 500;
1719
- line-height: 1.45;
1720
- word-break: break-word;
1721
- }
1722
-
1723
- [data-blok-database-card-title][data-placeholder] {
1724
- color: var(--blok-database-card-placeholder);
1725
- font-style: italic;
1726
- }
1727
-
1728
- /**
1729
- * Drawer — base layout (fixed right panel) with slide-in animation.
1730
- */
1731
- [data-blok-database-drawer] {
1732
- position: fixed;
1733
- top: 0;
1734
- right: 0;
1735
- height: 100%;
1736
- width: 0;
1737
- z-index: 1000;
1738
- overflow: hidden;
1739
- display: flex;
1740
- flex-direction: column;
1741
- border-left: 1px solid var(--blok-popover-border, #e8e8eb);
1742
- background-color: var(--blok-popover-bg, #fff);
1743
- box-shadow: -4px 0 12px rgba(0, 0, 0, 0.08);
1744
- transition: width 200ms ease;
1745
- }
1746
-
1747
- /**
1748
- * Drawer toolbar — thin top bar with close button.
1749
- */
1750
- [data-blok-database-drawer-toolbar] {
1751
- display: flex;
1752
- align-items: center;
1753
- padding: 8px 12px;
1754
- flex-shrink: 0;
1755
- border-bottom: 1px solid var(--blok-database-drawer-border);
1756
- }
1757
-
1758
- /**
1759
- * Drawer close button — double-chevron icon.
1760
- */
1761
- [data-blok-database-drawer-close] {
1762
- display: inline-flex;
1763
- align-items: center;
1764
- background: none;
1765
- border: none;
1766
- cursor: pointer;
1767
- padding: 4px;
1768
- border-radius: 4px;
1769
- color: var(--blok-database-add-text);
1770
- gap: -4px;
1771
- }
1772
-
1773
- [data-blok-database-drawer-close]:hover {
1774
- background-color: var(--blok-database-drawer-border);
1775
- }
1776
-
1777
- [data-blok-database-drawer-close] svg {
1778
- width: 14px;
1779
- height: 14px;
1780
- margin-left: -6px;
1781
- }
1782
-
1783
- [data-blok-database-drawer-close] svg:first-child {
1784
- margin-left: 0;
1785
- }
1786
-
1787
- /**
1788
- * Drawer scrollable content area.
1789
- */
1790
- [data-blok-database-drawer-content] {
1791
- flex: 1;
1792
- overflow-y: auto;
1793
- padding: 40px 60px 20px;
1794
- }
1795
-
1796
- /**
1797
- * Drawer title — large, Notion-style textarea that auto-resizes.
1798
- */
1799
- [data-blok-database-drawer-title] {
1800
- display: block;
1801
- width: 100%;
1802
- font-size: 32px;
1803
- font-weight: 700;
1804
- border: none;
1805
- outline: none;
1806
- background-color: transparent;
1807
- color: inherit;
1808
- padding: 0;
1809
- margin-bottom: 12px;
1810
- line-height: 1.2;
1811
- resize: none;
1812
- overflow: hidden;
1813
- font-family: inherit;
1814
- }
1815
-
1816
- [data-blok-database-drawer-title]::placeholder {
1817
- color: var(--blok-database-add-text);
1818
- }
1819
-
1820
- /**
1821
- * Drawer properties section.
1822
- */
1823
- [data-blok-database-drawer-props] {
1824
- display: flex;
1825
- flex-direction: column;
1826
- gap: 4px;
1827
- margin-bottom: 16px;
1828
- }
1829
-
1830
- /**
1831
- * Drawer property row — label + value pair.
1832
- */
1833
- [data-blok-database-drawer-prop-row] {
1834
- display: flex;
1835
- align-items: center;
1836
- gap: 8px;
1837
- min-height: 32px;
1838
- font-size: 14px;
1839
- }
1840
-
1841
- /**
1842
- * Drawer property label — muted left column.
1843
- */
1844
- [data-blok-database-drawer-prop-label] {
1845
- color: var(--blok-database-add-text);
1846
- min-width: 100px;
1847
- flex-shrink: 0;
1848
- font-size: 14px;
1849
- }
1850
-
1851
- /**
1852
- * Drawer status pill badge — colored chip.
1853
- */
1854
- [data-blok-database-drawer-status-pill] {
1855
- display: inline-flex;
1856
- align-items: center;
1857
- gap: 6px;
1858
- padding: 2px 8px;
1859
- border-radius: 4px;
1860
- font-size: 14px;
1861
- font-weight: 500;
1862
- line-height: 1.4;
1863
- }
1864
-
1865
- /**
1866
- * Drawer status dot — small circle inside pill.
1867
- */
1868
- [data-blok-database-drawer-status-dot] {
1869
- width: 8px;
1870
- height: 8px;
1871
- border-radius: 50%;
1872
- flex-shrink: 0;
1873
- }
1874
-
1875
- /**
1876
- * Drawer divider.
1877
- */
1878
- [data-blok-database-drawer] hr {
1879
- border: none;
1880
- border-top: 1px solid var(--blok-database-drawer-border);
1881
- margin: 0 0 4px;
1882
- }
1883
-
1884
- /**
1885
- * Drawer editor holder.
1886
- */
1887
- [data-blok-database-drawer-editor] {
1888
- flex: 1;
1889
- min-height: 200px;
1890
- margin-left: -53px;
1891
- }
1892
-
1893
- /**
1894
- * Add card — match card height and visual rhythm.
1895
- */
1896
- [data-blok-database-add-card] {
1897
- margin-top: 6px;
1898
- padding: 10px 12px;
1899
- border-radius: 8px;
1900
- }
1901
-
1902
- /**
1903
- * Card count badge — muted counter after column title.
1904
- */
1905
- [data-blok-database-column-count] {
1906
- color: var(--blok-database-add-text);
1907
- font-size: 11px;
1908
- font-weight: 500;
1909
- margin-left: 2px;
1910
- flex-shrink: 0;
1911
- }
1912
-
1913
- /**
1914
- * Empty column placeholder — centered muted text.
1915
- */
1916
- [data-blok-database-empty-placeholder] {
1917
- color: var(--blok-database-add-text);
1918
- font-size: 13px;
1919
- text-align: center;
1920
- padding: 12px 0;
1921
- }
1922
-
1923
- /**
1924
- * Drawer — ensure editor tools toolbar doesn't overflow.
1925
- */
1926
- [data-blok-database-drawer-editor] .ce-toolbar {
1927
- left: 0;
1928
- right: 0;
1929
- }
1930
-
1931
- /* Database Tab Bar */
1932
- [data-blok-database-tab-bar] {
1933
- display: flex;
1934
- align-items: center;
1935
- gap: 2px;
1936
- padding: 4px 0 8px;
1937
- padding-left: max(0px, calc((100% - var(--max-width-content)) / 2));
1938
- }
1939
-
1940
- [data-blok-database-tab] {
1941
- display: flex;
1942
- align-items: center;
1943
- gap: 6px;
1944
- padding: 6px 14px;
1945
- border-radius: 10px;
1946
- cursor: grab;
1947
- font-size: 14px;
1948
- color: var(--blok-database-tab-text);
1949
- user-select: none;
1950
- white-space: nowrap;
1951
- transition: background-color 120ms ease;
1952
- }
1953
-
1954
- [data-blok-database-tab-bar][data-dragging] [data-blok-database-tab] {
1955
- cursor: grabbing;
1956
- }
1957
-
1958
- [data-blok-database-tab] svg {
1959
- width: 16px;
1960
- height: 16px;
1961
- flex-shrink: 0;
1962
- }
1963
-
1964
- [data-blok-database-tab]:hover {
1965
- background-color: var(--blok-database-tab-bg-hover);
1966
- }
1967
-
1968
- [data-blok-database-tab][data-active] {
1969
- background-color: var(--blok-database-tab-bg-active);
1970
- color: var(--blok-database-tab-text-active);
1971
- font-weight: 500;
1972
- }
1973
-
1974
- [data-blok-database-add-view] {
1975
- display: flex;
1976
- align-items: center;
1977
- justify-content: center;
1978
- width: 26px;
1979
- height: 26px;
1980
- border: none;
1981
- background: none;
1982
- border-radius: 6px;
1983
- cursor: pointer;
1984
- color: var(--blok-database-tab-text);
1985
- font-size: 18px;
1986
- margin-left: 2px;
1987
- transition: background-color 120ms ease;
1988
- }
1989
-
1990
- [data-blok-database-add-view]:hover {
1991
- background-color: var(--blok-database-tab-bg-hover);
1992
- }
1993
-
1994
- [data-blok-database-tab-more] {
1995
- padding: 4px 10px;
1996
- border-radius: 6px;
1997
- font-size: 13px;
1998
- color: var(--blok-database-tab-text);
1999
- cursor: pointer;
2000
- white-space: nowrap;
2001
- transition: background-color 120ms ease;
2002
- }
2003
-
2004
- [data-blok-database-tab-more]:hover {
2005
- background-color: var(--blok-database-tab-bg-hover);
2006
- }
2007
-
2008
- /* View Popover */
2009
- [data-blok-database-view-popover],
2010
- [data-blok-database-tab-context],
2011
- [data-blok-database-tab-overflow-dropdown] {
2012
- background: var(--blok-database-popover-bg);
2013
- border-radius: 10px;
2014
- box-shadow: var(--blok-database-popover-shadow);
2015
- padding: 6px;
2016
- }
2017
-
2018
- [data-blok-database-view-popover] {
2019
- min-width: 220px;
2020
- }
2021
-
2022
- [data-blok-database-view-popover-heading] {
2023
- padding: 8px 8px 6px;
2024
- font-size: 12px;
2025
- font-weight: 500;
2026
- color: var(--blok-database-tab-text);
2027
- }
2028
-
2029
- [data-blok-database-view-popover-grid] {
2030
- padding: 0 0 4px;
2031
- }
2032
-
2033
- [data-blok-database-view-option] {
2034
- display: flex;
2035
- flex-direction: column;
2036
- align-items: center;
2037
- gap: 6px;
2038
- padding: 14px 8px;
2039
- border-radius: 6px;
2040
- cursor: pointer;
2041
- font-size: 13px;
2042
- color: var(--blok-database-tab-text-active);
2043
- transition: background-color 120ms ease;
2044
- }
2045
-
2046
- [data-blok-database-view-option]:hover {
2047
- background-color: var(--blok-database-popover-hover);
2048
- }
2049
-
2050
- [data-blok-database-view-option-icon] {
2051
- display: flex;
2052
- align-items: center;
2053
- justify-content: center;
2054
- width: 36px;
2055
- height: 36px;
2056
- border-radius: 8px;
2057
- background: var(--blok-database-popover-hover);
2058
- color: var(--blok-database-tab-text);
2059
- }
2060
-
2061
- [data-blok-database-view-option-icon] svg {
2062
- width: 20px;
2063
- height: 20px;
2064
- }
2065
-
2066
- /* Context popover actions */
2067
- [data-blok-database-tab-context] {
2068
- min-width: 180px;
2069
- }
2070
-
2071
- [data-blok-database-tab-action] {
2072
- display: flex;
2073
- align-items: center;
2074
- gap: 10px;
2075
- padding: 7px 10px;
2076
- border-radius: 6px;
2077
- cursor: pointer;
2078
- font-size: 14px;
2079
- transition: background-color 120ms ease;
2080
- }
2081
-
2082
- [data-blok-database-tab-action]:hover {
2083
- background-color: var(--blok-database-popover-hover);
2084
- }
2085
-
2086
- [data-blok-database-tab-action-icon] {
2087
- display: flex;
2088
- align-items: center;
2089
- color: var(--blok-database-tab-text);
2090
- }
2091
-
2092
- [data-blok-database-tab-action-icon] svg {
2093
- width: 16px;
2094
- height: 16px;
2095
- }
2096
-
2097
- [data-blok-database-tab-action="delete"] {
2098
- color: #eb5757;
2099
- }
2100
-
2101
- [data-blok-database-tab-action="delete"] [data-blok-database-tab-action-icon] {
2102
- color: #eb5757;
2103
- }
2104
-
2105
- [data-blok-database-tab-context-separator] {
2106
- height: 1px;
2107
- margin: 4px 10px;
2108
- background-color: var(--blok-database-drawer-border);
2109
- }
2110
-
2111
- /* Overflow dropdown items */
2112
- [data-blok-database-tab-overflow-item] {
2113
- display: flex;
2114
- align-items: center;
2115
- gap: 10px;
2116
- padding: 7px 10px;
2117
- border-radius: 6px;
2118
- cursor: pointer;
2119
- font-size: 14px;
2120
- transition: background-color 120ms ease;
2121
- }
2122
-
2123
- [data-blok-database-tab-overflow-item]:hover {
2124
- background-color: var(--blok-database-popover-hover);
2125
- }
2126
-
2127
- [data-blok-database-tab-overflow-item][data-active] {
2128
- background-color: var(--blok-database-tab-bg-active);
2129
- font-weight: 500;
2130
- }
2131
-
2132
- [data-blok-database-tab-overflow-new] {
2133
- padding: 7px 10px;
2134
- font-size: 14px;
2135
- color: var(--blok-database-tab-text);
2136
- cursor: pointer;
2137
- border-radius: 6px;
2138
- transition: background-color 120ms ease;
2139
- }
2140
-
2141
- [data-blok-database-tab-overflow-new]:hover {
2142
- background-color: var(--blok-database-popover-hover);
2143
- }
2144
-
2145
- [data-blok-database-tab-overflow-separator] {
2146
- height: 1px;
2147
- margin: 4px 10px;
2148
- background-color: var(--blok-database-drawer-border);
2149
- }
2150
-
2151
- /* Tab rename input */
2152
- [data-blok-database-tab-rename-input] {
2153
- border: 1px solid var(--blok-database-drawer-border);
2154
- border-radius: 4px;
2155
- padding: 2px 6px;
2156
- font-size: 14px;
2157
- font-family: inherit;
2158
- background: var(--blok-database-popover-bg);
2159
- color: var(--blok-database-tab-text-active);
2160
- outline: none;
2161
- width: 80px;
2162
- }
2163
-
2164
- /* Tab ghost during drag */
2165
- [data-blok-database-tab-ghost] {
2166
- box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
2167
- border-radius: 6px;
2168
- background: var(--blok-database-tab-bg-active);
2169
- }
2170
-
2171
- /* Board container for slide transitions */
2172
- [data-blok-database-board-container] {
2173
- position: relative;
2174
- overflow: hidden;
2175
- }
2176
-
2177
- /* ─── List View ──────────────────────────────────────── */
2178
-
2179
- /**
2180
- * List wrapper — constrained to content width, centered like the editor body.
2181
- * Uses the same padding trick as the tab bar and board view.
2182
- */
2183
- [data-blok-database-list] {
2184
- display: flex;
2185
- flex-direction: column;
2186
- padding-left: max(0px, calc((100% - var(--max-width-content)) / 2));
2187
- padding-right: max(0px, calc((100% - var(--max-width-content)) / 2));
2188
- }
2189
-
2190
- /**
2191
- * List row — horizontal flex item. Hover reveals the delete button and
2192
- * highlights the row with a subtle background fill, matching Notion style.
2193
- */
2194
- [data-blok-database-list-row] {
2195
- display: flex;
2196
- align-items: center;
2197
- gap: 8px;
2198
- padding: 5px 8px;
2199
- border-radius: 4px;
2200
- cursor: pointer;
2201
- position: relative;
2202
- font-size: 14px;
2203
- transition: background-color 80ms ease;
2204
- /* Thin rule between rows */
2205
- border-bottom: 1px solid transparent;
2206
- }
2207
-
2208
- [data-blok-database-list-row]:not(:last-child) {
2209
- border-bottom-color: color-mix(in srgb, currentColor 5%, transparent);
2210
- }
2211
-
2212
- [data-blok-database-list-row]:hover {
2213
- background-color: var(--blok-database-add-hover-bg);
2214
- }
2215
-
2216
- /**
2217
- * Row title — fills available space, truncates overflow.
2218
- */
2219
- [data-blok-database-list-row-title] {
2220
- flex: 1;
2221
- overflow: hidden;
2222
- text-overflow: ellipsis;
2223
- white-space: nowrap;
2224
- line-height: 1.5;
2225
- min-width: 0;
2226
- }
2227
-
2228
- [data-blok-database-list-row-title][data-placeholder] {
2229
- color: var(--blok-database-add-text);
2230
- font-style: italic;
2231
- }
2232
-
2233
- /**
2234
- * Properties area — flex row of badges + open button, right-aligned.
2235
- */
2236
- [data-blok-database-list-row-properties] {
2237
- display: flex;
2238
- align-items: center;
2239
- gap: 6px;
2240
- flex-shrink: 0;
2241
- }
2242
-
2243
- /**
2244
- * Property badge — compact colored pill.
2245
- */
2246
- [data-blok-database-list-row-property] {
2247
- display: inline-flex;
2248
- align-items: center;
2249
- font-size: 12px;
2250
- font-weight: 500;
2251
- line-height: 1;
2252
- padding: 2px 7px;
2253
- border-radius: 4px;
2254
- white-space: nowrap;
2255
- background: var(--blok-database-add-hover-bg);
2256
- color: var(--blok-database-tab-text-active);
2257
- }
2258
-
2259
- /**
2260
- * Open-row button — muted arrow, visible on hover.
2261
- */
2262
- [data-blok-database-list-row-open] {
2263
- display: inline-flex;
2264
- align-items: center;
2265
- justify-content: center;
2266
- width: 22px;
2267
- height: 22px;
2268
- opacity: 0;
2269
- background: none;
2270
- border: none;
2271
- cursor: pointer;
2272
- border-radius: 4px;
2273
- color: var(--blok-database-add-text);
2274
- flex-shrink: 0;
2275
- transition: opacity 80ms ease, background-color 80ms ease, color 80ms ease;
2276
- }
2277
-
2278
- [data-blok-database-list-row-open]::after {
2279
- content: '';
2280
- display: block;
2281
- width: 7px;
2282
- height: 7px;
2283
- border-right: 2px solid currentColor;
2284
- border-top: 2px solid currentColor;
2285
- transform: rotate(45deg);
2286
- border-radius: 1px;
2287
- flex-shrink: 0;
2288
- }
2289
-
2290
- [data-blok-database-list-row]:hover [data-blok-database-list-row-open] {
2291
- opacity: 1;
2292
- }
2293
-
2294
- [data-blok-database-list-row-open]:hover {
2295
- background-color: var(--blok-database-add-hover-bg);
2296
- color: var(--blok-database-tab-text-active);
2297
- }
2298
-
2299
- /**
2300
- * Delete row button — hidden until hover, inline after the open button.
2301
- */
2302
- [data-blok-database-list-row-properties] [data-blok-database-delete-row] {
2303
- display: flex;
2304
- align-items: center;
2305
- justify-content: center;
2306
- width: 18px;
2307
- height: 18px;
2308
- opacity: 0;
2309
- background: none;
2310
- border: none;
2311
- cursor: pointer;
2312
- border-radius: 3px;
2313
- color: var(--blok-database-delete-text);
2314
- font-size: 15px;
2315
- line-height: 1;
2316
- padding: 0;
2317
- flex-shrink: 0;
2318
- transition: opacity 80ms ease, color 80ms ease, background-color 80ms ease;
2319
- }
2320
-
2321
- [data-blok-database-list-row]:hover [data-blok-database-delete-row] {
2322
- opacity: 1;
2323
- }
2324
-
2325
- [data-blok-database-list-row-properties] [data-blok-database-delete-row]:hover {
2326
- color: var(--blok-database-delete-hover-text);
2327
- background-color: color-mix(in srgb, currentColor 8%, transparent);
2328
- }
2329
-
2330
- /**
2331
- * Add-row button — muted "+ New row" at bottom of list.
2332
- */
2333
- [data-blok-database-list] > [data-blok-database-add-row],
2334
- [data-blok-database-list-rows] ~ [data-blok-database-add-row] {
2335
- display: flex;
2336
- align-items: center;
2337
- gap: 6px;
2338
- width: 100%;
2339
- padding: 6px 8px;
2340
- background: none;
2341
- border: none;
2342
- border-radius: 8px;
2343
- cursor: pointer;
2344
- font-size: 13px;
2345
- color: var(--blok-database-add-text);
2346
- text-align: left;
2347
- transition: background-color 80ms ease, color 80ms ease;
2348
- margin-top: 2px;
2349
- }
2350
-
2351
- [data-blok-database-list] > [data-blok-database-add-row]:hover,
2352
- [data-blok-database-list-rows] ~ [data-blok-database-add-row]:hover {
2353
- background-color: var(--blok-database-add-hover-bg);
2354
- color: var(--blok-text-primary, inherit);
2355
- }
2356
-
2357
- /**
2358
- * Group container — stacked sections when grouped by a select property.
2359
- */
2360
- [data-blok-database-list-group] {
2361
- display: flex;
2362
- flex-direction: column;
2363
- margin-bottom: 4px;
2364
- }
2365
-
2366
- /**
2367
- * Group header — clickable row containing toggle chevron, dot, title, count.
2368
- */
2369
- [data-blok-database-list-group-header] {
2370
- display: flex;
2371
- align-items: center;
2372
- gap: 6px;
2373
- padding: 6px 8px 4px;
2374
- cursor: pointer;
2375
- border-radius: 4px;
2376
- user-select: none;
2377
- transition: background-color 80ms ease;
2378
- }
2379
-
2380
- [data-blok-database-list-group-header]:hover {
2381
- background-color: var(--blok-database-add-hover-bg);
2382
- }
2383
-
2384
- /**
2385
- * Collapse toggle — small chevron, rotates when expanded/collapsed.
2386
- */
2387
- [data-blok-database-list-group-toggle] {
2388
- font-size: 10px;
2389
- color: var(--blok-database-add-text);
2390
- line-height: 1;
2391
- flex-shrink: 0;
2392
- width: 12px;
2393
- text-align: center;
2394
- transition: color 80ms ease;
2395
- }
2396
-
2397
- [data-blok-database-list-group-header]:hover [data-blok-database-list-group-toggle] {
2398
- color: var(--blok-database-tab-text-active);
2399
- }
2400
-
2401
- /**
2402
- * Status dot — small colored circle before the group title.
2403
- */
2404
- [data-blok-database-list-group-dot] {
2405
- width: 8px;
2406
- height: 8px;
2407
- border-radius: 50%;
2408
- flex-shrink: 0;
2409
- }
2410
-
2411
- /**
2412
- * Group title text.
2413
- */
2414
- [data-blok-database-list-group-title] {
2415
- font-size: 13px;
2416
- font-weight: 600;
2417
- color: var(--blok-database-tab-text-active);
2418
- letter-spacing: 0.01em;
2419
- }
2420
-
2421
- /**
2422
- * Row count badge — muted number after the group title.
2423
- */
2424
- [data-blok-database-list-group-count] {
2425
- font-size: 12px;
2426
- color: var(--blok-database-add-text);
2427
- font-weight: 400;
2428
- margin-left: 2px;
2429
- }
2430
-
2431
- /**
2432
- * Rows container within a group — indented slightly, role=list.
2433
- */
2434
- [data-blok-database-list-rows] {
2435
- display: flex;
2436
- flex-direction: column;
2437
- padding-left: 8px;
2438
- }
2439
-
2440
- /* ─── "Add a property" button ────────────────────────────────────────────── */
2441
-
2442
- /**
2443
- * Ghost dashed button that reveals itself on hover.
2444
- * Full-width, sits below the last property row.
2445
- */
2446
- [data-blok-database-drawer-add-prop] {
2447
- display: flex;
2448
- align-items: center;
2449
- gap: 7px;
2450
- width: 100%;
2451
- padding: 6px 8px;
2452
- margin-top: 4px;
2453
- background: none;
2454
- border: 1.5px dashed transparent;
2455
- border-radius: 6px;
2456
- cursor: pointer;
2457
- font-size: 13px;
2458
- font-weight: 500;
2459
- color: var(--blok-database-add-text);
2460
- text-align: left;
2461
- transition:
2462
- background-color 130ms ease,
2463
- border-color 130ms ease,
2464
- color 130ms ease;
2465
- }
2466
-
2467
- [data-blok-database-drawer-add-prop]:hover {
2468
- background-color: var(--blok-database-add-hover-bg);
2469
- border-color: var(--blok-database-add-border);
2470
- color: var(--blok-database-tab-text-active);
2471
- }
2472
-
2473
- [data-blok-database-drawer-add-prop]:active {
2474
- background-color: var(--blok-item-hover-bg);
2475
- }
2476
-
2477
- /* ─── Property type popover ──────────────────────────────────────────────── */
2478
-
2479
- /**
2480
- * Entrance keyframe — subtle pop-in from slightly above.
2481
- */
2482
- @keyframes blok-prop-popover-in {
2483
- from {
2484
- opacity: 0;
2485
- transform: scale(0.96) translateY(-4px);
2486
- }
2487
- to {
2488
- opacity: 1;
2489
- transform: scale(1) translateY(0);
2490
- }
2491
- }
2492
-
2493
- /**
2494
- * Popover container — vertical list, clean card.
2495
- */
2496
- [data-blok-database-property-type-popover] {
2497
- min-width: 210px;
2498
- background: var(--blok-database-popover-bg);
2499
- border-radius: 10px;
2500
- box-shadow: var(--blok-database-popover-shadow);
2501
- padding: 6px;
2502
- animation: blok-prop-popover-in 120ms cubic-bezier(0.16, 1, 0.3, 1) both;
2503
- transform-origin: top left;
2504
- }
2505
-
2506
- /**
2507
- * Section heading — "Property type" label above the list.
2508
- */
2509
- [data-blok-database-property-type-heading] {
2510
- padding: 6px 8px 4px;
2511
- font-size: 11px;
2512
- font-weight: 600;
2513
- letter-spacing: 0.06em;
2514
- text-transform: uppercase;
2515
- color: var(--blok-database-add-text);
2516
- user-select: none;
2517
- }
2518
-
2519
- /**
2520
- * Each property type item — icon chip + label row.
2521
- */
2522
- [data-blok-database-property-type-option] {
2523
- display: flex;
2524
- align-items: center;
2525
- gap: 10px;
2526
- padding: 6px 8px;
2527
- border-radius: 6px;
2528
- cursor: pointer;
2529
- font-size: 13.5px;
2530
- color: var(--blok-database-tab-text-active);
2531
- transition: background-color 100ms ease;
2532
- user-select: none;
2533
- }
2534
-
2535
- [data-blok-database-property-type-option]:hover {
2536
- background-color: var(--blok-database-popover-hover);
2537
- }
2538
-
2539
- [data-blok-database-property-type-option]:active {
2540
- background-color: var(--blok-item-hover-bg);
2541
- }
2542
-
2543
- /**
2544
- * Icon chip — small tinted square to the left of the label.
2545
- */
2546
- [data-blok-database-property-type-option-icon] {
2547
- display: flex;
2548
- align-items: center;
2549
- justify-content: center;
2550
- width: 26px;
2551
- height: 26px;
2552
- border-radius: 5px;
2553
- background: var(--blok-popover-icon-bg);
2554
- color: var(--blok-database-tab-text-active);
2555
- flex-shrink: 0;
2556
- transition: background-color 100ms ease;
2557
- }
2558
-
2559
- [data-blok-database-property-type-option]:hover [data-blok-database-property-type-option-icon] {
2560
- background: var(--blok-popover-icon-active-bg);
2561
- color: var(--blok-active-icon);
2562
- }
2563
-
2564
- [data-blok-database-property-type-option-icon] svg {
2565
- width: 14px;
2566
- height: 14px;
2567
- }