@8btc/xcanvas 0.0.13-beta.2 → 0.0.13-beta.4

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 (105) hide show
  1. package/README.md +0 -1
  2. package/dist/{XCanvas-U4vhDB4P.js → XCanvas-B0iJ5yij.js} +22 -3045
  3. package/dist/{ar-SA-G6X2FPQ2-B0rjBU1A.js → ar-SA-G6X2FPQ2-Dm4Zc_wZ.js} +1 -1
  4. package/dist/{arc-CFnGzqSZ.js → arc-DAHEJxyf.js} +1 -1
  5. package/dist/{az-AZ-76LH7QW2-ibDdCDWn.js → az-AZ-76LH7QW2-CLI1uUz8.js} +1 -1
  6. package/dist/{bg-BG-XCXSNQG7-Cho-LUZn.js → bg-BG-XCXSNQG7-vQrgfW7B.js} +1 -1
  7. package/dist/{blockDiagram-38ab4fdb-CoMKLGNS.js → blockDiagram-38ab4fdb-CehKs6Qg.js} +5 -5
  8. package/dist/{bn-BD-2XOGV67Q-CQN7d-VZ.js → bn-BD-2XOGV67Q-BHyPv9Ql.js} +1 -1
  9. package/dist/{c4Diagram-3d4e48cf-CiC_z7mF.js → c4Diagram-3d4e48cf-Fzu3D3cQ.js} +2 -2
  10. package/dist/{ca-ES-6MX7JW3Y-B4FBnuDR.js → ca-ES-6MX7JW3Y-DjwTX5HJ.js} +1 -1
  11. package/dist/{channel-DB2wWRQI.js → channel-BYr34Jjk.js} +1 -1
  12. package/dist/{chunk-EIO257PC-DfLdTjhQ.js → chunk-EIO257PC-SzNr1zCO.js} +1 -1
  13. package/dist/{classDiagram-70f12bd4-DYi0qN5X.js → classDiagram-70f12bd4-BD4FYAXE.js} +5 -5
  14. package/dist/{classDiagram-v2-f2320105-n09ijPXd.js → classDiagram-v2-f2320105-B7luAOWl.js} +5 -5
  15. package/dist/{clone-DbokASBe.js → clone-Jmdjqz19.js} +1 -1
  16. package/dist/{createText-2e5e7dd3-BjZEF4BI.js → createText-2e5e7dd3-D__b90uw.js} +1 -1
  17. package/dist/{cs-CZ-2BRQDIVT-DW30KQAm.js → cs-CZ-2BRQDIVT-CkmvFbxF.js} +1 -1
  18. package/dist/{da-DK-5WZEPLOC-rHdaOi03.js → da-DK-5WZEPLOC-D0KRUSCN.js} +1 -1
  19. package/dist/{de-DE-XR44H4JA-DLeh-GzF.js → de-DE-XR44H4JA-QDw5vYQh.js} +1 -1
  20. package/dist/{edges-e0da2a9e-ClNSb0aq.js → edges-e0da2a9e-BLrmODxa.js} +3 -3
  21. package/dist/{el-GR-BZB4AONW-oJJnuaL-.js → el-GR-BZB4AONW-BWbZSgxV.js} +1 -1
  22. package/dist/{en-B4ZKOASM-DLD66GtB.js → en-B4ZKOASM-DJX6kUR_.js} +1 -1
  23. package/dist/{erDiagram-9861fffd-CyaaY2oD.js → erDiagram-9861fffd-BwYXop2P.js} +4 -4
  24. package/dist/{es-ES-U4NZUMDT-MyxphZnT.js → es-ES-U4NZUMDT-zotbAsMO.js} +1 -1
  25. package/dist/{eu-ES-A7QVB2H4-MJFbU-pW.js → eu-ES-A7QVB2H4-B8te8Z9_.js} +1 -1
  26. package/dist/{fa-IR-HGAKTJCU-CO9m7IpT.js → fa-IR-HGAKTJCU-B_KgQRSD.js} +1 -1
  27. package/dist/{fi-FI-Z5N7JZ37-BRHZ90qg.js → fi-FI-Z5N7JZ37-BRsWTM7w.js} +1 -1
  28. package/dist/{flowDb-956e92f1-pEUVnm3R.js → flowDb-956e92f1-Bqm4PPD6.js} +1 -1
  29. package/dist/{flowDiagram-66a62f08-JqKFw8Cf.js → flowDiagram-66a62f08-BC_aGCAs.js} +6 -6
  30. package/dist/{flowDiagram-v2-96b9c2cf-DTfHHZpD.js → flowDiagram-v2-96b9c2cf-DUC6yH9G.js} +5 -5
  31. package/dist/{flowchart-elk-definition-4a651766-CQuXvCvI.js → flowchart-elk-definition-4a651766-Bs0pVDUb.js} +5 -5
  32. package/dist/{fr-FR-RHASNOE6-DyI5geWK.js → fr-FR-RHASNOE6-CAE775F9.js} +1 -1
  33. package/dist/{ganttDiagram-c361ad54-COmPlNQA.js → ganttDiagram-c361ad54-CqXoUYlX.js} +3 -3
  34. package/dist/{gitGraphDiagram-72cf32ee-CagMlQAT.js → gitGraphDiagram-72cf32ee-lLtS9H5l.js} +1 -1
  35. package/dist/{gl-ES-HMX3MZ6V-DFeiUbjK.js → gl-ES-HMX3MZ6V-B8Vy6Xi3.js} +1 -1
  36. package/dist/{graph-DVb_bacW.js → graph-CgZ5aZsx.js} +1 -1
  37. package/dist/{he-IL-6SHJWFNN-mV_szomA.js → he-IL-6SHJWFNN-Bqr39T3B.js} +1 -1
  38. package/dist/{hi-IN-IWLTKZ5I-BlFM_clK.js → hi-IN-IWLTKZ5I-d5w9AUdH.js} +1 -1
  39. package/dist/{hu-HU-A5ZG7DT2-Y8Yw33Bt.js → hu-HU-A5ZG7DT2-BCu2yxzB.js} +1 -1
  40. package/dist/{id-ID-SAP4L64H-R3rZpD49.js → id-ID-SAP4L64H-BI4NVeAb.js} +1 -1
  41. package/dist/{image-EDRW2JGV-ejlAaiYg.js → image-EDRW2JGV-B3QTzTa9.js} +1 -1
  42. package/dist/{index-3862675e-Dn8JD9Uy.js → index-3862675e-cmUrRh-v.js} +6 -6
  43. package/dist/{index-CEeBLwLE.js → index-CIjME326.js} +23 -23
  44. package/dist/index.css +0 -11
  45. package/dist/index.d.ts +4 -8
  46. package/dist/index.js +1 -1
  47. package/dist/index.umd.cjs +37 -3060
  48. package/dist/{infoDiagram-f8f76790-C6xFl7fv.js → infoDiagram-f8f76790-L3rljjej.js} +1 -1
  49. package/dist/{it-IT-JPQ66NNP-DvU7fwed.js → it-IT-JPQ66NNP-DaC8A74v.js} +1 -1
  50. package/dist/{ja-JP-DBVTYXUO-Bcsedhs9.js → ja-JP-DBVTYXUO-jzJNpKiI.js} +1 -1
  51. package/dist/{journeyDiagram-49397b02-C1FJ0ANU.js → journeyDiagram-49397b02-CNN-GhfS.js} +3 -3
  52. package/dist/{kaa-6HZHGXH3-CTOfzHIu.js → kaa-6HZHGXH3-Clqghg3I.js} +1 -1
  53. package/dist/{kab-KAB-ZGHBKWFO-DdVpr3PE.js → kab-KAB-ZGHBKWFO-BceqSPbe.js} +1 -1
  54. package/dist/{kk-KZ-P5N5QNE5-BNe2Ffh-.js → kk-KZ-P5N5QNE5-D-zgBjA-.js} +1 -1
  55. package/dist/{km-KH-HSX4SM5Z-F1yHT83W.js → km-KH-HSX4SM5Z-cpJUYmPD.js} +1 -1
  56. package/dist/{ko-KR-MTYHY66A-DEWNjwK9.js → ko-KR-MTYHY66A-D6Kzu4v2.js} +1 -1
  57. package/dist/{ku-TR-6OUDTVRD-Chh5ywvm.js → ku-TR-6OUDTVRD-B3aPoDmd.js} +1 -1
  58. package/dist/{layout-XxT9N8bR.js → layout-6fR2BayV.js} +2 -2
  59. package/dist/{line-C3GKKq2L.js → line-DB3MdsP4.js} +1 -1
  60. package/dist/{linear-9x7YM13T.js → linear-Cy-FA3ke.js} +1 -1
  61. package/dist/{lt-LT-XHIRWOB4--O2phxXY.js → lt-LT-XHIRWOB4-DURSlCUg.js} +1 -1
  62. package/dist/{lv-LV-5QDEKY6T-mQDWeA1F.js → lv-LV-5QDEKY6T-1-fUJKXO.js} +1 -1
  63. package/dist/{mindmap-definition-fc14e90a-DuMycyua.js → mindmap-definition-fc14e90a-C3ED9X0j.js} +3 -3
  64. package/dist/{mr-IN-CRQNXWMA-DcW0cEy0.js → mr-IN-CRQNXWMA-pqaF7FaJ.js} +1 -1
  65. package/dist/{my-MM-5M5IBNSE-BadJwaUA.js → my-MM-5M5IBNSE-D-ghKi0l.js} +1 -1
  66. package/dist/{nb-NO-T6EIAALU-CdIBsIJ0.js → nb-NO-T6EIAALU-1XwmtLNQ.js} +1 -1
  67. package/dist/{nl-NL-IS3SIHDZ-Fx9hpWzS.js → nl-NL-IS3SIHDZ-Cgo5Rebz.js} +1 -1
  68. package/dist/{nn-NO-6E72VCQL-Jfk3NTs_.js → nn-NO-6E72VCQL-CzfLhade.js} +1 -1
  69. package/dist/{oc-FR-POXYY2M6-DprklB5B.js → oc-FR-POXYY2M6-Bfp-BCdR.js} +1 -1
  70. package/dist/{pa-IN-N4M65BXN-DV1dOtYw.js → pa-IN-N4M65BXN-BOx0lM8B.js} +1 -1
  71. package/dist/{percentages-BXMCSKIN-v4R8a569.js → percentages-BXMCSKIN-DUppMeKc.js} +1 -1
  72. package/dist/{pica-ChIou2Op.js → pica-Dqh0Zq1e.js} +1 -1
  73. package/dist/{pieDiagram-8a3498a8-D7byQQiC.js → pieDiagram-8a3498a8-C7zH_4Ip.js} +2 -2
  74. package/dist/{pl-PL-T2D74RX3-BP6nGirQ.js → pl-PL-T2D74RX3-DEoe2Kru.js} +1 -1
  75. package/dist/{pt-BR-5N22H2LF-W_FpW2wH.js → pt-BR-5N22H2LF-DfT-W7sZ.js} +1 -1
  76. package/dist/{pt-PT-UZXXM6DQ-Bq_D4Wr3.js → pt-PT-UZXXM6DQ-F0YQ7QvN.js} +1 -1
  77. package/dist/{quadrantDiagram-120e2f19-CFVPVLc6.js → quadrantDiagram-120e2f19-WbGQ4m0O.js} +2 -2
  78. package/dist/{requirementDiagram-deff3bca-DVswgzrl.js → requirementDiagram-deff3bca-7dshlZZk.js} +4 -4
  79. package/dist/{ro-RO-JPDTUUEW-BQ22AHJN.js → ro-RO-JPDTUUEW-D-mkPXZr.js} +1 -1
  80. package/dist/{ru-RU-B4JR7IUQ-DeNuBOH-.js → ru-RU-B4JR7IUQ-AM1Lea0V.js} +1 -1
  81. package/dist/{sankeyDiagram-04a897e0-Dk8diiNC.js → sankeyDiagram-04a897e0-C9dJ-SYr.js} +1 -1
  82. package/dist/{sequenceDiagram-704730f1-C_-Uw3tj.js → sequenceDiagram-704730f1-XqLo9pdD.js} +2 -2
  83. package/dist/{si-LK-N5RQ5JYF-DEsNcPCX.js → si-LK-N5RQ5JYF-CiVi4SfK.js} +1 -1
  84. package/dist/{sk-SK-C5VTKIMK-CPPxPa_A.js → sk-SK-C5VTKIMK-DUgv1p2q.js} +1 -1
  85. package/dist/{sl-SI-NN7IZMDC-BVLHUIKN.js → sl-SI-NN7IZMDC-DdHTS88J.js} +1 -1
  86. package/dist/{stateDiagram-587899a1-CHXzbAdO.js → stateDiagram-587899a1-DeJyruJa.js} +5 -5
  87. package/dist/{stateDiagram-v2-d93cdb3a-DpmpotNj.js → stateDiagram-v2-d93cdb3a-Dqa3HuQ0.js} +5 -5
  88. package/dist/{styles-6aaf32cf-QHguvqJU.js → styles-6aaf32cf-BHwepsNk.js} +1 -1
  89. package/dist/{styles-9a916d00-DHYXovcF.js → styles-9a916d00-DzhTYqBC.js} +1 -1
  90. package/dist/{styles-c10674c1-Dh7531yB.js → styles-c10674c1-iYVZ6HCS.js} +4 -4
  91. package/dist/{subset-shared.chunk-CbMNI3Ek.js → subset-shared.chunk-8ZYWLj7n.js} +2 -2
  92. package/dist/{subset-worker.chunk-79iBaqH2.js → subset-worker.chunk-DhgxkEv1.js} +2 -2
  93. package/dist/{sv-SE-XGPEYMSR-CILZbGn_.js → sv-SE-XGPEYMSR-BmWCfGex.js} +1 -1
  94. package/dist/{svgDrawCommon-08f97a94-S0LhOmBX.js → svgDrawCommon-08f97a94-CDsTbyDq.js} +1 -1
  95. package/dist/{ta-IN-2NMHFXQM-DnWHxR_2.js → ta-IN-2NMHFXQM-LZ1adc5f.js} +1 -1
  96. package/dist/{th-TH-HPSO5L25-DHxKd8yi.js → th-TH-HPSO5L25-DHkd-lW2.js} +1 -1
  97. package/dist/{timeline-definition-85554ec2-dXeSOEU0.js → timeline-definition-85554ec2-BS2YTNKx.js} +2 -2
  98. package/dist/{tr-TR-DEFEU3FU-C1jcVn7L.js → tr-TR-DEFEU3FU-hrkrEFDI.js} +1 -1
  99. package/dist/{uk-UA-QMV73CPH-DAVr3EQE.js → uk-UA-QMV73CPH-CGcxsevb.js} +1 -1
  100. package/dist/{vi-VN-M7AON7JQ-BQr61UZ5.js → vi-VN-M7AON7JQ-C_M1KZ-1.js} +1 -1
  101. package/dist/{xychartDiagram-e933f94c-BHLEbrpb.js → xychartDiagram-e933f94c-CHSh-HKw.js} +4 -4
  102. package/dist/{zh-CN-LNUGB5OW-Dsj4V4wJ.js → zh-CN-LNUGB5OW-DLn3I05O.js} +1 -1
  103. package/dist/{zh-HK-E62DVLB3-DgtPm9Ts.js → zh-HK-E62DVLB3-CbIb0ChQ.js} +1 -1
  104. package/dist/{zh-TW-RAJ6MFWO-B8XmAqgj.js → zh-TW-RAJ6MFWO-BcmPqfNc.js} +1 -1
  105. package/package.json +1 -1
@@ -40,7 +40,7 @@
40
40
  }
41
41
  const React__namespace = /* @__PURE__ */ _interopNamespaceDefault(React);
42
42
  const ReactDOM__namespace = /* @__PURE__ */ _interopNamespaceDefault(ReactDOM);
43
- const version$4 = "0.0.13-beta.2";
43
+ const version$4 = "0.0.13-beta.4";
44
44
  const packageJson = {
45
45
  version: version$4
46
46
  };
@@ -13090,12 +13090,12 @@ PQIDAQAB`, VITE_APP_DEBUG_ENABLE_TEXT_CONTAINER_BOUNDING_BOX: "false", VITE_APP_
13090
13090
  return t5;
13091
13091
  };
13092
13092
  var Qp$1 = { mouse: 8, pen: 16, touch: 28 }, b9 = 16, e6 = { e: true, s: true, n: true, w: true };
13093
- var jp$1 = { e: true, s: true, n: true, w: true, nw: true, se: true }, Ms = { e: true, s: true, n: true, w: true }, cn$1 = (e3, t5, n3, r3, o3, i3, a3) => {
13093
+ var jp$1 = { e: true, s: true, n: true, w: true, nw: true, se: true }, Ms = { e: true, s: true, n: true, w: true }, cn = (e3, t5, n3, r3, o3, i3, a3) => {
13094
13094
  let [s3, d3] = T$T(u$S(e3 + n3 / 2, t5 + r3 / 2), u$S(o3, i3), a3);
13095
13095
  return [s3 - n3 / 2, d3 - r3 / 2, n3, r3];
13096
13096
  }, Ai = (e3) => !(e3.viewport.isMobile || e3.isTouchScreen && (Bs || _s)), Ls = (e3) => Ai(e3) ? e6 : {}, Ki$1 = ([e3, t5, n3, r3, o3, i3], a3, s3, d3, c3 = {}, l3 = 4, U3 = br) => {
13097
- let p3 = Qp$1[d3], m3 = p3 / s3.value, b3 = p3 / s3.value, E3 = p3 / s3.value, g3 = p3 / s3.value, h3 = n3 - e3, x3 = r3 - t5, y3 = l3 / s3.value, w3 = (p3 - U3 * 2) / (2 * s3.value), I3 = { nw: c3.nw ? void 0 : cn$1(e3 - y3 - E3 + w3, t5 - y3 - g3 + w3, m3, b3, o3, i3, a3), ne: c3.ne ? void 0 : cn$1(n3 + y3 - w3, t5 - y3 - g3 + w3, m3, b3, o3, i3, a3), sw: c3.sw ? void 0 : cn$1(e3 - y3 - E3 + w3, r3 + y3 - w3, m3, b3, o3, i3, a3), se: c3.se ? void 0 : cn$1(n3 + y3 - w3, r3 + y3 - w3, m3, b3, o3, i3, a3), rotation: c3.rotation ? void 0 : cn$1(e3 + h3 / 2 - m3 / 2, t5 - y3 - g3 + w3 - b9 / s3.value, m3, b3, o3, i3, a3) }, S3 = 5 * Qp$1.mouse / s3.value;
13098
- return Math.abs(h3) > S3 && (c3.n || (I3.n = cn$1(e3 + h3 / 2 - m3 / 2, t5 - y3 - g3 + w3, m3, b3, o3, i3, a3)), c3.s || (I3.s = cn$1(e3 + h3 / 2 - m3 / 2, r3 + y3 - w3, m3, b3, o3, i3, a3))), Math.abs(x3) > S3 && (c3.w || (I3.w = cn$1(e3 - y3 - E3 + w3, t5 + x3 / 2 - b3 / 2, m3, b3, o3, i3, a3)), c3.e || (I3.e = cn$1(n3 + y3 - w3, t5 + x3 / 2 - b3 / 2, m3, b3, o3, i3, a3))), I3;
13097
+ let p3 = Qp$1[d3], m3 = p3 / s3.value, b3 = p3 / s3.value, E3 = p3 / s3.value, g3 = p3 / s3.value, h3 = n3 - e3, x3 = r3 - t5, y3 = l3 / s3.value, w3 = (p3 - U3 * 2) / (2 * s3.value), I3 = { nw: c3.nw ? void 0 : cn(e3 - y3 - E3 + w3, t5 - y3 - g3 + w3, m3, b3, o3, i3, a3), ne: c3.ne ? void 0 : cn(n3 + y3 - w3, t5 - y3 - g3 + w3, m3, b3, o3, i3, a3), sw: c3.sw ? void 0 : cn(e3 - y3 - E3 + w3, r3 + y3 - w3, m3, b3, o3, i3, a3), se: c3.se ? void 0 : cn(n3 + y3 - w3, r3 + y3 - w3, m3, b3, o3, i3, a3), rotation: c3.rotation ? void 0 : cn(e3 + h3 / 2 - m3 / 2, t5 - y3 - g3 + w3 - b9 / s3.value, m3, b3, o3, i3, a3) }, S3 = 5 * Qp$1.mouse / s3.value;
13098
+ return Math.abs(h3) > S3 && (c3.n || (I3.n = cn(e3 + h3 / 2 - m3 / 2, t5 - y3 - g3 + w3, m3, b3, o3, i3, a3)), c3.s || (I3.s = cn(e3 + h3 / 2 - m3 / 2, r3 + y3 - w3, m3, b3, o3, i3, a3))), Math.abs(x3) > S3 && (c3.w || (I3.w = cn(e3 - y3 - E3 + w3, t5 + x3 / 2 - b3 / 2, m3, b3, o3, i3, a3)), c3.e || (I3.e = cn(n3 + y3 - w3, t5 + x3 / 2 - b3 / 2, m3, b3, o3, i3, a3))), I3;
13099
13099
  }, Ds = (e3, t5, n3, r3 = "mouse", o3 = e6) => {
13100
13100
  if (e3.locked || X$1(e3)) return {};
13101
13101
  if (e3.type === "freedraw" || ae(e3)) {
@@ -13669,7 +13669,7 @@ PQIDAQAB`, VITE_APP_DEBUG_ENABLE_TEXT_CONTAINER_BOUNDING_BOX: "false", VITE_APP_
13669
13669
  }
13670
13670
  throw new Error("INVALID");
13671
13671
  };
13672
- var t$A = { paste: "Paste", pasteAsPlaintext: "Paste as plaintext", pasteCharts: "Paste charts", selectAll: "Select all", multiSelect: "Add element to selection", moveCanvas: "Move canvas", cut: "Cut", copy: "Copy", copyAsPng: "Copy to clipboard as PNG", copyAsSvg: "Copy to clipboard as SVG", copyText: "Copy to clipboard as text", copySource: "Copy source to clipboard", convertToCode: "Convert to code", bringForward: "Bring forward", sendToBack: "Send to back", bringToFront: "Bring to front", sendBackward: "Send backward", delete: "Delete", copyStyles: "Copy styles", pasteStyles: "Paste styles", stroke: "Stroke", changeStroke: "Change stroke color", background: "Background", changeBackground: "Change background color", fill: "Fill", strokeWidth: "Stroke width", strokeStyle: "Stroke style", strokeStyle_solid: "Solid", strokeStyle_dashed: "Dashed", strokeStyle_dotted: "Dotted", sloppiness: "Sloppiness", opacity: "Opacity", textAlign: "Text align", edges: "Edges", sharp: "Sharp", round: "Round", arrowheads: "Arrowheads", arrowhead_none: "None", arrowhead_arrow: "Arrow", arrowhead_bar: "Bar", arrowhead_circle: "Circle", arrowhead_circle_outline: "Circle (outline)", arrowhead_triangle: "Triangle", arrowhead_triangle_outline: "Triangle (outline)", arrowhead_diamond: "Diamond", arrowhead_diamond_outline: "Diamond (outline)", arrowhead_crowfoot_many: "Crow's foot (many)", arrowhead_crowfoot_one: "Crow's foot (one)", arrowhead_crowfoot_one_or_many: "Crow's foot (one or many)", more_options: "More options", arrowtypes: "Arrow type", arrowtype_sharp: "Sharp arrow", arrowtype_round: "Curved arrow", arrowtype_elbowed: "Elbow arrow", fontSize: "Font size", fontFamily: "Font family", addWatermark: 'Add "Made with Excalidraw"', handDrawn: "Hand-drawn", normal: "Normal", code: "Code", small: "Small", medium: "Medium", large: "Large", veryLarge: "Very large", solid: "Solid", hachure: "Hachure", zigzag: "Zigzag", crossHatch: "Cross-hatch", thin: "Thin", bold: "Bold", left: "Left", center: "Center", right: "Right", extraBold: "Extra bold", architect: "Architect", artist: "Artist", cartoonist: "Cartoonist", fileTitle: "File name", colorPicker: "Color picker", canvasColors: "Used on canvas", canvasBackground: "Canvas background", drawingCanvas: "Drawing canvas", clearCanvas: "Clear canvas", layers: "Layers", actions: "Actions", language: "Language", liveCollaboration: "Live collaboration...", duplicateSelection: "Duplicate", untitled: "Untitled", name: "Name", yourName: "Your name", madeWithExcalidraw: "Made with Excalidraw", group: "Group selection", ungroup: "Ungroup selection", collaborators: "Collaborators", toggleGrid: "Toggle grid", addToLibrary: "Add to library", removeFromLibrary: "Remove from library", libraryLoadingMessage: "Loading library…", libraries: "Browse libraries", loadingScene: "Loading scene…", loadScene: "Load scene from file", align: "Align", alignTop: "Align top", alignBottom: "Align bottom", alignLeft: "Align left", alignRight: "Align right", centerVertically: "Center vertically", centerHorizontally: "Center horizontally", distributeHorizontally: "Distribute horizontally", distributeVertically: "Distribute vertically", flipHorizontal: "Flip horizontal", flipVertical: "Flip vertical", viewMode: "View mode", share: "Share", showStroke: "Show stroke color picker", showBackground: "Show background color picker", showFonts: "Show font picker", toggleTheme: "Toggle light/dark theme", theme: "Theme", personalLib: "Personal Library", excalidrawLib: "Excalidraw Library", decreaseFontSize: "Decrease font size", increaseFontSize: "Increase font size", unbindText: "Unbind text", bindText: "Bind text to the container", createContainerFromText: "Wrap text in a container", link: { edit: "Edit link", editEmbed: "Edit embeddable link", create: "Add link", label: "Link", labelEmbed: "Link & embed", empty: "No link is set", hint: "Type or paste your link here", goToElement: "Go to target element" }, lineEditor: { edit: "Edit line", editArrow: "Edit arrow" }, elementLock: { lock: "Lock", unlock: "Unlock", lockAll: "Lock all", unlockAll: "Unlock all" }, statusPublished: "Published", sidebarLock: "Keep sidebar open", selectAllElementsInFrame: "Select all elements in frame", removeAllElementsFromFrame: "Remove all elements from frame", eyeDropper: "Pick color from canvas", textToDiagram: "Text to diagram", prompt: "Prompt", followUs: "Follow us", discordChat: "Discord chat", zoomToFitViewport: "Zoom to fit in viewport", zoomToFitSelection: "Zoom to fit selection", zoomToFit: "Zoom to fit all elements", installPWA: "Install Excalidraw locally (PWA)", autoResize: "Enable text auto-resizing", imageCropping: "Image cropping", unCroppedDimension: "Uncropped dimension", copyElementLink: "Copy link to object", linkToElement: "Link to object", wrapSelectionInFrame: "Wrap selection in frame" }, r$N = { title: "Link to object", desc: "Click on a shape on canvas or paste a link.", notFound: "Linked object wasn't found on canvas." }, a$D = { noItems: "No items added yet...", hint_emptyLibrary: "Select an item on canvas to add it here, or install a library from the public repository, below.", hint_emptyPrivateLibrary: "Select an item on canvas to add it here." }, i$R = { title: "Find on canvas", noMatch: "No matches found...", singleResult: "result", multipleResults: "results", placeholder: "Find text on canvas..." }, n$O = { clearReset: "Reset the canvas", exportJSON: "Export to file", exportImage: "Export image...", export: "Save to...", copyToClipboard: "Copy to clipboard", copyLink: "Copy link", save: "Save to current file", saveAs: "Save as", load: "Open", getShareableLink: "Get shareable link", close: "Close", selectLanguage: "Select language", scrollBackToContent: "Scroll back to content", zoomIn: "Zoom in", zoomOut: "Zoom out", resetZoom: "Reset zoom", menu: "Menu", done: "Done", edit: "Edit", undo: "Undo", redo: "Redo", resetLibrary: "Reset library", createNewRoom: "Create new room", fullScreen: "Full screen", darkMode: "Dark mode", lightMode: "Light mode", systemMode: "System mode", zenMode: "Zen mode", objectsSnapMode: "Snap to objects", exitZenMode: "Exit zen mode", cancel: "Cancel", clear: "Clear", remove: "Remove", embed: "Toggle embedding", publishLibrary: "Publish", submit: "Submit", confirm: "Confirm", embeddableInteractionButton: "Click to interact" }, l$R = { clearReset: "This will clear the whole canvas. Are you sure?", couldNotCreateShareableLink: "Couldn't create shareable link.", couldNotCreateShareableLinkTooBig: "Couldn't create shareable link: the scene is too big", couldNotLoadInvalidFile: "Couldn't load invalid file", importBackendFailed: "Importing from backend failed.", cannotExportEmptyCanvas: "Cannot export empty canvas.", couldNotCopyToClipboard: "Couldn't copy to clipboard.", decryptFailed: "Couldn't decrypt data.", uploadedSecurly: "The upload has been secured with end-to-end encryption, which means that Excalidraw server and third parties can't read the content.", loadSceneOverridePrompt: "Loading external drawing will replace your existing content. Do you wish to continue?", collabStopOverridePrompt: `Stopping the session will overwrite your previous, locally stored drawing. Are you sure?
13672
+ var t$A = { paste: "Paste", pasteAsPlaintext: "Paste as plaintext", pasteCharts: "Paste charts", selectAll: "Select all", multiSelect: "Add element to selection", moveCanvas: "Move canvas", cut: "Cut", copy: "Copy", copyAsPng: "Copy to clipboard as PNG", copyAsSvg: "Copy to clipboard as SVG", copyText: "Copy to clipboard as text", copySource: "Copy source to clipboard", convertToCode: "Convert to code", bringForward: "Bring forward", sendToBack: "Send to back", bringToFront: "Bring to front", sendBackward: "Send backward", delete: "Delete", copyStyles: "Copy styles", pasteStyles: "Paste styles", stroke: "Stroke", changeStroke: "Change stroke color", background: "Background", changeBackground: "Change background color", fill: "Fill", strokeWidth: "Stroke width", strokeStyle: "Stroke style", strokeStyle_solid: "Solid", strokeStyle_dashed: "Dashed", strokeStyle_dotted: "Dotted", sloppiness: "Sloppiness", opacity: "Opacity", textAlign: "Text align", edges: "Edges", sharp: "Sharp", round: "Round", arrowheads: "Arrowheads", arrowhead_none: "None", arrowhead_arrow: "Arrow", arrowhead_bar: "Bar", arrowhead_circle: "Circle", arrowhead_circle_outline: "Circle (outline)", arrowhead_triangle: "Triangle", arrowhead_triangle_outline: "Triangle (outline)", arrowhead_diamond: "Diamond", arrowhead_diamond_outline: "Diamond (outline)", arrowhead_crowfoot_many: "Crow's foot (many)", arrowhead_crowfoot_one: "Crow's foot (one)", arrowhead_crowfoot_one_or_many: "Crow's foot (one or many)", more_options: "More options", arrowtypes: "Arrow type", arrowtype_sharp: "Sharp arrow", arrowtype_round: "Curved arrow", arrowtype_elbowed: "Elbow arrow", fontSize: "Font size", fontFamily: "Font family", addWatermark: 'Add "Made with Excalidraw"', handDrawn: "Hand-drawn", normal: "Normal", code: "Code", small: "Small", medium: "Medium", large: "Large", veryLarge: "Very large", solid: "Solid", hachure: "Hachure", zigzag: "Zigzag", crossHatch: "Cross-hatch", thin: "Thin", bold: "Bold", left: "Left", center: "Center", right: "Right", extraBold: "Extra bold", architect: "Architect", artist: "Artist", cartoonist: "Cartoonist", fileTitle: "File name", colorPicker: "Color picker", canvasColors: "Used on canvas", canvasBackground: "Canvas background", drawingCanvas: "Drawing canvas", clearCanvas: "Clear canvas", layers: "Layers", actions: "Actions", language: "Language", liveCollaboration: "Live collaboration...", duplicateSelection: "Duplicate", untitled: "Untitled", name: "Name", yourName: "Your name", madeWithExcalidraw: "Made with Excalidraw", group: "Group selection", ungroup: "Ungroup selection", collaborators: "Collaborators", toggleGrid: "Toggle grid", addToLibrary: "Add to library", removeFromLibrary: "Remove from library", libraryLoadingMessage: "Loading library…", libraries: "Browse libraries", loadingScene: "Loading scene…", loadScene: "Load scene from file", align: "Align", alignTop: "Align top", alignBottom: "Align bottom", alignLeft: "Align left", alignRight: "Align right", centerVertically: "Center vertically", centerHorizontally: "Center horizontally", distributeHorizontally: "Distribute horizontally", distributeVertically: "Distribute vertically", flipHorizontal: "Flip horizontal", flipVertical: "Flip vertical", viewMode: "View mode", share: "Share", showStroke: "Show stroke color picker", showBackground: "Show background color picker", showFonts: "Show font picker", toggleTheme: "Toggle light/dark theme", theme: "Theme", personalLib: "Personal Library", excalidrawLib: "Excalidraw Library", decreaseFontSize: "Decrease font size", increaseFontSize: "Increase font size", unbindText: "Unbind text", bindText: "Bind text to the container", createContainerFromText: "Wrap text in a container", link: { edit: "Edit link", editEmbed: "Edit embeddable link", create: "Add link", label: "Link", labelEmbed: "Link & embed", empty: "No link is set", hint: "Type or paste your link here", goToElement: "Go to target element" }, lineEditor: { edit: "Edit line", editArrow: "Edit arrow" }, elementLock: { lock: "Lock", unlock: "Unlock", lockAll: "Lock all", unlockAll: "Unlock all" }, statusPublished: "Published", sidebarLock: "Keep sidebar open", selectAllElementsInFrame: "Select all elements in frame", removeAllElementsFromFrame: "Remove all elements from frame", eyeDropper: "Pick color from canvas", textToDiagram: "Text to diagram", prompt: "Prompt", followUs: "Follow us", discordChat: "Discord chat", zoomToFitViewport: "Zoom to fit in viewport", zoomToFitSelection: "Zoom to fit selection", zoomToFit: "Zoom to fit all elements", installPWA: "Install Excalidraw locally (PWA)", autoResize: "Enable text auto-resizing", imageCropping: "Image cropping", unCroppedDimension: "Uncropped dimension", copyElementLink: "Copy link to object", linkToElement: "Link to object", wrapSelectionInFrame: "Wrap selection in frame" }, r$M = { title: "Link to object", desc: "Click on a shape on canvas or paste a link.", notFound: "Linked object wasn't found on canvas." }, a$D = { noItems: "No items added yet...", hint_emptyLibrary: "Select an item on canvas to add it here, or install a library from the public repository, below.", hint_emptyPrivateLibrary: "Select an item on canvas to add it here." }, i$R = { title: "Find on canvas", noMatch: "No matches found...", singleResult: "result", multipleResults: "results", placeholder: "Find text on canvas..." }, n$O = { clearReset: "Reset the canvas", exportJSON: "Export to file", exportImage: "Export image...", export: "Save to...", copyToClipboard: "Copy to clipboard", copyLink: "Copy link", save: "Save to current file", saveAs: "Save as", load: "Open", getShareableLink: "Get shareable link", close: "Close", selectLanguage: "Select language", scrollBackToContent: "Scroll back to content", zoomIn: "Zoom in", zoomOut: "Zoom out", resetZoom: "Reset zoom", menu: "Menu", done: "Done", edit: "Edit", undo: "Undo", redo: "Redo", resetLibrary: "Reset library", createNewRoom: "Create new room", fullScreen: "Full screen", darkMode: "Dark mode", lightMode: "Light mode", systemMode: "System mode", zenMode: "Zen mode", objectsSnapMode: "Snap to objects", exitZenMode: "Exit zen mode", cancel: "Cancel", clear: "Clear", remove: "Remove", embed: "Toggle embedding", publishLibrary: "Publish", submit: "Submit", confirm: "Confirm", embeddableInteractionButton: "Click to interact" }, l$R = { clearReset: "This will clear the whole canvas. Are you sure?", couldNotCreateShareableLink: "Couldn't create shareable link.", couldNotCreateShareableLinkTooBig: "Couldn't create shareable link: the scene is too big", couldNotLoadInvalidFile: "Couldn't load invalid file", importBackendFailed: "Importing from backend failed.", cannotExportEmptyCanvas: "Cannot export empty canvas.", couldNotCopyToClipboard: "Couldn't copy to clipboard.", decryptFailed: "Couldn't decrypt data.", uploadedSecurly: "The upload has been secured with end-to-end encryption, which means that Excalidraw server and third parties can't read the content.", loadSceneOverridePrompt: "Loading external drawing will replace your existing content. Do you wish to continue?", collabStopOverridePrompt: `Stopping the session will overwrite your previous, locally stored drawing. Are you sure?
13673
13673
 
13674
13674
  (If you want to keep your local drawing, simply close the browser tab instead.)`, errorAddingToLibrary: "Couldn't add item to the library", errorRemovingFromLibrary: "Couldn't remove item from the library", confirmAddLibrary: "This will add {{numShapes}} shape(s) to your library. Are you sure?", imageDoesNotContainScene: "This image does not seem to contain any scene data. Have you enabled scene embedding during export?", cannotRestoreFromImage: "Scene couldn't be restored from this image file", invalidSceneUrl: "Couldn't import scene from the supplied URL. It's either malformed, or doesn't contain valid Excalidraw JSON data.", resetLibrary: "This will clear your library. Are you sure?", removeItemsFromsLibrary: "Delete {{count}} item(s) from library?", invalidEncryptionKey: "Encryption key must be of 22 characters. Live collaboration is disabled.", collabOfflineWarning: `No internet connection available.
13675
13675
  Your changes will not be saved!` }, s$S = { unsupportedFileType: "Unsupported file type.", imageInsertError: "Couldn't insert image. Try again later...", fileTooBig: "File is too big. Maximum allowed size is {{maxSize}}.", svgImageInsertError: "Couldn't insert SVG image. The SVG markup looks invalid.", failedToFetchImage: "Failed to fetch image.", cannotResolveCollabServer: "Couldn't connect to the collab server. Please reload the page and try again.", importLibraryError: "Couldn't load library", saveLibraryError: "Couldn't save library to storage. Please save your library to a file locally to make sure you don't lose changes.", collabSaveFailed: "Couldn't save to the backend database. If problems persist, you should save your file locally to ensure you don't lose your work.", collabSaveFailed_sizeExceeded: "Couldn't save to the backend database, the canvas seems to be too big. You should save the file locally to ensure you don't lose your work.", imageToolNotSupported: "Images are disabled.", brave_measure_text_error: { line1: "Looks like you are using Brave browser with the <bold>Aggressively Block Fingerprinting</bold> setting enabled.", line2: "This could result in breaking the <bold>Text Elements</bold> in your drawings.", line3: "We strongly recommend disabling this setting. You can follow <link>these steps</link> on how to do so.", line4: "If disabling this setting doesn't fix the display of text elements, please open an <issueLink>issue</issueLink> on our GitHub, or write us on <discordLink>Discord</discordLink>" }, libraryElementTypeError: { embeddable: "Embeddable elements cannot be added to the library.", iframe: "IFrame elements cannot be added to the library.", image: "Support for adding images to the library coming soon!" }, asyncPasteFailedOnRead: "Couldn't paste (couldn't read from system clipboard).", asyncPasteFailedOnParse: "Couldn't paste.", copyToSystemClipboardFailed: "Couldn't copy to clipboard." }, d$R = { selection: "Selection", image: "Insert image", rectangle: "Rectangle", diamond: "Diamond", ellipse: "Ellipse", arrow: "Arrow", line: "Line", freedraw: "Draw", text: "Text", library: "Library", lock: "Keep selected tool active after drawing", penMode: "Pen mode - prevent touch", link: "Add / Update link for a selected shape", eraser: "Eraser", frame: "Frame tool", magicframe: "Wireframe to code", embeddable: "Web Embed", laser: "Laser pointer", hand: "Hand (panning tool)", extraTools: "More tools", mermaidToExcalidraw: "Mermaid to Excalidraw" }, c$S = { rectangle: "Rectangle", diamond: "Diamond", ellipse: "Ellipse", arrow: "Arrow", line: "Line", freedraw: "Freedraw", text: "Text", image: "Image", group: "Group", frame: "Frame", magicframe: "Wireframe to code", embeddable: "Web Embed", selection: "Selection", iframe: "IFrame" }, p$S = { canvasActions: "Canvas actions", selectedShapeActions: "Selected shape actions", shapes: "Shapes" }, m$R = { dismissSearch: "Escape to dismiss search", canvasPanning: "To move canvas, hold mouse wheel or spacebar while dragging, or use the hand tool", linearElement: "Click to start multiple points, drag for single line", arrowTool: "Click to start multiple points, drag for single line. Press {{arrowShortcut}} again to change arrow type.", freeDraw: "Click and drag, release when you're finished", text: "Tip: you can also add text by double-clicking anywhere with the selection tool", embeddable: "Click-drag to create a website embed", text_selected: "Double-click or press ENTER to edit text", text_editing: "Press Escape or CtrlOrCmd+ENTER to finish editing", linearElementMulti: "Click on last point or press Escape or Enter to finish", lockAngle: "You can constrain angle by holding SHIFT", resize: `You can constrain proportions by holding SHIFT while resizing,
@@ -13680,7 +13680,7 @@ or hold Alt and click to add new points`, placeImage: "Click to place the image,
13680
13680
  Will increase exported file size.` }, title: { exportToPng: "Export to PNG", exportToSvg: "Export to SVG", copyPngToClipboard: "Copy PNG to clipboard" }, button: { exportToPng: "PNG", exportToSvg: "SVG", copyPngToClipboard: "Copy to clipboard" } }, E$Q = { tooltip: "Your drawings are end-to-end encrypted so Excalidraw's servers will never see them.", link: "Blog post on end-to-end encryption in Excalidraw" }, T$S = { angle: "Angle", shapes: "Shapes", height: "Height", scene: "Scene", selected: "Selected", storage: "Storage", fullTitle: "Canvas & Shape properties", title: "Properties", generalStats: "General", elementProperties: "Shape properties", total: "Total", version: "Version", versionCopy: "Click to copy", versionNotAvailable: "Version not available", width: "Width" }, L$F = { addedToLibrary: "Added to library", copyStyles: "Copied styles.", copyToClipboard: "Copied to clipboard.", copyToClipboardAsPng: `Copied {{exportSelection}} to clipboard as PNG
13681
13681
  ({{exportColorScheme}})`, copyToClipboardAsSvg: `Copied {{exportSelection}} to clipboard as SVG
13682
13682
  ({{exportColorScheme}})`, fileSaved: "File saved.", fileSavedToFilename: "Saved to {filename}", canvas: "canvas", selection: "selection", pasteAsSingleElement: `Use {{shortcut}} to paste as a single element,
13683
- or paste into an existing text editor`, unableToEmbed: "Embedding this url is currently not allowed. Raise an issue on GitHub to request the url whitelisted", unrecognizedLinkFormat: "The link you embedded does not match the expected format. Please try to paste the 'embed' string provided by the source site", elementLinkCopied: "Link copied to clipboard" }, F$u = { transparent: "Transparent", black: "Black", white: "White", red: "Red", pink: "Pink", grape: "Grape", violet: "Violet", gray: "Gray", blue: "Blue", cyan: "Cyan", teal: "Teal", green: "Green", yellow: "Yellow", orange: "Orange", bronze: "Bronze" }, P$9 = { app: { center_heading: "All your data is saved locally in your browser.", center_heading_plus: "Did you want to go to the Excalidraw+ instead?", menuHint: "Export, preferences, languages, ..." }, defaults: { menuHint: "Export, preferences, and more...", center_heading: "Diagrams. Made. Simple.", toolbarHint: "Pick a tool & Start drawing!", helpHint: "Shortcuts & help" } }, A$e = { mostUsedCustomColors: "Most used custom colors", colors: "Colors", shades: "Shades", hexCode: "Hex code", noShades: "No shades available for this color" }, _$t = { action: { exportToImage: { title: "Export as image", button: "Export as image", description: "Export the scene data as an image from which you can import later." }, saveToDisk: { title: "Save to disk", button: "Save to disk", description: "Export the scene data to a file from which you can import later." }, excalidrawPlus: { title: "Excalidraw+", button: "Export to Excalidraw+", description: "Save the scene to your Excalidraw+ workspace." } }, modal: { loadFromFile: { title: "Load from file", button: "Load from file", description: "Loading from a file will <bold>replace your existing content</bold>.<br></br>You can back up your drawing first using one of the options below." }, shareableLink: { title: "Load from link", button: "Replace my content", description: "Loading external drawing will <bold>replace your existing content</bold>.<br></br>You can back up your drawing first by using one of the options below." } } }, D$5 = { title: "Mermaid to Excalidraw", button: "Insert", description: "Currently only <flowchartLink>Flowchart</flowchartLink>,<sequenceLink> Sequence, </sequenceLink> and <classLink>Class </classLink>Diagrams are supported. The other types will be rendered as image in Excalidraw.", syntax: "Mermaid Syntax", preview: "Preview" }, I$5 = { placeholder: "Quick search" }, N$a = { badge: { old: "old" }, sceneFonts: "In this scene", availableFonts: "Available fonts", empty: "No fonts found" }, z$j = { empty: "No users found", hint: { text: "Click on user to follow", followStatus: "You're currently following this user", inCall: "User is in a voice call", micMuted: "User's microphone is muted", isSpeaking: "User is speaking" } }, R$1 = { title: "Command palette", shortcuts: { select: "Select", confirm: "Confirm", close: "Close" }, recents: "Recently used", search: { placeholder: "Search menus, commands, and discover hidden gems", noMatch: "No matching commands..." }, itemNotAvailable: "Command is not available...", shortcutHint: "For Command palette, use {{shortcut}}" }, B$3 = { labels: t$A, elementLink: r$N, library: a$D, search: i$R, buttons: n$O, alerts: l$R, errors: s$S, toolBar: d$R, element: c$S, headings: p$S, hints: m$R, canvasError: u$R, errorSplash: h$R, shareDialog: b$R, roomDialog: g$S, errorDialog: y$T, exportDialog: w$S, helpDialog: k$P, clearCanvasDialog: v$R, publishDialog: f$M, publishSuccessDialog: S$S, confirmDialog: C$z, imageExportDialog: x$U, encrypted: E$Q, stats: T$S, toast: L$F, colors: F$u, welcomeScreen: P$9, colorPicker: A$e, overwriteConfirm: _$t, mermaid: D$5, quickSearch: I$5, fontList: N$a, userList: z$j, commandPalette: R$1 };
13683
+ or paste into an existing text editor`, unableToEmbed: "Embedding this url is currently not allowed. Raise an issue on GitHub to request the url whitelisted", unrecognizedLinkFormat: "The link you embedded does not match the expected format. Please try to paste the 'embed' string provided by the source site", elementLinkCopied: "Link copied to clipboard" }, F$u = { transparent: "Transparent", black: "Black", white: "White", red: "Red", pink: "Pink", grape: "Grape", violet: "Violet", gray: "Gray", blue: "Blue", cyan: "Cyan", teal: "Teal", green: "Green", yellow: "Yellow", orange: "Orange", bronze: "Bronze" }, P$9 = { app: { center_heading: "All your data is saved locally in your browser.", center_heading_plus: "Did you want to go to the Excalidraw+ instead?", menuHint: "Export, preferences, languages, ..." }, defaults: { menuHint: "Export, preferences, and more...", center_heading: "Diagrams. Made. Simple.", toolbarHint: "Pick a tool & Start drawing!", helpHint: "Shortcuts & help" } }, A$e = { mostUsedCustomColors: "Most used custom colors", colors: "Colors", shades: "Shades", hexCode: "Hex code", noShades: "No shades available for this color" }, _$t = { action: { exportToImage: { title: "Export as image", button: "Export as image", description: "Export the scene data as an image from which you can import later." }, saveToDisk: { title: "Save to disk", button: "Save to disk", description: "Export the scene data to a file from which you can import later." }, excalidrawPlus: { title: "Excalidraw+", button: "Export to Excalidraw+", description: "Save the scene to your Excalidraw+ workspace." } }, modal: { loadFromFile: { title: "Load from file", button: "Load from file", description: "Loading from a file will <bold>replace your existing content</bold>.<br></br>You can back up your drawing first using one of the options below." }, shareableLink: { title: "Load from link", button: "Replace my content", description: "Loading external drawing will <bold>replace your existing content</bold>.<br></br>You can back up your drawing first by using one of the options below." } } }, D$5 = { title: "Mermaid to Excalidraw", button: "Insert", description: "Currently only <flowchartLink>Flowchart</flowchartLink>,<sequenceLink> Sequence, </sequenceLink> and <classLink>Class </classLink>Diagrams are supported. The other types will be rendered as image in Excalidraw.", syntax: "Mermaid Syntax", preview: "Preview" }, I$5 = { placeholder: "Quick search" }, N$a = { badge: { old: "old" }, sceneFonts: "In this scene", availableFonts: "Available fonts", empty: "No fonts found" }, z$j = { empty: "No users found", hint: { text: "Click on user to follow", followStatus: "You're currently following this user", inCall: "User is in a voice call", micMuted: "User's microphone is muted", isSpeaking: "User is speaking" } }, R$1 = { title: "Command palette", shortcuts: { select: "Select", confirm: "Confirm", close: "Close" }, recents: "Recently used", search: { placeholder: "Search menus, commands, and discover hidden gems", noMatch: "No matching commands..." }, itemNotAvailable: "Command is not available...", shortcutHint: "For Command palette, use {{shortcut}}" }, B$3 = { labels: t$A, elementLink: r$M, library: a$D, search: i$R, buttons: n$O, alerts: l$R, errors: s$S, toolBar: d$R, element: c$S, headings: p$S, hints: m$R, canvasError: u$R, errorSplash: h$R, shareDialog: b$R, roomDialog: g$S, errorDialog: y$T, exportDialog: w$S, helpDialog: k$P, clearCanvasDialog: v$R, publishDialog: f$M, publishSuccessDialog: S$S, confirmDialog: C$z, imageExportDialog: x$U, encrypted: E$Q, stats: T$S, toast: L$F, colors: F$u, welcomeScreen: P$9, colorPicker: A$e, overwriteConfirm: _$t, mermaid: D$5, quickSearch: I$5, fontList: N$a, userList: z$j, commandPalette: R$1 };
13684
13684
  var R = 100, k$O = 36, N$9 = { "ar-SA": 94, "az-AZ": 17, "bg-BG": 71, "bn-BD": 52, "ca-ES": 83, "cs-CZ": 86, "da-DK": 61, "de-DE": 100, "el-GR": 80, en: R, "es-ES": 96, "eu-ES": 97, "fa-IR": 84, "fi-FI": 76, "fr-FR": 99, "gl-ES": 86, "he-IL": 77, "hi-IN": 76, "hu-HU": 76, "id-ID": 91, "it-IT": 98, "ja-JP": 90, kaa: k$O, "kab-KAB": 76, "kk-KZ": 18, "km-KH": 83, "ko-KR": 100, "ku-TR": 87, "lt-LT": 48, "lv-LV": 77, "mr-IN": 98, "my-MM": 35, "nb-NO": 93, "nl-NL": 75, "nn-NO": 67, "oc-FR": 92, "pa-IN": 78, "pl-PL": 99, "pt-BR": 91, "pt-PT": 83, "ro-RO": 99, "ru-RU": 92, "si-LK": 7, "sk-SK": 100, "sl-SI": 100, "sv-SE": 100, "ta-IN": 81, "th-TH": 44, "tr-TR": 87, "uk-UA": 93, "vi-VN": 49, "zh-CN": 100, "zh-HK": 22, "zh-TW": 100 };
13685
13685
  const __vite_import_meta_env__$3 = {};
13686
13686
  const isSelfAtom = (atom2, a3) => atom2.unstable_is ? atom2.unstable_is(a3) : a3 === atom2;
@@ -27434,2973 +27434,6 @@ TTD mermaid definition render errror: ${M.message}`, "color: yellow"), le("ai",
27434
27434
  }
27435
27435
  ) });
27436
27436
  }
27437
- function r$M(e3) {
27438
- var t5, f3, n3 = "";
27439
- if ("string" == typeof e3 || "number" == typeof e3) n3 += e3;
27440
- else if ("object" == typeof e3) if (Array.isArray(e3)) {
27441
- var o3 = e3.length;
27442
- for (t5 = 0; t5 < o3; t5++) e3[t5] && (f3 = r$M(e3[t5])) && (n3 && (n3 += " "), n3 += f3);
27443
- } else for (f3 in e3) e3[f3] && (n3 && (n3 += " "), n3 += f3);
27444
- return n3;
27445
- }
27446
- function clsx() {
27447
- for (var e3, t5, f3 = 0, n3 = "", o3 = arguments.length; f3 < o3; f3++) (e3 = arguments[f3]) && (t5 = r$M(e3)) && (n3 && (n3 += " "), n3 += t5);
27448
- return n3;
27449
- }
27450
- const CLASS_PART_SEPARATOR = "-";
27451
- const createClassGroupUtils = (config2) => {
27452
- const classMap = createClassMap(config2);
27453
- const {
27454
- conflictingClassGroups,
27455
- conflictingClassGroupModifiers
27456
- } = config2;
27457
- const getClassGroupId = (className) => {
27458
- const classParts = className.split(CLASS_PART_SEPARATOR);
27459
- if (classParts[0] === "" && classParts.length !== 1) {
27460
- classParts.shift();
27461
- }
27462
- return getGroupRecursive(classParts, classMap) || getGroupIdForArbitraryProperty(className);
27463
- };
27464
- const getConflictingClassGroupIds = (classGroupId, hasPostfixModifier) => {
27465
- const conflicts = conflictingClassGroups[classGroupId] || [];
27466
- if (hasPostfixModifier && conflictingClassGroupModifiers[classGroupId]) {
27467
- return [...conflicts, ...conflictingClassGroupModifiers[classGroupId]];
27468
- }
27469
- return conflicts;
27470
- };
27471
- return {
27472
- getClassGroupId,
27473
- getConflictingClassGroupIds
27474
- };
27475
- };
27476
- const getGroupRecursive = (classParts, classPartObject) => {
27477
- if (classParts.length === 0) {
27478
- return classPartObject.classGroupId;
27479
- }
27480
- const currentClassPart = classParts[0];
27481
- const nextClassPartObject = classPartObject.nextPart.get(currentClassPart);
27482
- const classGroupFromNextClassPart = nextClassPartObject ? getGroupRecursive(classParts.slice(1), nextClassPartObject) : void 0;
27483
- if (classGroupFromNextClassPart) {
27484
- return classGroupFromNextClassPart;
27485
- }
27486
- if (classPartObject.validators.length === 0) {
27487
- return void 0;
27488
- }
27489
- const classRest = classParts.join(CLASS_PART_SEPARATOR);
27490
- return classPartObject.validators.find(({
27491
- validator
27492
- }) => validator(classRest))?.classGroupId;
27493
- };
27494
- const arbitraryPropertyRegex = /^\[(.+)\]$/;
27495
- const getGroupIdForArbitraryProperty = (className) => {
27496
- if (arbitraryPropertyRegex.test(className)) {
27497
- const arbitraryPropertyClassName = arbitraryPropertyRegex.exec(className)[1];
27498
- const property2 = arbitraryPropertyClassName?.substring(0, arbitraryPropertyClassName.indexOf(":"));
27499
- if (property2) {
27500
- return "arbitrary.." + property2;
27501
- }
27502
- }
27503
- };
27504
- const createClassMap = (config2) => {
27505
- const {
27506
- theme: theme2,
27507
- classGroups
27508
- } = config2;
27509
- const classMap = {
27510
- nextPart: /* @__PURE__ */ new Map(),
27511
- validators: []
27512
- };
27513
- for (const classGroupId in classGroups) {
27514
- processClassesRecursively(classGroups[classGroupId], classMap, classGroupId, theme2);
27515
- }
27516
- return classMap;
27517
- };
27518
- const processClassesRecursively = (classGroup, classPartObject, classGroupId, theme2) => {
27519
- classGroup.forEach((classDefinition) => {
27520
- if (typeof classDefinition === "string") {
27521
- const classPartObjectToEdit = classDefinition === "" ? classPartObject : getPart(classPartObject, classDefinition);
27522
- classPartObjectToEdit.classGroupId = classGroupId;
27523
- return;
27524
- }
27525
- if (typeof classDefinition === "function") {
27526
- if (isThemeGetter(classDefinition)) {
27527
- processClassesRecursively(classDefinition(theme2), classPartObject, classGroupId, theme2);
27528
- return;
27529
- }
27530
- classPartObject.validators.push({
27531
- validator: classDefinition,
27532
- classGroupId
27533
- });
27534
- return;
27535
- }
27536
- Object.entries(classDefinition).forEach(([key, classGroup2]) => {
27537
- processClassesRecursively(classGroup2, getPart(classPartObject, key), classGroupId, theme2);
27538
- });
27539
- });
27540
- };
27541
- const getPart = (classPartObject, path2) => {
27542
- let currentClassPartObject = classPartObject;
27543
- path2.split(CLASS_PART_SEPARATOR).forEach((pathPart) => {
27544
- if (!currentClassPartObject.nextPart.has(pathPart)) {
27545
- currentClassPartObject.nextPart.set(pathPart, {
27546
- nextPart: /* @__PURE__ */ new Map(),
27547
- validators: []
27548
- });
27549
- }
27550
- currentClassPartObject = currentClassPartObject.nextPart.get(pathPart);
27551
- });
27552
- return currentClassPartObject;
27553
- };
27554
- const isThemeGetter = (func) => func.isThemeGetter;
27555
- const createLruCache = (maxCacheSize) => {
27556
- if (maxCacheSize < 1) {
27557
- return {
27558
- get: () => void 0,
27559
- set: () => {
27560
- }
27561
- };
27562
- }
27563
- let cacheSize = 0;
27564
- let cache2 = /* @__PURE__ */ new Map();
27565
- let previousCache = /* @__PURE__ */ new Map();
27566
- const update2 = (key, value2) => {
27567
- cache2.set(key, value2);
27568
- cacheSize++;
27569
- if (cacheSize > maxCacheSize) {
27570
- cacheSize = 0;
27571
- previousCache = cache2;
27572
- cache2 = /* @__PURE__ */ new Map();
27573
- }
27574
- };
27575
- return {
27576
- get(key) {
27577
- let value2 = cache2.get(key);
27578
- if (value2 !== void 0) {
27579
- return value2;
27580
- }
27581
- if ((value2 = previousCache.get(key)) !== void 0) {
27582
- update2(key, value2);
27583
- return value2;
27584
- }
27585
- },
27586
- set(key, value2) {
27587
- if (cache2.has(key)) {
27588
- cache2.set(key, value2);
27589
- } else {
27590
- update2(key, value2);
27591
- }
27592
- }
27593
- };
27594
- };
27595
- const IMPORTANT_MODIFIER = "!";
27596
- const MODIFIER_SEPARATOR = ":";
27597
- const MODIFIER_SEPARATOR_LENGTH = MODIFIER_SEPARATOR.length;
27598
- const createParseClassName = (config2) => {
27599
- const {
27600
- prefix,
27601
- experimentalParseClassName
27602
- } = config2;
27603
- let parseClassName = (className) => {
27604
- const modifiers = [];
27605
- let bracketDepth = 0;
27606
- let parenDepth = 0;
27607
- let modifierStart = 0;
27608
- let postfixModifierPosition;
27609
- for (let index2 = 0; index2 < className.length; index2++) {
27610
- let currentCharacter = className[index2];
27611
- if (bracketDepth === 0 && parenDepth === 0) {
27612
- if (currentCharacter === MODIFIER_SEPARATOR) {
27613
- modifiers.push(className.slice(modifierStart, index2));
27614
- modifierStart = index2 + MODIFIER_SEPARATOR_LENGTH;
27615
- continue;
27616
- }
27617
- if (currentCharacter === "/") {
27618
- postfixModifierPosition = index2;
27619
- continue;
27620
- }
27621
- }
27622
- if (currentCharacter === "[") {
27623
- bracketDepth++;
27624
- } else if (currentCharacter === "]") {
27625
- bracketDepth--;
27626
- } else if (currentCharacter === "(") {
27627
- parenDepth++;
27628
- } else if (currentCharacter === ")") {
27629
- parenDepth--;
27630
- }
27631
- }
27632
- const baseClassNameWithImportantModifier = modifiers.length === 0 ? className : className.substring(modifierStart);
27633
- const baseClassName = stripImportantModifier(baseClassNameWithImportantModifier);
27634
- const hasImportantModifier = baseClassName !== baseClassNameWithImportantModifier;
27635
- const maybePostfixModifierPosition = postfixModifierPosition && postfixModifierPosition > modifierStart ? postfixModifierPosition - modifierStart : void 0;
27636
- return {
27637
- modifiers,
27638
- hasImportantModifier,
27639
- baseClassName,
27640
- maybePostfixModifierPosition
27641
- };
27642
- };
27643
- if (prefix) {
27644
- const fullPrefix = prefix + MODIFIER_SEPARATOR;
27645
- const parseClassNameOriginal = parseClassName;
27646
- parseClassName = (className) => className.startsWith(fullPrefix) ? parseClassNameOriginal(className.substring(fullPrefix.length)) : {
27647
- isExternal: true,
27648
- modifiers: [],
27649
- hasImportantModifier: false,
27650
- baseClassName: className,
27651
- maybePostfixModifierPosition: void 0
27652
- };
27653
- }
27654
- if (experimentalParseClassName) {
27655
- const parseClassNameOriginal = parseClassName;
27656
- parseClassName = (className) => experimentalParseClassName({
27657
- className,
27658
- parseClassName: parseClassNameOriginal
27659
- });
27660
- }
27661
- return parseClassName;
27662
- };
27663
- const stripImportantModifier = (baseClassName) => {
27664
- if (baseClassName.endsWith(IMPORTANT_MODIFIER)) {
27665
- return baseClassName.substring(0, baseClassName.length - 1);
27666
- }
27667
- if (baseClassName.startsWith(IMPORTANT_MODIFIER)) {
27668
- return baseClassName.substring(1);
27669
- }
27670
- return baseClassName;
27671
- };
27672
- const createSortModifiers = (config2) => {
27673
- const orderSensitiveModifiers = Object.fromEntries(config2.orderSensitiveModifiers.map((modifier) => [modifier, true]));
27674
- const sortModifiers = (modifiers) => {
27675
- if (modifiers.length <= 1) {
27676
- return modifiers;
27677
- }
27678
- const sortedModifiers = [];
27679
- let unsortedModifiers = [];
27680
- modifiers.forEach((modifier) => {
27681
- const isPositionSensitive = modifier[0] === "[" || orderSensitiveModifiers[modifier];
27682
- if (isPositionSensitive) {
27683
- sortedModifiers.push(...unsortedModifiers.sort(), modifier);
27684
- unsortedModifiers = [];
27685
- } else {
27686
- unsortedModifiers.push(modifier);
27687
- }
27688
- });
27689
- sortedModifiers.push(...unsortedModifiers.sort());
27690
- return sortedModifiers;
27691
- };
27692
- return sortModifiers;
27693
- };
27694
- const createConfigUtils = (config2) => ({
27695
- cache: createLruCache(config2.cacheSize),
27696
- parseClassName: createParseClassName(config2),
27697
- sortModifiers: createSortModifiers(config2),
27698
- ...createClassGroupUtils(config2)
27699
- });
27700
- const SPLIT_CLASSES_REGEX = /\s+/;
27701
- const mergeClassList = (classList2, configUtils) => {
27702
- const {
27703
- parseClassName,
27704
- getClassGroupId,
27705
- getConflictingClassGroupIds,
27706
- sortModifiers
27707
- } = configUtils;
27708
- const classGroupsInConflict = [];
27709
- const classNames = classList2.trim().split(SPLIT_CLASSES_REGEX);
27710
- let result = "";
27711
- for (let index2 = classNames.length - 1; index2 >= 0; index2 -= 1) {
27712
- const originalClassName = classNames[index2];
27713
- const {
27714
- isExternal,
27715
- modifiers,
27716
- hasImportantModifier,
27717
- baseClassName,
27718
- maybePostfixModifierPosition
27719
- } = parseClassName(originalClassName);
27720
- if (isExternal) {
27721
- result = originalClassName + (result.length > 0 ? " " + result : result);
27722
- continue;
27723
- }
27724
- let hasPostfixModifier = !!maybePostfixModifierPosition;
27725
- let classGroupId = getClassGroupId(hasPostfixModifier ? baseClassName.substring(0, maybePostfixModifierPosition) : baseClassName);
27726
- if (!classGroupId) {
27727
- if (!hasPostfixModifier) {
27728
- result = originalClassName + (result.length > 0 ? " " + result : result);
27729
- continue;
27730
- }
27731
- classGroupId = getClassGroupId(baseClassName);
27732
- if (!classGroupId) {
27733
- result = originalClassName + (result.length > 0 ? " " + result : result);
27734
- continue;
27735
- }
27736
- hasPostfixModifier = false;
27737
- }
27738
- const variantModifier = sortModifiers(modifiers).join(":");
27739
- const modifierId = hasImportantModifier ? variantModifier + IMPORTANT_MODIFIER : variantModifier;
27740
- const classId = modifierId + classGroupId;
27741
- if (classGroupsInConflict.includes(classId)) {
27742
- continue;
27743
- }
27744
- classGroupsInConflict.push(classId);
27745
- const conflictGroups = getConflictingClassGroupIds(classGroupId, hasPostfixModifier);
27746
- for (let i3 = 0; i3 < conflictGroups.length; ++i3) {
27747
- const group = conflictGroups[i3];
27748
- classGroupsInConflict.push(modifierId + group);
27749
- }
27750
- result = originalClassName + (result.length > 0 ? " " + result : result);
27751
- }
27752
- return result;
27753
- };
27754
- function twJoin() {
27755
- let index2 = 0;
27756
- let argument;
27757
- let resolvedValue;
27758
- let string2 = "";
27759
- while (index2 < arguments.length) {
27760
- if (argument = arguments[index2++]) {
27761
- if (resolvedValue = toValue(argument)) {
27762
- string2 && (string2 += " ");
27763
- string2 += resolvedValue;
27764
- }
27765
- }
27766
- }
27767
- return string2;
27768
- }
27769
- const toValue = (mix2) => {
27770
- if (typeof mix2 === "string") {
27771
- return mix2;
27772
- }
27773
- let resolvedValue;
27774
- let string2 = "";
27775
- for (let k2 = 0; k2 < mix2.length; k2++) {
27776
- if (mix2[k2]) {
27777
- if (resolvedValue = toValue(mix2[k2])) {
27778
- string2 && (string2 += " ");
27779
- string2 += resolvedValue;
27780
- }
27781
- }
27782
- }
27783
- return string2;
27784
- };
27785
- function createTailwindMerge(createConfigFirst, ...createConfigRest) {
27786
- let configUtils;
27787
- let cacheGet;
27788
- let cacheSet;
27789
- let functionToCall = initTailwindMerge;
27790
- function initTailwindMerge(classList2) {
27791
- const config2 = createConfigRest.reduce((previousConfig, createConfigCurrent) => createConfigCurrent(previousConfig), createConfigFirst());
27792
- configUtils = createConfigUtils(config2);
27793
- cacheGet = configUtils.cache.get;
27794
- cacheSet = configUtils.cache.set;
27795
- functionToCall = tailwindMerge;
27796
- return tailwindMerge(classList2);
27797
- }
27798
- function tailwindMerge(classList2) {
27799
- const cachedResult = cacheGet(classList2);
27800
- if (cachedResult) {
27801
- return cachedResult;
27802
- }
27803
- const result = mergeClassList(classList2, configUtils);
27804
- cacheSet(classList2, result);
27805
- return result;
27806
- }
27807
- return function callTailwindMerge() {
27808
- return functionToCall(twJoin.apply(null, arguments));
27809
- };
27810
- }
27811
- const fromTheme = (key) => {
27812
- const themeGetter = (theme2) => theme2[key] || [];
27813
- themeGetter.isThemeGetter = true;
27814
- return themeGetter;
27815
- };
27816
- const arbitraryValueRegex = /^\[(?:(\w[\w-]*):)?(.+)\]$/i;
27817
- const arbitraryVariableRegex = /^\((?:(\w[\w-]*):)?(.+)\)$/i;
27818
- const fractionRegex = /^\d+\/\d+$/;
27819
- const tshirtUnitRegex = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/;
27820
- const lengthUnitRegex = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/;
27821
- const colorFunctionRegex = /^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/;
27822
- const shadowRegex = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/;
27823
- const imageRegex = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/;
27824
- const isFraction = (value2) => fractionRegex.test(value2);
27825
- const isNumber = (value2) => !!value2 && !Number.isNaN(Number(value2));
27826
- const isInteger$1 = (value2) => !!value2 && Number.isInteger(Number(value2));
27827
- const isPercent = (value2) => value2.endsWith("%") && isNumber(value2.slice(0, -1));
27828
- const isTshirtSize = (value2) => tshirtUnitRegex.test(value2);
27829
- const isAny = () => true;
27830
- const isLengthOnly = (value2) => (
27831
- // `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
27832
- // For example, `hsl(0 0% 0%)` would be classified as a length without this check.
27833
- // I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
27834
- lengthUnitRegex.test(value2) && !colorFunctionRegex.test(value2)
27835
- );
27836
- const isNever = () => false;
27837
- const isShadow = (value2) => shadowRegex.test(value2);
27838
- const isImage = (value2) => imageRegex.test(value2);
27839
- const isAnyNonArbitrary = (value2) => !isArbitraryValue(value2) && !isArbitraryVariable(value2);
27840
- const isArbitrarySize = (value2) => getIsArbitraryValue(value2, isLabelSize, isNever);
27841
- const isArbitraryValue = (value2) => arbitraryValueRegex.test(value2);
27842
- const isArbitraryLength = (value2) => getIsArbitraryValue(value2, isLabelLength, isLengthOnly);
27843
- const isArbitraryNumber = (value2) => getIsArbitraryValue(value2, isLabelNumber, isNumber);
27844
- const isArbitraryPosition = (value2) => getIsArbitraryValue(value2, isLabelPosition, isNever);
27845
- const isArbitraryImage = (value2) => getIsArbitraryValue(value2, isLabelImage, isImage);
27846
- const isArbitraryShadow = (value2) => getIsArbitraryValue(value2, isLabelShadow, isShadow);
27847
- const isArbitraryVariable = (value2) => arbitraryVariableRegex.test(value2);
27848
- const isArbitraryVariableLength = (value2) => getIsArbitraryVariable(value2, isLabelLength);
27849
- const isArbitraryVariableFamilyName = (value2) => getIsArbitraryVariable(value2, isLabelFamilyName);
27850
- const isArbitraryVariablePosition = (value2) => getIsArbitraryVariable(value2, isLabelPosition);
27851
- const isArbitraryVariableSize = (value2) => getIsArbitraryVariable(value2, isLabelSize);
27852
- const isArbitraryVariableImage = (value2) => getIsArbitraryVariable(value2, isLabelImage);
27853
- const isArbitraryVariableShadow = (value2) => getIsArbitraryVariable(value2, isLabelShadow, true);
27854
- const getIsArbitraryValue = (value2, testLabel, testValue) => {
27855
- const result = arbitraryValueRegex.exec(value2);
27856
- if (result) {
27857
- if (result[1]) {
27858
- return testLabel(result[1]);
27859
- }
27860
- return testValue(result[2]);
27861
- }
27862
- return false;
27863
- };
27864
- const getIsArbitraryVariable = (value2, testLabel, shouldMatchNoLabel = false) => {
27865
- const result = arbitraryVariableRegex.exec(value2);
27866
- if (result) {
27867
- if (result[1]) {
27868
- return testLabel(result[1]);
27869
- }
27870
- return shouldMatchNoLabel;
27871
- }
27872
- return false;
27873
- };
27874
- const isLabelPosition = (label) => label === "position" || label === "percentage";
27875
- const isLabelImage = (label) => label === "image" || label === "url";
27876
- const isLabelSize = (label) => label === "length" || label === "size" || label === "bg-size";
27877
- const isLabelLength = (label) => label === "length";
27878
- const isLabelNumber = (label) => label === "number";
27879
- const isLabelFamilyName = (label) => label === "family-name";
27880
- const isLabelShadow = (label) => label === "shadow";
27881
- const getDefaultConfig = () => {
27882
- const themeColor = fromTheme("color");
27883
- const themeFont = fromTheme("font");
27884
- const themeText = fromTheme("text");
27885
- const themeFontWeight = fromTheme("font-weight");
27886
- const themeTracking = fromTheme("tracking");
27887
- const themeLeading = fromTheme("leading");
27888
- const themeBreakpoint = fromTheme("breakpoint");
27889
- const themeContainer = fromTheme("container");
27890
- const themeSpacing = fromTheme("spacing");
27891
- const themeRadius = fromTheme("radius");
27892
- const themeShadow = fromTheme("shadow");
27893
- const themeInsetShadow = fromTheme("inset-shadow");
27894
- const themeTextShadow = fromTheme("text-shadow");
27895
- const themeDropShadow = fromTheme("drop-shadow");
27896
- const themeBlur = fromTheme("blur");
27897
- const themePerspective = fromTheme("perspective");
27898
- const themeAspect = fromTheme("aspect");
27899
- const themeEase = fromTheme("ease");
27900
- const themeAnimate = fromTheme("animate");
27901
- const scaleBreak = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"];
27902
- const scalePosition = () => [
27903
- "center",
27904
- "top",
27905
- "bottom",
27906
- "left",
27907
- "right",
27908
- "top-left",
27909
- // Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
27910
- "left-top",
27911
- "top-right",
27912
- // Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
27913
- "right-top",
27914
- "bottom-right",
27915
- // Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
27916
- "right-bottom",
27917
- "bottom-left",
27918
- // Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
27919
- "left-bottom"
27920
- ];
27921
- const scalePositionWithArbitrary = () => [...scalePosition(), isArbitraryVariable, isArbitraryValue];
27922
- const scaleOverflow = () => ["auto", "hidden", "clip", "visible", "scroll"];
27923
- const scaleOverscroll = () => ["auto", "contain", "none"];
27924
- const scaleUnambiguousSpacing = () => [isArbitraryVariable, isArbitraryValue, themeSpacing];
27925
- const scaleInset = () => [isFraction, "full", "auto", ...scaleUnambiguousSpacing()];
27926
- const scaleGridTemplateColsRows = () => [isInteger$1, "none", "subgrid", isArbitraryVariable, isArbitraryValue];
27927
- const scaleGridColRowStartAndEnd = () => ["auto", {
27928
- span: ["full", isInteger$1, isArbitraryVariable, isArbitraryValue]
27929
- }, isInteger$1, isArbitraryVariable, isArbitraryValue];
27930
- const scaleGridColRowStartOrEnd = () => [isInteger$1, "auto", isArbitraryVariable, isArbitraryValue];
27931
- const scaleGridAutoColsRows = () => ["auto", "min", "max", "fr", isArbitraryVariable, isArbitraryValue];
27932
- const scaleAlignPrimaryAxis = () => ["start", "end", "center", "between", "around", "evenly", "stretch", "baseline", "center-safe", "end-safe"];
27933
- const scaleAlignSecondaryAxis = () => ["start", "end", "center", "stretch", "center-safe", "end-safe"];
27934
- const scaleMargin = () => ["auto", ...scaleUnambiguousSpacing()];
27935
- const scaleSizing = () => [isFraction, "auto", "full", "dvw", "dvh", "lvw", "lvh", "svw", "svh", "min", "max", "fit", ...scaleUnambiguousSpacing()];
27936
- const scaleColor = () => [themeColor, isArbitraryVariable, isArbitraryValue];
27937
- const scaleBgPosition = () => [...scalePosition(), isArbitraryVariablePosition, isArbitraryPosition, {
27938
- position: [isArbitraryVariable, isArbitraryValue]
27939
- }];
27940
- const scaleBgRepeat = () => ["no-repeat", {
27941
- repeat: ["", "x", "y", "space", "round"]
27942
- }];
27943
- const scaleBgSize = () => ["auto", "cover", "contain", isArbitraryVariableSize, isArbitrarySize, {
27944
- size: [isArbitraryVariable, isArbitraryValue]
27945
- }];
27946
- const scaleGradientStopPosition = () => [isPercent, isArbitraryVariableLength, isArbitraryLength];
27947
- const scaleRadius = () => [
27948
- // Deprecated since Tailwind CSS v4.0.0
27949
- "",
27950
- "none",
27951
- "full",
27952
- themeRadius,
27953
- isArbitraryVariable,
27954
- isArbitraryValue
27955
- ];
27956
- const scaleBorderWidth = () => ["", isNumber, isArbitraryVariableLength, isArbitraryLength];
27957
- const scaleLineStyle = () => ["solid", "dashed", "dotted", "double"];
27958
- const scaleBlendMode = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"];
27959
- const scaleMaskImagePosition = () => [isNumber, isPercent, isArbitraryVariablePosition, isArbitraryPosition];
27960
- const scaleBlur = () => [
27961
- // Deprecated since Tailwind CSS v4.0.0
27962
- "",
27963
- "none",
27964
- themeBlur,
27965
- isArbitraryVariable,
27966
- isArbitraryValue
27967
- ];
27968
- const scaleRotate = () => ["none", isNumber, isArbitraryVariable, isArbitraryValue];
27969
- const scaleScale = () => ["none", isNumber, isArbitraryVariable, isArbitraryValue];
27970
- const scaleSkew = () => [isNumber, isArbitraryVariable, isArbitraryValue];
27971
- const scaleTranslate = () => [isFraction, "full", ...scaleUnambiguousSpacing()];
27972
- return {
27973
- cacheSize: 500,
27974
- theme: {
27975
- animate: ["spin", "ping", "pulse", "bounce"],
27976
- aspect: ["video"],
27977
- blur: [isTshirtSize],
27978
- breakpoint: [isTshirtSize],
27979
- color: [isAny],
27980
- container: [isTshirtSize],
27981
- "drop-shadow": [isTshirtSize],
27982
- ease: ["in", "out", "in-out"],
27983
- font: [isAnyNonArbitrary],
27984
- "font-weight": ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black"],
27985
- "inset-shadow": [isTshirtSize],
27986
- leading: ["none", "tight", "snug", "normal", "relaxed", "loose"],
27987
- perspective: ["dramatic", "near", "normal", "midrange", "distant", "none"],
27988
- radius: [isTshirtSize],
27989
- shadow: [isTshirtSize],
27990
- spacing: ["px", isNumber],
27991
- text: [isTshirtSize],
27992
- "text-shadow": [isTshirtSize],
27993
- tracking: ["tighter", "tight", "normal", "wide", "wider", "widest"]
27994
- },
27995
- classGroups: {
27996
- // --------------
27997
- // --- Layout ---
27998
- // --------------
27999
- /**
28000
- * Aspect Ratio
28001
- * @see https://tailwindcss.com/docs/aspect-ratio
28002
- */
28003
- aspect: [{
28004
- aspect: ["auto", "square", isFraction, isArbitraryValue, isArbitraryVariable, themeAspect]
28005
- }],
28006
- /**
28007
- * Container
28008
- * @see https://tailwindcss.com/docs/container
28009
- * @deprecated since Tailwind CSS v4.0.0
28010
- */
28011
- container: ["container"],
28012
- /**
28013
- * Columns
28014
- * @see https://tailwindcss.com/docs/columns
28015
- */
28016
- columns: [{
28017
- columns: [isNumber, isArbitraryValue, isArbitraryVariable, themeContainer]
28018
- }],
28019
- /**
28020
- * Break After
28021
- * @see https://tailwindcss.com/docs/break-after
28022
- */
28023
- "break-after": [{
28024
- "break-after": scaleBreak()
28025
- }],
28026
- /**
28027
- * Break Before
28028
- * @see https://tailwindcss.com/docs/break-before
28029
- */
28030
- "break-before": [{
28031
- "break-before": scaleBreak()
28032
- }],
28033
- /**
28034
- * Break Inside
28035
- * @see https://tailwindcss.com/docs/break-inside
28036
- */
28037
- "break-inside": [{
28038
- "break-inside": ["auto", "avoid", "avoid-page", "avoid-column"]
28039
- }],
28040
- /**
28041
- * Box Decoration Break
28042
- * @see https://tailwindcss.com/docs/box-decoration-break
28043
- */
28044
- "box-decoration": [{
28045
- "box-decoration": ["slice", "clone"]
28046
- }],
28047
- /**
28048
- * Box Sizing
28049
- * @see https://tailwindcss.com/docs/box-sizing
28050
- */
28051
- box: [{
28052
- box: ["border", "content"]
28053
- }],
28054
- /**
28055
- * Display
28056
- * @see https://tailwindcss.com/docs/display
28057
- */
28058
- display: ["block", "inline-block", "inline", "flex", "inline-flex", "table", "inline-table", "table-caption", "table-cell", "table-column", "table-column-group", "table-footer-group", "table-header-group", "table-row-group", "table-row", "flow-root", "grid", "inline-grid", "contents", "list-item", "hidden"],
28059
- /**
28060
- * Screen Reader Only
28061
- * @see https://tailwindcss.com/docs/display#screen-reader-only
28062
- */
28063
- sr: ["sr-only", "not-sr-only"],
28064
- /**
28065
- * Floats
28066
- * @see https://tailwindcss.com/docs/float
28067
- */
28068
- float: [{
28069
- float: ["right", "left", "none", "start", "end"]
28070
- }],
28071
- /**
28072
- * Clear
28073
- * @see https://tailwindcss.com/docs/clear
28074
- */
28075
- clear: [{
28076
- clear: ["left", "right", "both", "none", "start", "end"]
28077
- }],
28078
- /**
28079
- * Isolation
28080
- * @see https://tailwindcss.com/docs/isolation
28081
- */
28082
- isolation: ["isolate", "isolation-auto"],
28083
- /**
28084
- * Object Fit
28085
- * @see https://tailwindcss.com/docs/object-fit
28086
- */
28087
- "object-fit": [{
28088
- object: ["contain", "cover", "fill", "none", "scale-down"]
28089
- }],
28090
- /**
28091
- * Object Position
28092
- * @see https://tailwindcss.com/docs/object-position
28093
- */
28094
- "object-position": [{
28095
- object: scalePositionWithArbitrary()
28096
- }],
28097
- /**
28098
- * Overflow
28099
- * @see https://tailwindcss.com/docs/overflow
28100
- */
28101
- overflow: [{
28102
- overflow: scaleOverflow()
28103
- }],
28104
- /**
28105
- * Overflow X
28106
- * @see https://tailwindcss.com/docs/overflow
28107
- */
28108
- "overflow-x": [{
28109
- "overflow-x": scaleOverflow()
28110
- }],
28111
- /**
28112
- * Overflow Y
28113
- * @see https://tailwindcss.com/docs/overflow
28114
- */
28115
- "overflow-y": [{
28116
- "overflow-y": scaleOverflow()
28117
- }],
28118
- /**
28119
- * Overscroll Behavior
28120
- * @see https://tailwindcss.com/docs/overscroll-behavior
28121
- */
28122
- overscroll: [{
28123
- overscroll: scaleOverscroll()
28124
- }],
28125
- /**
28126
- * Overscroll Behavior X
28127
- * @see https://tailwindcss.com/docs/overscroll-behavior
28128
- */
28129
- "overscroll-x": [{
28130
- "overscroll-x": scaleOverscroll()
28131
- }],
28132
- /**
28133
- * Overscroll Behavior Y
28134
- * @see https://tailwindcss.com/docs/overscroll-behavior
28135
- */
28136
- "overscroll-y": [{
28137
- "overscroll-y": scaleOverscroll()
28138
- }],
28139
- /**
28140
- * Position
28141
- * @see https://tailwindcss.com/docs/position
28142
- */
28143
- position: ["static", "fixed", "absolute", "relative", "sticky"],
28144
- /**
28145
- * Top / Right / Bottom / Left
28146
- * @see https://tailwindcss.com/docs/top-right-bottom-left
28147
- */
28148
- inset: [{
28149
- inset: scaleInset()
28150
- }],
28151
- /**
28152
- * Right / Left
28153
- * @see https://tailwindcss.com/docs/top-right-bottom-left
28154
- */
28155
- "inset-x": [{
28156
- "inset-x": scaleInset()
28157
- }],
28158
- /**
28159
- * Top / Bottom
28160
- * @see https://tailwindcss.com/docs/top-right-bottom-left
28161
- */
28162
- "inset-y": [{
28163
- "inset-y": scaleInset()
28164
- }],
28165
- /**
28166
- * Start
28167
- * @see https://tailwindcss.com/docs/top-right-bottom-left
28168
- */
28169
- start: [{
28170
- start: scaleInset()
28171
- }],
28172
- /**
28173
- * End
28174
- * @see https://tailwindcss.com/docs/top-right-bottom-left
28175
- */
28176
- end: [{
28177
- end: scaleInset()
28178
- }],
28179
- /**
28180
- * Top
28181
- * @see https://tailwindcss.com/docs/top-right-bottom-left
28182
- */
28183
- top: [{
28184
- top: scaleInset()
28185
- }],
28186
- /**
28187
- * Right
28188
- * @see https://tailwindcss.com/docs/top-right-bottom-left
28189
- */
28190
- right: [{
28191
- right: scaleInset()
28192
- }],
28193
- /**
28194
- * Bottom
28195
- * @see https://tailwindcss.com/docs/top-right-bottom-left
28196
- */
28197
- bottom: [{
28198
- bottom: scaleInset()
28199
- }],
28200
- /**
28201
- * Left
28202
- * @see https://tailwindcss.com/docs/top-right-bottom-left
28203
- */
28204
- left: [{
28205
- left: scaleInset()
28206
- }],
28207
- /**
28208
- * Visibility
28209
- * @see https://tailwindcss.com/docs/visibility
28210
- */
28211
- visibility: ["visible", "invisible", "collapse"],
28212
- /**
28213
- * Z-Index
28214
- * @see https://tailwindcss.com/docs/z-index
28215
- */
28216
- z: [{
28217
- z: [isInteger$1, "auto", isArbitraryVariable, isArbitraryValue]
28218
- }],
28219
- // ------------------------
28220
- // --- Flexbox and Grid ---
28221
- // ------------------------
28222
- /**
28223
- * Flex Basis
28224
- * @see https://tailwindcss.com/docs/flex-basis
28225
- */
28226
- basis: [{
28227
- basis: [isFraction, "full", "auto", themeContainer, ...scaleUnambiguousSpacing()]
28228
- }],
28229
- /**
28230
- * Flex Direction
28231
- * @see https://tailwindcss.com/docs/flex-direction
28232
- */
28233
- "flex-direction": [{
28234
- flex: ["row", "row-reverse", "col", "col-reverse"]
28235
- }],
28236
- /**
28237
- * Flex Wrap
28238
- * @see https://tailwindcss.com/docs/flex-wrap
28239
- */
28240
- "flex-wrap": [{
28241
- flex: ["nowrap", "wrap", "wrap-reverse"]
28242
- }],
28243
- /**
28244
- * Flex
28245
- * @see https://tailwindcss.com/docs/flex
28246
- */
28247
- flex: [{
28248
- flex: [isNumber, isFraction, "auto", "initial", "none", isArbitraryValue]
28249
- }],
28250
- /**
28251
- * Flex Grow
28252
- * @see https://tailwindcss.com/docs/flex-grow
28253
- */
28254
- grow: [{
28255
- grow: ["", isNumber, isArbitraryVariable, isArbitraryValue]
28256
- }],
28257
- /**
28258
- * Flex Shrink
28259
- * @see https://tailwindcss.com/docs/flex-shrink
28260
- */
28261
- shrink: [{
28262
- shrink: ["", isNumber, isArbitraryVariable, isArbitraryValue]
28263
- }],
28264
- /**
28265
- * Order
28266
- * @see https://tailwindcss.com/docs/order
28267
- */
28268
- order: [{
28269
- order: [isInteger$1, "first", "last", "none", isArbitraryVariable, isArbitraryValue]
28270
- }],
28271
- /**
28272
- * Grid Template Columns
28273
- * @see https://tailwindcss.com/docs/grid-template-columns
28274
- */
28275
- "grid-cols": [{
28276
- "grid-cols": scaleGridTemplateColsRows()
28277
- }],
28278
- /**
28279
- * Grid Column Start / End
28280
- * @see https://tailwindcss.com/docs/grid-column
28281
- */
28282
- "col-start-end": [{
28283
- col: scaleGridColRowStartAndEnd()
28284
- }],
28285
- /**
28286
- * Grid Column Start
28287
- * @see https://tailwindcss.com/docs/grid-column
28288
- */
28289
- "col-start": [{
28290
- "col-start": scaleGridColRowStartOrEnd()
28291
- }],
28292
- /**
28293
- * Grid Column End
28294
- * @see https://tailwindcss.com/docs/grid-column
28295
- */
28296
- "col-end": [{
28297
- "col-end": scaleGridColRowStartOrEnd()
28298
- }],
28299
- /**
28300
- * Grid Template Rows
28301
- * @see https://tailwindcss.com/docs/grid-template-rows
28302
- */
28303
- "grid-rows": [{
28304
- "grid-rows": scaleGridTemplateColsRows()
28305
- }],
28306
- /**
28307
- * Grid Row Start / End
28308
- * @see https://tailwindcss.com/docs/grid-row
28309
- */
28310
- "row-start-end": [{
28311
- row: scaleGridColRowStartAndEnd()
28312
- }],
28313
- /**
28314
- * Grid Row Start
28315
- * @see https://tailwindcss.com/docs/grid-row
28316
- */
28317
- "row-start": [{
28318
- "row-start": scaleGridColRowStartOrEnd()
28319
- }],
28320
- /**
28321
- * Grid Row End
28322
- * @see https://tailwindcss.com/docs/grid-row
28323
- */
28324
- "row-end": [{
28325
- "row-end": scaleGridColRowStartOrEnd()
28326
- }],
28327
- /**
28328
- * Grid Auto Flow
28329
- * @see https://tailwindcss.com/docs/grid-auto-flow
28330
- */
28331
- "grid-flow": [{
28332
- "grid-flow": ["row", "col", "dense", "row-dense", "col-dense"]
28333
- }],
28334
- /**
28335
- * Grid Auto Columns
28336
- * @see https://tailwindcss.com/docs/grid-auto-columns
28337
- */
28338
- "auto-cols": [{
28339
- "auto-cols": scaleGridAutoColsRows()
28340
- }],
28341
- /**
28342
- * Grid Auto Rows
28343
- * @see https://tailwindcss.com/docs/grid-auto-rows
28344
- */
28345
- "auto-rows": [{
28346
- "auto-rows": scaleGridAutoColsRows()
28347
- }],
28348
- /**
28349
- * Gap
28350
- * @see https://tailwindcss.com/docs/gap
28351
- */
28352
- gap: [{
28353
- gap: scaleUnambiguousSpacing()
28354
- }],
28355
- /**
28356
- * Gap X
28357
- * @see https://tailwindcss.com/docs/gap
28358
- */
28359
- "gap-x": [{
28360
- "gap-x": scaleUnambiguousSpacing()
28361
- }],
28362
- /**
28363
- * Gap Y
28364
- * @see https://tailwindcss.com/docs/gap
28365
- */
28366
- "gap-y": [{
28367
- "gap-y": scaleUnambiguousSpacing()
28368
- }],
28369
- /**
28370
- * Justify Content
28371
- * @see https://tailwindcss.com/docs/justify-content
28372
- */
28373
- "justify-content": [{
28374
- justify: [...scaleAlignPrimaryAxis(), "normal"]
28375
- }],
28376
- /**
28377
- * Justify Items
28378
- * @see https://tailwindcss.com/docs/justify-items
28379
- */
28380
- "justify-items": [{
28381
- "justify-items": [...scaleAlignSecondaryAxis(), "normal"]
28382
- }],
28383
- /**
28384
- * Justify Self
28385
- * @see https://tailwindcss.com/docs/justify-self
28386
- */
28387
- "justify-self": [{
28388
- "justify-self": ["auto", ...scaleAlignSecondaryAxis()]
28389
- }],
28390
- /**
28391
- * Align Content
28392
- * @see https://tailwindcss.com/docs/align-content
28393
- */
28394
- "align-content": [{
28395
- content: ["normal", ...scaleAlignPrimaryAxis()]
28396
- }],
28397
- /**
28398
- * Align Items
28399
- * @see https://tailwindcss.com/docs/align-items
28400
- */
28401
- "align-items": [{
28402
- items: [...scaleAlignSecondaryAxis(), {
28403
- baseline: ["", "last"]
28404
- }]
28405
- }],
28406
- /**
28407
- * Align Self
28408
- * @see https://tailwindcss.com/docs/align-self
28409
- */
28410
- "align-self": [{
28411
- self: ["auto", ...scaleAlignSecondaryAxis(), {
28412
- baseline: ["", "last"]
28413
- }]
28414
- }],
28415
- /**
28416
- * Place Content
28417
- * @see https://tailwindcss.com/docs/place-content
28418
- */
28419
- "place-content": [{
28420
- "place-content": scaleAlignPrimaryAxis()
28421
- }],
28422
- /**
28423
- * Place Items
28424
- * @see https://tailwindcss.com/docs/place-items
28425
- */
28426
- "place-items": [{
28427
- "place-items": [...scaleAlignSecondaryAxis(), "baseline"]
28428
- }],
28429
- /**
28430
- * Place Self
28431
- * @see https://tailwindcss.com/docs/place-self
28432
- */
28433
- "place-self": [{
28434
- "place-self": ["auto", ...scaleAlignSecondaryAxis()]
28435
- }],
28436
- // Spacing
28437
- /**
28438
- * Padding
28439
- * @see https://tailwindcss.com/docs/padding
28440
- */
28441
- p: [{
28442
- p: scaleUnambiguousSpacing()
28443
- }],
28444
- /**
28445
- * Padding X
28446
- * @see https://tailwindcss.com/docs/padding
28447
- */
28448
- px: [{
28449
- px: scaleUnambiguousSpacing()
28450
- }],
28451
- /**
28452
- * Padding Y
28453
- * @see https://tailwindcss.com/docs/padding
28454
- */
28455
- py: [{
28456
- py: scaleUnambiguousSpacing()
28457
- }],
28458
- /**
28459
- * Padding Start
28460
- * @see https://tailwindcss.com/docs/padding
28461
- */
28462
- ps: [{
28463
- ps: scaleUnambiguousSpacing()
28464
- }],
28465
- /**
28466
- * Padding End
28467
- * @see https://tailwindcss.com/docs/padding
28468
- */
28469
- pe: [{
28470
- pe: scaleUnambiguousSpacing()
28471
- }],
28472
- /**
28473
- * Padding Top
28474
- * @see https://tailwindcss.com/docs/padding
28475
- */
28476
- pt: [{
28477
- pt: scaleUnambiguousSpacing()
28478
- }],
28479
- /**
28480
- * Padding Right
28481
- * @see https://tailwindcss.com/docs/padding
28482
- */
28483
- pr: [{
28484
- pr: scaleUnambiguousSpacing()
28485
- }],
28486
- /**
28487
- * Padding Bottom
28488
- * @see https://tailwindcss.com/docs/padding
28489
- */
28490
- pb: [{
28491
- pb: scaleUnambiguousSpacing()
28492
- }],
28493
- /**
28494
- * Padding Left
28495
- * @see https://tailwindcss.com/docs/padding
28496
- */
28497
- pl: [{
28498
- pl: scaleUnambiguousSpacing()
28499
- }],
28500
- /**
28501
- * Margin
28502
- * @see https://tailwindcss.com/docs/margin
28503
- */
28504
- m: [{
28505
- m: scaleMargin()
28506
- }],
28507
- /**
28508
- * Margin X
28509
- * @see https://tailwindcss.com/docs/margin
28510
- */
28511
- mx: [{
28512
- mx: scaleMargin()
28513
- }],
28514
- /**
28515
- * Margin Y
28516
- * @see https://tailwindcss.com/docs/margin
28517
- */
28518
- my: [{
28519
- my: scaleMargin()
28520
- }],
28521
- /**
28522
- * Margin Start
28523
- * @see https://tailwindcss.com/docs/margin
28524
- */
28525
- ms: [{
28526
- ms: scaleMargin()
28527
- }],
28528
- /**
28529
- * Margin End
28530
- * @see https://tailwindcss.com/docs/margin
28531
- */
28532
- me: [{
28533
- me: scaleMargin()
28534
- }],
28535
- /**
28536
- * Margin Top
28537
- * @see https://tailwindcss.com/docs/margin
28538
- */
28539
- mt: [{
28540
- mt: scaleMargin()
28541
- }],
28542
- /**
28543
- * Margin Right
28544
- * @see https://tailwindcss.com/docs/margin
28545
- */
28546
- mr: [{
28547
- mr: scaleMargin()
28548
- }],
28549
- /**
28550
- * Margin Bottom
28551
- * @see https://tailwindcss.com/docs/margin
28552
- */
28553
- mb: [{
28554
- mb: scaleMargin()
28555
- }],
28556
- /**
28557
- * Margin Left
28558
- * @see https://tailwindcss.com/docs/margin
28559
- */
28560
- ml: [{
28561
- ml: scaleMargin()
28562
- }],
28563
- /**
28564
- * Space Between X
28565
- * @see https://tailwindcss.com/docs/margin#adding-space-between-children
28566
- */
28567
- "space-x": [{
28568
- "space-x": scaleUnambiguousSpacing()
28569
- }],
28570
- /**
28571
- * Space Between X Reverse
28572
- * @see https://tailwindcss.com/docs/margin#adding-space-between-children
28573
- */
28574
- "space-x-reverse": ["space-x-reverse"],
28575
- /**
28576
- * Space Between Y
28577
- * @see https://tailwindcss.com/docs/margin#adding-space-between-children
28578
- */
28579
- "space-y": [{
28580
- "space-y": scaleUnambiguousSpacing()
28581
- }],
28582
- /**
28583
- * Space Between Y Reverse
28584
- * @see https://tailwindcss.com/docs/margin#adding-space-between-children
28585
- */
28586
- "space-y-reverse": ["space-y-reverse"],
28587
- // --------------
28588
- // --- Sizing ---
28589
- // --------------
28590
- /**
28591
- * Size
28592
- * @see https://tailwindcss.com/docs/width#setting-both-width-and-height
28593
- */
28594
- size: [{
28595
- size: scaleSizing()
28596
- }],
28597
- /**
28598
- * Width
28599
- * @see https://tailwindcss.com/docs/width
28600
- */
28601
- w: [{
28602
- w: [themeContainer, "screen", ...scaleSizing()]
28603
- }],
28604
- /**
28605
- * Min-Width
28606
- * @see https://tailwindcss.com/docs/min-width
28607
- */
28608
- "min-w": [{
28609
- "min-w": [
28610
- themeContainer,
28611
- "screen",
28612
- /** Deprecated. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
28613
- "none",
28614
- ...scaleSizing()
28615
- ]
28616
- }],
28617
- /**
28618
- * Max-Width
28619
- * @see https://tailwindcss.com/docs/max-width
28620
- */
28621
- "max-w": [{
28622
- "max-w": [
28623
- themeContainer,
28624
- "screen",
28625
- "none",
28626
- /** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
28627
- "prose",
28628
- /** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
28629
- {
28630
- screen: [themeBreakpoint]
28631
- },
28632
- ...scaleSizing()
28633
- ]
28634
- }],
28635
- /**
28636
- * Height
28637
- * @see https://tailwindcss.com/docs/height
28638
- */
28639
- h: [{
28640
- h: ["screen", "lh", ...scaleSizing()]
28641
- }],
28642
- /**
28643
- * Min-Height
28644
- * @see https://tailwindcss.com/docs/min-height
28645
- */
28646
- "min-h": [{
28647
- "min-h": ["screen", "lh", "none", ...scaleSizing()]
28648
- }],
28649
- /**
28650
- * Max-Height
28651
- * @see https://tailwindcss.com/docs/max-height
28652
- */
28653
- "max-h": [{
28654
- "max-h": ["screen", "lh", ...scaleSizing()]
28655
- }],
28656
- // ------------------
28657
- // --- Typography ---
28658
- // ------------------
28659
- /**
28660
- * Font Size
28661
- * @see https://tailwindcss.com/docs/font-size
28662
- */
28663
- "font-size": [{
28664
- text: ["base", themeText, isArbitraryVariableLength, isArbitraryLength]
28665
- }],
28666
- /**
28667
- * Font Smoothing
28668
- * @see https://tailwindcss.com/docs/font-smoothing
28669
- */
28670
- "font-smoothing": ["antialiased", "subpixel-antialiased"],
28671
- /**
28672
- * Font Style
28673
- * @see https://tailwindcss.com/docs/font-style
28674
- */
28675
- "font-style": ["italic", "not-italic"],
28676
- /**
28677
- * Font Weight
28678
- * @see https://tailwindcss.com/docs/font-weight
28679
- */
28680
- "font-weight": [{
28681
- font: [themeFontWeight, isArbitraryVariable, isArbitraryNumber]
28682
- }],
28683
- /**
28684
- * Font Stretch
28685
- * @see https://tailwindcss.com/docs/font-stretch
28686
- */
28687
- "font-stretch": [{
28688
- "font-stretch": ["ultra-condensed", "extra-condensed", "condensed", "semi-condensed", "normal", "semi-expanded", "expanded", "extra-expanded", "ultra-expanded", isPercent, isArbitraryValue]
28689
- }],
28690
- /**
28691
- * Font Family
28692
- * @see https://tailwindcss.com/docs/font-family
28693
- */
28694
- "font-family": [{
28695
- font: [isArbitraryVariableFamilyName, isArbitraryValue, themeFont]
28696
- }],
28697
- /**
28698
- * Font Variant Numeric
28699
- * @see https://tailwindcss.com/docs/font-variant-numeric
28700
- */
28701
- "fvn-normal": ["normal-nums"],
28702
- /**
28703
- * Font Variant Numeric
28704
- * @see https://tailwindcss.com/docs/font-variant-numeric
28705
- */
28706
- "fvn-ordinal": ["ordinal"],
28707
- /**
28708
- * Font Variant Numeric
28709
- * @see https://tailwindcss.com/docs/font-variant-numeric
28710
- */
28711
- "fvn-slashed-zero": ["slashed-zero"],
28712
- /**
28713
- * Font Variant Numeric
28714
- * @see https://tailwindcss.com/docs/font-variant-numeric
28715
- */
28716
- "fvn-figure": ["lining-nums", "oldstyle-nums"],
28717
- /**
28718
- * Font Variant Numeric
28719
- * @see https://tailwindcss.com/docs/font-variant-numeric
28720
- */
28721
- "fvn-spacing": ["proportional-nums", "tabular-nums"],
28722
- /**
28723
- * Font Variant Numeric
28724
- * @see https://tailwindcss.com/docs/font-variant-numeric
28725
- */
28726
- "fvn-fraction": ["diagonal-fractions", "stacked-fractions"],
28727
- /**
28728
- * Letter Spacing
28729
- * @see https://tailwindcss.com/docs/letter-spacing
28730
- */
28731
- tracking: [{
28732
- tracking: [themeTracking, isArbitraryVariable, isArbitraryValue]
28733
- }],
28734
- /**
28735
- * Line Clamp
28736
- * @see https://tailwindcss.com/docs/line-clamp
28737
- */
28738
- "line-clamp": [{
28739
- "line-clamp": [isNumber, "none", isArbitraryVariable, isArbitraryNumber]
28740
- }],
28741
- /**
28742
- * Line Height
28743
- * @see https://tailwindcss.com/docs/line-height
28744
- */
28745
- leading: [{
28746
- leading: [
28747
- /** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
28748
- themeLeading,
28749
- ...scaleUnambiguousSpacing()
28750
- ]
28751
- }],
28752
- /**
28753
- * List Style Image
28754
- * @see https://tailwindcss.com/docs/list-style-image
28755
- */
28756
- "list-image": [{
28757
- "list-image": ["none", isArbitraryVariable, isArbitraryValue]
28758
- }],
28759
- /**
28760
- * List Style Position
28761
- * @see https://tailwindcss.com/docs/list-style-position
28762
- */
28763
- "list-style-position": [{
28764
- list: ["inside", "outside"]
28765
- }],
28766
- /**
28767
- * List Style Type
28768
- * @see https://tailwindcss.com/docs/list-style-type
28769
- */
28770
- "list-style-type": [{
28771
- list: ["disc", "decimal", "none", isArbitraryVariable, isArbitraryValue]
28772
- }],
28773
- /**
28774
- * Text Alignment
28775
- * @see https://tailwindcss.com/docs/text-align
28776
- */
28777
- "text-alignment": [{
28778
- text: ["left", "center", "right", "justify", "start", "end"]
28779
- }],
28780
- /**
28781
- * Placeholder Color
28782
- * @deprecated since Tailwind CSS v3.0.0
28783
- * @see https://v3.tailwindcss.com/docs/placeholder-color
28784
- */
28785
- "placeholder-color": [{
28786
- placeholder: scaleColor()
28787
- }],
28788
- /**
28789
- * Text Color
28790
- * @see https://tailwindcss.com/docs/text-color
28791
- */
28792
- "text-color": [{
28793
- text: scaleColor()
28794
- }],
28795
- /**
28796
- * Text Decoration
28797
- * @see https://tailwindcss.com/docs/text-decoration
28798
- */
28799
- "text-decoration": ["underline", "overline", "line-through", "no-underline"],
28800
- /**
28801
- * Text Decoration Style
28802
- * @see https://tailwindcss.com/docs/text-decoration-style
28803
- */
28804
- "text-decoration-style": [{
28805
- decoration: [...scaleLineStyle(), "wavy"]
28806
- }],
28807
- /**
28808
- * Text Decoration Thickness
28809
- * @see https://tailwindcss.com/docs/text-decoration-thickness
28810
- */
28811
- "text-decoration-thickness": [{
28812
- decoration: [isNumber, "from-font", "auto", isArbitraryVariable, isArbitraryLength]
28813
- }],
28814
- /**
28815
- * Text Decoration Color
28816
- * @see https://tailwindcss.com/docs/text-decoration-color
28817
- */
28818
- "text-decoration-color": [{
28819
- decoration: scaleColor()
28820
- }],
28821
- /**
28822
- * Text Underline Offset
28823
- * @see https://tailwindcss.com/docs/text-underline-offset
28824
- */
28825
- "underline-offset": [{
28826
- "underline-offset": [isNumber, "auto", isArbitraryVariable, isArbitraryValue]
28827
- }],
28828
- /**
28829
- * Text Transform
28830
- * @see https://tailwindcss.com/docs/text-transform
28831
- */
28832
- "text-transform": ["uppercase", "lowercase", "capitalize", "normal-case"],
28833
- /**
28834
- * Text Overflow
28835
- * @see https://tailwindcss.com/docs/text-overflow
28836
- */
28837
- "text-overflow": ["truncate", "text-ellipsis", "text-clip"],
28838
- /**
28839
- * Text Wrap
28840
- * @see https://tailwindcss.com/docs/text-wrap
28841
- */
28842
- "text-wrap": [{
28843
- text: ["wrap", "nowrap", "balance", "pretty"]
28844
- }],
28845
- /**
28846
- * Text Indent
28847
- * @see https://tailwindcss.com/docs/text-indent
28848
- */
28849
- indent: [{
28850
- indent: scaleUnambiguousSpacing()
28851
- }],
28852
- /**
28853
- * Vertical Alignment
28854
- * @see https://tailwindcss.com/docs/vertical-align
28855
- */
28856
- "vertical-align": [{
28857
- align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", isArbitraryVariable, isArbitraryValue]
28858
- }],
28859
- /**
28860
- * Whitespace
28861
- * @see https://tailwindcss.com/docs/whitespace
28862
- */
28863
- whitespace: [{
28864
- whitespace: ["normal", "nowrap", "pre", "pre-line", "pre-wrap", "break-spaces"]
28865
- }],
28866
- /**
28867
- * Word Break
28868
- * @see https://tailwindcss.com/docs/word-break
28869
- */
28870
- break: [{
28871
- break: ["normal", "words", "all", "keep"]
28872
- }],
28873
- /**
28874
- * Overflow Wrap
28875
- * @see https://tailwindcss.com/docs/overflow-wrap
28876
- */
28877
- wrap: [{
28878
- wrap: ["break-word", "anywhere", "normal"]
28879
- }],
28880
- /**
28881
- * Hyphens
28882
- * @see https://tailwindcss.com/docs/hyphens
28883
- */
28884
- hyphens: [{
28885
- hyphens: ["none", "manual", "auto"]
28886
- }],
28887
- /**
28888
- * Content
28889
- * @see https://tailwindcss.com/docs/content
28890
- */
28891
- content: [{
28892
- content: ["none", isArbitraryVariable, isArbitraryValue]
28893
- }],
28894
- // -------------------
28895
- // --- Backgrounds ---
28896
- // -------------------
28897
- /**
28898
- * Background Attachment
28899
- * @see https://tailwindcss.com/docs/background-attachment
28900
- */
28901
- "bg-attachment": [{
28902
- bg: ["fixed", "local", "scroll"]
28903
- }],
28904
- /**
28905
- * Background Clip
28906
- * @see https://tailwindcss.com/docs/background-clip
28907
- */
28908
- "bg-clip": [{
28909
- "bg-clip": ["border", "padding", "content", "text"]
28910
- }],
28911
- /**
28912
- * Background Origin
28913
- * @see https://tailwindcss.com/docs/background-origin
28914
- */
28915
- "bg-origin": [{
28916
- "bg-origin": ["border", "padding", "content"]
28917
- }],
28918
- /**
28919
- * Background Position
28920
- * @see https://tailwindcss.com/docs/background-position
28921
- */
28922
- "bg-position": [{
28923
- bg: scaleBgPosition()
28924
- }],
28925
- /**
28926
- * Background Repeat
28927
- * @see https://tailwindcss.com/docs/background-repeat
28928
- */
28929
- "bg-repeat": [{
28930
- bg: scaleBgRepeat()
28931
- }],
28932
- /**
28933
- * Background Size
28934
- * @see https://tailwindcss.com/docs/background-size
28935
- */
28936
- "bg-size": [{
28937
- bg: scaleBgSize()
28938
- }],
28939
- /**
28940
- * Background Image
28941
- * @see https://tailwindcss.com/docs/background-image
28942
- */
28943
- "bg-image": [{
28944
- bg: ["none", {
28945
- linear: [{
28946
- to: ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
28947
- }, isInteger$1, isArbitraryVariable, isArbitraryValue],
28948
- radial: ["", isArbitraryVariable, isArbitraryValue],
28949
- conic: [isInteger$1, isArbitraryVariable, isArbitraryValue]
28950
- }, isArbitraryVariableImage, isArbitraryImage]
28951
- }],
28952
- /**
28953
- * Background Color
28954
- * @see https://tailwindcss.com/docs/background-color
28955
- */
28956
- "bg-color": [{
28957
- bg: scaleColor()
28958
- }],
28959
- /**
28960
- * Gradient Color Stops From Position
28961
- * @see https://tailwindcss.com/docs/gradient-color-stops
28962
- */
28963
- "gradient-from-pos": [{
28964
- from: scaleGradientStopPosition()
28965
- }],
28966
- /**
28967
- * Gradient Color Stops Via Position
28968
- * @see https://tailwindcss.com/docs/gradient-color-stops
28969
- */
28970
- "gradient-via-pos": [{
28971
- via: scaleGradientStopPosition()
28972
- }],
28973
- /**
28974
- * Gradient Color Stops To Position
28975
- * @see https://tailwindcss.com/docs/gradient-color-stops
28976
- */
28977
- "gradient-to-pos": [{
28978
- to: scaleGradientStopPosition()
28979
- }],
28980
- /**
28981
- * Gradient Color Stops From
28982
- * @see https://tailwindcss.com/docs/gradient-color-stops
28983
- */
28984
- "gradient-from": [{
28985
- from: scaleColor()
28986
- }],
28987
- /**
28988
- * Gradient Color Stops Via
28989
- * @see https://tailwindcss.com/docs/gradient-color-stops
28990
- */
28991
- "gradient-via": [{
28992
- via: scaleColor()
28993
- }],
28994
- /**
28995
- * Gradient Color Stops To
28996
- * @see https://tailwindcss.com/docs/gradient-color-stops
28997
- */
28998
- "gradient-to": [{
28999
- to: scaleColor()
29000
- }],
29001
- // ---------------
29002
- // --- Borders ---
29003
- // ---------------
29004
- /**
29005
- * Border Radius
29006
- * @see https://tailwindcss.com/docs/border-radius
29007
- */
29008
- rounded: [{
29009
- rounded: scaleRadius()
29010
- }],
29011
- /**
29012
- * Border Radius Start
29013
- * @see https://tailwindcss.com/docs/border-radius
29014
- */
29015
- "rounded-s": [{
29016
- "rounded-s": scaleRadius()
29017
- }],
29018
- /**
29019
- * Border Radius End
29020
- * @see https://tailwindcss.com/docs/border-radius
29021
- */
29022
- "rounded-e": [{
29023
- "rounded-e": scaleRadius()
29024
- }],
29025
- /**
29026
- * Border Radius Top
29027
- * @see https://tailwindcss.com/docs/border-radius
29028
- */
29029
- "rounded-t": [{
29030
- "rounded-t": scaleRadius()
29031
- }],
29032
- /**
29033
- * Border Radius Right
29034
- * @see https://tailwindcss.com/docs/border-radius
29035
- */
29036
- "rounded-r": [{
29037
- "rounded-r": scaleRadius()
29038
- }],
29039
- /**
29040
- * Border Radius Bottom
29041
- * @see https://tailwindcss.com/docs/border-radius
29042
- */
29043
- "rounded-b": [{
29044
- "rounded-b": scaleRadius()
29045
- }],
29046
- /**
29047
- * Border Radius Left
29048
- * @see https://tailwindcss.com/docs/border-radius
29049
- */
29050
- "rounded-l": [{
29051
- "rounded-l": scaleRadius()
29052
- }],
29053
- /**
29054
- * Border Radius Start Start
29055
- * @see https://tailwindcss.com/docs/border-radius
29056
- */
29057
- "rounded-ss": [{
29058
- "rounded-ss": scaleRadius()
29059
- }],
29060
- /**
29061
- * Border Radius Start End
29062
- * @see https://tailwindcss.com/docs/border-radius
29063
- */
29064
- "rounded-se": [{
29065
- "rounded-se": scaleRadius()
29066
- }],
29067
- /**
29068
- * Border Radius End End
29069
- * @see https://tailwindcss.com/docs/border-radius
29070
- */
29071
- "rounded-ee": [{
29072
- "rounded-ee": scaleRadius()
29073
- }],
29074
- /**
29075
- * Border Radius End Start
29076
- * @see https://tailwindcss.com/docs/border-radius
29077
- */
29078
- "rounded-es": [{
29079
- "rounded-es": scaleRadius()
29080
- }],
29081
- /**
29082
- * Border Radius Top Left
29083
- * @see https://tailwindcss.com/docs/border-radius
29084
- */
29085
- "rounded-tl": [{
29086
- "rounded-tl": scaleRadius()
29087
- }],
29088
- /**
29089
- * Border Radius Top Right
29090
- * @see https://tailwindcss.com/docs/border-radius
29091
- */
29092
- "rounded-tr": [{
29093
- "rounded-tr": scaleRadius()
29094
- }],
29095
- /**
29096
- * Border Radius Bottom Right
29097
- * @see https://tailwindcss.com/docs/border-radius
29098
- */
29099
- "rounded-br": [{
29100
- "rounded-br": scaleRadius()
29101
- }],
29102
- /**
29103
- * Border Radius Bottom Left
29104
- * @see https://tailwindcss.com/docs/border-radius
29105
- */
29106
- "rounded-bl": [{
29107
- "rounded-bl": scaleRadius()
29108
- }],
29109
- /**
29110
- * Border Width
29111
- * @see https://tailwindcss.com/docs/border-width
29112
- */
29113
- "border-w": [{
29114
- border: scaleBorderWidth()
29115
- }],
29116
- /**
29117
- * Border Width X
29118
- * @see https://tailwindcss.com/docs/border-width
29119
- */
29120
- "border-w-x": [{
29121
- "border-x": scaleBorderWidth()
29122
- }],
29123
- /**
29124
- * Border Width Y
29125
- * @see https://tailwindcss.com/docs/border-width
29126
- */
29127
- "border-w-y": [{
29128
- "border-y": scaleBorderWidth()
29129
- }],
29130
- /**
29131
- * Border Width Start
29132
- * @see https://tailwindcss.com/docs/border-width
29133
- */
29134
- "border-w-s": [{
29135
- "border-s": scaleBorderWidth()
29136
- }],
29137
- /**
29138
- * Border Width End
29139
- * @see https://tailwindcss.com/docs/border-width
29140
- */
29141
- "border-w-e": [{
29142
- "border-e": scaleBorderWidth()
29143
- }],
29144
- /**
29145
- * Border Width Top
29146
- * @see https://tailwindcss.com/docs/border-width
29147
- */
29148
- "border-w-t": [{
29149
- "border-t": scaleBorderWidth()
29150
- }],
29151
- /**
29152
- * Border Width Right
29153
- * @see https://tailwindcss.com/docs/border-width
29154
- */
29155
- "border-w-r": [{
29156
- "border-r": scaleBorderWidth()
29157
- }],
29158
- /**
29159
- * Border Width Bottom
29160
- * @see https://tailwindcss.com/docs/border-width
29161
- */
29162
- "border-w-b": [{
29163
- "border-b": scaleBorderWidth()
29164
- }],
29165
- /**
29166
- * Border Width Left
29167
- * @see https://tailwindcss.com/docs/border-width
29168
- */
29169
- "border-w-l": [{
29170
- "border-l": scaleBorderWidth()
29171
- }],
29172
- /**
29173
- * Divide Width X
29174
- * @see https://tailwindcss.com/docs/border-width#between-children
29175
- */
29176
- "divide-x": [{
29177
- "divide-x": scaleBorderWidth()
29178
- }],
29179
- /**
29180
- * Divide Width X Reverse
29181
- * @see https://tailwindcss.com/docs/border-width#between-children
29182
- */
29183
- "divide-x-reverse": ["divide-x-reverse"],
29184
- /**
29185
- * Divide Width Y
29186
- * @see https://tailwindcss.com/docs/border-width#between-children
29187
- */
29188
- "divide-y": [{
29189
- "divide-y": scaleBorderWidth()
29190
- }],
29191
- /**
29192
- * Divide Width Y Reverse
29193
- * @see https://tailwindcss.com/docs/border-width#between-children
29194
- */
29195
- "divide-y-reverse": ["divide-y-reverse"],
29196
- /**
29197
- * Border Style
29198
- * @see https://tailwindcss.com/docs/border-style
29199
- */
29200
- "border-style": [{
29201
- border: [...scaleLineStyle(), "hidden", "none"]
29202
- }],
29203
- /**
29204
- * Divide Style
29205
- * @see https://tailwindcss.com/docs/border-style#setting-the-divider-style
29206
- */
29207
- "divide-style": [{
29208
- divide: [...scaleLineStyle(), "hidden", "none"]
29209
- }],
29210
- /**
29211
- * Border Color
29212
- * @see https://tailwindcss.com/docs/border-color
29213
- */
29214
- "border-color": [{
29215
- border: scaleColor()
29216
- }],
29217
- /**
29218
- * Border Color X
29219
- * @see https://tailwindcss.com/docs/border-color
29220
- */
29221
- "border-color-x": [{
29222
- "border-x": scaleColor()
29223
- }],
29224
- /**
29225
- * Border Color Y
29226
- * @see https://tailwindcss.com/docs/border-color
29227
- */
29228
- "border-color-y": [{
29229
- "border-y": scaleColor()
29230
- }],
29231
- /**
29232
- * Border Color S
29233
- * @see https://tailwindcss.com/docs/border-color
29234
- */
29235
- "border-color-s": [{
29236
- "border-s": scaleColor()
29237
- }],
29238
- /**
29239
- * Border Color E
29240
- * @see https://tailwindcss.com/docs/border-color
29241
- */
29242
- "border-color-e": [{
29243
- "border-e": scaleColor()
29244
- }],
29245
- /**
29246
- * Border Color Top
29247
- * @see https://tailwindcss.com/docs/border-color
29248
- */
29249
- "border-color-t": [{
29250
- "border-t": scaleColor()
29251
- }],
29252
- /**
29253
- * Border Color Right
29254
- * @see https://tailwindcss.com/docs/border-color
29255
- */
29256
- "border-color-r": [{
29257
- "border-r": scaleColor()
29258
- }],
29259
- /**
29260
- * Border Color Bottom
29261
- * @see https://tailwindcss.com/docs/border-color
29262
- */
29263
- "border-color-b": [{
29264
- "border-b": scaleColor()
29265
- }],
29266
- /**
29267
- * Border Color Left
29268
- * @see https://tailwindcss.com/docs/border-color
29269
- */
29270
- "border-color-l": [{
29271
- "border-l": scaleColor()
29272
- }],
29273
- /**
29274
- * Divide Color
29275
- * @see https://tailwindcss.com/docs/divide-color
29276
- */
29277
- "divide-color": [{
29278
- divide: scaleColor()
29279
- }],
29280
- /**
29281
- * Outline Style
29282
- * @see https://tailwindcss.com/docs/outline-style
29283
- */
29284
- "outline-style": [{
29285
- outline: [...scaleLineStyle(), "none", "hidden"]
29286
- }],
29287
- /**
29288
- * Outline Offset
29289
- * @see https://tailwindcss.com/docs/outline-offset
29290
- */
29291
- "outline-offset": [{
29292
- "outline-offset": [isNumber, isArbitraryVariable, isArbitraryValue]
29293
- }],
29294
- /**
29295
- * Outline Width
29296
- * @see https://tailwindcss.com/docs/outline-width
29297
- */
29298
- "outline-w": [{
29299
- outline: ["", isNumber, isArbitraryVariableLength, isArbitraryLength]
29300
- }],
29301
- /**
29302
- * Outline Color
29303
- * @see https://tailwindcss.com/docs/outline-color
29304
- */
29305
- "outline-color": [{
29306
- outline: scaleColor()
29307
- }],
29308
- // ---------------
29309
- // --- Effects ---
29310
- // ---------------
29311
- /**
29312
- * Box Shadow
29313
- * @see https://tailwindcss.com/docs/box-shadow
29314
- */
29315
- shadow: [{
29316
- shadow: [
29317
- // Deprecated since Tailwind CSS v4.0.0
29318
- "",
29319
- "none",
29320
- themeShadow,
29321
- isArbitraryVariableShadow,
29322
- isArbitraryShadow
29323
- ]
29324
- }],
29325
- /**
29326
- * Box Shadow Color
29327
- * @see https://tailwindcss.com/docs/box-shadow#setting-the-shadow-color
29328
- */
29329
- "shadow-color": [{
29330
- shadow: scaleColor()
29331
- }],
29332
- /**
29333
- * Inset Box Shadow
29334
- * @see https://tailwindcss.com/docs/box-shadow#adding-an-inset-shadow
29335
- */
29336
- "inset-shadow": [{
29337
- "inset-shadow": ["none", themeInsetShadow, isArbitraryVariableShadow, isArbitraryShadow]
29338
- }],
29339
- /**
29340
- * Inset Box Shadow Color
29341
- * @see https://tailwindcss.com/docs/box-shadow#setting-the-inset-shadow-color
29342
- */
29343
- "inset-shadow-color": [{
29344
- "inset-shadow": scaleColor()
29345
- }],
29346
- /**
29347
- * Ring Width
29348
- * @see https://tailwindcss.com/docs/box-shadow#adding-a-ring
29349
- */
29350
- "ring-w": [{
29351
- ring: scaleBorderWidth()
29352
- }],
29353
- /**
29354
- * Ring Width Inset
29355
- * @see https://v3.tailwindcss.com/docs/ring-width#inset-rings
29356
- * @deprecated since Tailwind CSS v4.0.0
29357
- * @see https://github.com/tailwindlabs/tailwindcss/blob/v4.0.0/packages/tailwindcss/src/utilities.ts#L4158
29358
- */
29359
- "ring-w-inset": ["ring-inset"],
29360
- /**
29361
- * Ring Color
29362
- * @see https://tailwindcss.com/docs/box-shadow#setting-the-ring-color
29363
- */
29364
- "ring-color": [{
29365
- ring: scaleColor()
29366
- }],
29367
- /**
29368
- * Ring Offset Width
29369
- * @see https://v3.tailwindcss.com/docs/ring-offset-width
29370
- * @deprecated since Tailwind CSS v4.0.0
29371
- * @see https://github.com/tailwindlabs/tailwindcss/blob/v4.0.0/packages/tailwindcss/src/utilities.ts#L4158
29372
- */
29373
- "ring-offset-w": [{
29374
- "ring-offset": [isNumber, isArbitraryLength]
29375
- }],
29376
- /**
29377
- * Ring Offset Color
29378
- * @see https://v3.tailwindcss.com/docs/ring-offset-color
29379
- * @deprecated since Tailwind CSS v4.0.0
29380
- * @see https://github.com/tailwindlabs/tailwindcss/blob/v4.0.0/packages/tailwindcss/src/utilities.ts#L4158
29381
- */
29382
- "ring-offset-color": [{
29383
- "ring-offset": scaleColor()
29384
- }],
29385
- /**
29386
- * Inset Ring Width
29387
- * @see https://tailwindcss.com/docs/box-shadow#adding-an-inset-ring
29388
- */
29389
- "inset-ring-w": [{
29390
- "inset-ring": scaleBorderWidth()
29391
- }],
29392
- /**
29393
- * Inset Ring Color
29394
- * @see https://tailwindcss.com/docs/box-shadow#setting-the-inset-ring-color
29395
- */
29396
- "inset-ring-color": [{
29397
- "inset-ring": scaleColor()
29398
- }],
29399
- /**
29400
- * Text Shadow
29401
- * @see https://tailwindcss.com/docs/text-shadow
29402
- */
29403
- "text-shadow": [{
29404
- "text-shadow": ["none", themeTextShadow, isArbitraryVariableShadow, isArbitraryShadow]
29405
- }],
29406
- /**
29407
- * Text Shadow Color
29408
- * @see https://tailwindcss.com/docs/text-shadow#setting-the-shadow-color
29409
- */
29410
- "text-shadow-color": [{
29411
- "text-shadow": scaleColor()
29412
- }],
29413
- /**
29414
- * Opacity
29415
- * @see https://tailwindcss.com/docs/opacity
29416
- */
29417
- opacity: [{
29418
- opacity: [isNumber, isArbitraryVariable, isArbitraryValue]
29419
- }],
29420
- /**
29421
- * Mix Blend Mode
29422
- * @see https://tailwindcss.com/docs/mix-blend-mode
29423
- */
29424
- "mix-blend": [{
29425
- "mix-blend": [...scaleBlendMode(), "plus-darker", "plus-lighter"]
29426
- }],
29427
- /**
29428
- * Background Blend Mode
29429
- * @see https://tailwindcss.com/docs/background-blend-mode
29430
- */
29431
- "bg-blend": [{
29432
- "bg-blend": scaleBlendMode()
29433
- }],
29434
- /**
29435
- * Mask Clip
29436
- * @see https://tailwindcss.com/docs/mask-clip
29437
- */
29438
- "mask-clip": [{
29439
- "mask-clip": ["border", "padding", "content", "fill", "stroke", "view"]
29440
- }, "mask-no-clip"],
29441
- /**
29442
- * Mask Composite
29443
- * @see https://tailwindcss.com/docs/mask-composite
29444
- */
29445
- "mask-composite": [{
29446
- mask: ["add", "subtract", "intersect", "exclude"]
29447
- }],
29448
- /**
29449
- * Mask Image
29450
- * @see https://tailwindcss.com/docs/mask-image
29451
- */
29452
- "mask-image-linear-pos": [{
29453
- "mask-linear": [isNumber]
29454
- }],
29455
- "mask-image-linear-from-pos": [{
29456
- "mask-linear-from": scaleMaskImagePosition()
29457
- }],
29458
- "mask-image-linear-to-pos": [{
29459
- "mask-linear-to": scaleMaskImagePosition()
29460
- }],
29461
- "mask-image-linear-from-color": [{
29462
- "mask-linear-from": scaleColor()
29463
- }],
29464
- "mask-image-linear-to-color": [{
29465
- "mask-linear-to": scaleColor()
29466
- }],
29467
- "mask-image-t-from-pos": [{
29468
- "mask-t-from": scaleMaskImagePosition()
29469
- }],
29470
- "mask-image-t-to-pos": [{
29471
- "mask-t-to": scaleMaskImagePosition()
29472
- }],
29473
- "mask-image-t-from-color": [{
29474
- "mask-t-from": scaleColor()
29475
- }],
29476
- "mask-image-t-to-color": [{
29477
- "mask-t-to": scaleColor()
29478
- }],
29479
- "mask-image-r-from-pos": [{
29480
- "mask-r-from": scaleMaskImagePosition()
29481
- }],
29482
- "mask-image-r-to-pos": [{
29483
- "mask-r-to": scaleMaskImagePosition()
29484
- }],
29485
- "mask-image-r-from-color": [{
29486
- "mask-r-from": scaleColor()
29487
- }],
29488
- "mask-image-r-to-color": [{
29489
- "mask-r-to": scaleColor()
29490
- }],
29491
- "mask-image-b-from-pos": [{
29492
- "mask-b-from": scaleMaskImagePosition()
29493
- }],
29494
- "mask-image-b-to-pos": [{
29495
- "mask-b-to": scaleMaskImagePosition()
29496
- }],
29497
- "mask-image-b-from-color": [{
29498
- "mask-b-from": scaleColor()
29499
- }],
29500
- "mask-image-b-to-color": [{
29501
- "mask-b-to": scaleColor()
29502
- }],
29503
- "mask-image-l-from-pos": [{
29504
- "mask-l-from": scaleMaskImagePosition()
29505
- }],
29506
- "mask-image-l-to-pos": [{
29507
- "mask-l-to": scaleMaskImagePosition()
29508
- }],
29509
- "mask-image-l-from-color": [{
29510
- "mask-l-from": scaleColor()
29511
- }],
29512
- "mask-image-l-to-color": [{
29513
- "mask-l-to": scaleColor()
29514
- }],
29515
- "mask-image-x-from-pos": [{
29516
- "mask-x-from": scaleMaskImagePosition()
29517
- }],
29518
- "mask-image-x-to-pos": [{
29519
- "mask-x-to": scaleMaskImagePosition()
29520
- }],
29521
- "mask-image-x-from-color": [{
29522
- "mask-x-from": scaleColor()
29523
- }],
29524
- "mask-image-x-to-color": [{
29525
- "mask-x-to": scaleColor()
29526
- }],
29527
- "mask-image-y-from-pos": [{
29528
- "mask-y-from": scaleMaskImagePosition()
29529
- }],
29530
- "mask-image-y-to-pos": [{
29531
- "mask-y-to": scaleMaskImagePosition()
29532
- }],
29533
- "mask-image-y-from-color": [{
29534
- "mask-y-from": scaleColor()
29535
- }],
29536
- "mask-image-y-to-color": [{
29537
- "mask-y-to": scaleColor()
29538
- }],
29539
- "mask-image-radial": [{
29540
- "mask-radial": [isArbitraryVariable, isArbitraryValue]
29541
- }],
29542
- "mask-image-radial-from-pos": [{
29543
- "mask-radial-from": scaleMaskImagePosition()
29544
- }],
29545
- "mask-image-radial-to-pos": [{
29546
- "mask-radial-to": scaleMaskImagePosition()
29547
- }],
29548
- "mask-image-radial-from-color": [{
29549
- "mask-radial-from": scaleColor()
29550
- }],
29551
- "mask-image-radial-to-color": [{
29552
- "mask-radial-to": scaleColor()
29553
- }],
29554
- "mask-image-radial-shape": [{
29555
- "mask-radial": ["circle", "ellipse"]
29556
- }],
29557
- "mask-image-radial-size": [{
29558
- "mask-radial": [{
29559
- closest: ["side", "corner"],
29560
- farthest: ["side", "corner"]
29561
- }]
29562
- }],
29563
- "mask-image-radial-pos": [{
29564
- "mask-radial-at": scalePosition()
29565
- }],
29566
- "mask-image-conic-pos": [{
29567
- "mask-conic": [isNumber]
29568
- }],
29569
- "mask-image-conic-from-pos": [{
29570
- "mask-conic-from": scaleMaskImagePosition()
29571
- }],
29572
- "mask-image-conic-to-pos": [{
29573
- "mask-conic-to": scaleMaskImagePosition()
29574
- }],
29575
- "mask-image-conic-from-color": [{
29576
- "mask-conic-from": scaleColor()
29577
- }],
29578
- "mask-image-conic-to-color": [{
29579
- "mask-conic-to": scaleColor()
29580
- }],
29581
- /**
29582
- * Mask Mode
29583
- * @see https://tailwindcss.com/docs/mask-mode
29584
- */
29585
- "mask-mode": [{
29586
- mask: ["alpha", "luminance", "match"]
29587
- }],
29588
- /**
29589
- * Mask Origin
29590
- * @see https://tailwindcss.com/docs/mask-origin
29591
- */
29592
- "mask-origin": [{
29593
- "mask-origin": ["border", "padding", "content", "fill", "stroke", "view"]
29594
- }],
29595
- /**
29596
- * Mask Position
29597
- * @see https://tailwindcss.com/docs/mask-position
29598
- */
29599
- "mask-position": [{
29600
- mask: scaleBgPosition()
29601
- }],
29602
- /**
29603
- * Mask Repeat
29604
- * @see https://tailwindcss.com/docs/mask-repeat
29605
- */
29606
- "mask-repeat": [{
29607
- mask: scaleBgRepeat()
29608
- }],
29609
- /**
29610
- * Mask Size
29611
- * @see https://tailwindcss.com/docs/mask-size
29612
- */
29613
- "mask-size": [{
29614
- mask: scaleBgSize()
29615
- }],
29616
- /**
29617
- * Mask Type
29618
- * @see https://tailwindcss.com/docs/mask-type
29619
- */
29620
- "mask-type": [{
29621
- "mask-type": ["alpha", "luminance"]
29622
- }],
29623
- /**
29624
- * Mask Image
29625
- * @see https://tailwindcss.com/docs/mask-image
29626
- */
29627
- "mask-image": [{
29628
- mask: ["none", isArbitraryVariable, isArbitraryValue]
29629
- }],
29630
- // ---------------
29631
- // --- Filters ---
29632
- // ---------------
29633
- /**
29634
- * Filter
29635
- * @see https://tailwindcss.com/docs/filter
29636
- */
29637
- filter: [{
29638
- filter: [
29639
- // Deprecated since Tailwind CSS v3.0.0
29640
- "",
29641
- "none",
29642
- isArbitraryVariable,
29643
- isArbitraryValue
29644
- ]
29645
- }],
29646
- /**
29647
- * Blur
29648
- * @see https://tailwindcss.com/docs/blur
29649
- */
29650
- blur: [{
29651
- blur: scaleBlur()
29652
- }],
29653
- /**
29654
- * Brightness
29655
- * @see https://tailwindcss.com/docs/brightness
29656
- */
29657
- brightness: [{
29658
- brightness: [isNumber, isArbitraryVariable, isArbitraryValue]
29659
- }],
29660
- /**
29661
- * Contrast
29662
- * @see https://tailwindcss.com/docs/contrast
29663
- */
29664
- contrast: [{
29665
- contrast: [isNumber, isArbitraryVariable, isArbitraryValue]
29666
- }],
29667
- /**
29668
- * Drop Shadow
29669
- * @see https://tailwindcss.com/docs/drop-shadow
29670
- */
29671
- "drop-shadow": [{
29672
- "drop-shadow": [
29673
- // Deprecated since Tailwind CSS v4.0.0
29674
- "",
29675
- "none",
29676
- themeDropShadow,
29677
- isArbitraryVariableShadow,
29678
- isArbitraryShadow
29679
- ]
29680
- }],
29681
- /**
29682
- * Drop Shadow Color
29683
- * @see https://tailwindcss.com/docs/filter-drop-shadow#setting-the-shadow-color
29684
- */
29685
- "drop-shadow-color": [{
29686
- "drop-shadow": scaleColor()
29687
- }],
29688
- /**
29689
- * Grayscale
29690
- * @see https://tailwindcss.com/docs/grayscale
29691
- */
29692
- grayscale: [{
29693
- grayscale: ["", isNumber, isArbitraryVariable, isArbitraryValue]
29694
- }],
29695
- /**
29696
- * Hue Rotate
29697
- * @see https://tailwindcss.com/docs/hue-rotate
29698
- */
29699
- "hue-rotate": [{
29700
- "hue-rotate": [isNumber, isArbitraryVariable, isArbitraryValue]
29701
- }],
29702
- /**
29703
- * Invert
29704
- * @see https://tailwindcss.com/docs/invert
29705
- */
29706
- invert: [{
29707
- invert: ["", isNumber, isArbitraryVariable, isArbitraryValue]
29708
- }],
29709
- /**
29710
- * Saturate
29711
- * @see https://tailwindcss.com/docs/saturate
29712
- */
29713
- saturate: [{
29714
- saturate: [isNumber, isArbitraryVariable, isArbitraryValue]
29715
- }],
29716
- /**
29717
- * Sepia
29718
- * @see https://tailwindcss.com/docs/sepia
29719
- */
29720
- sepia: [{
29721
- sepia: ["", isNumber, isArbitraryVariable, isArbitraryValue]
29722
- }],
29723
- /**
29724
- * Backdrop Filter
29725
- * @see https://tailwindcss.com/docs/backdrop-filter
29726
- */
29727
- "backdrop-filter": [{
29728
- "backdrop-filter": [
29729
- // Deprecated since Tailwind CSS v3.0.0
29730
- "",
29731
- "none",
29732
- isArbitraryVariable,
29733
- isArbitraryValue
29734
- ]
29735
- }],
29736
- /**
29737
- * Backdrop Blur
29738
- * @see https://tailwindcss.com/docs/backdrop-blur
29739
- */
29740
- "backdrop-blur": [{
29741
- "backdrop-blur": scaleBlur()
29742
- }],
29743
- /**
29744
- * Backdrop Brightness
29745
- * @see https://tailwindcss.com/docs/backdrop-brightness
29746
- */
29747
- "backdrop-brightness": [{
29748
- "backdrop-brightness": [isNumber, isArbitraryVariable, isArbitraryValue]
29749
- }],
29750
- /**
29751
- * Backdrop Contrast
29752
- * @see https://tailwindcss.com/docs/backdrop-contrast
29753
- */
29754
- "backdrop-contrast": [{
29755
- "backdrop-contrast": [isNumber, isArbitraryVariable, isArbitraryValue]
29756
- }],
29757
- /**
29758
- * Backdrop Grayscale
29759
- * @see https://tailwindcss.com/docs/backdrop-grayscale
29760
- */
29761
- "backdrop-grayscale": [{
29762
- "backdrop-grayscale": ["", isNumber, isArbitraryVariable, isArbitraryValue]
29763
- }],
29764
- /**
29765
- * Backdrop Hue Rotate
29766
- * @see https://tailwindcss.com/docs/backdrop-hue-rotate
29767
- */
29768
- "backdrop-hue-rotate": [{
29769
- "backdrop-hue-rotate": [isNumber, isArbitraryVariable, isArbitraryValue]
29770
- }],
29771
- /**
29772
- * Backdrop Invert
29773
- * @see https://tailwindcss.com/docs/backdrop-invert
29774
- */
29775
- "backdrop-invert": [{
29776
- "backdrop-invert": ["", isNumber, isArbitraryVariable, isArbitraryValue]
29777
- }],
29778
- /**
29779
- * Backdrop Opacity
29780
- * @see https://tailwindcss.com/docs/backdrop-opacity
29781
- */
29782
- "backdrop-opacity": [{
29783
- "backdrop-opacity": [isNumber, isArbitraryVariable, isArbitraryValue]
29784
- }],
29785
- /**
29786
- * Backdrop Saturate
29787
- * @see https://tailwindcss.com/docs/backdrop-saturate
29788
- */
29789
- "backdrop-saturate": [{
29790
- "backdrop-saturate": [isNumber, isArbitraryVariable, isArbitraryValue]
29791
- }],
29792
- /**
29793
- * Backdrop Sepia
29794
- * @see https://tailwindcss.com/docs/backdrop-sepia
29795
- */
29796
- "backdrop-sepia": [{
29797
- "backdrop-sepia": ["", isNumber, isArbitraryVariable, isArbitraryValue]
29798
- }],
29799
- // --------------
29800
- // --- Tables ---
29801
- // --------------
29802
- /**
29803
- * Border Collapse
29804
- * @see https://tailwindcss.com/docs/border-collapse
29805
- */
29806
- "border-collapse": [{
29807
- border: ["collapse", "separate"]
29808
- }],
29809
- /**
29810
- * Border Spacing
29811
- * @see https://tailwindcss.com/docs/border-spacing
29812
- */
29813
- "border-spacing": [{
29814
- "border-spacing": scaleUnambiguousSpacing()
29815
- }],
29816
- /**
29817
- * Border Spacing X
29818
- * @see https://tailwindcss.com/docs/border-spacing
29819
- */
29820
- "border-spacing-x": [{
29821
- "border-spacing-x": scaleUnambiguousSpacing()
29822
- }],
29823
- /**
29824
- * Border Spacing Y
29825
- * @see https://tailwindcss.com/docs/border-spacing
29826
- */
29827
- "border-spacing-y": [{
29828
- "border-spacing-y": scaleUnambiguousSpacing()
29829
- }],
29830
- /**
29831
- * Table Layout
29832
- * @see https://tailwindcss.com/docs/table-layout
29833
- */
29834
- "table-layout": [{
29835
- table: ["auto", "fixed"]
29836
- }],
29837
- /**
29838
- * Caption Side
29839
- * @see https://tailwindcss.com/docs/caption-side
29840
- */
29841
- caption: [{
29842
- caption: ["top", "bottom"]
29843
- }],
29844
- // ---------------------------------
29845
- // --- Transitions and Animation ---
29846
- // ---------------------------------
29847
- /**
29848
- * Transition Property
29849
- * @see https://tailwindcss.com/docs/transition-property
29850
- */
29851
- transition: [{
29852
- transition: ["", "all", "colors", "opacity", "shadow", "transform", "none", isArbitraryVariable, isArbitraryValue]
29853
- }],
29854
- /**
29855
- * Transition Behavior
29856
- * @see https://tailwindcss.com/docs/transition-behavior
29857
- */
29858
- "transition-behavior": [{
29859
- transition: ["normal", "discrete"]
29860
- }],
29861
- /**
29862
- * Transition Duration
29863
- * @see https://tailwindcss.com/docs/transition-duration
29864
- */
29865
- duration: [{
29866
- duration: [isNumber, "initial", isArbitraryVariable, isArbitraryValue]
29867
- }],
29868
- /**
29869
- * Transition Timing Function
29870
- * @see https://tailwindcss.com/docs/transition-timing-function
29871
- */
29872
- ease: [{
29873
- ease: ["linear", "initial", themeEase, isArbitraryVariable, isArbitraryValue]
29874
- }],
29875
- /**
29876
- * Transition Delay
29877
- * @see https://tailwindcss.com/docs/transition-delay
29878
- */
29879
- delay: [{
29880
- delay: [isNumber, isArbitraryVariable, isArbitraryValue]
29881
- }],
29882
- /**
29883
- * Animation
29884
- * @see https://tailwindcss.com/docs/animation
29885
- */
29886
- animate: [{
29887
- animate: ["none", themeAnimate, isArbitraryVariable, isArbitraryValue]
29888
- }],
29889
- // ------------------
29890
- // --- Transforms ---
29891
- // ------------------
29892
- /**
29893
- * Backface Visibility
29894
- * @see https://tailwindcss.com/docs/backface-visibility
29895
- */
29896
- backface: [{
29897
- backface: ["hidden", "visible"]
29898
- }],
29899
- /**
29900
- * Perspective
29901
- * @see https://tailwindcss.com/docs/perspective
29902
- */
29903
- perspective: [{
29904
- perspective: [themePerspective, isArbitraryVariable, isArbitraryValue]
29905
- }],
29906
- /**
29907
- * Perspective Origin
29908
- * @see https://tailwindcss.com/docs/perspective-origin
29909
- */
29910
- "perspective-origin": [{
29911
- "perspective-origin": scalePositionWithArbitrary()
29912
- }],
29913
- /**
29914
- * Rotate
29915
- * @see https://tailwindcss.com/docs/rotate
29916
- */
29917
- rotate: [{
29918
- rotate: scaleRotate()
29919
- }],
29920
- /**
29921
- * Rotate X
29922
- * @see https://tailwindcss.com/docs/rotate
29923
- */
29924
- "rotate-x": [{
29925
- "rotate-x": scaleRotate()
29926
- }],
29927
- /**
29928
- * Rotate Y
29929
- * @see https://tailwindcss.com/docs/rotate
29930
- */
29931
- "rotate-y": [{
29932
- "rotate-y": scaleRotate()
29933
- }],
29934
- /**
29935
- * Rotate Z
29936
- * @see https://tailwindcss.com/docs/rotate
29937
- */
29938
- "rotate-z": [{
29939
- "rotate-z": scaleRotate()
29940
- }],
29941
- /**
29942
- * Scale
29943
- * @see https://tailwindcss.com/docs/scale
29944
- */
29945
- scale: [{
29946
- scale: scaleScale()
29947
- }],
29948
- /**
29949
- * Scale X
29950
- * @see https://tailwindcss.com/docs/scale
29951
- */
29952
- "scale-x": [{
29953
- "scale-x": scaleScale()
29954
- }],
29955
- /**
29956
- * Scale Y
29957
- * @see https://tailwindcss.com/docs/scale
29958
- */
29959
- "scale-y": [{
29960
- "scale-y": scaleScale()
29961
- }],
29962
- /**
29963
- * Scale Z
29964
- * @see https://tailwindcss.com/docs/scale
29965
- */
29966
- "scale-z": [{
29967
- "scale-z": scaleScale()
29968
- }],
29969
- /**
29970
- * Scale 3D
29971
- * @see https://tailwindcss.com/docs/scale
29972
- */
29973
- "scale-3d": ["scale-3d"],
29974
- /**
29975
- * Skew
29976
- * @see https://tailwindcss.com/docs/skew
29977
- */
29978
- skew: [{
29979
- skew: scaleSkew()
29980
- }],
29981
- /**
29982
- * Skew X
29983
- * @see https://tailwindcss.com/docs/skew
29984
- */
29985
- "skew-x": [{
29986
- "skew-x": scaleSkew()
29987
- }],
29988
- /**
29989
- * Skew Y
29990
- * @see https://tailwindcss.com/docs/skew
29991
- */
29992
- "skew-y": [{
29993
- "skew-y": scaleSkew()
29994
- }],
29995
- /**
29996
- * Transform
29997
- * @see https://tailwindcss.com/docs/transform
29998
- */
29999
- transform: [{
30000
- transform: [isArbitraryVariable, isArbitraryValue, "", "none", "gpu", "cpu"]
30001
- }],
30002
- /**
30003
- * Transform Origin
30004
- * @see https://tailwindcss.com/docs/transform-origin
30005
- */
30006
- "transform-origin": [{
30007
- origin: scalePositionWithArbitrary()
30008
- }],
30009
- /**
30010
- * Transform Style
30011
- * @see https://tailwindcss.com/docs/transform-style
30012
- */
30013
- "transform-style": [{
30014
- transform: ["3d", "flat"]
30015
- }],
30016
- /**
30017
- * Translate
30018
- * @see https://tailwindcss.com/docs/translate
30019
- */
30020
- translate: [{
30021
- translate: scaleTranslate()
30022
- }],
30023
- /**
30024
- * Translate X
30025
- * @see https://tailwindcss.com/docs/translate
30026
- */
30027
- "translate-x": [{
30028
- "translate-x": scaleTranslate()
30029
- }],
30030
- /**
30031
- * Translate Y
30032
- * @see https://tailwindcss.com/docs/translate
30033
- */
30034
- "translate-y": [{
30035
- "translate-y": scaleTranslate()
30036
- }],
30037
- /**
30038
- * Translate Z
30039
- * @see https://tailwindcss.com/docs/translate
30040
- */
30041
- "translate-z": [{
30042
- "translate-z": scaleTranslate()
30043
- }],
30044
- /**
30045
- * Translate None
30046
- * @see https://tailwindcss.com/docs/translate
30047
- */
30048
- "translate-none": ["translate-none"],
30049
- // ---------------------
30050
- // --- Interactivity ---
30051
- // ---------------------
30052
- /**
30053
- * Accent Color
30054
- * @see https://tailwindcss.com/docs/accent-color
30055
- */
30056
- accent: [{
30057
- accent: scaleColor()
30058
- }],
30059
- /**
30060
- * Appearance
30061
- * @see https://tailwindcss.com/docs/appearance
30062
- */
30063
- appearance: [{
30064
- appearance: ["none", "auto"]
30065
- }],
30066
- /**
30067
- * Caret Color
30068
- * @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities
30069
- */
30070
- "caret-color": [{
30071
- caret: scaleColor()
30072
- }],
30073
- /**
30074
- * Color Scheme
30075
- * @see https://tailwindcss.com/docs/color-scheme
30076
- */
30077
- "color-scheme": [{
30078
- scheme: ["normal", "dark", "light", "light-dark", "only-dark", "only-light"]
30079
- }],
30080
- /**
30081
- * Cursor
30082
- * @see https://tailwindcss.com/docs/cursor
30083
- */
30084
- cursor: [{
30085
- cursor: ["auto", "default", "pointer", "wait", "text", "move", "help", "not-allowed", "none", "context-menu", "progress", "cell", "crosshair", "vertical-text", "alias", "copy", "no-drop", "grab", "grabbing", "all-scroll", "col-resize", "row-resize", "n-resize", "e-resize", "s-resize", "w-resize", "ne-resize", "nw-resize", "se-resize", "sw-resize", "ew-resize", "ns-resize", "nesw-resize", "nwse-resize", "zoom-in", "zoom-out", isArbitraryVariable, isArbitraryValue]
30086
- }],
30087
- /**
30088
- * Field Sizing
30089
- * @see https://tailwindcss.com/docs/field-sizing
30090
- */
30091
- "field-sizing": [{
30092
- "field-sizing": ["fixed", "content"]
30093
- }],
30094
- /**
30095
- * Pointer Events
30096
- * @see https://tailwindcss.com/docs/pointer-events
30097
- */
30098
- "pointer-events": [{
30099
- "pointer-events": ["auto", "none"]
30100
- }],
30101
- /**
30102
- * Resize
30103
- * @see https://tailwindcss.com/docs/resize
30104
- */
30105
- resize: [{
30106
- resize: ["none", "", "y", "x"]
30107
- }],
30108
- /**
30109
- * Scroll Behavior
30110
- * @see https://tailwindcss.com/docs/scroll-behavior
30111
- */
30112
- "scroll-behavior": [{
30113
- scroll: ["auto", "smooth"]
30114
- }],
30115
- /**
30116
- * Scroll Margin
30117
- * @see https://tailwindcss.com/docs/scroll-margin
30118
- */
30119
- "scroll-m": [{
30120
- "scroll-m": scaleUnambiguousSpacing()
30121
- }],
30122
- /**
30123
- * Scroll Margin X
30124
- * @see https://tailwindcss.com/docs/scroll-margin
30125
- */
30126
- "scroll-mx": [{
30127
- "scroll-mx": scaleUnambiguousSpacing()
30128
- }],
30129
- /**
30130
- * Scroll Margin Y
30131
- * @see https://tailwindcss.com/docs/scroll-margin
30132
- */
30133
- "scroll-my": [{
30134
- "scroll-my": scaleUnambiguousSpacing()
30135
- }],
30136
- /**
30137
- * Scroll Margin Start
30138
- * @see https://tailwindcss.com/docs/scroll-margin
30139
- */
30140
- "scroll-ms": [{
30141
- "scroll-ms": scaleUnambiguousSpacing()
30142
- }],
30143
- /**
30144
- * Scroll Margin End
30145
- * @see https://tailwindcss.com/docs/scroll-margin
30146
- */
30147
- "scroll-me": [{
30148
- "scroll-me": scaleUnambiguousSpacing()
30149
- }],
30150
- /**
30151
- * Scroll Margin Top
30152
- * @see https://tailwindcss.com/docs/scroll-margin
30153
- */
30154
- "scroll-mt": [{
30155
- "scroll-mt": scaleUnambiguousSpacing()
30156
- }],
30157
- /**
30158
- * Scroll Margin Right
30159
- * @see https://tailwindcss.com/docs/scroll-margin
30160
- */
30161
- "scroll-mr": [{
30162
- "scroll-mr": scaleUnambiguousSpacing()
30163
- }],
30164
- /**
30165
- * Scroll Margin Bottom
30166
- * @see https://tailwindcss.com/docs/scroll-margin
30167
- */
30168
- "scroll-mb": [{
30169
- "scroll-mb": scaleUnambiguousSpacing()
30170
- }],
30171
- /**
30172
- * Scroll Margin Left
30173
- * @see https://tailwindcss.com/docs/scroll-margin
30174
- */
30175
- "scroll-ml": [{
30176
- "scroll-ml": scaleUnambiguousSpacing()
30177
- }],
30178
- /**
30179
- * Scroll Padding
30180
- * @see https://tailwindcss.com/docs/scroll-padding
30181
- */
30182
- "scroll-p": [{
30183
- "scroll-p": scaleUnambiguousSpacing()
30184
- }],
30185
- /**
30186
- * Scroll Padding X
30187
- * @see https://tailwindcss.com/docs/scroll-padding
30188
- */
30189
- "scroll-px": [{
30190
- "scroll-px": scaleUnambiguousSpacing()
30191
- }],
30192
- /**
30193
- * Scroll Padding Y
30194
- * @see https://tailwindcss.com/docs/scroll-padding
30195
- */
30196
- "scroll-py": [{
30197
- "scroll-py": scaleUnambiguousSpacing()
30198
- }],
30199
- /**
30200
- * Scroll Padding Start
30201
- * @see https://tailwindcss.com/docs/scroll-padding
30202
- */
30203
- "scroll-ps": [{
30204
- "scroll-ps": scaleUnambiguousSpacing()
30205
- }],
30206
- /**
30207
- * Scroll Padding End
30208
- * @see https://tailwindcss.com/docs/scroll-padding
30209
- */
30210
- "scroll-pe": [{
30211
- "scroll-pe": scaleUnambiguousSpacing()
30212
- }],
30213
- /**
30214
- * Scroll Padding Top
30215
- * @see https://tailwindcss.com/docs/scroll-padding
30216
- */
30217
- "scroll-pt": [{
30218
- "scroll-pt": scaleUnambiguousSpacing()
30219
- }],
30220
- /**
30221
- * Scroll Padding Right
30222
- * @see https://tailwindcss.com/docs/scroll-padding
30223
- */
30224
- "scroll-pr": [{
30225
- "scroll-pr": scaleUnambiguousSpacing()
30226
- }],
30227
- /**
30228
- * Scroll Padding Bottom
30229
- * @see https://tailwindcss.com/docs/scroll-padding
30230
- */
30231
- "scroll-pb": [{
30232
- "scroll-pb": scaleUnambiguousSpacing()
30233
- }],
30234
- /**
30235
- * Scroll Padding Left
30236
- * @see https://tailwindcss.com/docs/scroll-padding
30237
- */
30238
- "scroll-pl": [{
30239
- "scroll-pl": scaleUnambiguousSpacing()
30240
- }],
30241
- /**
30242
- * Scroll Snap Align
30243
- * @see https://tailwindcss.com/docs/scroll-snap-align
30244
- */
30245
- "snap-align": [{
30246
- snap: ["start", "end", "center", "align-none"]
30247
- }],
30248
- /**
30249
- * Scroll Snap Stop
30250
- * @see https://tailwindcss.com/docs/scroll-snap-stop
30251
- */
30252
- "snap-stop": [{
30253
- snap: ["normal", "always"]
30254
- }],
30255
- /**
30256
- * Scroll Snap Type
30257
- * @see https://tailwindcss.com/docs/scroll-snap-type
30258
- */
30259
- "snap-type": [{
30260
- snap: ["none", "x", "y", "both"]
30261
- }],
30262
- /**
30263
- * Scroll Snap Type Strictness
30264
- * @see https://tailwindcss.com/docs/scroll-snap-type
30265
- */
30266
- "snap-strictness": [{
30267
- snap: ["mandatory", "proximity"]
30268
- }],
30269
- /**
30270
- * Touch Action
30271
- * @see https://tailwindcss.com/docs/touch-action
30272
- */
30273
- touch: [{
30274
- touch: ["auto", "none", "manipulation"]
30275
- }],
30276
- /**
30277
- * Touch Action X
30278
- * @see https://tailwindcss.com/docs/touch-action
30279
- */
30280
- "touch-x": [{
30281
- "touch-pan": ["x", "left", "right"]
30282
- }],
30283
- /**
30284
- * Touch Action Y
30285
- * @see https://tailwindcss.com/docs/touch-action
30286
- */
30287
- "touch-y": [{
30288
- "touch-pan": ["y", "up", "down"]
30289
- }],
30290
- /**
30291
- * Touch Action Pinch Zoom
30292
- * @see https://tailwindcss.com/docs/touch-action
30293
- */
30294
- "touch-pz": ["touch-pinch-zoom"],
30295
- /**
30296
- * User Select
30297
- * @see https://tailwindcss.com/docs/user-select
30298
- */
30299
- select: [{
30300
- select: ["none", "text", "all", "auto"]
30301
- }],
30302
- /**
30303
- * Will Change
30304
- * @see https://tailwindcss.com/docs/will-change
30305
- */
30306
- "will-change": [{
30307
- "will-change": ["auto", "scroll", "contents", "transform", isArbitraryVariable, isArbitraryValue]
30308
- }],
30309
- // -----------
30310
- // --- SVG ---
30311
- // -----------
30312
- /**
30313
- * Fill
30314
- * @see https://tailwindcss.com/docs/fill
30315
- */
30316
- fill: [{
30317
- fill: ["none", ...scaleColor()]
30318
- }],
30319
- /**
30320
- * Stroke Width
30321
- * @see https://tailwindcss.com/docs/stroke-width
30322
- */
30323
- "stroke-w": [{
30324
- stroke: [isNumber, isArbitraryVariableLength, isArbitraryLength, isArbitraryNumber]
30325
- }],
30326
- /**
30327
- * Stroke
30328
- * @see https://tailwindcss.com/docs/stroke
30329
- */
30330
- stroke: [{
30331
- stroke: ["none", ...scaleColor()]
30332
- }],
30333
- // ---------------------
30334
- // --- Accessibility ---
30335
- // ---------------------
30336
- /**
30337
- * Forced Color Adjust
30338
- * @see https://tailwindcss.com/docs/forced-color-adjust
30339
- */
30340
- "forced-color-adjust": [{
30341
- "forced-color-adjust": ["auto", "none"]
30342
- }]
30343
- },
30344
- conflictingClassGroups: {
30345
- overflow: ["overflow-x", "overflow-y"],
30346
- overscroll: ["overscroll-x", "overscroll-y"],
30347
- inset: ["inset-x", "inset-y", "start", "end", "top", "right", "bottom", "left"],
30348
- "inset-x": ["right", "left"],
30349
- "inset-y": ["top", "bottom"],
30350
- flex: ["basis", "grow", "shrink"],
30351
- gap: ["gap-x", "gap-y"],
30352
- p: ["px", "py", "ps", "pe", "pt", "pr", "pb", "pl"],
30353
- px: ["pr", "pl"],
30354
- py: ["pt", "pb"],
30355
- m: ["mx", "my", "ms", "me", "mt", "mr", "mb", "ml"],
30356
- mx: ["mr", "ml"],
30357
- my: ["mt", "mb"],
30358
- size: ["w", "h"],
30359
- "font-size": ["leading"],
30360
- "fvn-normal": ["fvn-ordinal", "fvn-slashed-zero", "fvn-figure", "fvn-spacing", "fvn-fraction"],
30361
- "fvn-ordinal": ["fvn-normal"],
30362
- "fvn-slashed-zero": ["fvn-normal"],
30363
- "fvn-figure": ["fvn-normal"],
30364
- "fvn-spacing": ["fvn-normal"],
30365
- "fvn-fraction": ["fvn-normal"],
30366
- "line-clamp": ["display", "overflow"],
30367
- rounded: ["rounded-s", "rounded-e", "rounded-t", "rounded-r", "rounded-b", "rounded-l", "rounded-ss", "rounded-se", "rounded-ee", "rounded-es", "rounded-tl", "rounded-tr", "rounded-br", "rounded-bl"],
30368
- "rounded-s": ["rounded-ss", "rounded-es"],
30369
- "rounded-e": ["rounded-se", "rounded-ee"],
30370
- "rounded-t": ["rounded-tl", "rounded-tr"],
30371
- "rounded-r": ["rounded-tr", "rounded-br"],
30372
- "rounded-b": ["rounded-br", "rounded-bl"],
30373
- "rounded-l": ["rounded-tl", "rounded-bl"],
30374
- "border-spacing": ["border-spacing-x", "border-spacing-y"],
30375
- "border-w": ["border-w-x", "border-w-y", "border-w-s", "border-w-e", "border-w-t", "border-w-r", "border-w-b", "border-w-l"],
30376
- "border-w-x": ["border-w-r", "border-w-l"],
30377
- "border-w-y": ["border-w-t", "border-w-b"],
30378
- "border-color": ["border-color-x", "border-color-y", "border-color-s", "border-color-e", "border-color-t", "border-color-r", "border-color-b", "border-color-l"],
30379
- "border-color-x": ["border-color-r", "border-color-l"],
30380
- "border-color-y": ["border-color-t", "border-color-b"],
30381
- translate: ["translate-x", "translate-y", "translate-none"],
30382
- "translate-none": ["translate", "translate-x", "translate-y", "translate-z"],
30383
- "scroll-m": ["scroll-mx", "scroll-my", "scroll-ms", "scroll-me", "scroll-mt", "scroll-mr", "scroll-mb", "scroll-ml"],
30384
- "scroll-mx": ["scroll-mr", "scroll-ml"],
30385
- "scroll-my": ["scroll-mt", "scroll-mb"],
30386
- "scroll-p": ["scroll-px", "scroll-py", "scroll-ps", "scroll-pe", "scroll-pt", "scroll-pr", "scroll-pb", "scroll-pl"],
30387
- "scroll-px": ["scroll-pr", "scroll-pl"],
30388
- "scroll-py": ["scroll-pt", "scroll-pb"],
30389
- touch: ["touch-x", "touch-y", "touch-pz"],
30390
- "touch-x": ["touch"],
30391
- "touch-y": ["touch"],
30392
- "touch-pz": ["touch"]
30393
- },
30394
- conflictingClassGroupModifiers: {
30395
- "font-size": ["leading"]
30396
- },
30397
- orderSensitiveModifiers: ["*", "**", "after", "backdrop", "before", "details-content", "file", "first-letter", "first-line", "marker", "placeholder", "selection"]
30398
- };
30399
- };
30400
- const twMerge = /* @__PURE__ */ createTailwindMerge(getDefaultConfig);
30401
- function cn(...inputs) {
30402
- return twMerge(clsx(inputs));
30403
- }
30404
27437
  function fetchImageAsDataUrl(src) {
30405
27438
  return new Promise((resolve, reject2) => {
30406
27439
  const img = new Image();
@@ -30464,67 +27497,6 @@ TTD mermaid definition render errror: ${M.message}`, "color: yellow"), le("ai",
30464
27497
  });
30465
27498
  return ret;
30466
27499
  }
30467
- function FloatingMenuContainer({
30468
- containerClassname,
30469
- children: children2
30470
- }) {
30471
- const [excalidrawAPI] = jotai.useAtom(excalidrawApiAtom);
30472
- const [pos, setPos] = React.useState(null);
30473
- const [selectKey, setSelectKey] = React.useState("");
30474
- React.useEffect(() => {
30475
- if (!excalidrawAPI) {
30476
- return;
30477
- }
30478
- const unsub = excalidrawAPI.onChange((elements2, appState, files) => {
30479
- const selectedIds = appState.selectedElementIds;
30480
- if (Object.keys(selectedIds).length === 0) {
30481
- setPos(null);
30482
- return;
30483
- }
30484
- const selectedElements = elements2.filter(
30485
- (element2) => selectedIds[element2.id]
30486
- );
30487
- if (selectedElements.some((element2) => element2.type === "embeddable")) {
30488
- setPos(null);
30489
- return;
30490
- }
30491
- const leftX = selectedElements.reduce(
30492
- (acc, element2) => Math.min(acc, element2.x),
30493
- Infinity
30494
- );
30495
- const bottomY = selectedElements.reduce(
30496
- (acc, element2) => Math.max(acc, element2.y + element2.height),
30497
- -Infinity
30498
- );
30499
- const scrollX = appState.scrollX;
30500
- const scrollY = appState.scrollY;
30501
- const zoom = appState.zoom.value;
30502
- const offsetX = (scrollX + leftX) * zoom;
30503
- const offsetY = (scrollY + bottomY) * zoom;
30504
- setPos({ x: offsetX, y: offsetY });
30505
- setSelectKey(Object.keys(selectedIds).join(","));
30506
- });
30507
- return unsub;
30508
- }, [excalidrawAPI]);
30509
- if (!pos) {
30510
- return null;
30511
- }
30512
- return /* @__PURE__ */ jsxRuntime.jsx(
30513
- "div",
30514
- {
30515
- className: cn(
30516
- "floating-menu-container absolute z-10",
30517
- containerClassname
30518
- ),
30519
- style: {
30520
- left: pos.x,
30521
- top: pos.y
30522
- },
30523
- children: children2
30524
- },
30525
- selectKey
30526
- );
30527
- }
30528
27500
  function ApiFactory() {
30529
27501
  const excalidrawAPI = jotai.useAtomValue(excalidrawApiAtom);
30530
27502
  const setApi = jotai.useSetAtom(apiAtom);
@@ -30713,6 +27685,12 @@ TTD mermaid definition render errror: ${M.message}`, "color: yellow"), le("ai",
30713
27685
  }
30714
27686
  const selectedElements = excalidrawAPI.getSceneElements().filter((element2) => appState.selectedElementIds[element2.id]);
30715
27687
  const files = excalidrawAPI.getFiles();
27688
+ if (selectedElements.length === 1 && selectedElements[0].type === "image" && selectedElements[0].fileId) {
27689
+ if (selectedElements[0].fileId.startsWith("http")) {
27690
+ return selectedElements[0].fileId;
27691
+ }
27692
+ return files[selectedElements[0].fileId];
27693
+ }
30716
27694
  const canvas = await t9({
30717
27695
  elements: selectedElements,
30718
27696
  appState: {
@@ -30804,7 +27782,7 @@ TTD mermaid definition render errror: ${M.message}`, "color: yellow"), le("ai",
30804
27782
  }, [excalidrawAPI, setApi]);
30805
27783
  return null;
30806
27784
  }
30807
- function XCanvas({ registerApi, floatingMenu, ...rest }) {
27785
+ function XCanvas({ registerApi, ...rest }) {
30808
27786
  const [api] = jotai.useAtom(apiAtom);
30809
27787
  React.useEffect(() => {
30810
27788
  if (api && registerApi) {
@@ -30820,8 +27798,7 @@ TTD mermaid definition render errror: ${M.message}`, "color: yellow"), le("ai",
30820
27798
  }, [api, registerApi]);
30821
27799
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "w-full h-full relative overflow-hidden", children: [
30822
27800
  /* @__PURE__ */ jsxRuntime.jsx(CustomExcalidraw, { ...rest }),
30823
- /* @__PURE__ */ jsxRuntime.jsx(ApiFactory, {}),
30824
- /* @__PURE__ */ jsxRuntime.jsx(FloatingMenuContainer, { children: floatingMenu })
27801
+ /* @__PURE__ */ jsxRuntime.jsx(ApiFactory, {})
30825
27802
  ] });
30826
27803
  }
30827
27804
  const e$6 = async (e3) => {
@@ -33254,7 +30231,7 @@ return ret;
33254
30231
  var cname = objClass(element2);
33255
30232
  return cname === "[object HTMLCanvasElement]" || cname === "[object OffscreenCanvas]" || cname === "[object Canvas]";
33256
30233
  };
33257
- module3.exports.isImage = function isImage2(element2) {
30234
+ module3.exports.isImage = function isImage(element2) {
33258
30235
  return objClass(element2) === "[object HTMLImageElement]";
33259
30236
  };
33260
30237
  module3.exports.isImageBitmap = function isImageBitmap(element2) {
@@ -34968,7 +31945,7 @@ return ret;
34968
31945
  var cname = objClass(element2);
34969
31946
  return cname === "[object HTMLCanvasElement]" || cname === "[object OffscreenCanvas]" || cname === "[object Canvas]";
34970
31947
  };
34971
- module3.exports.isImage = function isImage2(element2) {
31948
+ module3.exports.isImage = function isImage(element2) {
34972
31949
  return objClass(element2) === "[object HTMLImageElement]";
34973
31950
  };
34974
31951
  module3.exports.isImageBitmap = function isImageBitmap(element2) {
@@ -37072,7 +34049,7 @@ CtrlOrCmd+D για αντιγραφή, ή σύρετε για μετακίνησ
37072
34049
  confirmDialog: C$z,
37073
34050
  default: B$3,
37074
34051
  element: c$S,
37075
- elementLink: r$N,
34052
+ elementLink: r$M,
37076
34053
  encrypted: E$Q,
37077
34054
  errorDialog: y$T,
37078
34055
  errorSplash: h$R,
@@ -213761,34 +210738,34 @@ g.stateGroup line {
213761
210738
  _p2.transitioning = false;
213762
210739
  }
213763
210740
  };
213764
- styfn$8.checkTrigger = function(ele, name, fromValue, toValue2, getTrigger, onTrigger) {
210741
+ styfn$8.checkTrigger = function(ele, name, fromValue, toValue, getTrigger, onTrigger) {
213765
210742
  var prop = this.properties[name];
213766
210743
  var triggerCheck = getTrigger(prop);
213767
210744
  if (ele.removed()) {
213768
210745
  return;
213769
210746
  }
213770
- if (triggerCheck != null && triggerCheck(fromValue, toValue2, ele)) {
210747
+ if (triggerCheck != null && triggerCheck(fromValue, toValue, ele)) {
213771
210748
  onTrigger(prop);
213772
210749
  }
213773
210750
  };
213774
- styfn$8.checkZOrderTrigger = function(ele, name, fromValue, toValue2) {
210751
+ styfn$8.checkZOrderTrigger = function(ele, name, fromValue, toValue) {
213775
210752
  var _this = this;
213776
- this.checkTrigger(ele, name, fromValue, toValue2, function(prop) {
210753
+ this.checkTrigger(ele, name, fromValue, toValue, function(prop) {
213777
210754
  return prop.triggersZOrder;
213778
210755
  }, function() {
213779
210756
  _this._private.cy.notify("zorder", ele);
213780
210757
  });
213781
210758
  };
213782
- styfn$8.checkBoundsTrigger = function(ele, name, fromValue, toValue2) {
213783
- this.checkTrigger(ele, name, fromValue, toValue2, function(prop) {
210759
+ styfn$8.checkBoundsTrigger = function(ele, name, fromValue, toValue) {
210760
+ this.checkTrigger(ele, name, fromValue, toValue, function(prop) {
213784
210761
  return prop.triggersBounds;
213785
210762
  }, function(prop) {
213786
210763
  ele.dirtyCompoundBoundsCache();
213787
210764
  ele.dirtyBoundingBoxCache();
213788
210765
  });
213789
210766
  };
213790
- styfn$8.checkConnectedEdgesBoundsTrigger = function(ele, name, fromValue, toValue2) {
213791
- this.checkTrigger(ele, name, fromValue, toValue2, function(prop) {
210767
+ styfn$8.checkConnectedEdgesBoundsTrigger = function(ele, name, fromValue, toValue) {
210768
+ this.checkTrigger(ele, name, fromValue, toValue, function(prop) {
213792
210769
  return prop.triggersBoundsOfConnectedEdges;
213793
210770
  }, function(prop) {
213794
210771
  ele.connectedEdges().forEach(function(edge) {
@@ -213796,8 +210773,8 @@ g.stateGroup line {
213796
210773
  });
213797
210774
  });
213798
210775
  };
213799
- styfn$8.checkParallelEdgesBoundsTrigger = function(ele, name, fromValue, toValue2) {
213800
- this.checkTrigger(ele, name, fromValue, toValue2, function(prop) {
210776
+ styfn$8.checkParallelEdgesBoundsTrigger = function(ele, name, fromValue, toValue) {
210777
+ this.checkTrigger(ele, name, fromValue, toValue, function(prop) {
213801
210778
  return prop.triggersBoundsOfParallelEdges;
213802
210779
  }, function(prop) {
213803
210780
  ele.parallelEdges().forEach(function(pllEdge) {
@@ -213805,12 +210782,12 @@ g.stateGroup line {
213805
210782
  });
213806
210783
  });
213807
210784
  };
213808
- styfn$8.checkTriggers = function(ele, name, fromValue, toValue2) {
210785
+ styfn$8.checkTriggers = function(ele, name, fromValue, toValue) {
213809
210786
  ele.dirtyStyleCache();
213810
- this.checkZOrderTrigger(ele, name, fromValue, toValue2);
213811
- this.checkBoundsTrigger(ele, name, fromValue, toValue2);
213812
- this.checkConnectedEdgesBoundsTrigger(ele, name, fromValue, toValue2);
213813
- this.checkParallelEdgesBoundsTrigger(ele, name, fromValue, toValue2);
210787
+ this.checkZOrderTrigger(ele, name, fromValue, toValue);
210788
+ this.checkBoundsTrigger(ele, name, fromValue, toValue);
210789
+ this.checkConnectedEdgesBoundsTrigger(ele, name, fromValue, toValue);
210790
+ this.checkParallelEdgesBoundsTrigger(ele, name, fromValue, toValue);
213814
210791
  };
213815
210792
  var styfn$7 = {};
213816
210793
  styfn$7.applyBypass = function(eles, name, value2, updateTransitions) {
@@ -214803,8 +211780,8 @@ g.stateGroup line {
214803
211780
  triggersZOrder: diff.any,
214804
211781
  triggersBounds: diff.any,
214805
211782
  triggersBoundsOfConnectedEdges: diff.any,
214806
- triggersBoundsOfParallelEdges: function triggersBoundsOfParallelEdges(fromValue, toValue2, ele) {
214807
- if (fromValue === toValue2) {
211783
+ triggersBoundsOfParallelEdges: function triggersBoundsOfParallelEdges(fromValue, toValue, ele) {
211784
+ if (fromValue === toValue) {
214808
211785
  return false;
214809
211786
  }
214810
211787
  return ele.pstyle("curve-style").value === "bezier";
@@ -215115,12 +212092,12 @@ g.stateGroup line {
215115
212092
  name: "curve-style",
215116
212093
  type: t5.curveStyle,
215117
212094
  triggersBounds: diff.any,
215118
- triggersBoundsOfParallelEdges: function triggersBoundsOfParallelEdges(fromValue, toValue2) {
215119
- if (fromValue === toValue2) {
212095
+ triggersBoundsOfParallelEdges: function triggersBoundsOfParallelEdges(fromValue, toValue) {
212096
+ if (fromValue === toValue) {
215120
212097
  return false;
215121
212098
  }
215122
212099
  return fromValue === "bezier" || // remove from bundle
215123
- toValue2 === "bezier";
212100
+ toValue === "bezier";
215124
212101
  }
215125
212102
  }, {
215126
212103
  name: "haystack-radius",