@agent-workshop/adoc-plugin-sketch 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +5 -0
- package/THIRD_PARTY_NOTICES.md +49 -0
- package/client/assets/Assistant-Bold-ZDZZ6JHA.woff2 +0 -0
- package/client/assets/Assistant-Medium-DZ25RZU3.woff2 +0 -0
- package/client/assets/Assistant-Regular-PLF2XOGW.woff2 +0 -0
- package/client/assets/Assistant-SemiBold-CZ5MX6FK.woff2 +0 -0
- package/client/chunks/abnfDiagram-VCTEODGH-2YSHEJVH.js +1 -0
- package/client/chunks/ar-SA-G6X2FPQ2-GX62BCXI.js +10 -0
- package/client/chunks/architecture-7GRP2DOG-4UY5A6KB.js +1 -0
- package/client/chunks/architectureDiagram-5GKGNRK7-LP4XI4KG.js +36 -0
- package/client/chunks/az-AZ-76LH7QW2-KTOV3GT2.js +1 -0
- package/client/chunks/bg-BG-XCXSNQG7-NO2DH3YV.js +5 -0
- package/client/chunks/blockDiagram-I7D4REHJ-IPJPP2ME.js +129 -0
- package/client/chunks/bn-BD-2XOGV67Q-ZSKWELQ7.js +5 -0
- package/client/chunks/c4Diagram-7LVT6UL2-MLHH5XX4.js +38 -0
- package/client/chunks/ca-ES-6MX7JW3Y-IO3ZQD7N.js +8 -0
- package/client/chunks/chunk-2OYMTQI6.js +62 -0
- package/client/chunks/chunk-2TX4FLLW.js +1 -0
- package/client/chunks/chunk-2WLNIMY4.js +1 -0
- package/client/chunks/chunk-4HBLZVLU.js +2 -0
- package/client/chunks/chunk-5HIHC3IG.js +1 -0
- package/client/chunks/chunk-5XHPNIPI.js +1 -0
- package/client/chunks/chunk-64LPME4M.js +1 -0
- package/client/chunks/chunk-6FH6746N.js +1 -0
- package/client/chunks/chunk-73VVEQSW.js +1 -0
- package/client/chunks/chunk-7RHOXHZ5.js +90 -0
- package/client/chunks/chunk-B2MFSVBS.js +1 -0
- package/client/chunks/chunk-CE5J3W72.js +12 -0
- package/client/chunks/chunk-CXKJHPHX.js +1 -0
- package/client/chunks/chunk-E2AIA637.js +14 -0
- package/client/chunks/chunk-E7XFAHMN.js +1 -0
- package/client/chunks/chunk-EJQD2IXT.js +1 -0
- package/client/chunks/chunk-FE262Z44.js +15 -0
- package/client/chunks/chunk-GAJMFIA7.js +1 -0
- package/client/chunks/chunk-HAEKHMJU.js +32 -0
- package/client/chunks/chunk-HJFQK7WG.js +1 -0
- package/client/chunks/chunk-IVWUYKM5.js +206 -0
- package/client/chunks/chunk-JZ4ZJBZ6.js +1 -0
- package/client/chunks/chunk-KH7GBC5K.js +2 -0
- package/client/chunks/chunk-KHSEGKVZ.js +168 -0
- package/client/chunks/chunk-LCFSNT7P.js +1 -0
- package/client/chunks/chunk-LFHHSSHU.js +61 -0
- package/client/chunks/chunk-MDNVXSI4.js +2 -0
- package/client/chunks/chunk-MNUFIESR.js +1 -0
- package/client/chunks/chunk-N7MXMWFP.js +178 -0
- package/client/chunks/chunk-NCTJNXDF.js +1 -0
- package/client/chunks/chunk-NG63T254.js +1 -0
- package/client/chunks/chunk-NIKUKBLB.js +88 -0
- package/client/chunks/chunk-O4U2B2FP.js +339 -0
- package/client/chunks/chunk-OBHA6ZZH.js +3 -0
- package/client/chunks/chunk-ODAACDTZ.js +231 -0
- package/client/chunks/chunk-OJKGYKNF.js +1 -0
- package/client/chunks/chunk-PGQZ7D6Y.js +1 -0
- package/client/chunks/chunk-PHKIAKHS.js +1 -0
- package/client/chunks/chunk-QFC5DRNW.js +1 -0
- package/client/chunks/chunk-R3DBUCFV.js +1 -0
- package/client/chunks/chunk-RAO7J2RS.js +2 -0
- package/client/chunks/chunk-RGXY5RZ5.js +72 -0
- package/client/chunks/chunk-SAMZYJP7.js +1 -0
- package/client/chunks/chunk-SZSLRQYT.js +1 -0
- package/client/chunks/chunk-TUQVLAAS.js +133 -0
- package/client/chunks/chunk-WNKOYBND.js +1 -0
- package/client/chunks/chunk-XL2J774Z.js +1 -0
- package/client/chunks/chunk-XLJVPE6C.js +1 -0
- package/client/chunks/chunk-XXLIYJ67.js +7 -0
- package/client/chunks/chunk-XXRUYOBD.js +10 -0
- package/client/chunks/chunk-YOGUIZUU.js +1 -0
- package/client/chunks/chunk-ZCFD2VNP.js +1 -0
- package/client/chunks/chunk-ZPEOMG2W.js +1 -0
- package/client/chunks/chunk-ZY7SRHTL.js +1 -0
- package/client/chunks/classDiagram-ZZMXUADV-GH3ARLMW.js +1 -0
- package/client/chunks/classDiagram-v2-VYDZK3BY-IUS6E72O.js +1 -0
- package/client/chunks/cose-bilkent-JH36ORCC-G5K34DCN.js +1 -0
- package/client/chunks/cs-CZ-2BRQDIVT-4Z3EY5KO.js +11 -0
- package/client/chunks/cynefin-OW5HDTMX-DXOK5U4P.js +1 -0
- package/client/chunks/cynefinDiagram-5FMLGOSQ-SYR47EKT.js +62 -0
- package/client/chunks/da-DK-5WZEPLOC-RUHQXDIT.js +5 -0
- package/client/chunks/dagre-GXQ25YYZ-ULV6OIAG.js +4 -0
- package/client/chunks/de-DE-XR44H4JA-EOOOPWER.js +8 -0
- package/client/chunks/diagram-S7CK7UJ4-6AOGCOQO.js +30 -0
- package/client/chunks/diagram-UQ7AKVKN-3KV5E2UC.js +41 -0
- package/client/chunks/diagram-VSXAHHWV-PHXTKUTN.js +3 -0
- package/client/chunks/diagram-VX7I27RA-EOWYWCSS.js +24 -0
- package/client/chunks/diagram-Z3DM3KII-PJJI3WP4.js +24 -0
- package/client/chunks/directory-open-01563666-YDOZEYW5.js +1 -0
- package/client/chunks/directory-open-4ed118d0-R5D2X2C2.js +1 -0
- package/client/chunks/dist-KSN2466A.js +36 -0
- package/client/chunks/ebnfDiagram-PWID7BFC-7WBYVM7I.js +1 -0
- package/client/chunks/el-GR-BZB4AONW-5N6ZXIC5.js +10 -0
- package/client/chunks/en-B4ZKOASM-LEURBZ5T.js +1 -0
- package/client/chunks/erDiagram-RLTQ6QDP-3AOWMEKR.js +99 -0
- package/client/chunks/es-ES-U4NZUMDT-APBKVTPE.js +9 -0
- package/client/chunks/eu-ES-A7QVB2H4-LP4NH6QU.js +11 -0
- package/client/chunks/eventmodeling-NTZA5JFV-3NROUNRA.js +1 -0
- package/client/chunks/fa-IR-HGAKTJCU-Y3WCI7ID.js +8 -0
- package/client/chunks/fi-FI-Z5N7JZ37-7QNQPSQD.js +6 -0
- package/client/chunks/file-open-002ab408-XGCL7DUJ.js +1 -0
- package/client/chunks/file-open-7c801643-ZLY3IIBE.js +1 -0
- package/client/chunks/file-save-3189631c-G7GP5SLV.js +1 -0
- package/client/chunks/file-save-745eba88-X7TCOSJJ.js +1 -0
- package/client/chunks/flowDiagram-HODETNUW-W74YKWLB.js +1 -0
- package/client/chunks/fr-FR-RHASNOE6-2PIUNLZR.js +9 -0
- package/client/chunks/ganttDiagram-EL5Y4UJY-SZWRROCP.js +292 -0
- package/client/chunks/gitGraph-4MIJSDKK-JMVDN2WQ.js +1 -0
- package/client/chunks/gitGraphDiagram-WWUBYQGX-QAN6WV6O.js +106 -0
- package/client/chunks/gl-ES-HMX3MZ6V-TMH2VLKV.js +10 -0
- package/client/chunks/he-IL-6SHJWFNN-OKXBCUWB.js +10 -0
- package/client/chunks/hi-IN-IWLTKZ5I-E75PNXOC.js +4 -0
- package/client/chunks/hu-HU-A5ZG7DT2-DPC5TYJV.js +7 -0
- package/client/chunks/id-ID-SAP4L64H-6TSH3XUA.js +10 -0
- package/client/chunks/image-GAAHSSAO-EJKU5B4V.js +1 -0
- package/client/chunks/image-blob-reduce.esm-DN36O5MO.js +13 -0
- package/client/chunks/info-A6RAGUB7-ZVJRGHG6.js +1 -0
- package/client/chunks/infoDiagram-27XIBGKW-VQUFGSJI.js +2 -0
- package/client/chunks/ishikawaDiagram-5VMMS53U-7JIVET7N.js +70 -0
- package/client/chunks/it-IT-JPQ66NNP-24JX5Q45.js +11 -0
- package/client/chunks/ja-JP-DBVTYXUO-GAYHHGF5.js +8 -0
- package/client/chunks/journeyDiagram-3NMN7TZE-7W6AO74C.js +139 -0
- package/client/chunks/kaa-6HZHGXH3-PSHLFBIQ.js +1 -0
- package/client/chunks/kab-KAB-ZGHBKWFO-ZX6BROET.js +8 -0
- package/client/chunks/kanban-definition-UXKFOSKX-52HAW7ZH.js +89 -0
- package/client/chunks/katex-42FXWECD.js +257 -0
- package/client/chunks/kk-KZ-P5N5QNE5-4BU5RGOC.js +1 -0
- package/client/chunks/km-KH-HSX4SM5Z-QBYZEWFC.js +11 -0
- package/client/chunks/ko-KR-MTYHY66A-DEIKPXT2.js +9 -0
- package/client/chunks/ku-TR-6OUDTVRD-JLNCWHSJ.js +9 -0
- package/client/chunks/lt-LT-XHIRWOB4-L4ZHXTWC.js +3 -0
- package/client/chunks/lv-LV-5QDEKY6T-LFK6NNCY.js +7 -0
- package/client/chunks/mindmap-definition-YA3MSWOX-GKLYQJ2X.js +96 -0
- package/client/chunks/mr-IN-CRQNXWMA-LAUDEQIE.js +13 -0
- package/client/chunks/my-MM-5M5IBNSE-Y74TOGVR.js +1 -0
- package/client/chunks/nb-NO-T6EIAALU-GV6II6Y2.js +10 -0
- package/client/chunks/nl-NL-IS3SIHDZ-UUNU5XNJ.js +8 -0
- package/client/chunks/nn-NO-6E72VCQL-R2QE3NDA.js +8 -0
- package/client/chunks/oc-FR-POXYY2M6-RYNQ57ZY.js +8 -0
- package/client/chunks/pa-IN-N4M65BXN-QKSF65J6.js +4 -0
- package/client/chunks/packet-AYTQ26CC-YVWETIK5.js +1 -0
- package/client/chunks/pegDiagram-XKGWAZYB-AB6SHBEA.js +1 -0
- package/client/chunks/percentages-BXMCSKIN-UPV2XFHU.js +1 -0
- package/client/chunks/pica-QD4IGBDB.js +17 -0
- package/client/chunks/pie-WAS4IAKB-CJWGV4P5.js +1 -0
- package/client/chunks/pieDiagram-E7YTZNPT-FOLGS2WI.js +39 -0
- package/client/chunks/pl-PL-T2D74RX3-YUADIUZH.js +9 -0
- package/client/chunks/pt-BR-5N22H2LF-5P4A62NJ.js +9 -0
- package/client/chunks/pt-PT-UZXXM6DQ-7RA2Y47G.js +9 -0
- package/client/chunks/quadrantDiagram-AXDQQJYC-X7TDM2WW.js +7 -0
- package/client/chunks/radar-RG4KPBEZ-JSXYSMGS.js +1 -0
- package/client/chunks/railroad-74A4TZTK-2EGB275Y.js +1 -0
- package/client/chunks/railroad-abnf-HS5TGJTU-IBJAQURX.js +1 -0
- package/client/chunks/railroad-ebnf-LZEXJU2U-TRX4Y7YS.js +1 -0
- package/client/chunks/railroad-peg-WCYAUIDC-L25AVSGS.js +1 -0
- package/client/chunks/railroadDiagram-O6MQD6OU-AU35ELXC.js +1 -0
- package/client/chunks/requirementDiagram-BXWQKSXE-S6YB7OOG.js +84 -0
- package/client/chunks/ro-RO-JPDTUUEW-ITY77Q7K.js +11 -0
- package/client/chunks/roundRect-6E7DSTEN.js +1 -0
- package/client/chunks/ru-RU-B4JR7IUQ-DGM6IISX.js +9 -0
- package/client/chunks/sankeyDiagram-P5KCCOFB-XHSRCD4Y.js +40 -0
- package/client/chunks/sequenceDiagram-WJ2MYXX4-OO7YDPKQ.js +162 -0
- package/client/chunks/si-LK-N5RQ5JYF-MVXUXSVQ.js +1 -0
- package/client/chunks/sizeCapture-INFHLROL-QTQMQ6WI.js +1 -0
- package/client/chunks/sk-SK-C5VTKIMK-CZSGBM27.js +6 -0
- package/client/chunks/sl-SI-NN7IZMDC-SHXUALBB.js +6 -0
- package/client/chunks/stateDiagram-D77RDMKH-756NU6HN.js +1 -0
- package/client/chunks/stateDiagram-v2-MP3YSRHH-BOLQ3CYV.js +1 -0
- package/client/chunks/subset-shared.chunk-JOJX6Y73.js +1 -0
- package/client/chunks/subset-worker.chunk-N4WBEVSV.js +1 -0
- package/client/chunks/sv-SE-XGPEYMSR-6ZQEQUQT.js +10 -0
- package/client/chunks/swimlanes-42K2YHIH-ZRVWHHK7.js +1 -0
- package/client/chunks/swimlanesDiagram-VR7AAH4N-LO6VXN2V.js +8 -0
- package/client/chunks/ta-IN-2NMHFXQM-67ILJI63.js +9 -0
- package/client/chunks/th-TH-HPSO5L25-65K6FRAG.js +2 -0
- package/client/chunks/timeline-definition-24CTP7MA-W4TR7UUE.js +120 -0
- package/client/chunks/tr-TR-DEFEU3FU-RCRNXOAY.js +7 -0
- package/client/chunks/treeView-Q6P3EWNA-HLAHVY6T.js +1 -0
- package/client/chunks/treemap-WGGIJYW6-BOTRRGKI.js +1 -0
- package/client/chunks/uk-UA-QMV73CPH-D63BNLMH.js +6 -0
- package/client/chunks/vennDiagram-4TSXK5OY-GNHAKFEF.js +34 -0
- package/client/chunks/vi-VN-M7AON7JQ-RB5TJVK2.js +5 -0
- package/client/chunks/wardley-WFR3VGLG-7N2E2JGX.js +1 -0
- package/client/chunks/wardleyDiagram-VM6X3IG4-EP4MLCCD.js +78 -0
- package/client/chunks/xychartDiagram-S5SC5T6Z-MAW3B6QY.js +7 -0
- package/client/chunks/zh-CN-LNUGB5OW-QZTSQO2D.js +10 -0
- package/client/chunks/zh-HK-E62DVLB3-ZOERDDRS.js +1 -0
- package/client/chunks/zh-TW-RAJ6MFWO-7B7CIDG2.js +9 -0
- package/client/fonts/Assistant/Assistant-Bold.woff2 +0 -0
- package/client/fonts/Assistant/Assistant-Medium.woff2 +0 -0
- package/client/fonts/Assistant/Assistant-Regular.woff2 +0 -0
- package/client/fonts/Assistant/Assistant-SemiBold.woff2 +0 -0
- package/client/fonts/Cascadia/CascadiaCode-Regular.woff2 +0 -0
- package/client/fonts/ComicShanns/ComicShanns-Regular-279a7b317d12eb88de06167bd672b4b4.woff2 +0 -0
- package/client/fonts/ComicShanns/ComicShanns-Regular-6e066e8de2ac57ea9283adb9c24d7f0c.woff2 +0 -0
- package/client/fonts/ComicShanns/ComicShanns-Regular-dc6a8806fa96795d7b3be5026f989a17.woff2 +0 -0
- package/client/fonts/ComicShanns/ComicShanns-Regular-fcb0fc02dcbee4c9846b3e2508668039.woff2 +0 -0
- package/client/fonts/Excalifont/Excalifont-Regular-349fac6ca4700ffec595a7150a0d1e1d.woff2 +0 -0
- package/client/fonts/Excalifont/Excalifont-Regular-3f2c5db56cc93c5a6873b1361d730c16.woff2 +0 -0
- package/client/fonts/Excalifont/Excalifont-Regular-41b173a47b57366892116a575a43e2b6.woff2 +0 -0
- package/client/fonts/Excalifont/Excalifont-Regular-623ccf21b21ef6b3a0d87738f77eb071.woff2 +0 -0
- package/client/fonts/Excalifont/Excalifont-Regular-a88b72a24fb54c9f94e3b5fdaa7481c9.woff2 +0 -0
- package/client/fonts/Excalifont/Excalifont-Regular-b9dcf9d2e50a1eaf42fc664b50a3fd0d.woff2 +0 -0
- package/client/fonts/Excalifont/Excalifont-Regular-be310b9bcd4f1a43f571c46df7809174.woff2 +0 -0
- package/client/fonts/Liberation/LiberationSans-Regular.woff2 +0 -0
- package/client/fonts/Lilita/Lilita-Regular-i7dPIFZ9Zz-WBtRtedDbYE98RXi4EwSsbg.woff2 +0 -0
- package/client/fonts/Lilita/Lilita-Regular-i7dPIFZ9Zz-WBtRtedDbYEF8RXi4EwQ.woff2 +0 -0
- package/client/fonts/Nunito/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTA3j6zbXWjgevT5.woff2 +0 -0
- package/client/fonts/Nunito/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTQ3j6zbXWjgeg.woff2 +0 -0
- package/client/fonts/Nunito/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTk3j6zbXWjgevT5.woff2 +0 -0
- package/client/fonts/Nunito/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTo3j6zbXWjgevT5.woff2 +0 -0
- package/client/fonts/Nunito/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTs3j6zbXWjgevT5.woff2 +0 -0
- package/client/fonts/Virgil/Virgil-Regular.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-019d66dcad46dc156b162d267f981c20.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-04b718e5623574919c8b0dea5f301444.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-069e77aac84590e2e991d0a0176d34f2.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-06c77b8c66e51ed6c63ccb502dd8b8af.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-08e0dc436ad0ad61ba5558db0674d762.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-093b9ef39a46ceae95a1df18a0a3a326.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-095c169f3314805276f603a362766abd.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-09850c4077f3fffe707905872e0e2460.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-0986d134c05864f5025962eef9f994a0.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-0b5d723fdc4e249c140f0909e87d03b4.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-0f626226ba1272e832aea87bafd9720e.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-0f7fb1e0d5015bb1371343153ecf7ce3.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-0fa55a080fcd0f9dc2e0b0058b793df8.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-0facdf1ea213ba40261022f5d5ed4493.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-10a7ae9a371830a80c3d844acf1c02d7.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-112c051027b2d766c19a519f6ee1f4f7.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-11c345711937f0ba4b8f7b6b919c8440.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-12b52b58eb3df36804b9a654ec9ee194.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-13ae07ed2e272d26d59bc0691cd7117a.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-13d2887ec8ee73c43acdabc52a05af7b.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-145aa02cdd91946e67dc934e1acffe75.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-15dc6d811c9cd078f9086a740d5a1038.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-173945821411c09f70c95f98d590e697.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-1b611157cd46bb184d4fa4dae2d6a2b8.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-1e6fd68f1f3902ce48ce8c69df385622.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-1ee544f0f1dac422545c505baa788992.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-1fdc0c67ed57263a80fd108c1f6ccf24.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-203b0e569e3b14aac86a003dc3fa523e.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-20cc1bbf50e7efb442756cb605672c1f.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-20e7bf72fa05de9adf7dbcc7bf51dde6.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-21430ee05a1248901da8d0de08744d47.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-23686f7f29da6e8008c36dd3a80c83d6.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-23ad2d71b280f00b1363b95b7bea94eb.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-23f228f3999c01983860012330e4be08.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-24476a126f129212beb33f66853ea151.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-24a21c1e4449222e8d1898d69ff3a404.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-25b7f38e18f035f96cb5e547bd2bd08c.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-29cec36cd205b211da97acabaa62f055.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-2a26d20a23b00898ce82f09d2ee47c3f.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-2adbc89c11e65905393d3dfc468b9d5b.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-2b7441d46298788ac94e610ffcc709b6.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-2b77e8ebfb2367ab2662396a60e7d320.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-2cf96d082d35ea3d8106851223ad0d16.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-2d43040e86ff03ba677f6f9c04cd0805.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-2e33e8dc771ef5e1d9127d60a6b73679.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-33432927cd87d40cfe393c7482bf221f.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-353f33792a8f60dc69323ddf635a269e.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-36925dfe329a45086cbb7fc5c20d45ac.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-3717077e38f98d89eae729b6c14e56dc.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-3756e81d3e149cf6099163ee79944fec.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-395c35dd584b56b0789f58a0559beaf1.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-3c9de2ae0ea4bc91a510942dfa4be8d2.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-3cc70dbb64df5b21f1326cc24dee2195.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-3e1f8f654357353bf0e04ba5c34b5f7f.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-3e63ed8162808a9e425ed80a8bc79114.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-3eaa538115d76932653c21d8dc28f207.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-4095eb84ef3874e2600247bee0b04026.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-41521fade99856108931b4768b1b2648.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-450da755d5bcb70906e1295e559b9602.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-452225341522a7942f0f6aab1a5c91a3.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-4535823663ad81405188a528d8f2b1a2.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-4806e761d750087c2d734fc64596eaff.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-4a0fdb40036e87b40aa08dd30584cb85.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-4a38cc3e9cf104e69ba246d37f8cf135.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-4aca6a43e59aceee2166b0c7e4e85ef1.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-4bfaa8ffa64c5ee560aa2daba7c9cbd3.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-4dc6d5f188d5c96d44815cd1e81aa885.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-4ddc14ed3eb0c3e46364317dfc0144a3.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-4ee10ae43505e2e0bc62656ced49c0fa.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-4f50e5136e136527280bc902c5817561.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-51502f1206be09c565f1547c406e9558.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-51a0e808bbc8361236ac521a119758a3.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-52a84a22fd1369bffeaf21da2d6158dc.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-5330a2119a716e4e7224ed108b085dac.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-543fa46ace099a7099dad69123399400.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-544fc28abe2c5c30e62383fd4dac255f.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-54acdfc2166ad7fcbd074f75fd4a56ba.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-5572b3513ba8df57a3d5d7303ee6b11b.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-56467a5c8840c4d23a60b2f935114848.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-56a32a7689abd0326e57c10c6c069bb4.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-57862b464a55b18c7bf234ce22907d73.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-583d166e56ba0de4b77eabb47ef67839.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-5882ffa04f32584d26109137e2da4352.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-58fd02350d0bc52cf1ca3bb32ce9766e.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-5935a5775af3d5c6307ac667bd9ae74e.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-59e9ff77b0efaf684bc09274fb6908c9.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-5a1ce3117cfe90c48e8fb4a9a00f694d.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-5a45d991244d4c7140217e1e5f5ca4f4.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-5a7fac4b8b23a6e4e5ba0c9bf1756c91.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-5b0ed6971aaab9c8ad563230bd5471a7.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-5d2898fbc097a7e24c6f38d80587621e.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-603aefd23e350ba7eb124273e3c9bcf1.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-60a3089806700d379f11827ee9843b6b.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-60a41c7e1c68f22424e6d22df544bc82.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-642b26e2e5f5fb780b51b593dbc8c851.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-66493ba5a8367f2928812f446f47b56a.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-670ba603758d94268e8606f240a42e12.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-671a2c20b1eb9e4ef8a192833940e319.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-684d65f1793cac449dde5d59cb3c47fb.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-69c09cc5fa3e55c74fc4821f76909cc3.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-6ae5b42180ad70b971c91e7eefb8eba2.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-6e092f71c1e634059ada0e52abadce67.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-6f3256af8454371776bc46670d33cc65.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-6fe5c5973cc06f74b2387a631ea36b88.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-70c2eb8d64e71a42a834eb857ea9df51.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-70e811fd7994e61f408c923de6ddd078.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-7197d6fda6cba7c3874c53d6381ca239.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-72252d73220fa3cd856677888cee1635.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-72536a3d71b694a0d53dd90ddceae41e.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-726303e0774b4e678bff8c2deb6ca603.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-733171b4ffcd17ea1fe1c0ba627173bf.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-739bc1a567439c7cffcd1614644593d2.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-73e309718fd16cea44b4d54a33581811.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-7494dc504ae00ee9cd0505f990f88c5d.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-74e2263a91439c25b91d5132ce9f4d62.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-761d05e3cd968cf574166867998ef06a.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-7718fe60986d8b42b1be9c5ace5ccf25.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-774d4f764a1299da5d28ec2f2ffe0d69.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-79d494361ae093b69e74ee9dbe65bfd4.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-79f007c1c6d07557120982951ea67998.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-7a07ddc0f0c0f5f4a9bad6ee3dda66b5.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-7ab2bed91166a9dca83a5ebfbe2a7f38.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-7ccce86603f80a099ddb0cb21d4ae3e3.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-7e4bde7e9c7f84cd34d8a845e384c746.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-7e929f262f30c8ee78bf398150b1a7cd.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-7eb9fffd1aa890d07d0f88cc82e6cfe4.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-7f855356ab893b0d2b9c1c83b8116f0e.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-829615148e6357d826b9242eb7fbbd1e.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-866fa7613df6b3fd272bcfd4530c0bb9.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-87599f94b6cc129d505b375798d0d751.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-8c2f33cee3993174f7e87c28e4bf42ee.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-8d3bcabb847b56243b16afe62adaaf21.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-8de5b863cb50dfefdd07cb11c774d579.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-8e9f97f01034820170065b2921b4fb5e.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-8f476c4c99813d57cbe6eca4727388ad.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-903bb6865f3452e2fda42e3a25547bc5.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-91ddb2969bf2d31ba02ad82998d1314c.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-938d90c10ff8c20386af7f242c05d6b0.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-93fc8f28a33234bcadf1527cafabd502.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-95429962233afd82db1c27df1500a28c.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-9544732d2e62d1a429674f8ee41b5d3a.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-9592bfc861f07bcb8d75c196b370e548.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-95bfd249da4902577b4b7d76ebdd0b44.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-968cffdc8ee679da094e77ebf50f58ef.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-97f7f48ce90c9429bf32ae51469db74d.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-982b630266d87db93d2539affb1275c6.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-98f2ad84457de7f3740d9920b8fa8667.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-99a16ef6a64934d5781933dbd9c46b2e.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-9cfb2a77a4e45025105ad29a1748b90d.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-9d81066dd2b337c938df6e90380a00dc.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-9eb5a99df4e76ac3363453ac9ca288b1.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-a004ddfcb26e67bd6e678c8ed19e25ce.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-a0ca5df4258213d7fc9fce80f65ce760.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-a1f916d6039285c4ffb900cd654e418f.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-a203b91dad570bf05a58c3c3ddb529bf.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-a365e82ed54697a52f27adcea1315fe8.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-a4c34be6d42152e64b0df90bc4607f64.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-a7accba310e821da5505f71c03b76bdb.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-aa0d470430e6391eca720c7cfa44446f.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-aa5c9ca6cf4fba00433b7aa3fa10671a.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-ac9ceb44437becc3e9c4dbfebab7fc2d.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-b1220a3c61f85cc0408deedb4c5f57a2.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-b358f7a51ece39a3247942b1feabdb29.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-b57aaedfd8ebdf3931f25119dc6a5eb2.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-b5c1596551c256e0e9cf02028595b092.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-b6d128682ee29e471486354d486a1b90.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-b6fd38ca30869792244804b04bc058da.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-b7d203b051eff504ff59ddca7576b6a9.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-b96d9226ce77ec94ceca043d712182e6.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-ba3de316d63c7e339987b16f41a0b879.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-bafff7a14c27403dcc6cf1432e8ea836.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-bd77e3c7f9e0b072d96af37f73d1aa32.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-be549ab72f0719d606a5c01e2c0219b6.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-c16ed9740b85badf16e86ea782a3062f.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-c1f94158256bb1f3bf665b053d895af9.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-c40533fdf4cc57177b12803598af7e59.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-c4a687ac4f0c2766eefc9f77ed99cddf.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-c69f61a4ab18d0488c8d1fc12e7028e8.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-c8b71798409ccc126ee264a00aadcf21.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-c99eda15fc26a2941579560f76c3a5cf.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-cb17fc3db95f6d139afc9d31a8e93293.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-cbaaefaaf326668277aa24dfa93c4d28.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-cd145ce4a0ea18469358df53c207bc1b.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-cdbce89e82cc1ab53a2decbf5819278f.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-ce4884f96f11589608b76b726a755803.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-cf2cc71752631e579e35b0e423bf2638.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-cf6ff4e0f491ca0cf3038187a997b9b4.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-cfb211578629b7e8153b37240de6a9d5.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-d0cf73942fea1c74edbdf0b3011f4656.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-d2666cbed13462c5dc36fa2f15c202ca.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-d3716376641d615e2995605b29bca7b6.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-dac48066b5883d8b4551fc584f0c2a3e.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-dbea1af6dcd9860be40c3d18254338f5.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-e11567fd2accf9957cd0d3c2be937d87.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-e2ead7ea7da0437f085f42ffc05f8d13.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-e3fcf5180fd466c8915c4e8069491054.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-e480d9c614742d05f0e78f274f1e69e6.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-e4bca6cfa53e499cae0a6be4894a90e9.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-e51ef413167c6e14e0c0fdcc585f2fc9.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-e5f453bb04da18eed01675eeebd88bf8.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-e656f091b9dc4709722c9f4b84d3c797.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-ec181b795ac1fb5a50d700b6e996d745.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-ee8bae97908d5147b423f77ad0d3c1bb.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-f0f13b5c60e0af5553bd359f5513be1b.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-f2b54d4e7be0eaefe1c2c56836fa5368.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-f56414bf9bced67990def8660e306759.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-f5d079153c99a25b9be5b8583c4cc8a7.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-f6032fc06eb20480f096199713f70885.woff2 +0 -0
- package/client/fonts/Xiaolai/Xiaolai-Regular-f8ee5d36068a42b51d0e4a1116cfcec1.woff2 +0 -0
- package/client/index.css +1 -0
- package/client/index.js +213 -0
- package/client/licenses/@babel__runtime@7.29.7/LICENSE +22 -0
- package/client/licenses/@braintree__sanitize-url@6.0.2/LICENSE +21 -0
- package/client/licenses/@braintree__sanitize-url@7.1.2/LICENSE +21 -0
- package/client/licenses/@excalidraw__excalidraw@0.18.1/LICENSE +21 -0
- package/client/licenses/@excalidraw__laser-pointer@1.3.1/LICENSE +21 -0
- package/client/licenses/@excalidraw__markdown-to-text@0.1.2/LICENSE +21 -0
- package/client/licenses/@excalidraw__mermaid-to-excalidraw@2.2.2/LICENSE +21 -0
- package/client/licenses/@floating-ui__core@1.8.0/LICENSE +20 -0
- package/client/licenses/@floating-ui__dom@1.8.0/LICENSE +20 -0
- package/client/licenses/@floating-ui__react-dom@2.1.9/LICENSE +20 -0
- package/client/licenses/@floating-ui__utils@0.2.12/LICENSE +20 -0
- package/client/licenses/@iconify__utils@3.1.7/license.txt +21 -0
- package/client/licenses/@mermaid-js__parser@1.2.1/LICENSE +21 -0
- package/client/licenses/@radix-ui__primitive@1.0.0/LICENSE +21 -0
- package/client/licenses/@radix-ui__primitive@1.1.1/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-arrow@1.1.2/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-collection@1.0.1/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-compose-refs@1.0.0/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-compose-refs@1.1.1/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-context@1.0.0/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-context@1.1.1/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-direction@1.0.0/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-dismissable-layer@1.1.5/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-focus-guards@1.1.1/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-focus-scope@1.1.2/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-id@1.0.0/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-id@1.1.0/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-popover@1.1.6/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-popper@1.2.2/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-portal@1.1.4/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-presence@1.0.0/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-presence@1.1.2/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-primitive@1.0.1/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-primitive@2.0.2/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-roving-focus@1.0.2/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-slot@1.0.1/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-slot@1.1.2/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-tabs@1.0.2/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-use-callback-ref@1.0.0/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-use-callback-ref@1.1.0/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-use-controllable-state@1.0.0/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-use-controllable-state@1.1.0/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-use-escape-keydown@1.1.0/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-use-layout-effect@1.0.0/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-use-layout-effect@1.1.0/LICENSE +21 -0
- package/client/licenses/@radix-ui__react-use-size@1.1.0/LICENSE +21 -0
- package/client/licenses/@upsetjs__venn.js@2.0.0/LICENSE +22 -0
- package/client/licenses/aria-hidden@1.2.6/LICENSE +21 -0
- package/client/licenses/browser-fs-access@0.29.1/LICENSE +201 -0
- package/client/licenses/canvas-roundrect-polyfill@0.0.1/LICENSE +21 -0
- package/client/licenses/clsx@1.1.1/license +9 -0
- package/client/licenses/cose-base@1.0.3/LICENSE +21 -0
- package/client/licenses/cose-base@2.2.0/LICENSE +21 -0
- package/client/licenses/crc-32@0.3.0/LICENSE +14 -0
- package/client/licenses/cytoscape-cose-bilkent@4.1.0/LICENSE +21 -0
- package/client/licenses/cytoscape-fcose@2.2.0/LICENSE +19 -0
- package/client/licenses/cytoscape@3.34.3/LICENSE +19 -0
- package/client/licenses/cytoscape@3.34.3/license-update.mjs +32 -0
- package/client/licenses/d3-array@2.12.1/LICENSE +27 -0
- package/client/licenses/d3-array@3.2.4/LICENSE +13 -0
- package/client/licenses/d3-axis@3.0.0/LICENSE +13 -0
- package/client/licenses/d3-brush@3.0.0/LICENSE +13 -0
- package/client/licenses/d3-chord@3.0.1/LICENSE +13 -0
- package/client/licenses/d3-color@3.1.0/LICENSE +13 -0
- package/client/licenses/d3-contour@4.0.2/LICENSE +13 -0
- package/client/licenses/d3-delaunay@6.0.4/LICENSE +14 -0
- package/client/licenses/d3-dispatch@3.0.1/LICENSE +13 -0
- package/client/licenses/d3-drag@3.0.0/LICENSE +13 -0
- package/client/licenses/d3-dsv@3.0.1/LICENSE +13 -0
- package/client/licenses/d3-ease@3.0.1/LICENSE +28 -0
- package/client/licenses/d3-fetch@3.0.1/LICENSE +13 -0
- package/client/licenses/d3-force@3.0.0/LICENSE +13 -0
- package/client/licenses/d3-format@3.1.2/LICENSE +13 -0
- package/client/licenses/d3-geo@3.1.1/LICENSE +34 -0
- package/client/licenses/d3-hierarchy@3.1.2/LICENSE +13 -0
- package/client/licenses/d3-interpolate@3.0.1/LICENSE +13 -0
- package/client/licenses/d3-path@1.0.9/LICENSE +27 -0
- package/client/licenses/d3-path@3.1.0/LICENSE +13 -0
- package/client/licenses/d3-polygon@3.0.1/LICENSE +13 -0
- package/client/licenses/d3-quadtree@3.0.1/LICENSE +13 -0
- package/client/licenses/d3-random@3.0.1/LICENSE +13 -0
- package/client/licenses/d3-sankey@0.12.3/LICENSE +27 -0
- package/client/licenses/d3-scale-chromatic@3.1.0/LICENSE +28 -0
- package/client/licenses/d3-scale@4.0.2/LICENSE +13 -0
- package/client/licenses/d3-selection@3.0.0/LICENSE +13 -0
- package/client/licenses/d3-shape@1.3.7/LICENSE +27 -0
- package/client/licenses/d3-shape@3.2.0/LICENSE +13 -0
- package/client/licenses/d3-time-format@4.1.0/LICENSE +13 -0
- package/client/licenses/d3-time@3.1.0/LICENSE +13 -0
- package/client/licenses/d3-timer@3.0.1/LICENSE +13 -0
- package/client/licenses/d3-transition@3.0.1/LICENSE +13 -0
- package/client/licenses/d3-zoom@3.0.0/LICENSE +13 -0
- package/client/licenses/d3@7.9.0/LICENSE +13 -0
- package/client/licenses/dagre-d3-es@7.0.14/LICENSE.md +23 -0
- package/client/licenses/dayjs@1.11.23/LICENSE +21 -0
- package/client/licenses/delaunator@5.1.0/LICENSE +15 -0
- package/client/licenses/detect-node-es@1.1.0/LICENSE +21 -0
- package/client/licenses/dompurify@3.4.16/LICENSE +202 -0
- package/client/licenses/dompurify@3.4.16/LICENSE-MPL +373 -0
- package/client/licenses/es-toolkit@1.52.0/LICENSE +21 -0
- package/client/licenses/es-toolkit@1.52.0/NOTICE +39 -0
- package/client/licenses/es6-promise-pool@2.5.0/LICENSE +19 -0
- package/client/licenses/fastdom@1.0.12/LICENSE +9 -0
- package/client/licenses/fastdom@1.0.12/SOURCE.txt +1 -0
- package/client/licenses/fractional-indexing@3.2.0/LICENSE +121 -0
- package/client/licenses/fuzzy@0.1.3/LICENSE-MIT +22 -0
- package/client/licenses/get-nonce@1.0.1/LICENSE +21 -0
- package/client/licenses/hachure-fill@0.5.2/LICENSE +21 -0
- package/client/licenses/image-blob-reduce@3.0.1/LICENSE +21 -0
- package/client/licenses/internmap@1.0.1/LICENSE +13 -0
- package/client/licenses/internmap@2.0.3/LICENSE +13 -0
- package/client/licenses/jotai-scope@0.7.2/LICENSE +21 -0
- package/client/licenses/jotai@2.11.0/LICENSE +21 -0
- package/client/licenses/katex@0.16.47/LICENSE +21 -0
- package/client/licenses/khroma@2.1.0/license +21 -0
- package/client/licenses/layout-base@1.0.2/LICENSE +21 -0
- package/client/licenses/layout-base@2.0.1/LICENSE +21 -0
- package/client/licenses/lodash-es@4.18.1/LICENSE +47 -0
- package/client/licenses/lodash.debounce@4.0.8/LICENSE +47 -0
- package/client/licenses/lodash.throttle@4.1.1/LICENSE +47 -0
- package/client/licenses/marked@16.4.2/LICENSE.md +44 -0
- package/client/licenses/mermaid@11.17.2/LICENSE +21 -0
- package/client/licenses/nanoid@3.3.3/LICENSE +20 -0
- package/client/licenses/nanoid@4.0.2/LICENSE +20 -0
- package/client/licenses/open-color@1.9.1/LICENSE +21 -0
- package/client/licenses/packages.json +1755 -0
- package/client/licenses/pako@2.0.3/LICENSE +21 -0
- package/client/licenses/path-data-parser@0.1.0/LICENSE +21 -0
- package/client/licenses/perfect-freehand@1.2.0/LICENSE +21 -0
- package/client/licenses/pica@7.1.1/LICENSE +21 -0
- package/client/licenses/png-chunk-text@1.0.0/LICENSE.md +21 -0
- package/client/licenses/png-chunks-encode@1.0.0/LICENSE.md +21 -0
- package/client/licenses/png-chunks-extract@1.0.0/LICENSE.md +21 -0
- package/client/licenses/points-on-curve@0.2.0/LICENSE +21 -0
- package/client/licenses/points-on-curve@1.0.1/LICENSE +21 -0
- package/client/licenses/points-on-path@0.2.1/LICENSE +21 -0
- package/client/licenses/react-dom@19.3.0/LICENSE +21 -0
- package/client/licenses/react-remove-scroll-bar@2.3.8/LICENSE +21 -0
- package/client/licenses/react-remove-scroll@2.7.2/LICENSE +21 -0
- package/client/licenses/react-style-singleton@2.2.3/LICENSE +21 -0
- package/client/licenses/react@19.3.0/LICENSE +21 -0
- package/client/licenses/robust-predicates@3.0.3/LICENSE +24 -0
- package/client/licenses/roughjs@4.6.4/LICENSE +21 -0
- package/client/licenses/roughjs@4.6.6/LICENSE +21 -0
- package/client/licenses/scheduler@0.28.0/LICENSE +21 -0
- package/client/licenses/sliced@1.0.1/LICENSE +22 -0
- package/client/licenses/stylis@4.4.0/LICENSE +21 -0
- package/client/licenses/ts-dedent@2.3.0/LICENSE +21 -0
- package/client/licenses/tslib@2.8.1/LICENSE.txt +12 -0
- package/client/licenses/tunnel-rat@0.1.2/LICENSE +21 -0
- package/client/licenses/use-callback-ref@1.3.3/LICENSE +21 -0
- package/client/licenses/use-sidecar@1.1.3/LICENSE +21 -0
- package/client/licenses/use-sync-external-store@1.7.0/LICENSE +21 -0
- package/client/licenses/uuid@14.0.2/LICENSE.md +9 -0
- package/client/licenses/zustand@4.5.7/LICENSE +21 -0
- package/dist/index.js +41 -0
- package/package.json +46 -0
- package/skill/SKILL.md +64 -0
package/client/index.js
ADDED
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
import{c as R_}from"./chunks/chunk-ZCFD2VNP.js";import{J as K1}from"./chunks/chunk-CE5J3W72.js";import{$ as Ma,$a as Wv,$b as r0,$c as yp,$d as _5,$e as P0,$f as K0,$g as cT,$h as ic,$i as I1,$j as w_,A as $S,Aa as ni,Ab as du,Ac as U3,Ad as x0,Ae as L0,Af as DC,Ag as J0,Ah as hl,Ai as Yp,Aj as se,B as So,Ba as np,Bb as x3,Bc as P3,Bd as w0,Be as Cp,Bf as ye,Bg as e1,Bh as s1,Bi as Iu,Bj as d_,C as qh,Ca as ip,Cb as w3,Cc as pu,Cd as E0,Ce as K5,Cf as M,Cg as qC,Ch as CT,Ci as HT,Cj as Ou,D as VS,Da as _o,Db as E3,Dc as j3,Dd as S0,De as q5,Df as Mp,Dg as QC,Dh as TT,Di as FT,Dj as Xp,E as zv,Ea as ii,Eb as Ie,Ec as H3,Ed as d5,Ee as Q5,Ef as ec,Eg as Su,Eh as Y,Ei as YT,Ej as zu,F as XS,Fa as Xv,Fb as S3,Fc as F3,Fd as u5,Fe as W5,Ff as Ap,Fg as Cr,Fh as ri,Fi as GT,Fj as P1,G as ZS,Ga as rn,Gb as C3,Gc as l0,Gd as C0,Ge as J5,Gf as tc,Gg as WC,Gh as ke,Gi as S1,Gj as u_,H as De,Ha as $s,Hb as op,Hc as No,Hd as T0,He as eC,Hf as Dp,Hg as JC,Hh as _T,Hi as $T,Hj as Zp,I as xr,Ia as m3,Ib as n0,Ic as fp,Id as _0,Ie as R0,If as Y0,Ig as da,Ih as Pi,Ii as VT,Ij as m_,J as Co,Ja as nu,Jb as i0,Jc as Y3,Jd as Lo,Je as O0,Jf as IC,Jg as t1,Jh as Bp,Ji as XT,Jj as h_,K as Qd,Ka as ln,Kb as uu,Kc as G3,Kd as k0,Ke as vu,Kf as Ro,Kg as eT,Kh as ku,Ki as ZT,Kj as j1,L as Wd,La as Yt,Lb as T3,Lc as $3,Ld as M0,Le as z0,Lf as NC,Lg as ul,Lh as pl,Li as C1,Lj as H1,M as To,Ma as h3,Mb as sp,Mc as fu,Md as m5,Me as B0,Mf as LC,Mg as tT,Mh as c1,Mi as KT,Mj as F1,N as Jd,Na as iu,Nb as cp,Nc as gp,Nd as h5,Ne as tC,Nf as G0,Ng as aT,Nh as kT,Ni as T1,Nj as Y1,O as xe,Oa as Ri,Ob as Dn,Oc as V3,Od as p5,Oe as Tp,Of as Ip,Og as Cu,Oh as Up,Oi as Gp,Oj as p_,P as Li,Pa as Vs,Pb as mu,Pc as X3,Pd as f5,Pe as aC,Pf as $0,Pg as xt,Ph as Pp,Pi as qT,Pj as f_,Q as Qh,Qa as Aa,Qb as dp,Qc as Z3,Qd as A0,Qe as nC,Qf as RC,Qg as nT,Qh as fl,Qi as QT,Qj as g_,R as Wh,Ra as Er,Rb as ll,Rc as K3,Rd as g5,Re as iC,Rf as yu,Rg as iT,Rh as MT,Ri as WT,Rj as b_,S as Bv,Sa as p3,Sb as _3,Sc as o0,Sd as b5,Se as cl,Sf as OC,Sg as rT,Sh as AT,Si as _1,Sj as Bu,T as Uv,Ta as Zv,Tb as k3,Tc as q3,Td as v5,Te as rC,Tf as zC,Tg as a1,Th as d1,Ti as JT,Tj as v_,U as Jh,Ua as ru,Ub as zi,Uc as s0,Ud as y5,Ue as lC,Uf as BC,Ug as lT,Uh as jp,Ui as Nu,Uj as y_,V as KS,Va as lu,Vb as Ks,Vc as c0,Vd as x5,Ve as oC,Vf as UC,Vg as nc,Vh as u1,Vi as $p,Vj as x_,W as eu,Wa as Kv,Wb as Ze,Wc as Q3,Wd as w5,We as U0,Wf as Oo,Wg as ml,Wh as Mu,Wi as k1,Wj as G1,X as qS,Xa as rp,Xb as M3,Xc as sl,Xd as E5,Xe as sC,Xf as Np,Xg as Tu,Xh as m1,Xi as M1,Xj as Kp,Y as QS,Ya as qv,Yb as A3,Yc as W3,Yd as S5,Ye as cC,Yf as V0,Yg as n1,Yh as h1,Yi as A1,Yj as lc,Z as Pv,Za as Qv,Zb as up,Zc as bp,Zd as C5,Ze as dC,Zf as X0,Zg as oT,Zh as DT,Zi as e_,Zj as Ue,_ as ep,_a as f3,_b as D3,_c as vp,_d as T5,_e as uC,_f as Z0,_g as sT,_h as gl,_i as D1,_j as $1,a as ca,aa as tp,ab as Z,ac as Ao,ad as d0,ae as k5,af as _p,ag as xu,ah as i1,ai as ji,aj as t_,ak as E_,b as RS,ba as WS,bb as Mn,bc as tt,bd as gu,be as M5,bf as mC,bg as PC,bh as dT,bi as L,bj as Uo,bk as V1,c as Xh,ca as JS,cb as nl,cc as on,cd as xp,ce as A5,cf as hC,cg as jC,ch as uT,ci as IT,cj as a_,ck as qp,d as OS,da as e3,db as Jv,dc as Do,dd as J3,de as D5,df as pC,dg as HC,dh as mT,di as p1,dj as n_,dk as S_,e as R,ea as t3,eb as Xs,ec as qs,ed as u0,ee as I5,ef as fC,eg as FC,eh as $t,ei as rc,ej as Lu,ek as C_,f as U,fa as a3,fb as g3,fc as ae,fd as m0,fe as N5,ff as gC,fg as wu,fh as ne,fi as NT,fj as i_,fk as T_,g as N,ga as n3,gb as e0,gc as I3,gd as e5,ge as L5,gf as bC,gg as YC,gh as hT,gi as Au,gj as Vp,gk as __,h as Zh,ha as tu,hb as b3,hc as mp,hd as t5,he as R5,hf as vC,hg as GC,hh as Op,hi as f1,hj as r_,hk as oc,i as zS,ia as jv,ib as il,ic as Ce,id as a5,ie as O5,if as yC,ig as In,ih as pT,ii as g1,ij as Ru,ik as k_,j as Eo,ja as Hv,jb as ou,jc as Ke,jd as wp,je as z5,jf as xC,jg as gt,jh as fT,ji as Hp,jj as N1,jk as X1,k as BS,ka as i3,kb as An,kc as Gt,kd as n5,ke as B5,kf as wC,kg as Ui,kh as Da,ki as b1,kj as l_,kk as M_,l as US,la as r3,lb as su,lc as me,ld as i5,le as U5,lf as EC,lg as $C,lh as r1,li as LT,lj as L1,lk as A_,m as Ys,ma as Fv,mb as lp,mc as N3,md as Ep,me as P5,mf as j0,mg as VC,mh as gT,mi as RT,mj as Po,mk as D_,n as Nv,na as l3,nb as Zs,nc as ol,nd as r5,ne as j5,nf as SC,ng as ac,nh as l1,ni as OT,nj as R1,nk as Qp,o as Lv,oa as o3,ob as v3,oc as L3,od as Sp,oe as bu,of as CC,og as XC,oh as bT,oi as zT,oj as o_,ok as Z1,p as Rv,pa as s3,pb as y3,pc as hp,pd as h0,pe as D0,pf as H0,pg as ZC,ph as qe,pi as BT,pj as O1,pk as I_,q as PS,qa as c3,qb as ko,qc as Io,qd as l5,qe as H5,qf as F0,qg as q0,qh as Tr,qi as UT,qj as z1,qk as N_,r as jS,ra as Yv,rb as Nt,rc as R3,rd as o5,re as F5,rf as kp,rg as Eu,rh as zp,ri as v1,rj as B1,rk as L_,s as HS,sa as au,sb as B,sc as hu,sd as p0,se as Y5,sf as TC,sg as Lp,sh as vT,si as PT,sj as s_,t as yr,ta as d3,tb as rt,tc as Bi,td as f0,te as G5,tf as Qs,tg as Rp,th as yT,ti as jT,tj as bt,u as Ov,ua as Gv,ub as Oi,uc as Ga,ud as s5,ue as $5,uf as Ws,ug as zo,uh as xT,ui as Fp,uj as c_,v as Gs,va as u3,vb as cu,vc as pp,vd as c5,ve as V5,vf as _C,vg as KC,vh as wT,vi as Du,vj as ce,w as FS,wa as $v,wb as Mo,wc as O3,wd as g0,we as X5,wf as kC,wg as Bo,wh as _u,wi as y1,wj as U1,x as YS,xa as Vv,xb as t0,xc as z3,xd as b0,xe as I0,xf as Js,xg as dl,xh as o1,xi as x1,xj as Ee,y as GS,ya as wr,yb as a0,yc as Sr,yd as v0,ye as Z5,yf as MC,yg as Q0,yh as ET,yi as w1,yj as bl,z as Kh,za as ap,zb as rl,zc as B3,zd as y0,ze as N0,zf as AC,zg as W0,zh as ST,zi as E1,zj as $}from"./chunks/chunk-LFHHSSHU.js";import{a as Ft}from"./chunks/chunk-XXLIYJ67.js";import{b as LS,c as Iv,d as A}from"./chunks/chunk-JZ4ZJBZ6.js";import{b as kn,c as T}from"./chunks/chunk-PHKIAKHS.js";var q_=kn(ma=>{"use strict";var bO=R();function K_(e){var t="https://react.dev/errors/"+e;if(1<arguments.length){t+="?args[]="+encodeURIComponent(arguments[1]);for(var a=2;a<arguments.length;a++)t+="&args[]="+encodeURIComponent(arguments[a])}return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function vl(){}var Ia={d:{f:vl,r:function(){throw Error(K_(522))},D:vl,C:vl,L:vl,m:vl,X:vl,S:vl,M:vl},p:0,findDOMNode:null},vO=Symbol.for("react.portal"),yO=Symbol.for("react.recoverable"),Z_=Symbol.for("react.optimistic_key");function xO(e,t,a){var n=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:vO,key:n==null?null:n===Z_?Z_:""+n,children:e,containerInfo:t,implementation:a}}var Hu=bO.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function af(e,t){if(e==="font")return"";if(typeof t=="string")return t==="use-credentials"?t:""}ma.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=Ia;ma.browser=function(e){return{$$typeof:yO,_reason:e}};ma.createPortal=function(e,t){var a=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)throw Error(K_(299));return xO(e,t,null,a)};ma.flushSync=function(e){var t=Hu.T,a=Ia.p;try{if(Hu.T=null,Ia.p=2,e)return e()}finally{Hu.T=t,Ia.p=a,Ia.d.f()}};ma.preconnect=function(e,t){typeof e=="string"&&(t?(t=t.crossOrigin,t=typeof t=="string"?t==="use-credentials"?t:"":void 0):t=null,Ia.d.C(e,t))};ma.prefetchDNS=function(e){typeof e=="string"&&Ia.d.D(e)};ma.preinit=function(e,t){if(typeof e=="string"&&t&&typeof t.as=="string"){var a=t.as,n=af(a,t.crossOrigin),i=typeof t.integrity=="string"?t.integrity:void 0,r=typeof t.fetchPriority=="string"?t.fetchPriority:void 0;a==="style"?Ia.d.S(e,typeof t.precedence=="string"?t.precedence:void 0,{crossOrigin:n,integrity:i,fetchPriority:r}):a==="script"&&Ia.d.X(e,{crossOrigin:n,integrity:i,fetchPriority:r,nonce:typeof t.nonce=="string"?t.nonce:void 0})}};ma.preinitModule=function(e,t){if(typeof e=="string")if(typeof t=="object"&&t!==null){if(t.as==null||t.as==="script"){var a=af(t.as,t.crossOrigin);Ia.d.M(e,{crossOrigin:a,integrity:typeof t.integrity=="string"?t.integrity:void 0,nonce:typeof t.nonce=="string"?t.nonce:void 0,fetchPriority:typeof t.fetchPriority=="string"?t.fetchPriority:void 0})}}else t==null&&Ia.d.M(e)};ma.preload=function(e,t){if(typeof e=="string"&&typeof t=="object"&&t!==null&&typeof t.as=="string"){var a=t.as,n=af(a,t.crossOrigin);Ia.d.L(e,a,{crossOrigin:n,integrity:typeof t.integrity=="string"?t.integrity:void 0,nonce:typeof t.nonce=="string"?t.nonce:void 0,type:typeof t.type=="string"?t.type:void 0,fetchPriority:typeof t.fetchPriority=="string"?t.fetchPriority:void 0,referrerPolicy:typeof t.referrerPolicy=="string"?t.referrerPolicy:void 0,imageSrcSet:typeof t.imageSrcSet=="string"?t.imageSrcSet:void 0,imageSizes:typeof t.imageSizes=="string"?t.imageSizes:void 0,media:typeof t.media=="string"?t.media:void 0})}};ma.preloadModule=function(e,t){if(typeof e=="string")if(t){var a=af(t.as,t.crossOrigin);Ia.d.m(e,{as:typeof t.as=="string"&&t.as!=="script"?t.as:void 0,crossOrigin:a,integrity:typeof t.integrity=="string"?t.integrity:void 0,nonce:typeof t.nonce=="string"?t.nonce:void 0,fetchPriority:typeof t.fetchPriority=="string"?t.fetchPriority:void 0})}else Ia.d.m(e)};ma.requestFormReset=function(e){Ia.d.r(e)};ma.unstable_batchedUpdates=function(e,t){return e(t)};ma.useFormState=function(e,t,a){return Hu.H.useFormState(e,t,a)};ma.useFormStatus=function(){return Hu.H.useHostTransitionStatus()};ma.version="19.3.0"});var sn=kn((pZ,W_)=>{"use strict";function Q_(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(Q_)}catch(e){console.error(e)}}Q_(),W_.exports=q_()});var w6=kn((y6,x6)=>{(function(){var e=this,t={};typeof y6<"u"?x6.exports=t:e.fuzzy=t,t.simpleFilter=function(a,n){return n.filter(function(i){return t.test(a,i)})},t.test=function(a,n){return t.match(a,n)!==null},t.match=function(a,n,i){i=i||{};var r=0,l=[],o=n.length,d=0,h=0,s=i.pre||"",c=i.post||"",u=i.caseSensitive&&n||n.toLowerCase(),m;a=i.caseSensitive&&a||a.toLowerCase();for(var p=0;p<o;p++)m=n[p],u[p]===a[r]?(m=s+m+c,r+=1,h+=1+h):h=0,d+=h,l[l.length]=m;return r===a.length?(d=u===a?1/0:d,{rendered:l.join(""),score:d}):null},t.filter=function(a,n,i){return!n||n.length===0?[]:typeof a!="string"?n:(i=i||{},n.reduce(function(r,l,o,d){var h=l;i.extract&&(h=i.extract(l));var s=t.match(a,h,i);return s!=null&&(r[r.length]={string:s.rendered,score:s.score,index:o,original:l}),r},[]).sort(function(r,l){var o=l.score-r.score;return o||r.index-l.index}))}})()});var T6=kn(C6=>{"use strict";var Ec=R();function sB(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var cB=typeof Object.is=="function"?Object.is:sB,dB=Ec.useState,uB=Ec.useEffect,mB=Ec.useLayoutEffect,hB=Ec.useDebugValue;function pB(e,t){var a=t(),n=dB({inst:{value:a,getSnapshot:t}}),i=n[0].inst,r=n[1];return mB(function(){i.value=a,i.getSnapshot=t,$y(i)&&r({inst:i})},[e,a,t]),uB(function(){return $y(i)&&r({inst:i}),e(function(){$y(i)&&r({inst:i})})},[e]),hB(a),a}function $y(e){var t=e.getSnapshot;e=e.value;try{var a=t();return!cB(e,a)}catch{return!0}}function fB(e,t){return t()}var gB=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?fB:pB;C6.useSyncExternalStore=Ec.useSyncExternalStore!==void 0?Ec.useSyncExternalStore:gB});var k6=kn((Zq,_6)=>{"use strict";_6.exports=T6()});var A6=kn(M6=>{"use strict";var Af=R(),bB=k6();function vB(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var yB=typeof Object.is=="function"?Object.is:vB,xB=bB.useSyncExternalStore,wB=Af.useRef,EB=Af.useEffect,SB=Af.useMemo,CB=Af.useDebugValue;M6.useSyncExternalStoreWithSelector=function(e,t,a,n,i){var r=wB(null);if(r.current===null){var l={hasValue:!1,value:null};r.current=l}else l=r.current;r=SB(function(){function d(m){if(!h){if(h=!0,s=m,m=n(m),i!==void 0&&l.hasValue){var p=l.value;if(i(p,m))return c=p}return c=m}if(p=c,yB(s,m))return p;var f=n(m);return i!==void 0&&i(p,f)?(s=m,p):(s=m,c=f)}var h=!1,s,c,u=a===void 0?null:a;return[function(){return d(t())},u===null?void 0:function(){return d(u())}]},[t,a,n,i]);var o=xB(e,r[0],r[1]);return EB(function(){l.hasValue=!0,l.value=o},[o]),CB(o),o}});var I6=kn((qq,D6)=>{"use strict";D6.exports=A6()});var tM=kn((XQ,eM)=>{var dU="Expected a function",W6=NaN,uU="[object Symbol]",mU=/^\s+|\s+$/g,hU=/^[-+]0x[0-9a-f]+$/i,pU=/^0b[01]+$/i,fU=/^0o[0-7]+$/i,gU=parseInt,bU=typeof global=="object"&&global&&global.Object===Object&&global,vU=typeof self=="object"&&self&&self.Object===Object&&self,yU=bU||vU||Function("return this")(),xU=Object.prototype,wU=xU.toString,EU=Math.max,SU=Math.min,ex=function(){return yU.Date.now()};function CU(e,t,a){var n,i,r,l,o,d,h=0,s=!1,c=!1,u=!0;if(typeof e!="function")throw new TypeError(dU);t=J6(t)||0,tx(a)&&(s=!!a.leading,c="maxWait"in a,r=c?EU(J6(a.maxWait)||0,t):r,u="trailing"in a?!!a.trailing:u);function m(S){var C=n,_=i;return n=i=void 0,h=S,l=e.apply(_,C),l}function p(S){return h=S,o=setTimeout(g,t),s?m(S):l}function f(S){var C=S-d,_=S-h,D=t-C;return c?SU(D,r-_):D}function y(S){var C=S-d,_=S-h;return d===void 0||C>=t||C<0||c&&_>=r}function g(){var S=ex();if(y(S))return b(S);o=setTimeout(g,f(S))}function b(S){return o=void 0,u&&n?m(S):(n=i=void 0,l)}function v(){o!==void 0&&clearTimeout(o),h=0,n=d=i=o=void 0}function x(){return o===void 0?l:b(ex())}function E(){var S=ex(),C=y(S);if(n=arguments,i=this,d=S,C){if(o===void 0)return p(d);if(c)return o=setTimeout(g,t),m(d)}return o===void 0&&(o=setTimeout(g,t)),l}return E.cancel=v,E.flush=x,E}function tx(e){var t=typeof e;return!!e&&(t=="object"||t=="function")}function TU(e){return!!e&&typeof e=="object"}function _U(e){return typeof e=="symbol"||TU(e)&&wU.call(e)==uU}function J6(e){if(typeof e=="number")return e;if(_U(e))return W6;if(tx(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=tx(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=e.replace(mU,"");var a=pU.test(e);return a||fU.test(e)?gU(e.slice(2),a?2:8):hU.test(e)?W6:+e}eM.exports=CU});var d7=kn(nt=>{"use strict";function Pw(e,t){var a=e.length;e.push(t);e:for(;0<a;){var n=a-1>>>1,i=e[n];if(0<Vg(i,t))e[n]=t,e[a]=i,a=n;else break e}}function nr(e){return e.length===0?null:e[0]}function Zg(e){if(e.length===0)return null;var t=e[0],a=e.pop();if(a!==t){e[0]=a;e:for(var n=0,i=e.length,r=i>>>1;n<r;){var l=2*(n+1)-1,o=e[l],d=l+1,h=e[d];if(0>Vg(o,a))d<i&&0>Vg(h,o)?(e[n]=h,e[d]=a,n=d):(e[n]=o,e[l]=a,n=l);else if(d<i&&0>Vg(h,a))e[n]=h,e[d]=a,n=d;else break e}}return t}function Vg(e,t){var a=e.sortIndex-t.sortIndex;return a!==0?a:e.id-t.id}nt.unstable_now=void 0;typeof performance=="object"&&typeof performance.now=="function"?(t7=performance,nt.unstable_now=function(){return t7.now()}):(zw=Date,a7=zw.now(),nt.unstable_now=function(){return zw.now()-a7});var t7,zw,a7,jr=[],Gl=[],ZG=1,Vn=null,Ca=3,jw=!1,Gm=!1,$m=!1,Hw=!1,r7=typeof setTimeout=="function"?setTimeout:null,l7=typeof clearTimeout=="function"?clearTimeout:null,n7=typeof setImmediate<"u"?setImmediate:null;function Xg(e){for(var t=nr(Gl);t!==null;){if(t.callback===null)Zg(Gl);else if(t.startTime<=e)Zg(Gl),t.sortIndex=t.expirationTime,Pw(jr,t);else break;t=nr(Gl)}}function Fw(e){if($m=!1,Xg(e),!Gm)if(nr(jr)!==null)Gm=!0,ed||(ed=!0,Jc());else{var t=nr(Gl);t!==null&&Yw(Fw,t.startTime-e)}}var ed=!1,Vm=-1,o7=5,s7=-1;function c7(){return Hw?!0:!(nt.unstable_now()-s7<o7)}function Bw(){if(Hw=!1,ed){var e=nt.unstable_now();s7=e;var t=!0;try{e:{Gm=!1,$m&&($m=!1,l7(Vm),Vm=-1),jw=!0;var a=Ca;try{t:{for(Xg(e),Vn=nr(jr);Vn!==null&&!(Vn.expirationTime>e&&c7());){var n=Vn.callback;if(typeof n=="function"){Vn.callback=null,Ca=Vn.priorityLevel;var i=n(Vn.expirationTime<=e);if(e=nt.unstable_now(),typeof i=="function"){Vn.callback=i,Xg(e),t=!0;break t}Vn===nr(jr)&&Zg(jr),Xg(e)}else Zg(jr);Vn=nr(jr)}if(Vn!==null)t=!0;else{var r=nr(Gl);r!==null&&Yw(Fw,r.startTime-e),t=!1}}break e}finally{Vn=null,Ca=a,jw=!1}t=void 0}}finally{t?Jc():ed=!1}}}var Jc;typeof n7=="function"?Jc=function(){n7(Bw)}:typeof MessageChannel<"u"?(Uw=new MessageChannel,i7=Uw.port2,Uw.port1.onmessage=Bw,Jc=function(){i7.postMessage(null)}):Jc=function(){r7(Bw,0)};var Uw,i7;function Yw(e,t){Vm=r7(function(){e(nt.unstable_now())},t)}nt.unstable_IdlePriority=5;nt.unstable_ImmediatePriority=1;nt.unstable_LowPriority=4;nt.unstable_NormalPriority=3;nt.unstable_Profiling=null;nt.unstable_UserBlockingPriority=2;nt.unstable_cancelCallback=function(e){e.callback=null};nt.unstable_forceFrameRate=function(e){0>e||125<e?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):o7=0<e?Math.floor(1e3/e):5};nt.unstable_getCurrentPriorityLevel=function(){return Ca};nt.unstable_next=function(e){switch(Ca){case 1:case 2:case 3:var t=3;break;default:t=Ca}var a=Ca;Ca=t;try{return e()}finally{Ca=a}};nt.unstable_requestPaint=function(){Hw=!0};nt.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var a=Ca;Ca=e;try{return t()}finally{Ca=a}};nt.unstable_scheduleCallback=function(e,t,a){var n=nt.unstable_now();switch(typeof a=="object"&&a!==null?(a=a.delay,a=typeof a=="number"&&0<a?n+a:n):a=n,e){case 1:var i=-1;break;case 2:i=250;break;case 5:i=1073741823;break;case 4:i=1e4;break;default:i=5e3}return i=a+i,e={id:ZG++,callback:t,priorityLevel:e,startTime:a,expirationTime:i,sortIndex:-1},a>n?(e.sortIndex=a,Pw(Gl,e),nr(jr)===null&&e===nr(Gl)&&($m?(l7(Vm),Vm=-1):$m=!0,Yw(Fw,a-n))):(e.sortIndex=i,Pw(jr,e),Gm||jw||(Gm=!0,ed||(ed=!0,Jc()))),e};nt.unstable_shouldYield=c7;nt.unstable_wrapCallback=function(e){var t=Ca;return function(){var a=Ca;Ca=t;try{return e.apply(this,arguments)}finally{Ca=a}}}});var m7=kn((kee,u7)=>{"use strict";u7.exports=d7()});var W9=kn(Av=>{"use strict";var jt=m7(),QN=R(),KG=sn();function H(e){var t="https://react.dev/errors/"+e;if(1<arguments.length){t+="?args[]="+encodeURIComponent(arguments[1]);for(var a=2;a<arguments.length;a++)t+="&args[]="+encodeURIComponent(arguments[a])}return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function WN(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function Lh(e){for(var t=e,a=t;a&&!a.alternate;)t=a,(t.flags&4098)!==0&&(e=t.return),a=t.return;for(;t.return;)t=t.return;return t.tag===3?e:null}function JN(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function eL(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function h7(e){if(Lh(e)!==e)throw Error(H(188))}function qG(e){var t=e.alternate;if(!t){if(t=Lh(e),t===null)throw Error(H(188));return t!==e?null:e}for(var a=e,n=t;;){var i=a.return;if(i===null)break;var r=i.alternate;if(r===null){if(n=i.return,n!==null){a=n;continue}break}if(i.child===r.child){for(r=i.child;r;){if(r===a)return h7(i),e;if(r===n)return h7(i),t;r=r.sibling}throw Error(H(188))}if(a.return!==n.return)a=i,n=r;else{for(var l=!1,o=i.child;o;){if(o===a){l=!0,a=i,n=r;break}if(o===n){l=!0,n=i,a=r;break}o=o.sibling}if(!l){for(o=r.child;o;){if(o===a){l=!0,a=r,n=i;break}if(o===n){l=!0,n=r,a=i;break}o=o.sibling}if(!l)throw Error(H(189))}}if(a.alternate!==n)throw Error(H(190))}if(a.tag!==3)throw Error(H(188));return a.stateNode.current===a?e:t}function tL(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=tL(e),t!==null)return t;e=e.sibling}return null}function an(e,t,a,n,i,r){for(;e!==null;){if((e.tag===5||e.tag===27||e.tag===6)&&a(e,n,i,r)||(e.tag!==22||e.memoizedState===null)&&(t||e.tag!==5&&e.tag!==27)&&an(e.child,t,a,n,i,r))return!0;e=e.sibling}return!1}function Us(e){for(e=e.return;e!==null;){if(e.tag===3||e.tag===5||e.tag===27)return e;e=e.return}return null}function p7(e){var t=!1;for(e=e.return;e!==null&&(e.tag===4&&(t=!0),!(e.tag===3||e.tag===5||e.tag===27));)e=e.return;return t}function aL(e){var t=[null,null],a=Us(e);return a===null||nL(t,e,a.child,{foundSelf:!1}),t}function nL(e,t,a,n){for(;a!==null;){if(a===t)n.foundSelf=!0;else if(a.tag===5||a.tag===27||a.tag===6){if(n.foundSelf)return e[1]=a,!0;e[0]=a}else if((a.tag!==22||a.memoizedState===null)&&nL(e,t,a.child,n))return!0;a=a.sibling}return!1}function Pt(e){switch(e.tag){case 5:case 27:case 6:return e.stateNode;case 3:return e.stateNode.containerInfo;default:throw Error(H(559))}}var od=null,wE=null;function QG(e,t,a){return e===a?!0:e===t?(od=e,!0):!1}function WG(e,t,a){return e===a?(wE=e,!1):e===t?(wE!==null&&(od=e),!0):!1}function f7(e){if(e===null)return null;do e=e===null?null:e.return;while(e&&e.tag!==5&&e.tag!==27&&e.tag!==3);return e||null}function EE(e,t,a){for(var n=0,i=e;i;i=a(i))n++;i=0;for(var r=t;r;r=a(r))i++;for(;0<n-i;)e=a(e),n--;for(;0<i-n;)t=a(t),i--;for(;n--;){if(e===t||t!==null&&e===t.alternate)return e;e=a(e),t=a(t)}return null}var Fe=Object.assign,JG=Symbol.for("react.element"),Kg=Symbol.for("react.transitional.element"),Jm=Symbol.for("react.portal"),sd=Symbol.for("react.fragment"),iL=Symbol.for("react.strict_mode"),SE=Symbol.for("react.profiler"),rL=Symbol.for("react.consumer"),cr=Symbol.for("react.context"),N2=Symbol.for("react.forward_ref"),CE=Symbol.for("react.suspense"),TE=Symbol.for("react.suspense_list"),L2=Symbol.for("react.memo"),Zl=Symbol.for("react.lazy"),_E=Symbol.for("react.activity"),e$=Symbol.for("react.legacy_hidden"),t$=Symbol.for("react.memo_cache_sentinel"),kE=Symbol.for("react.view_transition"),a$=Symbol.for("react.recoverable"),g7=Symbol.iterator;function Xm(e){return e===null||typeof e!="object"?null:(e=g7&&e[g7]||e["@@iterator"],typeof e=="function"?e:null)}var n$=Symbol.for("react.client.reference");function ME(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===n$?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case sd:return"Fragment";case SE:return"Profiler";case iL:return"StrictMode";case CE:return"Suspense";case TE:return"SuspenseList";case _E:return"Activity";case kE:return"ViewTransition"}if(typeof e=="object")switch(e.$$typeof){case Jm:return"Portal";case cr:return e.displayName||"Context";case rL:return(e._context.displayName||"Context")+".Consumer";case N2:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case L2:return t=e.displayName||null,t!==null?t:ME(e.type)||"Memo";case Zl:t=e._payload,e=e._init;try{return ME(e(t))}catch{}}return null}var eh=Array.isArray,ie=QN.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,_e=KG.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Ts={pending:!1,data:null,method:null,action:null},AE=[],cd=-1;function gr(e){return{current:e}}function ra(e){0>cd||(e.current=AE[cd],AE[cd]=null,cd--)}function Xe(e,t){cd++,AE[cd]=e.current,e.current=t}var hr=gr(null),bh=gr(null),no=gr(null),Ob=gr(null);function zb(e,t){switch(Xe(no,t),Xe(bh,e),Xe(hr,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?DN(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=DN(t),e=k9(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}ra(hr),Xe(hr,e)}function Ad(){ra(hr),ra(bh),ra(no)}function DE(e){var t=e.memoizedState;t!==null&&(Pd._currentValue=t.memoizedState,Xe(Ob,e)),t=hr.current;var a=k9(t,e.type);t!==a&&(Xe(bh,e),Xe(hr,a))}function Bb(e){bh.current===e&&(ra(hr),ra(bh)),Ob.current===e&&(ra(Ob),Pd._currentValue=Ts)}var Gw,b7;function Vl(e){if(Gw===void 0)try{throw Error()}catch(a){var t=a.stack.trim().match(/\n( *(at )?)/);Gw=t&&t[1]||"",b7=-1<a.stack.indexOf(`
|
|
2
|
+
at`)?" (<anonymous>)":-1<a.stack.indexOf("@")?"@unknown:0:0":""}return`
|
|
3
|
+
`+Gw+e+b7}var $w=!1;function Vw(e,t){if(!e||$w)return"";$w=!0;var a=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var n={DetermineComponentFrameRoot:function(){try{if(t){var c=function(){throw Error()};if(Object.defineProperty(c.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(c,[])}catch(p){var u=p}Reflect.construct(e,[],c)}else{try{c.call()}catch(p){u=p}c=!1;try{var m=Object.getOwnPropertyDescriptor(e.prototype,"props");Object.defineProperty(e.prototype,"props",{configurable:!0,set:function(){throw Error()}}),c=!0,new e}finally{c&&(m!==void 0?Object.defineProperty(e.prototype,"props",m):delete e.prototype.props)}}}else{try{throw Error()}catch(p){u=p}(c=e())&&typeof c.catch=="function"&&c.catch(function(){})}}catch(p){if(p&&u&&typeof p.stack=="string")return[p.stack,u.stack]}return[null,null]}};n.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var i=Object.getOwnPropertyDescriptor(n.DetermineComponentFrameRoot,"name");i&&i.configurable&&Object.defineProperty(n.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var r=n.DetermineComponentFrameRoot(),l=r[0],o=r[1];if(l&&o){var d=l.split(`
|
|
4
|
+
`),h=o.split(`
|
|
5
|
+
`);for(i=n=0;n<d.length&&!d[n].includes("DetermineComponentFrameRoot");)n++;for(;i<h.length&&!h[i].includes("DetermineComponentFrameRoot");)i++;if(n===d.length||i===h.length)for(n=d.length-1,i=h.length-1;1<=n&&0<=i&&d[n]!==h[i];)i--;for(;1<=n&&0<=i;n--,i--)if(d[n]!==h[i]){if(n!==1||i!==1)do if(n--,i--,0>i||d[n]!==h[i]){var s=`
|
|
6
|
+
`+d[n].replace(" at new "," at ");return e.displayName&&s.includes("<anonymous>")&&(s=s.replace("<anonymous>",e.displayName)),s}while(1<=n&&0<=i);break}}}finally{$w=!1,Error.prepareStackTrace=a}return(a=e?e.displayName||e.name:"")?Vl(a):""}function i$(e,t){switch(e.tag){case 26:case 27:case 5:return Vl(e.type);case 16:return Vl("Lazy");case 13:return e.child!==t&&t!==null?Vl("Suspense Fallback"):Vl("Suspense");case 19:return Vl("SuspenseList");case 0:case 15:return Vw(e.type,!1);case 11:return Vw(e.type.render,!1);case 1:return Vw(e.type,!0);case 31:return Vl("Activity");case 30:return Vl("ViewTransition");default:return""}}function v7(e){try{var t="",a=null;do t+=i$(e,a),a=e,e=e.return;while(e);return t}catch(n){return`
|
|
7
|
+
Error generating stack: `+n.message+`
|
|
8
|
+
`+n.stack}}var IE=Object.prototype.hasOwnProperty,R2=jt.unstable_scheduleCallback,Xw=jt.unstable_cancelCallback,r$=jt.unstable_shouldYield,l$=jt.unstable_requestPaint,xn=jt.unstable_now,o$=jt.unstable_getCurrentPriorityLevel,lL=jt.unstable_ImmediatePriority,oL=jt.unstable_UserBlockingPriority,Ub=jt.unstable_NormalPriority,s$=jt.unstable_LowPriority,sL=jt.unstable_IdlePriority,c$=jt.log,d$=jt.unstable_setDisableYieldValue,Rh=null,wn=null;function Ql(e){if(typeof c$=="function"&&d$(e),wn&&typeof wn.setStrictMode=="function")try{wn.setStrictMode(Rh,e)}catch{}}var En=Math.clz32?Math.clz32:h$,u$=Math.log,m$=Math.LN2;function h$(e){return e>>>=0,e===0?32:31-(u$(e)/m$|0)|0}var qg=256,Qg=262144,Wg=4194304;function xs(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&-e;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function dv(e,t,a){var n=e.pendingLanes;if(n===0)return 0;var i=0,r=e.suspendedLanes,l=e.pingedLanes;e=e.warmLanes;var o=n&134217727;return o!==0?(n=o&~r,n!==0?i=xs(n):(l&=o,l!==0?i=xs(l):a||(a=o&~e,a!==0&&(i=xs(a))))):(o=n&~r,o!==0?i=xs(o):l!==0?i=xs(l):a||(a=n&~e,a!==0&&(i=xs(a)))),i===0?0:t!==0&&t!==i&&(t&r)===0&&(r=i&-i,a=t&-t,r>=a||r===32&&(a&4194048)!==0)?t:i}function Oh(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function cL(e,t){(t&8)!==0&&(t|=t&32);var a=e.entangledLanes;if(a!==0)for(e=e.entanglements,a&=t;0<a;){var n=31-En(a),i=1<<n;t|=e[n],a&=~i}return t}function p$(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function dL(){var e=Wg;return Wg<<=1,(Wg&62914560)===0&&(Wg=4194304),e}function Zw(e){for(var t=[],a=0;31>a;a++)t.push(e);return t}function zh(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function f$(e,t,a,n,i,r){var l=e.pendingLanes;e.pendingLanes=a,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=a,e.entangledLanes&=a,e.errorRecoveryDisabledLanes&=a,e.shellSuspendCounter=0;var o=e.entanglements,d=e.expirationTimes,h=e.hiddenUpdates;for(a=l&~a;0<a;){var s=31-En(a),c=1<<s;o[s]=0,d[s]=-1;var u=h[s];if(u!==null)for(h[s]=null,s=0;s<u.length;s++){var m=u[s];m!==null&&(m.lane&=-536870913)}a&=~c}n!==0&&uL(e,n,0),r!==0&&i===0&&e.tag!==0&&(e.suspendedLanes|=r&~(l&~t))}function uL(e,t,a){e.pendingLanes|=t,e.suspendedLanes&=~t;var n=31-En(t);e.entangledLanes|=t,e.entanglements[n]=e.entanglements[n]|1073741824|a&261930}function mL(e,t){var a=e.entangledLanes|=t;for(e=e.entanglements;a;){var n=31-En(a),i=1<<n;i&t|e[n]&t&&(e[n]|=t),a&=~i}}function hL(e,t){var a=t&-t;return a=(a&42)!==0?1:O2(a),(a&(e.suspendedLanes|t))!==0?0:a}function O2(e){switch(e){case 2:e=1;break;case 8:e=4;break;case 32:e=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:e=128;break;case 268435456:e=134217728;break;default:e=0}return e}function z2(e){return e&=-e,2<e?8<e?(e&134217727)!==0?32:268435456:8:2}function pL(){var e=_e.p;return e!==0?e:(e=window.event,e===void 0?32:K9(e.type))}function y7(e,t){var a=_e.p;try{return _e.p=e,t()}finally{_e.p=a}}var Jr=Math.random().toString(36).slice(2),na="__reactFiber$"+Jr,nn="__reactProps$"+Jr,Fd="__reactContainer$"+Jr,x7="__reactEvents$"+Jr,g$="__reactListeners$"+Jr,b$="__reactHandles$"+Jr,w7="__reactResources$"+Jr,Bh="__reactMarker$"+Jr,Pb="__reactLoad$"+Jr;function uv(e){delete e[na],delete e[nn],delete e[g$],delete e[b$]}function Ss(e){var t;if(t=e[na])return t;for(var a=e.parentNode;a;){if(t=a[Fd]||a[na]){if(a=t.alternate,t.child!==null||a!==null&&a.child!==null)for(e=UN(e);e!==null;){if(a=e[na])return a;e=UN(e)}return t}e=a,a=e.parentNode}return null}function Yd(e){if(e=e[na]||e[Fd]){var t=e.tag;if(t===5||t===6||t===13||t===31||t===26||t===27||t===3)return e}return null}function th(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e.stateNode;throw Error(H(33))}function yd(e){var t=e[w7];return t||(t=e[w7]={hoistableStyles:new Map,hoistableScripts:new Map}),t}function Wt(e){e[Bh]=!0}function fL(e){e[Pb]=void 0}var gL=new Set,bL={};function Ps(e,t){Dd(e,t),Dd(e+"Capture",t)}function Dd(e,t){for(bL[e]=t,e=0;e<t.length;e++)gL.add(t[e])}var v$=RegExp("^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$"),E7={},S7={};function y$(e){return IE.call(S7,e)?!0:IE.call(E7,e)?!1:v$.test(e)?S7[e]=!0:(E7[e]=!0,!1)}var Se=!1;function C7(){var e=Se;return Se=!1,e}function gb(e,t,a){if(y$(t))if(a===null)e.removeAttribute(t);else{switch(typeof a){case"undefined":case"function":case"symbol":e.removeAttribute(t);return;case"boolean":var n=t.toLowerCase().slice(0,5);if(n!=="data-"&&n!=="aria-"){e.removeAttribute(t);return}}e.setAttribute(t,a)}}function Jg(e,t,a){if(a===null)e.removeAttribute(t);else{switch(typeof a){case"undefined":case"function":case"symbol":case"boolean":e.removeAttribute(t);return}e.setAttribute(t,a)}}function Hr(e,t,a,n){if(n===null)e.removeAttribute(a);else{switch(typeof n){case"undefined":case"function":case"symbol":case"boolean":e.removeAttribute(a);return}e.setAttributeNS(t,a,n)}}function gn(e){switch(typeof e){case"bigint":case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function vL(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function x$(e,t,a){var n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t);if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var i=n.get,r=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(l){a=""+l,r.call(this,l)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return a},setValue:function(l){a=""+l},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function NE(e){if(!e._valueTracker){var t=vL(e)?"checked":"value";e._valueTracker=x$(e,t,""+e[t])}}function yL(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var a=t.getValue(),n="";return e&&(n=vL(e)?e.checked?"true":"false":e.value),e=n,e!==a?(t.setValue(e),!0):!1}var w$=/[\n"\\]/g;function Qn(e){return e.replace(w$,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function LE(e,t,a,n,i,r,l,o){e.name="",l!=null&&typeof l!="function"&&typeof l!="symbol"&&typeof l!="boolean"?e.type=l:e.removeAttribute("type"),t!=null?l==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+gn(t)):e.value!==""+gn(t)&&(e.value=""+gn(t)):l!=="submit"&&l!=="reset"||e.removeAttribute("value"),t!=null?l==="number"&&e.value==t?Kw(e,gn(e.value)):Kw(e,gn(t)):a!=null?Kw(e,gn(a)):n!=null&&e.removeAttribute("value"),i==null&&r!=null&&(e.defaultChecked=!!r),i!=null&&(e.checked=i&&typeof i!="function"&&typeof i!="symbol"),o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"?e.name=""+gn(o):e.removeAttribute("name")}function xL(e,t,a,n,i,r,l,o){if(r!=null&&typeof r!="function"&&typeof r!="symbol"&&typeof r!="boolean"&&(e.type=r),t!=null||a!=null){if(!(r!=="submit"&&r!=="reset"||t!=null)){NE(e);return}a=a!=null?""+gn(a):"",t=t!=null?""+gn(t):a,o||t===e.value||(e.value=t),e.defaultValue=t}n=n??i,n=typeof n!="function"&&typeof n!="symbol"&&!!n,e.checked=o?e.checked:!!n,e.defaultChecked=!!n,l!=null&&typeof l!="function"&&typeof l!="symbol"&&typeof l!="boolean"&&(e.name=l),NE(e)}function Kw(e,t){e.defaultValue!==""+t&&(e.defaultValue=""+t)}function xd(e,t,a,n){if(e=e.options,t){t={};for(var i=0;i<a.length;i++)t["$"+a[i]]=!0;for(a=0;a<e.length;a++)i=t.hasOwnProperty("$"+e[a].value),e[a].selected!==i&&(e[a].selected=i),i&&n&&(e[a].defaultSelected=!0)}else{for(a=""+gn(a),t=null,i=0;i<e.length;i++){if(e[i].value===a){e[i].selected=!0,n&&(e[i].defaultSelected=!0);return}t!==null||e[i].disabled||(t=e[i])}t!==null&&(t.selected=!0)}}function wL(e,t,a){if(t!=null&&(t=""+gn(t),t!==e.value&&(e.value=t),a==null)){e.defaultValue!==t&&(e.defaultValue=t);return}e.defaultValue=a!=null?""+gn(a):""}function EL(e,t,a,n){if(t==null){if(n!=null){if(a!=null)throw Error(H(92));if(eh(n)){if(1<n.length)throw Error(H(93));n=n[0]}a=n}a==null&&(a=""),t=a}a=gn(t),e.defaultValue=a,n=e.textContent,n===a&&n!==""&&n!==null&&(e.value=n),NE(e)}function Id(e,t){if(t){var a=e.firstChild;if(a&&a===e.lastChild&&a.nodeType===3){a.nodeValue=t;return}}e.textContent=t}var E$=new Set("animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp".split(" "));function T7(e,t,a){var n=t.indexOf("--")===0;a==null||typeof a=="boolean"||a===""?n?e.setProperty(t,""):t==="float"?e.cssFloat="":e[t]="":n?e.setProperty(t,a):typeof a!="number"||a===0||E$.has(t)?t==="float"?e.cssFloat=a:e[t]=(""+a).trim():e[t]=a+"px"}function SL(e,t,a){if(t!=null&&typeof t!="object")throw Error(H(62));if(e=e.style,a!=null){for(var n in a)!a.hasOwnProperty(n)||t!=null&&t.hasOwnProperty(n)||(n.indexOf("--")===0?e.setProperty(n,""):n==="float"?e.cssFloat="":e[n]="",Se=!0);for(var i in t)n=t[i],t.hasOwnProperty(i)&&a[i]!==n&&(T7(e,i,n),Se=!0)}else for(var r in t)t.hasOwnProperty(r)&&T7(e,r,t[r])}function B2(e){if(e.indexOf("-")===-1)return!1;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var S$=new Map([["acceptCharset","accept-charset"],["htmlFor","for"],["httpEquiv","http-equiv"],["crossOrigin","crossorigin"],["accentHeight","accent-height"],["alignmentBaseline","alignment-baseline"],["arabicForm","arabic-form"],["baselineShift","baseline-shift"],["capHeight","cap-height"],["clipPath","clip-path"],["clipRule","clip-rule"],["colorInterpolation","color-interpolation"],["colorInterpolationFilters","color-interpolation-filters"],["colorProfile","color-profile"],["colorRendering","color-rendering"],["dominantBaseline","dominant-baseline"],["enableBackground","enable-background"],["fillOpacity","fill-opacity"],["fillRule","fill-rule"],["floodColor","flood-color"],["floodOpacity","flood-opacity"],["fontFamily","font-family"],["fontSize","font-size"],["fontSizeAdjust","font-size-adjust"],["fontStretch","font-stretch"],["fontStyle","font-style"],["fontVariant","font-variant"],["fontWeight","font-weight"],["glyphName","glyph-name"],["glyphOrientationHorizontal","glyph-orientation-horizontal"],["glyphOrientationVertical","glyph-orientation-vertical"],["horizAdvX","horiz-adv-x"],["horizOriginX","horiz-origin-x"],["imageRendering","image-rendering"],["letterSpacing","letter-spacing"],["lightingColor","lighting-color"],["markerEnd","marker-end"],["markerMid","marker-mid"],["markerStart","marker-start"],["maskType","mask-type"],["overlinePosition","overline-position"],["overlineThickness","overline-thickness"],["paintOrder","paint-order"],["panose-1","panose-1"],["pointerEvents","pointer-events"],["renderingIntent","rendering-intent"],["shapeRendering","shape-rendering"],["stopColor","stop-color"],["stopOpacity","stop-opacity"],["strikethroughPosition","strikethrough-position"],["strikethroughThickness","strikethrough-thickness"],["strokeDasharray","stroke-dasharray"],["strokeDashoffset","stroke-dashoffset"],["strokeLinecap","stroke-linecap"],["strokeLinejoin","stroke-linejoin"],["strokeMiterlimit","stroke-miterlimit"],["strokeOpacity","stroke-opacity"],["strokeWidth","stroke-width"],["textAnchor","text-anchor"],["textDecoration","text-decoration"],["textRendering","text-rendering"],["transformOrigin","transform-origin"],["underlinePosition","underline-position"],["underlineThickness","underline-thickness"],["unicodeBidi","unicode-bidi"],["unicodeRange","unicode-range"],["unitsPerEm","units-per-em"],["vAlphabetic","v-alphabetic"],["vHanging","v-hanging"],["vIdeographic","v-ideographic"],["vMathematical","v-mathematical"],["vectorEffect","vector-effect"],["vertAdvY","vert-adv-y"],["vertOriginX","vert-origin-x"],["vertOriginY","vert-origin-y"],["wordSpacing","word-spacing"],["writingMode","writing-mode"],["xmlnsXlink","xmlns:xlink"],["xHeight","x-height"]]),C$=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function bb(e){return C$.test(""+e)?"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')":e}function dr(){}var RE=null;function U2(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var dd=null,wd=null;function _7(e){var t=Yd(e);if(t&&(e=t.stateNode)){var a=e[nn]||null;e:switch(e=t.stateNode,t.type){case"input":if(LE(e,a.value,a.defaultValue,a.defaultValue,a.checked,a.defaultChecked,a.type,a.name),t=a.name,a.type==="radio"&&t!=null){for(a=e;a.parentNode;)a=a.parentNode;for(a=a.querySelectorAll('input[name="'+Qn(""+t)+'"][type="radio"]'),t=0;t<a.length;t++){var n=a[t];if(n!==e&&n.form===e.form){var i=n[nn]||null;if(!i)throw Error(H(90));LE(n,i.value,i.defaultValue,i.defaultValue,i.checked,i.defaultChecked,i.type,i.name)}}for(t=0;t<a.length;t++)n=a[t],n.form===e.form&&yL(n)}break e;case"textarea":wL(e,a.value,a.defaultValue);break e;case"select":t=a.value,t!=null&&xd(e,!!a.multiple,t,!1)}}}var qw=!1;function CL(e,t,a){if(qw)return e(t,a);qw=!0;try{var n=e(t);return n}finally{if(qw=!1,(dd!==null||wd!==null)&&(Tv(),dd&&(t=dd,e=wd,wd=dd=null,_7(t),e)))for(t=0;t<e.length;t++)_7(e[t])}}function vh(e,t){var a=e.stateNode;if(a===null)return null;var n=a[nn]||null;if(n===null)return null;a=n[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(n=!n.disabled)||(e=e.type,n=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!n;break e;default:e=!1}if(e)return null;if(a&&typeof a!="function")throw Error(H(231,t,typeof a));return a}var Xr=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),OE=!1;if(Xr)try{td={},Object.defineProperty(td,"passive",{get:function(){OE=!0}}),window.addEventListener("test",td,td),window.removeEventListener("test",td,td)}catch{OE=!1}var td,Wl=null,P2=null,vb=null;function TL(){if(vb)return vb;var e,t=P2,a=t.length,n,i="value"in Wl?Wl.value:Wl.textContent,r=i.length;for(e=0;e<a&&t[e]===i[e];e++);var l=a-e;for(n=1;n<=l&&t[a-n]===i[r-n];n++);return vb=i.slice(e,1<n?1-n:void 0)}function yb(e){var t=e.keyCode;return"charCode"in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function eb(){return!0}function k7(){return!1}function Fa(e){function t(a,n,i,r,l){this._reactName=a,this._targetInst=i,this.type=n,this.nativeEvent=r,this.target=l,this.currentTarget=null;for(var o in e)e.hasOwnProperty(o)&&(a=e[o],this[o]=a?a(r):r[o]);return this.isDefaultPrevented=(r.defaultPrevented!=null?r.defaultPrevented:r.returnValue===!1)?eb:k7,this.isPropagationStopped=k7,this}return Fe(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var a=this.nativeEvent;a&&(a.preventDefault?a.preventDefault():typeof a.returnValue!="unknown"&&(a.returnValue=!1),this.isDefaultPrevented=eb)},stopPropagation:function(){var a=this.nativeEvent;a&&(a.stopPropagation?a.stopPropagation():typeof a.cancelBubble!="unknown"&&(a.cancelBubble=!0),this.isPropagationStopped=eb)},persist:function(){},isPersistent:eb}),t}var yo={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},mv=Fa(yo),Uh=Fe({},yo,{view:0,detail:0}),T$=Fa(Uh),Qw,Ww,Zm,hv=Fe({},Uh,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:j2,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==Zm&&(Zm&&e.type==="mousemove"?(Qw=e.screenX-Zm.screenX,Ww=e.screenY-Zm.screenY):Ww=Qw=0,Zm=e),Qw)},movementY:function(e){return"movementY"in e?e.movementY:Ww}}),M7=Fa(hv),_$=Fe({},hv,{dataTransfer:0}),k$=Fa(_$),M$=Fe({},Uh,{relatedTarget:0}),Jw=Fa(M$),A$=Fe({},yo,{animationName:0,elapsedTime:0,pseudoElement:0}),D$=Fa(A$),I$=Fe({},yo,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),N$=Fa(I$),L$=Fe({},yo,{data:0}),A7=Fa(L$),R$={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},O$={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},z$={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function B$(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=z$[e])?!!t[e]:!1}function j2(){return B$}var U$=Fe({},Uh,{key:function(e){if(e.key){var t=R$[e.key]||e.key;if(t!=="Unidentified")return t}return e.type==="keypress"?(e=yb(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?O$[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:j2,charCode:function(e){return e.type==="keypress"?yb(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?yb(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),P$=Fa(U$),j$=Fe({},hv,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),D7=Fa(j$),H$=Fe({},yo,{submitter:0}),F$=Fa(H$),Y$=Fe({},Uh,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:j2}),G$=Fa(Y$),$$=Fe({},yo,{propertyName:0,elapsedTime:0,pseudoElement:0}),V$=Fa($$),X$=Fe({},hv,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),Z$=Fa(X$),K$=Fe({},yo,{newState:0,oldState:0,source:0}),q$=Fa(K$),Q$=[9,13,27,32],H2=Xr&&"CompositionEvent"in window,ih=null;Xr&&"documentMode"in document&&(ih=document.documentMode);var W$=Xr&&"TextEvent"in window&&!ih,_L=Xr&&(!H2||ih&&8<ih&&11>=ih),I7=" ",N7=!1;function kL(e,t){switch(e){case"keyup":return Q$.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function ML(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var ud=!1;function J$(e,t){switch(e){case"compositionend":return ML(t);case"keypress":return t.which!==32?null:(N7=!0,I7);case"textInput":return e=t.data,e===I7&&N7?null:e;default:return null}}function eV(e,t){if(ud)return e==="compositionend"||!H2&&kL(e,t)?(e=TL(),vb=P2=Wl=null,ud=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return _L&&t.locale!=="ko"?null:t.data;default:return null}}var tV={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function L7(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t==="input"?!!tV[e.type]:t==="textarea"}function AL(e,t,a,n){dd?wd?wd.push(n):wd=[n]:dd=n,t=ov(t,"onChange"),0<t.length&&(a=new mv("onChange","change",null,a,n),e.push({event:a,listeners:t}))}var rh=null,yh=null;function aV(e){C9(e,0)}function pv(e){var t=th(e);if(yL(t))return e}function R7(e,t){if(e==="change")return t}var DL=!1;Xr&&(Xr?(ab="oninput"in document,ab||(eE=document.createElement("div"),eE.setAttribute("oninput","return;"),ab=typeof eE.oninput=="function"),tb=ab):tb=!1,DL=tb&&(!document.documentMode||9<document.documentMode));var tb,ab,eE;function O7(){rh&&(rh.detachEvent("onpropertychange",IL),yh=rh=null)}function IL(e){if(e.propertyName==="value"&&pv(yh)){var t=[];AL(t,yh,e,U2(e)),CL(aV,t)}}function nV(e,t,a){e==="focusin"?(O7(),rh=t,yh=a,rh.attachEvent("onpropertychange",IL)):e==="focusout"&&O7()}function iV(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return pv(yh)}function rV(e,t){if(e==="click")return pv(t)}function lV(e,t){if(e==="input"||e==="change")return pv(t)}function oV(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var Cn=typeof Object.is=="function"?Object.is:oV;function xh(e,t){if(Cn(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;var a=Object.keys(e),n=Object.keys(t);if(a.length!==n.length)return!1;for(n=0;n<a.length;n++){var i=a[n];if(!IE.call(t,i)||!Cn(e[i],t[i]))return!1}return!0}function zE(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function z7(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function B7(e,t){var a=z7(e);e=0;for(var n;a;){if(a.nodeType===3){if(n=e+a.textContent.length,e<=t&&n>=t)return{node:a,offset:t-e};e=n}e:{for(;a;){if(a.nextSibling){a=a.nextSibling;break e}a=a.parentNode}a=void 0}a=z7(a)}}function NL(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?NL(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function LL(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=zE(e.document);t instanceof e.HTMLIFrameElement;){try{var a=typeof t.contentWindow.location.href=="string"}catch{a=!1}if(a)e=t.contentWindow;else break;t=zE(e.document)}return t}function F2(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var sV=Xr&&"documentMode"in document&&11>=document.documentMode,md=null,BE=null,lh=null,UE=!1;function U7(e,t,a){var n=a.window===a?a.document:a.nodeType===9?a:a.ownerDocument;UE||md==null||md!==zE(n)||(n=md,"selectionStart"in n&&F2(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}),lh&&xh(lh,n)||(lh=n,n=ov(BE,"onSelect"),0<n.length&&(t=new mv("onSelect","select",null,t,a),e.push({event:t,listeners:n}),t.target=md)))}function vs(e,t){var a={};return a[e.toLowerCase()]=t.toLowerCase(),a["Webkit"+e]="webkit"+t,a["Moz"+e]="moz"+t,a}var hd={animationend:vs("Animation","AnimationEnd"),animationiteration:vs("Animation","AnimationIteration"),animationstart:vs("Animation","AnimationStart"),transitionrun:vs("Transition","TransitionRun"),transitionstart:vs("Transition","TransitionStart"),transitioncancel:vs("Transition","TransitionCancel"),transitionend:vs("Transition","TransitionEnd")},tE={},RL={};Xr&&(RL=document.createElement("div").style,"AnimationEvent"in window||(delete hd.animationend.animation,delete hd.animationiteration.animation,delete hd.animationstart.animation),"TransitionEvent"in window||delete hd.transitionend.transition);function js(e){if(tE[e])return tE[e];if(!hd[e])return e;var t=hd[e],a;for(a in t)if(t.hasOwnProperty(a)&&a in RL)return tE[e]=t[a];return e}var OL=js("animationend"),zL=js("animationiteration"),BL=js("animationstart"),cV=js("transitionrun"),dV=js("transitionstart"),uV=js("transitioncancel"),UL=js("transitionend"),PL=new Map,PE="abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error fullscreenChange fullscreenError gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");PE.push("scrollEnd");function Ii(e,t){PL.set(e,t),Ps(t,[e])}var mV=0;function Zr(e,t){if(e.name!=null&&e.name!=="auto")return e.name;if(t.autoName!==null)return t.autoName;e=Di.identifierPrefix;var a=mV++;return e="_"+e+"t_"+a.toString(32)+"_",t.autoName=e}function P7(e){if(e==null||typeof e=="string")return e;var t=null,a=Md;if(a!==null)for(var n=0;n<a.length;n++){var i=e[a[n]];if(i!=null){if(i==="none")return"none";t=t==null?i:t+(" "+i)}}return t??e.default}function el(e,t){return e=P7(e),t=P7(t),t==null?e==="auto"?null:e:t==="auto"?null:t}var jb=typeof reportError=="function"?reportError:function(e){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var t=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof e=="object"&&e!==null&&typeof e.message=="string"?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",e);return}console.error(e)},Zn=[],pd=0,Y2=0;function fv(){for(var e=pd,t=Y2=pd=0;t<e;){var a=Zn[t];Zn[t++]=null;var n=Zn[t];Zn[t++]=null;var i=Zn[t];Zn[t++]=null;var r=Zn[t];if(Zn[t++]=null,n!==null&&i!==null){var l=n.pending;l===null?i.next=i:(i.next=l.next,l.next=i),n.pending=i}r!==0&&jL(a,i,r)}}function gv(e,t,a,n){Zn[pd++]=e,Zn[pd++]=t,Zn[pd++]=a,Zn[pd++]=n,Y2|=n,e.lanes|=n,e=e.alternate,e!==null&&(e.lanes|=n)}function G2(e,t,a,n){return gv(e,t,a,n),Hb(e)}function Hs(e,t){return gv(e,null,null,t),Hb(e)}function jL(e,t,a){e.lanes|=a;var n=e.alternate;n!==null&&(n.lanes|=a);for(var i=!1,r=e.return;r!==null;)r.childLanes|=a,n=r.alternate,n!==null&&(n.childLanes|=a),r.tag===22&&(e=r.stateNode,e===null||e._visibility&1||(i=!0)),e=r,r=r.return;return e.tag===3?(r=e.stateNode,i&&t!==null&&(i=31-En(a),e=r.hiddenUpdates,n=e[i],n===null?e[i]=[t]:n.push(t),t.lane=a|536870912),r):null}function Hb(e){if(50<gh)throw gh=0,Ab=null,Error(H(185));for(var t=e.return;t!==null;)e=t,t=e.return;return e.tag===3?e.stateNode:null}var fd={};function hV(e,t,a,n){this.tag=e,this.key=a,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=n,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function en(e,t,a,n){return new hV(e,t,a,n)}function $2(e){return e=e.prototype,!(!e||!e.isReactComponent)}function $r(e,t){var a=e.alternate;return a===null?(a=en(e.tag,t,e.key,e.mode),a.elementType=e.elementType,a.type=e.type,a.stateNode=e.stateNode,a.alternate=e,e.alternate=a):(a.pendingProps=t,a.type=e.type,a.flags=0,a.subtreeFlags=0,a.deletions=null),a.flags=e.flags&1206910976,a.childLanes=e.childLanes,a.lanes=e.lanes,a.child=e.child,a.memoizedProps=e.memoizedProps,a.memoizedState=e.memoizedState,a.updateQueue=e.updateQueue,t=e.dependencies,a.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},a.sibling=e.sibling,a.index=e.index,a.ref=e.ref,a.refCleanup=e.refCleanup,a}function HL(e,t){e.flags&=1206910978;var a=e.alternate;return a===null?(e.childLanes=0,e.lanes=t,e.child=null,e.subtreeFlags=0,e.memoizedProps=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null,e.stateNode=null):(e.childLanes=a.childLanes,e.lanes=a.lanes,e.child=a.child,e.subtreeFlags=0,e.deletions=null,e.memoizedProps=a.memoizedProps,e.memoizedState=a.memoizedState,e.updateQueue=a.updateQueue,e.type=a.type,t=a.dependencies,e.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext}),e}function xb(e,t,a,n,i,r){var l=0;if(n=e,typeof n=="function")$2(n)&&(l=1);else if(typeof n=="string")l=PX(e,a,hr.current)?26:e==="html"||e==="head"||e==="body"?27:5;else e:switch(n){case _E:return e=en(31,a,t,i),e.elementType=_E,e.lanes=r,e;case sd:return _s(a.children,i,r,t);case iL:l=8,i|=24;break;case SE:return e=en(12,a,t,i|2),e.elementType=SE,e.lanes=r,e;case CE:return e=en(13,a,t,i),e.elementType=CE,e.lanes=r,e;case TE:return e=en(19,a,t,i),e.elementType=TE,e.lanes=r,e;case e$:case kE:return e=i|32,e=en(30,a,t,e),e.elementType=kE,e.lanes=r,e.stateNode={autoName:null,paired:null,clones:null,ref:null},e;default:if(typeof n=="object"&&n!==null)switch(n.$$typeof){case cr:l=10;break e;case rL:l=9;break e;case N2:l=11;break e;case L2:l=14;break e;case Zl:l=16,n=null;break e}l=29,a=Error(H(130,e===null?"null":typeof e,"")),n=null}return t=en(l,a,t,i),t.elementType=e,t.type=n,t.lanes=r,t}function _s(e,t,a,n){return e=en(7,e,n,t),e.lanes=a,e}function aE(e,t,a){return e=en(6,e,null,t),e.lanes=a,e}function FL(e){var t=en(18,null,null,0);return t.stateNode=e,t}function nE(e,t,a){return t=en(4,e.children!==null?e.children:[],e.key,t),t.lanes=a,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}var j7=new WeakMap;function Wn(e,t){if(typeof e=="object"&&e!==null){var a=j7.get(e);return a!==void 0?a:(t={value:e,source:t,stack:v7(t)},j7.set(e,t),t)}return{value:e,source:t,stack:v7(t)}}var gd=[],bd=0,Fb=null,wh=0,Kn=[],qn=0,po=null,ur=1,mr="";function Yr(e,t){gd[bd++]=wh,gd[bd++]=Fb,Fb=e,wh=t}function YL(e,t,a){Kn[qn++]=ur,Kn[qn++]=mr,Kn[qn++]=po,po=e;var n=ur;e=mr;var i=32-En(n)-1;n&=~(1<<i),a+=1;var r=32-En(t)+i;if(30<r){var l=i-i%5;r=(n&(1<<l)-1).toString(32),n>>=l,i-=l,ur=1<<32-En(t)+i|a<<i|n,mr=r+e}else ur=1<<r|a<<i|n,mr=e}function bv(e){e.return!==null&&(Yr(e,1),YL(e,1,0))}function V2(e){for(;e===Fb;)Fb=gd[--bd],gd[bd]=null,wh=gd[--bd],gd[bd]=null;for(;e===po;)po=Kn[--qn],Kn[qn]=null,mr=Kn[--qn],Kn[qn]=null,ur=Kn[--qn],Kn[qn]=null}function GL(e,t){Kn[qn++]=ur,Kn[qn++]=mr,Kn[qn++]=po,ur=t.id,mr=t.overflow,po=e}var Jt=null,Ve=null,ue=!1,io=null,Jn=!1,jE=Error(H(519));function fo(e){var t=Error(H(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?"text":"HTML",""));throw Eh(Wn(t,e)),jE}function H7(e){var t=e.stateNode,a=e.type,n=e.memoizedProps;switch(t[na]=e,t[nn]=n,a){case"dialog":pe("cancel",t),pe("close",t);break;case"iframe":case"object":case"embed":pe("load",t);break;case"video":case"audio":for(a=0;a<_h.length;a++)pe(_h[a],t);break;case"source":pe("error",t);break;case"img":case"image":case"link":pe("error",t),pe("load",t);break;case"details":pe("toggle",t);break;case"input":pe("invalid",t),xL(t,n.value,n.defaultValue,n.checked,n.defaultChecked,n.type,n.name,!0);break;case"select":pe("invalid",t);break;case"textarea":pe("invalid",t),EL(t,n.value,n.defaultValue,n.children)}a=n.children,typeof a!="string"&&typeof a!="number"&&typeof a!="bigint"||t.textContent===""+a||n.suppressHydrationWarning===!0||_9(t.textContent,a)?(n.popover!=null&&(pe("beforetoggle",t),pe("toggle",t)),n.onScroll!=null&&pe("scroll",t),n.onScrollEnd!=null&&pe("scrollend",t),n.onClick!=null&&(t.onclick=dr),t=!0):t=!1,t||fo(e,!0)}function Yb(e){for(Jt=e.return;Jt;)switch(Jt.tag){case 5:case 31:case 13:Jn=!1;return;case 27:case 3:Jn=!0;return;default:Jt=Jt.return}}function ad(e){if(e!==Jt)return!1;if(!ue)return Yb(e),ue=!0,!1;var t=e.tag,a;if((a=t!==3&&t!==27)&&((a=t===5)&&(a=e.type,a=!(a!=="form"&&a!=="button")||C2(e.type,e.memoizedProps)),a=!a),a&&Ve&&fo(e),Yb(e),t===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(H(317));Ve=BN(e)}else if(t===31){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(H(317));Ve=BN(e)}else t===27?(t=Ve,xo(e.type)?(e=M2,M2=null,Ve=e):Ve=t):Ve=Jt?ei(e.stateNode.nextSibling):null;return!0}function Ds(){Ve=Jt=null,ue=!1}function iE(){var e=io;return e!==null&&(Wa===null?Wa=e:Wa.push.apply(Wa,e),io=null),e}function Eh(e){io===null?io=[e]:io.push(e)}var HE=gr(null),Fs=null,Gr=null;function Jl(e,t,a){Xe(HE,t._currentValue),t._currentValue=a}function Vr(e){e._currentValue=HE.current,ra(HE)}function wb(e,t,a){for(;e!==null;){var n=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,n!==null&&(n.childLanes|=t)):n!==null&&(n.childLanes&t)!==t&&(n.childLanes|=t),e===a)break;e=e.return}}function FE(e,t,a,n){var i=e.child;for(i!==null&&(i.return=e);i!==null;){var r=i.dependencies;if(r!==null){var l=i.child;r=r.firstContext;e:for(;r!==null;){var o=r;r=i;for(var d=0;d<t.length;d++)if(o.context===t[d]){r.lanes|=a,o=r.alternate,o!==null&&(o.lanes|=a),wb(r.return,a,e),n||(l=null);break e}r=o.next}}else if(i.tag===18){if(l=i.return,l===null)throw Error(H(341));l.lanes|=a,r=l.alternate,r!==null&&(r.lanes|=a),wb(l,a,e),l=null}else i.tag===13&&i.memoizedState!==null&&i.memoizedState.dehydrated===null?(i.lanes|=a,l=i.alternate,l!==null&&(l.lanes|=a),wb(i.return,a,e),l=i.child,l=l!==null?l.sibling:null):l=i.child;if(l!==null)l.return=i;else for(l=i;l!==null;){if(l===e){l=null;break}if(i=l.sibling,i!==null){i.return=l.return,l=i;break}l=l.return}i=l}}function Is(e,t,a,n){e=null;for(var i=t,r=!1;i!==null;){if(!r){if((i.flags&524288)!==0)r=!0;else if((i.flags&262144)!==0)break}if(i.tag===10){var l=i.alternate;if(l===null)throw Error(H(387));if(l=l.memoizedProps,l!==null){var o=i.type;Cn(i.pendingProps.value,l.value)||(e!==null?e.push(o):e=[o])}}else if(i===Ob.current){if(l=i.alternate,l===null)throw Error(H(387));l.memoizedState.memoizedState!==i.memoizedState.memoizedState&&(e!==null?e.push(Pd):e=[Pd])}i=i.return}return e!==null&&FE(t,e,a,n),t.flags|=262144,e!==null}function Gb(e){for(e=e.firstContext;e!==null;){if(!Cn(e.context._currentValue,e.memoizedValue))return!0;e=e.next}return!1}function Ns(e){Fs=e,Gr=null,e=e.dependencies,e!==null&&(e.firstContext=null)}function ia(e){return $L(Fs,e)}function nb(e,t){return Fs===null&&Ns(e),$L(e,t)}function $L(e,t){var a=t._currentValue;if(t={context:t,memoizedValue:a,next:null},Gr===null){if(e===null)throw Error(H(308));Gr=t,e.dependencies={lanes:0,firstContext:t},e.flags|=524288}else Gr=Gr.next=t;return a}var pV=typeof AbortController<"u"?AbortController:function(){var e=[],t=this.signal={aborted:!1,addEventListener:function(a,n){e.push(n)}};this.abort=function(){t.aborted=!0,e.forEach(function(a){return a()})}},fV=jt.unstable_scheduleCallback,gV=jt.unstable_NormalPriority,Dt={$$typeof:cr,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function X2(){return{controller:new pV,data:new Map,refCount:0}}function Ph(e){e.refCount--,e.refCount===0&&fV(gV,function(){e.controller.abort()})}function F7(e,t){if((e.pendingLanes&4194048)!==0){var a=e.transitionTypes;for(a===null&&(a=e.transitionTypes=[]),e=0;e<t.length;e++){var n=t[e];a.indexOf(n)===-1&&a.push(n)}}}var ah=null;function bV(e){var t=e.transitionTypes;return e.transitionTypes=null,t}var oh=null,YE=0,Ls=0,Ed=null;function vV(e,t){if(oh===null){var a=oh=[];YE=0,Ls=wS(),Ed={status:"pending",value:void 0,then:function(n){a.push(n)}}}return YE++,t.then(Y7,Y7),t}function Y7(){if(--YE===0&&(ah=null,oh!==null)){Ed!==null&&(Ed.status="fulfilled");var e=oh;oh=null,Ls=0,Ed=null;for(var t=0;t<e.length;t++)(0,e[t])()}}function yV(e,t){var a=[],n={status:"pending",value:null,reason:null,then:function(i){a.push(i)}};return e.then(function(){n.status="fulfilled",n.value=t;for(var i=0;i<a.length;i++)(0,a[i])(t)},function(i){for(n.status="rejected",n.reason=i,i=0;i<a.length;i++)(0,a[i])(void 0)}),n}var G7=ie.S;ie.S=function(e,t){if(c9=xn(),typeof t=="object"&&t!==null&&typeof t.then=="function"&&vV(e,t),ah!==null)for(var a=zd;a!==null;)F7(a,ah),a=a.next;if(a=e.types,a!==null){for(var n=zd;n!==null;)F7(n,a),n=n.next;if(Ls!==0){n=ah,n===null&&(n=ah=[]);for(var i=0;i<a.length;i++){var r=a[i];n.indexOf(r)===-1&&n.push(r)}}}G7!==null&&G7(e,t)};var ks=gr(null);function Z2(){var e=ks.current;return e!==null?e:He.pooledCache}function Eb(e,t){t===null?Xe(ks,ks.current):Xe(ks,t.pool)}function VL(){var e=Z2();return e===null?null:{parent:Dt._currentValue,pool:e}}var Gd=Error(H(460)),K2=Error(H(474)),vv=Error(H(542)),$b={then:function(){}};function $7(e){return e=e.status,e==="fulfilled"||e==="rejected"}function XL(e,t,a){switch(a=e[a],a===void 0?e.push(t):a!==t&&(t.then(dr,dr),t=a),t.status){case"fulfilled":return t.value;case"rejected":throw e=t.reason,X7(e),e===void 0&&!("reason"in t)?Error(H(600)):e;default:if(typeof t.status=="string")t.then(dr,dr);else{if(e=He,e!==null&&100<e.shellSuspendCounter)throw Error(H(482));e=t,e.status="pending",e.then(function(n){if(t.status==="pending"){var i=t;i.status="fulfilled",i.value=n}},function(n){if(t.status==="pending"){var i=t;i.status="rejected",i.reason=n}})}switch(t.status){case"fulfilled":return t.value;case"rejected":throw e=t.reason,X7(e),e}throw Ms=t,Gd}}function ws(e){try{var t=e._init;return t(e._payload)}catch(a){throw a!==null&&typeof a=="object"&&typeof a.then=="function"?(Ms=a,Gd):a}}var Ms=null;function V7(){if(Ms===null)throw Error(H(459));var e=Ms;return Ms=null,e}function X7(e){if(e===Gd||e===vv)throw Error(H(483))}var Sd=null,Sh=0;function ib(e){var t=Sh;return Sh+=1,Sd===null&&(Sd=[]),XL(Sd,e,t)}function $l(e,t){t=t.props.ref,e.ref=t!==void 0?t:null}function rb(e,t){throw t.$$typeof===JG?Error(H(525)):(e=Object.prototype.toString.call(t),Error(H(31,e==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":e)))}function ZL(e){function t(g,b){if(e){var v=g.deletions;v===null?(g.deletions=[b],g.flags|=16):v.push(b)}}function a(g,b){if(!e)return null;for(;b!==null;)t(g,b),b=b.sibling;return null}function n(g){for(var b=new Map;g!==null;)g.key===null?b.set(g.index,g):b.set(g.key,g),g=g.sibling;return b}function i(g,b){return g=$r(g,b),g.index=0,g.sibling=null,g}function r(g,b,v){return g.index=v,e?(v=g.alternate,v!==null?(v=v.index,v<b?(g.flags|=2,b):v):(g.flags|=134217730,b)):(g.flags|=1048576,b)}function l(g){return e&&g.alternate===null&&(g.flags|=134217730),g}function o(g,b,v,x){return b===null||b.tag!==6?(b=aE(v,g.mode,x),b.return=g,b):(b=i(b,v),b.return=g,b)}function d(g,b,v,x){var E=v.type;return E===sd?(g=s(g,b,v.props.children,x,v.key),$l(g,v),g):b!==null&&(b.elementType===E||typeof E=="object"&&E!==null&&E.$$typeof===Zl&&ws(E)===b.type)?(b=i(b,v.props),$l(b,v),b.return=g,b):(b=xb(v.type,v.key,v.props,null,g.mode,x),$l(b,v),b.return=g,b)}function h(g,b,v,x){return b===null||b.tag!==4||b.stateNode.containerInfo!==v.containerInfo||b.stateNode.implementation!==v.implementation?(b=nE(v,g.mode,x),b.return=g,b):(b=i(b,v.children||[]),b.return=g,b)}function s(g,b,v,x,E){return b===null||b.tag!==7?(b=_s(v,g.mode,x,E),b.return=g,b):(b=i(b,v),b.return=g,b)}function c(g,b,v){if(typeof b=="string"&&b!==""||typeof b=="number"||typeof b=="bigint")return b=aE(""+b,g.mode,v),b.return=g,b;if(typeof b=="object"&&b!==null){switch(b.$$typeof){case Kg:return v=xb(b.type,b.key,b.props,null,g.mode,v),$l(v,b),v.return=g,v;case Jm:return b=nE(b,g.mode,v),b.return=g,b;case Zl:return b=ws(b),c(g,b,v)}if(eh(b)||Xm(b))return b=_s(b,g.mode,v,null),b.return=g,b;if(typeof b.then=="function")return c(g,ib(b),v);if(b.$$typeof===cr)return c(g,nb(g,b),v);rb(g,b)}return null}function u(g,b,v,x){var E=b!==null?b.key:null;if(typeof v=="string"&&v!==""||typeof v=="number"||typeof v=="bigint")return E!==null?null:o(g,b,""+v,x);if(typeof v=="object"&&v!==null){switch(v.$$typeof){case Kg:return v.key===E?d(g,b,v,x):null;case Jm:return v.key===E?h(g,b,v,x):null;case Zl:return v=ws(v),u(g,b,v,x)}if(eh(v)||Xm(v))return E!==null?null:s(g,b,v,x,null);if(typeof v.then=="function")return u(g,b,ib(v),x);if(v.$$typeof===cr)return u(g,b,nb(g,v),x);rb(g,v)}return null}function m(g,b,v,x,E){if(typeof x=="string"&&x!==""||typeof x=="number"||typeof x=="bigint")return g=g.get(v)||null,o(b,g,""+x,E);if(typeof x=="object"&&x!==null){switch(x.$$typeof){case Kg:return g=g.get(x.key===null?v:x.key)||null,d(b,g,x,E);case Jm:return g=g.get(x.key===null?v:x.key)||null,h(b,g,x,E);case Zl:return x=ws(x),m(g,b,v,x,E)}if(eh(x)||Xm(x))return g=g.get(v)||null,s(b,g,x,E,null);if(typeof x.then=="function")return m(g,b,v,ib(x),E);if(x.$$typeof===cr)return m(g,b,v,nb(b,x),E);rb(b,x)}return null}function p(g,b,v,x){for(var E=null,S=null,C=b,_=b=0,D=null;C!==null&&_<v.length;_++){C.index>_?(D=C,C=null):D=C.sibling;var k=u(g,C,v[_],x);if(k===null){C===null&&(C=D);break}e&&C&&k.alternate===null&&t(g,C),b=r(k,b,_),S===null?E=k:S.sibling=k,S=k,C=D}if(_===v.length)return a(g,C),ue&&Yr(g,_),E;if(C===null){for(;_<v.length;_++)C=c(g,v[_],x),C!==null&&(b=r(C,b,_),S===null?E=C:S.sibling=C,S=C);return ue&&Yr(g,_),E}for(C=n(C);_<v.length;_++)D=m(C,g,_,v[_],x),D!==null&&(e&&(k=D.alternate,k!==null&&C.delete(k.key===null?_:k.key)),b=r(D,b,_),S===null?E=D:S.sibling=D,S=D);return e&&C.forEach(function(I){return t(g,I)}),ue&&Yr(g,_),E}function f(g,b,v,x){if(v==null)throw Error(H(151));for(var E=null,S=null,C=b,_=b=0,D=null,k=v.next();C!==null&&!k.done;_++,k=v.next()){C.index>_?(D=C,C=null):D=C.sibling;var I=u(g,C,k.value,x);if(I===null){C===null&&(C=D);break}e&&C&&I.alternate===null&&t(g,C),b=r(I,b,_),S===null?E=I:S.sibling=I,S=I,C=D}if(k.done)return a(g,C),ue&&Yr(g,_),E;if(C===null){for(;!k.done;_++,k=v.next())k=c(g,k.value,x),k!==null&&(b=r(k,b,_),S===null?E=k:S.sibling=k,S=k);return ue&&Yr(g,_),E}for(C=n(C);!k.done;_++,k=v.next())k=m(C,g,_,k.value,x),k!==null&&(e&&(D=k.alternate,D!==null&&C.delete(D.key===null?_:D.key)),b=r(k,b,_),S===null?E=k:S.sibling=k,S=k);return e&&C.forEach(function(j){return t(g,j)}),ue&&Yr(g,_),E}function y(g,b,v,x){if(typeof v=="object"&&v!==null&&v.type===sd&&v.key===null&&v.props.ref===void 0&&(v=v.props.children),typeof v=="object"&&v!==null){switch(v.$$typeof){case Kg:e:{for(var E=v.key;b!==null;){if(b.key===E){if(E=v.type,E===sd){if(b.tag===7){a(g,b.sibling),x=i(b,v.props.children),$l(x,v),x.return=g,g=x;break e}}else if(b.elementType===E||typeof E=="object"&&E!==null&&E.$$typeof===Zl&&ws(E)===b.type){a(g,b.sibling),x=i(b,v.props),$l(x,v),x.return=g,g=x;break e}a(g,b);break}else t(g,b);b=b.sibling}v.type===sd?(x=_s(v.props.children,g.mode,x,v.key),$l(x,v),x.return=g,g=x):(x=xb(v.type,v.key,v.props,null,g.mode,x),$l(x,v),x.return=g,g=x)}return l(g);case Jm:e:{for(E=v.key;b!==null;){if(b.key===E)if(b.tag===4&&b.stateNode.containerInfo===v.containerInfo&&b.stateNode.implementation===v.implementation){a(g,b.sibling),x=i(b,v.children||[]),x.return=g,g=x;break e}else{a(g,b);break}else t(g,b);b=b.sibling}x=nE(v,g.mode,x),x.return=g,g=x}return l(g);case Zl:return v=ws(v),y(g,b,v,x)}if(eh(v))return p(g,b,v,x);if(Xm(v)){if(E=Xm(v),typeof E!="function")throw Error(H(150));return v=E.call(v),f(g,b,v,x)}if(typeof v.then=="function")return y(g,b,ib(v),x);if(v.$$typeof===cr)return y(g,b,nb(g,v),x);rb(g,v)}return typeof v=="string"&&v!==""||typeof v=="number"||typeof v=="bigint"?(v=""+v,b!==null&&b.tag===6?(a(g,b.sibling),x=i(b,v),x.return=g,g=x):(a(g,b),x=aE(v,g.mode,x),x.return=g,g=x),l(g)):a(g,b)}return function(g,b,v,x){try{Sh=0;var E=y(g,b,v,x);return Sd=null,E}catch(C){if(C===Gd||C===vv)throw C;var S=en(29,C,null,g.mode);return S.lanes=x,S.return=g,S}}}var Rs=ZL(!0),KL=ZL(!1),Kl=!1;function q2(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function GE(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function ro(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function lo(e,t,a){var n=e.updateQueue;if(n===null)return null;if(n=n.shared,(Te&2)!==0){var i=n.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),n.pending=t,t=Hb(e),jL(e,null,a),t}return gv(e,n,t,a),Hb(e)}function sh(e,t,a){if(t=t.updateQueue,t!==null&&(t=t.shared,(a&4194048)!==0)){var n=t.lanes;n&=e.pendingLanes,a|=n,t.lanes=a,mL(e,a)}}function rE(e,t){var a=e.updateQueue,n=e.alternate;if(n!==null&&(n=n.updateQueue,a===n)){var i=null,r=null;if(a=a.firstBaseUpdate,a!==null){do{var l={lane:a.lane,tag:a.tag,payload:a.payload,callback:null,next:null};r===null?i=r=l:r=r.next=l,a=a.next}while(a!==null);r===null?i=r=t:r=r.next=t}else i=r=t;a={baseState:n.baseState,firstBaseUpdate:i,lastBaseUpdate:r,shared:n.shared,callbacks:n.callbacks},e.updateQueue=a;return}e=a.lastBaseUpdate,e===null?a.firstBaseUpdate=t:e.next=t,a.lastBaseUpdate=t}var $E=!1;function ch(){if($E){var e=Ed;if(e!==null)throw e}}function dh(e,t,a,n){$E=!1;var i=e.updateQueue;Kl=!1;var r=i.firstBaseUpdate,l=i.lastBaseUpdate,o=i.shared.pending;if(o!==null){i.shared.pending=null;var d=o,h=d.next;d.next=null,l===null?r=h:l.next=h,l=d;var s=e.alternate;s!==null&&(s=s.updateQueue,o=s.lastBaseUpdate,o!==l&&(o===null?s.firstBaseUpdate=h:o.next=h,s.lastBaseUpdate=d))}if(r!==null){var c=i.baseState;l=0,s=h=d=null,o=r;do{var u=o.lane&-536870913,m=u!==o.lane;if(m?(be&u)===u:(n&u)===u){u!==0&&u===Ls&&($E=!0),s!==null&&(s=s.next={lane:0,tag:o.tag,payload:o.payload,callback:null,next:null});e:{var p=e,f=o;u=t;var y=a;switch(f.tag){case 1:if(p=f.payload,typeof p=="function"){c=p.call(y,c,u);break e}c=p;break e;case 3:p.flags=p.flags&-65537|128;case 0:if(p=f.payload,u=typeof p=="function"?p.call(y,c,u):p,u==null)break e;c=Fe({},c,u);break e;case 2:Kl=!0}}u=o.callback,u!==null&&(e.flags|=64,m&&(e.flags|=8192),m=i.callbacks,m===null?i.callbacks=[u]:m.push(u))}else m={lane:u,tag:o.tag,payload:o.payload,callback:o.callback,next:null},s===null?(h=s=m,d=c):s=s.next=m,l|=u;if(o=o.next,o===null){if(o=i.shared.pending,o===null)break;m=o,o=m.next,m.next=null,i.lastBaseUpdate=m,i.shared.pending=null}}while(!0);s===null&&(d=c),i.baseState=d,i.firstBaseUpdate=h,i.lastBaseUpdate=s,r===null&&(i.shared.lanes=0),vo|=l,e.lanes=l,e.memoizedState=c}}function qL(e,t){if(typeof e!="function")throw Error(H(191,e));e.call(t)}function QL(e,t){var a=e.callbacks;if(a!==null)for(e.callbacks=null,e=0;e<a.length;e++)qL(a[e],t)}var go=gr(null),Vb=gr(0);function Z7(e,t){e=Wr,Xe(Vb,e),Xe(go,t),Wr=e|t.baseLanes}function VE(){Xe(Vb,Wr),Xe(go,go.current)}function Q2(){Wr=Vb.current,ra(go),ra(Vb)}var sa=gr(null),Ta=null;function oo(e){var t=e.alternate;Xe(la,la.current&1),Xe(sa,e),Ta===null&&(t===null||go.current!==null||t.memoizedState!==null)&&(Ta=e)}function XE(e){Xe(la,la.current),Xe(sa,e),Ta===null&&(Ta=e)}function WL(e){e.tag===22?(Xe(la,la.current),Xe(sa,e),Ta===null&&(Ta=e)):so()}function so(){Xe(la,la.current),Xe(sa,sa.current)}function bn(e){ra(sa),Ta===e&&(Ta=null),ra(la)}var la=gr(0);function Ch(e,t){Xe(sa,sa.current),Xe(la,t)}function W2(e){ra(la),ra(sa),Ta===e&&(Ta=null)}function Xb(e){for(var t=e;t!==null;){if(t.tag===13){var a=t.memoizedState;if(a!==null&&(a=a.dehydrated,a===null||k2(a)||TS(a)))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!=="independent"){if((t.flags&128)!==0)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var Kr=0,le=null,Be=null,At=null,Zb=!1,Cd=!1,Os=!1,Kb=0,Th=0,Td=null,xV=0;function pt(){throw Error(H(321))}function J2(e,t){if(t===null)return!1;for(var a=0;a<t.length&&a<e.length;a++)if(!Cn(e[a],t[a]))return!1;return!0}function eS(e,t,a,n,i,r){return Kr=r,le=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,ie.H=e===null||e.memoizedState===null?AR:DR,Os=!1,r=a(n,i),Os=!1,Cd&&(r=eR(t,a,n,i)),JL(e),r}function JL(e){ie.H=qb;var t=Be!==null&&Be.next!==null;if(Kr=0,At=Be=le=null,Zb=!1,Th=0,Td=null,t)throw Error(H(300));e===null||It||(e=e.dependencies,e!==null&&Gb(e)&&(It=!0))}function eR(e,t,a,n){le=e;var i=0;do{if(Cd&&(Td=null),Th=0,Cd=!1,25<=i)throw Error(H(301));if(i+=1,At=Be=null,e.updateQueue!=null){var r=e.updateQueue;r.lastEffect=null,r.events=null,r.stores=null,r.memoCache!=null&&(r.memoCache.index=0)}ie.H=MV,r=t(a,n)}while(Cd);return r}function wV(){var e=ie.H,t=e.useState()[0];return t=typeof t.then=="function"?jh(t):t,e=e.useState()[0],(Be!==null?Be.memoizedState:null)!==e&&(le.flags|=1024),t}function tS(){var e=Kb!==0;return Kb=0,e}function aS(e,t,a){t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~a}function nS(e){if(Zb){for(e=e.memoizedState;e!==null;){var t=e.queue;t!==null&&(t.pending=null),e=e.next}Zb=!1}Kr=0,At=Be=le=null,Cd=!1,Th=Kb=0,Td=null}function Ha(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return At===null?le.memoizedState=At=e:At=At.next=e,At}function vt(){if(Be===null){var e=le.alternate;e=e!==null?e.memoizedState:null}else e=Be.next;var t=At===null?le.memoizedState:At.next;if(t!==null)At=t,Be=e;else{if(e===null)throw le.alternate===null?Error(H(467)):Error(H(310));Be=e,e={memoizedState:Be.memoizedState,baseState:Be.baseState,baseQueue:Be.baseQueue,queue:Be.queue,next:null},At===null?le.memoizedState=At=e:At=At.next=e}return At}function yv(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function jh(e){var t=Th;return Th+=1,Td===null&&(Td=[]),e=XL(Td,e,t),t=le,(At===null?t.memoizedState:At.next)===null&&(t=t.alternate,ie.H=t===null||t.memoizedState===null?AR:DR),e}function xv(e){if(e!==null&&typeof e=="object"){if(typeof e.then=="function")return jh(e);if(e.$$typeof===a$)return;if(e.$$typeof===cr)return ia(e)}throw Error(H(438,String(e)))}function iS(e){var t=null,a=le.updateQueue;if(a!==null&&(t=a.memoCache),t==null){var n=le.alternate;n!==null&&(n=n.updateQueue,n!==null&&(n=n.memoCache,n!=null&&(t={data:n.data.map(function(i){return i.slice()}),index:0})))}if(t==null&&(t={data:[],index:0}),a===null&&(a=yv(),le.updateQueue=a),a.memoCache=t,a=t.data[t.index],a===void 0)for(a=t.data[t.index]=Array(e),n=0;n<e;n++)a[n]=t$;return t.index++,a}function qr(e,t){return typeof t=="function"?t(e):t}function Sb(e){var t=vt();return rS(t,Be,e)}function rS(e,t,a){var n=e.queue;if(n===null)throw Error(H(311));n.lastRenderedReducer=a;var i=e.baseQueue,r=n.pending;if(r!==null){if(i!==null){var l=i.next;i.next=r.next,r.next=l}t.baseQueue=i=r,n.pending=null}if(r=e.baseState,i===null)e.memoizedState=r;else{t=i.next;var o=l=null,d=null,h=t,s=!1;do{var c=h.lane&-536870913;if(c!==h.lane?(be&c)===c:(Kr&c)===c){var u=h.revertLane;if(u===0)d!==null&&(d=d.next={lane:0,revertLane:0,gesture:null,action:h.action,hasEagerState:h.hasEagerState,eagerState:h.eagerState,next:null}),c===Ls&&(s=!0);else if((Kr&u)===u){h=h.next,u===Ls&&(s=!0);continue}else c={lane:0,revertLane:h.revertLane,gesture:null,action:h.action,hasEagerState:h.hasEagerState,eagerState:h.eagerState,next:null},d===null?(o=d=c,l=r):d=d.next=c,le.lanes|=u,vo|=u;c=h.action,Os&&a(r,c),r=h.hasEagerState?h.eagerState:a(r,c)}else u={lane:c,revertLane:h.revertLane,gesture:h.gesture,action:h.action,hasEagerState:h.hasEagerState,eagerState:h.eagerState,next:null},d===null?(o=d=u,l=r):d=d.next=u,le.lanes|=c,vo|=c;h=h.next}while(h!==null&&h!==t);if(d===null?l=r:d.next=o,!Cn(r,e.memoizedState)&&(It=!0,s&&(a=Ed,a!==null)))throw a;e.memoizedState=r,e.baseState=l,e.baseQueue=d,n.lastRenderedState=r}return i===null&&(n.lanes=0),[e.memoizedState,n.dispatch]}function lE(e){var t=vt(),a=t.queue;if(a===null)throw Error(H(311));a.lastRenderedReducer=e;var n=a.dispatch,i=a.pending,r=t.memoizedState;if(i!==null){a.pending=null;var l=i=i.next;do r=e(r,l.action),l=l.next;while(l!==i);Cn(r,t.memoizedState)||(It=!0),t.memoizedState=r,t.baseQueue===null&&(t.baseState=r),a.lastRenderedState=r}return[r,n]}function tR(e,t,a){var n=le,i=vt(),r=ue;if(r){if(a===void 0)throw Error(H(407));a=a()}else a=t();var l=!Cn((Be||i).memoizedState,a);if(l&&(i.memoizedState=a,It=!0),i=i.queue,lS(iR.bind(null,n,i,e),[e]),e=i.getSnapshot!==t||l||At!==null&&(At.memoizedState.tag&1)!==0,Nd(e?9:8,{destroy:void 0},nR.bind(null,n,i,a,t),null),e){if(n.flags|=2048,He===null)throw Error(H(349));r||(Kr&127)!==0||aR(n,t,a)}return a}function aR(e,t,a){e.flags|=16384,e={getSnapshot:t,value:a},t=le.updateQueue,t===null?(t=yv(),le.updateQueue=t,t.stores=[e]):(a=t.stores,a===null?t.stores=[e]:a.push(e))}function nR(e,t,a,n){t.value=a,t.getSnapshot=n,rR(t)&&lR(e)}function iR(e,t,a){return a(function(){rR(t)&&lR(e)})}function rR(e){var t=e.getSnapshot;e=e.value;try{var a=t();return!Cn(e,a)}catch{return!0}}function lR(e){var t=Hs(e,2);t!==null&&tn(t,e,2)}function ZE(e){var t=Ha();if(typeof e=="function"){var a=e;if(e=a(),Os){Ql(!0);try{a()}finally{Ql(!1)}}}return t.memoizedState=t.baseState=e,t.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:qr,lastRenderedState:e},t}function oR(e,t,a,n){return e.baseState=a,rS(e,Be,typeof n=="function"?n:qr)}function EV(e,t,a,n,i){if(Ev(e))throw Error(H(485));if(e=t.action,e!==null){var r={payload:i,action:e,next:null,isTransition:!0,status:"pending",value:null,reason:null,listeners:[],then:function(l){r.listeners.push(l)}};ie.T!==null?a(!0):r.isTransition=!1,n(r),a=t.pending,a===null?(r.next=t.pending=r,sR(t,r)):(r.next=a.next,t.pending=a.next=r)}}function sR(e,t){var a=t.action,n=t.payload,i=e.state;if(t.isTransition){var r=ie.T,l={};l.types=r!==null?r.types:null,ie.T=l;try{var o=a(i,n),d=ie.S;d!==null&&d(l,o),K7(e,t,o)}catch(h){KE(e,t,h)}finally{r!==null&&l.types!==null&&(r.types=l.types),ie.T=r}}else try{r=a(i,n),K7(e,t,r)}catch(h){KE(e,t,h)}}function K7(e,t,a){a!==null&&typeof a=="object"&&typeof a.then=="function"?a.then(function(n){q7(e,t,n)},function(n){return KE(e,t,n)}):q7(e,t,a)}function q7(e,t,a){t.status="fulfilled",t.value=a,cR(t),e.state=a,t=e.pending,t!==null&&(a=t.next,a===t?e.pending=null:(a=a.next,t.next=a,sR(e,a)))}function KE(e,t,a){var n=e.pending;if(e.pending=null,n!==null){n=n.next;do t.status="rejected",t.reason=a,cR(t),t=t.next;while(t!==n)}e.action=null}function cR(e){e=e.listeners;for(var t=0;t<e.length;t++)(0,e[t])()}function dR(e,t){return t}function Q7(e,t){if(ue){var a=He.formState;if(a!==null){e:{var n=le;if(ue){if(Ve){t:{for(var i=Ve,r=Jn;i.nodeType!==8;){if(!r){i=null;break t}if(i=ei(i.nextSibling),i===null){i=null;break t}}r=i.data,i=r==="F!"||r==="F"?i:null}if(i){Ve=ei(i.nextSibling),n=i.data==="F!";break e}}fo(n)}n=!1}n&&(t=a[0])}}return a=Ha(),a.memoizedState=a.baseState=t,n={pending:null,lanes:0,dispatch:null,lastRenderedReducer:dR,lastRenderedState:t},a.queue=n,a=_R.bind(null,le,n),n.dispatch=a,n=ZE(!1),r=dS.bind(null,le,!1,n.queue),n=Ha(),i={state:t,dispatch:null,action:e,pending:null},n.queue=i,a=EV.bind(null,le,i,r,a),i.dispatch=a,n.memoizedState=e,[t,a,!1]}function W7(e){var t=vt();return uR(t,Be,e)}function uR(e,t,a){if(t=rS(e,t,dR)[0],e=Sb(qr)[0],typeof t=="object"&&t!==null&&typeof t.then=="function")try{var n=jh(t)}catch(l){throw l===Gd?vv:l}else n=t;t=vt();var i=t.queue,r=i.dispatch;return a!==t.memoizedState&&(le.flags|=2048,Nd(9,{destroy:void 0},SV.bind(null,i,a),null)),[n,r,e]}function SV(e,t){e.action=t}function J7(e){var t=vt(),a=Be;if(a!==null)return uR(t,a,e);vt(),t=t.memoizedState,a=vt();var n=a.queue.dispatch;return a.memoizedState=e,[t,n,!1]}function Nd(e,t,a,n){return e={tag:e,create:a,deps:n,inst:t,next:null},t=le.updateQueue,t===null&&(t=yv(),le.updateQueue=t),a=t.lastEffect,a===null?t.lastEffect=e.next=e:(n=a.next,a.next=e,e.next=n,t.lastEffect=e),e}function mR(){return vt().memoizedState}function Cb(e,t,a,n){var i=Ha();le.flags|=e,i.memoizedState=Nd(1|t,{destroy:void 0},a,n===void 0?null:n)}function wv(e,t,a,n){var i=vt();n=n===void 0?null:n;var r=i.memoizedState.inst;Be!==null&&n!==null&&J2(n,Be.memoizedState.deps)?i.memoizedState=Nd(t,r,a,n):(le.flags|=e,i.memoizedState=Nd(1|t,r,a,n))}function eN(e,t){Cb(8390656,8,e,t)}function lS(e,t){wv(2048,8,e,t)}function CV(e){le.flags|=4;var t=le.updateQueue;if(t===null)t=yv(),le.updateQueue=t,t.events=[e];else{var a=t.events;a===null?t.events=[e]:a.push(e)}}function hR(e){var t=vt().memoizedState;return CV({ref:t,nextImpl:e}),function(){if((Te&2)!==0)throw Error(H(440));return t.impl.apply(void 0,arguments)}}function pR(e,t){return wv(4,2,e,t)}function fR(e,t){return wv(4,4,e,t)}function gR(e,t){if(typeof t=="function"){e=e();var a=t(e);return function(){typeof a=="function"?a():t(null)}}if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function bR(e,t,a){a=a!=null?a.concat([e]):null,wv(4,4,gR.bind(null,t,e),a)}function oS(){}function vR(e,t){var a=vt();t=t===void 0?null:t;var n=a.memoizedState;return t!==null&&J2(t,n[1])?n[0]:(a.memoizedState=[e,t],e)}function yR(e,t){var a=vt();t=t===void 0?null:t;var n=a.memoizedState;if(t!==null&&J2(t,n[1]))return n[0];if(n=e(),Os){Ql(!0);try{e()}finally{Ql(!1)}}return a.memoizedState=[n,t],n}function sS(e,t,a){return a===void 0||(Kr&1073741824)!==0&&(be&261930)===0?e.memoizedState=t:(e.memoizedState=a,e=u9(),le.lanes|=e,vo|=e,a)}function xR(e,t,a,n){return Cn(a,t)?a:go.current!==null?(e=sS(e,a,n),Cn(e,t)||(It=!0),e):(Kr&106)===0||(Kr&1073741824)!==0&&(be&261930)===0?(It=!0,e.memoizedState=a):(e=u9(),le.lanes|=e,vo|=e,t)}function wR(e,t,a,n,i){var r=_e.p;_e.p=r!==0&&8>r?r:8;var l=ie.T,o={};o.types=l!==null?l.types:null,ie.T=o,dS(e,!1,t,a);try{var d=i(),h=ie.S;if(h!==null&&h(o,d),d!==null&&typeof d=="object"&&typeof d.then=="function"){var s=yV(d,n);uh(e,t,s,Sn(e))}else uh(e,t,n,Sn(e))}catch(c){uh(e,t,{then:function(){},status:"rejected",reason:c},Sn())}finally{_e.p=r,l!==null&&o.types!==null&&(l.types=o.types),ie.T=l}}function TV(){}function qE(e,t,a,n){if(e.tag!==5)throw Error(H(476));var i=ER(e).queue;wR(e,i,t,Ts,a===null?TV:function(){return SR(e),a(n)})}function ER(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:Ts,baseState:Ts,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:qr,lastRenderedState:Ts},next:null};var a={};return t.next={memoizedState:a,baseState:a,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:qr,lastRenderedState:a},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function SR(e){var t=ER(e);t.next===null&&(t=e.alternate.memoizedState),uh(e,t.next.queue,{},Sn())}function cS(){return ia(Pd)}function CR(){return vt().memoizedState}function TR(){return vt().memoizedState}function _V(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var a=Sn();e=ro(a);var n=lo(t,e,a);n!==null&&(tn(n,t,a),sh(n,t,a)),t={cache:X2()},e.payload=t;return}t=t.return}}function kV(e,t,a){var n=Sn();a={lane:n,revertLane:0,gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null},Ev(e)?kR(t,a):(a=G2(e,t,a,n),a!==null&&(tn(a,e,n),MR(a,t,n)))}function _R(e,t,a){var n=Sn();uh(e,t,a,n)}function uh(e,t,a,n){var i={lane:n,revertLane:0,gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null};if(Ev(e))kR(t,i);else{var r=e.alternate;if(e.lanes===0&&(r===null||r.lanes===0)&&(r=t.lastRenderedReducer,r!==null))try{var l=t.lastRenderedState,o=r(l,a);if(i.hasEagerState=!0,i.eagerState=o,Cn(o,l))return gv(e,t,i,0),He===null&&fv(),!1}catch{}if(a=G2(e,t,i,n),a!==null)return tn(a,e,n),MR(a,t,n),!0}return!1}function dS(e,t,a,n){if(n={lane:2,revertLane:wS(),gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Ev(e)){if(t)throw Error(H(479))}else t=G2(e,a,n,2),t!==null&&tn(t,e,2)}function Ev(e){var t=e.alternate;return e===le||t!==null&&t===le}function kR(e,t){Cd=Zb=!0;var a=e.pending;a===null?t.next=t:(t.next=a.next,a.next=t),e.pending=t}function MR(e,t,a){if((a&4194048)!==0){var n=t.lanes;n&=e.pendingLanes,a|=n,t.lanes=a,mL(e,a)}}var qb={readContext:ia,use:xv,useCallback:pt,useContext:pt,useEffect:pt,useImperativeHandle:pt,useLayoutEffect:pt,useInsertionEffect:pt,useMemo:pt,useReducer:pt,useRef:pt,useState:pt,useDebugValue:pt,useDeferredValue:pt,useTransition:pt,useSyncExternalStore:pt,useId:pt,useHostTransitionStatus:pt,useFormState:pt,useActionState:pt,useOptimistic:pt,useMemoCache:pt,useCacheRefresh:pt,useEffectEvent:pt},AR={readContext:ia,use:xv,useCallback:function(e,t){return Ha().memoizedState=[e,t===void 0?null:t],e},useContext:ia,useEffect:eN,useImperativeHandle:function(e,t,a){a=a!=null?a.concat([e]):null,Cb(4194308,4,gR.bind(null,t,e),a)},useLayoutEffect:function(e,t){return Cb(4194308,4,e,t)},useInsertionEffect:function(e,t){Cb(4,2,e,t)},useMemo:function(e,t){var a=Ha();t=t===void 0?null:t;var n=e();if(Os){Ql(!0);try{e()}finally{Ql(!1)}}return a.memoizedState=[n,t],n},useReducer:function(e,t,a){var n=Ha();if(a!==void 0){var i=a(t);if(Os){Ql(!0);try{a(t)}finally{Ql(!1)}}}else i=t;return n.memoizedState=n.baseState=i,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:i},n.queue=e,e=e.dispatch=kV.bind(null,le,e),[n.memoizedState,e]},useRef:function(e){var t=Ha();return e={current:e},t.memoizedState=e},useState:function(e){e=ZE(e);var t=e.queue,a=_R.bind(null,le,t);return t.dispatch=a,[e.memoizedState,a]},useDebugValue:oS,useDeferredValue:function(e,t){var a=Ha();return sS(a,e,t)},useTransition:function(){var e=ZE(!1);return e=wR.bind(null,le,e.queue,!0,!1),Ha().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,a){var n=le,i=Ha();if(ue){if(a===void 0)throw Error(H(407));a=a()}else{if(a=t(),He===null)throw Error(H(349));(be&127)!==0||aR(n,t,a)}i.memoizedState=a;var r={value:a,getSnapshot:t};return i.queue=r,eN(iR.bind(null,n,r,e),[e]),n.flags|=2048,Nd(9,{destroy:void 0},nR.bind(null,n,r,a,t),null),a},useId:function(){var e=Ha(),t=He.identifierPrefix;if(ue){var a=mr,n=ur;a=(n&~(1<<32-En(n)-1)).toString(32)+a,t="_"+t+"R_"+a,a=Kb++,0<a&&(t+="H"+a.toString(32)),t+="_"}else a=xV++,t="_"+t+"r_"+a.toString(32)+"_";return e.memoizedState=t},useHostTransitionStatus:cS,useFormState:Q7,useActionState:Q7,useOptimistic:function(e){var t=Ha();t.memoizedState=t.baseState=e;var a={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return t.queue=a,t=dS.bind(null,le,!0,a),a.dispatch=t,[e,t]},useMemoCache:iS,useCacheRefresh:function(){return Ha().memoizedState=_V.bind(null,le)},useEffectEvent:function(e){var t=Ha(),a={impl:e};return t.memoizedState=a,function(){if((Te&2)!==0)throw Error(H(440));return a.impl.apply(void 0,arguments)}}},DR={readContext:ia,use:xv,useCallback:vR,useContext:ia,useEffect:lS,useImperativeHandle:bR,useInsertionEffect:pR,useLayoutEffect:fR,useMemo:yR,useReducer:Sb,useRef:mR,useState:function(){return Sb(qr)},useDebugValue:oS,useDeferredValue:function(e,t){var a=vt();return xR(a,Be.memoizedState,e,t)},useTransition:function(){var e=Sb(qr)[0],t=vt().memoizedState;return[typeof e=="boolean"?e:jh(e),t]},useSyncExternalStore:tR,useId:CR,useHostTransitionStatus:cS,useFormState:W7,useActionState:W7,useOptimistic:function(e,t){var a=vt();return oR(a,Be,e,t)},useMemoCache:iS,useCacheRefresh:TR,useEffectEvent:hR},MV={readContext:ia,use:xv,useCallback:vR,useContext:ia,useEffect:lS,useImperativeHandle:bR,useInsertionEffect:pR,useLayoutEffect:fR,useMemo:yR,useReducer:lE,useRef:mR,useState:function(){return lE(qr)},useDebugValue:oS,useDeferredValue:function(e,t){var a=vt();return Be===null?sS(a,e,t):xR(a,Be.memoizedState,e,t)},useTransition:function(){var e=lE(qr)[0],t=vt().memoizedState;return[typeof e=="boolean"?e:jh(e),t]},useSyncExternalStore:tR,useId:CR,useHostTransitionStatus:cS,useFormState:J7,useActionState:J7,useOptimistic:function(e,t){var a=vt();return Be!==null?oR(a,Be,e,t):(a.baseState=e,[e,a.queue.dispatch])},useMemoCache:iS,useCacheRefresh:TR,useEffectEvent:hR};function oE(e,t,a,n){t=e.memoizedState,a=a(n,t),a=a==null?t:Fe({},t,a),e.memoizedState=a,e.lanes===0&&(e.updateQueue.baseState=a)}var QE={enqueueSetState:function(e,t,a){e=e._reactInternals;var n=Sn(),i=ro(n);i.payload=t,a!=null&&(i.callback=a),t=lo(e,i,n),t!==null&&(tn(t,e,n),sh(t,e,n))},enqueueReplaceState:function(e,t,a){e=e._reactInternals;var n=Sn(),i=ro(n);i.tag=1,i.payload=t,a!=null&&(i.callback=a),t=lo(e,i,n),t!==null&&(tn(t,e,n),sh(t,e,n))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var a=Sn(),n=ro(a);n.tag=2,t!=null&&(n.callback=t),t=lo(e,n,a),t!==null&&(tn(t,e,a),sh(t,e,a))}};function tN(e,t,a,n,i,r,l){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(n,r,l):t.prototype&&t.prototype.isPureReactComponent?!xh(a,n)||!xh(i,r):!0}function aN(e,t,a,n){e=t.state,typeof t.componentWillReceiveProps=="function"&&t.componentWillReceiveProps(a,n),typeof t.UNSAFE_componentWillReceiveProps=="function"&&t.UNSAFE_componentWillReceiveProps(a,n),t.state!==e&&QE.enqueueReplaceState(t,t.state,null)}function zs(e,t){var a=t;if("ref"in t){a={};for(var n in t)n!=="ref"&&(a[n]=t[n])}if(e=e.defaultProps){a===t&&(a=Fe({},a));for(var i in e)a[i]===void 0&&(a[i]=e[i])}return a}function IR(e){jb(e)}function NR(e){console.error(e)}function LR(e){jb(e)}function Qb(e,t){try{var a=e.onUncaughtError;a(t.value,{componentStack:t.stack})}catch(n){setTimeout(function(){throw n})}}function nN(e,t,a){try{var n=e.onCaughtError;n(a.value,{componentStack:a.stack,errorBoundary:t.tag===1?t.stateNode:null})}catch(i){setTimeout(function(){throw i})}}function WE(e,t,a){return a=ro(a),a.tag=3,a.payload={element:null},a.callback=function(){Qb(e,t)},a}function RR(e){return e=ro(e),e.tag=3,e}function OR(e,t,a,n){var i=a.type.getDerivedStateFromError;if(typeof i=="function"){var r=n.value;e.payload=function(){return i(r)},e.callback=function(){nN(t,a,n)}}var l=a.stateNode;l!==null&&typeof l.componentDidCatch=="function"&&(e.callback=function(){nN(t,a,n),typeof i!="function"&&(co===null?co=new Set([this]):co.add(this));var o=n.stack;this.componentDidCatch(n.value,{componentStack:o!==null?o:""})})}function AV(e,t,a,n,i){if(a.flags|=32768,n!==null&&typeof n=="object"&&typeof n.then=="function"){if(t=a.alternate,t!==null&&Is(t,a,i,!0),a=sa.current,a!==null){switch(a.tag){case 31:case 13:case 19:return Ta===null?rv():a.alternate===null&&ft===0&&(ft=3),a.flags&=-257,a.flags|=65536,a.lanes=i,n===$b?a.flags|=16384:(t=a.updateQueue,t===null?a.updateQueue=new Set([n]):t.add(n),pE(e,n,i)),!1;case 22:return a.flags|=65536,n===$b?a.flags|=16384:(t=a.updateQueue,t===null?(t={transitions:null,markerInstances:null,retryQueue:new Set([n])},a.updateQueue=t):(a=t.retryQueue,a===null?t.retryQueue=new Set([n]):a.add(n)),pE(e,n,i)),!1}throw Error(H(435,a.tag))}return pE(e,n,i),rv(),!1}if(ue)return t=sa.current,t!==null?((t.flags&65536)===0&&(t.flags|=256),t.flags|=65536,t.lanes=i,n!==jE&&(e=Error(H(422),{cause:n}),Eh(Wn(e,a)))):(n!==jE&&(t=Error(H(423),{cause:n}),Eh(Wn(t,a))),e=e.current.alternate,e.flags|=65536,i&=-i,e.lanes|=i,n=Wn(n,a),i=WE(e.stateNode,n,i),rE(e,i),ft!==4&&(ft=2)),!1;var r=Error(H(520),{cause:n});if(r=Wn(r,a),fh===null?fh=[r]:fh.push(r),ft!==4&&(ft=2),t===null)return!0;n=Wn(n,a),a=t;do{switch(a.tag){case 3:return a.flags|=65536,e=i&-i,a.lanes|=e,e=WE(a.stateNode,n,e),rE(a,e),!1;case 1:if(t=a.type,r=a.stateNode,(a.flags&128)===0&&(typeof t.getDerivedStateFromError=="function"||r!==null&&typeof r.componentDidCatch=="function"&&(co===null||!co.has(r))))return a.flags|=65536,i&=-i,a.lanes|=i,i=RR(i),OR(i,e,a,n),rE(a,i),!1;break;case 22:if(a.memoizedState!==null)return a.flags|=65536,!1}a=a.return}while(a!==null);return!1}var uS=Error(H(461)),It=!1;function Ut(e,t,a,n){t.child=e===null?KL(t,null,a,n):Rs(t,e.child,a,n)}function iN(e,t,a,n,i){a=a.render;var r=t.ref;if("ref"in n){var l={};for(var o in n)o!=="ref"&&(l[o]=n[o])}else l=n;return Ns(t),n=eS(e,t,a,l,r,i),o=tS(),e!==null&&!It?(aS(e,t,i),Qr(e,t,i)):(ue&&o&&bv(t),t.flags|=1,Ut(e,t,n,i),t.child)}function rN(e,t,a,n,i){if(e===null){var r=a.type;return typeof r=="function"&&!$2(r)&&r.defaultProps===void 0&&a.compare===null?(t.tag=15,t.type=r,zR(e,t,r,n,i)):(e=xb(a.type,null,n,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}if(r=e.child,!hS(e,i)){var l=r.memoizedProps;if(a=a.compare,a=a!==null?a:xh,a(l,n)&&e.ref===t.ref)return Qr(e,t,i)}return t.flags|=1,e=$r(r,n),e.ref=t.ref,e.return=t,t.child=e}function zR(e,t,a,n,i){if(e!==null){var r=e.memoizedProps;if(xh(r,n)&&e.ref===t.ref)if(It=!1,t.pendingProps=n=r,hS(e,i))(e.flags&131072)!==0&&(It=!0);else return t.lanes=e.lanes,Qr(e,t,i)}return JE(e,t,a,n,i)}function BR(e,t,a,n){var i=n.children,r=e!==null?e.memoizedState:null;if(e===null&&t.stateNode===null&&(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),n.mode==="hidden"){if((t.flags&128)!==0){if(r=r!==null?r.baseLanes|a:a,e!==null){for(n=t.child=e.child,i=0;n!==null;)i=i|n.lanes|n.childLanes,n=n.sibling;n=i&~r}else n=0,t.child=null;return lN(e,t,r,a,n)}if((a&536870912)!==0)t.memoizedState={baseLanes:0,cachePool:null},e!==null&&Eb(t,r!==null?r.cachePool:null),r!==null?Z7(t,r):VE(),WL(t);else return n=t.lanes=536870912,lN(e,t,r!==null?r.baseLanes|a:a,a,n)}else r!==null?(Eb(t,r.cachePool),Z7(t,r),so(),t.memoizedState=null):(e!==null&&Eb(t,null),VE(),so());return Ut(e,t,i,a),t.child}function mh(e,t){return e!==null&&e.tag===22||t.stateNode!==null||(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),t.sibling}function lN(e,t,a,n,i){var r=Z2();return r=r===null?null:{parent:Dt._currentValue,pool:r},t.memoizedState={baseLanes:a,cachePool:r},e!==null&&Eb(t,null),VE(),WL(t),e!==null&&Is(e,t,n,!0),t.childLanes=i,null}function Tb(e,t){return t=Sv({mode:t.mode,children:t.children},e.mode),t.ref=e.ref,e.child=t,t.return=e,t}function oN(e,t,a){return Rs(t,e.child,null,a),e=Tb(t,t.pendingProps),e.flags|=2,bn(t),t.memoizedState=null,e}function DV(e,t,a){var n=t.pendingProps,i=(t.flags&128)!==0;if(t.flags&=-129,e===null){if(ue){if(n.mode==="hidden")return e=Tb(t,n),t.lanes=536870912,e.memoizedState={baseLanes:0,cachePool:null},mh(null,e);if(XE(t),(e=Ve)?(e=B9(e,Jn),e=e!==null&&e.data==="&"?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:po!==null?{id:ur,overflow:mr}:null,retryLane:536870912,hydrationErrors:null},a=FL(e),a.return=t,t.child=a,Jt=t,Ve=null)):e=null,e===null)throw fo(t);return t.lanes=536870912,null}return Tb(t,n)}var r=e.memoizedState;if(r!==null){var l=r.dehydrated;if(XE(t),i)if(t.flags&256)t.flags&=-257,t=oN(e,t,a);else if(t.memoizedState!==null)t.child=e.child,t.flags|=128,t=null;else throw Error(H(558));else if(It||Is(e,t,a,!1),i=(a&e.childLanes)!==0,It||i){if(go.current===null){if(n=He,n!==null&&(l=hL(n,a),l!==0&&l!==r.retryLane))throw r.retryLane=l,Hs(e,l),tn(n,e,l),uS;rv()}t=oN(e,t,a)}else e=r.treeContext,Ve=ei(l.nextSibling),Jt=t,ue=!0,io=null,Jn=!1,e!==null&&GL(t,e),t=Tb(t,n),t.flags|=134221824;return t}return e=$r(e.child,{mode:n.mode,children:n.children}),e.ref=t.ref,t.child=e,e.return=t,e}function id(e,t){var a=t.ref;if(a===null)e!==null&&e.ref!==null&&(t.flags|=4194816);else{if(typeof a!="function"&&typeof a!="object")throw Error(H(284));(e===null||e.ref!==a)&&(t.flags|=4194816)}}function JE(e,t,a,n,i){return Ns(t),a=eS(e,t,a,n,void 0,i),n=tS(),e!==null&&!It?(aS(e,t,i),Qr(e,t,i)):(ue&&n&&bv(t),t.flags|=1,Ut(e,t,a,i),t.child)}function sN(e,t,a,n,i,r){return Ns(t),t.updateQueue=null,a=eR(t,n,a,i),JL(e),n=tS(),e!==null&&!It?(aS(e,t,r),Qr(e,t,r)):(ue&&n&&bv(t),t.flags|=1,Ut(e,t,a,r),t.child)}function cN(e,t,a,n,i){if(Ns(t),t.stateNode===null){var r=fd,l=a.contextType;typeof l=="object"&&l!==null&&(r=ia(l)),r=new a(n,r),t.memoizedState=r.state!==null&&r.state!==void 0?r.state:null,r.updater=QE,t.stateNode=r,r._reactInternals=t,r=t.stateNode,r.props=n,r.state=t.memoizedState,r.refs={},q2(t),l=a.contextType,r.context=typeof l=="object"&&l!==null?ia(l):fd,r.state=t.memoizedState,l=a.getDerivedStateFromProps,typeof l=="function"&&(oE(t,a,l,n),r.state=t.memoizedState),typeof a.getDerivedStateFromProps=="function"||typeof r.getSnapshotBeforeUpdate=="function"||typeof r.UNSAFE_componentWillMount!="function"&&typeof r.componentWillMount!="function"||(l=r.state,typeof r.componentWillMount=="function"&&r.componentWillMount(),typeof r.UNSAFE_componentWillMount=="function"&&r.UNSAFE_componentWillMount(),l!==r.state&&QE.enqueueReplaceState(r,r.state,null),dh(t,n,r,i),ch(),r.state=t.memoizedState),typeof r.componentDidMount=="function"&&(t.flags|=4194308),n=!0}else if(e===null){r=t.stateNode;var o=t.memoizedProps,d=zs(a,o);r.props=d;var h=r.context,s=a.contextType;l=fd,typeof s=="object"&&s!==null&&(l=ia(s));var c=a.getDerivedStateFromProps;s=typeof c=="function"||typeof r.getSnapshotBeforeUpdate=="function",o=t.pendingProps!==o,s||typeof r.UNSAFE_componentWillReceiveProps!="function"&&typeof r.componentWillReceiveProps!="function"||(o||h!==l)&&aN(t,r,n,l),Kl=!1;var u=t.memoizedState;r.state=u,dh(t,n,r,i),ch(),h=t.memoizedState,o||u!==h||Kl?(typeof c=="function"&&(oE(t,a,c,n),h=t.memoizedState),(d=Kl||tN(t,a,d,n,u,h,l))?(s||typeof r.UNSAFE_componentWillMount!="function"&&typeof r.componentWillMount!="function"||(typeof r.componentWillMount=="function"&&r.componentWillMount(),typeof r.UNSAFE_componentWillMount=="function"&&r.UNSAFE_componentWillMount()),typeof r.componentDidMount=="function"&&(t.flags|=4194308)):(typeof r.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=n,t.memoizedState=h),r.props=n,r.state=h,r.context=l,n=d):(typeof r.componentDidMount=="function"&&(t.flags|=4194308),n=!1)}else{r=t.stateNode,GE(e,t),l=t.memoizedProps,s=zs(a,l),r.props=s,c=t.pendingProps,u=r.context,h=a.contextType,d=fd,typeof h=="object"&&h!==null&&(d=ia(h)),o=a.getDerivedStateFromProps,(h=typeof o=="function"||typeof r.getSnapshotBeforeUpdate=="function")||typeof r.UNSAFE_componentWillReceiveProps!="function"&&typeof r.componentWillReceiveProps!="function"||(l!==c||u!==d)&&aN(t,r,n,d),Kl=!1,u=t.memoizedState,r.state=u,dh(t,n,r,i),ch();var m=t.memoizedState;l!==c||u!==m||Kl||e!==null&&e.dependencies!==null&&Gb(e.dependencies)?(typeof o=="function"&&(oE(t,a,o,n),m=t.memoizedState),(s=Kl||tN(t,a,s,n,u,m,d)||e!==null&&e.dependencies!==null&&Gb(e.dependencies))?(h||typeof r.UNSAFE_componentWillUpdate!="function"&&typeof r.componentWillUpdate!="function"||(typeof r.componentWillUpdate=="function"&&r.componentWillUpdate(n,m,d),typeof r.UNSAFE_componentWillUpdate=="function"&&r.UNSAFE_componentWillUpdate(n,m,d)),typeof r.componentDidUpdate=="function"&&(t.flags|=4),typeof r.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof r.componentDidUpdate!="function"||l===e.memoizedProps&&u===e.memoizedState||(t.flags|=4),typeof r.getSnapshotBeforeUpdate!="function"||l===e.memoizedProps&&u===e.memoizedState||(t.flags|=1024),t.memoizedProps=n,t.memoizedState=m),r.props=n,r.state=m,r.context=d,n=s):(typeof r.componentDidUpdate!="function"||l===e.memoizedProps&&u===e.memoizedState||(t.flags|=4),typeof r.getSnapshotBeforeUpdate!="function"||l===e.memoizedProps&&u===e.memoizedState||(t.flags|=1024),n=!1)}return r=n,id(e,t),n=(t.flags&128)!==0,r||n?(r=t.stateNode,a=n&&typeof a.getDerivedStateFromError!="function"?null:r.render(),t.flags|=1,e!==null&&n?(t.child=Rs(t,e.child,null,i),t.child=Rs(t,null,a,i)):Ut(e,t,a,i),t.memoizedState=r.state,e=t.child):e=Qr(e,t,i),e}function dN(e,t,a,n){return Ds(),t.flags|=256,Ut(e,t,a,n),t.child}var e2={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function t2(e){return{baseLanes:e,cachePool:VL()}}function a2(e,t,a){return e=e!==null?e.childLanes&~a:0,t&&(e|=yn),e}function UR(e,t,a){var n=t.pendingProps,i=!1,r=(t.flags&128)!==0,l;if((l=r)||(l=e!==null&&e.memoizedState===null?!1:(la.current&2)!==0),l&&(i=!0,t.flags&=-129),l=(t.flags&32)!==0,t.flags&=-33,e===null){if(ue){if(i?oo(t):so(),(e=Ve)?(e=B9(e,Jn),e=e!==null&&e.data!=="&"?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:po!==null?{id:ur,overflow:mr}:null,retryLane:536870912,hydrationErrors:null},a=FL(e),a.return=t,t.child=a,Jt=t,Ve=null)):e=null,e===null)throw fo(t);return TS(e)?t.lanes=32:t.lanes=536870912,null}return r=n.children,n=n.fallback,i?(so(),i=t.mode,r=Sv({mode:"hidden",children:r},i),n=_s(n,i,a,null),r.return=t,n.return=t,r.sibling=n,t.child=r,n=t.child,n.memoizedState=t2(a),n.childLanes=a2(e,l,a),t.memoizedState=e2,mh(null,n)):(oo(t),mS(t,r))}var o=e.memoizedState;if(o!==null){var d=o.dehydrated;if(d!==null)return IV(e,t,r,l,n,d,o,a)}return i?(so(),i=n.fallback,r=t.mode,o=e.child,d=o.sibling,n=$r(o,{mode:"hidden",children:n.children}),n.subtreeFlags=o.subtreeFlags&1206910976,d!==null?i=$r(d,i):(i=_s(i,r,a,null),i.flags|=2),i.return=t,n.return=t,n.sibling=i,t.child=n,mh(null,n),n=t.child,i=e.child.memoizedState,i===null?i=t2(a):(r=i.cachePool,r!==null?(o=Dt._currentValue,r=r.parent!==o?{parent:o,pool:o}:r):r=VL(),i={baseLanes:i.baseLanes|a,cachePool:r}),n.memoizedState=i,n.childLanes=a2(e,l,a),t.memoizedState=e2,mh(e.child,n)):(oo(t),a=e.child,e=a.sibling,a=$r(a,{mode:"visible",children:n.children}),a.return=t,a.sibling=null,e!==null&&(l=t.deletions,l===null?(t.deletions=[e],t.flags|=16):l.push(e)),t.child=a,t.memoizedState=null,a)}function mS(e,t){return t=Sv({mode:"visible",children:t},e.mode),t.return=e,e.child=t}function Sv(e,t){return e=en(22,e,null,t),e.lanes=0,e}function lb(e,t,a){return Rs(t,e.child,null,a),e=mS(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function IV(e,t,a,n,i,r,l,o){if(a)return t.flags&256?(oo(t),t.flags&=-257,lb(e,t,o)):t.memoizedState!==null?(so(),t.child=e.child,t.flags|=128,null):(so(),r=i.fallback,l=t.mode,i=Sv({mode:"visible",children:i.children},l),r=_s(r,l,o,null),r.flags|=2,i.return=t,r.return=t,i.sibling=r,t.child=i,Rs(t,e.child,null,o),i=t.child,i.memoizedState=t2(o),i.childLanes=a2(e,n,o),t.memoizedState=e2,mh(null,i));if(oo(t),TS(r)){if(n=r.nextSibling&&r.nextSibling.dataset,n)var d=n.dgst;return n=d,n!==""&&(i=Error(H(419)),i.stack="",i.digest=n,Eh({value:i,source:null,stack:null})),lb(e,t,o)}if(It||Is(e,t,o,!1),n=(o&e.childLanes)!==0,It||n){if(go.current!==null)return lb(e,t,o);if(n=He,n!==null&&(i=hL(n,o),i!==0&&i!==l.retryLane))throw l.retryLane=i,Hs(e,i),tn(n,e,i),uS;return k2(r)||rv(),lb(e,t,o)}return k2(r)?(t.flags|=192,t.child=e.child,null):(e=l.treeContext,Ve=ei(r.nextSibling),Jt=t,ue=!0,io=null,Jn=!1,e!==null&&GL(t,e),t=mS(t,i.children),t.flags|=134221824,t)}function uN(e,t,a){e.lanes|=t;var n=e.alternate;n!==null&&(n.lanes|=t),wb(e.return,t,a)}function mN(e){for(var t=null;e!==null;){var a=e.alternate;a!==null&&Xb(a)===null&&(t=e),e=e.sibling}return t}function ob(e,t,a,n,i,r){var l=e.memoizedState;l===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:n,tail:a,tailMode:i,treeForkCount:r}:(l.isBackwards=t,l.rendering=null,l.renderingStartTime=0,l.last=n,l.tail=a,l.tailMode=i,l.treeForkCount=r)}function sE(e){var t=e.child;for(e.child=null;t!==null;){var a=t.sibling;t.sibling=e.child,e.child=t,t=a}}function n2(e,t,a){var n=t.pendingProps,i=n.revealOrder,r=n.tail;n=n.children;var l=la.current;if(t.flags&128)return Ch(t,l),null;var o=(l&2)!==0;if(o?(l=l&1|2,t.flags|=128):l&=1,Ch(t,l),i==="backwards"&&e!==null?(sE(e),Ut(e,t,n,a),sE(e)):Ut(e,t,n,a),n=ue?wh:0,!o&&e!==null&&(e.flags&128)!==0)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&uN(e,a,t);else if(e.tag===19)uN(e,a,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}switch(i){case"backwards":a=mN(t.child),a===null?(i=t.child,t.child=null):(i=a.sibling,a.sibling=null,sE(t)),ob(t,!0,i,null,r,n);break;case"unstable_legacy-backwards":for(a=null,i=t.child,t.child=null;i!==null;){if(e=i.alternate,e!==null&&Xb(e)===null){t.child=i;break}e=i.sibling,i.sibling=a,a=i,i=e}ob(t,!0,a,null,r,n);break;case"together":ob(t,!1,null,null,void 0,n);break;case"independent":t.memoizedState=null;break;default:a=mN(t.child),a===null?(i=t.child,t.child=null):(i=a.sibling,a.sibling=null),ob(t,!1,i,a,r,n)}return t.child}function hN(e,t,a){var n=t.pendingProps;return Jl(t,t.type,n.value),Ut(e,t,n.children,a),t.child}function Qr(e,t,a){if(e!==null&&(t.dependencies=e.dependencies),vo|=t.lanes,(a&t.childLanes)===0)if(e!==null){if(Is(e,t,a,!1),(a&t.childLanes)===0)return null}else return null;if(e!==null&&t.child!==e.child)throw Error(H(153));if(t.child!==null){for(e=t.child,a=$r(e,e.pendingProps),t.child=a,a.return=t;e.sibling!==null;)e=e.sibling,a=a.sibling=$r(e,e.pendingProps),a.return=t;a.sibling=null}return t.child}function hS(e,t){return(e.lanes&t)!==0?!0:(e=e.dependencies,!!(e!==null&&Gb(e)))}function NV(e,t,a){switch(t.tag){case 3:zb(t,t.stateNode.containerInfo),Jl(t,Dt,e.memoizedState.cache),Ds();break;case 27:case 5:DE(t);break;case 4:zb(t,t.stateNode.containerInfo);break;case 10:Jl(t,t.type,t.memoizedProps.value);break;case 31:if(t.memoizedState!==null)return t.flags|=128,XE(t),null;break;case 13:var n=t.memoizedState;if(n!==null){if(n.dehydrated!==null)return oo(t),t.flags|=128,null;n=Is(e,t,a,!1);var i=t.child.childLanes;return n||(a&i)!==0?UR(e,t,a):(oo(t),e=Qr(e,t,a),e!==null?e.sibling:null)}oo(t);break;case 19:if(t.flags&128)return n2(e,t,a);if(i=(e.flags&128)!==0,n=(a&t.childLanes)!==0,n||(Is(e,t,a,!1),n=(a&t.childLanes)!==0),i){if(n)return n2(e,t,a);t.flags|=128}if(i=t.memoizedState,i!==null&&(i.rendering=null,i.tail=null,i.lastEffect=null),Ch(t,la.current),n)break;return null;case 22:return t.lanes=0,BR(e,t,a,t.pendingProps);case 24:Jl(t,Dt,e.memoizedState.cache)}return Qr(e,t,a)}function PR(e,t,a){if(e!==null)if(e.memoizedProps!==t.pendingProps)It=!0;else{if(!hS(e,a)&&(t.flags&128)===0)return It=!1,NV(e,t,a);It=(e.flags&131072)!==0}else It=!1,ue&&(t.flags&1048576)!==0&&YL(t,wh,t.index);switch(t.lanes=0,t.tag){case 16:e:{var n=t.pendingProps;if(e=ws(t.elementType),t.type=e,typeof e=="function")$2(e)?(n=zs(e,n),t.tag=1,t=cN(null,t,e,n,a)):(t.tag=0,t=JE(null,t,e,n,a));else{if(e!=null){var i=e.$$typeof;if(i===N2){t.tag=11,t=iN(null,t,e,n,a);break e}else if(i===L2){t.tag=14,t=rN(null,t,e,n,a);break e}else if(i===cr){t.tag=10,t.type=e,t=hN(null,t,a);break e}}throw t=ME(e)||e,Error(H(306,t,""))}}return t;case 0:return JE(e,t,t.type,t.pendingProps,a);case 1:return n=t.type,i=zs(n,t.pendingProps),cN(e,t,n,i,a);case 3:e:{if(zb(t,t.stateNode.containerInfo),e===null)throw Error(H(387));n=t.pendingProps;var r=t.memoizedState;i=r.element,GE(e,t),dh(t,n,null,a);var l=t.memoizedState;if(n=l.cache,Jl(t,Dt,n),n!==r.cache&&FE(t,[Dt],a,!0),ch(),n=l.element,r.isDehydrated)if(r={element:n,isDehydrated:!1,cache:l.cache},t.updateQueue.baseState=r,t.memoizedState=r,t.flags&256){t=dN(e,t,n,a);break e}else if(n!==i){i=Wn(Error(H(424)),t),Eh(i),t=dN(e,t,n,a);break e}else for(e=t.stateNode.containerInfo,e.nodeType===9?e=e.body:e=e.nodeName==="HTML"?e.ownerDocument.body:e,Ve=ei(e.firstChild),Jt=t,ue=!0,io=null,Jn=!0,a=KL(t,null,n,a),t.child=a;a;)a.flags=a.flags&-3|134221824,a=a.sibling;else{if(Ds(),n===i){t=Qr(e,t,a);break e}Ut(e,t,n,a)}t=t.child}return t;case 26:return id(e,t),e===null?(a=jN(t.type,null,t.pendingProps,null))?t.memoizedState=a:ue||(t.stateNode=M9(t.type,t.pendingProps,no.current,t)):t.memoizedState=jN(t.type,e.memoizedProps,t.pendingProps,e.memoizedState),null;case 27:return DE(t),e===null&&ue&&(n=t.stateNode=U9(t.type,t.pendingProps,no.current),Jt=t,Jn=!0,i=Ve,xo(t.type)?(M2=i,Ve=ei(n.firstChild)):Ve=i),Ut(e,t,t.pendingProps.children,a),id(e,t),e===null&&(t.flags|=4194304),t.child;case 5:return e===null&&ue&&((i=n=Ve)&&(n=CX(n,t.type,t.pendingProps,Jn),n!==null?(t.stateNode=n,Jt=t,Ve=ei(n.firstChild),Jn=!1,i=!0):i=!1),i||fo(t)),DE(t),i=t.type,r=t.pendingProps,l=e!==null?e.memoizedProps:null,n=r.children,C2(i,r)?n=null:l!==null&&C2(i,l)&&(t.flags|=32),t.memoizedState!==null&&(i=eS(e,t,wV,null,null,a),Pd._currentValue=i),id(e,t),Ut(e,t,n,a),t.child;case 6:return e===null&&ue&&((e=a=Ve)&&(a=TX(a,t.pendingProps,Jn),a!==null?(t.stateNode=a,Jt=t,Ve=null,e=!0):e=!1),e||fo(t)),null;case 13:return UR(e,t,a);case 4:return zb(t,t.stateNode.containerInfo),n=t.pendingProps,e===null?t.child=Rs(t,null,n,a):Ut(e,t,n,a),t.child;case 11:return iN(e,t,t.type,t.pendingProps,a);case 7:return n=t.pendingProps,id(e,t),Ut(e,t,n,a),t.child;case 8:return Ut(e,t,t.pendingProps.children,a),t.child;case 12:return Ut(e,t,t.pendingProps.children,a),t.child;case 10:return hN(e,t,a);case 9:return i=t.type._context,n=t.pendingProps.children,Ns(t),i=ia(i),n=n(i),t.flags|=1,Ut(e,t,n,a),t.child;case 14:return rN(e,t,t.type,t.pendingProps,a);case 15:return zR(e,t,t.type,t.pendingProps,a);case 19:return n2(e,t,a);case 31:return DV(e,t,a);case 22:return BR(e,t,a,t.pendingProps);case 24:return Ns(t),n=ia(Dt),e===null?(i=Z2(),i===null&&(i=He,r=X2(),i.pooledCache=r,r.refCount++,r!==null&&(i.pooledCacheLanes|=a),i=r),t.memoizedState={parent:n,cache:i},q2(t),Jl(t,Dt,i)):((e.lanes&a)!==0&&(GE(e,t),dh(t,null,null,a),ch()),i=e.memoizedState,r=t.memoizedState,i.parent!==n?(i={parent:n,cache:n},t.memoizedState=i,t.lanes===0&&(t.memoizedState=t.updateQueue.baseState=i),Jl(t,Dt,n)):(n=r.cache,Jl(t,Dt,n),n!==i.cache&&FE(t,[Dt],a,!0))),Ut(e,t,t.pendingProps.children,a),t.child;case 30:return t.stateNode===null&&(t.stateNode={autoName:null,paired:null,clones:null,ref:null}),n=t.pendingProps,n.name!=null&&n.name!=="auto"?t.flags|=e===null?18882560:18874368:ue&&bv(t),e!==null&&e.memoizedProps.name!==n.name?t.flags|=4194816:id(e,t),Ut(e,t,n.children,a),t.child;case 29:throw t.pendingProps}throw Error(H(156,t.tag))}function Fr(e){e.flags|=4}function cE(e,t,a,n,i){var r;if((r=(e.mode&32)!==0)&&(r=a===null?YN(t,n):YN(t,n)&&(n.src!==a.src||n.srcSet!==a.srcSet)),r){if(e.flags|=16777216,(i&335544128)===i)if(e.stateNode.complete)e.flags|=8192;else if(p9())e.flags|=8192;else throw Ms=$b,K2}else e.flags&=-16777217}function pN(e,t){if(t.type!=="stylesheet"||(t.state.loading&4)!==0)e.flags&=-16777217;else if(e.flags|=16777216,!F9(t))if(p9())e.flags|=8192;else throw Ms=$b,K2}function sb(e,t){t!==null&&(e.flags|=4),e.flags&16384&&(t=e.tag!==22?dL():536870912,e.lanes|=t,Ld|=t)}function Km(e,t){if(!ue)switch(e.tailMode){case"visible":break;case"collapsed":for(var a=e.tail,n=null;a!==null;)a.alternate!==null&&(n=a),a=a.sibling;n===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:n.sibling=null;break;default:for(t=e.tail,a=null;t!==null;)t.alternate!==null&&(a=t),t=t.sibling;a===null?e.tail=null:a.sibling=null}}function $e(e){var t=e.alternate!==null&&e.alternate.child===e.child,a=0,n=0;if(t)for(var i=e.child;i!==null;)a|=i.lanes|i.childLanes,n|=i.subtreeFlags&1206910976,n|=i.flags&1206910976,i.return=e,i=i.sibling;else for(i=e.child;i!==null;)a|=i.lanes|i.childLanes,n|=i.subtreeFlags,n|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=n,e.childLanes=a,t}function LV(e,t,a){var n=t.pendingProps;switch(V2(t),t.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return $e(t),null;case 1:return $e(t),null;case 3:return a=t.stateNode,n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),Vr(Dt),Ad(),a.pendingContext&&(a.context=a.pendingContext,a.pendingContext=null),(e===null||e.child===null)&&(ad(t)?Fr(t):e===null||e.memoizedState.isDehydrated&&(t.flags&256)===0||(t.flags|=1024,iE())),$e(t),null;case 26:var i=t.type,r=t.memoizedState;return e===null?(Fr(t),r!==null?($e(t),pN(t,r)):($e(t),cE(t,i,null,n,a))):r?r!==e.memoizedState?(Fr(t),$e(t),pN(t,r)):($e(t),t.flags&=-16777217):(e=e.memoizedProps,e!==n&&Fr(t),$e(t),cE(t,i,e,n,a)),null;case 27:if(Bb(t),a=no.current,i=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==n&&Fr(t);else{if(!n){if(t.stateNode===null)throw Error(H(166));return $e(t),t.subtreeFlags&=-33554433,null}e=hr.current,ad(t)?H7(t,e):(e=U9(i,n,a),t.stateNode=e,Fr(t))}return $e(t),t.subtreeFlags&=-33554433,null;case 5:if(Bb(t),i=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==n&&Fr(t);else{if(!n){if(t.stateNode===null)throw Error(H(166));return $e(t),t.subtreeFlags&=-33554433,null}if(r=hr.current,ad(t))H7(t,r);else{var l=Mh(no.current);switch(r){case 1:r=l.createElementNS("http://www.w3.org/2000/svg",i);break;case 2:r=l.createElementNS("http://www.w3.org/1998/Math/MathML",i);break;default:switch(i){case"svg":r=l.createElementNS("http://www.w3.org/2000/svg",i);break;case"math":r=l.createElementNS("http://www.w3.org/1998/Math/MathML",i);break;case"script":r=l.createElement("div"),r.innerHTML="<script><\/script>",r=r.removeChild(r.firstChild);break;case"select":r=typeof n.is=="string"?l.createElement("select",{is:n.is}):l.createElement("select"),n.multiple?r.multiple=!0:n.size&&(r.size=n.size);break;default:r=typeof n.is=="string"?l.createElement(i,{is:n.is}):l.createElement(i)}}r[na]=t,r[nn]=n;e:for(l=t.child;l!==null;){if(l.tag===5||l.tag===6)r.appendChild(l.stateNode);else if(l.tag!==4&&l.tag!==27&&l.child!==null){l.child.return=l,l=l.child;continue}if(l===t)break e;for(;l.sibling===null;){if(l.return===null||l.return===t)break e;l=l.return}l.sibling.return=l.return,l=l.sibling}t.stateNode=r;e:switch(oa(r,i,n),i){case"button":case"input":case"select":case"textarea":n=!!n.autoFocus;break e;case"img":n=!0;break e;default:n=!1}n&&Fr(t)}}return $e(t),t.subtreeFlags&=-33554433,cE(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,a),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==n&&Fr(t);else{if(typeof n!="string"&&t.stateNode===null)throw Error(H(166));if(e=no.current,ad(t)){if(e=t.stateNode,a=t.memoizedProps,n=null,i=Jt,i!==null)switch(i.tag){case 27:case 5:n=i.memoizedProps}e[na]=t,e=!!(e.nodeValue===a||n!==null&&n.suppressHydrationWarning===!0||_9(e.nodeValue,a)),e||fo(t,!0)}else e=Mh(e).createTextNode(n),e[na]=t,t.stateNode=e}return $e(t),null;case 31:if(a=t.memoizedState,e===null||e.memoizedState!==null){if(n=ad(t),a!==null){if(e===null){if(!n)throw Error(H(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(H(557));e[na]=t}else Ds(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;$e(t),e=!1}else a=iE(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),e=!0;if(!e)return t.flags&256?(bn(t),t):(bn(t),null);if((t.flags&128)!==0)throw Error(H(558))}return $e(t),null;case 13:if(n=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(i=ad(t),n!==null&&n.dehydrated!==null){if(e===null){if(!i)throw Error(H(318));if(i=t.memoizedState,i=i!==null?i.dehydrated:null,!i)throw Error(H(317));i[na]=t}else Ds(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;$e(t),i=!1}else i=iE(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=i),i=!0;if(!i)return t.flags&256?(bn(t),t):(bn(t),null)}return bn(t),(t.flags&128)!==0?(t.lanes=a,t):(a=n!==null,e=e!==null&&e.memoizedState!==null,a&&(n=t.child,i=null,n.alternate!==null&&n.alternate.memoizedState!==null&&n.alternate.memoizedState.cachePool!==null&&(i=n.alternate.memoizedState.cachePool.pool),r=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(r=n.memoizedState.cachePool.pool),r!==i&&(n.flags|=2048)),a!==e&&a&&(t.child.flags|=8192),sb(t,t.updateQueue),$e(t),null);case 4:return Ad(),e===null&&ES(t.stateNode.containerInfo),t.flags|=67108864,$e(t),null;case 10:return Vr(t.type),$e(t),null;case 19:if(W2(t),n=t.memoizedState,n===null)return $e(t),null;if(i=(t.flags&128)!==0,r=n.rendering,r===null)if(i)Km(n,!1);else{if(ft!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(r=Xb(e),r!==null){for(t.flags|=128,Km(n,!1),e=r.updateQueue,t.updateQueue=e,sb(t,e),t.subtreeFlags=0,e=a,a=t.child;a!==null;)HL(a,e),a=a.sibling;return Ch(t,la.current&1|2),ue&&Yr(t,n.treeForkCount),t.child}e=e.sibling}n.tail!==null&&xn()>nv&&(t.flags|=128,i=!0,Km(n,!1),t.lanes=4194304)}else{if(!i)if(e=Xb(r),e!==null){if(t.flags|=128,i=!0,e=e.updateQueue,t.updateQueue=e,sb(t,e),Km(n,!0),n.tail===null&&n.tailMode!=="collapsed"&&n.tailMode!=="visible"&&!r.alternate&&!ue)return $e(t),null}else 2*xn()-n.renderingStartTime>nv&&a!==536870912&&(t.flags|=128,i=!0,Km(n,!1),t.lanes=4194304);n.isBackwards?(r.sibling=t.child,t.child=r):(e=n.last,e!==null?e.sibling=r:t.child=r,n.last=r)}if(n.tail!==null){e=n.tail;e:{for(a=e;a!==null;){if(a.alternate!==null){a=!1;break e}a=a.sibling}a=!0}return n.rendering=e,n.tail=e.sibling,n.renderingStartTime=xn(),e.sibling=null,r=la.current,r=i?r&1|2:r&1,n.tailMode==="visible"||n.tailMode==="collapsed"||!a||ue?Ch(t,r):(a=r,Xe(sa,t),Xe(la,a),Ta===null&&(Ta=t)),ue&&Yr(t,n.treeForkCount),e}return $e(t),null;case 22:case 23:return bn(t),Q2(),n=t.memoizedState!==null,e!==null?e.memoizedState!==null!==n&&(t.flags|=8192):n&&(t.flags|=8192),n?(a&536870912)!==0&&(t.flags&128)===0&&($e(t),t.subtreeFlags&6&&(t.flags|=8192)):$e(t),a=t.updateQueue,a!==null&&sb(t,a.retryQueue),a=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(a=e.memoizedState.cachePool.pool),n=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(n=t.memoizedState.cachePool.pool),n!==a&&(t.flags|=2048),e!==null&&ra(ks),null;case 24:return a=null,e!==null&&(a=e.memoizedState.cache),t.memoizedState.cache!==a&&(t.flags|=2048),Vr(Dt),$e(t),null;case 25:return null;case 30:return t.flags|=33554432,$e(t),null}throw Error(H(156,t.tag))}function RV(e,t){switch(V2(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Vr(Dt),Ad(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return Bb(t),null;case 31:if(t.memoizedState!==null){if(bn(t),t.alternate===null)throw Error(H(340));Ds()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(bn(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(H(340));Ds()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return W2(t),e=t.flags,e&65536?(t.flags=e&-65537|128,e=t.memoizedState,e!==null&&(e.rendering=null,e.tail=null),t.flags|=4,t):null;case 4:return Ad(),null;case 10:return Vr(t.type),null;case 22:case 23:return bn(t),Q2(),e!==null&&ra(ks),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return Vr(Dt),null;case 25:return null;default:return null}}function jR(e,t){switch(V2(t),t.tag){case 3:Vr(Dt),Ad();break;case 26:case 27:case 5:Bb(t);break;case 4:Ad();break;case 31:t.memoizedState!==null&&bn(t);break;case 13:bn(t);break;case 19:W2(t);break;case 10:Vr(t.type);break;case 22:case 23:bn(t),Q2(),e!==null&&ra(ks);break;case 24:Vr(Dt)}}function Hh(e,t){try{var a=t.updateQueue,n=a!==null?a.lastEffect:null;if(n!==null){var i=n.next;a=i;do{if((a.tag&e)===e){n=void 0;var r=a.create,l=a.inst;n=r(),l.destroy=n}a=a.next}while(a!==i)}}catch(o){Re(t,t.return,o)}}function bo(e,t,a){try{var n=t.updateQueue,i=n!==null?n.lastEffect:null;if(i!==null){var r=i.next;n=r;do{if((n.tag&e)===e){var l=n.inst,o=l.destroy;if(o!==void 0){l.destroy=void 0,i=t;var d=a,h=o;try{h()}catch(s){Re(i,d,s)}}}n=n.next}while(n!==r)}}catch(s){Re(t,t.return,s)}}function HR(e){var t=e.updateQueue;if(t!==null){var a=e.stateNode;try{QL(t,a)}catch(n){Re(e,e.return,n)}}}function FR(e,t,a){a.props=zs(e.type,e.memoizedProps),a.state=e.memoizedState;try{a.componentWillUnmount()}catch(n){Re(e,t,n)}}function or(e,t){try{var a=e.ref;if(a!==null){switch(e.tag){case 26:case 27:case 5:var n=e.stateNode;break;case 30:var i=e.stateNode,r=Zr(e.memoizedProps,i);(i.ref===null||i.ref.name!==r)&&(i.ref=N9(r)),n=i.ref;break;case 7:if(e.stateNode===null){var l=new Tn(e);an(e.child,!1,EX,l,void 0,void 0),e.stateNode=l}n=e.stateNode;break;default:n=e.stateNode}typeof a=="function"?e.refCleanup=a(n):a.current=n}}catch(o){Re(e,t,o)}}function aa(e,t){var a=e.ref,n=e.refCleanup;if(a!==null)if(typeof n=="function")try{n()}catch(i){Re(e,t,i)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof a=="function")try{a(null)}catch(i){Re(e,t,i)}else a.current=null}function Wb(e,t){if((e.tag===5||e.tag===27||e.tag===6)&&e.alternate===null&&t!==null)for(var a=0;a<t.length;a++)z9(e.stateNode,t[a])}function fN(e){for(var t=e.return;t!==null&&(fS(t)&&z9(e.stateNode,t.stateNode),!pS(t));)t=t.return}function hh(e){for(var t=e.return;t!==null&&(fS(t)&&SX(e.stateNode,t.stateNode),!pS(t));)t=t.return}function pS(e){return e.tag===5||e.tag===3||e.tag===27}function fS(e){return e&&e.tag===7&&e.stateNode!==null}function i2(e){var t=e.type,a=e.memoizedProps,n=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":a.autoFocus&&n.focus();break e;case"img":a.src?n.src=a.src:a.srcSet&&(n.srcset=a.srcSet)}}catch(i){Re(e,e.return,i)}}function dE(e,t,a){try{var n=e.stateNode;iX(n,e.type,a,t),n[nn]=t}catch(i){Re(e,e.return,i)}}function YR(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&xo(e.type)||e.tag===4}function uE(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||YR(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&xo(e.type)||e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function r2(e,t,a,n){var i=e.tag;if(i===5||i===6)i=e.stateNode,t?(a.nodeType===9?a.body:a.nodeName==="HTML"?a.ownerDocument.body:a).insertBefore(i,t):(t=a.nodeType===9?a.body:a.nodeName==="HTML"?a.ownerDocument.body:a,t.appendChild(i),a=a._reactRootContainer,a!=null||t.onclick!==null||(t.onclick=dr)),Wb(e,n),Se=!0;else if(i!==4&&(i===27&&(Wb(e,n),n=null,xo(e.type)&&(a=e.stateNode,t=null)),e=e.child,e!==null))for(r2(e,t,a,n),e=e.sibling;e!==null;)r2(e,t,a,n),e=e.sibling}function Jb(e,t,a,n){var i=e.tag;if(i===5||i===6)i=e.stateNode,t?a.insertBefore(i,t):a.appendChild(i),Wb(e,n),Se=!0;else if(i!==4&&(i===27&&(Wb(e,n),n=null,xo(e.type)&&(a=e.stateNode)),e=e.child,e!==null))for(Jb(e,t,a,n),e=e.sibling;e!==null;)Jb(e,t,a,n),e=e.sibling}function GR(e){var t=e.stateNode,a=e.memoizedProps;try{for(var n=e.type,i=t.attributes;i.length;)t.removeAttributeNode(i[0]);oa(t,n,a),t[na]=e,t[nn]=a}catch(r){Re(e,e.return,r)}}var ev=!1,vn=null;function gN(e){(e.tag===30||(e.subtreeFlags&33554432)!==0)&&(ev=!0)}var sr=null;function bN(){var e=sr;return sr=null,e}var Ja=0;function $d(e,t,a,n,i){return Ja=0,$R(e.child,t,a,n,i)}function $R(e,t,a,n,i){for(var r=!1;e!==null;){if(e.tag===5){var l=e.stateNode;if(n!==null){var o=T2(l);n.push(o),o.view&&(r=!0)}else r||T2(l).view&&(r=!0);ev=!0,A9(l,Ja===0?t:t+"_"+Ja,a),Ja++}else(e.tag!==22||e.memoizedState===null)&&(e.tag===30&&i||$R(e.child,t,a,n,i)&&(r=!0));e=e.sibling}return r}function fr(e,t){for(;e!==null;)e.tag===5?D9(e.stateNode,e.memoizedProps):(e.tag!==22||e.memoizedState===null)&&(e.tag===30&&t||fr(e.child,t)),e=e.sibling}function _b(e){if((e.subtreeFlags&18874368)!==0)for(e=e.child;e!==null;){if((e.tag!==22||e.memoizedState===null)&&(_b(e),e.tag===30&&(e.flags&18874368)!==0&&e.stateNode.paired)){var t=e.memoizedProps;if(t.name==null||t.name==="auto")throw Error(H(544));var a=t.name;t=el(t.default,t.share),t!=="none"&&($d(e,a,t,null,!1)||fr(e.child,!1))}e=e.sibling}}function l2(e,t){if(e.tag===30){var a=e.stateNode,n=e.memoizedProps,i=Zr(n,a),r=el(n.default,a.paired?n.share:n.enter);r!=="none"?$d(e,i,r,null,!1)?(_b(e),a.paired||t||Rd(e,n.onEnter)):fr(e.child,!1):_b(e)}else if((e.subtreeFlags&33554432)!==0)for(e=e.child;e!==null;)l2(e,t),e=e.sibling;else _b(e)}function o2(e){if(vn!==null&&vn.size!==0){var t=vn;if((e.subtreeFlags&18874368)!==0)for(e=e.child;e!==null;){if(e.tag!==22||e.memoizedState===null){if(e.tag===30&&(e.flags&18874368)!==0){var a=e.memoizedProps,n=a.name;if(n!=null&&n!=="auto"){var i=t.get(n);if(i!==void 0){var r=el(a.default,a.share);if(r!=="none"&&($d(e,n,r,null,!1)?(r=e.stateNode,i.paired=r,r.paired=i,Rd(e,a.onShare)):fr(e.child,!1)),t.delete(n),t.size===0)break}}}o2(e)}e=e.sibling}}}function s2(e){if(e.tag===30){var t=e.memoizedProps,a=Zr(t,e.stateNode),n=vn!==null?vn.get(a):void 0,i=el(t.default,n!==void 0?t.share:t.exit);i!=="none"&&($d(e,a,i,null,!1)?n!==void 0?(i=e.stateNode,n.paired=i,i.paired=n,vn.delete(a),Rd(e,t.onShare)):Rd(e,t.onExit):fr(e.child,!1)),vn!==null&&o2(e)}else if((e.subtreeFlags&33554432)!==0)for(e=e.child;e!==null;)s2(e),e=e.sibling;else vn!==null&&o2(e)}function VR(e){for(e=e.child;e!==null;){if(e.tag===30){var t=e.memoizedProps,a=Zr(t,e.stateNode);t=el(t.default,t.update),e.flags&=-5,t!=="none"&&$d(e,a,t,e.memoizedState=[],!1)}else(e.subtreeFlags&33554432)!==0&&VR(e);e=e.sibling}}function c2(e){if((e.subtreeFlags&18874368)!==0)for(e=e.child;e!==null;){if(e.tag!==22||e.memoizedState===null){if(e.tag===30&&(e.flags&18874368)!==0){var t=e.stateNode;t.paired!==null&&(t.paired=null,fr(e.child,!1))}c2(e)}e=e.sibling}}function kb(e){if(e.tag===30)e.stateNode.paired=null,fr(e.child,!1),c2(e);else if((e.subtreeFlags&33554432)!==0)for(e=e.child;e!==null;)kb(e),e=e.sibling;else c2(e)}function XR(e){for(e=e.child;e!==null;)e.tag===30?fr(e.child,!1):(e.subtreeFlags&33554432)!==0&&XR(e),e=e.sibling}function gS(e,t,a,n,i,r,l){for(var o=!1;t!==null;){if(t.tag===5){var d=t.stateNode;if(r!==null&&Ja<r.length){var h=r[Ja],s=T2(d);(h.view||s.view)&&(o=!0);var c;if(c=(e.flags&4)===0)if(s.clip)c=!0;else{c=h.rect;var u=s.rect;c=c.y!==u.y||c.x!==u.x||c.height!==u.height||c.width!==u.width}c&&(e.flags|=4),s.abs?s=!h.abs:(h=h.rect,s=s.rect,s=h.height!==s.height||h.width!==s.width),s&&(e.flags|=32)}else e.flags|=32;(e.flags&4)!==0&&A9(d,Ja===0?a:a+"_"+Ja,i),o&&(e.flags&4)!==0||(sr===null&&(sr=[]),sr.push(d,Ja===0?n:n+"_"+Ja,t.memoizedProps)),Ja++}else(t.tag!==22||t.memoizedState===null)&&(t.tag===30&&l?e.flags|=t.flags&32:gS(e,t.child,a,n,i,r,l)&&(o=!0));t=t.sibling}return o}function ZR(e,t){for(e=e.child;e!==null;){if(e.tag===30){var a=e.memoizedProps,n=e.stateNode,i=Zr(a,n),r=el(a.default,a.update);if(t){n=n.clones;var l=n===null?null:n.map(dX)}else l=e.memoizedState,e.memoizedState=null;n=e;var o=e.child;Ja=0,i=gS(n,o,i,i,r,l,!1),(e.flags&4)!==0&&i&&(t||Rd(e,a.onUpdate))}else(e.subtreeFlags&33554432)!==0&&ZR(e,t);e=e.sibling}}var qt=!1,Ae=!1,ir=!1,mE=!1,vN=typeof WeakSet=="function"?WeakSet:Set,Qt=null,rr=!1,nh=!1,tv=!1,d2=!1;function OV(e,t,a){if(e=e.containerInfo,E2=jd,e=LL(e),F2(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var i=n.getSelection&&n.getSelection();if(i&&i.rangeCount!==0){n=i.anchorNode;var r=i.anchorOffset,l=i.focusNode;i=i.focusOffset;try{n.nodeType,l.nodeType}catch{n=null;break e}var o=0,d=-1,h=-1,s=0,c=0,u=e,m=null;t:for(;;){for(var p;u!==n||r!==0&&u.nodeType!==3||(d=o+r),u!==l||i!==0&&u.nodeType!==3||(h=o+i),u.nodeType===3&&(o+=u.nodeValue.length),(p=u.firstChild)!==null;)m=u,u=p;for(;;){if(u===e)break t;if(m===n&&++s===r&&(d=o),m===l&&++c===i&&(h=o),(p=u.nextSibling)!==null)break;u=m,m=u.parentNode}u=p}n=d===-1||h===-1?null:{start:d,end:h}}else n=null}n=n||{start:0,end:0}}else n=null;for(S2={focusedElem:e,selectionRange:n},jd=!1,a=(a&335544064)===a,Qt=t,t=a?9270:1024;Qt!==null;){if(e=Qt,a&&(n=e.deletions,n!==null))for(r=0;r<n.length;r++)a&&s2(n[r]);if(e.alternate===null&&(e.flags&2)!==0)a&&gN(e),cb(a);else{if(e.tag===22){if(n=e.alternate,e.memoizedState!==null){n!==null&&n.memoizedState===null&&a&&s2(n),cb(a);continue}else if(n!==null&&n.memoizedState!==null){a&&gN(e),cb(a);continue}}n=e.child,(e.subtreeFlags&t)!==0&&n!==null?(n.return=e,Qt=n):(a&&VR(e),cb(a))}}vn=null}function cb(e){for(;Qt!==null;){var t=Qt,a=e,n=t.alternate,i=t.flags;switch(t.tag){case 0:case 11:case 15:break;case 1:if((i&1024)!==0&&n!==null){a=void 0,i=n.memoizedProps,n=n.memoizedState;var r=t.stateNode;try{var l=zs(t.type,i);a=r.getSnapshotBeforeUpdate(l,n),r.__reactInternalSnapshotBeforeUpdate=a}catch(o){Re(t,t.return,o)}}break;case 3:if((i&1024)!==0){if(n=t.stateNode.containerInfo,a=n.nodeType,a===9)_2(n);else if(a===1)switch(n.nodeName){case"HEAD":case"HTML":case"BODY":_2(n);break;default:n.textContent=""}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;case 30:a&&n!==null&&(a=Zr(n.memoizedProps,n.stateNode),i=t.memoizedProps,i=el(i.default,i.update),i!=="none"&&$d(n,a,i,n.memoizedState=[],!0));break;default:if((i&1024)!==0)throw Error(H(163))}if(n=t.sibling,n!==null){n.return=t.return,Qt=n;break}Qt=t.return}}function KR(e,t,a){var n=a.flags;switch(a.tag){case 0:case 11:case 15:lr(e,a),n&4&&Hh(5,a);break;case 1:if(lr(e,a),n&4)if(e=a.stateNode,t===null)try{e.componentDidMount()}catch(l){Re(a,a.return,l)}else{var i=zs(a.type,t.memoizedProps);t=t.memoizedState;try{e.componentDidUpdate(i,t,e.__reactInternalSnapshotBeforeUpdate)}catch(l){Re(a,a.return,l)}}n&64&&HR(a),n&512&&or(a,a.return);break;case 3:if(lr(e,a),n&64&&(e=a.updateQueue,e!==null)){if(t=null,a.child!==null)switch(a.child.tag){case 27:case 5:t=a.child.stateNode;break;case 1:t=a.child.stateNode}try{QL(e,t)}catch(l){Re(a,a.return,l)}}break;case 27:t===null&&n&4&&GR(a);case 26:case 5:lr(e,a),t===null&&n&4&&i2(a),n&512&&or(a,a.return);break;case 12:lr(e,a);break;case 31:lr(e,a),n&4&&JR(e,a);break;case 13:lr(e,a),n&4&&e9(e,a),n&64&&(e=a.memoizedState,e!==null&&(e=e.dehydrated,e!==null&&(a=XV.bind(null,a),_X(e,a))));break;case 22:if(n=a.memoizedState!==null||qt,!n){var r=t!==null&&t.memoizedState!==null||Ae;t=qt,i=Ae,qt=n,(Ae=r)&&!i?(n=2,(a.subtreeFlags&8772)!==0&&(n|=1),ki(e,a,n)):lr(e,a),qt=t,Ae=i}break;case 30:lr(e,a),n&512&&or(a,a.return);break;case 7:n&512&&or(a,a.return);default:lr(e,a)}}function u2(e,t){for(e=e.child;e!==null;)qR(e,t),e=e.sibling}function qR(e,t){switch(e.tag){case 5:case 26:try{var a=e.stateNode;if(t){var n=a.style;typeof n.setProperty=="function"?n.setProperty("display","none","important"):n.display="none"}else{var i=e.stateNode,r=e.memoizedProps.style,l=r!=null&&r.hasOwnProperty("display")?r.display:null;i.style.display=l==null||typeof l=="boolean"?"":(""+l).trim()}}catch(d){Re(e,e.return,d)}m2(e,t);break;case 6:try{e.stateNode.nodeValue=t?"":e.memoizedProps,Se=!0}catch(d){Re(e,e.return,d)}break;case 18:try{var o=e.stateNode;t?RN(o,!0):RN(e.stateNode,!1)}catch(d){Re(e,e.return,d)}break;case 22:case 23:e.memoizedState===null&&u2(e,t);break;default:u2(e,t)}}function m2(e,t){if(e.subtreeFlags&67108864)for(e=e.child;e!==null;){e:{var a=e,n=t;switch(a.tag){case 4:qR(a,n);break e;case 22:a.memoizedState===null&&m2(a,n);break e;default:m2(a,n)}}e=e.sibling}}function QR(e){var t=e.alternate;t!==null&&(e.alternate=null,QR(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&uv(t)),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}var it=null,Qa=!1;function _i(e,t,a){for(a=a.child;a!==null;)WR(e,t,a),a=a.sibling}function WR(e,t,a){if(wn&&typeof wn.onCommitFiberUnmount=="function")try{wn.onCommitFiberUnmount(Rh,a)}catch{}switch(a.tag){case 26:Ae||aa(a,t),_i(e,t,a),a.memoizedState?a.memoizedState.count--:a.stateNode&&!Ae&&(a=a.stateNode,a.parentNode.removeChild(a));break;case 27:Ae||aa(a,t),hh(a);var n=it,i=Qa;xo(a.type)&&(it=a.stateNode,Qa=!1),_i(e,t,a),P9(a.stateNode,a.type,a.memoizedProps),it=n,Qa=i;break;case 5:Ae||aa(a,t),hh(a);case 6:if(a.tag===6&&hh(a),n=it,i=Qa,it=null,_i(e,t,a),it=n,Qa=i,it!==null)if(Qa)try{(it.nodeType===9?it.body:it.nodeName==="HTML"?it.ownerDocument.body:it).removeChild(a.stateNode),Se=!0}catch(r){Re(a,t,r)}else try{it.removeChild(a.stateNode),Se=!0}catch(r){Re(a,t,r)}break;case 18:it!==null&&(Qa?(e=it,LN(e.nodeType===9?e.body:e.nodeName==="HTML"?e.ownerDocument.body:e,a.stateNode),Hd(e)):LN(it,a.stateNode));break;case 4:n=it,i=Qa,it=a.stateNode.containerInfo,Qa=!0,_i(e,t,a),it=n,Qa=i;break;case 0:case 11:case 14:case 15:bo(2,a,t),Ae||bo(4,a,t),_i(e,t,a);break;case 1:Ae||(aa(a,t),n=a.stateNode,typeof n.componentWillUnmount=="function"&&FR(a,t,n)),_i(e,t,a);break;case 21:_i(e,t,a);break;case 22:Ae=(n=Ae)||a.memoizedState!==null,_i(e,t,a),Ae=n;break;case 30:aa(a,t),_i(e,t,a);break;case 7:Ae||aa(a,t),_i(e,t,a);break;default:_i(e,t,a)}}function JR(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null))){e=e.dehydrated;try{Hd(e)}catch(a){Re(t,t.return,a)}}}function e9(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null&&(e=e.dehydrated,e!==null))))try{Hd(e)}catch(a){Re(t,t.return,a)}}function zV(e){switch(e.tag){case 31:case 13:case 19:var t=e.stateNode;return t===null&&(t=e.stateNode=new vN),t;case 22:return e=e.stateNode,t=e._retryCache,t===null&&(t=e._retryCache=new vN),t;default:throw Error(H(435,e.tag))}}function db(e,t){var a=zV(e);t.forEach(function(n){if(!a.has(n)){a.add(n);var i=ZV.bind(null,e,n);n.then(i,i)}})}function Pa(e,t,a){var n=t.deletions;if(n!==null)for(var i=0;i<n.length;i++){var r=n[i],l=e,o=t,d=o;e:for(;d!==null;){switch(d.tag){case 27:if(xo(d.type)){it=d.stateNode,Qa=!1;break e}break;case 5:it=d.stateNode,Qa=!1;break e;case 3:case 4:it=d.stateNode.containerInfo,Qa=!0;break e}d=d.return}if(it===null)throw Error(H(160));WR(l,o,r),it=null,Qa=!1,l=r.alternate,l!==null&&(l.return=null),r.return=null}if(t.subtreeFlags&13886)for(t=t.child;t!==null;)t9(t,e,a),t=t.sibling}var Mi=null;function t9(e,t,a){var n=e.alternate,i=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(i&4&&(n=e.updateQueue,n=n!==null?n.events:null,n!==null))for(var r=0;r<n.length;r++){var l=n[r];l.ref.impl=l.nextImpl}Pa(t,e,a),ja(e),i&4&&(bo(3,e,e.return),Hh(3,e),bo(5,e,e.return));break;case 1:Pa(t,e,a),ja(e),i&512&&(Ae||n===null||aa(n,n.return)),i&64&&qt&&(e=e.updateQueue,e!==null&&(t=e.callbacks,t!==null&&(a=e.shared.hiddenCallbacks,e.shared.hiddenCallbacks=a===null?t:a.concat(t))));break;case 26:if(r=Mi,Pa(t,e,a),ja(e),i&512&&(Ae||n===null||aa(n,n.return)),i&4)if(i=n!==null?n.memoizedState:null,a=e.memoizedState,n===null)if(a===null)if(e.stateNode===null)if(qt)e.stateNode=M9(e.type,e.memoizedProps,t.containerInfo,e);else{e:{t=e.type,a=e.memoizedProps,i=r.ownerDocument||r;t:switch(t){case"title":n=i.getElementsByTagName("title")[0],(!n||n[Bh]||n[na]||n.namespaceURI==="http://www.w3.org/2000/svg"||n.hasAttribute("itemprop"))&&(n=i.createElement(t),i.head.insertBefore(n,i.querySelector("head > title"))),oa(n,t,a),n[na]=e,Wt(n),t=n;break e;case"link":if(r=FN("link","href",i).get(t+(a.href||""))){for(l=0;l<r.length;l++)if(n=r[l],n.getAttribute("href")===(a.href==null||a.href===""?null:a.href)&&n.getAttribute("rel")===(a.rel==null?null:a.rel)&&n.getAttribute("title")===(a.title==null?null:a.title)&&n.getAttribute("crossorigin")===(a.crossOrigin==null?null:a.crossOrigin)){r.splice(l,1);break t}}n=i.createElement(t),oa(n,t,a),i.head.appendChild(n);break;case"meta":if(r=FN("meta","content",i).get(t+(a.content||""))){for(l=0;l<r.length;l++)if(n=r[l],n.getAttribute("content")===(a.content==null?null:""+a.content)&&n.getAttribute("name")===(a.name==null?null:a.name)&&n.getAttribute("property")===(a.property==null?null:a.property)&&n.getAttribute("http-equiv")===(a.httpEquiv==null?null:a.httpEquiv)&&n.getAttribute("charset")===(a.charSet==null?null:a.charSet)){r.splice(l,1);break t}}n=i.createElement(t),oa(n,t,a),i.head.appendChild(n);break;default:throw Error(H(468,t))}n[na]=e,Wt(n),t=n}e.stateNode=t}else qt||A2(r,e.type,e.stateNode);else e.stateNode=HN(r,a,e.memoizedProps);else i!==a?(i===null?(t=n.stateNode,t===null||Ae||t.parentNode.removeChild(t)):i.count--,a===null?qt||A2(r,e.type,e.stateNode):HN(r,a,e.memoizedProps)):a===null&&e.stateNode!==null&&dE(e,e.memoizedProps,n.memoizedProps);break;case 27:Pa(t,e,a),ja(e),i&512&&(Ae||n===null||aa(n,n.return)),n!==null&&i&4&&dE(e,e.memoizedProps,n.memoizedProps);break;case 5:if(r=ir,ir=!1,Pa(t,e,a),ir=r,ja(e),i&512&&(Ae||n===null||aa(n,n.return)),e.flags&32){t=e.stateNode;try{Id(t,""),Se=!0}catch(s){Re(e,e.return,s)}}i&4&&e.stateNode!=null&&(t=e.memoizedProps,dE(e,t,n!==null?n.memoizedProps:t)),i&1024&&(mE=!0);break;case 6:if(Pa(t,e,a),ja(e),i&4){if(e.stateNode===null)throw Error(H(162));t=e.memoizedProps,a=e.stateNode;try{a.nodeValue=t,Se=!0}catch(s){Re(e,e.return,s)}}break;case 3:if(Se=!1,Ib=null,r=Mi,Mi=Ah(t.containerInfo),Pa(t,e,a),Mi=r,ja(e),i&4&&n!==null&&n.memoizedState.isDehydrated)try{Hd(t.containerInfo)}catch(s){Re(e,e.return,s)}mE&&(mE=!1,a9(e)),Se=!1;break;case 4:i=ir,ir=qt,n=C7(),r=Mi,Mi=Ah(e.stateNode.containerInfo),Pa(t,e,a),ja(e),Mi=r,Se&&nh&&(tv=!0),Se=n,ir=i;break;case 12:Pa(t,e,a),ja(e);break;case 31:Pa(t,e,a),ja(e),i&4&&(t=e.updateQueue,t!==null&&(e.updateQueue=null,db(e,t)));break;case 13:Pa(t,e,a),ja(e),e.child.flags&8192&&e.memoizedState!==null!=(n!==null&&n.memoizedState!==null)&&(Cv=xn()),i&4&&(t=e.updateQueue,t!==null&&(e.updateQueue=null,db(e,t)));break;case 22:r=e.memoizedState!==null,l=n!==null&&n.memoizedState!==null;var o=qt,d=Ae,h=ir;qt=o||r,ir=h||r,Ae=d||l,Pa(t,e,a),Ae=d,ir=h,qt=o,ja(e),i&8192&&(t=e.stateNode,t._visibility=r?t._visibility&-2:t._visibility|1,!r||n===null||l||qt||Ae||(t=l||Ae,a=qt,n=Ae,qt=r||qt,Ae=t,Xl(e,2),qt=a,Ae=n),!r&&ir||u2(e,r)),i&4&&(t=e.updateQueue,t!==null&&(a=t.retryQueue,a!==null&&(t.retryQueue=null,db(e,a))));break;case 19:Pa(t,e,a),ja(e),i&4&&(t=e.updateQueue,t!==null&&(e.updateQueue=null,db(e,t)));break;case 30:i&512&&(Ae||n===null||aa(n,n.return)),i=C7(),r=nh,l=(a&335544064)===a,o=e.memoizedProps,nh=l&&el(o.default,o.update)!=="none",Pa(t,e,a),ja(e),l&&n!==null&&Se&&(e.flags|=4),nh=r,Se=i;break;case 21:break;case 7:i&512&&(Ae||n===null||aa(n,n.return)),n&&n.stateNode!==null&&(n.stateNode._fragmentFiber=e);default:Pa(t,e,a),ja(e)}}function ja(e){var t=e.flags;if(t&2){try{for(var a,n=e.return;n!==null;){if(YR(n)){a=n;break}n=n.return}n=null;for(var i=e.return;i!==null;){if(fS(i)){var r=i.stateNode;n===null?n=[r]:n.push(r)}if(pS(i))break;i=i.return}var l=n;if(a==null)throw Error(H(160));switch(a.tag){case 27:var o=a.stateNode,d=uE(e);Jb(e,d,o,l);break;case 5:var h=a.stateNode;a.flags&32&&(Id(h,""),a.flags&=-33);var s=uE(e);Jb(e,s,h,l);break;case 3:case 4:var c=a.stateNode.containerInfo,u=uE(e);r2(e,u,c,l);break;default:throw Error(H(161))}}catch(m){Re(e,e.return,m)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function a9(e){if(e.subtreeFlags&1024)for(e=e.child;e!==null;){var t=e;a9(t),t.tag===5&&t.flags&1024&&(t=t.stateNode,jd=!0,t.reset(),jd=!1),e=e.sibling}}function nd(e,t){if(t.subtreeFlags&9270)for(t=t.child;t!==null;)n9(t,e),t=t.sibling;else ZR(t,!1)}function n9(e,t){var a=e.alternate;if(a===null)l2(e,!1);else switch(e.tag){case 3:if(d2=rr=!1,bN(),nd(t,e),!rr&&!tv){if(e=sr,e!==null)for(var n=0;n<e.length;n+=3){a=e[n];var i=e[n+1];D9(a,e[n+2]),a=a.ownerDocument.documentElement,a!==null&&a.animate({opacity:[0,0],pointerEvents:["none","none"]},{duration:0,fill:"forwards",pseudoElement:"::view-transition-group("+i+")"})}e=t.containerInfo,e=e.nodeType===9?e.documentElement:e.ownerDocument.documentElement,e!==null&&e.style.viewTransitionName===""&&(e.style.viewTransitionName="none",e.animate({opacity:[0,0],pointerEvents:["none","none"]},{duration:0,fill:"forwards",pseudoElement:"::view-transition-group(root)"}),e.animate({width:[0,0],height:[0,0]},{duration:0,fill:"forwards",pseudoElement:"::view-transition"})),d2=!0}sr=null;break;case 5:nd(t,e);break;case 4:n=rr,rr=!1,nd(t,e),rr&&(tv=!0),rr=n;break;case 22:e.memoizedState===null&&(a.memoizedState!==null?l2(e,!1):nd(t,e));break;case 30:n=rr,i=bN(),rr=!1,nd(t,e),rr&&(e.flags|=4);var r=e.memoizedProps,l=e.stateNode;t=Zr(r,l),l=Zr(a.memoizedProps,l);var o=el(r.default,r.update);o==="none"?t=!1:(r=a.memoizedState,a.memoizedState=null,a=e.child,Ja=0,t=gS(e,a,t,l,o,r,!0),Ja!==(r===null?0:r.length)&&(e.flags|=32)),(e.flags&4)!==0&&t?(Rd(e,e.memoizedProps.onUpdate),sr=i):i!==null&&(i.push.apply(i,sr),sr=i),rr=(e.flags&32)!==0?!0:n;break;default:nd(t,e)}}function lr(e,t){if(t.subtreeFlags&8772)for(t=t.child;t!==null;)KR(e,t.alternate,t),t=t.sibling}function Xl(e,t){for(e=e.child;e!==null;){var a=e,n=t;switch(a.tag){case 0:case 11:case 14:case 15:bo(4,a,a.return),Xl(a,n);break;case 1:aa(a,a.return);var i=a.stateNode;typeof i.componentWillUnmount=="function"&&FR(a,a.return,i),Xl(a,n);break;case 27:(n&2)!==0&&P9(a.stateNode,a.type,a.memoizedProps);case 5:aa(a,a.return),a.tag!==5&&a.tag!==27||hh(a),Xl(a,n);break;case 6:hh(a);break;case 26:aa(a,a.return),i=a.stateNode,a.memoizedState!==null||i===null||Ae||i.parentNode.removeChild(i),Xl(a,n);break;case 22:a.memoizedState===null&&Xl(a,n);break;case 30:aa(a,a.return),Xl(a,n);break;case 7:aa(a,a.return);default:Xl(a,n)}e=e.sibling}}function ki(e,t,a){for(a=(t.subtreeFlags&8772)!==0?a:a&-2,t=t.child;t!==null;){var n=t.alternate,i=e,r=t,l=r.flags,o=(a&1)!==0;switch(r.tag){case 0:case 11:case 15:ki(i,r,a),Hh(4,r);break;case 1:if(ki(i,r,a),n=r,i=n.stateNode,typeof i.componentDidMount=="function")try{i.componentDidMount()}catch(s){Re(n,n.return,s)}if(n=r,i=n.updateQueue,i!==null){var d=n.stateNode;try{var h=i.shared.hiddenCallbacks;if(h!==null)for(i.shared.hiddenCallbacks=null,i=0;i<h.length;i++)qL(h[i],d)}catch(s){Re(n,n.return,s)}}o&&l&64&&HR(r),or(r,r.return);break;case 27:(a&2)!==0&&GR(r);case 5:r.tag!==5&&r.tag!==27||fN(r),ki(i,r,a),o&&n===null&&l&4&&i2(r),or(r,r.return);break;case 6:fN(r);break;case 26:d=r.stateNode,r.memoizedState!==null||d===null||qt||A2(Ah(d.ownerDocument),r.type,d),ki(i,r,a),o&&n===null&&l&4&&i2(r),or(r,r.return);break;case 12:ki(i,r,a);break;case 31:ki(i,r,a),o&&l&4&&JR(i,r);break;case 13:ki(i,r,a),o&&l&4&&e9(i,r);break;case 22:r.memoizedState===null&&ki(i,r,a),or(r,r.return);break;case 30:ki(i,r,a),or(r,r.return);break;case 7:or(r,r.return);default:ki(i,r,a)}t=t.sibling}}function bS(e,t){var a=null;e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(a=e.memoizedState.cachePool.pool),e=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(e=t.memoizedState.cachePool.pool),e!==a&&(e!=null&&e.refCount++,a!=null&&Ph(a))}function vS(e,t){e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&Ph(e))}function Xn(e,t,a,n){var i=(a&335544064)===a;if(t.subtreeFlags&(i?10262:10256))for(t=t.child;t!==null;)i9(e,t,a,n),t=t.sibling;else i&&XR(t)}function i9(e,t,a,n){var i=(a&335544064)===a;i&&t.alternate===null&&t.return!==null&&t.return.alternate!==null&&kb(t);var r=t.flags;switch(t.tag){case 0:case 11:case 15:Xn(e,t,a,n),r&2048&&Hh(9,t);break;case 1:Xn(e,t,a,n);break;case 3:Xn(e,t,a,n),i&&d2&&(e=e.containerInfo,e=e.nodeType===9?e.body:e.nodeName==="HTML"?e.ownerDocument.body:e,e.style.viewTransitionName==="root"&&(e.style.viewTransitionName=""),e=e.ownerDocument.documentElement,e!==null&&e.style.viewTransitionName==="none"&&(e.style.viewTransitionName="")),r&2048&&(r=null,t.alternate!==null&&(r=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==r&&(t.refCount++,r!=null&&Ph(r)));break;case 12:if(r&2048){Xn(e,t,a,n),r=t.stateNode;try{var l=t.memoizedProps,o=l.id,d=l.onPostCommit;typeof d=="function"&&d(o,t.alternate===null?"mount":"update",r.passiveEffectDuration,-0)}catch(h){Re(t,t.return,h)}}else Xn(e,t,a,n);break;case 31:Xn(e,t,a,n);break;case 13:Xn(e,t,a,n);break;case 23:break;case 22:l=t.stateNode,o=t.alternate,t.memoizedState!==null?(i&&o!==null&&o.memoizedState===null&&kb(o),l._visibility&2?Xn(e,t,a,n):ph(e,t)):(i&&o!==null&&o.memoizedState!==null&&kb(t),l._visibility&2?Xn(e,t,a,n):(l._visibility|=2,rd(e,t,a,n,(t.subtreeFlags&10256)!==0||!1))),r&2048&&bS(o,t);break;case 24:Xn(e,t,a,n),r&2048&&vS(t.alternate,t);break;case 30:i&&(r=t.alternate,r!==null&&(fr(r.child,!0),fr(t.child,!0))),Xn(e,t,a,n);break;default:Xn(e,t,a,n)}}function rd(e,t,a,n,i){for(i=i&&((t.subtreeFlags&10256)!==0||!1),t=t.child;t!==null;){var r=e,l=t,o=a,d=n,h=l.flags;switch(l.tag){case 0:case 11:case 15:rd(r,l,o,d,i),Hh(8,l);break;case 23:break;case 22:var s=l.stateNode;l.memoizedState!==null?s._visibility&2?rd(r,l,o,d,i):ph(r,l):(s._visibility|=2,rd(r,l,o,d,i)),i&&h&2048&&bS(l.alternate,l);break;case 24:rd(r,l,o,d,i),i&&h&2048&&vS(l.alternate,l);break;default:rd(r,l,o,d,i)}t=t.sibling}}function ph(e,t){if(t.subtreeFlags&10256)for(t=t.child;t!==null;){var a=e,n=t,i=n.flags;switch(n.tag){case 22:ph(a,n),i&2048&&bS(n.alternate,n);break;case 24:ph(a,n),i&2048&&vS(n.alternate,n);break;default:ph(a,n)}t=t.sibling}}var Es=8192;function ys(e,t,a){if(e.subtreeFlags&Es)for(e=e.child;e!==null;)r9(e,t,a),e=e.sibling}function r9(e,t,a){switch(e.tag){case 26:ys(e,t,a),e.flags&Es&&(e.memoizedState!==null?jX(a,Mi,e.memoizedState,e.memoizedProps):(e=e.stateNode,(t&335544128)===t&&GN(a,e)));break;case 5:ys(e,t,a),e.flags&Es&&(e=e.stateNode,(t&335544128)===t&&GN(a,e));break;case 3:case 4:var n=Mi;Mi=Ah(e.stateNode.containerInfo),ys(e,t,a),Mi=n;break;case 22:e.memoizedState===null&&(n=e.alternate,n!==null&&n.memoizedState!==null?(n=Es,Es=16777216,ys(e,t,a),Es=n):ys(e,t,a));break;case 30:if((e.flags&Es)!==0&&(n=e.memoizedProps.name,n!=null&&n!=="auto")){var i=e.stateNode;i.paired=null,vn===null&&(vn=new Map),vn.set(n,i)}ys(e,t,a);break;default:ys(e,t,a)}}function l9(e){var t=e.alternate;if(t!==null&&(e=t.child,e!==null)){t.child=null;do t=e.sibling,e.sibling=null,e=t;while(e!==null)}}function qm(e){var t=e.deletions;if((e.flags&16)!==0){if(t!==null)for(var a=0;a<t.length;a++){var n=t[a];Qt=n,s9(n,e)}l9(e)}if(e.subtreeFlags&10256)for(e=e.child;e!==null;)o9(e),e=e.sibling}function o9(e){switch(e.tag){case 0:case 11:case 15:qm(e),e.flags&2048&&bo(9,e,e.return);break;case 3:qm(e);break;case 12:qm(e);break;case 22:var t=e.stateNode;e.memoizedState!==null&&t._visibility&2&&(e.return===null||e.return.tag!==13)?(t._visibility&=-3,Mb(e)):qm(e);break;default:qm(e)}}function Mb(e){var t=e.deletions;if((e.flags&16)!==0){if(t!==null)for(var a=0;a<t.length;a++){var n=t[a];Qt=n,s9(n,e)}l9(e)}for(e=e.child;e!==null;){switch(t=e,t.tag){case 0:case 11:case 15:bo(8,t,t.return),Mb(t);break;case 22:a=t.stateNode,a._visibility&2&&(a._visibility&=-3,Mb(t));break;default:Mb(t)}e=e.sibling}}function s9(e,t){for(;Qt!==null;){var a=Qt;switch(a.tag){case 0:case 11:case 15:bo(8,a,t);break;case 23:case 22:if(a.memoizedState!==null&&a.memoizedState.cachePool!==null){var n=a.memoizedState.cachePool.pool;n!=null&&n.refCount++}break;case 24:Ph(a.memoizedState.cache)}if(n=a.child,n!==null)n.return=a,Qt=n;else e:for(a=e;Qt!==null;){n=Qt;var i=n.sibling,r=n.return;if(QR(n),n===a){Qt=null;break e}if(i!==null){i.return=r,Qt=i;break e}Qt=r}}}var BV={getCacheForType:function(e){var t=ia(Dt),a=t.data.get(e);return a===void 0&&(a=e(),t.data.set(e,a)),a},cacheSignal:function(){return ia(Dt).controller.signal}},UV=typeof WeakMap=="function"?WeakMap:Map,Te=0,He=null,fe=null,be=0,Ne=0,fn=null,eo=!1,Vd=!1,yS=!1,Wr=0,ft=0,vo=0,As=0,av=0,yn=0,Ld=0,fh=null,Wa=null,h2=!1,Cv=0,c9=0,nv=1/0,iv=null,co=null,dt=0,Di=null,Bs=null,pr=0,p2=0,f2=null,d9=null,_d=null,kd=null,Md=null,gh=0,Ab=null;function Sn(){return(Te&2)!==0&&be!==0?be&-be:ie.T!==null?wS():pL()}function u9(){if(yn===0)if((be&536870912)===0||ue){var e=Qg;Qg<<=1,(Qg&3932160)===0&&(Qg=262144),yn=e}else yn=536870912;return e=sa.current,e!==null&&(e.flags|=32),yn}function Rd(e,t){if(t!=null){var a=e.stateNode,n=a.ref;n===null&&(n=a.ref=N9(Zr(e.memoizedProps,a))),kd===null&&(kd=[]),kd.push(t.bind(null,n))}}function tn(e,t,a){(e===He&&(Ne===2||Ne===9)||e.cancelPendingCommit!==null)&&(Od(e,0),to(e,be,yn,!1)),zh(e,a),((Te&2)===0||e!==He)&&(e===He&&((Te&2)===0&&(As|=a),ft===4&&to(e,be,yn,!1)),br(e))}function m9(e,t,a){if((Te&6)!==0)throw Error(H(327));var n=!a&&(t&127)===0&&(t&e.expiredLanes)===0||Oh(e,t),i=n?HV(e,t):hE(e,t,!0),r=n;do{if(i===0){Vd&&!n&&to(e,t,0,!1);break}else{if(a=e.current.alternate,r&&!PV(a)){i=hE(e,t,!1),r=!1;continue}if(i===2){if(r=t,e.errorRecoveryDisabledLanes&r)var l=0;else l=e.pendingLanes&-536870913,l=l!==0?l:l&536870912?536870912:0;if(l!==0){t=l;e:{var o=e;i=fh;var d=o.current.memoizedState.isDehydrated;if(d&&(Od(o,l).flags|=256),l=hE(o,l,!1),l!==2&&l!==6){if(yS&&!d){o.errorRecoveryDisabledLanes|=r,As|=r,i=4;break e}r=Wa,Wa=i,r!==null&&(Wa===null?Wa=r:Wa.push.apply(Wa,r))}i=l}if(r=!1,i!==2)continue}}if(i===1){Od(e,0),to(e,t,0,!0);break}e:{switch(n=e,r=i,r){case 0:case 1:throw Error(H(345));case 4:if((t&4194048)!==t&&(t&62914560)!==t)break;case 6:to(n,t,yn,!eo);break e;case 2:Wa=null;break;case 3:case 5:break;default:throw Error(H(329))}if((t&62914560)===t&&(i=Cv+300-xn(),10<i)){if(to(n,t,yn,!eo),dv(n,0,!0)!==0)break e;pr=t,n.timeoutHandle=SS(yN.bind(null,n,a,Wa,iv,h2,t,yn,As,Ld,eo,r,"Throttled",-0,0),i);break e}yN(n,a,Wa,iv,h2,t,yn,As,Ld,eo,r,null,-0,0)}}break}while(!0);br(e)}function yN(e,t,a,n,i,r,l,o,d,h,s,c,u,m){e.timeoutHandle=-1;var p=t.subtreeFlags,f=(r&335544064)===r;if(c=null,(f||p&8192||(p&16785408)===16785408)&&(c={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:dr},vn=null,r9(t,r,c),f&&(p=c,f=e.containerInfo,f=(f.nodeType===9?f:f.ownerDocument).__reactViewTransition,f!=null&&(p.count++,p.waitingForViewTransition=!0,p=Dh.bind(p),f.finished.then(p,p))),p=(r&62914560)===r?Cv-xn():(r&4194048)===r?c9-xn():0,p=HX(c,p),p!==null)){pr=r,e.cancelPendingCommit=p(wN.bind(null,e,t,r,a,n,i,l,o,d,h,s,c,null,u,m)),to(e,r,l,!h);return}wN(e,t,r,a,n,i,l,o,d,h,s,c)}function PV(e){for(var t=e;;){var a=t.tag;if((a===0||a===11||a===15)&&t.flags&16384&&(a=t.updateQueue,a!==null&&(a=a.stores,a!==null)))for(var n=0;n<a.length;n++){var i=a[n],r=i.getSnapshot;i=i.value;try{if(!Cn(r(),i))return!1}catch{return!1}}if(a=t.child,t.subtreeFlags&16384&&a!==null)a.return=t,t=a;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function to(e,t,a,n){t=cL(e,t),t&=~av,t&=~As,e.suspendedLanes|=t,e.pingedLanes&=~t,n&&(e.warmLanes|=t),n=e.expirationTimes;for(var i=t;0<i;){var r=31-En(i),l=1<<r;n[r]=-1,i&=~l}a!==0&&uL(e,a,t)}function Tv(){return(Te&6)===0?(Fh(0,!1),!1):!0}function xS(){if(fe!==null){if(Ne===0)var e=fe.return;else e=fe,Gr=Fs=null,nS(e),Sd=null,Sh=0,e=fe;for(;e!==null;)jR(e.alternate,e),e=e.return;fe=null}}function Od(e,t){var a=e.timeoutHandle;return a!==-1&&(e.timeoutHandle=-1,oX(a)),a=e.cancelPendingCommit,a!==null&&(e.cancelPendingCommit=null,a()),pr=0,xS(),He=e,fe=a=$r(e.current,null),be=t,Ne=0,fn=null,eo=!1,Vd=Oh(e,t),yS=!1,Ld=yn=av=As=vo=ft=0,Wa=fh=null,h2=!1,Wr=cL(e,t),fv(),a}function h9(e,t){le=null,ie.H=qb,t===Gd||t===vv?(t=V7(),Ne=3):t===K2?(t=V7(),Ne=4):Ne=t===uS?8:t!==null&&typeof t=="object"&&typeof t.then=="function"?6:1,fn=t,fe===null&&(ft=1,Qb(e,Wn(t,e.current)))}function p9(){var e=sa.current;return e===null?!0:(be&4194048)===be?Ta===null:(be&62914560)===be||(be&536870912)!==0?e===Ta:!1}function f9(){var e=ie.H;return ie.H=qb,e===null?qb:e}function g9(){var e=ie.A;return ie.A=BV,e}function rv(){ft=4,eo||(be&4194048)!==be&&sa.current!==null||(Vd=!0),(vo&134217727)===0&&(As&134217727)===0||He===null||to(He,be,yn,!1)}function hE(e,t,a){var n=Te;Te|=2;var i=f9(),r=g9();(He!==e||be!==t)&&(iv=null,Od(e,t)),t=!1;var l=ft;e:do try{if(Ne!==0&&fe!==null){var o=fe,d=fn;switch(Ne){case 8:xS(),l=6;break e;case 3:case 2:case 9:case 6:sa.current===null&&(t=!0);var h=Ne;if(Ne=0,fn=null,vd(e,o,d,h),a&&Vd){l=0;break e}break;default:h=Ne,Ne=0,fn=null,vd(e,o,d,h)}}jV(),l=ft;break}catch(s){h9(e,s)}while(!0);return t&&e.shellSuspendCounter++,Gr=Fs=null,Te=n,ie.H=i,ie.A=r,fe===null&&(He=null,be=0,fv()),l}function jV(){for(;fe!==null;)b9(fe)}function HV(e,t){var a=Te;Te|=2;var n=f9(),i=g9();He!==e||be!==t?(iv=null,nv=xn()+500,Od(e,t)):Vd=Oh(e,t);e:do try{if(Ne!==0&&fe!==null){t=fe;var r=fn;t:switch(Ne){case 1:Ne=0,fn=null,vd(e,t,r,1);break;case 2:case 9:if($7(r)){Ne=0,fn=null,xN(t);break}t=function(){Ne!==2&&Ne!==9||He!==e||(Ne=7),br(e)},r.then(t,t);break e;case 3:Ne=7;break e;case 4:Ne=5;break e;case 7:$7(r)?(Ne=0,fn=null,xN(t)):(Ne=0,fn=null,vd(e,t,r,7));break;case 5:var l=null;switch(fe.tag){case 26:l=fe.memoizedState;case 5:case 27:var o=fe;if(l?F9(l):o.stateNode.complete){Ne=0,fn=null;var d=o.sibling;if(d!==null)fe=d;else{var h=o.return;h!==null?(fe=h,_v(h)):fe=null}break t}}Ne=0,fn=null,vd(e,t,r,5);break;case 6:Ne=0,fn=null,vd(e,t,r,6);break;case 8:xS(),ft=6;break e;default:throw Error(H(462))}}FV();break}catch(s){h9(e,s)}while(!0);return Gr=Fs=null,ie.H=n,ie.A=i,Te=a,fe!==null?0:(He=null,be=0,fv(),ft)}function FV(){for(;fe!==null&&!r$();)b9(fe)}function b9(e){var t=PR(e.alternate,e,Wr);e.memoizedProps=e.pendingProps,t===null?_v(e):fe=t}function xN(e){var t=e,a=t.alternate;switch(t.tag){case 15:case 0:t=sN(a,t,t.pendingProps,t.type,void 0,be);break;case 11:t=sN(a,t,t.pendingProps,t.type.render,t.ref,be);break;case 5:nS(t);var n=t;n===Jt&&(ue?(Yb(n),n.tag===5&&n.stateNode!=null&&(Ve=n.stateNode)):(Yb(n),ue=!0));default:jR(a,t),t=fe=HL(t,Wr),t=PR(a,t,Wr)}e.memoizedProps=e.pendingProps,t===null?_v(e):fe=t}function vd(e,t,a,n){Gr=Fs=null,nS(t),Sd=null,Sh=0;var i=t.return;try{if(AV(e,i,t,a,be)){ft=1,Qb(e,Wn(a,e.current)),fe=null;return}}catch(r){if(i!==null)throw fe=i,r;ft=1,Qb(e,Wn(a,e.current)),fe=null;return}t.flags&32768?(ue||n===1?e=!0:Vd||(be&536870912)!==0?e=!1:(eo=e=!0,(n===2||n===9||n===3||n===6)&&(n=sa.current,n!==null&&n.tag===13&&(n.flags|=16384))),v9(t,e)):_v(t)}function _v(e){var t=e;do{if((t.flags&32768)!==0){v9(t,eo);return}e=t.return;var a=LV(t.alternate,t,Wr);if(a!==null){fe=a;return}if(t=t.sibling,t!==null){fe=t;return}fe=t=e}while(t!==null);ft===0&&(ft=5)}function v9(e,t){do{var a=RV(e.alternate,e);if(a!==null){a.flags&=32767,fe=a;return}if(a=e.return,a!==null&&(a.flags|=32768,a.subtreeFlags=0,a.deletions=null),!t&&(e=e.sibling,e!==null)){fe=e;return}fe=e=a}while(e!==null);ft=6,fe=null}function wN(e,t,a,n,i,r,l,o,d,h,s,c){e.cancelPendingCommit=null;do kv();while(dt!==0);if((Te&6)!==0)throw Error(H(327));if(t!==null){if(t===e.current)throw Error(H(177));e===He&&(fe=He=null,be=0),Bs=t,Di=e,pr=a,f2=i,d9=n,YV(e,t,a,l,o,d,c)}}function YV(e,t,a,n,i,r,l){var o=t.lanes|t.childLanes;if(p2=o,o|=Y2,f$(e,a,o,n,i,r),kd=null,(a&335544064)===a?(Md=bV(e),n=10262):(Md=null,n=10256),(t.subtreeFlags&n)!==0||(t.flags&n)!==0?(e.callbackNode=null,e.callbackPriority=0,KV(Ub,function(){return y2(),null})):(e.callbackNode=null,e.callbackPriority=0),ev=!1,n=(t.flags&13878)!==0,(t.subtreeFlags&13878)!==0||n){n=ie.T,ie.T=null,i=_e.p,_e.p=2,r=Te,Te|=4;try{OV(e,t,a)}finally{Te=r,_e.p=i,ie.T=n}}dt=1,ev?_d=hX(l,e.containerInfo,Md,g2,b2,$V,v2,y2,GV,null,null):(g2(),b2(),v2())}function GV(e){if(dt!==0){var t=Di.onRecoverableError;t(e,{componentStack:null})}}function $V(){dt===3&&(dt=0,n9(Bs,Di),dt=4)}function g2(){if(dt===1){dt=0;var e=Di,t=Bs,a=pr,n=(t.flags&13878)!==0;if((t.subtreeFlags&13878)!==0||n){n=ie.T,ie.T=null;var i=_e.p;_e.p=2;var r=Te;Te|=4;try{nh=tv=!1,t9(t,e,a),a=S2;var l=LL(e.containerInfo),o=a.focusedElem,d=a.selectionRange;if(l!==o&&o&&o.ownerDocument&&NL(o.ownerDocument.documentElement,o)){if(d!==null&&F2(o)){var h=d.start,s=d.end;if(s===void 0&&(s=h),"selectionStart"in o)o.selectionStart=h,o.selectionEnd=Math.min(s,o.value.length);else{var c=o.ownerDocument||document,u=c&&c.defaultView||window;if(u.getSelection){var m=u.getSelection(),p=o.textContent.length,f=Math.min(d.start,p),y=d.end===void 0?f:Math.min(d.end,p);!m.extend&&f>y&&(l=y,y=f,f=l);var g=B7(o,f),b=B7(o,y);if(g&&b&&(m.rangeCount!==1||m.anchorNode!==g.node||m.anchorOffset!==g.offset||m.focusNode!==b.node||m.focusOffset!==b.offset)){var v=c.createRange();v.setStart(g.node,g.offset),m.removeAllRanges(),f>y?(m.addRange(v),m.extend(b.node,b.offset)):(v.setEnd(b.node,b.offset),m.addRange(v))}}}}for(c=[],m=o;m=m.parentNode;)m.nodeType===1&&c.push({element:m,left:m.scrollLeft,top:m.scrollTop});for(typeof o.focus=="function"&&o.focus(),o=0;o<c.length;o++){var x=c[o];x.element.scrollLeft=x.left,x.element.scrollTop=x.top}}jd=!!E2,S2=E2=null}finally{Te=r,_e.p=i,ie.T=n}}e.current=t,dt=2}}function b2(){if(dt===2){dt=0;var e=Di,t=Bs,a=(t.flags&8772)!==0;if((t.subtreeFlags&8772)!==0||a){a=ie.T,ie.T=null;var n=_e.p;_e.p=2;var i=Te;Te|=4;try{KR(e,t.alternate,t)}finally{Te=i,_e.p=n,ie.T=a}}dt=3}}function v2(){if(dt===4||dt===3){dt=0;var e=_d;_d=null,l$();var t=Di,a=Bs,n=pr,i=d9,r=(n&335544064)===n?10262:10256;if((a.subtreeFlags&r)!==0||(a.flags&r)!==0?dt=5:(dt=0,Bs=Di=null,y9(t,t.pendingLanes)),r=t.pendingLanes,r===0&&(co=null),z2(n),a=a.stateNode,wn&&typeof wn.onCommitFiberRoot=="function")try{wn.onCommitFiberRoot(Rh,a,void 0,(a.current.flags&128)===128)}catch{}if(i!==null){a=ie.T,r=_e.p,_e.p=2,ie.T=null;try{for(var l=t.onRecoverableError,o=0;o<i.length;o++){var d=i[o];l(d.value,{componentStack:d.stack})}}finally{ie.T=a,_e.p=r}}if(i=kd,l=Md,Md=null,i!==null&&(kd=null,l===null&&(l=[]),e!==null))for(d=0;d<i.length;d++)a=(0,i[d])(l),a!==void 0&&e.finished.finally(a);(pr&3)!==0&&kv(),br(t),r=t.pendingLanes,(n&261930)!==0&&(r&42)!==0?t===Ab?gh++:(gh=0,Ab=t):(gh=0,Ab=null),Fh(0,!1)}}function y9(e,t){(e.pooledCacheLanes&=t)===0&&(t=e.pooledCache,t!=null&&(e.pooledCache=null,Ph(t)))}function kv(){return _d!==null&&(_d.skipTransition(),_d=null),g2(),b2(),v2(),y2()}function y2(){if(dt!==5)return!1;var e=Di,t=p2;p2=0;var a=z2(pr),n=ie.T,i=_e.p;try{_e.p=32>a?32:a,ie.T=null,a=f2,f2=null;var r=Di,l=pr;if(dt=0,Bs=Di=null,pr=0,(Te&6)!==0)throw Error(H(331));var o=Te;if(Te|=4,o9(r.current),i9(r,r.current,l,a),Te=o,Fh(0,!1),wn&&typeof wn.onPostCommitFiberRoot=="function")try{wn.onPostCommitFiberRoot(Rh,r)}catch{}return!0}finally{_e.p=i,ie.T=n,y9(e,t)}}function EN(e,t,a){t=Wn(a,t),t=WE(e.stateNode,t,2),e=lo(e,t,2),e!==null&&(zh(e,2),br(e))}function Re(e,t,a){if(e.tag===3)EN(e,e,a);else for(;t!==null;){if(t.tag===3){EN(t,e,a);break}else if(t.tag===1){var n=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof n.componentDidCatch=="function"&&(co===null||!co.has(n))){e=Wn(a,e),a=RR(2),n=lo(t,a,2),n!==null&&(OR(a,n,t,e),zh(n,2),br(n));break}}t=t.return}}function pE(e,t,a){var n=e.pingCache;if(n===null){n=e.pingCache=new UV;var i=new Set;n.set(t,i)}else i=n.get(t),i===void 0&&(i=new Set,n.set(t,i));i.has(a)||(yS=!0,i.add(a),e=VV.bind(null,e,t,a),t.then(e,e))}function VV(e,t,a){var n=e.pingCache;n!==null&&n.delete(t),e.pingedLanes|=e.suspendedLanes&a,e.warmLanes&=~a,He===e&&(be&a)===a&&((ft===4||ft===3&&(be&62914560)===be&&300>xn()-Cv)&&(Te&2)===0?Od(e,0):av|=a,Ld===be&&(Ld=0)),br(e)}function x9(e,t){t===0&&(t=dL()),e=Hs(e,t),e!==null&&(zh(e,t),br(e))}function XV(e){var t=e.memoizedState,a=0;t!==null&&(a=t.retryLane),x9(e,a)}function ZV(e,t){var a=0;switch(e.tag){case 31:case 13:var n=e.stateNode,i=e.memoizedState;i!==null&&(a=i.retryLane);break;case 19:n=e.stateNode;break;case 22:n=e.stateNode._retryCache;break;default:throw Error(H(314))}n!==null&&n.delete(t),x9(e,a)}function KV(e,t){return R2(e,t)}var zd=null,ld=null,x2=!1,lv=!1,fE=!1,ao=0;function br(e){e!==ld&&e.next===null&&(ld===null?zd=ld=e:ld=ld.next=e),lv=!0,x2||(x2=!0,QV())}function Fh(e,t){if(!fE&&lv){fE=!0;do for(var a=!1,n=zd;n!==null;){if(!t)if(e!==0){var i=n.pendingLanes;if(i===0)var r=0;else{var l=n.suspendedLanes,o=n.pingedLanes;r=(1<<31-En(42|e)+1)-1,r&=i&~(l&~o),r=r&201326741?r&201326741|1:r?r|2:0}r!==0&&(a=!0,SN(n,r))}else r=be,r=dv(n,n===He?r:0,n.cancelPendingCommit!==null||n.timeoutHandle!==-1),(r&3)===0||Oh(n,r)||(a=!0,SN(n,r));n=n.next}while(a);fE=!1}}function qV(){w9()}function w9(){lv=x2=!1;var e=0;ao!==0&&lX()&&(e=ao);for(var t=xn(),a=null,n=zd;n!==null;){var i=n.next,r=E9(n,t);r===0?(n.next=null,a===null?zd=i:a.next=i,i===null&&(ld=a)):(a=n,(e!==0||(r&3)!==0)&&(lv=!0)),n=i}dt!==0&&dt!==5||Fh(e,!1),ao!==0&&(ao=0)}function E9(e,t){for(var a=e.suspendedLanes,n=e.pingedLanes,i=e.expirationTimes,r=e.pendingLanes&-62914561;0<r;){var l=31-En(r),o=1<<l,d=i[l];d===-1?((o&a)===0||(o&n)!==0)&&(i[l]=p$(o,t)):d<=t&&(e.expiredLanes|=o),r&=~o}if(t=He,a=be,a=dv(e,e===t?a:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),n=e.callbackNode,a===0||e===t&&(Ne===2||Ne===9)||e.cancelPendingCommit!==null)return n!==null&&n!==null&&Xw(n),e.callbackNode=null,e.callbackPriority=0;if((a&3)===0||Oh(e,a)){if(t=a&-a,t===e.callbackPriority)return t;switch(n!==null&&Xw(n),z2(a)){case 2:case 8:a=oL;break;case 32:a=Ub;break;case 268435456:a=sL;break;default:a=Ub}return n=S9.bind(null,e),a=R2(a,n),e.callbackPriority=t,e.callbackNode=a,t}return n!==null&&n!==null&&Xw(n),e.callbackPriority=2,e.callbackNode=null,2}function S9(e,t){if(dt!==0&&dt!==5)return e.callbackNode=null,e.callbackPriority=0,null;var a=e.callbackNode;if(kv()&&e.callbackNode!==a)return null;var n=be;return n=dv(e,e===He?n:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),n===0?null:(m9(e,n,t),E9(e,xn()),e.callbackNode!=null&&e.callbackNode===a?S9.bind(null,e):null)}function SN(e,t){if(kv())return null;m9(e,t,!0)}function QV(){sX(function(){(Te&6)!==0?R2(lL,qV):w9()})}function wS(){if(ao===0){var e=Ls;e===0&&(e=qg,qg<<=1,(qg&261888)===0&&(qg=256)),ao=e}return ao}function CN(e){return e==null||typeof e=="symbol"||typeof e=="boolean"?null:typeof e=="function"?e:bb(e)}function WV(e,t,a,n,i){if(t==="submit"&&a&&a.stateNode===i){var r=CN((i[nn]||null).action),l=n.submitter;l&&(t=(t=l[nn]||null)?CN(t.formAction):l.getAttribute("formAction"),t!==null&&(r=t,l=null));var o=new mv("action","action",null,n,i);e.push({event:o,listeners:[{instance:null,listener:function(){if(n.defaultPrevented){if(ao!==0){var d=new FormData(i,l);qE(a,{pending:!0,data:d,method:i.method,action:r},null,d)}}else typeof r=="function"&&(o.preventDefault(),d=new FormData(i,l),qE(a,{pending:!0,data:d,method:i.method,action:r},r,d))},currentTarget:i}]})}}for(ub=0;ub<PE.length;ub++)mb=PE[ub],TN=mb.toLowerCase(),_N=mb[0].toUpperCase()+mb.slice(1),Ii(TN,"on"+_N);var mb,TN,_N,ub;Ii(OL,"onAnimationEnd");Ii(zL,"onAnimationIteration");Ii(BL,"onAnimationStart");Ii("dblclick","onDoubleClick");Ii("focusin","onFocus");Ii("focusout","onBlur");Ii(cV,"onTransitionRun");Ii(dV,"onTransitionStart");Ii(uV,"onTransitionCancel");Ii(UL,"onTransitionEnd");Dd("onMouseEnter",["mouseout","mouseover"]);Dd("onMouseLeave",["mouseout","mouseover"]);Dd("onPointerEnter",["pointerout","pointerover"]);Dd("onPointerLeave",["pointerout","pointerover"]);Ps("onChange","change click focusin focusout input keydown keyup selectionchange".split(" "));Ps("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));Ps("onBeforeInput",["compositionend","keypress","textInput","paste"]);Ps("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));Ps("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));Ps("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var _h="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),JV=new Set("beforetoggle cancel close invalid load scroll scrollend toggle".split(" ").concat(_h));function C9(e,t){t=(t&4)!==0;for(var a=0;a<e.length;a++){var n=e[a],i=n.event;n=n.listeners;e:{var r=void 0;if(t)for(var l=n.length-1;0<=l;l--){var o=n[l],d=o.instance,h=o.currentTarget;if(o=o.listener,d!==r&&i.isPropagationStopped())break e;r=o,i.currentTarget=h;try{r(i)}catch(s){jb(s)}i.currentTarget=null,r=d}else for(l=0;l<n.length;l++){if(o=n[l],d=o.instance,h=o.currentTarget,o=o.listener,d!==r&&i.isPropagationStopped())break e;r=o,i.currentTarget=h;try{r(i)}catch(s){jb(s)}i.currentTarget=null,r=d}}}}function pe(e,t){var a=t[x7];a===void 0&&(a=t[x7]=new Set);var n=e+"__bubble";a.has(n)||(T9(t,e,2,!1),a.add(n))}function gE(e,t,a){var n=0;t&&(n|=4),T9(a,e,n,t)}var hb="_reactListening"+Math.random().toString(36).slice(2);function ES(e){if(!e[hb]){e[hb]=!0,gL.forEach(function(a){a!=="selectionchange"&&(JV.has(a)||gE(a,!1,e),gE(a,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[hb]||(t[hb]=!0,gE("selectionchange",!1,t))}}function T9(e,t,a,n){switch(K9(t)){case 2:var i=$X;break;case 8:i=VX;break;default:i=AS}a=i.bind(null,t,a,e),i=void 0,!OE||t!=="touchstart"&&t!=="touchmove"&&t!=="wheel"||(i=!0),n?i!==void 0?e.addEventListener(t,a,{capture:!0,passive:i}):e.addEventListener(t,a,!0):i!==void 0?e.addEventListener(t,a,{passive:i}):e.addEventListener(t,a,!1)}function bE(e,t,a,n,i){var r=n;if((t&1)===0&&(t&2)===0&&n!==null)e:for(;;){if(n===null)return;var l=n.tag;if(l===3||l===4){var o=n.stateNode.containerInfo;if(o===i)break;if(l===4)for(l=n.return;l!==null;){var d=l.tag;if((d===3||d===4)&&l.stateNode.containerInfo===i)return;l=l.return}for(;o!==null;){if(l=Ss(o),l===null)return;if(d=l.tag,d===5||d===6||d===26||d===27){n=r=l;continue e}o=o.parentNode}}n=n.return}CL(function(){var h=r,s=U2(a),c=[];e:{var u=PL.get(e);if(u!==void 0){var m=mv,p=e;switch(e){case"keypress":if(yb(a)===0)break e;case"keydown":case"keyup":m=P$;break;case"focusin":p="focus",m=Jw;break;case"focusout":p="blur",m=Jw;break;case"beforeblur":case"afterblur":m=Jw;break;case"click":if(a.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":m=M7;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":m=k$;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":m=G$;break;case OL:case zL:case BL:m=D$;break;case UL:m=V$;break;case"scroll":case"scrollend":m=T$;break;case"wheel":m=Z$;break;case"copy":case"cut":case"paste":m=N$;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":m=D7;break;case"submit":m=F$;break;case"toggle":case"beforetoggle":m=q$}var f=(t&4)!==0,y=!f&&(e==="scroll"||e==="scrollend"),g=f?u!==null?u+"Capture":null:u;f=[];for(var b=h,v;b!==null;){var x=b;if(v=x.stateNode,x=x.tag,x!==5&&x!==26&&x!==27||v===null||g===null||(x=vh(b,g),x!=null&&f.push(kh(b,x,v))),y)break;b=b.return}0<f.length&&(u=new m(u,p,null,a,s),c.push({event:u,listeners:f}))}}if((t&7)===0){e:{if(m=e==="mouseover"||e==="pointerover",u=e==="mouseout"||e==="pointerout",m&&a!==RE&&(p=a.relatedTarget||a.fromElement)&&(Ss(p)||p[Fd]))break e;(u||m)&&(p=s.window===s?s:(m=s.ownerDocument)?m.defaultView||m.parentWindow:window,u?(m=a.relatedTarget||a.toElement,u=h,m=m?Ss(m):null,m!==null&&(y=Lh(m),f=m.tag,m!==y||f!==5&&f!==27&&f!==6)&&(m=null)):(u=null,m=h),u!==m&&(f=M7,x="onMouseLeave",g="onMouseEnter",b="mouse",(e==="pointerout"||e==="pointerover")&&(f=D7,x="onPointerLeave",g="onPointerEnter",b="pointer"),y=u==null?p:th(u),v=m==null?p:th(m),p=new f(x,b+"leave",u,a,s),p.target=y,p.relatedTarget=v,x=null,Ss(s)===h&&(f=new f(g,b+"enter",m,a,s),f.target=v,f.relatedTarget=y,x=f),y=x,f=u&&m?EE(u,m,eX):null,u!==null&&kN(c,p,u,f,!1),m!==null&&y!==null&&kN(c,y,m,f,!0)))}e:{if(u=h?th(h):window,m=u.nodeName&&u.nodeName.toLowerCase(),m==="select"||m==="input"&&u.type==="file")var E=R7;else if(L7(u))if(DL)E=lV;else{E=iV;var S=nV}else m=u.nodeName,!m||m.toLowerCase()!=="input"||u.type!=="checkbox"&&u.type!=="radio"?h&&B2(h.elementType)&&(E=R7):E=rV;if(E&&(E=E(e,h))){AL(c,E,a,s);break e}S&&S(e,u,h)}switch(S=h?th(h):window,e){case"focusin":(L7(S)||S.contentEditable==="true")&&(md=S,BE=h,lh=null);break;case"focusout":lh=BE=md=null;break;case"mousedown":UE=!0;break;case"contextmenu":case"mouseup":case"dragend":UE=!1,U7(c,a,s);break;case"selectionchange":if(sV)break;case"keydown":case"keyup":U7(c,a,s)}var C;if(H2)e:{switch(e){case"compositionstart":var _="onCompositionStart";break e;case"compositionend":_="onCompositionEnd";break e;case"compositionupdate":_="onCompositionUpdate";break e}_=void 0}else ud?kL(e,a)&&(_="onCompositionEnd"):e==="keydown"&&a.keyCode===229&&(_="onCompositionStart");_&&(_L&&a.locale!=="ko"&&(ud||_!=="onCompositionStart"?_==="onCompositionEnd"&&ud&&(C=TL()):(Wl=s,P2="value"in Wl?Wl.value:Wl.textContent,ud=!0)),S=ov(h,_),0<S.length&&(_=new A7(_,e,null,a,s),c.push({event:_,listeners:S}),C?_.data=C:(C=ML(a),C!==null&&(_.data=C)))),(C=W$?J$(e,a):eV(e,a))&&(_=ov(h,"onBeforeInput"),0<_.length&&(S=new A7("onBeforeInput","beforeinput",null,a,s),c.push({event:S,listeners:_}),S.data=C)),WV(c,e,h,a,s)}C9(c,t)})}function kh(e,t,a){return{instance:e,listener:t,currentTarget:a}}function ov(e,t){for(var a=t+"Capture",n=[];e!==null;){var i=e,r=i.stateNode;if(i=i.tag,i!==5&&i!==26&&i!==27||r===null||(i=vh(e,a),i!=null&&n.unshift(kh(e,i,r)),i=vh(e,t),i!=null&&n.push(kh(e,i,r))),e.tag===3)return n;e=e.return}return[]}function eX(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5&&e.tag!==27);return e||null}function kN(e,t,a,n,i){for(var r=t._reactName,l=[];a!==null&&a!==n;){var o=a,d=o.alternate,h=o.stateNode;if(o=o.tag,d!==null&&d===n)break;o!==5&&o!==26&&o!==27||h===null||(d=h,i?(h=vh(a,r),h!=null&&l.unshift(kh(a,h,d))):i||(h=vh(a,r),h!=null&&l.push(kh(a,h,d)))),a=a.return}l.length!==0&&e.push({event:t,listeners:l})}var tX=/\r\n?/g,aX=/\u0000|\uFFFD/g;function MN(e){return(typeof e=="string"?e:""+e).replace(tX,`
|
|
9
|
+
`).replace(aX,"")}function _9(e,t){return t=MN(t),MN(e)===t}function Le(e,t,a,n,i,r){switch(a){case"children":if(typeof n=="string")t==="body"||t==="textarea"&&n===""||Id(e,n);else if(typeof n=="number"||typeof n=="bigint")t!=="body"&&Id(e,""+n);else return;break;case"className":Jg(e,"class",n);break;case"tabIndex":Jg(e,"tabindex",n);break;case"dir":case"role":case"viewBox":case"width":case"height":Jg(e,a,n);break;case"style":SL(e,n,r);return;case"data":if(t!=="object"){Jg(e,"data",n);break}case"src":case"href":if(n===""&&(t!=="a"||a!=="href")){e.removeAttribute(a);break}if(n==null||typeof n=="function"||typeof n=="symbol"||typeof n=="boolean"){e.removeAttribute(a);break}n=bb(n),e.setAttribute(a,n);break;case"action":case"formAction":if(typeof n=="function"){e.setAttribute(a,"javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')");break}else typeof r=="function"&&(a==="formAction"?(t!=="input"&&Le(e,t,"name",i.name,i,null),Le(e,t,"formEncType",i.formEncType,i,null),Le(e,t,"formMethod",i.formMethod,i,null),Le(e,t,"formTarget",i.formTarget,i,null)):(Le(e,t,"encType",i.encType,i,null),Le(e,t,"method",i.method,i,null),Le(e,t,"target",i.target,i,null)));if(n==null||typeof n=="symbol"||typeof n=="boolean"){e.removeAttribute(a);break}n=bb(n),e.setAttribute(a,n);break;case"onClick":n!=null&&(e.onclick=dr);return;case"onScroll":n!=null&&pe("scroll",e);return;case"onScrollEnd":n!=null&&pe("scrollend",e);return;case"dangerouslySetInnerHTML":if(n!=null){if(typeof n!="object"||!("__html"in n))throw Error(H(61));if(a=n.__html,a!=null){if(i.children!=null)throw Error(H(60));r?.__html!==a&&(e.innerHTML=a)}}break;case"multiple":e.multiple=n&&typeof n!="function"&&typeof n!="symbol";break;case"muted":e.muted=n&&typeof n!="function"&&typeof n!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(n==null||typeof n=="function"||typeof n=="boolean"||typeof n=="symbol"){e.removeAttribute("xlink:href");break}a=bb(n),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",a);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":n!=null&&typeof n!="function"&&typeof n!="symbol"?e.setAttribute(a,n):e.removeAttribute(a);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":case"credentialless":case"default":case"defer":case"disabled":case"disablePictureInPicture":case"disableRemotePlayback":case"formNoValidate":case"hidden":case"loop":case"noModule":case"noValidate":case"open":case"playsInline":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"itemScope":n&&typeof n!="function"&&typeof n!="symbol"?e.setAttribute(a,""):e.removeAttribute(a);break;case"capture":case"download":n===!0?e.setAttribute(a,""):n!==!1&&n!=null&&typeof n!="function"&&typeof n!="symbol"?e.setAttribute(a,n):e.removeAttribute(a);break;case"cols":case"rows":case"size":case"span":n!=null&&typeof n!="function"&&typeof n!="symbol"&&!isNaN(n)&&1<=n?e.setAttribute(a,n):e.removeAttribute(a);break;case"rowSpan":case"start":n==null||typeof n=="function"||typeof n=="symbol"||isNaN(n)?e.removeAttribute(a):e.setAttribute(a,n);break;case"popover":pe("beforetoggle",e),pe("toggle",e),gb(e,"popover",n);break;case"xlinkActuate":Hr(e,"http://www.w3.org/1999/xlink","xlink:actuate",n);break;case"xlinkArcrole":Hr(e,"http://www.w3.org/1999/xlink","xlink:arcrole",n);break;case"xlinkRole":Hr(e,"http://www.w3.org/1999/xlink","xlink:role",n);break;case"xlinkShow":Hr(e,"http://www.w3.org/1999/xlink","xlink:show",n);break;case"xlinkTitle":Hr(e,"http://www.w3.org/1999/xlink","xlink:title",n);break;case"xlinkType":Hr(e,"http://www.w3.org/1999/xlink","xlink:type",n);break;case"xmlBase":Hr(e,"http://www.w3.org/XML/1998/namespace","xml:base",n);break;case"xmlLang":Hr(e,"http://www.w3.org/XML/1998/namespace","xml:lang",n);break;case"xmlSpace":Hr(e,"http://www.w3.org/XML/1998/namespace","xml:space",n);break;case"is":gb(e,"is",n);break;case"innerText":case"textContent":return;default:if(!(2<a.length)||a[0]!=="o"&&a[0]!=="O"||a[1]!=="n"&&a[1]!=="N")a=S$.get(a)||a,gb(e,a,n);else return}Se=!0}function w2(e,t,a,n,i,r){switch(a){case"style":SL(e,n,r);return;case"dangerouslySetInnerHTML":if(n!=null){if(typeof n!="object"||!("__html"in n))throw Error(H(61));if(a=n.__html,a!=null){if(i.children!=null)throw Error(H(60));r?.__html!==a&&(e.innerHTML=a)}}break;case"children":if(typeof n=="string")Id(e,n);else if(typeof n=="number"||typeof n=="bigint")Id(e,""+n);else return;break;case"onScroll":n!=null&&pe("scroll",e);return;case"onScrollEnd":n!=null&&pe("scrollend",e);return;case"onClick":n!=null&&(e.onclick=dr);return;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"innerHTML":case"ref":return;case"innerText":case"textContent":return;default:if(!bL.hasOwnProperty(a))e:{if(a[0]==="o"&&a[1]==="n"&&(i=a.endsWith("Capture"),r=a.slice(2,i?a.length-7:void 0),t=e[nn]||null,t=t!=null?t[a]:null,typeof t=="function"&&e.removeEventListener(r,t,i),typeof n=="function")){typeof t!="function"&&t!==null&&(a in e?e[a]=null:e.hasAttribute(a)&&e.removeAttribute(a)),e.addEventListener(r,n,i);break e}Se=!0,a in e?e[a]=n:n===!0?e.setAttribute(a,""):gb(e,a,n)}return}Se=!0}function oa(e,t,a){switch(t){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"img":pe("error",e),pe("load",e);var n=!1,i=!1,r;for(r in a)if(a.hasOwnProperty(r)){var l=a[r];if(l!=null)switch(r){case"src":n=!0;break;case"srcSet":i=!0;break;case"children":case"dangerouslySetInnerHTML":throw Error(H(137,t));default:Le(e,t,r,l,a,null)}}i&&Le(e,t,"srcSet",a.srcSet,a,null),n&&Le(e,t,"src",a.src,a,null);return;case"input":pe("invalid",e);var o=r=l=i=null,d=null,h=null;for(n in a)if(a.hasOwnProperty(n)){var s=a[n];if(s!=null)switch(n){case"name":i=s;break;case"type":l=s;break;case"checked":d=s;break;case"defaultChecked":h=s;break;case"value":r=s;break;case"defaultValue":o=s;break;case"children":case"dangerouslySetInnerHTML":if(s!=null)throw Error(H(137,t));break;default:Le(e,t,n,s,a,null)}}xL(e,r,o,d,h,l,i,!1);return;case"select":pe("invalid",e),n=l=r=null;for(i in a)if(a.hasOwnProperty(i)&&(o=a[i],o!=null))switch(i){case"value":r=o;break;case"defaultValue":l=o;break;case"multiple":n=o;default:Le(e,t,i,o,a,null)}t=r,a=l,e.multiple=!!n,t!=null?xd(e,!!n,t,!1):a!=null&&xd(e,!!n,a,!0);return;case"textarea":pe("invalid",e),r=i=n=null;for(l in a)if(a.hasOwnProperty(l)&&(o=a[l],o!=null))switch(l){case"value":n=o;break;case"defaultValue":i=o;break;case"children":r=o;break;case"dangerouslySetInnerHTML":if(o!=null)throw Error(H(91));break;default:Le(e,t,l,o,a,null)}EL(e,n,i,r);return;case"option":for(d in a)a.hasOwnProperty(d)&&(n=a[d],n!=null)&&(d==="selected"?e.selected=n&&typeof n!="function"&&typeof n!="symbol":Le(e,t,d,n,a,null));return;case"dialog":pe("beforetoggle",e),pe("toggle",e),pe("cancel",e),pe("close",e);break;case"iframe":case"object":pe("load",e);break;case"video":case"audio":for(n=0;n<_h.length;n++)pe(_h[n],e);break;case"image":pe("error",e),pe("load",e);break;case"details":pe("toggle",e);break;case"embed":case"source":case"link":pe("error",e),pe("load",e);case"area":case"base":case"br":case"col":case"hr":case"keygen":case"meta":case"param":case"track":case"wbr":case"menuitem":for(h in a)if(a.hasOwnProperty(h)&&(n=a[h],n!=null))switch(h){case"children":case"dangerouslySetInnerHTML":throw Error(H(137,t));default:Le(e,t,h,n,a,null)}return;default:if(B2(t)){for(s in a)a.hasOwnProperty(s)&&(n=a[s],n!==void 0&&w2(e,t,s,n,a,void 0));return}}for(o in a)a.hasOwnProperty(o)&&(n=a[o],n!=null&&Le(e,t,o,n,a,null))}var nX={};function iX(e,t,a,n){switch(t){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"input":var i=null,r=null,l=null,o=null,d=null,h=null,s=null;for(m in a){var c=a[m];if(a.hasOwnProperty(m)&&c!=null)switch(m){case"checked":break;case"value":break;case"defaultValue":d=c;default:n.hasOwnProperty(m)||Le(e,t,m,null,n,c)}}for(var u in n){var m=n[u];if(c=a[u],n.hasOwnProperty(u)&&(m!=null||c!=null))switch(u){case"type":m!==c&&(Se=!0),r=m;break;case"name":m!==c&&(Se=!0),i=m;break;case"checked":m!==c&&(Se=!0),h=m;break;case"defaultChecked":m!==c&&(Se=!0),s=m;break;case"value":m!==c&&(Se=!0),l=m;break;case"defaultValue":m!==c&&(Se=!0),o=m;break;case"children":case"dangerouslySetInnerHTML":if(m!=null)throw Error(H(137,t));break;default:m!==c&&Le(e,t,u,m,n,c)}}LE(e,l,o,d,h,s,r,i);return;case"select":m=l=o=u=null;for(r in a)if(d=a[r],a.hasOwnProperty(r)&&d!=null)switch(r){case"value":break;case"multiple":m=d;default:n.hasOwnProperty(r)||Le(e,t,r,null,n,d)}for(i in n)if(r=n[i],d=a[i],n.hasOwnProperty(i)&&(r!=null||d!=null))switch(i){case"value":r!==d&&(Se=!0),u=r;break;case"defaultValue":r!==d&&(Se=!0),o=r;break;case"multiple":r!==d&&(Se=!0),l=r;default:r!==d&&Le(e,t,i,r,n,d)}t=o,a=l,n=m,u!=null?xd(e,!!a,u,!1):!!n!=!!a&&(t!=null?xd(e,!!a,t,!0):xd(e,!!a,a?[]:"",!1));return;case"textarea":m=u=null;for(o in a)if(i=a[o],a.hasOwnProperty(o)&&i!=null&&!n.hasOwnProperty(o))switch(o){case"value":break;case"children":break;default:Le(e,t,o,null,n,i)}for(l in n)if(i=n[l],r=a[l],n.hasOwnProperty(l)&&(i!=null||r!=null))switch(l){case"value":i!==r&&(Se=!0),u=i;break;case"defaultValue":i!==r&&(Se=!0),m=i;break;case"children":break;case"dangerouslySetInnerHTML":if(i!=null)throw Error(H(91));break;default:i!==r&&Le(e,t,l,i,n,r)}wL(e,u,m);return;case"option":for(var p in a)u=a[p],a.hasOwnProperty(p)&&u!=null&&!n.hasOwnProperty(p)&&(p==="selected"?e.selected=!1:Le(e,t,p,null,n,u));for(d in n)u=n[d],m=a[d],n.hasOwnProperty(d)&&u!==m&&(u!=null||m!=null)&&(d==="selected"?(u!==m&&(Se=!0),e.selected=u&&typeof u!="function"&&typeof u!="symbol"):Le(e,t,d,u,n,m));return;case"img":case"link":case"area":case"base":case"br":case"col":case"embed":case"hr":case"keygen":case"meta":case"param":case"source":case"track":case"wbr":case"menuitem":for(var f in a)u=a[f],a.hasOwnProperty(f)&&u!=null&&!n.hasOwnProperty(f)&&Le(e,t,f,null,n,u);for(h in n)if(u=n[h],m=a[h],n.hasOwnProperty(h)&&u!==m&&(u!=null||m!=null))switch(h){case"children":case"dangerouslySetInnerHTML":if(u!=null)throw Error(H(137,t));break;default:Le(e,t,h,u,n,m)}return;default:if(B2(t)){for(var y in a)u=a[y],a.hasOwnProperty(y)&&u!==void 0&&!n.hasOwnProperty(y)&&w2(e,t,y,void 0,n,u);for(s in n)u=n[s],m=a[s],!n.hasOwnProperty(s)||u===m||u===void 0&&m===void 0||w2(e,t,s,u,n,m);return}}for(var g in a)u=a[g],a.hasOwnProperty(g)&&u!=null&&!n.hasOwnProperty(g)&&Le(e,t,g,null,n,u);for(c in n)u=n[c],m=a[c],!n.hasOwnProperty(c)||u===m||u==null&&m==null||Le(e,t,c,u,n,m)}function AN(e){switch(e){case"css":case"script":case"font":case"img":case"image":case"input":case"link":return!0;default:return!1}}function rX(){if(typeof performance.getEntriesByType=="function"){for(var e=0,t=0,a=performance.getEntriesByType("resource"),n=0;n<a.length;n++){var i=a[n],r=i.transferSize,l=i.initiatorType,o=i.duration;if(r&&o&&AN(l)){for(l=0,o=i.responseEnd,n+=1;n<a.length;n++){var d=a[n],h=d.startTime;if(h>o)break;var s=d.transferSize,c=d.initiatorType;s&&AN(c)&&(d=d.responseEnd,l+=s*(d<o?1:(o-h)/(d-h)))}if(--n,t+=8*(r+l)/(i.duration/1e3),e++,10<e)break}}if(0<e)return t/e/1e6}return navigator.connection&&(e=navigator.connection.downlink,typeof e=="number")?e:5}var E2=null,S2=null;function Mh(e){return e.nodeType===9?e:e.ownerDocument}function DN(e){switch(e){case"http://www.w3.org/2000/svg":return 1;case"http://www.w3.org/1998/Math/MathML":return 2;default:return 0}}function k9(e,t){if(e===0)switch(t){case"svg":return 1;case"math":return 2;default:return 0}return e===1&&t==="foreignObject"?0:e}function M9(e,t,a,n){return a=Mh(a).createElement(e),a[na]=n,a[nn]=t,oa(a,e,t),Wt(a),a}function C2(e,t){return e==="textarea"||e==="noscript"||typeof t.children=="string"||typeof t.children=="number"||typeof t.children=="bigint"||typeof t.dangerouslySetInnerHTML=="object"&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var vE=null;function lX(){var e=window.event;return e&&e.type==="popstate"?e===vE?!1:(vE=e,!0):(vE=null,!1)}var SS=typeof setTimeout=="function"?setTimeout:void 0,oX=typeof clearTimeout=="function"?clearTimeout:void 0,IN=typeof Promise=="function"?Promise:void 0,NN=typeof requestAnimationFrame=="function"?requestAnimationFrame:SS,sX=typeof queueMicrotask=="function"?queueMicrotask:typeof IN<"u"?function(e){return IN.resolve(null).then(e).catch(cX)}:SS;function cX(e){setTimeout(function(){throw e})}function xo(e){return e==="head"}function LN(e,t){var a=t,n=0;do{var i=a.nextSibling;if(e.removeChild(a),i&&i.nodeType===8)if(a=i.data,a==="/$"||a==="/&"){if(n===0){e.removeChild(i),Hd(t);return}n--}else if(a==="$"||a==="$?"||a==="$~"||a==="$!"||a==="&")n++;else if(a==="html")xE(e.ownerDocument.documentElement);else if(a==="head"){a=e.ownerDocument.head,xE(a);for(var r=a.firstChild;r;){var l=r.nextSibling,o=r.nodeName;r[Bh]||o==="SCRIPT"||o==="STYLE"||o==="LINK"&&r.rel.toLowerCase()==="stylesheet"||a.removeChild(r),r=l}}else a==="body"&&xE(e.ownerDocument.body);a=i}while(a);Hd(t)}function RN(e,t){var a=e;e=0;do{var n=a.nextSibling;if(a.nodeType===1?t?(a._stashedDisplay=a.style.display,a.style.display="none"):(a.style.display=a._stashedDisplay||"",a.getAttribute("style")===""&&a.removeAttribute("style")):a.nodeType===3&&(t?(a._stashedText=a.nodeValue,a.nodeValue=""):a.nodeValue=a._stashedText||""),n&&n.nodeType===8)if(a=n.data,a==="/$"){if(e===0)break;e--}else a!=="$"&&a!=="$?"&&a!=="$~"&&a!=="$!"||e++;a=n}while(a)}function A9(e,t,a){if(t=CSS.escape(t)!==t?"r-"+btoa(t).replace(/=/g,""):t,e.style.viewTransitionName=t,a!=null&&(e.style.viewTransitionClass=a),a=getComputedStyle(e),a.display==="inline"){if(t=e.getClientRects(),t.length===1)var n=1;else for(var i=n=0;i<t.length;i++){var r=t[i];0<r.width&&0<r.height&&n++}n===1&&(e=e.style,e.display=t.length===1?"inline-block":"block",e.marginTop="-"+a.paddingTop,e.marginBottom="-"+a.paddingBottom)}}function D9(e,t){e=e.style,t=t.style;var a=t!=null?t.hasOwnProperty("viewTransitionName")?t.viewTransitionName:t.hasOwnProperty("view-transition-name")?t["view-transition-name"]:null:null;e.viewTransitionName=a==null||typeof a=="boolean"?"":(""+a).trim(),a=t!=null?t.hasOwnProperty("viewTransitionClass")?t.viewTransitionClass:t.hasOwnProperty("view-transition-class")?t["view-transition-class"]:null:null,e.viewTransitionClass=a==null||typeof a=="boolean"?"":(""+a).trim(),e.display==="inline-block"&&(t==null?e.display=e.margin="":(a=t.display,e.display=a==null||typeof a=="boolean"?"":a,a=t.margin,a!=null?e.margin=a:(a=t.hasOwnProperty("marginTop")?t.marginTop:t["margin-top"],e.marginTop=a==null||typeof a=="boolean"?"":a,t=t.hasOwnProperty("marginBottom")?t.marginBottom:t["margin-bottom"],e.marginBottom=t==null||typeof t=="boolean"?"":t)))}function I9(e,t,a){return a=a.ownerDocument.defaultView,{rect:e,abs:t.position==="absolute"||t.position==="fixed",clip:t.clipPath!=="none"||t.overflow!=="visible"||t.filter!=="none"||t.mask!=="none"||t.mask!=="none"||t.borderRadius!=="0px",view:0<=e.bottom&&0<=e.right&&e.top<=a.innerHeight&&e.left<=a.innerWidth}}function T2(e){var t=e.getBoundingClientRect(),a=getComputedStyle(e);return I9(t,a,e)}function dX(e){var t=e.getBoundingClientRect();t=new DOMRect(t.x+2e4,t.y+2e4,t.width,t.height);var a=getComputedStyle(e);return I9(t,a,e)}function uX(e){return e.documentElement.clientHeight}function mX(e){this.addEventListener("load",e),this.addEventListener("error",e)}function hX(e,t,a,n,i,r,l,o,d){var h=t.nodeType===9?t:t.ownerDocument;try{var s=h.startViewTransition({update:function(){var u=h.defaultView,m=u.navigation&&u.navigation.transition,p=h.fonts.status;n();var f=[];if(p==="loaded"&&(uX(h),h.fonts.status==="loading"&&f.push(h.fonts.ready)),p=f.length,e!==null)for(var y=e.suspenseyImages,g=0,b=0;b<y.length;b++){var v=y[b];if(!v.complete){var x=v.getBoundingClientRect();if(0<x.bottom&&0<x.right&&x.top<u.innerHeight&&x.left<u.innerWidth){if(g+=Y9(v),g>Nb){f.length=p;break}v=new Promise(mX.bind(v)),f.push(v)}}}if(0<f.length)return u=Promise.race([Promise.all(f),new Promise(function(E){return setTimeout(E,500)})]).then(i,i),(m?Promise.allSettled([m.finished,u]):u).then(r,r);if(i(),m)return m.finished.then(r,r);r()},types:a});h.__reactViewTransition=s;var c=[];return s.ready.then(function(){for(var u=h.documentElement.getAnimations({subtree:!0}),m=0;m<u.length;m++){var p=u[m],f=p.effect,y=f.pseudoElement;if(y!=null&&y.startsWith("::view-transition")){c.push(p),p=f.getKeyframes();for(var g=y=void 0,b=!0,v=0;v<p.length;v++){var x=p[v],E=x.width;if(y===void 0)y=E;else if(y!==E){b=!1;break}if(E=x.height,g===void 0)g=E;else if(g!==E){b=!1;break}delete x.width,delete x.height,x.transform==="none"&&delete x.transform}b&&y!==void 0&&g!==void 0&&(f.setKeyframes(p),b=getComputedStyle(f.target,f.pseudoElement),b.width!==y||b.height!==g)&&(b=p[0],b.width=y,b.height=g,b=p[p.length-1],b.width=y,b.height=g,f.setKeyframes(p))}}l()},function(u){h.__reactViewTransition===s&&(h.__reactViewTransition=null);try{typeof u=="object"&&u!==null&&u.name==="InvalidStateError"&&(u.message==="View transition was skipped because document visibility state is hidden."||u.message==="Skipping view transition because document visibility state has become hidden."||u.message==="Skipping view transition because viewport size changed."||u.message==="Transition was aborted because of invalid state")&&(u=null),u!==null&&d(u)}finally{n(),i(),l()}}),s.finished.finally(function(){for(var u=0;u<c.length;u++)c[u].cancel();h.__reactViewTransition===s&&(h.__reactViewTransition=null),o()}),s}catch{return n(),i(),l(),null}}function Cs(e,t){this._scope=document.documentElement,this._selector="::view-transition-"+e+"("+t+")"}Cs.prototype.animate=function(e,t){return t=typeof t=="number"?{duration:t}:Fe({},t),t.pseudoElement=this._selector,this._scope.animate(e,t)};Cs.prototype.getAnimations=function(){for(var e=this._scope,t=this._selector,a=e.getAnimations({subtree:!0}),n=[],i=0;i<a.length;i++){var r=a[i].effect;r!==null&&r.target===e&&r.pseudoElement===t&&n.push(a[i])}return n};Cs.prototype.getComputedStyle=function(){return getComputedStyle(this._scope,this._selector)};function N9(e){return{name:e,group:new Cs("group",e),imagePair:new Cs("image-pair",e),old:new Cs("old",e),new:new Cs("new",e)}}function Tn(e){this._fragmentFiber=e,this._observers=this._eventListeners=null}Tn.prototype.addEventListener=function(e,t,a){var n=null,i=null;if(!(a!=null&&typeof a!="boolean"&&(n=a.signal||null,n!==null&&n.aborted))){this._eventListeners===null&&(this._eventListeners=[]);var r=this._eventListeners;if(L9(r,e,t,a)===-1){var l=this,o=t;a!=null&&typeof a!="boolean"&&a.once===!0&&(o=function(d){l.removeEventListener(e,t,a),typeof t=="function"?t.call(this,d):t.handleEvent(d)}),n!==null&&(i=l.removeEventListener.bind(l,e,t,a),n.addEventListener("abort",i,{once:!0}),i=n.removeEventListener.bind(n,"abort",i)),n=Bd(a),r.push({type:e,listener:t,optionsOrUseCapture:a,attachedListener:o,cleanup:i}),an(this._fragmentFiber.child,!1,pX,e,o,n)}this._eventListeners=r}};function pX(e,t,a,n){return Pt(e).addEventListener(t,a,n),!1}Tn.prototype.removeEventListener=function(e,t,a){var n=this._eventListeners;if(n!==null&&(t=L9(n,e,t,a),t!==-1)){var i=n[t];a=i.attachedListener;var r=i.cleanup;i=Bd(i.optionsOrUseCapture),an(this._fragmentFiber.child,!1,fX,e,a,i),n.splice(t,1),r!==null&&r()}};function fX(e,t,a,n){return Pt(e).removeEventListener(t,a,n),!1}function Bd(e){return e!=null&&typeof e!="boolean"&&(e.once===!0||e.signal instanceof AbortSignal)?{capture:e.capture,passive:e.passive}:e}function ON(e){return e==null?"c=0":typeof e=="boolean"?"c="+(e?"1":"0"):"c="+(e.capture?"1":"0")}function L9(e,t,a,n){if(e.length===0)return-1;n=ON(n);for(var i=0;i<e.length;i++){var r=e[i];if(r.type===t&&r.listener===a&&ON(r.optionsOrUseCapture)===n)return i}return-1}Tn.prototype.dispatchEvent=function(e){var t=Us(this._fragmentFiber);if(t===null)return!0;t=Pt(t);var a=this._eventListeners;if(a!==null&&0<a.length||!e.bubbles){var n=t.nodeType===9?t.createComment(""):document.createTextNode("");if(a)for(var i=0;i<a.length;i++){var r=a[i];n.addEventListener(r.type,r.attachedListener,Bd(r.optionsOrUseCapture))}if(t.appendChild(n),e=n.dispatchEvent(e),a)for(i=0;i<a.length;i++)r=a[i],n.removeEventListener(r.type,r.attachedListener,Bd(r.optionsOrUseCapture));return t.removeChild(n),e}return t.dispatchEvent(e)};Tn.prototype.focus=function(e){an(this._fragmentFiber.child,!0,R9,e,void 0,void 0)};function R9(e,t){return e.tag===6?!1:(e=Pt(e),kX(e,t))}Tn.prototype.focusLast=function(e){var t=[];an(this._fragmentFiber.child,!0,CS,t,void 0,void 0);for(var a=t.length-1;0<=a&&!R9(t[a],e);a--);};function CS(e,t){return t.push(e),!1}Tn.prototype.blur=function(){var e=Us(this._fragmentFiber);e!==null&&(e=Pt(e),e=Mh(e).activeElement,e!==null&&an(this._fragmentFiber.child,!1,gX,e,void 0,void 0))};function gX(e,t){return e.tag===6?!1:(e=Pt(e),e===t||e.contains(t)?(t.blur(),!0):!1)}Tn.prototype.observeUsing=function(e){this._observers===null&&(this._observers=new Set),this._observers.add(e),an(this._fragmentFiber.child,!1,bX,e,void 0,void 0)};function bX(e,t){return e.tag===6||(e=Pt(e),t.observe(e)),!1}Tn.prototype.unobserveUsing=function(e){var t=this._observers;if(t!==null&&t.has(e)){t.delete(e),an(this._fragmentFiber.child,!1,vX,e,void 0,void 0);for(var a=t=0;a<Ai.length;a++){var n=Ai[a];n.fragmentInstance===this&&n.observer===e?e.unobserve(n.instance):Ai[t++]=n}Ai.length=t}};function vX(e,t){return e.tag===6||(e=Pt(e),t.unobserve(e)),!1}var Ai=[],yE=!1;function yX(e,t,a){Ai.push({fragmentInstance:e,observer:t,instance:a}),yE||(yE=!0,MX(function(){yE=!1;var n=Ai;Ai=[];for(var i=0;i<n.length;i++){var r=n[i];r.observer.unobserve(r.instance)}}))}Tn.prototype.getClientRects=function(){var e=[];return an(this._fragmentFiber.child,!1,xX,e,void 0,void 0),e};function xX(e,t){if(e.tag===6){e=e.stateNode;var a=e.ownerDocument.createRange();a.selectNodeContents(e),t.push.apply(t,a.getClientRects())}else e=Pt(e),t.push.apply(t,e.getClientRects());return!1}Tn.prototype.getRootNode=function(e){var t=Us(this._fragmentFiber);return t===null?this:Pt(t).getRootNode(e)};Tn.prototype.compareDocumentPosition=function(e){var t=Us(this._fragmentFiber);if(t===null)return Node.DOCUMENT_POSITION_DISCONNECTED;var a=[];an(this._fragmentFiber.child,!1,CS,a,void 0,void 0);var n=Pt(t);if(a.length===0){if(a=n,p7(this._fragmentFiber)){e:{for(t=this._fragmentFiber.return;t!==null;){if(t.tag===4){t=t.stateNode.containerInfo;break e}if(t.tag===3||t.tag===5||t.tag===27)break;t=t.return}t=null}t!=null&&(a=t)}t=this._fragmentFiber;var i=n=a.compareDocumentPosition(e);return a===e?i=Node.DOCUMENT_POSITION_CONTAINS:n&Node.DOCUMENT_POSITION_CONTAINED_BY&&(a=aL(t)[1],a===null?i=Node.DOCUMENT_POSITION_PRECEDING:(e=Pt(a).compareDocumentPosition(e),i=e===0||e&Node.DOCUMENT_POSITION_FOLLOWING?Node.DOCUMENT_POSITION_FOLLOWING:Node.DOCUMENT_POSITION_PRECEDING)),i|=Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC}t=Pt(a[0]),i=Pt(a[a.length-1]);var r=p7(this._fragmentFiber)?t.parentElement:n;if(r==null)return Node.DOCUMENT_POSITION_DISCONNECTED;n=r.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_CONTAINED_BY,r=r.compareDocumentPosition(i)&Node.DOCUMENT_POSITION_CONTAINED_BY;var l=t.compareDocumentPosition(e),o=i.compareDocumentPosition(e),d=l&Node.DOCUMENT_POSITION_CONTAINED_BY||o&Node.DOCUMENT_POSITION_CONTAINED_BY;return o=n&&r&&l&Node.DOCUMENT_POSITION_FOLLOWING&&o&Node.DOCUMENT_POSITION_PRECEDING,t=n&&t===e||r&&i===e||d||o?Node.DOCUMENT_POSITION_CONTAINED_BY:!n&&t===e||!r&&i===e?Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC:l,t&Node.DOCUMENT_POSITION_DISCONNECTED||t&Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC||wX(t,this._fragmentFiber,a[0],a[a.length-1],e)?t:Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC};function wX(e,t,a,n,i){var r=Ss(i);if(e&Node.DOCUMENT_POSITION_CONTAINED_BY){if(a=!!r)e:{for(;r!==null;){if(r.tag===7&&(r===t||r.alternate===t)){a=!0;break e}r=r.return}a=!1}return a}if(e&Node.DOCUMENT_POSITION_CONTAINS){if(r===null)return r=i.ownerDocument,i===r||i===r.documentElement||i===r.body;e:{for(r=t,t=Us(t);r!==null;){if(!(r.tag!==5&&r.tag!==3&&r.tag!==27||r!==t&&r.alternate!==t)){r=!0;break e}r=r.return}r=!1}return r}return e&Node.DOCUMENT_POSITION_PRECEDING?((t=!!r)&&!(t=r===a)&&(t=EE(a,r,f7),t===null?t=!1:(an(t,!0,QG,r,a),r=od,od=null,t=r!==null)),t):e&Node.DOCUMENT_POSITION_FOLLOWING?((t=!!r)&&!(t=r===n)&&(t=EE(n,r,f7),t===null?t=!1:(an(t,!0,WG,r,n),r=od,wE=od=null,t=r!==null)),t):!1}function zN(e,t){var a=e.ownerDocument.createRange();a.selectNodeContents(e),e=a.getBoundingClientRect(),window.scrollTo(window.scrollX+e.left,t?window.scrollY+e.top:window.scrollY+e.bottom-window.innerHeight)}Tn.prototype.scrollIntoView=function(e){if(typeof e=="object")throw Error(H(566));var t=[];an(this._fragmentFiber.child,!1,CS,t,void 0,void 0);var a=e!==!1;if(t.length===0){var n=aL(this._fragmentFiber);if(n=a?n[1]||n[0]||Us(this._fragmentFiber):n[0]||n[1],n===null)return;if(n.tag===6){e=Pt(n),zN(e,a);return}if(n=Pt(n),n.nodeType!==9){if(n.nodeType===11){a="host"in n?n.host:null,a!==null&&a.scrollIntoView(e);return}n.scrollIntoView(e)}}for(n=a?t.length-1:0;n!==(a?-1:t.length);){var i=t[n];i.tag===6?(i=Pt(i),zN(i,a)):Pt(i).scrollIntoView(e),n+=a?-1:1}};function EX(e,t){return e=Pt(e),O9(e,t),!1}function O9(e,t){e.reactFragments==null&&(e.reactFragments=new Set),e.reactFragments.add(t)}function z9(e,t){var a=t._eventListeners;if(a!==null)for(var n=0;n<a.length;n++){var i=a[n];e.addEventListener(i.type,i.attachedListener,Bd(i.optionsOrUseCapture))}e.nodeType!==3&&(a=t._observers,a!==null&&a.forEach(function(r){for(var l=0,o=0;o<Ai.length;o++){var d=Ai[o];(d.fragmentInstance!==t||d.observer!==r||d.instance!==e)&&(Ai[l++]=d)}Ai.length=l,r.observe(e)}),O9(e,t))}function SX(e,t){var a=t._eventListeners;if(a!==null)for(var n=0;n<a.length;n++){var i=a[n];e.removeEventListener(i.type,i.attachedListener,Bd(i.optionsOrUseCapture))}e.nodeType!==3&&(a=t._observers,a!==null&&a.forEach(function(r){typeof r.rootMargin=="string"?yX(t,r,e):r.unobserve(e)}),e.reactFragments!=null&&e.reactFragments.delete(t))}function _2(e){var t=e.firstChild;for(t&&t.nodeType===10&&(t=t.nextSibling);t;){var a=t;switch(t=t.nextSibling,a.nodeName){case"HTML":case"HEAD":case"BODY":_2(a),uv(a);continue;case"SCRIPT":case"STYLE":continue;case"LINK":if(a.rel.toLowerCase()==="stylesheet")continue}e.removeChild(a)}}function CX(e,t,a,n){for(;e.nodeType===1;){var i=a;if(e.nodeName.toLowerCase()!==t.toLowerCase()){if(!n&&(e.nodeName!=="INPUT"||e.type!=="hidden"))break}else if(n){if(!e[Bh])switch(t){case"meta":if(!e.hasAttribute("itemprop"))break;return e;case"link":if(r=e.getAttribute("rel"),r==="stylesheet"&&e.hasAttribute("data-precedence"))break;if(r!==i.rel||e.getAttribute("href")!==(i.href==null||i.href===""?null:i.href)||e.getAttribute("crossorigin")!==(i.crossOrigin==null?null:i.crossOrigin)||e.getAttribute("title")!==(i.title==null?null:i.title))break;return e;case"style":if(e.hasAttribute("data-precedence"))break;return e;case"script":if(r=e.getAttribute("src"),(r!==(i.src==null?null:i.src)||e.getAttribute("type")!==(i.type==null?null:i.type)||e.getAttribute("crossorigin")!==(i.crossOrigin==null?null:i.crossOrigin))&&r&&e.hasAttribute("async")&&!e.hasAttribute("itemprop"))break;return e;default:return e}}else if(t==="input"&&e.type==="hidden"){var r=i.name==null?null:""+i.name;if(i.type==="hidden"&&e.getAttribute("name")===r)return e}else return e;if(e=ei(e.nextSibling),e===null)break}return null}function TX(e,t,a){if(t==="")return null;for(;e.nodeType!==3;)if((e.nodeType!==1||e.nodeName!=="INPUT"||e.type!=="hidden")&&!a||(e=ei(e.nextSibling),e===null))return null;return e}function B9(e,t){for(;e.nodeType!==8;)if((e.nodeType!==1||e.nodeName!=="INPUT"||e.type!=="hidden")&&!t||(e=ei(e.nextSibling),e===null))return null;return e}function k2(e){return e.data==="$?"||e.data==="$~"}function TS(e){return e.data==="$!"||e.data==="$?"&&e.ownerDocument.readyState!=="loading"}function _X(e,t){var a=e.ownerDocument;if(e.data==="$~")e._reactRetry=t;else if(e.data!=="$?"||a.readyState!=="loading")t();else{var n=function(){t(),a.removeEventListener("DOMContentLoaded",n)};a.addEventListener("DOMContentLoaded",n),e._reactRetry=n}}function ei(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t==="$"||t==="$!"||t==="$?"||t==="$~"||t==="&"||t==="F!"||t==="F")break;if(t==="/$"||t==="/&")return null}}return e}var M2=null;function BN(e){e=e.nextSibling;for(var t=0;e;){if(e.nodeType===8){var a=e.data;if(a==="/$"||a==="/&"){if(t===0)return ei(e.nextSibling);t--}else a!=="$"&&a!=="$!"&&a!=="$?"&&a!=="$~"&&a!=="&"||t++}e=e.nextSibling}return null}function UN(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var a=e.data;if(a==="$"||a==="$!"||a==="$?"||a==="$~"||a==="&"){if(t===0)return e;t--}else a!=="/$"&&a!=="/&"||t++}e=e.previousSibling}return null}function kX(e,t){function a(){n=!0}if(e.ownerDocument.activeElement===e)return!0;var n=!1;try{e.ownerDocument.addEventListener("focus",a,!0),(e.focus||HTMLElement.prototype.focus).call(e,t)}finally{e.ownerDocument.removeEventListener("focus",a,!0)}return n}function MX(e){NN(function(){NN(function(t){return e(t)})})}function U9(e,t,a){switch(t=Mh(a),e){case"html":if(e=t.documentElement,!e)throw Error(H(452));return e;case"head":if(e=t.head,!e)throw Error(H(453));return e;case"body":if(e=t.body,!e)throw Error(H(454));return e;default:throw Error(H(451))}}function P9(e,t,a){for(var n in a){var i=a[n];a.hasOwnProperty(n)&&i!=null&&Le(e,t,n,null,nX,i)}a.dangerouslySetInnerHTML!=null&&(e.textContent=""),e.onclick===dr&&(e.onclick=null),uv(e)}function xE(e){for(var t=e.attributes;t.length;)e.removeAttributeNode(t[0]);uv(e)}var ti=new Map,PN=new Set;function Ah(e){if(typeof e.getRootNode=="function"){var t=e.getRootNode();if(t.nodeType===9||t.nodeType===11)return t}return e.nodeType===9?e:e.ownerDocument}var tl=_e.d;_e.d={f:AX,r:DX,D:IX,C:NX,L:LX,m:RX,X:zX,S:OX,M:BX};function AX(){var e=tl.f(),t=Tv();return e||t}function DX(e){var t=Yd(e);t!==null&&t.tag===5&&t.type==="form"?SR(t):tl.r(e)}var Xd=typeof document>"u"?null:document;function j9(e,t,a){var n=Xd;if(n&&typeof t=="string"&&t){var i=Qn(t);i='link[rel="'+e+'"][href="'+i+'"]',typeof a=="string"&&(i+='[crossorigin="'+a+'"]'),PN.has(i)||(PN.add(i),e={rel:e,crossOrigin:a,href:t},n.querySelector(i)===null&&(t=n.createElement("link"),oa(t,"link",e),Wt(t),n.head.appendChild(t)))}}function IX(e){tl.D(e),j9("dns-prefetch",e,null)}function NX(e,t){tl.C(e,t),j9("preconnect",e,t)}function LX(e,t,a){tl.L(e,t,a);var n=Xd;if(n&&e&&t){var i='link[rel="preload"][as="'+Qn(t)+'"]';t==="image"&&a&&a.imageSrcSet?(i+='[imagesrcset="'+Qn(a.imageSrcSet)+'"]',typeof a.imageSizes=="string"&&(i+='[imagesizes="'+Qn(a.imageSizes)+'"]')):i+='[href="'+Qn(e)+'"]';var r=i;switch(t){case"style":r=Ud(e);break;case"script":r=Zd(e)}if(!(ti.has(r)||(e=Fe({rel:"preload",href:t==="image"&&a&&a.imageSrcSet?void 0:e,as:t},a),ti.set(r,e),n.querySelector(i)!==null||t==="style"&&n.querySelector(Yh(r))||t==="script"&&n.querySelector(Gh(r))))){var l=n.createElement("link");oa(l,"link",e),t==="style"&&(l[Pb]=!0,l.onload=l.onerror=function(){fL(l)}),Wt(l),n.head.appendChild(l)}}}function RX(e,t){tl.m(e,t);var a=Xd;if(a&&e){var n=t&&typeof t.as=="string"?t.as:"script",i='link[rel="modulepreload"][as="'+Qn(n)+'"][href="'+Qn(e)+'"]',r=i;switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":r=Zd(e)}if(!ti.has(r)&&(e=Fe({rel:"modulepreload",href:e},t),ti.set(r,e),a.querySelector(i)===null)){switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(a.querySelector(Gh(r)))return}n=a.createElement("link"),oa(n,"link",e),Wt(n),a.head.appendChild(n)}}}function OX(e,t,a){tl.S(e,t,a);var n=Xd;if(n&&e){var i=yd(n).hoistableStyles,r=Ud(e);t=t||"default";var l=i.get(r);if(!l){var o={loading:0,preload:null};if(l=n.querySelector(Yh(r)))o.loading=5;else{e=Fe({rel:"stylesheet",href:e,"data-precedence":t},a),(a=ti.get(r))&&_S(e,a);var d=l=n.createElement("link");Wt(d),oa(d,"link",e),d._p=new Promise(function(h,s){d.onload=h,d.onerror=s}),d.addEventListener("load",function(){o.loading|=1}),d.addEventListener("error",function(){o.loading|=2}),o.loading|=4,Db(l,t,n)}l={type:"stylesheet",instance:l,count:1,state:o},i.set(r,l)}}}function zX(e,t){tl.X(e,t);var a=Xd;if(a&&e){var n=yd(a).hoistableScripts,i=Zd(e),r=n.get(i);r||(r=a.querySelector(Gh(i)),r||(e=Fe({src:e,async:!0},t),(t=ti.get(i))&&kS(e,t),r=a.createElement("script"),Wt(r),oa(r,"link",e),a.head.appendChild(r)),r={type:"script",instance:r,count:1,state:null},n.set(i,r))}}function BX(e,t){tl.M(e,t);var a=Xd;if(a&&e){var n=yd(a).hoistableScripts,i=Zd(e),r=n.get(i);r||(r=a.querySelector(Gh(i)),r||(e=Fe({src:e,async:!0,type:"module"},t),(t=ti.get(i))&&kS(e,t),r=a.createElement("script"),Wt(r),oa(r,"link",e),a.head.appendChild(r)),r={type:"script",instance:r,count:1,state:null},n.set(i,r))}}function jN(e,t,a,n){var i=(i=no.current)?Ah(i):null;if(!i)throw Error(H(446));switch(e){case"meta":case"title":return null;case"style":return typeof a.precedence=="string"&&typeof a.href=="string"?(a=Ud(a.href),t=yd(i).hoistableStyles,n=t.get(a),n||(n={type:"style",instance:null,count:0,state:null},t.set(a,n)),n):{type:"void",instance:null,count:0,state:null};case"link":if(a.rel==="stylesheet"&&typeof a.href=="string"&&typeof a.precedence=="string"){e=Ud(a.href);var r=yd(i).hoistableStyles,l=r.get(e);if(l||(i=i.ownerDocument||i,l={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},r.set(e,l),(r=i.querySelector(Yh(e)))?r._p||(l.instance=r,l.state.loading=5):(r=ti.get(e),r||(r={rel:"preload",as:"style",href:a.href,crossOrigin:a.crossOrigin,integrity:a.integrity,media:a.media,hrefLang:a.hrefLang,referrerPolicy:a.referrerPolicy},ti.set(e,r)),UX(i,e,r,l.state))),t&&n===null)throw Error(H(528,""));return l}if(t&&n!==null)throw Error(H(529,""));return null;case"script":return t=a.async,a=a.src,typeof a=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(a=Zd(a),t=yd(i).hoistableScripts,n=t.get(a),n||(n={type:"script",instance:null,count:0,state:null},t.set(a,n)),n):{type:"void",instance:null,count:0,state:null};default:throw Error(H(444,e))}}function Ud(e){return'href="'+Qn(e)+'"'}function Yh(e){return'link[rel="stylesheet"]['+e+"]"}function H9(e){return Fe({},e,{"data-precedence":e.precedence,precedence:null})}function UX(e,t,a,n){if(t=e.querySelector('link[rel="preload"][as="style"]['+t+"]")){if(t[Pb]!==!0){n.loading=1;return}}else t=e.createElement("link"),t[Pb]=!0,t.onload=t.onerror=fL.bind(null,t),oa(t,"link",a),Wt(t),e.head.appendChild(t);n.preload=t,t.addEventListener("load",function(){return n.loading|=1}),t.addEventListener("error",function(){return n.loading|=2})}function Zd(e){return'[src="'+Qn(e)+'"]'}function Gh(e){return"script[async]"+e}function HN(e,t,a){if(t.count++,t.instance===null)switch(t.type){case"style":var n=e.querySelector('style[data-href~="'+Qn(a.href)+'"]');if(n)return t.instance=n,Wt(n),n;var i=Fe({},a,{"data-href":a.href,"data-precedence":a.precedence,href:null,precedence:null});return n=(e.ownerDocument||e).createElement("style"),Wt(n),oa(n,"style",i),Db(n,a.precedence,e),t.instance=n;case"stylesheet":i=Ud(a.href);var r=e.querySelector(Yh(i));if(r)return t.state.loading|=4,t.instance=r,Wt(r),r;n=H9(a),(i=ti.get(i))&&_S(n,i),r=(e.ownerDocument||e).createElement("link"),Wt(r);var l=r;return l._p=new Promise(function(o,d){l.onload=o,l.onerror=d}),oa(r,"link",n),t.state.loading|=4,Db(r,a.precedence,e),t.instance=r;case"script":return r=Zd(a.src),(i=e.querySelector(Gh(r)))?(t.instance=i,Wt(i),i):(n=a,(i=ti.get(r))&&(n=Fe({},a),kS(n,i)),e=e.ownerDocument||e,i=e.createElement("script"),Wt(i),oa(i,"link",n),e.head.appendChild(i),t.instance=i);case"void":return null;default:throw Error(H(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(n=t.instance,t.state.loading|=4,Db(n,a.precedence,e));return t.instance}function Db(e,t,a){for(var n=a.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),i=n.length?n[n.length-1]:null,r=i,l=0;l<n.length;l++){var o=n[l];if(o.dataset.precedence===t)r=o;else if(r!==i)break}r?r.parentNode.insertBefore(e,r.nextSibling):(t=a.nodeType===9?a.head:a,t.insertBefore(e,t.firstChild))}function _S(e,t){e.crossOrigin==null&&(e.crossOrigin=t.crossOrigin),e.referrerPolicy==null&&(e.referrerPolicy=t.referrerPolicy),e.title==null&&(e.title=t.title)}function kS(e,t){e.crossOrigin==null&&(e.crossOrigin=t.crossOrigin),e.referrerPolicy==null&&(e.referrerPolicy=t.referrerPolicy),e.integrity==null&&(e.integrity=t.integrity)}var Ib=null;function FN(e,t,a){if(Ib===null){var n=new Map,i=Ib=new Map;i.set(a,n)}else i=Ib,n=i.get(a),n||(n=new Map,i.set(a,n));if(n.has(e))return n;for(n.set(e,null),a=a.getElementsByTagName(e),i=0;i<a.length;i++){var r=a[i];if(!(r[Bh]||r[na]||e==="link"&&r.getAttribute("rel")==="stylesheet")&&r.namespaceURI!=="http://www.w3.org/2000/svg"){var l=r.getAttribute(t)||"";l=e+l;var o=n.get(l);o?o.push(r):n.set(l,[r])}}return n}function A2(e,t,a){e=e.ownerDocument||e,e.head.insertBefore(a,t==="title"?e.querySelector("head > title"):null)}function PX(e,t,a){if(a===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;return t.rel==="stylesheet"?(e=t.disabled,typeof t.precedence=="string"&&e==null):!0;case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function YN(e,t){return e==="img"&&t.src!=null&&t.src!==""&&t.onLoad==null&&t.loading!=="lazy"}function F9(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function Y9(e){return(e.width||100)*(e.height||100)*(typeof devicePixelRatio=="number"?devicePixelRatio:1)*.25}function GN(e,t){typeof t.decode=="function"&&(e.imgCount++,t.complete||(e.imgBytes+=Y9(t),e.suspenseyImages.push(t)),e=FX.bind(e),t.decode().then(e,e))}function jX(e,t,a,n){if(a.type==="stylesheet"&&(typeof n.media!="string"||matchMedia(n.media).matches!==!1)&&(a.state.loading&4)===0){if(a.instance===null){var i=Ud(n.href),r=t.querySelector(Yh(i));if(r){t=r._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=Dh.bind(e),t.then(e,e)),a.state.loading|=4,a.instance=r,Wt(r);return}r=t.ownerDocument||t,n=H9(n),(i=ti.get(i))&&_S(n,i),r=r.createElement("link"),Wt(r);var l=r;l._p=new Promise(function(o,d){l.onload=o,l.onerror=d}),oa(r,"link",n),a.instance=r}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(a,t),(t=a.state.preload)&&(a.state.loading&3)===0&&(e.count++,a=Dh.bind(e),t.addEventListener("load",a),t.addEventListener("error",a))}}var Nb=0;function HX(e,t){return e.stylesheets&&e.count===0&&Lb(e,e.stylesheets),0<e.count||0<e.imgCount?function(a){var n=setTimeout(function(){if(e.stylesheets&&Lb(e,e.stylesheets),e.unsuspend){var r=e.unsuspend;e.unsuspend=null,r()}},6e4+t);0<e.imgBytes&&Nb===0&&(Nb=62500*rX());var i=setTimeout(function(){if(e.waitingForImages=!1,e.count===0&&(e.stylesheets&&Lb(e,e.stylesheets),e.unsuspend)){var r=e.unsuspend;e.unsuspend=null,r()}},(e.imgBytes>Nb?50:800)+t);return e.unsuspend=a,function(){e.unsuspend=null,clearTimeout(n),clearTimeout(i)}}:null}function G9(e){if(e.count===0&&(e.imgCount===0||!e.waitingForImages)){if(e.stylesheets)Lb(e,e.stylesheets);else if(e.unsuspend){var t=e.unsuspend;e.unsuspend=null,t()}}}function Dh(){this.count--,G9(this)}function FX(){this.imgCount--,G9(this)}var sv=null;function Lb(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,sv=new Map,t.forEach(YX,e),sv=null,Dh.call(e))}function YX(e,t){if(!(t.state.loading&4)){var a=sv.get(e);if(a)var n=a.get(null);else{a=new Map,sv.set(e,a);for(var i=e.querySelectorAll("link[data-precedence],style[data-precedence]"),r=0;r<i.length;r++){var l=i[r];(l.nodeName==="LINK"||l.getAttribute("media")!=="not all")&&(a.set(l.dataset.precedence,l),n=l)}n&&a.set(null,n)}i=t.instance,l=i.getAttribute("data-precedence"),r=a.get(l)||n,r===n&&a.set(null,i),a.set(l,i),this.count++,n=Dh.bind(this),i.addEventListener("load",n),i.addEventListener("error",n),r?r.parentNode.insertBefore(i,r.nextSibling):(e=e.nodeType===9?e.head:e,e.insertBefore(i,e.firstChild)),t.state.loading|=4}}var Pd={$$typeof:cr,Provider:null,Consumer:null,_currentValue:Ts,_currentValue2:Ts,_threadCount:0};function GX(e,t,a,n,i,r,l,o,d){this.tag=1,this.containerInfo=e,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=Zw(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Zw(0),this.hiddenUpdates=Zw(null),this.identifierPrefix=n,this.onUncaughtError=i,this.onCaughtError=r,this.onRecoverableError=l,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=d,this.transitionTypes=null,this.incompleteTransitions=new Map}function $9(e,t,a,n,i,r,l,o,d,h,s,c){return e=new GX(e,t,a,l,d,h,s,c,o),t=1,r===!0&&(t|=24),r=en(3,null,null,t),e.current=r,r.stateNode=e,t=X2(),t.refCount++,e.pooledCache=t,t.refCount++,r.memoizedState={element:n,isDehydrated:a,cache:t},q2(r),e}function V9(e){return e?(e=fd,e):fd}function X9(e,t,a,n,i,r){i=V9(i),n.context===null?n.context=i:n.pendingContext=i,n=ro(t),n.payload={element:a},r=r===void 0?null:r,r!==null&&(n.callback=r),a=lo(e,n,t),a!==null&&(tn(a,e,t),sh(a,e,t))}function $N(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var a=e.retryLane;e.retryLane=a!==0&&a<t?a:t}}function MS(e,t){$N(e,t),(e=e.alternate)&&$N(e,t)}function Z9(e){if(e.tag===13||e.tag===31){var t=Hs(e,67108864);t!==null&&tn(t,e,67108864),MS(e,67108864)}}function VN(e){if(e.tag===13||e.tag===31){var t=Sn();t=O2(t);var a=Hs(e,t);a!==null&&tn(a,e,t),MS(e,t)}}var jd=!0;function $X(e,t,a,n){var i=ie.T;ie.T=null;var r=_e.p;try{_e.p=2,AS(e,t,a,n)}finally{_e.p=r,ie.T=i}}function VX(e,t,a,n){var i=ie.T;ie.T=null;var r=_e.p;try{_e.p=8,AS(e,t,a,n)}finally{_e.p=r,ie.T=i}}function AS(e,t,a,n){if(jd){var i=D2(n);if(i===null)bE(e,t,n,cv,a),XN(e,n);else if(ZX(i,e,t,a,n))n.stopPropagation();else if(XN(e,n),t&4&&-1<XX.indexOf(e)){for(;i!==null;){var r=Yd(i);if(r!==null)switch(r.tag){case 3:if(r=r.stateNode,r.current.memoizedState.isDehydrated){var l=xs(r.pendingLanes);if(l!==0){var o=r;for(o.pendingLanes|=2,o.entangledLanes|=2;l;){var d=1<<31-En(l);o.entanglements[1]|=d,l&=~d}br(r),(Te&6)===0&&(nv=xn()+500,Fh(0,!1))}}break;case 31:case 13:o=Hs(r,2),o!==null&&tn(o,r,2),Tv(),MS(r,2)}if(r=D2(n),r===null&&bE(e,t,n,cv,a),r===i)break;i=r}i!==null&&n.stopPropagation()}else bE(e,t,n,null,a)}}function D2(e){return e=U2(e),DS(e)}var cv=null;function DS(e){if(cv=null,e=Ss(e),e!==null){var t=Lh(e);if(t===null)e=null;else{var a=t.tag;if(a===13){if(e=JN(t),e!==null)return e;e=null}else if(a===31){if(e=eL(t),e!==null)return e;e=null}else if(a===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null)}}return cv=e,null}function K9(e){switch(e){case"beforetoggle":case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"seeked":case"submit":case"toggle":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"fullscreenerror":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 2;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"resize":case"scroll":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 8;case"message":switch(o$()){case lL:return 2;case oL:return 8;case Ub:case s$:return 32;case sL:return 268435456;default:return 32}default:return 32}}var I2=!1,uo=null,mo=null,ho=null,Ih=new Map,Nh=new Map,ql=[],XX="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset".split(" ");function XN(e,t){switch(e){case"focusin":case"focusout":uo=null;break;case"dragenter":case"dragleave":mo=null;break;case"mouseover":case"mouseout":ho=null;break;case"pointerover":case"pointerout":Ih.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":Nh.delete(t.pointerId)}}function Qm(e,t,a,n,i,r){return e===null||e.nativeEvent!==r?(e={blockedOn:t,domEventName:a,eventSystemFlags:n,nativeEvent:r,targetContainers:[i]},t!==null&&(t=Yd(t),t!==null&&Z9(t)),e):(e.eventSystemFlags|=n,t=e.targetContainers,i!==null&&t.indexOf(i)===-1&&t.push(i),e)}function ZX(e,t,a,n,i){switch(t){case"focusin":return uo=Qm(uo,e,t,a,n,i),!0;case"dragenter":return mo=Qm(mo,e,t,a,n,i),!0;case"mouseover":return ho=Qm(ho,e,t,a,n,i),!0;case"pointerover":var r=i.pointerId;return Ih.set(r,Qm(Ih.get(r)||null,e,t,a,n,i)),!0;case"gotpointercapture":return r=i.pointerId,Nh.set(r,Qm(Nh.get(r)||null,e,t,a,n,i)),!0}return!1}function q9(e){var t=Ss(e.target);if(t!==null){var a=Lh(t);if(a!==null){if(t=a.tag,t===13){if(t=JN(a),t!==null){e.blockedOn=t,y7(e.priority,function(){VN(a)});return}}else if(t===31){if(t=eL(a),t!==null){e.blockedOn=t,y7(e.priority,function(){VN(a)});return}}else if(t===3&&a.stateNode.current.memoizedState.isDehydrated){e.blockedOn=a.tag===3?a.stateNode.containerInfo:null;return}}}e.blockedOn=null}function Rb(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var a=D2(e.nativeEvent);if(a===null){a=e.nativeEvent;var n=new a.constructor(a.type,a);RE=n,a.target.dispatchEvent(n),RE=null}else return t=Yd(a),t!==null&&Z9(t),e.blockedOn=a,!1;t.shift()}return!0}function ZN(e,t,a){Rb(e)&&a.delete(t)}function KX(){I2=!1,uo!==null&&Rb(uo)&&(uo=null),mo!==null&&Rb(mo)&&(mo=null),ho!==null&&Rb(ho)&&(ho=null),Ih.forEach(ZN),Nh.forEach(ZN)}function pb(e,t){e.blockedOn===t&&(e.blockedOn=null,I2||(I2=!0,jt.unstable_scheduleCallback(jt.unstable_NormalPriority,KX)))}var fb=null;function KN(e){fb!==e&&(fb=e,jt.unstable_scheduleCallback(jt.unstable_NormalPriority,function(){fb===e&&(fb=null);for(var t=0;t<e.length;t+=3){var a=e[t],n=e[t+1],i=e[t+2];if(typeof n!="function"){if(DS(n||a)===null)continue;break}var r=Yd(a);r!==null&&(e.splice(t,3),t-=3,qE(r,{pending:!0,data:i,method:a.method,action:n},n,i))}}))}function Hd(e){function t(d){return pb(d,e)}uo!==null&&pb(uo,e),mo!==null&&pb(mo,e),ho!==null&&pb(ho,e),Ih.forEach(t),Nh.forEach(t);for(var a=0;a<ql.length;a++){var n=ql[a];n.blockedOn===e&&(n.blockedOn=null)}for(;0<ql.length&&(a=ql[0],a.blockedOn===null);)q9(a),a.blockedOn===null&&ql.shift();if(a=(e.ownerDocument||e).$$reactFormReplay,a!=null)for(n=0;n<a.length;n+=3){var i=a[n],r=a[n+1],l=i[nn]||null;if(typeof r=="function")l||KN(a);else if(l){var o=null;if(r&&r.hasAttribute("formAction")){if(i=r,l=r[nn]||null)o=l.formAction;else if(DS(i)!==null)continue}else o=l.action;typeof o=="function"?a[n+1]=o:(a.splice(n,3),n-=3),KN(a)}}}function Q9(){function e(r){r.canIntercept&&r.info==="react-transition"&&r.intercept({handler:function(){return new Promise(function(l){return i=l})},focusReset:"manual",scroll:"manual"})}function t(){i!==null&&(i(),i=null),n||setTimeout(a,20)}function a(){if(!n&&!navigation.transition){var r=navigation.currentEntry;r&&r.url!=null&&navigation.navigate(r.url,{state:r.getState(),info:"react-transition",history:"replace"})}}if(typeof navigation=="object"){var n=!1,i=null;return navigation.addEventListener("navigate",e),navigation.addEventListener("navigatesuccess",t),navigation.addEventListener("navigateerror",t),setTimeout(a,100),function(){n=!0,navigation.removeEventListener("navigate",e),navigation.removeEventListener("navigatesuccess",t),navigation.removeEventListener("navigateerror",t),i!==null&&(i(),i=null)}}}function IS(e){this._internalRoot=e}Mv.prototype.render=IS.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(H(409));var a=t.current,n=Sn();X9(a,n,e,t,null,null)};Mv.prototype.unmount=IS.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;X9(e.current,2,null,e,null,null),Tv(),t[Fd]=null}};function Mv(e){this._internalRoot=e}Mv.prototype.unstable_scheduleHydration=function(e){if(e){var t=pL();e={blockedOn:null,target:e,priority:t};for(var a=0;a<ql.length&&t!==0&&t<ql[a].priority;a++);ql.splice(a,0,e),a===0&&q9(e)}};var qN=QN.version;if(qN!=="19.3.0")throw Error(H(527,qN,"19.3.0"));_e.findDOMNode=function(e){var t=e._reactInternals;if(t===void 0)throw typeof e.render=="function"?Error(H(188)):(e=Object.keys(e).join(","),Error(H(268,e)));return e=qG(t),e=e!==null?tL(e):null,e=e===null?null:e.stateNode,e};var qX={bundleType:0,version:"19.3.0",rendererPackageName:"react-dom",currentDispatcherRef:ie,reconcilerVersion:"19.3.0"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&(Wm=__REACT_DEVTOOLS_GLOBAL_HOOK__,!Wm.isDisabled&&Wm.supportsFiber))try{Rh=Wm.inject(qX),wn=Wm}catch{}var Wm;Av.createRoot=function(e,t){if(!WN(e))throw Error(H(299));var a=!1,n="",i=IR,r=NR,l=LR;return t!=null&&(t.unstable_strictMode===!0&&(a=!0),t.identifierPrefix!==void 0&&(n=t.identifierPrefix),t.onUncaughtError!==void 0&&(i=t.onUncaughtError),t.onCaughtError!==void 0&&(r=t.onCaughtError),t.onRecoverableError!==void 0&&(l=t.onRecoverableError)),t=$9(e,1,!1,null,null,a,n,null,i,r,l,Q9),e[Fd]=t.current,ES(e),new IS(t)};Av.hydrateRoot=function(e,t,a){if(!WN(e))throw Error(H(299));var n=!1,i="",r=IR,l=NR,o=LR,d=null;return a!=null&&(a.unstable_strictMode===!0&&(n=!0),a.identifierPrefix!==void 0&&(i=a.identifierPrefix),a.onUncaughtError!==void 0&&(r=a.onUncaughtError),a.onCaughtError!==void 0&&(l=a.onCaughtError),a.onRecoverableError!==void 0&&(o=a.onRecoverableError),a.formState!==void 0&&(d=a.formState)),t=$9(e,1,!0,t,a??null,n,i,d,r,l,o,Q9),t.context=V9(null),a=t.current,n=Sn(),n=O2(n),i=ro(n),i.callback=null,lo(a,i,n),a=n,t.current.lanes=a,zh(t,a),br(t),e[Fd]=t.current,ES(e),new Mv(t)};Av.version="19.3.0"});var tO=kn((Aee,eO)=>{"use strict";function J9(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(J9)}catch(e){console.error(e)}}J9(),eO.exports=W9()});var sg=T(R(),1),cg=T(R(),1);var lO=0;function wt(e,t){let a=`atom${++lO}`,n={toString(){return(import.meta.env?import.meta.env.MODE:void 0)!=="production"&&this.debugLabel?a+":"+this.debugLabel:a}};return typeof e=="function"?n.read=e:(n.init=e,n.read=oO,n.write=sO),t&&(n.write=t),n}function oO(e){return e(this)}function sO(e,t,a){return t(this,typeof a=="function"?a(e(this)):a)}var O_=(e,t)=>e.unstable_is?e.unstable_is(t):t===e,Q1=e=>"init"in e,q1=e=>!!e.write,Jp=new WeakMap,W1=e=>{var t;return J1(e)&&!((t=Jp.get(e))!=null&&t[1])},cO=(e,t)=>{let a=Jp.get(e);if(a)a[1]=!0,a[0].forEach(n=>n(t));else if((import.meta.env?import.meta.env.MODE:void 0)!=="production")throw new Error("[Bug] cancelable promise not found")},dO=e=>{if(Jp.has(e))return;let t=[new Set,!1];Jp.set(e,t);let a=()=>{t[1]=!0};e.then(a,a),e.onCancel=n=>{t[0].add(n)}},J1=e=>typeof e?.then=="function",z_=e=>"v"in e||"e"in e,Wp=e=>{if("e"in e)throw e.e;if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&!("v"in e))throw new Error("[Bug] atom state is not initialized");return e.v},P_=(e,t,a)=>{a.p.has(e)||(a.p.add(e),t.then(()=>{a.p.delete(e)},()=>{a.p.delete(e)}))},B_=(e,t,a,n,i)=>{var r;if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&n===t)throw new Error("[Bug] atom cannot depend on itself");a.d.set(n,i.n),W1(a.v)&&P_(t,a.v,i),(r=i.m)==null||r.t.add(t),e&&uO(e,n,t)},Uu=()=>({D:new Map,H:new Set,M:new Set,L:new Set}),ju=(e,t,a)=>{e[t].add(a)},U_=(e,t,a)=>{e.D.has(t)||(e.D.set(t,new Set),ju(e,"M",()=>{var n;(n=a.m)==null||n.l.forEach(i=>ju(e,"M",i))}))},uO=(e,t,a)=>{let n=e.D.get(t);n&&n.add(a)},mO=(e,t)=>e.D.get(t),jo=e=>{let t,a=!1,n=i=>{try{i()}catch(r){a||(t=r,a=!0)}};for(;e.H.size||e.M.size||e.L.size;)e.D.clear(),e.H.forEach(n),e.H.clear(),e.M.forEach(n),e.M.clear(),e.L.forEach(n),e.L.clear();if(a)throw t},j_=(...[e,t,a,n])=>{let i=(g,b,v)=>{let x="v"in b,E=b.v,S=W1(b.v)?b.v:null;if(J1(v)){dO(v);for(let C of b.d.keys())P_(g,v,e(C));b.v=v}else b.v=v;delete b.e,delete b.x,(!x||!Object.is(E,b.v))&&(++b.n,S&&cO(S,v))},r=(g,b)=>{var v;let x=e(b);if(z_(x)&&(x.m&&!x.x||Array.from(x.d).every(([k,I])=>r(g,k).n===I)))return x;x.d.clear();let E=!0,S=k=>{if(O_(b,k)){let j=e(k);if(!z_(j))if(Q1(k))i(k,j,k.init);else throw new Error("no atom init");return Wp(j)}let I=r(g,k);try{return Wp(I)}finally{if(E)B_(g,b,x,k,I);else{let j=Uu();B_(j,b,x,k,I),c(j,b,x),jo(j)}}},C,_,D={get signal(){return C||(C=new AbortController),C.signal},get setSelf(){return(import.meta.env?import.meta.env.MODE:void 0)!=="production"&&!q1(b)&&console.warn("setSelf function cannot be used with read-only atom"),!_&&q1(b)&&(_=(...k)=>{if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&E&&console.warn("setSelf function cannot be called in sync"),!E)return s(b,...k)}),_}};try{let k=t(b,S,D);if(i(b,x,k),J1(k)){(v=k.onCancel)==null||v.call(k,()=>C?.abort());let I=()=>{if(x.m){let j=Uu();c(j,b,x),jo(j)}};k.then(I,I)}return x}catch(k){return delete x.v,x.e=k,delete x.x,++x.n,x}finally{E=!1}},l=g=>Wp(r(void 0,g)),o=(g,b,v)=>{var x,E;let S=new Map;for(let C of((x=v.m)==null?void 0:x.t)||[]){let _=e(C);_.m&&S.set(C,_)}for(let C of v.p)S.set(C,e(C));return(E=mO(g,b))==null||E.forEach(C=>{S.set(C,e(C))}),S},d=(g,b,v)=>{let x=[],E=new Set,S=new Set,C=[[b,v]];for(;C.length>0;){let[_,D]=C[C.length-1];if(S.has(_)){C.pop();continue}if(E.has(_)){x.push([_,D,D.n]),S.add(_),D.x=!0,C.pop();continue}E.add(_);for(let[k,I]of o(g,_,D))_!==k&&!E.has(k)&&C.push([k,I])}ju(g,"H",()=>{let _=new Set([b]);for(let D=x.length-1;D>=0;--D){let[k,I,j]=x[D],z=!1;for(let G of I.d.keys())if(G!==k&&_.has(G)){z=!0;break}z&&(r(g,k),c(g,k,I),j!==I.n&&(U_(g,k,I),_.add(k))),delete I.x}})},h=(g,b,...v)=>{let x=!0,E=C=>Wp(r(g,C)),S=(C,..._)=>{let D=e(C);try{if(O_(b,C)){if(!Q1(C))throw new Error("atom not writable");let k=D.n,I=_[0];i(C,D,I),c(g,C,D),k!==D.n&&(U_(g,C,D),d(g,C,D));return}else return h(g,C,..._)}finally{x||jo(g)}};try{return a(b,E,S,...v)}finally{x=!1}},s=(g,...b)=>{let v=Uu();try{return h(v,g,...b)}finally{jo(v)}},c=(g,b,v)=>{if(v.m&&!W1(v.v)){for(let x of v.d.keys())v.m.d.has(x)||(u(g,x,e(x)).t.add(b),v.m.d.add(x));for(let x of v.m.d||[])if(!v.d.has(x)){v.m.d.delete(x);let E=m(g,x,e(x));E?.t.delete(b)}}},u=(g,b,v)=>{if(!v.m){r(g,b);for(let x of v.d.keys())u(g,x,e(x)).t.add(b);if(v.m={l:new Set,d:new Set(v.d.keys()),t:new Set},q1(b)){let x=v.m,E,S=(C,_)=>{let D=!0;E=(...k)=>{try{return h(C,b,...k)}finally{D||jo(C)}};try{return _()}finally{D=!1}};ju(g,"L",()=>{let C=S(g,()=>n(b,(..._)=>E(..._)));C&&(x.u=_=>S(_,C))})}}return v.m},m=(g,b,v)=>{if(v.m&&!v.m.l.size&&!Array.from(v.m.t).some(x=>{var E;return(E=e(x).m)==null?void 0:E.d.has(b)})){let x=v.m.u;x&&ju(g,"L",()=>x(g)),delete v.m;for(let E of v.d.keys()){let S=m(g,E,e(E));S?.t.delete(b)}return}return v.m};return{get:l,set:s,sub:(g,b)=>{let v=Uu(),x=e(g),S=u(v,g,x).l;return S.add(b),jo(v),()=>{S.delete(b);let C=Uu();m(C,g,x),jo(C)}},unstable_derive:g=>j_(...g(e,t,a,n))}},hO=e=>{let t=new WeakMap,a=new Set,n,i=0,r=e.unstable_derive((d,h,s,c)=>(n=d,[u=>{let m=t.get(u);if(!m){let p=d(u);m=new Proxy(p,{set(f,y,g){return y==="m"&&a.add(u),Reflect.set(f,y,g)},deleteProperty(f,y){return y==="m"&&a.delete(u),Reflect.deleteProperty(f,y)}}),t.set(u,m)}return m},h,(u,m,p,...f)=>i?p(u,...f):s(u,m,p,...f),c])),l=r.set;return Object.assign(r,{dev4_get_internal_weak_map:()=>({get:d=>{let h=n(d);if(h.n!==0)return h}}),dev4_get_mounted_atoms:()=>a,dev4_restore_atoms:d=>{l({read:()=>null,write:(s,c)=>{++i;try{for(let[u,m]of d)Q1(u)&&c(u,m)}finally{--i}}})}})},sc=()=>{let e=new WeakMap,a=j_(n=>{if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&!n)throw new Error("Atom is undefined or null");let i=e.get(n);return i||(i={d:new Map,p:new Set,n:0},e.set(n,i)),i},(n,...i)=>n.read(...i),(n,...i)=>n.write(...i),(n,...i)=>{var r;return(r=n.onMount)==null?void 0:r.call(n,...i)});return(import.meta.env?import.meta.env.MODE:void 0)!=="production"?hO(a):a},Pu,H_=()=>(Pu||(Pu=sc(),(import.meta.env?import.meta.env.MODE:void 0)!=="production"&&(globalThis.__JOTAI_DEFAULT_STORE__||(globalThis.__JOTAI_DEFAULT_STORE__=Pu),globalThis.__JOTAI_DEFAULT_STORE__!==Pu&&console.warn("Detected multiple Jotai instances. It may cause unexpected behavior with the default store. https://github.com/pmndrs/jotai/discussions/2044"))),Pu);var ua=T(R(),1);var pO=(0,ua.createContext)(void 0),cc=e=>{let t=(0,ua.useContext)(pO);return e?.store||t||H_()};var ty=e=>typeof e?.then=="function",Y_=e=>{e.status="pending",e.then(t=>{e.status="fulfilled",e.value=t},t=>{e.status="rejected",e.reason=t})},fO=ua.default.use||(e=>{if(e.status==="pending")throw e;if(e.status==="fulfilled")return e.value;throw e.status==="rejected"?e.reason:(Y_(e),e)}),ey=new WeakMap,F_=e=>{let t=ey.get(e);return t||(t=new Promise((a,n)=>{let i=e,r=d=>h=>{i===d&&a(h)},l=d=>h=>{i===d&&n(h)},o=d=>{"onCancel"in d&&typeof d.onCancel=="function"&&d.onCancel(h=>{if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&h===d)throw new Error("[Bug] p is not updated even after cancelation");ty(h)?(ey.set(h,t),i=h,h.then(r(h),l(h)),o(h)):a(h)})};e.then(r(e),l(e)),o(e)}),ey.set(e,t)),t};function ay(e,t){let a=cc(t),[[n,i,r],l]=(0,ua.useReducer)(h=>{let s=a.get(e);return Object.is(h[0],s)&&h[1]===a&&h[2]===e?h:[s,a,e]},void 0,()=>[a.get(e),a,e]),o=n;(i!==a||r!==e)&&(l(),o=a.get(e));let d=t?.delay;if((0,ua.useEffect)(()=>{let h=a.sub(e,()=>{if(typeof d=="number"){let s=a.get(e);ty(s)&&Y_(F_(s)),setTimeout(l,d);return}l()});return l(),h},[a,e,d]),(0,ua.useDebugValue)(o),ty(o)){let h=F_(o);return fO(h)}return o}function ef(e,t){let a=cc(t);return(0,ua.useCallback)((...i)=>{if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&!("write"in e))throw new Error("not writable atom");return a.set(e,...i)},[a,e])}function ny(e,t){return[ay(e,t),ef(e,t)]}var X_=T(N(),1),_r=T(R(),1);var $_=T(R(),1);var G_=new WeakMap;function V_(e,t){let a=cc(t),n=gO(a);for(let[i,r]of e)(!n.has(i)||t?.dangerouslyForceHydrate)&&(n.add(i),a.set(i,r))}var gO=e=>{let t=G_.get(e);return t||(t=new WeakSet,G_.set(e,t)),t};function dc(){return dc=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)Object.prototype.hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e},dc.apply(this,arguments)}function tf(){let e=(0,_r.createContext)(null);function t({store:l,initialValues:o=[],children:d}){let h=(0,_r.useRef)(l);return h.current||(h.current=sc()),V_(o,{store:h.current}),(0,X_.jsx)(e.Provider,{value:h.current,children:d})}let a=l=>{let o=(0,_r.useContext)(e);if(!o)throw new Error("Missing Provider from createIsolation");return cc(dc({store:o},l))};return{Provider:t,useStore:a,useAtom:(l,o)=>{let d=a();return ny(l,dc({store:d},o))},useAtomValue:(l,o)=>{let d=a();return ay(l,dc({store:d},o))},useSetAtom:(l,o)=>{let d=a();return ef(l,dc({store:d},o))}}}var{read:cZ,write:dZ}=wt(null);var uZ=(0,_r.createContext)({scope:void 0,baseStore:void 0});var ug=T(R(),1),wA=T(R(),1),Vf=T(N(),1);var Lc=T(N(),1),SA=T(N(),1),_t=T(R(),1),Dl=T(sn(),1);var vi=T(R(),1);var Un=T(N(),1),CA=T(N(),1),Um=T(N(),1),IA=T(N(),1),Yn=T(R(),1);var NA=T(R(),1);var LA=T(N(),1),Rc=T(N(),1);var Xf=T(N(),1),OA=T(N(),1),Ul=T(R(),1);var mg=T(R(),1),UA=T(N(),1),Ir=T(N(),1);var pg=T(R(),1),Oc=T(N(),1);var fg=T(R(),1),zc=T(N(),1),PA=T(N(),1),mn=T(N(),1);var at=T(R(),1);function Hi(e,t,{checkForDefaultPrevented:a=!0}={}){return function(i){if(e?.(i),a===!1||!i.defaultPrevented)return t?.(i)}}var e4=T(R(),1);function J_(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function iy(...e){return t=>{let a=!1,n=e.map(i=>{let r=J_(i,t);return!a&&typeof r=="function"&&(a=!0),r});if(a)return()=>{for(let i=0;i<n.length;i++){let r=n[i];typeof r=="function"?r():J_(e[i],null)}}}}function cn(...e){return e4.useCallback(iy(...e),e)}var kr=T(R(),1),t4=T(N(),1);function nf(e,t=[]){let a=[];function n(r,l){let o=kr.createContext(l),d=a.length;a=[...a,l];let h=c=>{let{scope:u,children:m,...p}=c,f=u?.[e]?.[d]||o,y=kr.useMemo(()=>p,Object.values(p));return(0,t4.jsx)(f.Provider,{value:y,children:m})};h.displayName=r+"Provider";function s(c,u){let m=u?.[e]?.[d]||o,p=kr.useContext(m);if(p)return p;if(l!==void 0)return l;throw new Error(`\`${c}\` must be used within \`${r}\``)}return[h,s]}let i=()=>{let r=a.map(l=>kr.createContext(l));return function(o){let d=o?.[e]||r;return kr.useMemo(()=>({[`__scope${e}`]:{...o,[e]:d}}),[o,d])}};return i.scopeName=e,[n,wO(i,...t)]}function wO(...e){let t=e[0];if(e.length===1)return t;let a=()=>{let n=e.map(i=>({useScope:i(),scopeName:i.scopeName}));return function(r){let l=n.reduce((o,{useScope:d,scopeName:h})=>{let c=d(r)[`__scope${h}`];return{...o,...c}},{});return kr.useMemo(()=>({[`__scope${t.scopeName}`]:l}),[l])}};return a.scopeName=t.scopeName,a}var lt=T(R(),1);var a4=T(R(),1),n4=T(sn(),1);var Lt=T(R(),1);var uc=T(N(),1),Fu=Lt.forwardRef((e,t)=>{let{children:a,...n}=e,i=Lt.Children.toArray(a),r=i.find(SO);if(r){let l=r.props.children,o=i.map(d=>d===r?Lt.Children.count(l)>1?Lt.Children.only(null):Lt.isValidElement(l)?l.props.children:null:d);return(0,uc.jsx)(ry,{...n,ref:t,children:Lt.isValidElement(l)?Lt.cloneElement(l,void 0,o):null})}return(0,uc.jsx)(ry,{...n,ref:t,children:a})});Fu.displayName="Slot";var ry=Lt.forwardRef((e,t)=>{let{children:a,...n}=e;if(Lt.isValidElement(a)){let i=TO(a),r=CO(n,a.props);return a.type!==Lt.Fragment&&(r.ref=t?iy(t,i):i),Lt.cloneElement(a,r)}return Lt.Children.count(a)>1?Lt.Children.only(null):null});ry.displayName="SlotClone";var EO=({children:e})=>(0,uc.jsx)(uc.Fragment,{children:e});function SO(e){return Lt.isValidElement(e)&&e.type===EO}function CO(e,t){let a={...t};for(let n in t){let i=e[n],r=t[n];/^on[A-Z]/.test(n)?i&&r?a[n]=(...o)=>{r(...o),i(...o)}:i&&(a[n]=i):n==="style"?a[n]={...i,...r}:n==="className"&&(a[n]=[i,r].filter(Boolean).join(" "))}return{...e,...a}}function TO(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,a=t&&"isReactWarning"in t&&t.isReactWarning;return a?e.ref:(t=Object.getOwnPropertyDescriptor(e,"ref")?.get,a=t&&"isReactWarning"in t&&t.isReactWarning,a?e.props.ref:e.props.ref||e.ref)}var i4=T(N(),1),_O=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","span","svg","ul"],Na=_O.reduce((e,t)=>{let a=a4.forwardRef((n,i)=>{let{asChild:r,...l}=n,o=r?Fu:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),(0,i4.jsx)(o,{...l,ref:i})});return a.displayName=`Primitive.${t}`,{...e,[t]:a}},{});function r4(e,t){e&&n4.flushSync(()=>e.dispatchEvent(t))}var mc=T(R(),1);function dn(e){let t=mc.useRef(e);return mc.useEffect(()=>{t.current=e}),mc.useMemo(()=>(...a)=>t.current?.(...a),[])}var l4=T(R(),1);function o4(e,t=globalThis?.document){let a=dn(e);l4.useEffect(()=>{let n=i=>{i.key==="Escape"&&a(i)};return t.addEventListener("keydown",n,{capture:!0}),()=>t.removeEventListener("keydown",n,{capture:!0})},[a,t])}var oy=T(N(),1),kO="DismissableLayer",ly="dismissableLayer.update",MO="dismissableLayer.pointerDownOutside",AO="dismissableLayer.focusOutside",s4,d4=lt.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),sy=lt.forwardRef((e,t)=>{let{disableOutsidePointerEvents:a=!1,onEscapeKeyDown:n,onPointerDownOutside:i,onFocusOutside:r,onInteractOutside:l,onDismiss:o,...d}=e,h=lt.useContext(d4),[s,c]=lt.useState(null),u=s?.ownerDocument??globalThis?.document,[,m]=lt.useState({}),p=cn(t,C=>c(C)),f=Array.from(h.layers),[y]=[...h.layersWithOutsidePointerEventsDisabled].slice(-1),g=f.indexOf(y),b=s?f.indexOf(s):-1,v=h.layersWithOutsidePointerEventsDisabled.size>0,x=b>=g,E=NO(C=>{let _=C.target,D=[...h.branches].some(k=>k.contains(_));!x||D||(i?.(C),l?.(C),C.defaultPrevented||o?.())},u),S=LO(C=>{let _=C.target;[...h.branches].some(k=>k.contains(_))||(r?.(C),l?.(C),C.defaultPrevented||o?.())},u);return o4(C=>{b===h.layers.size-1&&(n?.(C),!C.defaultPrevented&&o&&(C.preventDefault(),o()))},u),lt.useEffect(()=>{if(s)return a&&(h.layersWithOutsidePointerEventsDisabled.size===0&&(s4=u.body.style.pointerEvents,u.body.style.pointerEvents="none"),h.layersWithOutsidePointerEventsDisabled.add(s)),h.layers.add(s),c4(),()=>{a&&h.layersWithOutsidePointerEventsDisabled.size===1&&(u.body.style.pointerEvents=s4)}},[s,u,a,h]),lt.useEffect(()=>()=>{s&&(h.layers.delete(s),h.layersWithOutsidePointerEventsDisabled.delete(s),c4())},[s,h]),lt.useEffect(()=>{let C=()=>m({});return document.addEventListener(ly,C),()=>document.removeEventListener(ly,C)},[]),(0,oy.jsx)(Na.div,{...d,ref:p,style:{pointerEvents:v?x?"auto":"none":void 0,...e.style},onFocusCapture:Hi(e.onFocusCapture,S.onFocusCapture),onBlurCapture:Hi(e.onBlurCapture,S.onBlurCapture),onPointerDownCapture:Hi(e.onPointerDownCapture,E.onPointerDownCapture)})});sy.displayName=kO;var DO="DismissableLayerBranch",IO=lt.forwardRef((e,t)=>{let a=lt.useContext(d4),n=lt.useRef(null),i=cn(t,n);return lt.useEffect(()=>{let r=n.current;if(r)return a.branches.add(r),()=>{a.branches.delete(r)}},[a.branches]),(0,oy.jsx)(Na.div,{...e,ref:i})});IO.displayName=DO;function NO(e,t=globalThis?.document){let a=dn(e),n=lt.useRef(!1),i=lt.useRef(()=>{});return lt.useEffect(()=>{let r=o=>{if(o.target&&!n.current){let h=function(){u4(MO,a,s,{discrete:!0})};var d=h;let s={originalEvent:o};o.pointerType==="touch"?(t.removeEventListener("click",i.current),i.current=h,t.addEventListener("click",i.current,{once:!0})):h()}else t.removeEventListener("click",i.current);n.current=!1},l=window.setTimeout(()=>{t.addEventListener("pointerdown",r)},0);return()=>{window.clearTimeout(l),t.removeEventListener("pointerdown",r),t.removeEventListener("click",i.current)}},[t,a]),{onPointerDownCapture:()=>n.current=!0}}function LO(e,t=globalThis?.document){let a=dn(e),n=lt.useRef(!1);return lt.useEffect(()=>{let i=r=>{r.target&&!n.current&&u4(AO,a,{originalEvent:r},{discrete:!1})};return t.addEventListener("focusin",i),()=>t.removeEventListener("focusin",i)},[t,a]),{onFocusCapture:()=>n.current=!0,onBlurCapture:()=>n.current=!1}}function c4(){let e=new CustomEvent(ly);document.dispatchEvent(e)}function u4(e,t,a,{discrete:n}){let i=a.originalEvent.target,r=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:a});t&&i.addEventListener(e,t,{once:!0}),n?r4(i,r):i.dispatchEvent(r)}var h4=T(R(),1),cy=0;function p4(){h4.useEffect(()=>{let e=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",e[0]??m4()),document.body.insertAdjacentElement("beforeend",e[1]??m4()),cy++,()=>{cy===1&&document.querySelectorAll("[data-radix-focus-guard]").forEach(t=>t.remove()),cy--}},[])}function m4(){let e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}var Nn=T(R(),1);var y4=T(N(),1),dy="focusScope.autoFocusOnMount",uy="focusScope.autoFocusOnUnmount",f4={bubbles:!1,cancelable:!0},RO="FocusScope",my=Nn.forwardRef((e,t)=>{let{loop:a=!1,trapped:n=!1,onMountAutoFocus:i,onUnmountAutoFocus:r,...l}=e,[o,d]=Nn.useState(null),h=dn(i),s=dn(r),c=Nn.useRef(null),u=cn(t,f=>d(f)),m=Nn.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;Nn.useEffect(()=>{if(n){let b=function(S){if(m.paused||!o)return;let C=S.target;o.contains(C)?c.current=C:yl(c.current,{select:!0})},v=function(S){if(m.paused||!o)return;let C=S.relatedTarget;C!==null&&(o.contains(C)||yl(c.current,{select:!0}))},x=function(S){if(document.activeElement===document.body)for(let _ of S)_.removedNodes.length>0&&yl(o)};var f=b,y=v,g=x;document.addEventListener("focusin",b),document.addEventListener("focusout",v);let E=new MutationObserver(x);return o&&E.observe(o,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",b),document.removeEventListener("focusout",v),E.disconnect()}}},[n,o,m.paused]),Nn.useEffect(()=>{if(o){b4.add(m);let f=document.activeElement;if(!o.contains(f)){let g=new CustomEvent(dy,f4);o.addEventListener(dy,h),o.dispatchEvent(g),g.defaultPrevented||(OO(jO(x4(o)),{select:!0}),document.activeElement===f&&yl(o))}return()=>{o.removeEventListener(dy,h),setTimeout(()=>{let g=new CustomEvent(uy,f4);o.addEventListener(uy,s),o.dispatchEvent(g),g.defaultPrevented||yl(f??document.body,{select:!0}),o.removeEventListener(uy,s),b4.remove(m)},0)}}},[o,h,s,m]);let p=Nn.useCallback(f=>{if(!a&&!n||m.paused)return;let y=f.key==="Tab"&&!f.altKey&&!f.ctrlKey&&!f.metaKey,g=document.activeElement;if(y&&g){let b=f.currentTarget,[v,x]=zO(b);v&&x?!f.shiftKey&&g===x?(f.preventDefault(),a&&yl(v,{select:!0})):f.shiftKey&&g===v&&(f.preventDefault(),a&&yl(x,{select:!0})):g===b&&f.preventDefault()}},[a,n,m.paused]);return(0,y4.jsx)(Na.div,{tabIndex:-1,...l,ref:u,onKeyDown:p})});my.displayName=RO;function OO(e,{select:t=!1}={}){let a=document.activeElement;for(let n of e)if(yl(n,{select:t}),document.activeElement!==a)return}function zO(e){let t=x4(e),a=g4(t,e),n=g4(t.reverse(),e);return[a,n]}function x4(e){let t=[],a=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:n=>{let i=n.tagName==="INPUT"&&n.type==="hidden";return n.disabled||n.hidden||i?NodeFilter.FILTER_SKIP:n.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;a.nextNode();)t.push(a.currentNode);return t}function g4(e,t){for(let a of e)if(!BO(a,{upTo:t}))return a}function BO(e,{upTo:t}){if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1}function UO(e){return e instanceof HTMLInputElement&&"select"in e}function yl(e,{select:t=!1}={}){if(e&&e.focus){let a=document.activeElement;e.focus({preventScroll:!0}),e!==a&&UO(e)&&t&&e.select()}}var b4=PO();function PO(){let e=[];return{add(t){let a=e[0];t!==a&&a?.pause(),e=v4(e,t),e.unshift(t)},remove(t){e=v4(e,t),e[0]?.resume()}}}function v4(e,t){let a=[...e],n=a.indexOf(t);return n!==-1&&a.splice(n,1),a}function jO(e){return e.filter(t=>t.tagName!=="A")}var rf=T(R(),1);var w4=T(R(),1),Ln=globalThis?.document?w4.useLayoutEffect:()=>{};var HO=rf.useId||(()=>{}),FO=0;function E4(e){let[t,a]=rf.useState(HO());return Ln(()=>{e||a(n=>n??String(FO++))},[e]),e||(t?`radix-${t}`:"")}var un=T(R(),1);var T4=["top","right","bottom","left"];var Fi=Math.min,li=Math.max,Gu=Math.round,$u=Math.floor,Yi=e=>({x:e,y:e}),YO={left:"right",right:"left",bottom:"top",top:"bottom"};function hy(e,t,a){return li(e,Fi(t,a))}function Gi(e,t){return typeof e=="function"?e(t):e}function Mr(e){return e.split("-")[0]}function Ho(e){return e.split("-")[1]}function of(e){return e==="x"?"y":"x"}function sf(e){return e==="y"?"height":"width"}function oi(e){let t=e[0];return t==="t"||t==="b"?"y":"x"}function cf(e){return of(oi(e))}function _4(e,t,a){a===void 0&&(a=!1);let n=Ho(e),i=cf(e),r=sf(i),l=i==="x"?n===(a?"end":"start")?"right":"left":n==="start"?"bottom":"top";return t.reference[r]>t.floating[r]&&(l=Yu(l)),[l,Yu(l)]}function k4(e){let t=Yu(e);return[lf(e),t,lf(t)]}function lf(e){return e.includes("start")?e.replace("start","end"):e.replace("end","start")}var S4=["left","right"],C4=["right","left"],GO=["top","bottom"],$O=["bottom","top"];function VO(e,t,a){switch(e){case"top":case"bottom":return a?t?C4:S4:t?S4:C4;case"left":case"right":return t?GO:$O;default:return[]}}function M4(e,t,a,n){let i=Ho(e),r=VO(Mr(e),a==="start",n);return i&&(r=r.map(l=>l+"-"+i),t&&(r=r.concat(r.map(lf)))),r}function Yu(e){let t=Mr(e);return YO[t]+e.slice(t.length)}function XO(e){var t,a,n,i;return{top:(t=e.top)!=null?t:0,right:(a=e.right)!=null?a:0,bottom:(n=e.bottom)!=null?n:0,left:(i=e.left)!=null?i:0}}function py(e){return typeof e!="number"?XO(e):{top:e,right:e,bottom:e,left:e}}function Fo(e){let{x:t,y:a,width:n,height:i}=e;return{width:n,height:i,top:a,left:t,right:t+n,bottom:a+i,x:t,y:a}}function A4(e,t,a){let{reference:n,floating:i}=e,r=oi(t),l=cf(t),o=sf(l),d=Mr(t),h=r==="y",s=n.x+n.width/2-i.width/2,c=n.y+n.height/2-i.height/2,u=n[o]/2-i[o]/2,m;switch(d){case"top":m={x:s,y:n.y-i.height};break;case"bottom":m={x:s,y:n.y+n.height};break;case"right":m={x:n.x+n.width,y:c};break;case"left":m={x:n.x-i.width,y:c};break;default:m={x:n.x,y:n.y}}let p=Ho(t);return p&&(m[l]+=u*(p==="end"?1:-1)*(a&&h?-1:1)),m}async function N4(e,t){var a;t===void 0&&(t={});let{x:n,y:i,platform:r,rects:l,elements:o,strategy:d}=e,{boundary:h="clippingAncestors",rootBoundary:s="viewport",elementContext:c="floating",altBoundary:u=!1,padding:m=0}=Gi(t,e),p=py(m),y=o[u?c==="floating"?"reference":"floating":c],g=Fo(await r.getClippingRect({element:(a=await(r.isElement==null?void 0:r.isElement(y)))==null||a?y:y.contextElement||await(r.getDocumentElement==null?void 0:r.getDocumentElement(o.floating)),boundary:h,rootBoundary:s,strategy:d})),b=c==="floating"?{x:n,y:i,width:l.floating.width,height:l.floating.height}:l.reference,v=await(r.getOffsetParent==null?void 0:r.getOffsetParent(o.floating)),x=await(r.isElement==null?void 0:r.isElement(v))&&await(r.getScale==null?void 0:r.getScale(v))||{x:1,y:1},E=Fo(r.convertOffsetParentRelativeRectToViewportRelativeRect?await r.convertOffsetParentRelativeRectToViewportRelativeRect({elements:o,rect:b,offsetParent:v,strategy:d}):b);return{top:(g.top-E.top+p.top)/x.y,bottom:(E.bottom-g.bottom+p.bottom)/x.y,left:(g.left-E.left+p.left)/x.x,right:(E.right-g.right+p.right)/x.x}}var ZO=50,L4=async(e,t,a)=>{let{placement:n="bottom",strategy:i="absolute",middleware:r=[],platform:l}=a,o=l.detectOverflow?l:{...l,detectOverflow:N4},d=await(l.isRTL==null?void 0:l.isRTL(t)),h=await l.getElementRects({reference:e,floating:t,strategy:i}),{x:s,y:c}=A4(h,n,d),u=n,m=0,p={};for(let f=0;f<r.length;f++){let y=r[f];if(!y)continue;let{name:g,fn:b}=y,{x:v,y:x,data:E,reset:S}=await b({x:s,y:c,initialPlacement:n,placement:u,strategy:i,middlewareData:p,rects:h,platform:o,elements:{reference:e,floating:t}});s=v??s,c=x??c,p[g]={...p[g],...E},S&&m<ZO&&(m++,typeof S=="object"&&(S.placement&&(u=S.placement),S.rects&&(h=S.rects===!0?await l.getElementRects({reference:e,floating:t,strategy:i}):S.rects),{x:s,y:c}=A4(h,u,d)),f=-1)}return{x:s,y:c,placement:u,strategy:i,middlewareData:p}},R4=e=>({name:"arrow",options:e,async fn(t){let{x:a,y:n,placement:i,rects:r,platform:l,elements:o,middlewareData:d}=t,{element:h,padding:s=0}=Gi(e,t)||{};if(h==null)return{};let c=py(s),u={x:a,y:n},m=cf(i),p=sf(m),f=await l.getDimensions(h),y=m==="y",g=y?"top":"left",b=y?"bottom":"right",v=y?"clientHeight":"clientWidth",x=r.reference[p]+r.reference[m]-u[m]-r.floating[p],E=u[m]-r.reference[m],S=await(l.getOffsetParent==null?void 0:l.getOffsetParent(h)),C=S?S[v]:0;(!C||!await(l.isElement==null?void 0:l.isElement(S)))&&(C=o.floating[v]||r.floating[p]);let _=x/2-E/2,D=C/2-f[p]/2-1,k=Fi(c[g],D),I=Fi(c[b],D),j=C-f[p]-I,z=C/2-f[p]/2+_,G=hy(k,z,j),O=!d.arrow&&Ho(i)!=null&&z!==G&&r.reference[p]/2-(z<k?k:I)-f[p]/2<0,P=O?z<k?z-k:z-j:0;return{[m]:u[m]+P,data:{[m]:G,centerOffset:z-G-P,...O&&{alignmentOffset:P}},reset:O}}});var O4=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var a,n;let{placement:i,middlewareData:r,rects:l,initialPlacement:o,platform:d,elements:h}=t,{mainAxis:s=!0,crossAxis:c=!0,fallbackPlacements:u,fallbackStrategy:m="bestFit",fallbackAxisSideDirection:p="none",flipAlignment:f=!0,...y}=Gi(e,t);if((a=r.arrow)!=null&&a.alignmentOffset)return{};let g=Mr(i),b=oi(o),v=Mr(o)===o,x=await(d.isRTL==null?void 0:d.isRTL(h.floating)),E=u||(v||!f?[Yu(o)]:k4(o)),S=p!=="none";!u&&S&&E.push(...M4(o,f,p,x));let C=[o,...E],_=await d.detectOverflow(t,y),D=[],k=((n=r.flip)==null?void 0:n.overflows)||[];if(s&&D.push(_[g]),c){let G=_4(i,l,x);D.push(_[G[0]],_[G[1]])}if(k=[...k,{placement:i,overflows:D}],!D.every(G=>G<=0)){var I,j;let G=(((I=r.flip)==null?void 0:I.index)||0)+1,O=C[G];if(O&&(!(c==="alignment"?b!==oi(O):!1)||k.every(V=>oi(V.placement)===b?V.overflows[0]>0:!0)))return{data:{index:G,overflows:k},reset:{placement:O}};let P=(j=k.filter(W=>W.overflows[0]<=0).sort((W,V)=>W.overflows[1]-V.overflows[1])[0])==null?void 0:j.placement;if(!P)switch(m){case"bestFit":{var z;let W=(z=k.filter(V=>{if(S){let X=oi(V.placement);return X===b||X==="y"}return!0}).map(V=>[V.placement,V.overflows.filter(X=>X>0).reduce((X,re)=>X+re,0)]).sort((V,X)=>V[1]-X[1])[0])==null?void 0:z[0];W&&(P=W);break}case"initialPlacement":P=o;break}if(i!==P)return{reset:{placement:P}}}return{}}}};function D4(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function I4(e){return T4.some(t=>e[t]>=0)}var z4=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(t){let{rects:a,platform:n}=t,{strategy:i="referenceHidden",...r}=Gi(e,t);switch(i){case"referenceHidden":{let l=await n.detectOverflow(t,{...r,elementContext:"reference"}),o=D4(l,a.reference);return{data:{referenceHiddenOffsets:o,referenceHidden:I4(o)}}}case"escaped":{let l=await n.detectOverflow(t,{...r,altBoundary:!0}),o=D4(l,a.floating);return{data:{escapedOffsets:o,escaped:I4(o)}}}default:return{}}}}};var B4=new Set(["left","top"]);async function KO(e,t){let{placement:a,platform:n,elements:i}=e,r=await(n.isRTL==null?void 0:n.isRTL(i.floating)),l=Mr(a),o=Ho(a),d=oi(a)==="y",h=B4.has(l)?-1:1,s=r&&d?-1:1,c=Gi(t,e),{mainAxis:u,crossAxis:m,alignmentAxis:p}=typeof c=="number"?{mainAxis:c,crossAxis:0,alignmentAxis:null}:{mainAxis:c.mainAxis||0,crossAxis:c.crossAxis||0,alignmentAxis:c.alignmentAxis};return o&&typeof p=="number"&&(m=o==="end"?p*-1:p),d?{x:m*s,y:u*h}:{x:u*h,y:m*s}}var U4=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var a,n;let{x:i,y:r,placement:l,middlewareData:o}=t,d=await KO(t,e);return l===((a=o.offset)==null?void 0:a.placement)&&(n=o.arrow)!=null&&n.alignmentOffset?{}:{x:i+d.x,y:r+d.y,data:{...d,placement:l}}}}},P4=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){let{x:a,y:n,placement:i,platform:r}=t,{mainAxis:l=!0,crossAxis:o=!1,limiter:d={fn:b=>{let{x:v,y:x}=b;return{x:v,y:x}}},...h}=Gi(e,t),s={x:a,y:n},c=await r.detectOverflow(t,h),u=oi(i),m=of(u),p=s[m],f=s[u],y=(b,v)=>hy(v+c[b==="y"?"top":"left"],v,v-c[b==="y"?"bottom":"right"]);l&&(p=y(m,p)),o&&(f=y(u,f));let g=d.fn({...t,[m]:p,[u]:f});return{...g,data:{x:g.x-a,y:g.y-n,enabled:{[m]:l,[u]:o}}}}}},j4=function(e){return e===void 0&&(e={}),{options:e,fn(t){var a,n;let{x:i,y:r,placement:l,rects:o,middlewareData:d}=t,{offset:h=0,mainAxis:s=!0,crossAxis:c=!0}=Gi(e,t),u={x:i,y:r},m=oi(l),p=of(m),f=u[p],y=u[m],g=Gi(h,t),b=typeof g=="number"?{mainAxis:g,crossAxis:0}:{mainAxis:(a=g.mainAxis)!=null?a:0,crossAxis:(n=g.crossAxis)!=null?n:0};if(s){let E=p==="y"?"height":"width",S=o.reference[p]-o.floating[E]+b.mainAxis,C=o.reference[p]+o.reference[E]-b.mainAxis;f<S?f=S:f>C&&(f=C)}if(c){var v,x;let E=p==="y"?"width":"height",S=B4.has(Mr(l)),C=o.reference[m]-o.floating[E]+(S&&((v=d.offset)==null?void 0:v[m])||0)+(S?0:b.crossAxis),_=o.reference[m]+o.reference[E]+(S?0:((x=d.offset)==null?void 0:x[m])||0)-(S?b.crossAxis:0);y<C?y=C:y>_&&(y=_)}return{[p]:f,[m]:y}}}},H4=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){let{placement:a,rects:n,platform:i,elements:r}=t,{apply:l=()=>{},...o}=Gi(e,t),d=await i.detectOverflow(t,o),h=Mr(a),s=Ho(a),c=oi(a)==="y",{width:u,height:m}=n.floating,p,f;h==="top"||h==="bottom"?(p=h,f=s===(await(i.isRTL==null?void 0:i.isRTL(r.floating))?"start":"end")?"left":"right"):(f=h,p=s==="end"?"top":"bottom");let y=m-d.top-d.bottom,g=u-d.left-d.right,b=Fi(m-d[p],y),v=Fi(u-d[f],g),x=t.middlewareData.shift,E=!x,S=b,C=v;x!=null&&x.enabled.x&&(C=g),x!=null&&x.enabled.y&&(S=y),E&&!s&&(c?C=u-2*li(d.left,d.right):S=m-2*li(d.top,d.bottom)),await l({...t,availableWidth:C,availableHeight:S});let _=await i.getDimensions(r.floating);return u!==_.width||m!==_.height?{reset:{rects:!0}}:{}}}};function df(){return typeof window<"u"}function $o(e){return Y4(e)?(e.nodeName||"").toLowerCase():"#document"}function La(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function $i(e){var t;return(t=(Y4(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function Y4(e){return df()?e instanceof Node||e instanceof La(e).Node:!1}function si(e){return df()?e instanceof Element||e instanceof La(e).Element:!1}function Ar(e){return df()?e instanceof HTMLElement||e instanceof La(e).HTMLElement:!1}function F4(e){return!df()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof La(e).ShadowRoot}function Vu(e){let{overflow:t,overflowX:a,overflowY:n,display:i}=ci(e);return/auto|scroll|overlay|hidden|clip/.test(t+n+a)&&i!=="inline"&&i!=="contents"}function G4(e){return/^(table|td|th)$/.test($o(e))}function Xu(e){try{if(e.matches(":popover-open"))return!0}catch{}try{return e.matches(":modal")}catch{return!1}}var qO=/transform|translate|scale|rotate|perspective|filter/,QO=/paint|layout|strict|content/,Yo=e=>!!e&&e!=="none",fy;function uf(e){let t=si(e)?ci(e):e;return Yo(t.transform)||Yo(t.translate)||Yo(t.scale)||Yo(t.rotate)||Yo(t.perspective)||!mf()&&(Yo(t.backdropFilter)||Yo(t.filter))||qO.test(t.willChange||"")||QO.test(t.contain||"")}function $4(e){let t=xl(e);for(;Ar(t)&&!hc(t);){if(uf(t))return t;if(Xu(t))return null;t=xl(t)}return null}function mf(){return fy==null&&(fy=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),fy}function hc(e){return/^(html|body|#document)$/.test($o(e))}function ci(e){return La(e).getComputedStyle(e)}function Zu(e){return si(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function xl(e){if($o(e)==="html")return e;let t=e.assignedSlot||e.parentNode||F4(e)&&e.host||$i(e);return F4(t)?t.host:t}function V4(e){let t=xl(e);return hc(t)?(e.ownerDocument||e).body:Ar(t)&&Vu(t)?t:V4(t)}function Go(e,t,a){var n;t===void 0&&(t=[]),a===void 0&&(a=!0);let i=V4(e),r=i===((n=e.ownerDocument)==null?void 0:n.body),l=La(i);if(r){let o=hf(l);return t.concat(l,l.visualViewport||[],Vu(i)?i:[],o&&a?Go(o):[])}else return t.concat(i,Go(i,[],a))}function hf(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function K4(e){let t=ci(e),a=parseFloat(t.width)||0,n=parseFloat(t.height)||0,i=Ar(e),r=i?e.offsetWidth:a,l=i?e.offsetHeight:n,o=Gu(a)!==r||Gu(n)!==l;return o&&(a=r,n=l),{width:a,height:n,$:o}}function by(e){return si(e)?e:e.contextElement}function pc(e){let t=by(e);if(!Ar(t))return Yi(1);let a=t.getBoundingClientRect(),{width:n,height:i,$:r}=K4(t),l=(r?Gu(a.width):a.width)/n,o=(r?Gu(a.height):a.height)/i;return(!l||!Number.isFinite(l))&&(l=1),(!o||!Number.isFinite(o))&&(o=1),{x:l,y:o}}var WO=Yi(0);function q4(e){let t=La(e);return!mf()||!t.visualViewport?WO:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function JO(e,t,a){return t===void 0&&(t=!1),!!a&&t&&a===La(e)}function Vo(e,t,a,n){t===void 0&&(t=!1),a===void 0&&(a=!1);let i=e.getBoundingClientRect(),r=by(e),l=Yi(1);t&&(n?si(n)&&(l=pc(n)):l=pc(e));let o=JO(r,a,n)?q4(r):Yi(0),d=(i.left+o.x)/l.x,h=(i.top+o.y)/l.y,s=i.width/l.x,c=i.height/l.y;if(r&&n){let u=La(r),m=si(n)?La(n):n,p=u,f=hf(p);for(;f&&m!==p;){let y=pc(f),g=f.getBoundingClientRect(),b=ci(f),v=g.left+(f.clientLeft+parseFloat(b.paddingLeft))*y.x,x=g.top+(f.clientTop+parseFloat(b.paddingTop))*y.y;d*=y.x,h*=y.y,s*=y.x,c*=y.y,d+=v,h+=x,p=La(f),f=hf(p)}}return Fo({width:s,height:c,x:d,y:h})}function pf(e,t){let a=Zu(e).scrollLeft;return t?t.left+a:Vo($i(e)).left+a}function Q4(e,t){let a=e.getBoundingClientRect(),n=a.left+t.scrollLeft-pf(e,a),i=a.top+t.scrollTop;return{x:n,y:i}}function ez(e){let{elements:t,rect:a,offsetParent:n,strategy:i}=e,r=i==="fixed",l=$i(n),o=t?Xu(t.floating):!1;if(n===l||o&&r)return a;let d={scrollLeft:0,scrollTop:0},h=Yi(1),s=Yi(0),c=Ar(n);if((c||!r)&&(($o(n)!=="body"||Vu(l))&&(d=Zu(n)),c)){let m=Vo(n);h=pc(n),s.x=m.x+n.clientLeft,s.y=m.y+n.clientTop}let u=l&&!c&&!r?Q4(l,d):Yi(0);return{width:a.width*h.x,height:a.height*h.y,x:a.x*h.x-d.scrollLeft*h.x+s.x+u.x,y:a.y*h.y-d.scrollTop*h.y+s.y+u.y}}function tz(e){return e.getClientRects?Array.from(e.getClientRects()):[]}function az(e){let t=Zu(e),a=e.ownerDocument.body,n=li(e.scrollWidth,e.clientWidth,a.scrollWidth,a.clientWidth),i=li(e.scrollHeight,e.clientHeight,a.scrollHeight,a.clientHeight),r=-t.scrollLeft+pf(e),l=-t.scrollTop;return ci(a).direction==="rtl"&&(r+=li(e.clientWidth,a.clientWidth)-n),{width:n,height:i,x:r,y:l}}var nz=25;function iz(e,t,a){a===void 0&&(a="viewport");let n=a==="layoutViewport",i=La(e),r=$i(e),l=i.visualViewport,o=r.clientWidth,d=r.clientHeight,h=0,s=0;if(l){let u=!mf()||t==="fixed";n?u||(h=-l.offsetLeft,s=-l.offsetTop):(o=l.width,d=l.height,u&&(h=l.offsetLeft,s=l.offsetTop))}if(pf(r)<=0){let u=r.ownerDocument,m=u.body,p=getComputedStyle(m),f=u.compatMode==="CSS1Compat"&&parseFloat(p.marginLeft)+parseFloat(p.marginRight)||0,y=Math.abs(r.clientWidth-m.clientWidth-f),g=getComputedStyle(r).scrollbarGutter==="stable both-edges"?y/2:y;g<=nz&&(o-=g)}return{width:o,height:d,x:h,y:s}}function rz(e,t){let a=Vo(e,!0,t==="fixed"),n=a.top+e.clientTop,i=a.left+e.clientLeft,r=pc(e),l=e.clientWidth*r.x,o=e.clientHeight*r.y,d=i*r.x,h=n*r.y;return{width:l,height:o,x:d,y:h}}function X4(e,t,a){let n;if(t==="viewport"||t==="layoutViewport")n=iz(e,a,t);else if(t==="document")n=az($i(e));else if(si(t))n=rz(t,a);else{let i=q4(e);n={x:t.x-i.x,y:t.y-i.y,width:t.width,height:t.height}}return Fo(n)}function lz(e,t){let a=t.get(e);if(a)return a;let n=Go(e,[],!1).filter(o=>si(o)&&$o(o)!=="body"),i=null,r=ci(e).position==="fixed",l=r?xl(e):e;for(;si(l)&&!hc(l);){let o=ci(l),d=uf(l),h=i?i.position:r?"fixed":"";!d&&(h==="fixed"||h==="absolute"&&o.position==="static")?n=n.filter(c=>c!==l):i=o,l=xl(l)}return t.set(e,n),n}function oz(e){let{element:t,boundary:a,rootBoundary:n,strategy:i}=e,l=[...a==="clippingAncestors"?Xu(t)?[]:lz(t,this._c):[].concat(a),n],o=X4(t,l[0],i),d=o.top,h=o.right,s=o.bottom,c=o.left;for(let u=1;u<l.length;u++){let m=X4(t,l[u],i);d=li(m.top,d),h=Fi(m.right,h),s=Fi(m.bottom,s),c=li(m.left,c)}return{width:h-c,height:s-d,x:c,y:d}}function sz(e){let{width:t,height:a}=K4(e);return{width:t,height:a}}function cz(e,t,a){let n=Ar(t),i=$i(t),r=a==="fixed",l=Vo(e,!0,r,t),o={scrollLeft:0,scrollTop:0},d=Yi(0);if((n||!r)&&(($o(t)!=="body"||Vu(i))&&(o=Zu(t)),n)){let u=Vo(t,!0,r,t);d.x=u.x+t.clientLeft,d.y=u.y+t.clientTop}!n&&i&&(d.x=pf(i));let h=i&&!n&&!r?Q4(i,o):Yi(0),s=l.left+o.scrollLeft-d.x-h.x,c=l.top+o.scrollTop-d.y-h.y;return{x:s,y:c,width:l.width,height:l.height}}function gy(e){return ci(e).position==="static"}function Z4(e,t){if(!Ar(e)||ci(e).position==="fixed")return null;if(t)return t(e);let a=e.offsetParent;return $i(e)===a&&(a=a.ownerDocument.body),a}function W4(e,t){let a=La(e);if(Xu(e))return a;if(!Ar(e)){let i=xl(e);for(;i&&!hc(i);){if(si(i)&&!gy(i))return i;i=xl(i)}return a}let n=Z4(e,t);for(;n&&G4(n)&&gy(n);)n=Z4(n,t);return n&&hc(n)&&gy(n)&&!uf(n)?a:n||$4(e)||a}var dz=async function(e){let t=this.getOffsetParent||W4,a=this.getDimensions,n=await a(e.floating);return{reference:cz(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:n.width,height:n.height}}};function uz(e){return ci(e).direction==="rtl"}var J4={convertOffsetParentRelativeRectToViewportRelativeRect:ez,getDocumentElement:$i,getClippingRect:oz,getOffsetParent:W4,getElementRects:dz,getClientRects:tz,getDimensions:sz,getScale:pc,isElement:si,isRTL:uz};function ek(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function mz(e,t,a){let n=null,i,r=$i(e);function l(){var s;clearTimeout(i),(s=n)==null||s.disconnect(),n=null}function o(s,c){s===void 0&&(s=!1),c===void 0&&(c=1),l();let u=e.getBoundingClientRect(),{left:m,top:p,width:f,height:y}=u;if(s||t(),!f||!y)return;let g=$u(p),b=$u(r.clientWidth-(m+f)),v=$u(r.clientHeight-(p+y)),x=$u(m),S={rootMargin:-g+"px "+-b+"px "+-v+"px "+-x+"px",threshold:li(0,Fi(1,c))||1},C=!0;function _(D){let k=D[0].intersectionRatio;if(!ek(u,e.getBoundingClientRect()))return o();if(k!==c){if(!C)return o();k?o(!1,k):i=setTimeout(()=>{o(!1,1e-7)},1e3)}C=!1}try{n=new IntersectionObserver(_,{...S,root:r.ownerDocument})}catch{n=new IntersectionObserver(_,S)}n.observe(e)}let d=La(e),h=()=>o(a);return d.addEventListener("resize",h),o(!0),()=>{d.removeEventListener("resize",h),l()}}function vy(e,t,a,n){n===void 0&&(n={});let{ancestorScroll:i=!0,ancestorResize:r=!0,elementResize:l=typeof ResizeObserver=="function",layoutShift:o=typeof IntersectionObserver=="function",animationFrame:d=!1}=n,h=by(e),s=i||r?[...h?Go(h):[],...t?Go(t):[]]:[];s.forEach(g=>{i&&g.addEventListener("scroll",a),r&&g.addEventListener("resize",a)});let c=h&&o?mz(h,a,r):null,u=-1,m=null;l&&(m=new ResizeObserver(g=>{let[b]=g;b&&b.target===h&&m&&t&&(m.unobserve(t),cancelAnimationFrame(u),u=requestAnimationFrame(()=>{var v;(v=m)==null||v.observe(t)})),a()}),h&&!d&&m.observe(h),t&&m.observe(t));let p,f=d?Vo(e):null;d&&y();function y(){let g=Vo(e);f&&!ek(f,g)&&a(),f=g,p=requestAnimationFrame(y)}return a(),()=>{var g;s.forEach(b=>{i&&b.removeEventListener("scroll",a),r&&b.removeEventListener("resize",a)}),c?.(),(g=m)==null||g.disconnect(),m=null,d&&cancelAnimationFrame(p)}}var tk=U4;var ak=P4,nk=O4,ik=H4,rk=z4,yy=R4;var lk=j4,xy=(e,t,a)=>{let n=new Map,i=a??{},r={...J4,...i.platform,_c:n};return L4(e,t,{...i,platform:r})};var Et=T(R(),1),sk=T(R(),1),ck=T(sn(),1),hz=typeof document<"u",pz=function(){},ff=hz?sk.useLayoutEffect:pz;function gf(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e=="function"&&e.toString()===t.toString())return!0;let a,n,i;if(e&&t&&typeof e=="object"){if(Array.isArray(e)){if(a=e.length,a!==t.length)return!1;for(n=a;n--!==0;)if(!gf(e[n],t[n]))return!1;return!0}if(i=Object.keys(e),a=i.length,a!==Object.keys(t).length)return!1;for(n=a;n--!==0;)if(!{}.hasOwnProperty.call(t,i[n]))return!1;for(n=a;n--!==0;){let r=i[n];if(!(r==="_owner"&&e.$$typeof)&&!gf(e[r],t[r]))return!1}return!0}return e!==e&&t!==t}function dk(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function ok(e,t){let a=dk(e);return Math.round(t*a)/a}function wy(e){let t=Et.useRef(e);return ff(()=>{t.current=e}),t}function uk(e){e===void 0&&(e={});let{placement:t="bottom",strategy:a="absolute",middleware:n=[],platform:i,elements:{reference:r,floating:l}={},transform:o=!0,whileElementsMounted:d,open:h}=e,[s,c]=Et.useState({x:0,y:0,strategy:a,placement:t,middlewareData:{},isPositioned:!1}),[u,m]=Et.useState(n);gf(u,n)||m(n);let[p,f]=Et.useState(null),[y,g]=Et.useState(null),b=Et.useCallback(V=>{V!==S.current&&(S.current=V,f(V))},[]),v=Et.useCallback(V=>{V!==C.current&&(C.current=V,g(V))},[]),x=r||p,E=l||y,S=Et.useRef(null),C=Et.useRef(null),_=Et.useRef(s),D=d!=null,k=wy(d),I=wy(i),j=wy(h),z=Et.useCallback(()=>{if(!S.current||!C.current)return;let V={placement:t,strategy:a,middleware:u};I.current&&(V.platform=I.current),xy(S.current,C.current,V).then(X=>{let re={...X,isPositioned:j.current!==!1};G.current&&!gf(_.current,re)&&(_.current=re,ck.flushSync(()=>{c(re)}))})},[u,t,a,I,j]);ff(()=>{h===!1&&_.current.isPositioned&&(_.current.isPositioned=!1,c(V=>({...V,isPositioned:!1})))},[h]);let G=Et.useRef(!1);ff(()=>(G.current=!0,()=>{G.current=!1}),[]),ff(()=>{if(x&&(S.current=x),E&&(C.current=E),x&&E){if(k.current)return k.current(x,E,z);z()}},[x,E,z,k,D]);let O=Et.useMemo(()=>({reference:S,floating:C,setReference:b,setFloating:v}),[b,v]),P=Et.useMemo(()=>({reference:x,floating:E}),[x,E]),W=Et.useMemo(()=>{let V={position:a,left:0,top:0};if(!P.floating)return V;let X=ok(P.floating,s.x),re=ok(P.floating,s.y);return o?{...V,transform:"translate("+X+"px, "+re+"px)",...dk(P.floating)>=1.5&&{willChange:"transform"}}:{position:a,left:X,top:re}},[a,o,P.floating,s.x,s.y]);return Et.useMemo(()=>({...s,update:z,refs:O,elements:P,floatingStyles:W}),[s,z,O,P,W])}var fz=e=>{function t(a){return{}.hasOwnProperty.call(a,"current")}return{name:"arrow",options:e,fn(a){let{element:n,padding:i}=typeof e=="function"?e(a):e;return n&&t(n)?n.current!=null?yy({element:n.current,padding:i}).fn(a):{}:n?yy({element:n,padding:i}).fn(a):{}}}},mk=(e,t)=>{let a=tk(e);return{name:a.name,fn:a.fn,options:[e,t]}},hk=(e,t)=>{let a=ak(e);return{name:a.name,fn:a.fn,options:[e,t]}},pk=(e,t)=>({fn:lk(e).fn,options:[e,t]}),fk=(e,t)=>{let a=nk(e);return{name:a.name,fn:a.fn,options:[e,t]}},gk=(e,t)=>{let a=ik(e);return{name:a.name,fn:a.fn,options:[e,t]}};var bk=(e,t)=>{let a=rk(e);return{name:a.name,fn:a.fn,options:[e,t]}};var vk=(e,t)=>{let a=fz(e);return{name:a.name,fn:a.fn,options:[e,t]}};var yk=T(R(),1);var Ey=T(N(),1),gz="Arrow",xk=yk.forwardRef((e,t)=>{let{children:a,width:n=10,height:i=5,...r}=e;return(0,Ey.jsx)(Na.svg,{...r,ref:t,width:n,height:i,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:e.asChild?a:(0,Ey.jsx)("polygon",{points:"0,0 30,0 15,10"})})});xk.displayName=gz;var wk=xk;var Ek=T(R(),1);function Sk(e){let[t,a]=Ek.useState(void 0);return Ln(()=>{if(e){a({width:e.offsetWidth,height:e.offsetHeight});let n=new ResizeObserver(i=>{if(!Array.isArray(i)||!i.length)return;let r=i[0],l,o;if("borderBoxSize"in r){let d=r.borderBoxSize,h=Array.isArray(d)?d[0]:d;l=h.inlineSize,o=h.blockSize}else l=e.offsetWidth,o=e.offsetHeight;a({width:l,height:o})});return n.observe(e,{box:"border-box"}),()=>n.unobserve(e)}else a(void 0)},[e]),t}var wl=T(N(),1);var Sy="Popper",[Ck,Cy]=nf(Sy),[vz,Tk]=Ck(Sy),_k=e=>{let{__scopePopper:t,children:a}=e,[n,i]=un.useState(null);return(0,wl.jsx)(vz,{scope:t,anchor:n,onAnchorChange:i,children:a})};_k.displayName=Sy;var kk="PopperAnchor",Mk=un.forwardRef((e,t)=>{let{__scopePopper:a,virtualRef:n,...i}=e,r=Tk(kk,a),l=un.useRef(null),o=cn(t,l);return un.useEffect(()=>{r.onAnchorChange(n?.current||l.current)}),n?null:(0,wl.jsx)(Na.div,{...i,ref:o})});Mk.displayName=kk;var Ty="PopperContent",[yz,xz]=Ck(Ty),Ak=un.forwardRef((e,t)=>{let{__scopePopper:a,side:n="bottom",sideOffset:i=0,align:r="center",alignOffset:l=0,arrowPadding:o=0,avoidCollisions:d=!0,collisionBoundary:h=[],collisionPadding:s=0,sticky:c="partial",hideWhenDetached:u=!1,updatePositionStrategy:m="optimized",onPlaced:p,...f}=e,y=Tk(Ty,a),[g,b]=un.useState(null),v=cn(t,Ya=>b(Ya)),[x,E]=un.useState(null),S=Sk(x),C=S?.width??0,_=S?.height??0,D=n+(r!=="center"?"-"+r:""),k=typeof s=="number"?s:{top:0,right:0,bottom:0,left:0,...s},I=Array.isArray(h)?h:[h],j=I.length>0,z={padding:k,boundary:I.filter(Ez),altBoundary:j},{refs:G,floatingStyles:O,placement:P,isPositioned:W,middlewareData:V}=uk({strategy:"fixed",placement:D,whileElementsMounted:(...Ya)=>vy(...Ya,{animationFrame:m==="always"}),elements:{reference:y.anchor},middleware:[mk({mainAxis:i+_,alignmentAxis:l}),d&&hk({mainAxis:!0,crossAxis:!1,limiter:c==="partial"?pk():void 0,...z}),d&&fk({...z}),gk({...z,apply:({elements:Ya,rects:vr,availableWidth:Kd,availableHeight:ka})=>{let{width:yt,height:Dv}=vr.reference,wo=Ya.floating.style;wo.setProperty("--radix-popper-available-width",`${Kd}px`),wo.setProperty("--radix-popper-available-height",`${ka}px`),wo.setProperty("--radix-popper-anchor-width",`${yt}px`),wo.setProperty("--radix-popper-anchor-height",`${Dv}px`)}}),x&&vk({element:x,padding:o}),Sz({arrowWidth:C,arrowHeight:_}),u&&bk({strategy:"referenceHidden",...z})]}),[X,re]=Nk(P),oe=dn(p);Ln(()=>{W&&oe?.()},[W,oe]);let ve=V.arrow?.x,Ht=V.arrow?.y,_a=V.arrow?.centerOffset!==0,[_n,ai]=un.useState();return Ln(()=>{g&&ai(window.getComputedStyle(g).zIndex)},[g]),(0,wl.jsx)("div",{ref:G.setFloating,"data-radix-popper-content-wrapper":"",style:{...O,transform:W?O.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:_n,"--radix-popper-transform-origin":[V.transformOrigin?.x,V.transformOrigin?.y].join(" "),...V.hide?.referenceHidden&&{visibility:"hidden",pointerEvents:"none"}},dir:e.dir,children:(0,wl.jsx)(yz,{scope:a,placedSide:X,onArrowChange:E,arrowX:ve,arrowY:Ht,shouldHideArrow:_a,children:(0,wl.jsx)(Na.div,{"data-side":X,"data-align":re,...f,ref:v,style:{...f.style,animation:W?void 0:"none"}})})})});Ak.displayName=Ty;var Dk="PopperArrow",wz={top:"bottom",right:"left",bottom:"top",left:"right"},Ik=un.forwardRef(function(t,a){let{__scopePopper:n,...i}=t,r=xz(Dk,n),l=wz[r.placedSide];return(0,wl.jsx)("span",{ref:r.onArrowChange,style:{position:"absolute",left:r.arrowX,top:r.arrowY,[l]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[r.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[r.placedSide],visibility:r.shouldHideArrow?"hidden":void 0},children:(0,wl.jsx)(wk,{...i,ref:a,style:{...i.style,display:"block"}})})});Ik.displayName=Dk;function Ez(e){return e!==null}var Sz=e=>({name:"transformOrigin",options:e,fn(t){let{placement:a,rects:n,middlewareData:i}=t,l=i.arrow?.centerOffset!==0,o=l?0:e.arrowWidth,d=l?0:e.arrowHeight,[h,s]=Nk(a),c={start:"0%",center:"50%",end:"100%"}[s],u=(i.arrow?.x??0)+o/2,m=(i.arrow?.y??0)+d/2,p="",f="";return h==="bottom"?(p=l?c:`${u}px`,f=`${-d}px`):h==="top"?(p=l?c:`${u}px`,f=`${n.floating.height+d}px`):h==="right"?(p=`${-d}px`,f=l?c:`${m}px`):h==="left"&&(p=`${n.floating.width+d}px`,f=l?c:`${m}px`),{data:{x:p,y:f}}}});function Nk(e){let[t,a="center"]=e.split("-");return[t,a]}var Lk=_k,_y=Mk,Rk=Ak,Ok=Ik;var bf=T(R(),1),zk=T(sn(),1);var Bk=T(N(),1),Tz="Portal",ky=bf.forwardRef((e,t)=>{let{container:a,...n}=e,[i,r]=bf.useState(!1);Ln(()=>r(!0),[]);let l=a||i&&globalThis?.document?.body;return l?zk.default.createPortal((0,Bk.jsx)(Na.div,{...n,ref:t}),l):null});ky.displayName=Tz;var $a=T(R(),1);var Uk=T(R(),1);function _z(e,t){return Uk.useReducer((a,n)=>t[a][n]??a,e)}var yf=e=>{let{present:t,children:a}=e,n=kz(t),i=typeof a=="function"?a({present:n.isPresent}):$a.Children.only(a),r=cn(n.ref,Mz(i));return typeof a=="function"||n.isPresent?$a.cloneElement(i,{ref:r}):null};yf.displayName="Presence";function kz(e){let[t,a]=$a.useState(),n=$a.useRef({}),i=$a.useRef(e),r=$a.useRef("none"),l=e?"mounted":"unmounted",[o,d]=_z(l,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return $a.useEffect(()=>{let h=vf(n.current);r.current=o==="mounted"?h:"none"},[o]),Ln(()=>{let h=n.current,s=i.current;if(s!==e){let u=r.current,m=vf(h);e?d("MOUNT"):m==="none"||h?.display==="none"?d("UNMOUNT"):d(s&&u!==m?"ANIMATION_OUT":"UNMOUNT"),i.current=e}},[e,d]),Ln(()=>{if(t){let h,s=t.ownerDocument.defaultView??window,c=m=>{let f=vf(n.current).includes(m.animationName);if(m.target===t&&f&&(d("ANIMATION_END"),!i.current)){let y=t.style.animationFillMode;t.style.animationFillMode="forwards",h=s.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=y)})}},u=m=>{m.target===t&&(r.current=vf(n.current))};return t.addEventListener("animationstart",u),t.addEventListener("animationcancel",c),t.addEventListener("animationend",c),()=>{s.clearTimeout(h),t.removeEventListener("animationstart",u),t.removeEventListener("animationcancel",c),t.removeEventListener("animationend",c)}}else d("ANIMATION_END")},[t,d]),{isPresent:["mounted","unmountSuspended"].includes(o),ref:$a.useCallback(h=>{h&&(n.current=getComputedStyle(h)),a(h)},[])}}function vf(e){return e?.animationName||"none"}function Mz(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,a=t&&"isReactWarning"in t&&t.isReactWarning;return a?e.ref:(t=Object.getOwnPropertyDescriptor(e,"ref")?.get,a=t&&"isReactWarning"in t&&t.isReactWarning,a?e.props.ref:e.props.ref||e.ref)}var El=T(R(),1);function Pk({prop:e,defaultProp:t,onChange:a=()=>{}}){let[n,i]=Az({defaultProp:t,onChange:a}),r=e!==void 0,l=r?e:n,o=dn(a),d=El.useCallback(h=>{if(r){let c=typeof h=="function"?h(e):h;c!==e&&o(c)}else i(h)},[r,e,i,o]);return[l,d]}function Az({defaultProp:e,onChange:t}){let a=El.useState(e),[n]=a,i=El.useRef(n),r=dn(t);return El.useEffect(()=>{i.current!==n&&(r(n),i.current=n)},[n,i,r]),a}var Dz=function(e){if(typeof document>"u")return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},fc=new WeakMap,xf=new WeakMap,wf={},My=0,jk=function(e){return e&&(e.host||jk(e.parentNode))},Iz=function(e,t){return t.map(function(a){if(e.contains(a))return a;var n=jk(a);return n&&e.contains(n)?n:(console.error("aria-hidden",a,"in not contained inside",e,". Doing nothing"),null)}).filter(function(a){return!!a})},Nz=function(e,t,a,n){var i=Iz(t,Array.isArray(e)?e:[e]);wf[a]||(wf[a]=new WeakMap);var r=wf[a],l=[],o=new Set,d=new Set(i),h=function(c){!c||o.has(c)||(o.add(c),h(c.parentNode))};i.forEach(h);var s=function(c){!c||d.has(c)||Array.prototype.forEach.call(c.children,function(u){if(o.has(u))s(u);else try{var m=u.getAttribute(n),p=m!==null&&m!=="false",f=(fc.get(u)||0)+1,y=(r.get(u)||0)+1;fc.set(u,f),r.set(u,y),l.push(u),f===1&&p&&xf.set(u,!0),y===1&&u.setAttribute(a,"true"),p||u.setAttribute(n,"true")}catch(g){console.error("aria-hidden: cannot operate on ",u,g)}})};return s(t),o.clear(),My++,function(){l.forEach(function(c){var u=fc.get(c)-1,m=r.get(c)-1;fc.set(c,u),r.set(c,m),u||(xf.has(c)||c.removeAttribute(n),xf.delete(c)),m||c.removeAttribute(a)}),My--,My||(fc=new WeakMap,fc=new WeakMap,xf=new WeakMap,wf={})}},Hk=function(e,t,a){a===void 0&&(a="data-aria-hidden");var n=Array.from(Array.isArray(e)?e:[e]),i=t||Dz(e);return i?(n.push.apply(n,Array.from(i.querySelectorAll("[aria-live], script"))),Nz(n,i,a,"aria-hidden")):function(){return null}};var Va=function(){return Va=Object.assign||function(t){for(var a,n=1,i=arguments.length;n<i;n++){a=arguments[n];for(var r in a)Object.prototype.hasOwnProperty.call(a,r)&&(t[r]=a[r])}return t},Va.apply(this,arguments)};function Ef(e,t){var a={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(a[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(e);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(e,n[i])&&(a[n[i]]=e[n[i]]);return a}function Fk(e,t,a){if(a||arguments.length===2)for(var n=0,i=t.length,r;n<i;n++)(r||!(n in t))&&(r||(r=Array.prototype.slice.call(t,0,n)),r[n]=t[n]);return e.concat(r||Array.prototype.slice.call(t))}var kf=T(R());var ha=T(R());var Xo="right-scroll-bar-position",Zo="width-before-scroll-bar",Ay="with-scroll-bars-hidden",Dy="--removed-body-scroll-bar-size";function Sf(e,t){return typeof e=="function"?e(t):e&&(e.current=t),e}var Yk=T(R());function Gk(e,t){var a=(0,Yk.useState)(function(){return{value:e,callback:t,facade:{get current(){return a.value},set current(n){var i=a.value;i!==n&&(a.value=n,a.callback(n,i))}}}})[0];return a.callback=t,a.facade}var Cf=T(R());var Lz=typeof window<"u"?Cf.useLayoutEffect:Cf.useEffect,$k=new WeakMap;function Iy(e,t){var a=Gk(t||null,function(n){return e.forEach(function(i){return Sf(i,n)})});return Lz(function(){var n=$k.get(a);if(n){var i=new Set(n),r=new Set(e),l=a.current;i.forEach(function(o){r.has(o)||Sf(o,null)}),r.forEach(function(o){i.has(o)||Sf(o,l)})}$k.set(a,e)},[e]),a}function Rz(e){return e}function Oz(e,t){t===void 0&&(t=Rz);var a=[],n=!1,i={read:function(){if(n)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return a.length?a[a.length-1]:e},useMedium:function(r){var l=t(r,n);return a.push(l),function(){a=a.filter(function(o){return o!==l})}},assignSyncMedium:function(r){for(n=!0;a.length;){var l=a;a=[],l.forEach(r)}a={push:function(o){return r(o)},filter:function(){return a}}},assignMedium:function(r){n=!0;var l=[];if(a.length){var o=a;a=[],o.forEach(r),l=a}var d=function(){var s=l;l=[],s.forEach(r)},h=function(){return Promise.resolve().then(d)};h(),a={push:function(s){l.push(s),h()},filter:function(s){return l=l.filter(s),a}}}};return i}function Ny(e){e===void 0&&(e={});var t=Oz(null);return t.options=Va({async:!0,ssr:!1},e),t}var Vk=T(R()),Xk=function(e){var t=e.sideCar,a=Ef(e,["sideCar"]);if(!t)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var n=t.read();if(!n)throw new Error("Sidecar medium not found");return Vk.createElement(n,Va({},a))};Xk.isSideCarExport=!0;function Ly(e,t){return e.useMedium(t),Xk}var Tf=Ny();var Ry=function(){},Ku=ha.forwardRef(function(e,t){var a=ha.useRef(null),n=ha.useState({onScrollCapture:Ry,onWheelCapture:Ry,onTouchMoveCapture:Ry}),i=n[0],r=n[1],l=e.forwardProps,o=e.children,d=e.className,h=e.removeScrollBar,s=e.enabled,c=e.shards,u=e.sideCar,m=e.noRelative,p=e.noIsolation,f=e.inert,y=e.allowPinchZoom,g=e.as,b=g===void 0?"div":g,v=e.gapMode,x=Ef(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),E=u,S=Iy([a,t]),C=Va(Va({},x),i);return ha.createElement(ha.Fragment,null,s&&ha.createElement(E,{sideCar:Tf,removeScrollBar:h,shards:c,noRelative:m,noIsolation:p,inert:f,setCallbacks:r,allowPinchZoom:!!y,lockRef:a,gapMode:v}),l?ha.cloneElement(ha.Children.only(o),Va(Va({},C),{ref:S})):ha.createElement(b,Va({},C,{className:d,ref:S}),o))});Ku.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};Ku.classNames={fullWidth:Zo,zeroRight:Xo};var Qe=T(R());var bc=T(R());var qk=T(R());var Zk;var Kk=function(){if(Zk)return Zk;if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function zz(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=Kk();return t&&e.setAttribute("nonce",t),e}function Bz(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function Uz(e){var t=document.head||document.getElementsByTagName("head")[0];t.appendChild(e)}var Oy=function(){var e=0,t=null;return{add:function(a){e==0&&(t=zz())&&(Bz(t,a),Uz(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}};var zy=function(){var e=Oy();return function(t,a){qk.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&a])}};var qu=function(){var e=zy(),t=function(a){var n=a.styles,i=a.dynamic;return e(n,i),null};return t};var Pz={left:0,top:0,right:0,gap:0},By=function(e){return parseInt(e||"",10)||0},jz=function(e){var t=window.getComputedStyle(document.body),a=t[e==="padding"?"paddingLeft":"marginLeft"],n=t[e==="padding"?"paddingTop":"marginTop"],i=t[e==="padding"?"paddingRight":"marginRight"];return[By(a),By(n),By(i)]},Uy=function(e){if(e===void 0&&(e="margin"),typeof window>"u")return Pz;var t=jz(e),a=document.documentElement.clientWidth,n=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,n-a+t[2]-t[0])}};var Hz=qu(),gc="data-scroll-locked",Fz=function(e,t,a,n){var i=e.left,r=e.top,l=e.right,o=e.gap;return a===void 0&&(a="margin"),`
|
|
10
|
+
.`.concat(Ay,` {
|
|
11
|
+
overflow: hidden `).concat(n,`;
|
|
12
|
+
padding-right: `).concat(o,"px ").concat(n,`;
|
|
13
|
+
}
|
|
14
|
+
body[`).concat(gc,`] {
|
|
15
|
+
overflow: hidden `).concat(n,`;
|
|
16
|
+
overscroll-behavior: contain;
|
|
17
|
+
`).concat([t&&"position: relative ".concat(n,";"),a==="margin"&&`
|
|
18
|
+
padding-left: `.concat(i,`px;
|
|
19
|
+
padding-top: `).concat(r,`px;
|
|
20
|
+
padding-right: `).concat(l,`px;
|
|
21
|
+
margin-left:0;
|
|
22
|
+
margin-top:0;
|
|
23
|
+
margin-right: `).concat(o,"px ").concat(n,`;
|
|
24
|
+
`),a==="padding"&&"padding-right: ".concat(o,"px ").concat(n,";")].filter(Boolean).join(""),`
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.`).concat(Xo,` {
|
|
28
|
+
right: `).concat(o,"px ").concat(n,`;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.`).concat(Zo,` {
|
|
32
|
+
margin-right: `).concat(o,"px ").concat(n,`;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.`).concat(Xo," .").concat(Xo,` {
|
|
36
|
+
right: 0 `).concat(n,`;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
.`).concat(Zo," .").concat(Zo,` {
|
|
40
|
+
margin-right: 0 `).concat(n,`;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
body[`).concat(gc,`] {
|
|
44
|
+
`).concat(Dy,": ").concat(o,`px;
|
|
45
|
+
}
|
|
46
|
+
`)},Qk=function(){var e=parseInt(document.body.getAttribute(gc)||"0",10);return isFinite(e)?e:0},Yz=function(){bc.useEffect(function(){return document.body.setAttribute(gc,(Qk()+1).toString()),function(){var e=Qk()-1;e<=0?document.body.removeAttribute(gc):document.body.setAttribute(gc,e.toString())}},[])},Py=function(e){var t=e.noRelative,a=e.noImportant,n=e.gapMode,i=n===void 0?"margin":n;Yz();var r=bc.useMemo(function(){return Uy(i)},[i]);return bc.createElement(Hz,{styles:Fz(r,!t,i,a?"":"!important")})};var jy=!1;if(typeof window<"u")try{Qu=Object.defineProperty({},"passive",{get:function(){return jy=!0,!0}}),window.addEventListener("test",Qu,Qu),window.removeEventListener("test",Qu,Qu)}catch{jy=!1}var Qu,Ko=jy?{passive:!1}:!1;var Gz=function(e){return e.tagName==="TEXTAREA"},Wk=function(e,t){if(!(e instanceof Element))return!1;var a=window.getComputedStyle(e);return a[t]!=="hidden"&&!(a.overflowY===a.overflowX&&!Gz(e)&&a[t]==="visible")},$z=function(e){return Wk(e,"overflowY")},Vz=function(e){return Wk(e,"overflowX")},Hy=function(e,t){var a=t.ownerDocument,n=t;do{typeof ShadowRoot<"u"&&n instanceof ShadowRoot&&(n=n.host);var i=Jk(e,n);if(i){var r=e6(e,n),l=r[1],o=r[2];if(l>o)return!0}n=n.parentNode}while(n&&n!==a.body);return!1},Xz=function(e){var t=e.scrollTop,a=e.scrollHeight,n=e.clientHeight;return[t,a,n]},Zz=function(e){var t=e.scrollLeft,a=e.scrollWidth,n=e.clientWidth;return[t,a,n]},Jk=function(e,t){return e==="v"?$z(t):Vz(t)},e6=function(e,t){return e==="v"?Xz(t):Zz(t)},Kz=function(e,t){return e==="h"&&t==="rtl"?-1:1},t6=function(e,t,a,n,i){var r=Kz(e,window.getComputedStyle(t).direction),l=r*n,o=a.target,d=t.contains(o),h=!1,s=l>0,c=0,u=0;do{if(!o)break;var m=e6(e,o),p=m[0],f=m[1],y=m[2],g=f-y-r*p;(p||g)&&Jk(e,o)&&(c+=g,u+=p);var b=o.parentNode;o=b&&b.nodeType===Node.DOCUMENT_FRAGMENT_NODE?b.host:b}while(!d&&o!==document.body||d&&(t.contains(o)||t===o));return(s&&(i&&Math.abs(c)<1||!i&&l>c)||!s&&(i&&Math.abs(u)<1||!i&&-l>u))&&(h=!0),h};var _f=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},a6=function(e){return[e.deltaX,e.deltaY]},n6=function(e){return e&&"current"in e?e.current:e},qz=function(e,t){return e[0]===t[0]&&e[1]===t[1]},Qz=function(e){return`
|
|
47
|
+
.block-interactivity-`.concat(e,` {pointer-events: none;}
|
|
48
|
+
.allow-interactivity-`).concat(e,` {pointer-events: all;}
|
|
49
|
+
`)},Wz=0,vc=[];function i6(e){var t=Qe.useRef([]),a=Qe.useRef([0,0]),n=Qe.useRef(),i=Qe.useState(Wz++)[0],r=Qe.useState(qu)[0],l=Qe.useRef(e);Qe.useEffect(function(){l.current=e},[e]),Qe.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(i));var f=Fk([e.lockRef.current],(e.shards||[]).map(n6),!0).filter(Boolean);return f.forEach(function(y){return y.classList.add("allow-interactivity-".concat(i))}),function(){document.body.classList.remove("block-interactivity-".concat(i)),f.forEach(function(y){return y.classList.remove("allow-interactivity-".concat(i))})}}},[e.inert,e.lockRef.current,e.shards]);var o=Qe.useCallback(function(f,y){if("touches"in f&&f.touches.length===2||f.type==="wheel"&&f.ctrlKey)return!l.current.allowPinchZoom;var g=_f(f),b=a.current,v="deltaX"in f?f.deltaX:b[0]-g[0],x="deltaY"in f?f.deltaY:b[1]-g[1],E,S=f.target,C=Math.abs(v)>Math.abs(x)?"h":"v";if("touches"in f&&C==="h"&&S.type==="range")return!1;var _=window.getSelection(),D=_&&_.anchorNode,k=D?D===S||D.contains(S):!1;if(k)return!1;var I=Hy(C,S);if(!I)return!0;if(I?E=C:(E=C==="v"?"h":"v",I=Hy(C,S)),!I)return!1;if(!n.current&&"changedTouches"in f&&(v||x)&&(n.current=E),!E)return!0;var j=n.current||E;return t6(j,y,f,j==="h"?v:x,!0)},[]),d=Qe.useCallback(function(f){var y=f;if(!(!vc.length||vc[vc.length-1]!==r)){var g="deltaY"in y?a6(y):_f(y),b=t.current.filter(function(E){return E.name===y.type&&(E.target===y.target||y.target===E.shadowParent)&&qz(E.delta,g)})[0];if(b&&b.should){y.cancelable&&y.preventDefault();return}if(!b){var v=(l.current.shards||[]).map(n6).filter(Boolean).filter(function(E){return E.contains(y.target)}),x=v.length>0?o(y,v[0]):!l.current.noIsolation;x&&y.cancelable&&y.preventDefault()}}},[]),h=Qe.useCallback(function(f,y,g,b){var v={name:f,delta:y,target:g,should:b,shadowParent:Jz(g)};t.current.push(v),setTimeout(function(){t.current=t.current.filter(function(x){return x!==v})},1)},[]),s=Qe.useCallback(function(f){a.current=_f(f),n.current=void 0},[]),c=Qe.useCallback(function(f){h(f.type,a6(f),f.target,o(f,e.lockRef.current))},[]),u=Qe.useCallback(function(f){h(f.type,_f(f),f.target,o(f,e.lockRef.current))},[]);Qe.useEffect(function(){return vc.push(r),e.setCallbacks({onScrollCapture:c,onWheelCapture:c,onTouchMoveCapture:u}),document.addEventListener("wheel",d,Ko),document.addEventListener("touchmove",d,Ko),document.addEventListener("touchstart",s,Ko),function(){vc=vc.filter(function(f){return f!==r}),document.removeEventListener("wheel",d,Ko),document.removeEventListener("touchmove",d,Ko),document.removeEventListener("touchstart",s,Ko)}},[]);var m=e.removeScrollBar,p=e.inert;return Qe.createElement(Qe.Fragment,null,p?Qe.createElement(r,{styles:Qz(i)}):null,m?Qe.createElement(Py,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function Jz(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}var r6=Ly(Tf,i6);var l6=kf.forwardRef(function(e,t){return kf.createElement(Ku,Va({},e,{ref:t,sideCar:r6}))});l6.classNames=Ku.classNames;var Fy=l6;var St=T(N(),1),Yy="Popover",[o6,$q]=nf(Yy,[Cy]),Wu=Cy(),[eB,Sl]=o6(Yy),s6=e=>{let{__scopePopover:t,children:a,open:n,defaultOpen:i,onOpenChange:r,modal:l=!1}=e,o=Wu(t),d=at.useRef(null),[h,s]=at.useState(!1),[c=!1,u]=Pk({prop:n,defaultProp:i,onChange:r});return(0,St.jsx)(Lk,{...o,children:(0,St.jsx)(eB,{scope:t,contentId:E4(),triggerRef:d,open:c,onOpenChange:u,onOpenToggle:at.useCallback(()=>u(m=>!m),[u]),hasCustomAnchor:h,onCustomAnchorAdd:at.useCallback(()=>s(!0),[]),onCustomAnchorRemove:at.useCallback(()=>s(!1),[]),modal:l,children:a})})};s6.displayName=Yy;var c6="PopoverAnchor",tB=at.forwardRef((e,t)=>{let{__scopePopover:a,...n}=e,i=Sl(c6,a),r=Wu(a),{onCustomAnchorAdd:l,onCustomAnchorRemove:o}=i;return at.useEffect(()=>(l(),()=>o()),[l,o]),(0,St.jsx)(_y,{...r,...n,ref:t})});tB.displayName=c6;var d6="PopoverTrigger",u6=at.forwardRef((e,t)=>{let{__scopePopover:a,...n}=e,i=Sl(d6,a),r=Wu(a),l=cn(t,i.triggerRef),o=(0,St.jsx)(Na.button,{type:"button","aria-haspopup":"dialog","aria-expanded":i.open,"aria-controls":i.contentId,"data-state":b6(i.open),...n,ref:l,onClick:Hi(e.onClick,i.onOpenToggle)});return i.hasCustomAnchor?o:(0,St.jsx)(_y,{asChild:!0,...r,children:o})});u6.displayName=d6;var Gy="PopoverPortal",[aB,nB]=o6(Gy,{forceMount:void 0}),m6=e=>{let{__scopePopover:t,forceMount:a,children:n,container:i}=e,r=Sl(Gy,t);return(0,St.jsx)(aB,{scope:t,forceMount:a,children:(0,St.jsx)(yf,{present:a||r.open,children:(0,St.jsx)(ky,{asChild:!0,container:i,children:n})})})};m6.displayName=Gy;var yc="PopoverContent",h6=at.forwardRef((e,t)=>{let a=nB(yc,e.__scopePopover),{forceMount:n=a.forceMount,...i}=e,r=Sl(yc,e.__scopePopover);return(0,St.jsx)(yf,{present:n||r.open,children:r.modal?(0,St.jsx)(iB,{...i,ref:t}):(0,St.jsx)(rB,{...i,ref:t})})});h6.displayName=yc;var iB=at.forwardRef((e,t)=>{let a=Sl(yc,e.__scopePopover),n=at.useRef(null),i=cn(t,n),r=at.useRef(!1);return at.useEffect(()=>{let l=n.current;if(l)return Hk(l)},[]),(0,St.jsx)(Fy,{as:Fu,allowPinchZoom:!0,children:(0,St.jsx)(p6,{...e,ref:i,trapFocus:a.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:Hi(e.onCloseAutoFocus,l=>{l.preventDefault(),r.current||a.triggerRef.current?.focus()}),onPointerDownOutside:Hi(e.onPointerDownOutside,l=>{let o=l.detail.originalEvent,d=o.button===0&&o.ctrlKey===!0,h=o.button===2||d;r.current=h},{checkForDefaultPrevented:!1}),onFocusOutside:Hi(e.onFocusOutside,l=>l.preventDefault(),{checkForDefaultPrevented:!1})})})}),rB=at.forwardRef((e,t)=>{let a=Sl(yc,e.__scopePopover),n=at.useRef(!1),i=at.useRef(!1);return(0,St.jsx)(p6,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:r=>{e.onCloseAutoFocus?.(r),r.defaultPrevented||(n.current||a.triggerRef.current?.focus(),r.preventDefault()),n.current=!1,i.current=!1},onInteractOutside:r=>{e.onInteractOutside?.(r),r.defaultPrevented||(n.current=!0,r.detail.originalEvent.type==="pointerdown"&&(i.current=!0));let l=r.target;a.triggerRef.current?.contains(l)&&r.preventDefault(),r.detail.originalEvent.type==="focusin"&&i.current&&r.preventDefault()}})}),p6=at.forwardRef((e,t)=>{let{__scopePopover:a,trapFocus:n,onOpenAutoFocus:i,onCloseAutoFocus:r,disableOutsidePointerEvents:l,onEscapeKeyDown:o,onPointerDownOutside:d,onFocusOutside:h,onInteractOutside:s,...c}=e,u=Sl(yc,a),m=Wu(a);return p4(),(0,St.jsx)(my,{asChild:!0,loop:!0,trapped:n,onMountAutoFocus:i,onUnmountAutoFocus:r,children:(0,St.jsx)(sy,{asChild:!0,disableOutsidePointerEvents:l,onInteractOutside:s,onEscapeKeyDown:o,onPointerDownOutside:d,onFocusOutside:h,onDismiss:()=>u.onOpenChange(!1),children:(0,St.jsx)(Rk,{"data-state":b6(u.open),role:"dialog",id:u.contentId,...m,...c,ref:t,style:{...c.style,"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}})})})}),f6="PopoverClose",lB=at.forwardRef((e,t)=>{let{__scopePopover:a,...n}=e,i=Sl(f6,a);return(0,St.jsx)(Na.button,{type:"button",...n,ref:t,onClick:Hi(e.onClick,()=>i.onOpenChange(!1))})});lB.displayName=f6;var oB="PopoverArrow",g6=at.forwardRef((e,t)=>{let{__scopePopover:a,...n}=e,i=Wu(a);return(0,St.jsx)(Ok,{...i,...n,ref:t})});g6.displayName=oB;function b6(e){return e?"open":"closed"}var Cl=s6;var Tl=u6,v6=m6,xc=h6;var Mf=g6;var jA=T(R(),1),yi=T(R(),1),gg=T(R(),1),HA=T(sn(),1),qx=T(R(),1),ym=T(R(),1),GA=T(R(),1),$A=T(R(),1),VA=T(N(),1);var qi=T(N(),1),XA=T(R(),1);var ZA=T(R(),1);var KA=T(N(),1),Bc=T(N(),1),wa=T(N(),1),us=T(R(),1);var QA=T(N(),1),Pl=T(N(),1),Pn=T(N(),1),Xc=T(R(),1);var Ot=T(R(),1);var WA=T(R(),1),xg=T(N(),1);var eD=T(R(),1),Ex=T(N(),1),wg=T(N(),1),Eg=T(R(),1),Sg=T(R(),1),Ol=T(N(),1),ag=T(N(),1),Nr=T(N(),1);var oD=T(R(),1),Kf=T(N(),1),Nl=T(N(),1),xm=T(R(),1),as=T(N(),1),J=T(N(),1),dD=T(R(),1),uD=T(N(),1),gs=T(N(),1),hD=T(N(),1),pD=T(R(),1),wm=T(N(),1),Nc=T(N(),1);var Em=T(N(),1),Ka=T(N(),1),nw=T(N(),1),ns=T(N(),1),yD=T(R(),1);var Tx=T(N(),1);var ba=T(N(),1),bs=T(N(),1),rw=T(N(),1),Gn=T(R(),1);var Zi=T(N(),1),TD=T(N(),1),jn=T(R(),1);var Mg=T(R(),1),Ag=T(R(),1),kD=T(sn(),1);var MD=T(R(),1),Sm=T(N(),1),Kt=T(R(),1),AD=T(R(),1),Dg=T(R(),1),ya=T(R(),1),ow=T(R(),1);var sw=T(N(),1),LD=T(N(),1);var Ig=T(N(),1),Uc=T(R(),1),Tm=T(R(),1),Ix=T(sn(),1);var Jo=T(N(),1),Gc=T(N(),1),hn=T(R(),1);var ee=T(N(),1);var zD=T(N(),1),UD=T(N(),1);var Ng=T(R(),1),mm=T(N(),1),Nx=T(N(),1),FD=T(N(),1),_m=T(R(),1),Lg=T(N(),1);var Tt=T(N(),1),Kc=T(R(),1);var Fl=T(R(),1),rs=T(N(),1),Rg=T(R(),1),ls=T(N(),1),YD=T(R(),1),GD=T(Xh(),1),We=T(N(),1),zn=T(N(),1),Il=T(N(),1),er=T(R(),1);var $D=T(N(),1),os=T(N(),1);var VD=T(w6(),1),XD=T(R(),1);var Og=T(R(),1);var Ju=T(R());var E6=e=>{let t,a=new Set,n=(s,c)=>{let u=typeof s=="function"?s(t):s;if(!Object.is(u,t)){let m=t;t=c??(typeof u!="object"||u===null)?u:Object.assign({},t,u),a.forEach(p=>p(t,m))}},i=()=>t,d={setState:n,getState:i,getInitialState:()=>h,subscribe:s=>(a.add(s),()=>a.delete(s)),destroy:()=>{(import.meta.env?import.meta.env.MODE:void 0)!=="production"&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),a.clear()}},h=t=e(n,i,d);return d},S6=e=>e?E6(e):E6;var R6=T(R(),1),O6=T(I6(),1),{useDebugValue:TB}=R6.default,{useSyncExternalStoreWithSelector:_B}=O6.default,N6=!1,kB=e=>e;function MB(e,t=kB,a){(import.meta.env?import.meta.env.MODE:void 0)!=="production"&&a&&!N6&&(console.warn("[DEPRECATED] Use `createWithEqualityFn` instead of `create` or use `useStoreWithEqualityFn` instead of `useStore`. They can be imported from 'zustand/traditional'. https://github.com/pmndrs/zustand/discussions/1937"),N6=!0);let n=_B(e.subscribe,e.getState,e.getServerState||e.getInitialState,t,a);return TB(n),n}var L6=e=>{(import.meta.env?import.meta.env.MODE:void 0)!=="production"&&typeof e!="function"&&console.warn("[DEPRECATED] Passing a vanilla store will be unsupported in a future version. Instead use `import { useStore } from 'zustand'`.");let t=typeof e=="function"?S6(e):e,a=(n,i)=>MB(t,n,i);return Object.assign(a,t),a},z6=e=>e?L6(e):L6;var B6,U6,P6=typeof window<"u"&&((B6=window.document)!=null&&B6.createElement||((U6=window.navigator)==null?void 0:U6.product)==="ReactNative")?Ju.default.useLayoutEffect:Ju.default.useEffect;function di(){let e=z6(t=>({current:new Array,version:0,set:t}));return{In:({children:t})=>{let a=e(i=>i.set),n=e(i=>i.version);return P6(()=>{a(i=>({version:i.version+1}))},[]),P6(()=>(a(({current:i})=>({current:[...i,t]})),()=>a(({current:i})=>({current:i.filter(r=>r!==t)}))),[t,n]),null},Out:()=>{let t=e(a=>a.current);return Ju.default.createElement(Ju.default.Fragment,null,t)}}}var te=T(N(),1),JD=T(R(),1),zg=T(N(),1),je=T(N(),1),n8=T(N(),1),r8=T(N(),1),Ug=T(R(),1),uw=T(N(),1),s8=T(N(),1);var jl=T(R(),1),c8=T(sn(),1),d8=T(N(),1),u8=T(R(),1),Dr=T(N(),1);var m8=T(R(),1),Pg=T(R(),1),Pc=T(N(),1),Za=T(R(),1);var km=T(N(),1);var Lx=T(N(),1),jg=T(R(),1);var es=T(N(),1),qc=T(R(),1),ge=T(N(),1);var p8=T(N(),1),zx=T(N(),1);var Mm=T(N(),1),ps=T(N(),1);var Dm=T(N(),1);var w8=T(N(),1),Me=T(N(),1);var Yl=T(R(),1),zl=T(N(),1),S8=T(R(),1),F=T(N(),1),ts=T(R(),1);var Zt=T(N(),1),T8=T(R(),1);var _8=T(N(),1),zt=T(N(),1);var k8=T(N(),1),Ra=T(N(),1),kt=T(R(),1),A8=T(R(),1);var I8=T(R(),1),ss=T(N(),1);var cs=T(N(),1);function Vt(){return Vt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e},Vt.apply(null,arguments)}var Xt=T(R());function ui(e,t,{checkForDefaultPrevented:a=!0}={}){return function(i){if(e?.(i),a===!1||!i.defaultPrevented)return t?.(i)}}var mi=T(R());function Sc(e,t=[]){let a=[];function n(r,l){let o=(0,mi.createContext)(l),d=a.length;a=[...a,l];function h(c){let{scope:u,children:m,...p}=c,f=u?.[e][d]||o,y=(0,mi.useMemo)(()=>p,Object.values(p));return(0,mi.createElement)(f.Provider,{value:y},m)}function s(c,u){let m=u?.[e][d]||o,p=(0,mi.useContext)(m);if(p)return p;if(l!==void 0)return l;throw new Error(`\`${c}\` must be used within \`${r}\``)}return h.displayName=r+"Provider",[h,s]}let i=()=>{let r=a.map(l=>(0,mi.createContext)(l));return function(o){let d=o?.[e]||r;return(0,mi.useMemo)(()=>({[`__scope${e}`]:{...o,[e]:d}}),[o,d])}};return i.scopeName=e,[n,AB(i,...t)]}function AB(...e){let t=e[0];if(e.length===1)return t;let a=()=>{let n=e.map(i=>({useScope:i(),scopeName:i.scopeName}));return function(r){let l=n.reduce((o,{useScope:d,scopeName:h})=>{let c=d(r)[`__scope${h}`];return{...o,...c}},{});return(0,mi.useMemo)(()=>({[`__scope${t.scopeName}`]:l}),[l])}};return a.scopeName=t.scopeName,a}var Ye=T(R());var hi=T(R());var j6=T(R());function DB(e,t){typeof e=="function"?e(t):e!=null&&(e.current=t)}function Vy(...e){return t=>e.forEach(a=>DB(a,t))}function qo(...e){return(0,j6.useCallback)(Vy(...e),e)}var ot=T(R());var Cc=(0,ot.forwardRef)((e,t)=>{let{children:a,...n}=e,i=ot.Children.toArray(a),r=i.find(NB);if(r){let l=r.props.children,o=i.map(d=>d===r?ot.Children.count(l)>1?ot.Children.only(null):(0,ot.isValidElement)(l)?l.props.children:null:d);return(0,ot.createElement)(Xy,Vt({},n,{ref:t}),(0,ot.isValidElement)(l)?(0,ot.cloneElement)(l,void 0,o):null)}return(0,ot.createElement)(Xy,Vt({},n,{ref:t}),a)});Cc.displayName="Slot";var Xy=(0,ot.forwardRef)((e,t)=>{let{children:a,...n}=e;return(0,ot.isValidElement)(a)?(0,ot.cloneElement)(a,{...LB(n,a.props),ref:Vy(t,a.ref)}):ot.Children.count(a)>1?ot.Children.only(null):null});Xy.displayName="SlotClone";var IB=({children:e})=>(0,ot.createElement)(ot.Fragment,null,e);function NB(e){return(0,ot.isValidElement)(e)&&e.type===IB}function LB(e,t){let a={...t};for(let n in t){let i=e[n],r=t[n];/^on[A-Z]/.test(n)?i&&r?a[n]=(...o)=>{r(...o),i(...o)}:i&&(a[n]=i):n==="style"?a[n]={...i,...r}:n==="className"&&(a[n]=[i,r].filter(Boolean).join(" "))}return{...e,...a}}function H6(e){let t=e+"CollectionProvider",[a,n]=Sc(t),[i,r]=a(t,{collectionRef:{current:null},itemMap:new Map}),l=m=>{let{scope:p,children:f}=m,y=hi.default.useRef(null),g=hi.default.useRef(new Map).current;return hi.default.createElement(i,{scope:p,itemMap:g,collectionRef:y},f)},o=e+"CollectionSlot",d=hi.default.forwardRef((m,p)=>{let{scope:f,children:y}=m,g=r(o,f),b=qo(p,g.collectionRef);return hi.default.createElement(Cc,{ref:b},y)}),h=e+"CollectionItemSlot",s="data-radix-collection-item",c=hi.default.forwardRef((m,p)=>{let{scope:f,children:y,...g}=m,b=hi.default.useRef(null),v=qo(p,b),x=r(h,f);return hi.default.useEffect(()=>(x.itemMap.set(b,{ref:b,...g}),()=>{x.itemMap.delete(b)})),hi.default.createElement(Cc,{[s]:"",ref:v},y)});function u(m){let p=r(e+"CollectionConsumer",m);return hi.default.useCallback(()=>{let y=p.collectionRef.current;if(!y)return[];let g=Array.from(y.querySelectorAll(`[${s}]`));return Array.from(p.itemMap.values()).sort((x,E)=>g.indexOf(x.ref.current)-g.indexOf(E.ref.current))},[p.collectionRef,p.itemMap])}return[{Provider:l,Slot:d,ItemSlot:c},u,n]}var Df=T(R());var F6=T(R()),em=globalThis?.document?F6.useLayoutEffect:()=>{};var RB=Df.useId||(()=>{}),OB=0;function If(e){let[t,a]=Df.useState(RB());return em(()=>{e||a(n=>n??String(OB++))},[e]),e||(t?`radix-${t}`:"")}var Tc=T(R()),zB=T(sn());var BB=["a","button","div","h2","h3","img","label","li","nav","ol","p","span","svg","ul"],_l=BB.reduce((e,t)=>{let a=(0,Tc.forwardRef)((n,i)=>{let{asChild:r,...l}=n,o=r?Cc:t;return(0,Tc.useEffect)(()=>{window[Symbol.for("radix-ui")]=!0},[]),(0,Tc.createElement)(o,Vt({},l,{ref:i}))});return a.displayName=`Primitive.${t}`,{...e,[t]:a}},{});var _c=T(R());function tm(e){let t=(0,_c.useRef)(e);return(0,_c.useEffect)(()=>{t.current=e}),(0,_c.useMemo)(()=>(...a)=>{var n;return(n=t.current)===null||n===void 0?void 0:n.call(t,...a)},[])}var kl=T(R());function Nf({prop:e,defaultProp:t,onChange:a=()=>{}}){let[n,i]=UB({defaultProp:t,onChange:a}),r=e!==void 0,l=r?e:n,o=tm(a),d=(0,kl.useCallback)(h=>{if(r){let c=typeof h=="function"?h(e):h;c!==e&&o(c)}else i(h)},[r,e,i,o]);return[l,d]}function UB({defaultProp:e,onChange:t}){let a=(0,kl.useState)(e),[n]=a,i=(0,kl.useRef)(n),r=tm(t);return(0,kl.useEffect)(()=>{i.current!==n&&(r(n),i.current=n)},[n,i,r]),a}var am=T(R()),PB=(0,am.createContext)(void 0);function Lf(e){let t=(0,am.useContext)(PB);return e||t||"ltr"}var Zy="rovingFocusGroup.onEntryFocus",jB={bubbles:!1,cancelable:!0},qy="RovingFocusGroup",[Ky,Y6,HB]=H6(qy),[FB,Qy]=Sc(qy,[HB]),[YB,GB]=FB(qy),$B=(0,Ye.forwardRef)((e,t)=>(0,Ye.createElement)(Ky.Provider,{scope:e.__scopeRovingFocusGroup},(0,Ye.createElement)(Ky.Slot,{scope:e.__scopeRovingFocusGroup},(0,Ye.createElement)(VB,Vt({},e,{ref:t}))))),VB=(0,Ye.forwardRef)((e,t)=>{let{__scopeRovingFocusGroup:a,orientation:n,loop:i=!1,dir:r,currentTabStopId:l,defaultCurrentTabStopId:o,onCurrentTabStopIdChange:d,onEntryFocus:h,...s}=e,c=(0,Ye.useRef)(null),u=qo(t,c),m=Lf(r),[p=null,f]=Nf({prop:l,defaultProp:o,onChange:d}),[y,g]=(0,Ye.useState)(!1),b=tm(h),v=Y6(a),x=(0,Ye.useRef)(!1),[E,S]=(0,Ye.useState)(0);return(0,Ye.useEffect)(()=>{let C=c.current;if(C)return C.addEventListener(Zy,b),()=>C.removeEventListener(Zy,b)},[b]),(0,Ye.createElement)(YB,{scope:a,orientation:n,dir:m,loop:i,currentTabStopId:p,onItemFocus:(0,Ye.useCallback)(C=>f(C),[f]),onItemShiftTab:(0,Ye.useCallback)(()=>g(!0),[]),onFocusableItemAdd:(0,Ye.useCallback)(()=>S(C=>C+1),[]),onFocusableItemRemove:(0,Ye.useCallback)(()=>S(C=>C-1),[])},(0,Ye.createElement)(_l.div,Vt({tabIndex:y||E===0?-1:0,"data-orientation":n},s,{ref:u,style:{outline:"none",...e.style},onMouseDown:ui(e.onMouseDown,()=>{x.current=!0}),onFocus:ui(e.onFocus,C=>{let _=!x.current;if(C.target===C.currentTarget&&_&&!y){let D=new CustomEvent(Zy,jB);if(C.currentTarget.dispatchEvent(D),!D.defaultPrevented){let k=v().filter(O=>O.focusable),I=k.find(O=>O.active),j=k.find(O=>O.id===p),G=[I,j,...k].filter(Boolean).map(O=>O.ref.current);G6(G)}}x.current=!1}),onBlur:ui(e.onBlur,()=>g(!1))})))}),XB="RovingFocusGroupItem",ZB=(0,Ye.forwardRef)((e,t)=>{let{__scopeRovingFocusGroup:a,focusable:n=!0,active:i=!1,tabStopId:r,...l}=e,o=If(),d=r||o,h=GB(XB,a),s=h.currentTabStopId===d,c=Y6(a),{onFocusableItemAdd:u,onFocusableItemRemove:m}=h;return(0,Ye.useEffect)(()=>{if(n)return u(),()=>m()},[n,u,m]),(0,Ye.createElement)(Ky.ItemSlot,{scope:a,id:d,focusable:n,active:i},(0,Ye.createElement)(_l.span,Vt({tabIndex:s?0:-1,"data-orientation":h.orientation},l,{ref:t,onMouseDown:ui(e.onMouseDown,p=>{n?h.onItemFocus(d):p.preventDefault()}),onFocus:ui(e.onFocus,()=>h.onItemFocus(d)),onKeyDown:ui(e.onKeyDown,p=>{if(p.key==="Tab"&&p.shiftKey){h.onItemShiftTab();return}if(p.target!==p.currentTarget)return;let f=QB(p,h.orientation,h.dir);if(f!==void 0){p.preventDefault();let g=c().filter(b=>b.focusable).map(b=>b.ref.current);if(f==="last")g.reverse();else if(f==="prev"||f==="next"){f==="prev"&&g.reverse();let b=g.indexOf(p.currentTarget);g=h.loop?WB(g,b+1):g.slice(b+1)}setTimeout(()=>G6(g))}})})))}),KB={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function qB(e,t){return t!=="rtl"?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}function QB(e,t,a){let n=qB(e.key,a);if(!(t==="vertical"&&["ArrowLeft","ArrowRight"].includes(n))&&!(t==="horizontal"&&["ArrowUp","ArrowDown"].includes(n)))return KB[n]}function G6(e){let t=document.activeElement;for(let a of e)if(a===t||(a.focus(),document.activeElement!==t))return}function WB(e,t){return e.map((a,n)=>e[(t+n)%e.length])}var $6=$B,V6=ZB;var pa=T(R()),X6=T(sn());function JB(e,t){return(0,pa.useReducer)((a,n)=>{let i=t[a][n];return i??a},e)}var Wy=e=>{let{present:t,children:a}=e,n=eU(t),i=typeof a=="function"?a({present:n.isPresent}):pa.Children.only(a),r=qo(n.ref,i.ref);return typeof a=="function"||n.isPresent?(0,pa.cloneElement)(i,{ref:r}):null};Wy.displayName="Presence";function eU(e){let[t,a]=(0,pa.useState)(),n=(0,pa.useRef)({}),i=(0,pa.useRef)(e),r=(0,pa.useRef)("none"),l=e?"mounted":"unmounted",[o,d]=JB(l,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return(0,pa.useEffect)(()=>{let h=Rf(n.current);r.current=o==="mounted"?h:"none"},[o]),em(()=>{let h=n.current,s=i.current;if(s!==e){let u=r.current,m=Rf(h);e?d("MOUNT"):m==="none"||h?.display==="none"?d("UNMOUNT"):d(s&&u!==m?"ANIMATION_OUT":"UNMOUNT"),i.current=e}},[e,d]),em(()=>{if(t){let h=c=>{let m=Rf(n.current).includes(c.animationName);c.target===t&&m&&(0,X6.flushSync)(()=>d("ANIMATION_END"))},s=c=>{c.target===t&&(r.current=Rf(n.current))};return t.addEventListener("animationstart",s),t.addEventListener("animationcancel",h),t.addEventListener("animationend",h),()=>{t.removeEventListener("animationstart",s),t.removeEventListener("animationcancel",h),t.removeEventListener("animationend",h)}}else d("ANIMATION_END")},[t,d]),{isPresent:["mounted","unmountSuspended"].includes(o),ref:(0,pa.useCallback)(h=>{h&&(n.current=getComputedStyle(h)),a(h)},[])}}function Rf(e){return e?.animationName||"none"}var Z6="Tabs",[tU,VQ]=Sc(Z6,[Qy]),K6=Qy(),[aU,Jy]=tU(Z6),nU=(0,Xt.forwardRef)((e,t)=>{let{__scopeTabs:a,value:n,onValueChange:i,defaultValue:r,orientation:l="horizontal",dir:o,activationMode:d="automatic",...h}=e,s=Lf(o),[c,u]=Nf({prop:n,onChange:i,defaultProp:r});return(0,Xt.createElement)(aU,{scope:a,baseId:If(),value:c,onValueChange:u,orientation:l,dir:s,activationMode:d},(0,Xt.createElement)(_l.div,Vt({dir:s,"data-orientation":l},h,{ref:t})))}),iU="TabsList",rU=(0,Xt.forwardRef)((e,t)=>{let{__scopeTabs:a,loop:n=!0,...i}=e,r=Jy(iU,a),l=K6(a);return(0,Xt.createElement)($6,Vt({asChild:!0},l,{orientation:r.orientation,dir:r.dir,loop:n}),(0,Xt.createElement)(_l.div,Vt({role:"tablist","aria-orientation":r.orientation},i,{ref:t})))}),lU="TabsTrigger",oU=(0,Xt.forwardRef)((e,t)=>{let{__scopeTabs:a,value:n,disabled:i=!1,...r}=e,l=Jy(lU,a),o=K6(a),d=q6(l.baseId,n),h=Q6(l.baseId,n),s=n===l.value;return(0,Xt.createElement)(V6,Vt({asChild:!0},o,{focusable:!i,active:s}),(0,Xt.createElement)(_l.button,Vt({type:"button",role:"tab","aria-selected":s,"aria-controls":h,"data-state":s?"active":"inactive","data-disabled":i?"":void 0,disabled:i,id:d},r,{ref:t,onMouseDown:ui(e.onMouseDown,c=>{!i&&c.button===0&&c.ctrlKey===!1?l.onValueChange(n):c.preventDefault()}),onKeyDown:ui(e.onKeyDown,c=>{[" ","Enter"].includes(c.key)&&l.onValueChange(n)}),onFocus:ui(e.onFocus,()=>{let c=l.activationMode!=="manual";!s&&!i&&c&&l.onValueChange(n)})})))}),sU="TabsContent",cU=(0,Xt.forwardRef)((e,t)=>{let{__scopeTabs:a,value:n,forceMount:i,children:r,...l}=e,o=Jy(sU,a),d=q6(o.baseId,n),h=Q6(o.baseId,n),s=n===o.value,c=(0,Xt.useRef)(s);return(0,Xt.useEffect)(()=>{let u=requestAnimationFrame(()=>c.current=!1);return()=>cancelAnimationFrame(u)},[]),(0,Xt.createElement)(Wy,{present:i||s},({present:u})=>(0,Xt.createElement)(_l.div,Vt({"data-state":s?"active":"inactive","data-orientation":o.orientation,role:"tabpanel","aria-labelledby":d,hidden:!u,id:h,tabIndex:0},l,{ref:t,style:{...e.style,animationDuration:c.current?"0s":void 0}}),u&&r))});function q6(e,t){return`${e}-trigger-${t}`}function Q6(e,t){return`${e}-content-${t}`}var Of=nU,zf=rU,Bf=oU,Uf=cU;var R8=T(N(),1);var Bx=T(N(),1);var B8=T(N(),1);var P8=T(N(),1),Ux=T(N(),1),H8=T(R(),1);var Rr=T(N(),1),et=T(N(),1),Hg=T(R(),1),iI=T(N(),1),Lr=T(N(),1),Or=T(N(),1),On=T(N(),1);var ea=T(R(),1),rI=T(tM(),1);var ht=T(N(),1),Oa=T(N(),1),oI=T(R(),1);var Im=T(N(),1),Ei=T(R(),1),mI=T(N(),1);var Ki=T(N(),1),Nm=T(R(),1),pI=T(N(),1),Bl=T(N(),1),Lm=T(N(),1),va=T(N(),1);var Px=T(R(),1),vI=T(N(),1),bi=T(R(),1);var xI=T(N(),1);var jx=T(N(),1);var EI=T(N(),1),Je=T(N(),1),wi=T(R(),1),SI=T(Xh(),1),Wi=T(R(),1);var Fc=T(N(),1),CI=T(N(),1),TI=T(N(),1),_I=T(N(),1),kI=T(R(),1),MI=T(N(),1),AI=T(N(),1),DI=T(N(),1),II=T(N(),1),NI=T(R(),1),LI=T(N(),1),RI=T(N(),1);var Q=T(N(),1),Hl=T(R(),1),Bn=T(N(),1),q=T(N(),1),Qc=T(R(),1),Om=T(N(),1),OI=T(Xh(),1),ga=T(N(),1),Wc=T(R(),1),bw=T(sn(),1),BI=T(R(),1);var YI=T(N(),1),fs=T(R(),1),GI=T(N(),1),Fg=T(R(),1),$x=T(N(),1),$I=T(N(),1);var zm=T(N(),1),ds=T(N(),1);function kU(e,t,a,n){Object.defineProperty(e,t,{get:a,set:n,enumerable:!0,configurable:!0})}var MU={};kU(MU,"LaserPointer",()=>im);function ut([e,t,a],[n,i,r]){return[e+n,t+i,a+r]}function nm([e,t,a],[n,i,r]){return[e-n,t-i,a-r]}function Ct([e,t,a],n){return[e*n,t*n,a*n]}function kc([e,t,a]){return[e/Math.sqrt(e**2+t**2),t/Math.sqrt(e**2+t**2),a]}function fa([e,t,a],n){return[Math.cos(n)*e-Math.sin(n)*t,Math.sin(n)*e+Math.cos(n)*t,a]}function AU(e,t,a){return ut(e,Ct(nm(t,e),a))}function aM(e,t,a){return Math.atan2(a[1]-e[1],a[0]-e[0])-Math.atan2(t[1]-e[1],t[0]-e[0])}function nM(e){return Math.atan2(Math.sin(e),Math.cos(e))}function iM([e,t]){return Math.sqrt(e**2+t**2)}function Mc([e,t],[a,n]){return Math.sqrt((a-e)**2+(n-t)**2)}function DU(e){if(e.length<2)return 0;let t=0;for(let a=1;a<=e.length-1;a++)t+=Mc(e[a-1],e[a]);return t+=Mc(e[e.length-2],e[e.length-1]),t}var IU=(e,t,a)=>Math.max(t,Math.min(a,e));function NU(e,t,a){let n=Mc(t,a);if(n===0)return Mc(e,t);let i=IU(((e[0]-t[0])*(a[0]-t[0])+(e[1]-t[1])*(a[1]-t[1]))/n**2,0,1),r=[t[0]+i*(a[0]-t[0]),t[1]+i*(a[1]-t[1]),e[2]];return Mc(r,e)}function Pf(e,t){if(t===0||e.length<=2)return e;let a=e[0],n=e[e.length-1],[i,r]=e.reduce(([l,o],d,h)=>{let s=NU(d,a,n);return s>l?[s,h]:[l,o]},[0,-1]);if(i>=t){let l=e[r];return[...Pf([a,...e.slice(1,r),l],t).slice(0,-1),l,...Pf([l,...e.slice(r,-1),n],t).slice(1)]}else return[a,n]}var im=class e{static{this.defaults={size:2,streamline:.45,simplify:.1,simplifyPhase:"output",keepHead:!1,sizeMapping:()=>1}}static{this.constants={cornerDetectionMaxAngle:75,cornerDetectionVariance:t=>t>35?.5:1,maxTailLength:50}}constructor(t){this.originalPoints=[],this.stablePoints=[],this.tailPoints=[],this.isFresh=!0,this.options=Object.assign({},e.defaults,t)}get lastPoint(){return this.tailPoints[this.tailPoints.length-1]??this.stablePoints[this.stablePoints.length-1]}addPoint(t){let a=this.originalPoints[this.originalPoints.length-1];if(!(a&&a[0]===t[0]&&a[1]===t[1])){if(this.originalPoints.push(t),this.isFresh){this.isFresh=!1,this.stablePoints.push(t);return}this.options.streamline>0&&(t=AU(this.lastPoint,t,1-this.options.streamline)),this.tailPoints.push(t),DU(this.tailPoints)>e.constants.maxTailLength&&this.stabilizeTail()}}close(){this.stabilizeTail()}stabilizeTail(){if(this.options.simplify>0&&this.options.simplifyPhase=="tail")throw new Error("Not implemented yet");this.stablePoints.push(...this.tailPoints),this.tailPoints=[]}getSize(t,a,n,i,r){return(t??this.options.size)*this.options.sizeMapping({pressure:a,runningLength:r,currentIndex:n,totalLength:i})}getStrokeOutline(t){if(this.isFresh)return[];let a=[...this.stablePoints,...this.tailPoints];this.options.simplify>0&&this.options.simplifyPhase==="input"&&(a=Pf(a,this.options.simplify));let n=a.length;if(n===0)return[];if(n===1){let C=a[0],_=this.getSize(t,C[2],0,n,0);if(_<.5)return[];let D=[];for(let k=0;k<=Math.PI*2;k+=Math.PI/16)D.push(ut(C,Ct(fa([1,0,0],k),_)));return D.push(ut(C,Ct([1,0,0],this.getSize(t,C[2],0,n,0)))),D}if(n===2){let C=a[0],_=a[1],D=this.getSize(t,C[2],0,n,0),k=this.getSize(t,_[2],0,n,0);if(D<.5||k<.5)return[];let I=[],j=aM(C,[C[0],C[1]-100,C[2]],_);for(let z=j;z<=Math.PI+j;z+=Math.PI/16)I.push(ut(C,Ct(fa([1,0,0],z),D)));for(let z=Math.PI+j;z<=Math.PI*2+j;z+=Math.PI/16)I.push(ut(_,Ct(fa([1,0,0],z),k)));return I.push(I[0]),I}let i=[],r=[],l=0,o=0,d=0,h=0;for(let C=1;C<n-1;C++){let _=a[C-1],D=a[C],k=a[C+1],I=D[2],j=Mc(_,D);h+=j,l=o+(j-o)*.2;let z=this.getSize(t,I,C,n,h);if(z===0){d=C+1;continue}let G=kc(nm(_,D)),O=kc(nm(k,D)),P=fa(G,Math.PI/2),W=fa(G,-Math.PI/2),V=fa(O,Math.PI/2),X=fa(O,-Math.PI/2),re=ut(D,Ct(P,z)),oe=ut(D,Ct(W,z)),ve=ut(D,Ct(V,z)),Ht=ut(D,Ct(X,z)),_a=ut(P,X),_n=ut(W,V),ai=ut(D,Ct(iM(_a)===0?G:kc(_a),z)),Ya=ut(D,Ct(iM(_n)===0?O:kc(_n),z)),vr=nM(aM(D,_,k)),Kd=e.constants.cornerDetectionMaxAngle/180*Math.PI*e.constants.cornerDetectionVariance(l);if(Math.abs(vr)<Kd){let ka=Math.abs(nM(Math.PI-vr));if(ka===0)continue;if(vr<0){r.push(oe,Ya);for(let yt=0;yt<=ka;yt+=ka/4)i.push(ut(D,fa(Ct(P,z),yt)));for(let yt=ka;yt>=0;yt-=ka/4)r.push(ut(D,fa(Ct(P,z),yt)));r.push(Ya,ve)}else{i.push(re,ai);for(let yt=0;yt<=ka;yt+=ka/4)r.push(ut(D,fa(Ct(P,-z),-yt)));for(let yt=ka;yt>=0;yt-=ka/4)i.push(ut(D,fa(Ct(P,-z),-yt)));i.push(ai,Ht)}}else i.push(ai),r.push(Ya);o=l}if(d>=n-2)if(this.options.keepHead){let C=a[n-1],_=[];for(let D=0;D<=Math.PI*2;D+=Math.PI/16)_.push(ut(C,Ct(fa([1,0,0],D),this.options.size)));return _.push(ut(C,Ct([1,0,0],this.options.size))),_}else return[];let s=a[d],c=a[d+1],u=a[n-2],m=a[n-1],p=kc(nm(c,s)),f=kc(nm(u,m)),y=fa(p,-Math.PI/2),g=fa(f,Math.PI/2),b=this.getSize(t,s[2],0,n,0),v=[],x=this.options.keepHead?this.options.size:this.getSize(t,u[2],n-2,n,h),E=[];if(b>1){for(let C=0;C<=Math.PI;C+=Math.PI/16)v.unshift(ut(s,fa(Ct(y,b),-C)));v.unshift(ut(s,Ct(y,-b)))}else v.push(s);for(let C=0;C<=Math.PI*3;C+=Math.PI/16)E.push(ut(m,fa(Ct(g,-x),-C)));let S=[...v,...i,...E.reverse(),...r.reverse()];return v.length>0&&S.push(v[0]),this.options.simplify>0&&this.options.simplifyPhase==="output"?Pf(S,this.options.simplify):S}};var Yg=T(R(),1),XI=T(N(),1),de=T(N(),1);var Xx=T(N(),1),Fn=T(N(),1),ze=T(N(),1),Si=T(N(),1),fi=T(N(),1);var $g=T(N(),1),e7=T(Xh(),1),Bm=T(N(),1),$G=T(R(),1),eg=T(N(),1),bA=tf(),{useAtom:ct,useSetAtom:dg,useAtomValue:vA,useStore:gW}=bA,LU=bA.Provider,gi=sc(),RU=LS({"./locales/ar-SA.json":()=>import("./chunks/ar-SA-G6X2FPQ2-GX62BCXI.js"),"./locales/az-AZ.json":()=>import("./chunks/az-AZ-76LH7QW2-KTOV3GT2.js"),"./locales/bg-BG.json":()=>import("./chunks/bg-BG-XCXSNQG7-NO2DH3YV.js"),"./locales/bn-BD.json":()=>import("./chunks/bn-BD-2XOGV67Q-ZSKWELQ7.js"),"./locales/ca-ES.json":()=>import("./chunks/ca-ES-6MX7JW3Y-IO3ZQD7N.js"),"./locales/cs-CZ.json":()=>import("./chunks/cs-CZ-2BRQDIVT-4Z3EY5KO.js"),"./locales/da-DK.json":()=>import("./chunks/da-DK-5WZEPLOC-RUHQXDIT.js"),"./locales/de-DE.json":()=>import("./chunks/de-DE-XR44H4JA-EOOOPWER.js"),"./locales/el-GR.json":()=>import("./chunks/el-GR-BZB4AONW-5N6ZXIC5.js"),"./locales/en.json":()=>import("./chunks/en-B4ZKOASM-LEURBZ5T.js"),"./locales/es-ES.json":()=>import("./chunks/es-ES-U4NZUMDT-APBKVTPE.js"),"./locales/eu-ES.json":()=>import("./chunks/eu-ES-A7QVB2H4-LP4NH6QU.js"),"./locales/fa-IR.json":()=>import("./chunks/fa-IR-HGAKTJCU-Y3WCI7ID.js"),"./locales/fi-FI.json":()=>import("./chunks/fi-FI-Z5N7JZ37-7QNQPSQD.js"),"./locales/fr-FR.json":()=>import("./chunks/fr-FR-RHASNOE6-2PIUNLZR.js"),"./locales/gl-ES.json":()=>import("./chunks/gl-ES-HMX3MZ6V-TMH2VLKV.js"),"./locales/he-IL.json":()=>import("./chunks/he-IL-6SHJWFNN-OKXBCUWB.js"),"./locales/hi-IN.json":()=>import("./chunks/hi-IN-IWLTKZ5I-E75PNXOC.js"),"./locales/hu-HU.json":()=>import("./chunks/hu-HU-A5ZG7DT2-DPC5TYJV.js"),"./locales/id-ID.json":()=>import("./chunks/id-ID-SAP4L64H-6TSH3XUA.js"),"./locales/it-IT.json":()=>import("./chunks/it-IT-JPQ66NNP-24JX5Q45.js"),"./locales/ja-JP.json":()=>import("./chunks/ja-JP-DBVTYXUO-GAYHHGF5.js"),"./locales/kaa.json":()=>import("./chunks/kaa-6HZHGXH3-PSHLFBIQ.js"),"./locales/kab-KAB.json":()=>import("./chunks/kab-KAB-ZGHBKWFO-ZX6BROET.js"),"./locales/kk-KZ.json":()=>import("./chunks/kk-KZ-P5N5QNE5-4BU5RGOC.js"),"./locales/km-KH.json":()=>import("./chunks/km-KH-HSX4SM5Z-QBYZEWFC.js"),"./locales/ko-KR.json":()=>import("./chunks/ko-KR-MTYHY66A-DEIKPXT2.js"),"./locales/ku-TR.json":()=>import("./chunks/ku-TR-6OUDTVRD-JLNCWHSJ.js"),"./locales/lt-LT.json":()=>import("./chunks/lt-LT-XHIRWOB4-L4ZHXTWC.js"),"./locales/lv-LV.json":()=>import("./chunks/lv-LV-5QDEKY6T-LFK6NNCY.js"),"./locales/mr-IN.json":()=>import("./chunks/mr-IN-CRQNXWMA-LAUDEQIE.js"),"./locales/my-MM.json":()=>import("./chunks/my-MM-5M5IBNSE-Y74TOGVR.js"),"./locales/nb-NO.json":()=>import("./chunks/nb-NO-T6EIAALU-GV6II6Y2.js"),"./locales/nl-NL.json":()=>import("./chunks/nl-NL-IS3SIHDZ-UUNU5XNJ.js"),"./locales/nn-NO.json":()=>import("./chunks/nn-NO-6E72VCQL-R2QE3NDA.js"),"./locales/oc-FR.json":()=>import("./chunks/oc-FR-POXYY2M6-RYNQ57ZY.js"),"./locales/pa-IN.json":()=>import("./chunks/pa-IN-N4M65BXN-QKSF65J6.js"),"./locales/percentages.json":()=>import("./chunks/percentages-BXMCSKIN-UPV2XFHU.js"),"./locales/pl-PL.json":()=>import("./chunks/pl-PL-T2D74RX3-YUADIUZH.js"),"./locales/pt-BR.json":()=>import("./chunks/pt-BR-5N22H2LF-5P4A62NJ.js"),"./locales/pt-PT.json":()=>import("./chunks/pt-PT-UZXXM6DQ-7RA2Y47G.js"),"./locales/ro-RO.json":()=>import("./chunks/ro-RO-JPDTUUEW-ITY77Q7K.js"),"./locales/ru-RU.json":()=>import("./chunks/ru-RU-B4JR7IUQ-DGM6IISX.js"),"./locales/si-LK.json":()=>import("./chunks/si-LK-N5RQ5JYF-MVXUXSVQ.js"),"./locales/sk-SK.json":()=>import("./chunks/sk-SK-C5VTKIMK-CZSGBM27.js"),"./locales/sl-SI.json":()=>import("./chunks/sl-SI-NN7IZMDC-SHXUALBB.js"),"./locales/sv-SE.json":()=>import("./chunks/sv-SE-XGPEYMSR-6ZQEQUQT.js"),"./locales/ta-IN.json":()=>import("./chunks/ta-IN-2NMHFXQM-67ILJI63.js"),"./locales/th-TH.json":()=>import("./chunks/th-TH-HPSO5L25-65K6FRAG.js"),"./locales/tr-TR.json":()=>import("./chunks/tr-TR-DEFEU3FU-RCRNXOAY.js"),"./locales/uk-UA.json":()=>import("./chunks/uk-UA-QMV73CPH-D63BNLMH.js"),"./locales/vi-VN.json":()=>import("./chunks/vi-VN-M7AON7JQ-RB5TJVK2.js"),"./locales/zh-CN.json":()=>import("./chunks/zh-CN-LNUGB5OW-QZTSQO2D.js"),"./locales/zh-HK.json":()=>import("./chunks/zh-HK-E62DVLB3-ZOERDDRS.js"),"./locales/zh-TW.json":()=>import("./chunks/zh-TW-RAJ6MFWO-7B7CIDG2.js")}),OU=85,$c={code:"en",label:"English"},Zx=[$c,...[{code:"ar-SA",label:"\u0627\u0644\u0639\u0631\u0628\u064A\u0629",rtl:!0},{code:"bg-BG",label:"\u0411\u044A\u043B\u0433\u0430\u0440\u0441\u043A\u0438"},{code:"ca-ES",label:"Catal\xE0"},{code:"cs-CZ",label:"\u010Cesky"},{code:"de-DE",label:"Deutsch"},{code:"el-GR",label:"\u0395\u03BB\u03BB\u03B7\u03BD\u03B9\u03BA\u03AC"},{code:"es-ES",label:"Espa\xF1ol"},{code:"eu-ES",label:"Euskara"},{code:"fa-IR",label:"\u0641\u0627\u0631\u0633\u06CC",rtl:!0},{code:"fi-FI",label:"Suomi"},{code:"fr-FR",label:"Fran\xE7ais"},{code:"gl-ES",label:"Galego"},{code:"he-IL",label:"\u05E2\u05D1\u05E8\u05D9\u05EA",rtl:!0},{code:"hi-IN",label:"\u0939\u093F\u0928\u094D\u0926\u0940"},{code:"hu-HU",label:"Magyar"},{code:"id-ID",label:"Bahasa Indonesia"},{code:"it-IT",label:"Italiano"},{code:"ja-JP",label:"\u65E5\u672C\u8A9E"},{code:"kab-KAB",label:"Taqbaylit"},{code:"kk-KZ",label:"\u049A\u0430\u0437\u0430\u049B \u0442\u0456\u043B\u0456"},{code:"ko-KR",label:"\uD55C\uAD6D\uC5B4"},{code:"ku-TR",label:"Kurd\xEE"},{code:"lt-LT",label:"Lietuvi\u0173"},{code:"lv-LV",label:"Latvie\u0161u"},{code:"my-MM",label:"Burmese"},{code:"nb-NO",label:"Norsk bokm\xE5l"},{code:"nl-NL",label:"Nederlands"},{code:"nn-NO",label:"Norsk nynorsk"},{code:"oc-FR",label:"Occitan"},{code:"pa-IN",label:"\u0A2A\u0A70\u0A1C\u0A3E\u0A2C\u0A40"},{code:"pl-PL",label:"Polski"},{code:"pt-BR",label:"Portugu\xEAs Brasileiro"},{code:"pt-PT",label:"Portugu\xEAs"},{code:"ro-RO",label:"Rom\xE2n\u0103"},{code:"ru-RU",label:"\u0420\u0443\u0441\u0441\u043A\u0438\u0439"},{code:"sk-SK",label:"Sloven\u010Dina"},{code:"sv-SE",label:"Svenska"},{code:"sl-SI",label:"Sloven\u0161\u010Dina"},{code:"tr-TR",label:"T\xFCrk\xE7e"},{code:"uk-UA",label:"\u0423\u043A\u0440\u0430\u0457\u043D\u0441\u044C\u043A\u0430"},{code:"zh-CN",label:"\u7B80\u4F53\u4E2D\u6587"},{code:"zh-TW",label:"\u7E41\u9AD4\u4E2D\u6587"},{code:"vi-VN",label:"Ti\u1EBFng Vi\u1EC7t"},{code:"mr-IN",label:"\u092E\u0930\u093E\u0920\u0940"}].filter(e=>R_[e.code]>=OU).sort((e,t)=>e.label>t.label?1:-1)],tg="__test__";Ft.DEV&&Zx.unshift({code:tg,label:"test language"},{code:`${tg}.rtl`,label:"\u202Atest language (rtl)\u202C",rtl:!0});var Ic=$c,$f={},yA=async e=>{if(Ic=e,document.documentElement.dir=Ic.rtl?"rtl":"ltr",document.documentElement.lang=Ic.code,e.code.startsWith(tg))$f={};else try{$f=await RU(`./locales/${Ic.code}.json`)}catch(t){console.error(`Failed to load language ${e.code}:`,t.message),$f=K1}gi.set(xA,e.code)},vm=()=>Ic,rM=(e,t)=>{for(let a=0;a<t.length;++a){let n=t[a];if(e[n]===void 0)return;e=e[n]}if(typeof e=="string")return e},w=(e,t,a)=>{if(Ic.code.startsWith(tg))return`\u202A[[${t?`${e}(${JSON.stringify(t).slice(1,-1)})`:e}]]\u202C`;let n=e.split("."),i=rM($f,n)||rM(K1,n)||a;if(i===void 0){let r=`Can't find translation for ${e}`;if(Ft.PROD)return console.warn(r),"";throw new Error(r)}if(t)for(let r in t)i=i.replace(`{{${r}}}`,String(t[r]));return i},xA=wt($c.code),Sa=()=>{let e=vA(xA);return{t:w,langCode:e}},zU=({size:e="1em",circleWidth:t=8,synchronized:a=!1,className:n=""})=>{let i=-(wA.default.useRef(Date.now()).current%1600);return(0,Vf.jsx)("div",{className:`Spinner ${n}`,children:(0,Vf.jsx)("svg",{viewBox:"0 0 100 100",style:{width:e,height:e,"--spinner-delay":a?`${i}ms`:0},children:(0,Vf.jsx)("circle",{cx:"50",cy:"50",r:50-t/2,strokeWidth:t,fill:"none",strokeMiterlimit:"10"})})})},zr=zU,EA=({delay:e,theme:t})=>{let[a,n]=(0,ug.useState)(!!e);return(0,ug.useEffect)(()=>{if(!e)return;let i=setTimeout(()=>{n(!1)},e);return()=>clearTimeout(i)},[e]),a?null:(0,Lc.jsxs)("div",{className:U("LoadingMessage",{"LoadingMessage--dark":t===xe.DARK}),children:[(0,Lc.jsx)("div",{children:(0,Lc.jsx)(zr,{})}),(0,Lc.jsx)("div",{className:"LoadingMessage-text",children:w("labels.loadingScene")})]})},BU=e=>{let[t,a]=(0,cg.useState)(!0);return(0,cg.useEffect)(()=>{let n=async()=>{await yA(i),a(!1)},i=Zx.find(r=>r.code===e.langCode)||$c;n()},[e.langCode]),t?(0,SA.jsx)(EA,{theme:e.theme}):e.children},he=vi.default.forwardRef(({size:e="medium",visible:t=!0,className:a="",...n},i)=>{let{id:r}=ar(),l=vi.default.useRef(null);vi.default.useImperativeHandle(i,()=>l.current);let o=`ToolIcon_size_${e}`,[d,h]=(0,vi.useState)(!1),s=(0,vi.useRef)(!0),c=async m=>{let p="onClick"in n&&n.onClick?.(m);if(sp(p))try{h(!0),await p}catch(f){if(f instanceof kp)console.warn(f);else throw f}finally{s.current&&h(!1)}};(0,vi.useEffect)(()=>(s.current=!0,()=>{s.current=!1}),[]);let u=(0,vi.useRef)(null);if(n.type==="button"||n.type==="icon"||n.type==="submit"){let m=n.type==="icon"?"button":n.type;return(0,Un.jsxs)("button",{className:U("ToolIcon_type_button",o,a,t&&!n.hidden?"ToolIcon_type_button--show":"ToolIcon_type_button--hide",{ToolIcon:!n.hidden,"ToolIcon--selected":n.selected,"ToolIcon--plain":n.type==="icon"}),style:n.style,"data-testid":n["data-testid"],hidden:n.hidden,title:n.title,"aria-label":n["aria-label"],type:m,onClick:c,ref:l,disabled:d||n.isLoading||!!n.disabled,children:[(n.icon||n.label)&&(0,Un.jsxs)("div",{className:"ToolIcon__icon","aria-hidden":"true","aria-disabled":!!n.disabled,children:[n.icon||n.label,n.keyBindingLabel&&(0,Un.jsx)("span",{className:"ToolIcon__keybinding",children:n.keyBindingLabel}),n.isLoading&&(0,Un.jsx)(zr,{})]}),n.showAriaLabel&&(0,Un.jsxs)("div",{className:"ToolIcon__label",children:[n["aria-label"]," ",d&&(0,Un.jsx)(zr,{})]}),n.children]})}return(0,Un.jsxs)("label",{className:U("ToolIcon",a),title:n.title,onPointerDown:m=>{u.current=m.pointerType||null,n.onPointerDown?.({pointerType:m.pointerType||null})},onPointerUp:()=>{requestAnimationFrame(()=>{u.current=null})},children:[(0,Un.jsx)("input",{className:`ToolIcon_type_radio ${o}`,type:"radio",name:n.name,"aria-label":n["aria-label"],"aria-keyshortcuts":n["aria-keyshortcuts"],"data-testid":n["data-testid"],id:`${r}-${n.id}`,onChange:()=>{n.onChange?.({pointerType:u.current})},checked:n.checked,ref:l}),(0,Un.jsxs)("div",{className:"ToolIcon__icon",children:[n.icon,n.keyBindingLabel&&(0,Un.jsx)("span",{className:"ToolIcon__keybinding",children:n.keyBindingLabel})]})]})});he.displayName="ToolButton";var UU=(e,t,a)=>{let n=new Set(ce(e.filter(s=>Ce(s)),t).map(s=>s.id)),i={},r=a.scene.getNonDeletedElementsMap(),l=new Set;for(let s of n){let c=Uo(e,s);for(let u of c)if(!l.has(u.id)){if(Ga(u)){let m=Tr(u,r);m&&(i[m.id]=!0)}else i[u.id]=!0;l.add(u.id)}}let o=!0,d=e.map(s=>{if(t.selectedElementIds[s.id]){let c=Ga(s)?Tr(s,r):null;return s.frameId&&n.has(s.frameId)?(o=!1,i[s.id]=!0,s):c?.frameId&&n.has(c?.frameId)?s:(s.boundElements&&s.boundElements.forEach(u=>{let m=a.scene.getNonDeletedElementsMap().get(u.id);m&&me(m)&&($(m,{startBinding:s.id===m.startBinding?.elementId?null:m.startBinding,endBinding:s.id===m.endBinding?.elementId?null:m.endBinding}),$(m,{points:m.points}))}),se(s,{isDeleted:!0}))}return s.frameId&&n.has(s.frameId)?(o=!1,Ga(s)||(i[s.id]=!0),se(s,{frameId:null})):Ga(s)&&t.selectedElementIds[s.containerId]?se(s,{isDeleted:!0}):s}),h=t.editingGroupId;if(o&&t.editingGroupId){let s=xt(d,t.editingGroupId).filter(c=>!c.isDeleted);if(s.length>1)s[0]&&(i[s[0].id]=!0);else{h=null,s[0]&&(i[s[0].id]=!0);let c=s[0];if(c){let u=c.groupIds.findIndex(p=>p===t.editingGroupId),m=c.groupIds[u+1];if(m){let p=xt(d,m).filter(f=>!f.isDeleted);p.length>1&&(h=m,p.forEach(f=>{i[f.id]=!0}))}}}}return{elements:d,appState:{...t,...da({selectedElementIds:i,editingGroupId:h},d,t,null)}}},lM=(e,t)=>{if(e.editingGroupId){let a=xt(Ue(t),e.editingGroupId);if(a.length)return{...e,selectedElementIds:{[a[0].id]:!0}}}return e},TA=Y({name:"deleteSelectedElements",label:"labels.delete",icon:sl,trackEvent:{category:"element",action:"delete"},perform:(e,t,a,n)=>{if(t.editingLinearElement){let{elementId:l,selectedPointsIndices:o,startBindingElement:d,endBindingElement:h}=t.editingLinearElement,s=n.scene.getNonDeletedElementsMap(),c=ne.getElement(l,s);if(!c||o==null)return!1;if(c.points.length<2){let m=e.map(f=>f.id===c.id?se(f,{isDeleted:!0}):f),p=lM(t,m);return{elements:m,appState:{...p,editingLinearElement:null},captureUpdate:L.IMMEDIATELY}}let u={startBindingElement:o?.includes(0)?null:d,endBindingElement:o?.includes(c.points.length-1)?null:h};return ne.deletePoints(c,o),{elements:e,appState:{...t,editingLinearElement:{...t.editingLinearElement,...u,selectedPointsIndices:o?.[0]>0?[o[0]-1]:[0]}},captureUpdate:L.IMMEDIATELY}}let{elements:i,appState:r}=UU(e,t,n);return e1(i,i.filter(l=>l.isDeleted)),r=lM(r,i),{elements:i,appState:{...r,activeTool:Nt(t,{type:"selection"}),multiElement:null,activeEmbeddable:null},captureUpdate:bt(Ue(e),t)?L.IMMEDIATELY:L.EVENTUALLY}},keyTest:(e,t,a)=>(e.key===M.BACKSPACE||e.key===M.DELETE)&&!e[M.CTRL_OR_CMD],PanelComponent:({elements:e,appState:t,updateData:a})=>(0,CA.jsx)(he,{type:"button",icon:sl,title:w("labels.delete"),"aria-label":w("labels.delete"),onClick:()=>a(null),visible:bt(Ue(e),t)})}),yx=(e,t)=>e.frameId===t||e.id===t,_A=(e,t,a)=>{let n=[],i=[],r=null,l=-1,o=Ie(a||ce(e,t,{includeBoundTextElement:!0,includeElementsInFrames:!0}));for(;++l<e.length;){let d=e[l];o.get(d.id)?(i.length&&(n=n.concat(i),i=[]),n.push(l),r=l+1):d.isDeleted&&r===l?(r=l+1,i.push(l)):i=[]}return n},PU=e=>{let t=0;return e.reduce((a,n,i)=>(i>0&&e[i-1]!==n-1&&(t=++t),(a[t]||(a[t]=[])).push(n),a),[])},oM=(e,t,a)=>{if("containerId"in e&&e.containerId){let n=bl.getScene(e).getElement(e.containerId);if(n)return a==="left"?Math.min(t.indexOf(n),t.indexOf(e)):Math.max(t.indexOf(n),t.indexOf(e))}else{let n=e.boundElements?.find(i=>i.type!=="arrow")?.id;if(n){let i=bl.getScene(e).getElement(n);if(i)return a==="left"?Math.min(t.indexOf(i),t.indexOf(e)):Math.max(t.indexOf(i),t.indexOf(e))}}},jU=(e,t)=>{let a=-1,n=-1;return e.forEach((i,r)=>{yx(i,t)&&(a===-1&&(a=r),n=r)}),a===-1?[]:e.slice(a,n+1)},HU=(e,t,a,n,i)=>{let r=t[a],l=c=>c.isDeleted?!1:i?c.frameId===i:e.editingGroupId?c.groupIds.includes(e.editingGroupId):!0,o=n==="left"?rl(t,c=>l(c),Math.max(0,a-1)):a0(t,c=>l(c),a+1),d=t[o];if(!d)return-1;if(e.editingGroupId){if(r?.groupIds.join("")===d?.groupIds.join(""))return oM(d,t,n)??o;if(!d?.groupIds.includes(e.editingGroupId))return-1}if(!i&&(d.frameId||Ce(d))){let c=jU(t,d.frameId||d.id);return n==="left"?t.indexOf(c[0]):t.indexOf(c[c.length-1])}if(!d.groupIds.length)return oM(d,t,n)??o;let h=e.editingGroupId?d.groupIds[d.groupIds.indexOf(e.editingGroupId)-1]:d.groupIds[d.groupIds.length-1],s=xt(t,h);return s.length?n==="left"?t.indexOf(s[0]):t.indexOf(s[s.length-1]):o},kA=(e,t)=>t.reduce((a,n)=>{let i=e[n];return a.set(i.id,i),a},new Map),MA=(e,t,a)=>{let n=_A(e,t),i=kA(e,n),r=PU(n);a==="right"&&(r=r.reverse());let l=new Set(n.filter(o=>Ce(e[o])).map(o=>e[o].id));return r.forEach((o,d)=>{let h=o[0],s=o[o.length-1],c=a==="left"?h:s,u=o.some(b=>{let v=e[b];return v.frameId&&l.has(v.frameId)})?null:e[c]?.frameId,m=HU(t,e,c,a,u);if(m===-1||c===m)return;let p=a==="left"?e.slice(0,m):e.slice(0,h),f=e.slice(h,s+1),y=a==="left"?e.slice(m,h):e.slice(s+1,m+1),g=a==="left"?e.slice(s+1):e.slice(m+1);e=a==="left"?[...p,...f,...y,...g]:[...p,...y,...f,...g]}),gl(e,i),e},AA=(e,t,a,n,i)=>{let r=_A(e,t,i),l=kA(e,r),o=[],d,h;if(a==="left"){if(n)d=a0(e,p=>yx(p,n));else if(t.editingGroupId){let p=xt(e,t.editingGroupId);if(!p.length)return e;d=e.indexOf(p[0])}else d=0;h=r[r.length-1]}else{if(n)h=rl(e,p=>yx(p,n));else if(t.editingGroupId){let p=xt(e,t.editingGroupId);if(!p.length)return e;h=e.indexOf(p[p.length-1])}else h=e.length-1;d=r[0]}d===-1&&(d=0);for(let p=d;p<h+1;p++)r.includes(p)||o.push(e[p]);let s=Array.from(l.values()),c=e.slice(0,d),u=e.slice(h+1),m=a==="left"?[...c,...s,...o,...u]:[...c,...o,...s,...u];return gl(m,l),m};function DA(e,t,a,n){let i=Ie(ce(e,t,{includeBoundTextElement:!0,includeElementsInFrames:!0})),r={regularElements:[],frameChildren:new Map},l=new Set;for(let h of e)i.has(h.id)&&Ce(h)&&l.add(h.id);for(let h of e)if(i.has(h.id))if(Ce(h)||h.frameId&&l.has(h.frameId))r.regularElements.push(h);else if(!h.frameId)r.regularElements.push(h);else{let s=r.frameChildren.get(h.frameId)||[];s.push(h),r.frameChildren.set(h.frameId,s)}let o=e,d=Array.from(r.frameChildren.entries());for(let[h,s]of d)o=n(e,t,a,h,s);return n(o,t,a,null,r.regularElements)}var FU=(e,t)=>MA(e,t,"left"),YU=(e,t)=>MA(e,t,"right"),GU=(e,t)=>DA(e,t,"left",AA),$U=(e,t)=>DA(e,t,"right",AA),VU=Y({name:"sendBackward",label:"labels.sendBackward",keywords:["move down","zindex","layer"],icon:b0,trackEvent:{category:"element"},perform:(e,t)=>({elements:FU(e,t),appState:t,captureUpdate:L.IMMEDIATELY}),keyPriority:40,keyTest:e=>e[M.CTRL_OR_CMD]&&!e.shiftKey&&e.code===ye.BRACKET_LEFT,PanelComponent:({updateData:e,appState:t})=>(0,Um.jsx)("button",{type:"button",className:"zIndexButton",onClick:()=>e(null),title:`${w("labels.sendBackward")} \u2014 ${B("CtrlOrCmd+[")}`,children:b0})}),XU=Y({name:"bringForward",label:"labels.bringForward",keywords:["move up","zindex","layer"],icon:g0,trackEvent:{category:"element"},perform:(e,t)=>({elements:YU(e,t),appState:t,captureUpdate:L.IMMEDIATELY}),keyPriority:40,keyTest:e=>e[M.CTRL_OR_CMD]&&!e.shiftKey&&e.code===ye.BRACKET_RIGHT,PanelComponent:({updateData:e,appState:t})=>(0,Um.jsx)("button",{type:"button",className:"zIndexButton",onClick:()=>e(null),title:`${w("labels.bringForward")} \u2014 ${B("CtrlOrCmd+]")}`,children:g0})}),ZU=Y({name:"sendToBack",label:"labels.sendToBack",keywords:["move down","zindex","layer"],icon:y0,trackEvent:{category:"element"},perform:(e,t)=>({elements:GU(e,t),appState:t,captureUpdate:L.IMMEDIATELY}),keyTest:e=>yr?e[M.CTRL_OR_CMD]&&e.altKey&&e.code===ye.BRACKET_LEFT:e[M.CTRL_OR_CMD]&&e.shiftKey&&e.code===ye.BRACKET_LEFT,PanelComponent:({updateData:e,appState:t})=>(0,Um.jsx)("button",{type:"button",className:"zIndexButton",onClick:()=>e(null),title:`${w("labels.sendToBack")} \u2014 ${yr?B("CtrlOrCmd+Alt+["):B("CtrlOrCmd+Shift+[")}`,children:y0})}),KU=Y({name:"bringToFront",label:"labels.bringToFront",keywords:["move up","zindex","layer"],icon:v0,trackEvent:{category:"element"},perform:(e,t)=>({elements:$U(e,t),appState:t,captureUpdate:L.IMMEDIATELY}),keyTest:e=>yr?e[M.CTRL_OR_CMD]&&e.altKey&&e.code===ye.BRACKET_RIGHT:e[M.CTRL_OR_CMD]&&e.shiftKey&&e.code===ye.BRACKET_RIGHT,PanelComponent:({updateData:e,appState:t})=>(0,Um.jsx)("button",{type:"button",className:"zIndexButton",onClick:a=>e(null),title:`${w("labels.bringToFront")} \u2014 ${yr?B("CtrlOrCmd+Alt+]"):B("CtrlOrCmd+Shift+]")}`,children:v0})}),qU=Y({name:"selectAll",label:"labels.selectAll",icon:sC,trackEvent:{category:"canvas"},viewMode:!1,perform:(e,t,a,n)=>{if(t.editingLinearElement)return!1;let i=e.filter(r=>!r.isDeleted&&!(ae(r)&&r.containerId)&&!r.locked).reduce((r,l)=>(r[l.id]=!0,r),{});return{appState:{...t,...da({editingGroupId:null,selectedElementIds:i},Ue(e),t,n),selectedLinearElement:Object.keys(i).length===1&&Ke(e[0])?new ne(e[0]):null},captureUpdate:L.IMMEDIATELY}},keyTest:e=>e[M.CTRL_OR_CMD]&&e.key===M.A}),QU=e=>{let t=e.slice(),a=new Set,n=r=>{let l=r[0]?.groupIds?.join(""),o=[r[0]],d=[];for(let h of r.slice(1))h.groupIds?.join("")===l?o.push(h):d.push(h);return d.length?[...o,...n(d)]:o},i=new Map;return t.forEach((r,l)=>{if(!i.has(r.id))if(r.groupIds?.length){let o=r.groupIds[r.groupIds.length-1],d=t.slice(l).filter(h=>{let s=h?.groupIds?.some(c=>c===o);return s&&i.set(h.id,!0),s});for(let h of n(d))a.add(h)}else a.add(r)}),a.size!==e.length?(console.error("normalizeGroupElementOrder: lost some elements... bailing!"),e):[...a]},WU=e=>{let t=S3(e),a=e.slice(),n=new Set;return a.forEach((i,r)=>{i&&(i.boundElements?.length?(n.add(i),a[r]=null,i.boundElements.forEach(l=>{let o=t.get(l.id);o&&l.type==="text"&&(n.add(o[0]),a[o[1]]=null)})):i.type==="text"&&i.containerId&&t.get(i.containerId)?.[0].boundElements?.find(l=>l.id===i.id)||(n.add(i),a[r]=null))}),n.size!==e.length?(console.error("normalizeBoundElementsOrder: lost some elements... bailing!"),e):[...n]},JU=e=>WU(QU(e)),eP=Y({name:"duplicateSelection",label:"labels.duplicateSelection",icon:bp,trackEvent:{category:"element"},perform:(e,t,a,n)=>{if(t.editingLinearElement)try{let r=ne.duplicateSelectedPoints(t,n.scene.getNonDeletedElementsMap());return{elements:e,appState:r,captureUpdate:L.IMMEDIATELY}}catch{return!1}let i=tP(e,t);if(n.props.onDuplicate&&i.elements){let r=n.props.onDuplicate(i.elements,e);r&&(i.elements=r)}return{...i,captureUpdate:L.IMMEDIATELY}},keyTest:e=>e[M.CTRL_OR_CMD]&&e.key===M.D,PanelComponent:({elements:e,appState:t,updateData:a})=>(0,IA.jsx)(he,{type:"button",icon:bp,title:`${w("labels.duplicateSelection")} \u2014 ${B("CtrlOrCmd+D")}`,"aria-label":w("labels.duplicateSelection"),onClick:()=>a(null),visible:bt(Ue(e),t)})}),tP=(e,t)=>{let a=new Map,n=[],i=[],r=new Map,l=new Map,o=Ie(e),d=f=>{let y=r0(f).reduce((g,b)=>{if(s.has(b.id))return g;s.set(b.id,!0);let v=m1(t.editingGroupId,a,b,{x:b.x+Pv/2,y:b.y+Pv/2});return s.set(v.id,!0),l.set(v.id,v),r.set(b.id,v.id),i.push(b),n.push(v),g.push(v),g},[]);return Array.isArray(f)?y:y[0]||null};e=JU(e);let h=Ie(ce(e,t,{includeBoundTextElement:!0,includeElementsInFrames:!0})),s=new Map,c=e.slice(),u=(f,y)=>{ll(f!==-1,"targetIndex === -1 "),!(!Array.isArray(y)&&!y)&&c.splice(f+1,0,...r0(y))},m=new Set(e.filter(f=>h.has(f.id)&&Ce(f)).map(f=>f.id));for(let f of e){if(s.has(f.id)||!h.has(f.id))continue;let y=eT(t,f);if(y){let g=xt(e,y).flatMap(v=>Ce(v)?[...Uo(e,v.id),v]:[v]),b=rl(c,v=>v.groupIds?.includes(y));u(b,d(g));continue}if(!(f.frameId&&m.has(f.frameId))){if(Ce(f)){let g=f.id,b=Uo(e,g),v=rl(c,x=>x.frameId===g||x.id===g);u(v,d([...b,f]));continue}if(Bi(f)){let g=qe(f,o),b=rl(c,v=>v.id===f.id||"containerId"in v&&v.containerId===f.id);g?u(b,d([f,g])):u(b,d(f));continue}if(Ga(f)){let g=Tr(f,o),b=rl(c,v=>v.id===f.id||v.id===g?.id);g?u(b,d([g,f])):u(b,d(f));continue}u(rl(c,g=>g.id===f.id),d(f))}}r1(c,i,r),J0(c,i,r),A1(c,i,r);let p=B1(n);return{elements:c,appState:{...t,...da({editingGroupId:t.editingGroupId,selectedElementIds:p.reduce((f,y)=>(Ga(y)||(f[y.id]=!0),f),{})},Ue(c),t,null)}}},aP=new Set(["command_palette","export"]),Oe=(e,t,a,n)=>{try{if(typeof window>"u"||Ft.VITE_WORKER_ID||Ft.VITE_APP_ENABLE_TRACKING!=="true"||!aP.has(e)||Ft.DEV)return;Ft.PROD||console.info("trackEvent",{category:e,action:t,label:a,value:n}),window.sa_event&&window.sa_event(t,{category:e,label:a,value:n})}catch(i){console.error("error during analytics",i)}},RA=(0,NA.forwardRef)((e,t)=>{let{title:a,className:n,testId:i,active:r,standalone:l,icon:o,onClick:d}=e;return(0,LA.jsx)("button",{type:"button",ref:t,title:a,"data-testid":i,className:U(n,{standalone:l,active:r}),onClick:d,children:o},a)}),Ji=e=>(0,Rc.jsx)("div",{className:"buttonList",children:e.options.map(t=>e.type==="button"?(0,Rc.jsx)(RA,{icon:t.icon,title:t.text,testId:t.testId,active:t.active??e.value===t.value,onClick:a=>e.onClick(t.value,a)},t.text):(0,Rc.jsxs)("label",{className:U({active:e.value===t.value}),title:t.text,children:[(0,Rc.jsx)("input",{type:"radio",name:e.group,onChange:()=>e.onChange(t.value),checked:e.value===t.value,"data-testid":t.testId}),t.icon]},t.text))}),nP=({onChange:e,type:t,activeColor:a,topPicks:n})=>{let i;return t==="elementStroke"&&(i=Nv),t==="elementBackground"&&(i=Lv),t==="canvasBackground"&&(i=Rv),n&&(i=n),i?(0,Xf.jsx)("div",{className:"color-picker__top-picks",children:i.map(r=>(0,Xf.jsx)("button",{className:U("color-picker__button",{active:r===a,"is-transparent":r==="transparent"||!r}),style:{"--swatch-color":r},type:"button",title:r,onClick:()=>e(r),"data-testid":`color-top-pick-${r}`,children:(0,Xf.jsx)("div",{className:"color-picker__button-outline"})},r))}):(console.error("Invalid type for TopPicks"),null)},zA=()=>(0,OA.jsx)("div",{style:{width:1,height:"1rem",backgroundColor:"var(--default-border-color)",margin:"0 auto"}}),hg=({palette:e,color:t})=>{for(let[a,n]of Object.entries(e))if(Array.isArray(n)){let i=n.indexOf(t);if(i>-1)return{colorName:a,shade:i}}else if(n===t)return{colorName:a,shade:null};return null},xx=[["q","w","e","r","t"],["a","s","d","f","g"],["z","x","c","v","b"]].flat(),BA=({color:e,palette:t})=>!Object.values(t).flat().includes(e),iP=(e,t,a)=>{let n={elementBackground:"backgroundColor",elementStroke:"strokeColor"},i=e.filter(l=>{if(l.isDeleted)return!1;let o=l[n[t]];return BA({color:o,palette:a})}),r=new Map;return i.forEach(l=>{let o=l[n[t]];r.has(o)?r.set(o,r.get(o)+1):r.set(o,1)}),[...r.entries()].sort((l,o)=>o[1]-l[1]).map(l=>l[0]).slice(0,zS)},Vc=wt(null),sM=(e,t,a)=>(e*299+t*587+a*114)/1e3>=160?"black":"white",rP=(e,t)=>{if(t){let r=new Option().style;if(r.color=e,r.color){let l=r.color.replace(/^(rgb|rgba)\(/,"").replace(/\)$/,"").replace(/\s/g,"").split(","),o=parseInt(l[0]),d=parseInt(l[1]),h=parseInt(l[2]);return sM(o,d,h)}}if(e==="transparent")return"black";let a=parseInt(e.substring(1,3),16),n=parseInt(e.substring(3,5),16),i=parseInt(e.substring(5,7),16);return sM(a,n,i)},lP=({color:e,keyLabel:t,isCustomColor:a=!1,isShade:n=!1})=>(0,UA.jsxs)("div",{className:"color-picker__button__hotkey-label",style:{color:rP(e,a)},children:[n&&"\u21E7",t]}),Kx=lP,oP=({hex:e,onChange:t,palette:a})=>{let n=hg({color:e||"transparent",palette:a}),[i,r]=ct(Vc),l=(0,mg.useRef)(null);if((0,mg.useEffect)(()=>{l.current&&i==="shades"&&l.current.focus()},[n,i]),n){let{colorName:o,shade:d}=n,h=a[o];if(Array.isArray(h))return(0,Ir.jsx)("div",{className:"color-picker-content--default shades",children:h.map((s,c)=>(0,Ir.jsxs)("button",{ref:c===d&&i==="shades"?l:void 0,tabIndex:-1,type:"button",className:U("color-picker__button color-picker__button--large",{active:c===d}),"aria-label":"Shade",title:`${o} - ${c+1}`,style:s?{"--swatch-color":s}:void 0,onClick:()=>{t(s),r("shades")},children:[(0,Ir.jsx)("div",{className:"color-picker__button-outline"}),(0,Ir.jsx)(Kx,{color:s,keyLabel:c+1,isShade:!0})]},c))})}return(0,Ir.jsxs)("div",{className:"color-picker-content--default",style:{position:"relative"},tabIndex:-1,children:[(0,Ir.jsx)("button",{type:"button",tabIndex:-1,className:"color-picker__button color-picker__button--large color-picker__button--no-focus-visible"}),(0,Ir.jsx)("div",{tabIndex:-1,style:{position:"absolute",top:0,left:0,right:0,bottom:0,display:"flex",alignItems:"center",justifyContent:"center",textAlign:"center",fontSize:"0.75rem"},children:w("colorPicker.noShades")})]})},sP=({palette:e,color:t,onChange:a,label:n,activeShade:i})=>{let r=hg({color:t||"transparent",palette:e}),[l,o]=ct(Vc),d=(0,pg.useRef)(null);return(0,pg.useEffect)(()=>{d.current&&l==="baseColors"&&d.current.focus()},[r?.colorName,l]),(0,Oc.jsx)("div",{className:"color-picker-content--default",children:Object.entries(e).map(([h,s],c)=>{let u=(Array.isArray(s)?s[i]:s)||"transparent",m=xx[c],p=w(`colors.${h.replace(/\d+/,"")}`,null,"");return(0,Oc.jsxs)("button",{ref:r?.colorName===h?d:void 0,tabIndex:-1,type:"button",className:U("color-picker__button color-picker__button--large",{active:r?.colorName===h,"is-transparent":u==="transparent"||!u}),onClick:()=>{a(u),o("baseColors")},title:`${p}${u.startsWith("#")?` ${u}`:""} \u2014 ${m}`,"aria-label":`${p} \u2014 ${m}`,style:u?{"--swatch-color":u}:void 0,"data-testid":`color-${h}`,children:[(0,Oc.jsx)("div",{className:"color-picker__button-outline"}),(0,Oc.jsx)(Kx,{color:u,keyLabel:m})]},h)})})},cP=sP,dP=({colors:e,color:t,onChange:a,label:n})=>{let[i,r]=ct(Vc),l=(0,fg.useRef)(null);return(0,fg.useEffect)(()=>{l.current&&l.current.focus()},[t,i]),(0,zc.jsx)("div",{className:"color-picker-content--default",children:e.map((o,d)=>(0,zc.jsxs)("button",{ref:t===o?l:void 0,tabIndex:-1,type:"button",className:U("color-picker__button color-picker__button--large",{active:t===o,"is-transparent":o==="transparent"||!o}),onClick:()=>{a(o),r("custom")},title:o,"aria-label":n,style:{"--swatch-color":o},children:[(0,zc.jsx)("div",{className:"color-picker__button-outline"}),(0,zc.jsx)(Kx,{color:o,keyLabel:d+1,isCustomColor:!0})]},d))})},ax=(e,t,a)=>{let n=Math.ceil(a/Eo);switch(t=t??-1,e){case"ArrowLeft":{let i=t-1;return i<0?a-1:i}case"ArrowRight":return(t+1)%a;case"ArrowDown":{let i=t+Eo;return i>=a?t%Eo:i}case"ArrowUp":{let i=t-Eo,r=i<0?Eo*n+i:i;return r>=a?void 0:r}}},uP=({e,colorObj:t,onChange:a,palette:n,customColors:i,setActiveColorPickerSection:r,activeShade:l})=>{if(t?.shade!=null&&["Digit1","Digit2","Digit3","Digit4","Digit5"].includes(e.code)&&e.shiftKey){let o=Number(e.code.slice(-1))-1;return a(n[t.colorName][o]),r("shades"),!0}if(["1","2","3","4","5"].includes(e.key)&&i[Number(e.key)-1])return a(i[Number(e.key)-1]),r("custom"),!0;if(xx.includes(e.key)){let o=xx.indexOf(e.key),d=Object.keys(n)[o],h=n[d],s=Array.isArray(h)?h[l]:h;return a(s),r("baseColors"),!0}return!1},mP=({event:e,activeColorPickerSection:t,palette:a,color:n,onChange:i,customColors:r,setActiveColorPickerSection:l,updateData:o,activeShade:d,onEyeDropperToggle:h,onEscape:s})=>{if(e[M.CTRL_OR_CMD])return!1;if(e.key===M.ESCAPE)return s(e),!0;if(e.key===M.ALT)return h(!0),!0;if(e.key===M.I)return h(),!0;let c=hg({color:n,palette:a});if(e.key===M.TAB){let u={custom:!!r.length,baseColors:!0,shades:c?.shade!=null,hex:!0},m=Object.entries(u).reduce((b,[v,x])=>(x&&b.push(v),b),[]),p=m.indexOf(t),f=e.shiftKey?-1:1,y=p+f>m.length-1?0:p+f<0?m.length-1:p+f,g=m[y];return g&&l(g),g==="custom"?i(r[0]):g==="baseColors"&&(Object.entries(a).find(([b,v])=>Array.isArray(v)?v.includes(n):v===n?b:null)||i(Ys.black)),e.preventDefault(),e.stopPropagation(),!0}if(uP({e,colorObj:c,onChange:i,palette:a,customColors:r,setActiveColorPickerSection:l,activeShade:d}))return!0;if(t==="shades"&&c){let{shade:u}=c,m=ax(e.key,u,Eo);if(m!==void 0)return i(a[c.colorName][m]),!0}if(t==="baseColors"&&c){let{colorName:u}=c,m=Object.keys(a),p=m.indexOf(u),f=ax(e.key,p,m.length);if(f!==void 0){let y=m[f],g=a[y];return i(Array.isArray(g)?g[d]:g),!0}}if(t==="custom"){let u=r.indexOf(n),m=ax(e.key,u,r.length);if(m!==void 0){let p=r[m];return i(p),!0}}return!1},hP=({children:e})=>(0,PA.jsx)("div",{className:"color-picker__heading",children:e}),Zf=hP,pP=({color:e,onChange:t,label:a,type:n,elements:i,palette:r,updateData:l,children:o,onEyeDropperToggle:d,onEscape:h})=>{let[s]=Ul.default.useState(()=>n==="canvasBackground"?[]:iP(i,n,r)),[c,u]=ct(Vc),m=hg({color:e,palette:r});(0,Ul.useEffect)(()=>{if(!c){let g=BA({color:e,palette:r}),b=g&&!s.includes(e);u(b?"hex":g?"custom":m?.shade!=null?"shades":"baseColors")}},[c,e,r,u,m,s]);let[p,f]=(0,Ul.useState)(m?.shade??(n==="elementBackground"?US:BS));(0,Ul.useEffect)(()=>{m?.shade!=null&&f(m.shade);let g=b=>{b.key===M.ALT&&d(!1)};return document.addEventListener("keyup",g,{capture:!0}),()=>{document.removeEventListener("keyup",g,{capture:!0})}},[m,d]);let y=Ul.default.useRef(null);return(0,mn.jsx)("div",{role:"dialog","aria-modal":"true","aria-label":w("labels.colorPicker"),children:(0,mn.jsxs)("div",{ref:y,onKeyDown:g=>{mP({event:g,activeColorPickerSection:c,palette:r,color:e,onChange:t,onEyeDropperToggle:d,customColors:s,setActiveColorPickerSection:u,updateData:l,activeShade:p,onEscape:h})&&(g.preventDefault(),g.stopPropagation())},className:"color-picker-content properties-content",tabIndex:-1,children:[!!s.length&&(0,mn.jsxs)("div",{children:[(0,mn.jsx)(Zf,{children:w("colorPicker.mostUsedCustomColors")}),(0,mn.jsx)(dP,{colors:s,color:e,label:w("colorPicker.mostUsedCustomColors"),onChange:t})]}),(0,mn.jsxs)("div",{children:[(0,mn.jsx)(Zf,{children:w("colorPicker.colors")}),(0,mn.jsx)(cP,{color:e,label:a,palette:r,onChange:t,activeShade:p})]}),(0,mn.jsxs)("div",{children:[(0,mn.jsx)(Zf,{children:w("colorPicker.shades")}),(0,mn.jsx)(oP,{hex:e,onChange:t,palette:r})]}),o]})})},FA=qx.default.createContext(null),ta=()=>qx.default.useContext(FA),YA=e=>{let[t,a]=(0,ym.useState)(null),n=Bt(),{theme:i}=ta(),{container:r}=ar();return(0,ym.useLayoutEffect)(()=>{t&&(t.className="",t.classList.add("excalidraw",...e?.className?.split(/\s+/)||[]),t.classList.toggle("excalidraw--mobile",n.editor.isMobile),t.classList.toggle("theme--dark",i===xe.DARK))},[t,i,n.editor.isMobile,e?.className]),(0,ym.useLayoutEffect)(()=>{let l=e?.parentSelector?r?.querySelector(e.parentSelector):document.body;if(!l)return;let o=document.createElement("div");return l.appendChild(o),a(o),()=>{l.removeChild(o)}},[r,e?.parentSelector]),t};function Qx(e,t,a){(0,GA.useEffect)(()=>{function n(i){let r=i;if(!e.current)return;let l=a?.(r,e.current);if(l!==!0){if(l===!1)return t(r);e.current.contains(r.target)||!document.documentElement.contains(r.target)||r.target.closest("[data-radix-portal]")||r.target===document.documentElement&&document.body.style.pointerEvents==="none"||r.target.closest("[data-prevent-outside-click]")||t(r)}}return document.addEventListener("pointerdown",n),document.addEventListener("touchstart",n),()=>{document.removeEventListener("pointerdown",n),document.removeEventListener("touchstart",n)}},[e,t,a])}var bg=e=>{let t=(0,$A.useRef)(e);return Object.assign(t.current,e),t.current},vg=wt(null),fP=({onCancel:e,onChange:t,onSelect:a,colorPickerType:n})=>{let i=YA({className:"excalidraw-eye-dropper-backdrop",parentSelector:".excalidraw-eye-dropper-container"}),r=ta(),l=Gg(),o=tr(),d=ce(l,r),h=bg({app:o,onCancel:e,onChange:t,onSelect:a,selectedElements:d}),{container:s}=ar();(0,gg.useEffect)(()=>{let u=c.current;if(!u||!o.canvas||!i)return;let m=!1,p=o.canvas.getContext("2d"),f=({clientX:S,clientY:C})=>{let _=p.getImageData((S-r.offsetLeft)*window.devicePixelRatio,(C-r.offsetTop)*window.devicePixelRatio,1,1).data;return HS(_[0],_[1],_[2])},y=({clientX:S,clientY:C,altKey:_})=>{u.style.top=`${C+20}px`,u.style.left=`${S+20}px`;let D=f({clientX:S,clientY:C});m&&h.onChange(n,D,h.selectedElements,{altKey:_}),u.style.background=D},g=()=>{h.onCancel()},b=(S,C)=>{h.onSelect(S,C)},v=S=>{m=!0,S.stopImmediatePropagation()},x=S=>{m=!1,s?.focus(),S.stopImmediatePropagation(),S.preventDefault(),b(f(S),S)},E=S=>{S.key===M.ESCAPE&&(S.preventDefault(),S.stopImmediatePropagation(),g())};return i.tabIndex=-1,i.focus(),y({clientX:h.app.lastViewportPosition.x,clientY:h.app.lastViewportPosition.y,altKey:!1}),i.addEventListener("keydown",E),i.addEventListener("pointerdown",v),i.addEventListener("pointerup",x),window.addEventListener("pointermove",y,{passive:!0}),window.addEventListener("blur",g),()=>{m=!1,i.removeEventListener("keydown",E),i.removeEventListener("pointerdown",v),i.removeEventListener("pointerup",x),window.removeEventListener("pointermove",y),window.removeEventListener("blur",g)}},[h,o.canvas,i,n,s,r.offsetLeft,r.offsetTop]);let c=(0,gg.useRef)(null);return Qx(c,()=>{e()},u=>!!u.target.closest(".excalidraw-eye-dropper-trigger, .excalidraw-eye-dropper-backdrop")),i?(0,HA.createPortal)((0,VA.jsx)("div",{ref:c,className:"excalidraw-eye-dropper-preview"}),i):null},gP=({color:e,onChange:t,label:a,colorPickerType:n})=>{let i=Bt(),[r,l]=(0,yi.useState)(e),[o,d]=ct(Vc);(0,yi.useEffect)(()=>{l(e)},[e]);let h=(0,yi.useCallback)(p=>{let f=p.toLowerCase(),y=bP(f);y&&t(y),l(f)},[t]),s=(0,yi.useRef)(null),c=(0,yi.useRef)(null);(0,yi.useEffect)(()=>{s.current&&s.current.focus()},[o]);let[u,m]=ct(vg);return(0,yi.useEffect)(()=>()=>{m(null)},[m]),(0,qi.jsxs)("div",{className:"color-picker__input-label",children:[(0,qi.jsx)("div",{className:"color-picker__input-hash",children:"#"}),(0,qi.jsx)("input",{ref:o==="hex"?s:void 0,style:{border:0,padding:0},spellCheck:!1,className:"color-picker-input","aria-label":a,onChange:p=>{h(p.target.value)},value:(r||"").replace(/^#/,""),onBlur:()=>{l(e)},tabIndex:-1,onFocus:()=>d("hex"),onKeyDown:p=>{p.key!==M.TAB&&(p.key===M.ESCAPE&&c.current?.focus(),p.stopPropagation())}}),!i.editor.isMobile&&(0,qi.jsxs)(qi.Fragment,{children:[(0,qi.jsx)("div",{style:{width:"1px",height:"1.25rem",backgroundColor:"var(--default-border-color)"}}),(0,qi.jsx)("div",{ref:c,className:U("excalidraw-eye-dropper-trigger",{selected:u}),onClick:()=>m(p=>p?null:{keepOpenOnAlt:!1,onSelect:f=>t(f),colorPickerType:n}),title:`${w("labels.eyeDropper")} \u2014 ${M.I.toLocaleUpperCase()} or ${B("Alt")} `,children:J5})]})]})},xi=ZA.default.forwardRef(({children:e,padding:t,className:a,style:n},i)=>(0,KA.jsx)("div",{className:U("Island",a),style:{"--padding":t,...n},ref:i,children:e})),qA=XA.default.forwardRef(({className:e,container:t,children:a,style:n,onClose:i,onKeyDown:r,onFocusOutside:l,onPointerLeave:o,onPointerDownOutside:d},h)=>{let s=Bt();return(0,Bc.jsx)(v6,{container:t,children:(0,Bc.jsxs)(xc,{ref:h,className:U("focus-visible-none",e),"data-prevent-outside-click":!0,side:s.editor.isMobile&&!s.viewport.isLandscape?"bottom":"right",align:s.editor.isMobile&&!s.viewport.isLandscape?"center":"start",alignOffset:-16,sideOffset:20,style:{zIndex:"var(--zIndex-popup)"},onPointerLeave:o,onKeyDown:r,onFocusOutside:l,onPointerDownOutside:d,onCloseAutoFocus:c=>{c.stopPropagation(),c.preventDefault(),t&&!b3(document.activeElement)&&t.focus(),i()},children:[(0,Bc.jsx)(xi,{padding:3,style:n,children:a}),(0,Bc.jsx)(Mf,{width:20,height:10,style:{fill:"var(--popup-bg-color)",filter:"drop-shadow(rgba(0, 0, 0, 0.05) 0px 3px 2px)"}})]})})}),cM=e=>{let t=new Option().style;return t.color=e,!!t.color},bP=e=>du(e)?e:cM(`#${e}`)?`#${e}`:cM(e)?e:null,vP=({type:e,color:t,onChange:a,label:n,elements:i,palette:r=Ys,updateData:l})=>{let{container:o}=ar(),[,d]=ct(Vc),[h,s]=ct(vg),c=(0,wa.jsxs)("div",{children:[(0,wa.jsx)(Zf,{children:w("colorPicker.hexCode")}),(0,wa.jsx)(gP,{color:t,label:n,onChange:p=>{a(p)},colorPickerType:e})]}),u=(0,jA.useRef)(null),m=()=>{u.current?.querySelector(".color-picker-content")?.focus()};return(0,wa.jsx)(qA,{container:o,style:{maxWidth:"13rem"},onFocusOutside:p=>{m(),p.preventDefault()},onPointerDownOutside:p=>{h&&p.preventDefault()},onClose:()=>{l({openPopup:null}),d(null)},children:r?(0,wa.jsx)(pP,{palette:r,color:t,onChange:p=>{a(p)},onEyeDropperToggle:p=>{s(f=>p?(f=f||{keepOpenOnAlt:!0,onSelect:a,colorPickerType:e},f.keepOpenOnAlt=!0,f):p===!1||f?null:{keepOpenOnAlt:!1,onSelect:a,colorPickerType:e})},onEscape:p=>{h?s(null):l({openPopup:null})},label:n,type:e,elements:i,updateData:l,children:c}):c})},yP=({label:e,color:t,type:a})=>(0,wa.jsx)(Tl,{type:"button",className:U("color-picker__button active-color properties-trigger",{"is-transparent":t==="transparent"||!t}),"aria-label":e,style:t?{"--swatch-color":t}:void 0,title:w(a==="elementStroke"?"labels.showStroke":"labels.showBackground"),children:(0,wa.jsx)("div",{className:"color-picker__button-outline"})}),Wx=({type:e,color:t,onChange:a,label:n,elements:i,palette:r=Ys,topPicks:l,updateData:o,appState:d})=>(0,wa.jsx)("div",{children:(0,wa.jsxs)("div",{role:"dialog","aria-modal":"true",className:"color-picker-container",children:[(0,wa.jsx)(nP,{activeColor:t,onChange:a,type:e,topPicks:l}),(0,wa.jsx)(zA,{}),(0,wa.jsxs)(Cl,{open:d.openPopup===e,onOpenChange:h=>{o({openPopup:h?e:null})},children:[(0,wa.jsx)(yP,{color:t,label:n,type:e}),d.openPopup===e&&(0,wa.jsx)(vP,{type:e,color:t,onChange:a,label:n,elements:i,palette:r,updateData:o})]})]})}),yg=({icon:e})=>(0,QA.jsx)("span",{style:{width:"1em",margin:"0 0.5ex 0 0.5ex",display:"inline-block",lineHeight:0,verticalAlign:"middle"},children:e}),xP=({label:e,open:t,openTrigger:a,children:n,className:i})=>(0,Pl.jsxs)(Pl.Fragment,{children:[(0,Pl.jsxs)("div",{style:{cursor:"pointer",display:"flex",justifyContent:"space-between",alignItems:"center"},className:i,onClick:a,children:[e,(0,Pl.jsx)(yg,{icon:t?SC:j0})]}),t&&(0,Pl.jsx)("div",{style:{display:"flex",flexDirection:"column"},children:n})]}),wx=xP,wP=wt(!1);function EP({options:e,value:t,label:a,onChange:n,onClose:i,numberOfOptionsToAlwaysShow:r=e.length}){let l=Bt(),o=m=>{let p=e.find(f=>f.keyBinding===m.key.toLowerCase());if(!(m.metaKey||m.altKey||m.ctrlKey)&&p)n(p.value),m.preventDefault();else if(m.key===M.TAB){let f=e.findIndex(g=>g.value===t),y=m.shiftKey?(e.length+f-1)%e.length:(f+1)%e.length;n(e[y].value)}else if(ec(m.key)){let f=vm().rtl,y=e.findIndex(g=>g.value===t);if(y!==-1){let g=e.length,b=y;switch(m.key){case(f?M.ARROW_LEFT:M.ARROW_RIGHT):b=(y+1)%g;break;case(f?M.ARROW_RIGHT:M.ARROW_LEFT):b=(g+y-1)%g;break;case M.ARROW_DOWN:{b=(y+(r??1))%g;break}case M.ARROW_UP:{b=(g+y-(r??1))%g;break}}n(e[b].value)}m.preventDefault()}else(m.key===M.ESCAPE||m.key===M.ENTER)&&(m.preventDefault(),i());m.nativeEvent.stopImmediatePropagation(),m.stopPropagation()},[d,h]=ct(wP),s=us.default.useMemo(()=>e.slice(0,r),[e,r]),c=us.default.useMemo(()=>e.slice(r),[e,r]);(0,us.useEffect)(()=>{s.some(m=>m.value===t)||h(!0)},[t,s,h]);let u=m=>(0,Pn.jsx)("div",{className:"picker-content",children:m.map((p,f)=>(0,Pn.jsxs)("button",{type:"button",className:U("picker-option",{active:t===p.value}),onClick:y=>{n(p.value)},title:`${p.text} ${p.keyBinding&&`\u2014 ${p.keyBinding.toUpperCase()}`}`,"aria-label":p.text||"none","aria-keyshortcuts":p.keyBinding||void 0,ref:y=>{t===p.value&&setTimeout(()=>{y?.focus()},0)},children:[p.icon,p.keyBinding&&(0,Pn.jsx)("span",{className:"picker-keybinding",children:p.keyBinding})]},p.text))});return(0,Pn.jsx)(xc,{side:l.editor.isMobile&&!l.viewport.isLandscape?"top":"bottom",align:"start",sideOffset:12,style:{zIndex:"var(--zIndex-popup)"},onKeyDown:o,children:(0,Pn.jsxs)("div",{className:"picker",role:"dialog","aria-modal":"true","aria-label":a,children:[u(s),c.length>0&&(0,Pn.jsx)(wx,{label:w("labels.more_options"),open:d,openTrigger:()=>{h(m=>!m)},className:"picker-collapsible",children:u(c)})]})})}function dM({value:e,label:t,options:a,onChange:n,group:i="",numberOfOptionsToAlwaysShow:r}){let[l,o]=us.default.useState(!1),d=us.default.useRef(null);return(0,Pn.jsx)("div",{children:(0,Pn.jsxs)(Cl,{open:l,onOpenChange:h=>o(h),children:[(0,Pn.jsx)(Tl,{name:i,type:"button","aria-label":t,onClick:()=>o(!l),ref:d,className:l?"active":"",children:a.find(h=>h.value===e)?.icon}),l&&(0,Pn.jsx)(EP,{options:a,value:e,label:t,onChange:n,onClose:()=>{o(!1)},numberOfOptionsToAlwaysShow:r})]})})}var JA=WA.default.forwardRef(({className:e,placeholder:t,onChange:a},n)=>(0,xg.jsxs)("div",{className:U("QuickSearch__wrapper",e),children:[cl,(0,xg.jsx)("input",{ref:n,className:"QuickSearch__input",type:"text",placeholder:t,onChange:i=>a(i.target.value.trim().toLowerCase())})]})),tD=({className:e,placeholder:t,children:a})=>{let n=!eD.Children.count(a);return(0,Ex.jsx)("div",{className:U("ScrollableList__wrapper",e),role:"menu",children:n?(0,Ex.jsx)("div",{className:"empty",children:t}):a})},aD=({children:e,className:t="",style:a,title:n})=>(0,wg.jsxs)("div",{className:`dropdown-menu-group ${t}`,style:a,children:[n&&(0,wg.jsx)("p",{className:"dropdown-menu-group-title",children:n}),e]}),Sx=aD;aD.displayName="DropdownMenuGroup";var nD=Sg.default.createContext({}),iD=(e="",t=!1,a=!1)=>`dropdown-menu-item dropdown-menu-item-base ${e}
|
|
50
|
+
${t?"dropdown-menu-item--selected":""} ${a?"dropdown-menu-item--hovered":""}`.trim(),rD=(e,t)=>{let a=(0,Sg.useContext)(nD);return mu(e,n=>{let i=new CustomEvent("menu.itemSelect",{bubbles:!0,cancelable:!0});t?.(i),i.defaultPrevented||a.onSelect?.(i)})},SP=({textStyle:e,icon:t,shortcut:a,children:n})=>{let i=Bt();return(0,Ol.jsxs)(Ol.Fragment,{children:[t&&(0,Ol.jsx)("div",{className:"dropdown-menu-item__icon",children:t}),(0,Ol.jsx)("div",{style:e,className:"dropdown-menu-item__text",children:n}),a&&!i.editor.isMobile&&(0,Ol.jsx)("div",{className:"dropdown-menu-item__shortcut",children:a})]})},lD=SP,Jx=({icon:e,value:t,order:a,children:n,shortcut:i,className:r,hovered:l,selected:o,textStyle:d,onSelect:h,onClick:s,...c})=>{let u=rD(s,h),m=(0,Eg.useRef)(null);return(0,Eg.useEffect)(()=>{l&&(a===0?m.current?.scrollIntoView({block:"end"}):m.current?.scrollIntoView({block:"nearest"}))},[l,a]),(0,ag.jsx)("button",{...c,ref:m,value:t,onClick:u,className:iD(r,o,l),title:c.title??c["aria-label"],children:(0,ag.jsx)(lD,{textStyle:d,icon:e,shortcut:i,children:n})})};Jx.displayName="DropdownMenuItem";var um={GREEN:"green",RED:"red",BLUE:"blue"},ew=({type:e=um.BLUE,children:t})=>{let{theme:a}=Fm(),n={display:"inline-flex",marginLeft:"auto",padding:"2px 4px",borderRadius:6,fontSize:9,fontFamily:"Cascadia, monospace",border:a===xe.LIGHT?"1.5px solid white":"none"};switch(e){case um.GREEN:Object.assign(n,{backgroundColor:"var(--background-color-badge)",color:"var(--color-badge)"});break;case um.RED:Object.assign(n,{backgroundColor:"pink",color:"darkred"});break;case um.BLUE:default:Object.assign(n,{background:"var(--color-promo)",color:"var(--color-surface-lowest)"})}return(0,ag.jsx)("div",{className:"DropDownMenuItemBadge",style:n,children:t})};ew.displayName="DropdownMenuItemBadge";Jx.Badge=ew;var $n=Jx,CP=({event:e,inputRef:t,hoveredFont:a,filteredFonts:n,onClose:i,onSelect:r,onHover:l})=>{if(!e[M.CTRL_OR_CMD]&&e.shiftKey&&e.key.toLowerCase()===M.F)return t.current?.focus(),!0;if(e.key===M.ESCAPE)return i(),!0;if(e.key===M.ENTER)return a?.value&&r(a.value),!0;if(e.key===M.ARROW_DOWN)return a?.next?l(a.next.value):n[0]?.value&&l(n[0].value),!0;if(e.key===M.ARROW_UP)return a?.prev?l(a.prev.value):n[n.length-1]?.value&&l(n[n.length-1].value),!0},TP=Ot.default.memo(({selectedFontFamily:e,hoveredFontFamily:t,onSelect:a,onHover:n,onLeave:i,onOpen:r,onClose:l})=>{let{container:o}=ar(),{fonts:d}=tr(),{showDeprecatedFonts:h}=Hm(),[s,c]=(0,Ot.useState)(""),u=(0,Ot.useRef)(null),m=(0,Ot.useMemo)(()=>Array.from(Qs.registered.entries()).filter(([_,{metadata:D}])=>!D.serverSide&&!D.fallback).map(([_,{metadata:D,fontFaces:k}])=>{let I={value:_,icon:D.icon??D0,text:k[0]?.fontFace?.family??"Unknown"};return D.deprecated&&Object.assign(I,{deprecated:D.deprecated,badge:{type:um.RED,placeholder:w("fontList.badge.old")}}),I}).sort((_,D)=>_.text.toLowerCase()>D.text.toLowerCase()?1:-1),[]),p=(0,Ot.useMemo)(()=>new Set(d.getSceneFamilies()),[e]),f=(0,Ot.useMemo)(()=>m.filter(_=>p.has(_.value)),[m,p]),y=(0,Ot.useMemo)(()=>m.filter(_=>!p.has(_.value)&&(h||!_.deprecated)),[m,p,h]),g=(0,Ot.useMemo)(()=>C3([...f,...y].filter(_=>_.text?.toLowerCase().includes(s))),[f,y,s]),b=(0,Ot.useMemo)(()=>{let _;return t?_=g.find(D=>D.value===t):e&&(_=g.find(D=>D.value===e)),!_&&s&&(g[0]?.value?n(g[0].value):i()),_},[t,e,s,g,n,i]),v=(0,Ot.useCallback)(_=>{CP({event:_,inputRef:u,hoveredFont:b,filteredFonts:g,onSelect:a,onHover:n,onClose:l})&&(_.preventDefault(),_.stopPropagation())},[b,g,a,n,l]);(0,Ot.useEffect)(()=>(r(),()=>{l()}),[]);let x=(0,Ot.useMemo)(()=>g.filter(_=>p.has(_.value)),[g,p]),E=(0,Ot.useMemo)(()=>g.filter(_=>!p.has(_.value)),[g,p]),S=(_,D)=>(0,Nr.jsxs)($n,{icon:_.icon,value:_.value,order:D,textStyle:{fontFamily:ou({fontFamily:_.value})},hovered:_.value===b?.value,selected:_.value===e,tabIndex:_.value===e?0:-1,onClick:k=>{a(Number(k.currentTarget.value))},onMouseMove:()=>{b?.value!==_.value&&n(_.value)},children:[_.text,_.badge&&(0,Nr.jsx)(ew,{type:_.badge.type,children:_.badge.placeholder})]},_.value),C=[];return x.length&&C.push((0,Nr.jsx)(Sx,{title:w("fontList.sceneFonts"),children:x.map(S)},"group_1")),E.length&&C.push((0,Nr.jsx)(Sx,{title:w("fontList.availableFonts"),children:E.map((_,D)=>S(_,D+x.length))},"group_2")),(0,Nr.jsxs)(qA,{className:"properties-content",container:o,style:{width:"15rem"},onClose:l,onPointerLeave:i,onKeyDown:v,children:[(0,Nr.jsx)(JA,{ref:u,placeholder:w("quickSearch.placeholder"),onChange:su(c,20)}),(0,Nr.jsx)(tD,{className:"dropdown-menu fonts manual-hover",placeholder:w("fontList.empty"),children:C.length?C:null})]})},(e,t)=>e.selectedFontFamily===t.selectedFontFamily&&e.hoveredFontFamily===t.hoveredFontFamily),_P=({selectedFontFamily:e})=>{let t=(0,oD.useMemo)(()=>!!(e&&!MP(e)),[e]);return(0,Kf.jsx)(Tl,{asChild:!0,children:(0,Kf.jsx)("div",{children:(0,Kf.jsx)(RA,{standalone:!0,icon:q3,title:w("labels.showFonts"),className:"properties-trigger",testId:"font-family-show-fonts",active:t,onClick:()=>{}})})})},sD=[{value:Jd.Excalifont,icon:o0,text:w("labels.handDrawn"),testId:"font-family-hand-drawn"},{value:Jd.Nunito,icon:D0,text:w("labels.normal"),testId:"font-family-normal"},{value:Jd["Comic Shanns"],icon:H5,text:w("labels.code"),testId:"font-family-code"}],kP=new Set(sD.map(e=>e.value)),MP=e=>e?kP.has(e):!1,AP=Xc.default.memo(({isOpened:e,selectedFontFamily:t,hoveredFontFamily:a,onSelect:n,onHover:i,onLeave:r,onPopupChange:l})=>{let o=(0,Xc.useMemo)(()=>sD,[]),d=(0,Xc.useCallback)(h=>{h&&n(h)},[n]);return(0,Nl.jsxs)("div",{role:"dialog","aria-modal":"true",className:"FontPicker__container",children:[(0,Nl.jsx)(Ji,{type:"button",options:o,value:t,onClick:d}),(0,Nl.jsx)(zA,{}),(0,Nl.jsxs)(Cl,{open:e,onOpenChange:l,children:[(0,Nl.jsx)(_P,{selectedFontFamily:t}),e&&(0,Nl.jsx)(TP,{selectedFontFamily:t,hoveredFontFamily:a,onSelect:d,onHover:i,onLeave:r,onOpen:()=>l(!0),onClose:()=>l(!1)})]})]})},(e,t)=>e.isOpened===t.isOpened&&e.selectedFontFamily===t.selectedFontFamily&&e.hoveredFontFamily===t.hoveredFontFamily),DP=({updateData:e,appState:t,elements:a,testId:n})=>{let i=xm.default.useRef(null),r=xm.default.useRef(null),l=Ba(a,t,o=>o.opacity,!0,t.currentItemOpacity);return(0,xm.useEffect)(()=>{if(i.current&&r.current){let o=i.current,d=r.current,h=o.offsetWidth,s=15,c=l/100*(h-s)+s/2;d.style.left=`${c}px`,o.style.background=`linear-gradient(to right, var(--color-slider-track) 0%, var(--color-slider-track) ${l}%, var(--button-bg) ${l}%, var(--button-bg) 100%)`}},[l]),(0,as.jsxs)("label",{className:"control-label",children:[w("labels.opacity"),(0,as.jsxs)("div",{className:"range-wrapper",children:[(0,as.jsx)("input",{ref:i,type:"range",min:"0",max:"100",step:"10",onChange:o=>{e(+o.target.value)},value:l,className:"range-input","data-testid":n}),(0,as.jsx)("div",{className:"value-bubble",ref:r,children:l!==0?l:null}),(0,as.jsx)("div",{className:"zero-label",children:"0"})]})]})},cD=.1,za=(e,t,a,n=!1)=>{let i=Ie(ce(e,t,{includeBoundTextElement:n}));return e.map(r=>i.get(r.id)||r.id===t.editingTextElement?.id?a(r):r)},Ba=function(e,t,a,n,i){let r=t.editingTextElement,l=Ue(e),o=null;return r&&(o=a(r)),o||(bt(l,t)?o=c_(n===!0?l:l.filter(d=>n(d)),t,a)??(typeof i=="function"?i(!0):i):o=typeof i=="function"?i(!1):i),o},IP=(e,t)=>Ga(t)||!t.autoResize?t:$(t,{x:e.textAlign==="left"?e.x:e.x+(e.width-t.width)/(e.textAlign==="center"?2:1),y:e.y+(e.height-t.height)/2},!1),tw=(e,t,a,n,i)=>{let r=new Set,l=za(e,t,d=>{if(ae(d)){let h=n(d);r.add(h);let s=se(d,{fontSize:h});return Da(s,a.scene.getContainerElement(d),a.scene.getNonDeletedElementsMap()),s=IP(d,s),s}return d},!0),o=Ie(l);return ce(e,t,{includeBoundTextElement:!0}).forEach(d=>{ae(d)&&dl(d,o)}),{elements:l,appState:{...t,currentItemFontSize:r.size===1?[...r][0]:i??t.currentItemFontSize},captureUpdate:L.IMMEDIATELY}},OW=Y({name:"changeStrokeColor",label:"labels.stroke",trackEvent:!1,perform:(e,t,a)=>({...a.currentItemStrokeColor&&{elements:za(e,t,n=>Np(n.type)?se(n,{strokeColor:a.currentItemStrokeColor}):n,!0)},appState:{...t,...a},captureUpdate:a.currentItemStrokeColor?L.IMMEDIATELY:L.EVENTUALLY}),PanelComponent:({elements:e,appState:t,updateData:a,appProps:n})=>(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)("h3",{"aria-hidden":"true",children:w("labels.stroke")}),(0,J.jsx)(Wx,{topPicks:Nv,palette:PS,type:"elementStroke",label:w("labels.stroke"),color:Ba(e,t,i=>i.strokeColor,!0,t.currentItemStrokeColor),onChange:i=>a({currentItemStrokeColor:i}),elements:e,appState:t,updateData:a})]})}),zW=Y({name:"changeBackgroundColor",label:"labels.changeBackground",trackEvent:!1,perform:(e,t,a)=>({...a.currentItemBackgroundColor&&{elements:za(e,t,n=>se(n,{backgroundColor:a.currentItemBackgroundColor}))},appState:{...t,...a},captureUpdate:a.currentItemBackgroundColor?L.IMMEDIATELY:L.EVENTUALLY}),PanelComponent:({elements:e,appState:t,updateData:a,appProps:n})=>(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)("h3",{"aria-hidden":"true",children:w("labels.background")}),(0,J.jsx)(Wx,{topPicks:Lv,palette:jS,type:"elementBackground",label:w("labels.background"),color:Ba(e,t,i=>i.backgroundColor,!0,t.currentItemBackgroundColor),onChange:i=>a({currentItemBackgroundColor:i}),elements:e,appState:t,updateData:a})]})}),BW=Y({name:"changeFillStyle",label:"labels.fill",trackEvent:!1,perform:(e,t,a,n)=>(Oe("element","changeFillStyle",`${a} (${n.device.editor.isMobile?"mobile":"desktop"})`),{elements:za(e,t,i=>se(i,{fillStyle:a})),appState:{...t,currentItemFillStyle:a},captureUpdate:L.IMMEDIATELY}),PanelComponent:({elements:e,appState:t,updateData:a})=>{let n=ce(e,t),i=n.length>0&&n.every(r=>r.fillStyle==="zigzag");return(0,J.jsxs)("fieldset",{children:[(0,J.jsx)("legend",{children:w("labels.fill")}),(0,J.jsx)(Ji,{type:"button",options:[{value:"hachure",text:`${w(i?"labels.zigzag":"labels.hachure")} (${B("Alt-Click")})`,icon:i?m5:h5,active:i?!0:void 0,testId:"fill-hachure"},{value:"cross-hatch",text:w("labels.crossHatch"),icon:p5,testId:"fill-cross-hatch"},{value:"solid",text:w("labels.solid"),icon:f5,testId:"fill-solid"}],value:Ba(e,t,r=>r.fillStyle,r=>r.hasOwnProperty("fillStyle"),r=>r?null:t.currentItemFillStyle),onClick:(r,l)=>{let o=l.altKey&&r==="hachure"&&n.every(d=>d.fillStyle==="hachure")?"zigzag":r;a(o)}})]})}}),UW=Y({name:"changeStrokeWidth",label:"labels.strokeWidth",trackEvent:!1,perform:(e,t,a)=>({elements:za(e,t,n=>se(n,{strokeWidth:a})),appState:{...t,currentItemStrokeWidth:a},captureUpdate:L.IMMEDIATELY}),PanelComponent:({elements:e,appState:t,updateData:a})=>(0,J.jsxs)("fieldset",{children:[(0,J.jsx)("legend",{children:w("labels.strokeWidth")}),(0,J.jsx)(Ji,{group:"stroke-width",options:[{value:np.thin,text:w("labels.thin"),icon:A0,testId:"strokeWidth-thin"},{value:np.bold,text:w("labels.bold"),icon:g5,testId:"strokeWidth-bold"},{value:np.extraBold,text:w("labels.extraBold"),icon:b5,testId:"strokeWidth-extraBold"}],value:Ba(e,t,n=>n.strokeWidth,n=>n.hasOwnProperty("strokeWidth"),n=>n?null:t.currentItemStrokeWidth),onChange:n=>a(n)})]})}),PW=Y({name:"changeSloppiness",label:"labels.sloppiness",trackEvent:!1,perform:(e,t,a)=>({elements:za(e,t,n=>se(n,{seed:Bp(),roughness:a})),appState:{...t,currentItemRoughness:a},captureUpdate:L.IMMEDIATELY}),PanelComponent:({elements:e,appState:t,updateData:a})=>(0,J.jsxs)("fieldset",{children:[(0,J.jsx)("legend",{children:w("labels.sloppiness")}),(0,J.jsx)(Ji,{group:"sloppiness",options:[{value:0,text:w("labels.architect"),icon:x5},{value:1,text:w("labels.artist"),icon:w5},{value:2,text:w("labels.cartoonist"),icon:E5}],value:Ba(e,t,n=>n.roughness,n=>n.hasOwnProperty("roughness"),n=>n?null:t.currentItemRoughness),onChange:n=>a(n)})]})}),jW=Y({name:"changeStrokeStyle",label:"labels.strokeStyle",trackEvent:!1,perform:(e,t,a)=>({elements:za(e,t,n=>se(n,{strokeStyle:a})),appState:{...t,currentItemStrokeStyle:a},captureUpdate:L.IMMEDIATELY}),PanelComponent:({elements:e,appState:t,updateData:a})=>(0,J.jsxs)("fieldset",{children:[(0,J.jsx)("legend",{children:w("labels.strokeStyle")}),(0,J.jsx)(Ji,{group:"strokeStyle",options:[{value:"solid",text:w("labels.strokeStyle_solid"),icon:A0},{value:"dashed",text:w("labels.strokeStyle_dashed"),icon:v5},{value:"dotted",text:w("labels.strokeStyle_dotted"),icon:y5}],value:Ba(e,t,n=>n.strokeStyle,n=>n.hasOwnProperty("strokeStyle"),n=>n?null:t.currentItemStrokeStyle),onChange:n=>a(n)})]})}),HW=Y({name:"changeOpacity",label:"labels.opacity",trackEvent:!1,perform:(e,t,a)=>({elements:za(e,t,n=>se(n,{opacity:a}),!0),appState:{...t,currentItemOpacity:a},captureUpdate:L.IMMEDIATELY}),PanelComponent:({elements:e,appState:t,updateData:a})=>(0,J.jsx)(DP,{updateData:a,elements:e,appState:t,testId:"opacity"})}),FW=Y({name:"changeFontSize",label:"labels.fontSize",trackEvent:!1,perform:(e,t,a,n)=>tw(e,t,n,()=>a,a),PanelComponent:({elements:e,appState:t,updateData:a,app:n})=>(0,J.jsxs)("fieldset",{children:[(0,J.jsx)("legend",{children:w("labels.fontSize")}),(0,J.jsx)(Ji,{group:"font-size",options:[{value:16,text:w("labels.small"),icon:B5,testId:"fontSize-small"},{value:20,text:w("labels.medium"),icon:U5,testId:"fontSize-medium"},{value:28,text:w("labels.large"),icon:P5,testId:"fontSize-large"},{value:36,text:w("labels.veryLarge"),icon:j5,testId:"fontSize-veryLarge"}],value:Ba(e,t,i=>{if(ae(i))return i.fontSize;let r=qe(i,n.scene.getNonDeletedElementsMap());return r?r.fontSize:null},i=>ae(i)||qe(i,n.scene.getNonDeletedElementsMap())!==null,i=>i?null:t.currentItemFontSize||Qh),onChange:i=>a(i)})]})}),uM=Y({name:"decreaseFontSize",label:"labels.decreaseFontSize",icon:bu,trackEvent:!1,perform:(e,t,a,n)=>tw(e,t,n,i=>Math.round(1/(1+cD)*i.fontSize)),keyTest:e=>e[M.CTRL_OR_CMD]&&e.shiftKey&&(e.key===M.CHEVRON_LEFT||e.key===M.COMMA)}),mM=Y({name:"increaseFontSize",label:"labels.increaseFontSize",icon:bu,trackEvent:!1,perform:(e,t,a,n)=>tw(e,t,n,i=>Math.round(i.fontSize*(1+cD))),keyTest:e=>e[M.CTRL_OR_CMD]&&e.shiftKey&&(e.key===M.CHEVRON_RIGHT||e.key===M.PERIOD)}),YW=Y({name:"changeFontFamily",label:"labels.fontFamily",trackEvent:!1,perform:(e,t,a,n)=>{let{cachedElements:i,resetAll:r,resetContainers:l,...o}=a;if(r)return{elements:za(e,t,p=>{let f=i?.get(p.id);return f?se(p,{...f}):p},!0),appState:{...t,...o},captureUpdate:L.NEVER};let{currentItemFontFamily:d,currentHoveredFontFamily:h}=a,s=L.EVENTUALLY,c,u=!1;if(d)c=d,s=L.IMMEDIATELY;else if(h){c=h,s=L.EVENTUALLY;let p=ce(e,t,{includeBoundTextElement:!0}).filter(f=>ae(f));if(p.length>200)u=!0;else{let f=0,y=0;for(;f<p.length&&y<5e3;){let g=p[f];y+=g?.originalText.length||0,f++}y>5e3&&(u=!0)}}let m={appState:{...t,...o},captureUpdate:s};if(c&&!u){let p=new Map,f=new Set,y=!1,g=Array.from(Qs.loadedFontsCache.values()),b=Object.entries(Jd).find(([E,S])=>S===c)?.[0];h&&b&&g.some(E=>E.startsWith(b))&&(y=!0),Object.assign(m,{elements:za(e,t,E=>{if(ae(E)&&(E.fontFamily!==c||d)){let S=se(E,{fontFamily:c,lineHeight:Ws(c)}),C=i?.get(E.containerId||"")||{},_=n.scene.getContainerElement(E);return l&&_&&C&&$(_,{...C},!1),y||(f=new Set([...f,...Array.from(S.originalText)])),p.set(S,_),S}return E},!0)});let v=`10px ${ou({fontFamily:c})}`,x=Array.from(f.values()).join();if(y||window.document.fonts.check(v,x))for(let[E,S]of p)Da(E,S,n.scene.getNonDeletedElementsMap(),!1);else window.document.fonts.load(v,x).then(E=>{for(let[S,C]of p){let _=n.scene.getElement(S.id),D=C?n.scene.getElement(C.id):null;_&&Da(_,D,n.scene.getNonDeletedElementsMap(),!1)}n.fonts.onLoaded(E)})}return m},PanelComponent:({elements:e,appState:t,app:a,updateData:n})=>{let i=(0,Yn.useRef)(new Map),r=(0,Yn.useRef)(null),[l,o]=(0,Yn.useState)({}),d=(0,Yn.useRef)(!0),h=(0,Yn.useMemo)(()=>{let s=(c,u)=>Ba(c,t,m=>{if(ae(m))return m.fontFamily;let p=qe(m,u);return p?p.fontFamily:null},m=>ae(m)||qe(m,u)!==null,m=>m?null:t.currentItemFontFamily||Wh);return l.openPopup==="fontFamily"&&t.openPopup==="fontFamily"?s(Array.from(i.current?.values()??[]),i.current):!l.openPopup&&t.openPopup!=="fontFamily"?s(e,a.scene.getNonDeletedElementsMap()):r.current},[l.openPopup,t,e,a.scene]);return(0,Yn.useEffect)(()=>{r.current=h},[h]),(0,Yn.useEffect)(()=>{Object.keys(l).length&&(n(l),o({}))},[l]),(0,Yn.useEffect)(()=>(d.current=!1,()=>{d.current=!0}),[]),(0,J.jsxs)("fieldset",{children:[(0,J.jsx)("legend",{children:w("labels.fontFamily")}),(0,J.jsx)(AP,{isOpened:t.openPopup==="fontFamily",selectedFontFamily:h,hoveredFontFamily:t.currentHoveredFontFamily,onSelect:s=>{o({openPopup:null,currentHoveredFontFamily:null,currentItemFontFamily:s}),i.current.clear()},onHover:s=>{o({currentHoveredFontFamily:s,cachedElements:new Map(i.current),resetContainers:!0})},onLeave:()=>{o({currentHoveredFontFamily:null,cachedElements:new Map(i.current),resetAll:!0})},onPopupChange:s=>{if(s){i.current.clear();let{editingTextElement:c}=t;if(c?.type==="text"){let u=a.scene.getElement(c.id);i.current.set(c.id,se(u||c,{},!0))}else{let u=ce(e,t,{includeBoundTextElement:!0});for(let m of u)i.current.set(m.id,se(m,{},!0))}o({openPopup:"fontFamily"})}else{let c={openPopup:null,currentHoveredFontFamily:null,cachedElements:new Map(i.current),resetAll:!0};d.current?n({...l,...c}):o(c),i.current.clear()}}})]})}}),GW=Y({name:"changeTextAlign",label:"Change text alignment",trackEvent:!1,perform:(e,t,a,n)=>({elements:za(e,t,i=>{if(ae(i)){let r=se(i,{textAlign:a});return Da(r,n.scene.getContainerElement(i),n.scene.getNonDeletedElementsMap()),r}return i},!0),appState:{...t,currentItemTextAlign:a},captureUpdate:L.IMMEDIATELY}),PanelComponent:({elements:e,appState:t,updateData:a,app:n})=>{let i=n.scene.getNonDeletedElementsMap();return(0,J.jsxs)("fieldset",{children:[(0,J.jsx)("legend",{children:w("labels.textAlign")}),(0,J.jsx)(Ji,{group:"text-align",options:[{value:"left",text:w("labels.left"),icon:F5,testId:"align-left"},{value:"center",text:w("labels.center"),icon:Y5,testId:"align-horizontal-center"},{value:"right",text:w("labels.right"),icon:G5,testId:"align-right"}],value:Ba(e,t,r=>{if(ae(r))return r.textAlign;let l=qe(r,i);return l?l.textAlign:null},r=>ae(r)||qe(r,i)!==null,r=>r?null:t.currentItemTextAlign),onChange:r=>a(r)})]})}}),$W=Y({name:"changeVerticalAlign",label:"Change vertical alignment",trackEvent:{category:"element"},perform:(e,t,a,n)=>({elements:za(e,t,i=>{if(ae(i)){let r=se(i,{verticalAlign:a});return Da(r,n.scene.getContainerElement(i),n.scene.getNonDeletedElementsMap()),r}return i},!0),appState:{...t},captureUpdate:L.IMMEDIATELY}),PanelComponent:({elements:e,appState:t,updateData:a,app:n})=>(0,J.jsx)("fieldset",{children:(0,J.jsx)(Ji,{group:"text-align",options:[{value:wr.TOP,text:w("labels.alignTop"),icon:(0,J.jsx)($5,{theme:t.theme}),testId:"align-top"},{value:wr.MIDDLE,text:w("labels.centerVertically"),icon:(0,J.jsx)(X5,{theme:t.theme}),testId:"align-middle"},{value:wr.BOTTOM,text:w("labels.alignBottom"),icon:(0,J.jsx)(V5,{theme:t.theme}),testId:"align-bottom"}],value:Ba(e,t,i=>{if(ae(i)&&i.containerId)return i.verticalAlign;let r=qe(i,n.scene.getNonDeletedElementsMap());return r?r.verticalAlign:null},i=>ae(i)||qe(i,n.scene.getNonDeletedElementsMap())!==null,i=>i?null:wr.MIDDLE),onChange:i=>a(i)})})}),VW=Y({name:"changeRoundness",label:"Change edge roundness",trackEvent:!1,perform:(e,t,a)=>({elements:za(e,t,n=>me(n)?n:se(n,{roundness:a==="round"?{type:pp(n.type)?ni.ADAPTIVE_RADIUS:ni.PROPORTIONAL_RADIUS}:null})),appState:{...t,currentItemRoundness:a},captureUpdate:L.IMMEDIATELY}),PanelComponent:({elements:e,appState:t,updateData:a})=>{let n=U1(Ue(e),t).some(i=>i.roundness?.type===ni.LEGACY);return(0,J.jsxs)("fieldset",{children:[(0,J.jsx)("legend",{children:w("labels.edges")}),(0,J.jsx)(Ji,{group:"edges",options:[{value:"sharp",text:w("labels.sharp"),icon:S5},{value:"round",text:w("labels.round"),icon:C5}],value:Ba(e,t,i=>n?null:i.roundness?"round":"sharp",i=>!Gt(i)&&i.hasOwnProperty("roundness"),i=>i?null:t.currentItemRoundness),onChange:i=>a(i)})]})}}),hM=e=>[{value:null,text:w("labels.arrowhead_none"),keyBinding:"q",icon:T5},{value:"arrow",text:w("labels.arrowhead_arrow"),keyBinding:"w",icon:(0,J.jsx)(_5,{flip:e})},{value:"triangle",text:w("labels.arrowhead_triangle"),icon:(0,J.jsx)(D5,{flip:e}),keyBinding:"e"},{value:"triangle_outline",text:w("labels.arrowhead_triangle_outline"),icon:(0,J.jsx)(I5,{flip:e}),keyBinding:"r"},{value:"circle",text:w("labels.arrowhead_circle"),keyBinding:"a",icon:(0,J.jsx)(k5,{flip:e})},{value:"circle_outline",text:w("labels.arrowhead_circle_outline"),keyBinding:"s",icon:(0,J.jsx)(M5,{flip:e})},{value:"diamond",text:w("labels.arrowhead_diamond"),icon:(0,J.jsx)(N5,{flip:e}),keyBinding:"d"},{value:"diamond_outline",text:w("labels.arrowhead_diamond_outline"),icon:(0,J.jsx)(L5,{flip:e}),keyBinding:"f"},{value:"bar",text:w("labels.arrowhead_bar"),keyBinding:"z",icon:(0,J.jsx)(A5,{flip:e})},{value:"crowfoot_one",text:w("labels.arrowhead_crowfoot_one"),icon:(0,J.jsx)(O5,{flip:e}),keyBinding:"c"},{value:"crowfoot_many",text:w("labels.arrowhead_crowfoot_many"),icon:(0,J.jsx)(R5,{flip:e}),keyBinding:"x"},{value:"crowfoot_one_or_many",text:w("labels.arrowhead_crowfoot_one_or_many"),icon:(0,J.jsx)(z5,{flip:e}),keyBinding:"v"}],XW=Y({name:"changeArrowhead",label:"Change arrowheads",trackEvent:!1,perform:(e,t,a)=>({elements:za(e,t,n=>{if(Ke(n)){let{position:i,type:r}=a;if(i==="start")return se(n,{startArrowhead:r});if(i==="end")return se(n,{endArrowhead:r})}return n}),appState:{...t,[a.position==="start"?"currentItemStartArrowhead":"currentItemEndArrowhead"]:a.type},captureUpdate:L.IMMEDIATELY}),PanelComponent:({elements:e,appState:t,updateData:a})=>{let n=vm().rtl;return(0,J.jsxs)("fieldset",{children:[(0,J.jsx)("legend",{children:w("labels.arrowheads")}),(0,J.jsxs)("div",{className:"iconSelectList buttonList",children:[(0,J.jsx)(dM,{label:"arrowhead_start",options:hM(!n),value:Ba(e,t,i=>Ke(i)&&xu(i.type)?i.startArrowhead:t.currentItemStartArrowhead,!0,t.currentItemStartArrowhead),onChange:i=>a({position:"start",type:i}),numberOfOptionsToAlwaysShow:4}),(0,J.jsx)(dM,{label:"arrowhead_end",group:"arrowheads",options:hM(!!n),value:Ba(e,t,i=>Ke(i)&&xu(i.type)?i.endArrowhead:t.currentItemEndArrowhead,!0,t.currentItemEndArrowhead),onChange:i=>a({position:"end",type:i}),numberOfOptionsToAlwaysShow:4})]})]})}}),ZW=Y({name:"changeArrowType",label:"Change arrow types",trackEvent:!1,perform:(e,t,a,n)=>{let i=za(e,t,o=>{if(!Gt(o))return o;let d=se(o,{roundness:a===Yt.round?{type:ni.PROPORTIONAL_RADIUS}:null,elbowed:a===Yt.elbow,points:a===Yt.elbow||o.elbowed?[o.points[0],o.points[o.points.length-1]]:o.points});if(me(d)){let h=n.scene.getNonDeletedElementsMap();n.dismissLinearEditor();let s=ne.getPointAtIndexGlobalCoordinates(d,0,h),c=ne.getPointAtIndexGlobalCoordinates(d,-1,h),u=!d.startBinding&&Bo(Mo(s),e,h,t.zoom,!1,!0),m=!d.endBinding&&Bo(Mo(c),e,h,t.zoom,!1,!0),p=u||d.startBinding&&h.get(d.startBinding.elementId),f=m||d.endBinding&&h.get(d.endBinding.elementId),y=u?Q0(d,u,"start"):s,g=m?Q0(d,m,"end"):c;u&&zo(d,u,"start",h),m&&zo(d,m,"end",h),$(d,{points:[y,g].map(b=>Z(b[0]-d.x,b[1]-d.y)),...p&&d.startBinding?{startBinding:{...d.startBinding,...W0(d,p,"start",h)}}:{},...f&&d.endBinding?{endBinding:{...d.endBinding,...W0(d,f,"end",h)}}:{}}),ne.updateEditorMidPointsCache(d,h,n.state)}return d}),r={...t,currentItemArrowType:a},l=t.selectedLinearElement?.elementId;if(l){let o=i.find(d=>d.id===l);o&&(r.selectedLinearElement=new ne(o))}return{elements:i,appState:r,captureUpdate:L.IMMEDIATELY}},PanelComponent:({elements:e,appState:t,updateData:a})=>(0,J.jsxs)("fieldset",{children:[(0,J.jsx)("legend",{children:w("labels.arrowtypes")}),(0,J.jsx)(Ji,{group:"arrowtypes",options:[{value:Yt.sharp,text:w("labels.arrowtype_sharp"),icon:xC,testId:"sharp-arrow"},{value:Yt.round,text:w("labels.arrowtype_round"),icon:EC,testId:"round-arrow"},{value:Yt.elbow,text:w("labels.arrowtype_elbowed"),icon:wC,testId:"elbow-arrow"}],value:Ba(e,t,n=>Gt(n)?n.elbowed?Yt.elbow:n.roundness?Yt.round:Yt.sharp:null,n=>Gt(n),n=>n?null:t.currentItemArrowType),onChange:n=>a(n)})]})}),Wo=({viewportX:e,viewportY:t,nextZoom:a},n)=>{let i=e-n.offsetLeft,r=t-n.offsetTop,l=n.zoom.value,o=n.scrollX+(i-i/l),d=n.scrollY+(r-r/l),h=-(i-i/a),s=-(r-r/a);return{scrollX:o+h,scrollY:d+s,zoom:{value:a}}},pm=()=>{let e=document.querySelector(".excalidraw-tooltip");if(e)return e;let t=document.createElement("div");return document.body.appendChild(t),t.classList.add("excalidraw-tooltip"),t},mD=(e,t,a="bottom")=>{let n=e.getBoundingClientRect(),i=window.innerWidth,r=window.innerHeight,l=5,o=t.left+t.width/2-n.width/2;o<0?o=l:o+n.width>=i&&(o=i-n.width-l);let d;a==="bottom"?(d=t.top+t.height+l,d+n.height>=r&&(d=t.top-n.height-l)):(d=t.top-n.height-l,d<0&&(d=t.top+t.height+l)),Object.assign(e.style,{top:`${d}px`,left:`${o}px`})},NP=(e,t,a,n)=>{t.classList.add("excalidraw-tooltip--visible"),t.style.minWidth=n?"50ch":"10ch",t.style.maxWidth=n?"50ch":"15ch",t.textContent=a;let i=e.getBoundingClientRect();mD(t,i)},ms=({children:e,label:t,long:a=!1,style:n,disabled:i})=>((0,dD.useEffect)(()=>()=>pm().classList.remove("excalidraw-tooltip--visible"),[]),i?null:(0,uD.jsx)("div",{className:"excalidraw-tooltip-wrapper",onPointerEnter:r=>NP(r.currentTarget,pm(),t,a),onPointerLeave:()=>pm().classList.remove("excalidraw-tooltip--visible"),style:n,children:e})),KW=Y({name:"changeViewBackgroundColor",label:"labels.canvasBackground",paletteName:"Change canvas background color",trackEvent:!1,predicate:(e,t,a,n)=>!!n.props.UIOptions.canvasActions.changeViewBackgroundColor&&!t.viewModeEnabled,perform:(e,t,a)=>({appState:{...t,...a},captureUpdate:a.viewBackgroundColor?L.IMMEDIATELY:L.EVENTUALLY}),PanelComponent:({elements:e,appState:t,updateData:a,appProps:n})=>(0,gs.jsx)(Wx,{palette:null,topPicks:Rv,label:w("labels.canvasBackground"),type:"canvasBackground",color:t.viewBackgroundColor,onChange:i=>a({viewBackgroundColor:i}),"data-testid":"canvas-background-picker",elements:e,appState:t,updateData:a})}),fm=Y({name:"clearCanvas",label:"labels.clearCanvas",paletteName:"Clear canvas",icon:sl,trackEvent:{category:"canvas"},predicate:(e,t,a,n)=>!!n.props.UIOptions.canvasActions.clearCanvas&&!t.viewModeEnabled&&t.openDialog?.name!=="elementLinkSelector",perform:(e,t,a,n)=>(n.imageCache.clear(),{elements:e.map(i=>se(i,{isDeleted:!0})),appState:{...iu(),files:{},theme:t.theme,penMode:t.penMode,penDetected:t.penDetected,exportBackground:t.exportBackground,exportEmbedScene:t.exportEmbedScene,gridSize:t.gridSize,gridStep:t.gridStep,gridModeEnabled:t.gridModeEnabled,stats:t.stats,pasteDialog:t.pasteDialog,activeTool:t.activeTool.type==="image"?{...t.activeTool,type:"selection"}:t.activeTool},captureUpdate:L.IMMEDIATELY})}),pM=Y({name:"zoomIn",label:"buttons.zoomIn",viewMode:!0,icon:s0,trackEvent:{category:"canvas"},perform:(e,t,a,n)=>({appState:{...t,...Wo({viewportX:t.width/2+t.offsetLeft,viewportY:t.height/2+t.offsetTop,nextZoom:Cr(t.zoom.value+tu)},t),userToFollow:null},captureUpdate:L.EVENTUALLY}),PanelComponent:({updateData:e,appState:t})=>(0,gs.jsx)(he,{type:"button",className:"zoom-in-button zoom-button",icon:s0,title:`${w("buttons.zoomIn")} \u2014 ${B("CtrlOrCmd++")}`,"aria-label":w("buttons.zoomIn"),disabled:t.zoom.value>=Hv,onClick:()=>{e(null)}}),keyTest:e=>(e.code===ye.EQUAL||e.code===ye.NUM_ADD)&&(e[M.CTRL_OR_CMD]||e.shiftKey)}),fM=Y({name:"zoomOut",label:"buttons.zoomOut",icon:c0,viewMode:!0,trackEvent:{category:"canvas"},perform:(e,t,a,n)=>({appState:{...t,...Wo({viewportX:t.width/2+t.offsetLeft,viewportY:t.height/2+t.offsetTop,nextZoom:Cr(t.zoom.value-tu)},t),userToFollow:null},captureUpdate:L.EVENTUALLY}),PanelComponent:({updateData:e,appState:t})=>(0,gs.jsx)(he,{type:"button",className:"zoom-out-button zoom-button",icon:c0,title:`${w("buttons.zoomOut")} \u2014 ${B("CtrlOrCmd+-")}`,"aria-label":w("buttons.zoomOut"),disabled:t.zoom.value<=jv,onClick:()=>{e(null)}}),keyTest:e=>(e.code===ye.MINUS||e.code===ye.NUM_SUBTRACT)&&(e[M.CTRL_OR_CMD]||e.shiftKey)}),gM=Y({name:"resetZoom",label:"buttons.resetZoom",icon:Q3,viewMode:!0,trackEvent:{category:"canvas"},perform:(e,t,a,n)=>({appState:{...t,...Wo({viewportX:t.width/2+t.offsetLeft,viewportY:t.height/2+t.offsetTop,nextZoom:Cr(1)},t),userToFollow:null},captureUpdate:L.EVENTUALLY}),PanelComponent:({updateData:e,appState:t})=>(0,gs.jsx)(ms,{label:w("buttons.resetZoom"),style:{height:"100%"},children:(0,gs.jsxs)(he,{type:"button",className:"reset-zoom-button zoom-button",title:w("buttons.resetZoom"),"aria-label":w("buttons.resetZoom"),onClick:()=>{e(null)},children:[(t.zoom.value*100).toFixed(0),"%"]})}),keyTest:e=>(e.code===ye.ZERO||e.code===ye.NUM_ZERO)&&(e[M.CTRL_OR_CMD]||e.shiftKey)}),LP=(e,t,a=1)=>{let[n,i,r,l]=e,o=r-n,d=t.width/o,h=l-i,s=t.height/h,c=Math.min(d,s)*Aa(a,.1,1);return Math.min(c,1)},RP=({bounds:e,appState:t,canvasOffsets:a,fitToViewport:n=!1,viewportZoomFactor:i=1,minZoom:r=-1/0,maxZoom:l=1/0})=>{i=Aa(i,jv,Hv);let[o,d,h,s]=e,c=(o+h)/2,u=(d+s)/2,m=a?.left??0,p=a?.top??0,f=a?.right??0,y=a?.bottom??0,g=t.width-m-f,b=t.height-p-y,v;if(n){let S=h-o,C=s-d;v=Math.min(g/S,b/C)*i}else v=LP(e,{width:g,height:b},i);let x=Cr(Aa(p3(v,tu,"floor"),r,l)),E=QC({scenePoint:{x:c,y:u},viewportDimensions:{width:t.width,height:t.height},offsets:a,zoom:{value:x}});return{appState:{...t,scrollX:E.scrollX,scrollY:E.scrollY,zoom:{value:x}},captureUpdate:L.EVENTUALLY}},Cg=({canvasOffsets:e,targetElements:t,appState:a,fitToViewport:n,viewportZoomFactor:i,minZoom:r,maxZoom:l})=>{let o=gt(Ue(t));return RP({canvasOffsets:e,bounds:o,appState:a,fitToViewport:n,viewportZoomFactor:i,minZoom:r,maxZoom:l})},qW=Y({name:"zoomToFitSelectionInViewport",label:"labels.zoomToFitViewport",icon:_p,trackEvent:{category:"canvas"},perform:(e,t,a,n)=>{let i=n.scene.getSelectedElements(t);return Cg({targetElements:i.length?i:e,appState:{...t,userToFollow:null},fitToViewport:!1,canvasOffsets:n.getEditorUIOffsets()})},keyTest:e=>e.code===ye.TWO&&e.shiftKey&&!e.altKey&&!e[M.CTRL_OR_CMD]}),QW=Y({name:"zoomToFitSelection",label:"helpDialog.zoomToSelection",icon:_p,trackEvent:{category:"canvas"},perform:(e,t,a,n)=>{let i=n.scene.getSelectedElements(t);return Cg({targetElements:i.length?i:e,appState:{...t,userToFollow:null},fitToViewport:!0,canvasOffsets:n.getEditorUIOffsets()})},keyTest:e=>e.code===ye.THREE&&e.shiftKey&&!e.altKey&&!e[M.CTRL_OR_CMD]}),WW=Y({name:"zoomToFit",label:"helpDialog.zoomToFit",icon:_p,viewMode:!0,trackEvent:{category:"canvas"},perform:(e,t,a,n)=>Cg({targetElements:e,appState:{...t,userToFollow:null},fitToViewport:!1,canvasOffsets:n.getEditorUIOffsets()}),keyTest:e=>e.code===ye.ONE&&e.shiftKey&&!e.altKey&&!e[M.CTRL_OR_CMD]}),ng=Y({name:"toggleTheme",label:(e,t)=>t.theme===xe.DARK?"buttons.lightMode":"buttons.darkMode",keywords:["toggle","dark","light","mode","theme"],icon:e=>e.theme===xe.LIGHT?vp:yp,viewMode:!0,trackEvent:{category:"canvas"},perform:(e,t,a)=>({appState:{...t,theme:a||(t.theme===xe.LIGHT?xe.DARK:xe.LIGHT)},captureUpdate:L.EVENTUALLY}),keyTest:e=>e.altKey&&e.shiftKey&&e.code===ye.D,predicate:(e,t,a,n)=>!!n.props.UIOptions.canvasActions.toggleTheme}),JW=Y({name:"toggleEraserTool",label:"toolBar.eraser",trackEvent:{category:"toolbar"},perform:(e,t)=>{let a;return Ri(t)?a=Nt(t,{...t.activeTool.lastActiveTool||{type:"selection"},lastActiveToolBeforeEraser:null}):a=Nt(t,{type:"eraser",lastActiveToolBeforeEraser:t.activeTool}),{appState:{...t,selectedElementIds:{},selectedGroupIds:{},activeEmbeddable:null,activeTool:a},captureUpdate:L.IMMEDIATELY}},keyTest:e=>e.key===M.E}),OP=Y({name:"toggleHandTool",label:"toolBar.hand",paletteName:"Toggle hand tool",trackEvent:{category:"toolbar"},icon:N0,viewMode:!1,perform:(e,t,a,n)=>{let i;return Vs(t)?i=Nt(t,{...t.activeTool.lastActiveTool||{type:"selection"},lastActiveToolBeforeEraser:null}):(i=Nt(t,{type:"hand",lastActiveToolBeforeEraser:t.activeTool}),ke(n.interactiveCanvas,De.GRAB)),{appState:{...t,selectedElementIds:{},selectedGroupIds:{},activeEmbeddable:null,activeTool:i},captureUpdate:L.IMMEDIATELY}},keyTest:e=>!e.altKey&&!e[M.CTRL_OR_CMD]&&e.key===M.H}),pi=Y({name:"finalize",label:"",trackEvent:!1,perform:(e,t,a,n)=>{let{interactiveCanvas:i,focusContainer:r,scene:l}=n,o=l.getNonDeletedElementsMap();if(t.editingLinearElement){let{elementId:u,startBindingElement:m,endBindingElement:p}=t.editingLinearElement,f=ne.getElement(u,o);if(f)return ol(f)&&q0(f,m,p,o,l),{elements:f.points.length<2||Ou(f)?e.filter(y=>y.id!==f.id):void 0,appState:{...t,cursorButton:"up",editingLinearElement:null},captureUpdate:L.IMMEDIATELY}}let d=e,h=t.pendingImageElementId&&l.getElement(t.pendingImageElementId);h&&$(h,{isDeleted:!0},!1),window.document.activeElement instanceof HTMLElement&&r();let s=t.multiElement?t.multiElement:t.newElement?.type==="freedraw"?t.newElement:null;if(s){if(s.type!=="freedraw"&&t.lastPointerDownWith!=="touch"){let{points:m,lastCommittedPoint:p}=s;(!p||m[m.length-1]!==p)&&$(s,{points:s.points.slice(0,-1)})}Ou(s)&&(d=d.filter(m=>m.id!==s.id));let u=Ip(s.points,t.zoom.value);if((s.type==="line"||s.type==="freedraw")&&u){let m=s.points,p=m[0];$(s,{points:m.map((f,y)=>y===m.length-1?Z(p[0],p[1]):f)})}if(ol(s)&&!u&&s.points.length>1){let[m,p]=ne.getPointAtIndexGlobalCoordinates(s,-1,Ie(e));Rp(s,t,{x:m,y:p},o,e)}}(!t.activeTool.locked&&t.activeTool.type!=="freedraw"||!s)&&ri(i);let c;return t.activeTool.type==="eraser"?c=Nt(t,{...t.activeTool.lastActiveTool||{type:"selection"},lastActiveToolBeforeEraser:null}):c=Nt(t,{type:"selection"}),{elements:d,appState:{...t,cursorButton:"up",activeTool:(t.activeTool.locked||t.activeTool.type==="freedraw")&&s?t.activeTool:c,activeEmbeddable:null,newElement:null,selectionElement:null,multiElement:null,editingTextElement:null,startBoundElement:null,suggestedBindings:[],selectedElementIds:s&&!t.activeTool.locked&&t.activeTool.type!=="freedraw"?{...t.selectedElementIds,[s.id]:!0}:t.selectedElementIds,selectedLinearElement:s&&Ke(s)?new ne(s):t.selectedLinearElement,pendingImageElementId:null},captureUpdate:L.IMMEDIATELY}},keyTest:(e,t)=>e.key===M.ESCAPE&&(t.editingLinearElement!==null||!t.newElement&&t.multiElement===null)||(e.key===M.ESCAPE||e.key===M.ENTER)&&t.multiElement!==null,PanelComponent:({appState:e,updateData:t,data:a})=>(0,hD.jsx)(he,{type:"button",icon:o5,title:w("buttons.done"),"aria-label":w("buttons.done"),onClick:t,visible:e.multiElement!=null,size:a?.size||"medium",style:{pointerEvents:"all"}})}),zP=e=>{let{id:t}=ar(),[a,n]=(0,pD.useState)(e.value),i=l=>{e.ignoreFocus||E3(l.target);let o=l.target.value;o!==e.value&&e.onChange(o)},r=l=>{if(l.key===M.ENTER){if(l.preventDefault(),l.nativeEvent.isComposing||l.keyCode===229)return;l.currentTarget.blur()}};return(0,wm.jsxs)("div",{className:"ProjectName",children:[(0,wm.jsx)("label",{className:"ProjectName-label",htmlFor:"filename",children:`${e.label}:`}),(0,wm.jsx)("input",{type:"text",className:"TextInput",onBlur:i,onKeyDown:r,id:`${t}-filename`,value:a,onChange:l=>n(l.target.value)})]})},BP=e=>{let t=e.title||(e.value===xe.DARK?w("buttons.lightMode"):w("buttons.darkMode"));return(0,Nc.jsx)(he,{type:"icon",icon:e.value===xe.LIGHT?bM.MOON:bM.SUN,title:t,"aria-label":t,onClick:()=>e.onChange(e.value===xe.DARK?xe.LIGHT:xe.DARK),"data-testid":"toggle-dark-mode"})},bM={SUN:(0,Nc.jsx)("svg",{width:"512",height:"512",className:"rtl-mirror",viewBox:"0 0 512 512",children:(0,Nc.jsx)("path",{fill:"currentColor",d:"M256 160c-52.9 0-96 43.1-96 96s43.1 96 96 96 96-43.1 96-96-43.1-96-96-96zm246.4 80.5l-94.7-47.3 33.5-100.4c4.5-13.6-8.4-26.5-21.9-21.9l-100.4 33.5-47.4-94.8c-6.4-12.8-24.6-12.8-31 0l-47.3 94.7L92.7 70.8c-13.6-4.5-26.5 8.4-21.9 21.9l33.5 100.4-94.7 47.4c-12.8 6.4-12.8 24.6 0 31l94.7 47.3-33.5 100.5c-4.5 13.6 8.4 26.5 21.9 21.9l100.4-33.5 47.3 94.7c6.4 12.8 24.6 12.8 31 0l47.3-94.7 100.4 33.5c13.6 4.5 26.5-8.4 21.9-21.9l-33.5-100.4 94.7-47.3c13-6.5 13-24.7.2-31.1zm-155.9 106c-49.9 49.9-131.1 49.9-181 0-49.9-49.9-49.9-131.1 0-181 49.9-49.9 131.1-49.9 181 0 49.9 49.9 49.9 131.1 0 181z"})}),MOON:(0,Nc.jsx)("svg",{width:"512",height:"512",className:"rtl-mirror",viewBox:"0 0 512 512",children:(0,Nc.jsx)("path",{fill:"currentColor",d:"M283.211 512c78.962 0 151.079-35.925 198.857-94.792 7.068-8.708-.639-21.43-11.562-19.35-124.203 23.654-238.262-71.576-238.262-196.954 0-72.222 38.662-138.635 101.498-174.394 9.686-5.512 7.25-20.197-3.756-22.23A258.156 258.156 0 0 0 283.211 0c-141.309 0-256 114.511-256 256 0 141.309 114.511 256 256 256z"})})},Tg=(e,{selectedElementIds:t},a)=>{e=Ue(e);let n=a&&bt(e,{selectedElementIds:t}),i=null,r=n?ce(e,{selectedElementIds:t},{includeBoundTextElement:!0}):e;return n&&(r.length===1&&Ce(r[0])?(i=r[0],r=O1(e,i)):r.length>1&&(r=ce(e,{selectedElementIds:t},{includeBoundTextElement:!0,includeElementsInFrames:!0}))),{exportingFrame:i,exportedElements:zi(r)}},_g=async(e,t,a,n,{exportBackground:i,exportPadding:r=au,viewBackgroundColor:l,name:o=a.name||m3,fileHandle:d=null,exportingFrame:h=null})=>{if(t.length===0)throw new Error(w("alerts.cannotExportEmptyCanvas"));if(e==="svg"||e==="clipboard-svg"){let c=S1(t,{exportBackground:i,exportWithDarkMode:a.exportWithDarkMode,viewBackgroundColor:l,exportPadding:r,exportScale:a.exportScale,exportEmbedScene:a.exportEmbedScene&&e==="svg"},n,{exportingFrame:h});if(e==="svg")return g1(c.then(u=>new Blob([u.outerHTML],{type:Ma.svg})),{description:"Export to SVG",name:o,extension:a.exportEmbedScene?"excalidraw.svg":"svg",mimeTypes:[ep.svg],fileHandle:d});if(e==="clipboard-svg"){let u=await c.then(m=>m.outerHTML);try{await Nu(u)}catch{throw new Error(w("errors.copyToSystemClipboardFailed"))}return}}let s=GT(t,a,n,{exportBackground:i,viewBackgroundColor:l,exportPadding:r,exportingFrame:h});if(e==="png"){let c=oc(s);return a.exportEmbedScene&&(c=c.then(u=>import("./chunks/image-GAAHSSAO-EJKU5B4V.js").then(({encodePngMetadata:m})=>m({blob:u,metadata:Hp(t,a,n,"local")})))),g1(c,{description:"Export to PNG",name:o,extension:a.exportEmbedScene?"excalidraw.png":"png",mimeTypes:[ep.png],fileHandle:d})}else if(e==="clipboard")try{let c=oc(s);await JT(c)}catch(c){throw console.warn(c),c.name==="CANVAS_POSSIBLY_TOO_BIG"?new Error(w("canvasError.canvasTooBig")):Gs&&c.name==="TypeError"?new Error(`${w("alerts.couldNotCopyToClipboard")}
|
|
51
|
+
|
|
52
|
+
${w("hints.firefox_clipboard_write")}`):new Error(w("alerts.couldNotCopyToClipboard"))}else throw new Error("Unsupported export type")},UP=async(e,t,a,n)=>{let{exportBackground:i,viewBackgroundColor:r,fileHandle:l}=t,o=w_(l);if(!l||!E_(o))throw new Error("fileHandle should exist and should be of type svg or png when resaving");t={...t,exportEmbedScene:!0};let{exportedElements:d,exportingFrame:h}=Tg(e,t,!1);return await _g(o,d,t,a,{exportBackground:i,viewBackgroundColor:r,name:n,fileHandle:l,exportingFrame:h}),{fileHandle:l}},aw=({children:e,checked:t,onChange:a,className:n})=>(0,Em.jsxs)("div",{className:U("Checkbox",n,{"is-checked":t}),onClick:i=>{a(!t,i),i.currentTarget.querySelector(".Checkbox-box").focus()},children:[(0,Em.jsx)("button",{type:"button",className:"Checkbox-box",role:"checkbox","aria-checked":t,children:a5}),(0,Em.jsx)("div",{className:"Checkbox-label",children:e})]}),PP=Y({name:"changeProjectName",label:"labels.fileTitle",trackEvent:!1,perform:(e,t,a)=>({appState:{...t,name:a},captureUpdate:L.EVENTUALLY}),PanelComponent:({appState:e,updateData:t,appProps:a,data:n,app:i})=>(0,Ka.jsx)(zP,{label:w("labels.fileTitle"),value:i.getName(),onChange:r=>t(r),ignoreFocus:n?.ignoreFocus??!1})}),jP=Y({name:"changeExportScale",label:"imageExportDialog.scale",trackEvent:{category:"export",action:"scale"},perform:(e,t,a)=>({appState:{...t,exportScale:a},captureUpdate:L.EVENTUALLY}),PanelComponent:({elements:e,appState:t,updateData:a})=>{let n=Ue(e),i=bt(n,t)?ce(n,t):n;return(0,Ka.jsx)(Ka.Fragment,{children:Yv.map(r=>{let[l,o]=$T(i,au,r),d=`${w("imageExportDialog.label.scale")} ${r}x (${l}x${o})`;return(0,Ka.jsx)(he,{size:"small",type:"radio",icon:`${r}x`,name:"export-canvas-scale",title:d,"aria-label":d,id:"export-canvas-scale",checked:r===t.exportScale,onChange:()=>a(r)},r)})})}}),HP=Y({name:"changeExportBackground",label:"imageExportDialog.label.withBackground",trackEvent:{category:"export",action:"toggleBackground"},perform:(e,t,a)=>({appState:{...t,exportBackground:a},captureUpdate:L.EVENTUALLY}),PanelComponent:({appState:e,updateData:t})=>(0,Ka.jsx)(aw,{checked:e.exportBackground,onChange:a=>t(a),children:w("imageExportDialog.label.withBackground")})}),fD=Y({name:"changeExportEmbedScene",label:"imageExportDialog.tooltip.embedScene",trackEvent:{category:"export",action:"embedScene"},perform:(e,t,a)=>({appState:{...t,exportEmbedScene:a},captureUpdate:L.EVENTUALLY}),PanelComponent:({appState:e,updateData:t})=>(0,Ka.jsxs)(aw,{checked:e.exportEmbedScene,onChange:a=>t(a),children:[w("imageExportDialog.label.embedScene"),(0,Ka.jsx)(ms,{label:w("imageExportDialog.tooltip.embedScene"),long:!0,children:(0,Ka.jsx)("div",{className:"excalidraw-tooltip-icon",children:s5})})]})}),vM=Y({name:"saveToActiveFile",label:"buttons.save",icon:gu,trackEvent:{category:"export"},predicate:(e,t,a,n)=>!!n.props.UIOptions.canvasActions.saveToActiveFile&&!!t.fileHandle&&!t.viewModeEnabled,perform:async(e,t,a,n)=>{let i=!!t.fileHandle;try{let{fileHandle:r}=V1(t.fileHandle)?await UP(e,t,n.files,n.getName()):await b1(e,t,n.files,n.getName());return{captureUpdate:L.EVENTUALLY,appState:{...t,fileHandle:r,toast:i?{message:r?.name?w("toast.fileSavedToFilename").replace("{filename}",`"${r.name}"`):w("toast.fileSaved")}:null}}}catch(r){return r?.name!=="AbortError"?console.error(r):console.warn(r),{captureUpdate:L.EVENTUALLY}}},keyTest:e=>e.key===M.S&&e[M.CTRL_OR_CMD]&&!e.shiftKey}),gD=Y({name:"saveFileToDisk",label:"exportDialog.disk_title",icon:gu,viewMode:!0,trackEvent:{category:"export"},perform:async(e,t,a,n)=>{try{let{fileHandle:i}=await b1(e,{...t,fileHandle:null},n.files,n.getName());return{captureUpdate:L.EVENTUALLY,appState:{...t,openDialog:null,fileHandle:i,toast:{message:w("toast.fileSaved")}}}}catch(i){return i?.name!=="AbortError"?console.error(i):console.warn(i),{captureUpdate:L.EVENTUALLY}}},keyTest:e=>e.key===M.S&&e.shiftKey&&e[M.CTRL_OR_CMD],PanelComponent:({updateData:e})=>(0,Ka.jsx)(he,{type:"button",icon:i5,title:w("buttons.saveAs"),"aria-label":w("buttons.saveAs"),showAriaLabel:Bt().editor.isMobile,hidden:!Zh,onClick:()=>e(null),"data-testid":"save-as-button"})}),Cx=Y({name:"loadScene",label:"buttons.load",trackEvent:{category:"export"},predicate:(e,t,a,n)=>!!n.props.UIOptions.canvasActions.loadScene&&!t.viewModeEnabled,perform:async(e,t,a,n)=>{try{let{elements:i,appState:r,files:l}=await LT(t,e);return{elements:i,appState:r,files:l,captureUpdate:L.IMMEDIATELY}}catch(i){return i?.name==="AbortError"?(console.warn(i),!1):{elements:e,appState:{...t,errorMessage:i.message},files:n.files,captureUpdate:L.EVENTUALLY}}},keyTest:e=>e[M.CTRL_OR_CMD]&&e.key===M.O}),FP=Y({name:"exportWithDarkMode",label:"imageExportDialog.label.darkMode",trackEvent:{category:"export",action:"toggleTheme"},perform:(e,t,a)=>({appState:{...t,exportWithDarkMode:a},captureUpdate:L.EVENTUALLY}),PanelComponent:({appState:e,updateData:t})=>(0,Ka.jsx)("div",{style:{display:"flex",justifyContent:"flex-end",marginTop:"-45px",marginBottom:"10px"},children:(0,Ka.jsx)(BP,{value:e.exportWithDarkMode?xe.DARK:xe.LIGHT,onChange:a=>{t(a===xe.DARK)},title:w("imageExportDialog.label.darkMode")})})}),bD="{}",YP=Y({name:"copyStyles",label:"labels.copyStyles",icon:P0,trackEvent:{category:"element"},perform:(e,t,a,n)=>{let i=[],r=e.find(l=>t.selectedElementIds[l.id]);if(i.push(r),r&&Bi(r)){let l=qe(r,n.scene.getNonDeletedElementsMap());i.push(l)}return r&&(bD=JSON.stringify(i)),{appState:{...t,toast:{message:w("toast.copyStyles")}},captureUpdate:L.EVENTUALLY}},keyTest:e=>e[M.CTRL_OR_CMD]&&e.altKey&&e.code===ye.C}),GP=Y({name:"pasteStyles",label:"labels.pasteStyles",icon:P0,trackEvent:{category:"element"},perform:(e,t,a,n)=>{let i=JSON.parse(bD),r=i[0],l=i[1];if(!R3(r))return{elements:e,captureUpdate:L.EVENTUALLY};let o=ce(e,t,{includeBoundTextElement:!0}),d=o.map(h=>h.id);return{elements:e.map(h=>{if(d.includes(h.id)){let s=r;if(ae(h)&&h.containerId&&(s=l),!s)return h;let c=se(h,{backgroundColor:s?.backgroundColor,strokeWidth:s?.strokeWidth,strokeColor:s?.strokeColor,strokeStyle:s?.strokeStyle,fillStyle:s?.fillStyle,opacity:s?.opacity,roughness:s?.roughness,roundness:s.roundness?O3(s.roundness.type,h)?s.roundness:z3(h):null});if(ae(c)){let u=s.fontSize||Qh,m=s.fontFamily||Wh;c=se(c,{fontSize:u,fontFamily:m,textAlign:s.textAlign||Bv,lineHeight:s.lineHeight||Ws(m)});let p=null;c.containerId&&(p=o.find(f=>ae(c)&&f.id===c.containerId)||null),Da(c,p,n.scene.getNonDeletedElementsMap())}return c.type==="arrow"&&Gt(s)&&(c=se(c,{startArrowhead:s.startArrowhead,endArrowhead:s.endArrowhead})),Ce(h)&&(c=se(c,{roundness:null,backgroundColor:"transparent"})),c}return h}),captureUpdate:L.IMMEDIATELY}},keyTest:e=>e[M.CTRL_OR_CMD]&&e.altKey&&e.code===ye.V}),tJ=Y({name:"toggleCanvasMenu",label:"buttons.menu",trackEvent:{category:"menu"},perform:(e,t)=>({appState:{...t,openMenu:t.openMenu==="canvas"?null:"canvas"},captureUpdate:L.EVENTUALLY}),PanelComponent:({appState:e,updateData:t})=>(0,nw.jsx)(he,{type:"button",icon:d0,"aria-label":w("buttons.menu"),onClick:t,selected:e.openMenu==="canvas"})}),aJ=Y({name:"toggleEditMenu",label:"buttons.edit",trackEvent:{category:"menu"},perform:(e,t)=>({appState:{...t,openMenu:t.openMenu==="shape"?null:"shape"},captureUpdate:L.EVENTUALLY}),PanelComponent:({elements:e,appState:t,updateData:a})=>(0,nw.jsx)(he,{visible:Kp(t,Ue(e)),type:"button",icon:r5,"aria-label":w("buttons.edit"),onClick:a,selected:t.openMenu==="shape"})}),iw=Y({name:"toggleShortcuts",label:"welcomeScreen.defaults.helpHint",icon:J3,viewMode:!0,trackEvent:{category:"menu",action:"toggleHelpDialog"},perform:(e,t,a,{focusContainer:n})=>(t.openDialog?.name==="help"&&n(),{appState:{...t,openDialog:t.openDialog?.name==="help"?null:{name:"help"}},captureUpdate:L.EVENTUALLY}),keyTest:e=>e.key===M.QUESTION_MARK}),$P=e=>{if(e.length>=2){let t=e[0].groupIds;for(let a of t)if(e.reduce((n,i)=>n&&Cu(i,a),!0))return!0}return!1},yM=(e,t,a)=>{let n=a.scene.getSelectedElements({selectedElementIds:t.selectedElementIds,includeBoundTextElement:!0});return n.length>=2&&!$P(n)&&!z1(n)},VP=Y({name:"group",label:"labels.group",icon:e=>(0,ns.jsx)(k0,{theme:e.theme}),trackEvent:{category:"element"},perform:(e,t,a,n)=>{let i=n_(n.scene.getSelectedElements({selectedElementIds:t.selectedElementIds,includeBoundTextElement:!0}));if(i.length<2)return{appState:t,elements:e,captureUpdate:L.EVENTUALLY};let r=ul(t);if(r.length===1){let f=r[0],y=new Set(xt(e,f).map(b=>b.id)),g=new Set(i.map(b=>b.id));if(new Set([...Array.from(y),...Array.from(g)]).size===y.size)return{appState:t,elements:e,captureUpdate:L.EVENTUALLY}}let l=[...e];new Set(i.map(f=>f.frameId)).size>1&&t_(i).forEach((f,y)=>{N1(f,n.scene.getNonDeletedElementsMap())});let o=ku(),d=Ie(i);l=l.map(f=>d.get(f.id)?se(f,{groupIds:iT(f.groupIds,o,t.editingGroupId)}):f);let h=xt(l,o),s=h[h.length-1],c=l.lastIndexOf(s),u=l.slice(c+1),m=l.slice(0,c).filter(f=>!Cu(f,o)),p=gl([...m,...h,...u],Ie(h));return{appState:{...t,...JC(o,{...t,selectedGroupIds:{}},Ue(l))},elements:p,captureUpdate:L.IMMEDIATELY}},predicate:(e,t,a,n)=>yM(e,t,n),keyTest:e=>!e.shiftKey&&e[M.CTRL_OR_CMD]&&e.key===M.G,PanelComponent:({elements:e,appState:t,updateData:a,app:n})=>(0,ns.jsx)(he,{hidden:!yM(e,t,n),type:"button",icon:(0,ns.jsx)(k0,{theme:t.theme}),onClick:()=>a(null),title:`${w("labels.group")} \u2014 ${B("CtrlOrCmd+G")}`,"aria-label":w("labels.group"),visible:bt(Ue(e),t)})}),XP=Y({name:"ungroup",label:"labels.ungroup",icon:e=>(0,ns.jsx)(M0,{theme:e.theme}),trackEvent:{category:"element"},perform:(e,t,a,n)=>{let i=ul(t),r=Ie(e);if(i.length===0)return{appState:t,elements:e,captureUpdate:L.EVENTUALLY};let l=[...e],o=[];l=l.map(c=>{Ga(c)&&o.push(c.id);let u=rT(c.groupIds,t.selectedGroupIds);return u.length===c.groupIds.length?c:se(c,{groupIds:u})});let d=da(t,Ue(l),t,null),h=n.scene.getSelectedElements(t),s=new Set(h.filter(c=>c.frameId).map(c=>c.frameId));return a_(e).filter(c=>s.has(c.id)).forEach(c=>{c&&(l=L1(l,Lu(l,c,t,r),c,n))}),d.selectedElementIds=Object.entries(d.selectedElementIds).reduce((c,[u,m])=>(m&&!o.includes(u)&&(c[u]=!0),c),{}),{appState:{...t,...d},elements:l,captureUpdate:L.IMMEDIATELY}},keyTest:e=>e.shiftKey&&e[M.CTRL_OR_CMD]&&e.key===M.G.toUpperCase(),predicate:(e,t)=>ul(t).length>0,PanelComponent:({elements:e,appState:t,updateData:a})=>(0,ns.jsx)(he,{type:"button",hidden:ul(t).length===0,icon:(0,ns.jsx)(M0,{theme:t.theme}),onClick:()=>a(null),title:`${w("labels.ungroup")} \u2014 ${B("CtrlOrCmd+Shift+G")}`,"aria-label":w("labels.ungroup"),visible:bt(Ue(e),t)})}),vD=(e,t,a,n,i,r,l)=>{e.beginPath(),e.moveTo(t+r,a),e.lineTo(t+n-r,a),e.quadraticCurveTo(t+n,a,t+n,a+r),e.lineTo(t+n,a+i-r),e.quadraticCurveTo(t+n,a+i,t+n-r,a+i),e.lineTo(t+r,a+i),e.quadraticCurveTo(t,a+i,t,a+i-r),e.lineTo(t,a+r),e.quadraticCurveTo(t,a,t+r,a),e.closePath(),e.fill(),l&&(e.strokeStyle=l),e.stroke()};function ZP(e){let t=0;if(e.length===0)return t;for(let a=0;a<e.length;a++){let n=e.charCodeAt(a);t=(t<<5)-t+n}return t}var kg=(e,t)=>`hsl(${Math.abs(ZP(t?.id||e))%37*10}, 100%, 83%)`,KP=e=>{let t=e?.trim()?.codePointAt(0);return(t?String.fromCodePoint(t):"?").toUpperCase()},qP=({context:e,renderConfig:t,appState:a,normalizedWidth:n,normalizedHeight:i})=>{for(let[r,l]of t.remotePointerViewportCoords){let{x:o,y:d}=l,h=a.collaborators.get(r);o-=a.offsetLeft,d-=a.offsetTop;let s=11,c=14,u=o<0||o>n-s||d<0||d>i-c;o=Math.max(o,0),o=Math.min(o,n-s),d=Math.max(d,0),d=Math.min(d,i-c);let m=kg(r,h);e.save(),e.strokeStyle=m,e.fillStyle=m;let p=t.remotePointerUserStates.get(r),f=u||p==="idle"||p==="away";f&&(e.globalAlpha=.3),t.remotePointerButton.get(r)==="down"&&(e.beginPath(),e.arc(o,d,15,0,2*Math.PI,!1),e.lineWidth=3,e.strokeStyle="#ffffff88",e.stroke(),e.closePath(),e.beginPath(),e.arc(o,d,15,0,2*Math.PI,!1),e.lineWidth=1,e.strokeStyle=m,e.stroke(),e.closePath());let y=a.theme===xe.DARK?"#2f6330":QS,g=h?.isSpeaking;g&&(e.fillStyle=y,e.strokeStyle=y,e.lineWidth=10,e.lineJoin="round",e.beginPath(),e.moveTo(o,d),e.lineTo(o+0,d+14),e.lineTo(o+4,d+9),e.lineTo(o+11,d+8),e.closePath(),e.stroke(),e.fill()),e.fillStyle=eu,e.strokeStyle=eu,e.lineWidth=6,e.lineJoin="round",e.beginPath(),e.moveTo(o,d),e.lineTo(o+0,d+14),e.lineTo(o+4,d+9),e.lineTo(o+11,d+8),e.closePath(),e.stroke(),e.fill(),e.fillStyle=m,e.strokeStyle=m,e.lineWidth=2,e.lineJoin="round",e.beginPath(),f?(e.moveTo(o-1,d-1),e.lineTo(o-1,d+15),e.lineTo(o+5,d+10),e.lineTo(o+12,d+9),e.closePath(),e.fill()):(e.moveTo(o,d),e.lineTo(o+0,d+14),e.lineTo(o+4,d+9),e.lineTo(o+11,d+8),e.closePath(),e.fill(),e.stroke());let b=t.remotePointerUsernames.get(r)||"";if(!u&&b){e.font="600 12px sans-serif";let v=(g?o+0:o)+s/2,x=(g?d+0:d)+c+2,E=5,S=3,C=e.measureText(b),_=C.actualBoundingBoxDescent+C.actualBoundingBoxAscent,D=Math.max(_,12),k=v-1,I=x-1,j=C.width+2+E*2+2,z=D+2+S*2+2;if(e.roundRect?(e.beginPath(),e.roundRect(k,I,j,z,8),e.fillStyle=m,e.fill(),e.strokeStyle=eu,e.stroke(),g&&(e.beginPath(),e.roundRect(k-2,I-2,j+4,z+4,8),e.strokeStyle=y,e.stroke())):vD(e,k,I,j,z,8,eu),e.fillStyle=qS,e.fillText(b,v+E+1,x+S+C.actualBoundingBoxAscent+Math.floor((D-_)/2)+2),g){e.fillStyle=y;let G=8,O=8,P=5;e.fillRect(k+j+O,I+(z/2-G/2),2,G),e.fillRect(k+j+O+P,I+(z/2-G*2/2),2,G*2),e.fillRect(k+j+O+P*2,I+(z/2-G/2),2,G)}}e.restore(),e.closePath()}},xM=({color:e,onClick:t,name:a,src:n,className:i})=>{let r=KP(a),[l,o]=(0,yD.useState)(!1),d=!l&&n,h=d?void 0:{background:e};return(0,Tx.jsx)("div",{className:U("Avatar",i),style:h,onClick:t,children:d?(0,Tx.jsx)("img",{className:"Avatar-img",src:n,alt:r,referrerPolicy:"no-referrer",onError:()=>o(!0)}):r})},rJ=Y({name:"goToCollaborator",label:"Go to a collaborator",viewMode:!0,trackEvent:{category:"collab"},perform:(e,t,a)=>!a.socketId||t.userToFollow?.socketId===a.socketId||a.isCurrentUser?{appState:{...t,userToFollow:null},captureUpdate:L.EVENTUALLY}:{appState:{...t,userToFollow:{socketId:a.socketId,username:a.username||""},openMenu:t.openMenu==="canvas"?null:t.openMenu},captureUpdate:L.EVENTUALLY},PanelComponent:({updateData:e,data:t,appState:a})=>{let{socketId:n,collaborator:i,withName:r,isBeingFollowed:l}=t,o=kg(n,i),d=U({"is-followed":l,"is-current-user":i.isCurrentUser===!0,"is-speaking":i.isSpeaking,"is-in-call":i.isInCall,"is-muted":i.isMuted}),h=i.isInCall?i.isSpeaking?(0,ba.jsxs)("div",{className:"UserList__collaborator-status-icon-speaking-indicator",title:w("userList.hint.isSpeaking"),children:[(0,ba.jsx)("div",{}),(0,ba.jsx)("div",{}),(0,ba.jsx)("div",{})]}):i.isMuted?(0,ba.jsx)("div",{className:"UserList__collaborator-status-icon-microphone-muted",title:w("userList.hint.micMuted"),children:oC}):(0,ba.jsx)("div",{title:w("userList.hint.inCall"),children:lC}):null;return r?(0,ba.jsxs)("div",{className:`dropdown-menu-item dropdown-menu-item-base UserList__collaborator ${d}`,style:{"--avatar-size":"1.5rem"},onClick:()=>e(i),children:[(0,ba.jsx)(xM,{color:o,onClick:()=>{},name:i.username||"",src:i.avatarUrl,className:d}),(0,ba.jsx)("div",{className:"UserList__collaborator-name",children:i.username}),(0,ba.jsxs)("div",{className:"UserList__collaborator-status-icons","aria-hidden":!0,children:[l&&(0,ba.jsx)("div",{className:"UserList__collaborator-status-icon-is-followed",title:w("userList.hint.followStatus"),children:Tp}),h]})]}):(0,ba.jsxs)("div",{className:`UserList__collaborator UserList__collaborator--avatar-only ${d}`,children:[(0,ba.jsx)(xM,{color:o,onClick:()=>{e(i)},name:i.username||"",src:i.avatarUrl,className:d}),h&&(0,ba.jsx)("div",{className:"UserList__collaborator-status-icon",children:h})]})}}),QP=Y({name:"addToLibrary",trackEvent:{category:"element"},perform:(e,t,a,n)=>{let i=n.scene.getSelectedElements({selectedElementIds:t.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0});for(let r of Xv)if(i.some(l=>l.type===r))return{captureUpdate:L.EVENTUALLY,appState:{...t,errorMessage:w(`errors.libraryElementTypeError.${r}`)}};return n.library.getLatestLibrary().then(r=>n.library.setLibrary([{id:ku(),status:"unpublished",elements:i.map(Mu),created:Date.now()},...r])).then(()=>({captureUpdate:L.EVENTUALLY,appState:{...t,toast:{message:w("toast.addedToLibrary")}}})).catch(r=>({captureUpdate:L.EVENTUALLY,appState:{...t,errorMessage:r.message}}))},label:"labels.addToLibrary"}),WP=(e,t,a,n)=>{let i=a1(e,t),r=Ui(e);return i.flatMap(l=>{let o=JP(l,r,a);return l.map(d=>{let h=$(d,{x:d.x+o.x,y:d.y+o.y});return dl(d,n.getNonDeletedElementsMap(),{simultaneouslyUpdated:l}),h})})},JP=(e,t,{axis:a,position:n})=>{let i=Ui(e),[r,l]=a==="x"?["minX","maxX"]:["minY","maxY"],o={x:0,y:0};return n==="start"?{...o,[a]:t[r]-i[r]}:n==="end"?{...o,[a]:t[l]-i[l]}:{...o,[a]:(t[r]+t[l])/2-(i[r]+i[l])/2}},pn=(e,t)=>{let a=t.scene.getSelectedElements(e);return a.length>1&&!a.some(n=>Ce(n))},Zc=(e,t,a,n)=>{let i=a.scene.getSelectedElements(t),r=Ie(e),l=WP(i,r,n,a.scene),o=Ie(l);return Po(e.map(d=>o.get(d.id)||d),t,a)},lJ=Y({name:"alignTop",label:"labels.alignTop",icon:x0,trackEvent:{category:"element"},predicate:(e,t,a,n)=>pn(t,n),perform:(e,t,a,n)=>({appState:t,elements:Zc(e,t,n,{position:"start",axis:"y"}),captureUpdate:L.IMMEDIATELY}),keyTest:e=>e[M.CTRL_OR_CMD]&&e.shiftKey&&e.key===M.ARROW_UP,PanelComponent:({elements:e,appState:t,updateData:a,app:n})=>(0,bs.jsx)(he,{hidden:!pn(t,n),type:"button",icon:x0,onClick:()=>a(null),title:`${w("labels.alignTop")} \u2014 ${B("CtrlOrCmd+Shift+Up")}`,"aria-label":w("labels.alignTop"),visible:bt(Ue(e),t)})}),oJ=Y({name:"alignBottom",label:"labels.alignBottom",icon:w0,trackEvent:{category:"element"},predicate:(e,t,a,n)=>pn(t,n),perform:(e,t,a,n)=>({appState:t,elements:Zc(e,t,n,{position:"end",axis:"y"}),captureUpdate:L.IMMEDIATELY}),keyTest:e=>e[M.CTRL_OR_CMD]&&e.shiftKey&&e.key===M.ARROW_DOWN,PanelComponent:({elements:e,appState:t,updateData:a,app:n})=>(0,bs.jsx)(he,{hidden:!pn(t,n),type:"button",icon:w0,onClick:()=>a(null),title:`${w("labels.alignBottom")} \u2014 ${B("CtrlOrCmd+Shift+Down")}`,"aria-label":w("labels.alignBottom"),visible:bt(Ue(e),t)})}),sJ=Y({name:"alignLeft",label:"labels.alignLeft",icon:E0,trackEvent:{category:"element"},predicate:(e,t,a,n)=>pn(t,n),perform:(e,t,a,n)=>({appState:t,elements:Zc(e,t,n,{position:"start",axis:"x"}),captureUpdate:L.IMMEDIATELY}),keyTest:e=>e[M.CTRL_OR_CMD]&&e.shiftKey&&e.key===M.ARROW_LEFT,PanelComponent:({elements:e,appState:t,updateData:a,app:n})=>(0,bs.jsx)(he,{hidden:!pn(t,n),type:"button",icon:E0,onClick:()=>a(null),title:`${w("labels.alignLeft")} \u2014 ${B("CtrlOrCmd+Shift+Left")}`,"aria-label":w("labels.alignLeft"),visible:bt(Ue(e),t)})}),cJ=Y({name:"alignRight",label:"labels.alignRight",icon:S0,trackEvent:{category:"element"},predicate:(e,t,a,n)=>pn(t,n),perform:(e,t,a,n)=>({appState:t,elements:Zc(e,t,n,{position:"end",axis:"x"}),captureUpdate:L.IMMEDIATELY}),keyTest:e=>e[M.CTRL_OR_CMD]&&e.shiftKey&&e.key===M.ARROW_RIGHT,PanelComponent:({elements:e,appState:t,updateData:a,app:n})=>(0,bs.jsx)(he,{hidden:!pn(t,n),type:"button",icon:S0,onClick:()=>a(null),title:`${w("labels.alignRight")} \u2014 ${B("CtrlOrCmd+Shift+Right")}`,"aria-label":w("labels.alignRight"),visible:bt(Ue(e),t)})}),dJ=Y({name:"alignVerticallyCentered",label:"labels.centerVertically",icon:C0,trackEvent:{category:"element"},predicate:(e,t,a,n)=>pn(t,n),perform:(e,t,a,n)=>({appState:t,elements:Zc(e,t,n,{position:"center",axis:"y"}),captureUpdate:L.IMMEDIATELY}),PanelComponent:({elements:e,appState:t,updateData:a,app:n})=>(0,bs.jsx)(he,{hidden:!pn(t,n),type:"button",icon:C0,onClick:()=>a(null),title:w("labels.centerVertically"),"aria-label":w("labels.centerVertically"),visible:bt(Ue(e),t)})}),uJ=Y({name:"alignHorizontallyCentered",label:"labels.centerHorizontally",icon:T0,trackEvent:{category:"element"},predicate:(e,t,a,n)=>pn(t,n),perform:(e,t,a,n)=>({appState:t,elements:Zc(e,t,n,{position:"center",axis:"x"}),captureUpdate:L.IMMEDIATELY}),PanelComponent:({elements:e,appState:t,updateData:a,app:n})=>(0,bs.jsx)(he,{hidden:!pn(t,n),type:"button",icon:T0,onClick:()=>a(null),title:w("labels.centerHorizontally"),"aria-label":w("labels.centerHorizontally"),visible:bt(Ue(e),t)})}),ej=(e,t,a)=>{let[n,i,r,l]=a.axis==="x"?["minX","midX","maxX","width"]:["minY","midY","maxY","height"],o=Ui(e),d=a1(e,t).map(u=>[u,Ui(u)]).sort((u,m)=>u[1][i]-m[1][i]),h=0;for(let u of d)h+=u[1][l];let s=(o[l]-h)/(d.length-1);if(s<0){let u=d.findIndex(y=>y[1][n]===o[n]),m=d.findIndex(y=>y[1][r]===o[r]),p=(d[m][1][i]-d[u][1][i])/(d.length-1),f=d[u][1][i];return d.flatMap(([y,g],b)=>{let v={x:0,y:0};return b!==u&&b!==m&&(f+=p,v[a.axis]=f-g[i]),y.map(x=>se(x,{x:x.x+v.x,y:x.y+v.y}))})}let c=o[n];return d.flatMap(([u,m])=>{let p={x:0,y:0};return p[a.axis]=c-m[n],c+=s,c+=m[l],u.map(f=>se(f,{x:f.x+p.x,y:f.y+p.y}))})},xD=(e,t)=>{let a=t.scene.getSelectedElements(e);return a.length>1&&!a.some(n=>Ce(n))},wD=(e,t,a,n)=>{let i=a.scene.getSelectedElements(t),r=ej(i,a.scene.getNonDeletedElementsMap(),n),l=Ie(r);return Po(e.map(o=>l.get(o.id)||o),t,a)},mJ=Y({name:"distributeHorizontally",label:"labels.distributeHorizontally",trackEvent:{category:"element"},perform:(e,t,a,n)=>({appState:t,elements:wD(e,t,n,{space:"between",axis:"x"}),captureUpdate:L.IMMEDIATELY}),keyTest:e=>!e[M.CTRL_OR_CMD]&&e.altKey&&e.code===ye.H,PanelComponent:({elements:e,appState:t,updateData:a,app:n})=>(0,rw.jsx)(he,{hidden:!xD(t,n),type:"button",icon:d5,onClick:()=>a(null),title:`${w("labels.distributeHorizontally")} \u2014 ${B("Alt+H")}`,"aria-label":w("labels.distributeHorizontally"),visible:bt(Ue(e),t)})}),hJ=Y({name:"distributeVertically",label:"labels.distributeVertically",trackEvent:{category:"element"},perform:(e,t,a,n)=>({appState:t,elements:wD(e,t,n,{space:"between",axis:"y"}),captureUpdate:L.IMMEDIATELY}),keyTest:e=>!e[M.CTRL_OR_CMD]&&e.altKey&&e.code===ye.V,PanelComponent:({elements:e,appState:t,updateData:a,app:n})=>(0,rw.jsx)(he,{hidden:!xD(t,n),type:"button",icon:u5,onClick:()=>a(null),title:`${w("labels.distributeVertically")} \u2014 ${B("Alt+V")}`,"aria-label":w("labels.distributeVertically"),visible:bt(Ue(e),t)})}),tj=Y({name:"flipHorizontal",label:"labels.flipHorizontal",icon:uC,trackEvent:{category:"element"},perform:(e,t,a,n)=>({elements:Po(ED(e,n.scene.getNonDeletedElementsMap(),t,"horizontal",n),t,n),appState:t,captureUpdate:L.IMMEDIATELY}),keyTest:e=>e.shiftKey&&e.code===ye.H}),aj=Y({name:"flipVertical",label:"labels.flipVertical",icon:dC,trackEvent:{category:"element"},perform:(e,t,a,n)=>({elements:Po(ED(e,n.scene.getNonDeletedElementsMap(),t,"vertical",n),t,n),appState:t,captureUpdate:L.IMMEDIATELY}),keyTest:e=>e.shiftKey&&e.code===ye.V&&!e[M.CTRL_OR_CMD]}),ED=(e,t,a,n,i)=>{let r=ce(Ue(e),a,{includeBoundTextElement:!0,includeElementsInFrames:!0}),l=nj(r,t,a,n,i),o=Ie(l);return e.map(d=>o.get(d.id)||d)},nj=(e,t,a,n,i)=>{if(e.every(m=>Gt(m)&&(m.startBinding||m.endBinding)))return e.map(m=>{let p=m;return se(p,{startArrowhead:p.endArrowhead,endArrowhead:p.startArrowhead})});let{midX:r,midY:l}=Ui(e);v_(e,t,"nw",i.scene,new Map(Array.from(t.values()).map(m=>[m.id,Mu(m)])),{flipByX:n==="horizontal",flipByY:n==="vertical",shouldResizeFromCenter:!0,shouldMaintainAspectRatio:!0}),Eu(e.filter(Ke),t,i.scene.getNonDeletedElements(),i.scene,ac(a),[],a.zoom);let{elbowArrows:o,otherElements:d}=e.reduce((m,p)=>me(p)?{...m,elbowArrows:m.elbowArrows.concat(p)}:{...m,otherElements:m.otherElements.concat(p)},{elbowArrows:[],otherElements:[]}),{midX:h,midY:s}=Ui(e),[c,u]=[r-h,l-s];return d.forEach(m=>$(m,{x:m.x+c,y:m.y+u})),o.forEach(m=>$(m,{x:m.x+c,y:m.y+u})),e},qf=Y({name:"copy",label:"labels.copy",icon:bp,trackEvent:{category:"element"},perform:async(e,t,a,n)=>{let i=n.scene.getSelectedElements({selectedElementIds:t.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0});try{await QT(i,n.files,a)}catch(r){return{captureUpdate:L.EVENTUALLY,appState:{...t,errorMessage:r.message}}}return{captureUpdate:L.EVENTUALLY}},keyTest:void 0}),wM=Y({name:"paste",label:"labels.paste",trackEvent:{category:"element"},perform:async(e,t,a,n)=>{let i;try{i=await WT()}catch(r){return r.name==="AbortError"||r.name==="NotAllowedError"?!1:(console.error(`actionPaste ${r.name}: ${r.message}`),Gs?{captureUpdate:L.EVENTUALLY,appState:{...t,errorMessage:w("hints.firefox_clipboard_write")}}:{captureUpdate:L.EVENTUALLY,appState:{...t,errorMessage:w("errors.asyncPasteFailedOnRead")}})}try{n.pasteFromClipboard(qT({types:i}))}catch(r){return console.error(r),{captureUpdate:L.EVENTUALLY,appState:{...t,errorMessage:w("errors.asyncPasteFailedOnParse")}}}return{captureUpdate:L.EVENTUALLY}},keyTest:void 0}),EM=Y({name:"cut",label:"labels.cut",icon:K5,trackEvent:{category:"element"},perform:(e,t,a,n)=>(qf.perform(e,t,a,n),TA.perform(e,t,null,n)),keyTest:e=>e[M.CTRL_OR_CMD]&&e.key===M.X}),SM=Y({name:"copyAsSvg",label:"labels.copyAsSvg",icon:mC,trackEvent:{category:"element"},perform:async(e,t,a,n)=>{if(!n.canvas)return{captureUpdate:L.EVENTUALLY};let{exportedElements:i,exportingFrame:r}=Tg(e,t,!0);try{await _g("clipboard-svg",i,t,n.files,{...t,exportingFrame:r,name:n.getName()});let l=n.scene.getSelectedElements({selectedElementIds:t.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0});return{appState:{toast:{message:w("toast.copyToClipboardAsSvg",{exportSelection:l.length?w("toast.selection"):w("toast.canvas"),exportColorScheme:t.exportWithDarkMode?w("buttons.darkMode"):w("buttons.lightMode")})}},captureUpdate:L.EVENTUALLY}}catch(l){return console.error(l),{appState:{errorMessage:l.message},captureUpdate:L.EVENTUALLY}}},predicate:e=>T1&&e.length>0,keywords:["svg","clipboard","copy"]}),CM=Y({name:"copyAsPng",label:"labels.copyAsPng",icon:hC,trackEvent:{category:"element"},perform:async(e,t,a,n)=>{if(!n.canvas)return{captureUpdate:L.EVENTUALLY};let i=n.scene.getSelectedElements({selectedElementIds:t.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0}),{exportedElements:r,exportingFrame:l}=Tg(e,t,!0);try{return await _g("clipboard",r,t,n.files,{...t,exportingFrame:l,name:n.getName()}),{appState:{...t,toast:{message:w("toast.copyToClipboardAsPng",{exportSelection:i.length?w("toast.selection"):w("toast.canvas"),exportColorScheme:t.exportWithDarkMode?w("buttons.darkMode"):w("buttons.lightMode")})}},captureUpdate:L.EVENTUALLY}}catch(o){return console.error(o),{appState:{...t,errorMessage:o.message},captureUpdate:L.EVENTUALLY}}},predicate:e=>Gp&&e.length>0,keyTest:e=>e.code===ye.C&&e.altKey&&e.shiftKey,keywords:["png","clipboard","copy"]}),TM=Y({name:"copyText",label:"labels.copyText",trackEvent:{category:"element"},perform:(e,t,a,n)=>{let i=n.scene.getSelectedElements({selectedElementIds:t.selectedElementIds,includeBoundTextElement:!0});try{Nu(ST(i))}catch{throw new Error(w("errors.copyToSystemClipboardFailed"))}return{captureUpdate:L.EVENTUALLY}},predicate:(e,t,a,n)=>T1&&n.scene.getSelectedElements({selectedElementIds:t.selectedElementIds,includeBoundTextElement:!0}).some(ae),keywords:["text","clipboard","copy"]}),_M=Y({name:"gridMode",icon:vC,keywords:["snap"],label:"labels.toggleGrid",viewMode:!0,trackEvent:{category:"canvas",predicate:e=>e.gridModeEnabled},perform(e,t){return{appState:{...t,gridModeEnabled:!this.checked(t),objectsSnapModeEnabled:!1},captureUpdate:L.EVENTUALLY}},checked:e=>e.gridModeEnabled,predicate:(e,t,a)=>a.gridModeEnabled===void 0,keyTest:e=>e[M.CTRL_OR_CMD]&&e.code===ye.QUOTE}),_x=Y({name:"zenMode",label:"buttons.zenMode",icon:fC,paletteName:"Toggle zen mode",viewMode:!0,trackEvent:{category:"canvas",predicate:e=>!e.zenModeEnabled},perform(e,t){return{appState:{...t,zenModeEnabled:!this.checked(t)},captureUpdate:L.EVENTUALLY}},checked:e=>e.zenModeEnabled,predicate:(e,t,a)=>typeof a.zenModeEnabled>"u",keyTest:e=>!e[M.CTRL_OR_CMD]&&e.altKey&&e.code===ye.Z}),ij=Y({name:"objectsSnapMode",label:"buttons.objectsSnapMode",icon:pC,viewMode:!1,trackEvent:{category:"canvas",predicate:e=>!e.objectsSnapModeEnabled},perform(e,t){return{appState:{...t,objectsSnapModeEnabled:!this.checked(t),gridModeEnabled:!1},captureUpdate:L.EVENTUALLY}},checked:e=>e.objectsSnapModeEnabled,predicate:(e,t,a)=>typeof a.objectsSnapModeEnabled>"u",keyTest:e=>!e[M.CTRL_OR_CMD]&&e.altKey&&e.code===ye.S}),kx=Y({name:"stats",label:"stats.fullTitle",icon:cC,paletteName:"Toggle stats",viewMode:!0,trackEvent:{category:"menu"},keywords:["edit","attributes","customize"],perform(e,t){return{appState:{...t,stats:{...t.stats,open:!this.checked(t)}},captureUpdate:L.EVENTUALLY}},checked:e=>e.stats.open,keyTest:e=>!e[M.CTRL_OR_CMD]&&e.altKey&&e.code===ye.SLASH}),rj=Y({name:"unbindText",label:"labels.unbindText",trackEvent:{category:"element"},predicate:(e,t,a,n)=>n.scene.getSelectedElements(t).some(i=>Bi(i)),perform:(e,t,a,n)=>{let i=n.scene.getSelectedElements(t),r=n.scene.getNonDeletedElementsMap();return i.forEach(l=>{let o=qe(l,r);if(o){let{width:d,height:h}=Sr(o.originalText,An(o),o.lineHeight),s=fT(l.id);pT(l.id);let{x:c,y:u}=l1(l,o,r);$(o,{containerId:null,width:d,height:h,text:o.originalText,x:c,y:u}),$(l,{boundElements:l.boundElements?.filter(m=>m.id!==o.id),height:s||l.height})}}),{elements:e,appState:t,captureUpdate:L.IMMEDIATELY}}}),lj=Y({name:"bindText",label:"labels.bindText",trackEvent:{category:"element"},predicate:(e,t,a,n)=>{let i=n.scene.getSelectedElements(t);if(i.length===2){let r=ae(i[0])||ae(i[1]),l;if(Io(i[0])?l=i[0]:Io(i[1])&&(l=i[1]),r&&l&&qe(l,n.scene.getNonDeletedElementsMap())===null)return!0}return!1},perform:(e,t,a,n)=>{let i=n.scene.getSelectedElements(t),r,l;ae(i[0])&&Io(i[1])?(r=i[0],l=i[1]):(r=i[1],l=i[0]),$(r,{containerId:l.id,verticalAlign:wr.MIDDLE,textAlign:ap.CENTER,autoResize:!0}),$(l,{boundElements:(l.boundElements||[]).concat({type:"text",id:r.id})});let o=l.height;return Da(r,l,n.scene.getNonDeletedElementsMap()),Op(l.id,o),{elements:oj(e,l,r),appState:{...t,selectedElementIds:{[l.id]:!0}},captureUpdate:L.IMMEDIATELY}}}),oj=(e,t,a)=>{let n=e.slice(),i=n.findIndex(l=>l.id===a.id);n.splice(i,1);let r=n.findIndex(l=>l.id===t.id);return n.splice(r+1,0,a),gl(n,Ie([t,a])),n},sj=(e,t,a)=>{let n=e.slice(),i=n.findIndex(l=>l.id===t.id);n.splice(i,1);let r=n.findIndex(l=>l.id===a.id);return n.splice(r,0,t),gl(n,Ie([t,a])),n},cj=Y({name:"wrapTextInContainer",label:"labels.createContainerFromText",trackEvent:{category:"element"},predicate:(e,t,a,n)=>{let i=n.scene.getSelectedElements(t),r=i.every(l=>ae(l));return i.length>0&&r},perform:(e,t,a,n)=>{let i=n.scene.getSelectedElements(t),r=e.slice(),l={};for(let o of i)if(ae(o)){let d=pl({type:"rectangle",backgroundColor:t.currentItemBackgroundColor,boundElements:[...o.boundElements||[],{id:o.id,type:"text"}],angle:o.angle,fillStyle:t.currentItemFillStyle,strokeColor:t.currentItemStrokeColor,roughness:t.currentItemRoughness,strokeWidth:t.currentItemStrokeWidth,strokeStyle:t.currentItemStrokeStyle,roundness:t.currentItemRoundness==="round"?{type:pp("rectangle")?ni.ADAPTIVE_RADIUS:ni.PROPORTIONAL_RADIUS}:null,opacity:100,locked:!1,x:o.x-Vv,y:o.y-Vv,width:_u(o.width,"rectangle"),height:_u(o.height,"rectangle"),groupIds:o.groupIds,frameId:o.frameId});if(o.boundElements?.length){let h=o.boundElements.filter(s=>s.type==="arrow").map(s=>s.id);r.filter(s=>h.includes(s.id)).forEach(s=>{let c=s.startBinding,u=s.endBinding;c?.elementId===o.id&&(c={...c,elementId:d.id}),u?.elementId===o.id&&(u={...u,elementId:d.id}),(c||u)&&$(s,{startBinding:c,endBinding:u},!1)})}$(o,{containerId:d.id,verticalAlign:wr.MIDDLE,boundElements:null,textAlign:ap.CENTER,autoResize:!0},!1),Da(o,d,n.scene.getNonDeletedElementsMap()),r=sj([...r,d],d,o),l[d.id]=!0}return{elements:r,appState:{...t,selectedElementIds:l},captureUpdate:L.IMMEDIATELY}}}),lw=380,dj=42,Mx=5,SD=85,uj=500,Ax=!1,jf=new Map,mj=({element:e,elementsMap:t,setAppState:a,onLinkOpen:n,setToast:i,updateEmbedValidationStatus:r})=>{let l=Fm(),o=Hm(),d=Bt(),h=e.link||"",[s,c]=(0,Gn.useState)(h),u=(0,Gn.useRef)(null),m=l.showHyperlinkPopup==="editor",p=(0,Gn.useCallback)(()=>{if(!u.current)return;let v=hl(u.current.value)||null;if(!e.link&&v&&Oe("hyperlink","create"),on(e)){if(l.activeEmbeddable?.element===e&&a({activeEmbeddable:null}),!v){$(e,{link:null}),r(e,!1);return}if(!Au(v,o.validateEmbeddable))v&&i({message:w("toast.unableToEmbed"),closable:!0}),e.link&&jf.set(e.id,e.link),$(e,{link:v}),r(e,!1);else{let{width:x,height:E}=e,S=rc(v);S?.error instanceof URIError&&i({message:w("toast.unrecognizedLinkFormat"),closable:!0});let C=S?S.intrinsicSize.w/S.intrinsicSize.h:1,_=jf.get(e.id)!==e.link;$(e,{..._?{width:S?.type==="video"?x>E?x:E*C:x,height:S?.type==="video"&&x>E?x/C:E}:{},link:v}),r(e,!0),jf.has(e.id)&&jf.delete(e.id)}}else $(e,{link:v})},[e,i,o.validateEmbeddable,l.activeEmbeddable,a,r]);(0,Gn.useLayoutEffect)(()=>()=>{p()},[p]),(0,Gn.useEffect)(()=>{m&&u?.current&&!(d.viewport.isMobile||d.isTouchScreen)&&u.current.select()},[m,d.viewport.isMobile,d.isTouchScreen]),(0,Gn.useEffect)(()=>{let v=null,x=E=>{m||(v&&clearTimeout(v),fj(e,t,l,Z(E.clientX,E.clientY))&&(v=window.setTimeout(()=>{a({showHyperlinkPopup:!1})},uj)))};return window.addEventListener("pointermove",x,!1),()=>{window.removeEventListener("pointermove",x,!1),v&&clearTimeout(v)}},[l,e,m,a,t]);let f=(0,Gn.useCallback)(()=>{Oe("hyperlink","delete"),$(e,{link:null}),a({showHyperlinkPopup:!1})},[a,e]),y=()=>{Oe("hyperlink","edit","popup-ui"),a({showHyperlinkPopup:"editor"})},{x:g,y:b}=CD(e,l,t);return l.contextMenu||l.selectedElementsAreBeingDragged||l.resizingElement||l.isRotating||l.openMenu||l.viewModeEnabled?null:(0,Zi.jsxs)("div",{className:"excalidraw-hyperlinkContainer",style:{top:`${b}px`,left:`${g}px`,width:lw,padding:Mx},children:[m?(0,Zi.jsx)("input",{className:U("excalidraw-hyperlinkContainer-input"),placeholder:w("labels.link.hint"),ref:u,value:s,onChange:v=>c(v.target.value),autoFocus:!0,onKeyDown:v=>{v.stopPropagation(),v[M.CTRL_OR_CMD]&&v.key===M.K&&v.preventDefault(),(v.key===M.ENTER||v.key===M.ESCAPE)&&(p(),a({showHyperlinkPopup:"info"}))}}):e.link?(0,Zi.jsx)("a",{href:hl(e.link||""),className:"excalidraw-hyperlinkContainer-link",target:s1(e.link)?"_self":"_blank",onClick:v=>{if(e.link&&n){let x=i0("excalidraw-link",v.nativeEvent);n({...e,link:hl(e.link)},x),x.defaultPrevented&&v.preventDefault()}},rel:"noopener noreferrer",children:e.link}):(0,Zi.jsx)("div",{className:"excalidraw-hyperlinkContainer-link",children:w("labels.link.empty")}),(0,Zi.jsxs)("div",{className:"excalidraw-hyperlinkContainer__buttons",children:[!m&&(0,Zi.jsx)(he,{type:"button",title:w("buttons.edit"),"aria-label":w("buttons.edit"),label:w("buttons.edit"),onClick:y,className:"excalidraw-hyperlinkContainer--edit",icon:o0}),(0,Zi.jsx)(he,{type:"button",title:w("labels.linkToElement"),"aria-label":w("labels.linkToElement"),label:w("labels.linkToElement"),onClick:()=>{a({openDialog:{name:"elementLinkSelector",sourceElementId:e.id}})},icon:F0}),h&&!on(e)&&(0,Zi.jsx)(he,{type:"button",title:w("buttons.remove"),"aria-label":w("buttons.remove"),label:w("buttons.remove"),onClick:f,className:"excalidraw-hyperlinkContainer--remove",icon:sl})]})]})},CD=(e,t,a)=>{let[n,i]=In(e,a),{x:r,y:l}=Oi({sceneX:n+e.width/2,sceneY:i},t),o=r-t.offsetLeft-lw/2,d=l-t.offsetTop-SD;return{x:o,y:d}},kM=(e,t)=>{let a=ce(e,t);return on(a[0])?"labels.link.editEmbed":a[0]?.link?"labels.link.edit":"labels.link.create"},gm=null,hj=(e,t,a)=>{gm&&clearTimeout(gm),gm=window.setTimeout(()=>pj(e,t,a),i3)},pj=(e,t,a)=>{if(!e.link)return;let n=pm();n.classList.add("excalidraw-tooltip--visible"),n.style.maxWidth="20rem",n.textContent=Iu(e.link)?w("labels.link.goToElement"):e.link;let[i,r,l,o]=In(e,a),[d,h,s,c]=PT([i,r,l,o],e.angle,t),u=Oi({sceneX:d,sceneY:h},t);mD(n,{left:u.x,top:u.y,width:s,height:c},"top"),Oe("hyperlink","tooltip","link-icon"),Ax=!0},MM=()=>{gm&&clearTimeout(gm),Ax&&(Ax=!1,pm().classList.remove("excalidraw-tooltip--visible"))},fj=(e,t,a,[n,i])=>{let{x:r,y:l}=rt({clientX:n,clientY:i},a),o=15/a.zoom.value;if(MC(r,l,e,t))return!1;let[d,h,s]=In(e,t);if(r>=d&&r<=s&&l>=h-SD&&l<=h)return!1;let{x:c,y:u}=CD(e,a,t);return!(n>=c-o&&n<=c+lw+Mx*2+o&&i>=u-o&&i<=u+o+Mx*2+dj)},_D=Y({name:"hyperlink",label:(e,t)=>kM(e,t),icon:wp,perform:(e,t)=>t.showHyperlinkPopup==="editor"?!1:{elements:e,appState:{...t,showHyperlinkPopup:"editor",openMenu:null},captureUpdate:L.IMMEDIATELY},trackEvent:{category:"hyperlink",action:"click"},keyTest:e=>e[M.CTRL_OR_CMD]&&e.key===M.K,predicate:(e,t)=>ce(e,t).length===1,PanelComponent:({elements:e,appState:t,updateData:a})=>{let n=ce(e,t);return(0,TD.jsx)(he,{type:"button",icon:wp,"aria-label":w(kM(e,t)),title:`${on(e[0])?w("labels.link.labelEmbed"):w("labels.link.label")} - ${B("CtrlOrCmd+K")}`,onClick:()=>a(null),selected:n.length===1&&!!n[0].link})}}),nx=e=>e.every(t=>!t.locked),gj=Y({name:"toggleElementLock",label:(e,t,a)=>{let n=a.scene.getSelectedElements({selectedElementIds:t.selectedElementIds,includeBoundTextElement:!1});return n.length===1&&!Ce(n[0])?n[0].locked?"labels.elementLock.unlock":"labels.elementLock.lock":nx(n)?"labels.elementLock.lockAll":"labels.elementLock.unlockAll"},icon:(e,t)=>{let a=ce(t,e);return nx(a)?gp:fu},trackEvent:{category:"element"},predicate:(e,t,a,n)=>{let i=n.scene.getSelectedElements(t);return i.length>0&&!i.some(r=>r.locked&&r.frameId)},perform:(e,t,a,n)=>{let i=n.scene.getSelectedElements({selectedElementIds:t.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0});if(!i.length)return!1;let r=nx(i),l=Ie(i);return{elements:e.map(o=>l.has(o.id)?se(o,{locked:r}):o),appState:{...t,selectedLinearElement:r?null:t.selectedLinearElement},captureUpdate:L.IMMEDIATELY}},keyTest:(e,t,a,n)=>e.key.toLocaleLowerCase()===M.L&&e[M.CTRL_OR_CMD]&&e.shiftKey&&n.scene.getSelectedElements({selectedElementIds:t.selectedElementIds,includeBoundTextElement:!1}).length>0}),bj=Y({name:"unlockAllElements",paletteName:"Unlock all elements",trackEvent:{category:"canvas"},viewMode:!1,icon:fu,predicate:(e,t)=>ce(e,t).length===0&&e.some(a=>a.locked),perform:(e,t)=>{let a=e.filter(n=>n.locked);return{elements:e.map(n=>n.locked?se(n,{locked:!1}):n),appState:{...t,selectedElementIds:Object.fromEntries(a.map(n=>[n.id,!0]))},captureUpdate:L.IMMEDIATELY}},label:"labels.elementLock.unlockAll"}),vj=()=>{let[e,t]=(0,Ag.useState)(null),a=(0,Ag.useCallback)(n=>t(n),[]);return[e,a]},yj=e=>{let{closeOnClickOutside:t=!0}=e,a=YA({className:"excalidraw-modal-container"}),n=(0,MD.useRef)(document.body.classList.contains("excalidraw-animations-disabled"));if(!a)return null;let i=r=>{r.key===M.ESCAPE&&(r.nativeEvent.stopImmediatePropagation(),r.stopPropagation(),e.onCloseRequest())};return(0,kD.createPortal)((0,Sm.jsxs)("div",{className:U("Modal",e.className,{"animations-disabled":n.current}),role:"dialog","aria-modal":"true",onKeyDown:i,"aria-labelledby":e.labelledBy,"data-prevent-outside-click":!0,children:[(0,Sm.jsx)("div",{className:"Modal__background",onClick:t?e.onCloseRequest:void 0}),(0,Sm.jsx)("div",{className:"Modal__content",style:{"--max-width":`${e.maxWidth}px`},tabIndex:0,children:e.children})]}),a)},DD=wt(new Map),AM=async e=>await M1({elements:e,appState:{exportBackground:!1,viewBackgroundColor:Ys.white},files:null,renderEmbeddables:!1,skipInliningFonts:!0}),xj=(e,t,a)=>{let[n,i]=(0,Dg.useState)();return(0,Dg.useEffect)(()=>{if(t)if(e){let r=a.get(e);r?i(r):(async()=>{let l=await AM(t);l.querySelector(".style-fonts")?.remove(),l&&(a.set(e,l),i(l))})()}else(async()=>{let r=await AM(t);i(r)})()},[e,t,a,i]),n},ID=()=>{let[e]=ct(DD);return{clearLibraryCache:()=>e.clear(),deleteItemsFromLibraryCache:t=>{t.forEach(a=>e.delete(a))},svgCache:e}},wj=class{constructor(){A(this,"jobs",[]),A(this,"running",!1)}tick(){if(this.running)return;let e=this.jobs.shift();e?(this.running=!0,e.promise.resolve(D3(e.jobFactory,...e.args).finally(()=>{this.running=!1,this.tick()}))):this.running=!1}push(e,...t){let a=x3();return this.jobs.push({jobFactory:e,promise:a,args:t}),this.tick(),a}};var Ej=new ji,Cm=wt({status:"loaded",isInitialized:!1,libraryItems:[]}),rm=e=>zi(e),Sj=(e,t)=>!e.find(a=>a.elements.length!==t.elements.length?!1:a.elements.every((n,i)=>n.id===t.elements[i].id&&n.versionNonce===t.elements[i].versionNonce)),Cj=(e,t)=>{let a=[];for(let n of t)Sj(e,n)&&a.push(n);return[...a,...e]},Tj=(e,t)=>{let a=Ie(t),n={deletedItems:new Map,addedItems:new Map};for(let r of e)a.has(r.id)||n.deletedItems.set(r.id,r);let i=Ie(e);for(let r of t)i.has(r.id)||n.addedItems.set(r.id,r);return n},_j=class{constructor(e){A(this,"currLibraryItems",[]),A(this,"prevLibraryItems",rm(this.currLibraryItems)),A(this,"app"),A(this,"updateQueue",[]),A(this,"getLastUpdateTask",()=>this.updateQueue[this.updateQueue.length-1]),A(this,"notifyListeners",()=>{if(this.updateQueue.length>0)gi.set(Cm,t=>({status:"loading",libraryItems:this.currLibraryItems,isInitialized:t.isInitialized}));else{gi.set(Cm,{status:"loaded",libraryItems:this.currLibraryItems,isInitialized:!0});try{let t=this.prevLibraryItems;this.prevLibraryItems=rm(this.currLibraryItems);let a=rm(this.currLibraryItems);this.app.props.onLibraryChange?.(a),Ej.trigger(Tj(t,a),a)}catch(t){console.error(t)}}}),A(this,"destroy",()=>{this.updateQueue=[],this.currLibraryItems=[],gi.set(DD,new Map)}),A(this,"resetLibrary",()=>this.setLibrary([])),A(this,"getLatestLibrary",()=>new Promise(async t=>{try{let a=await(this.getLastUpdateTask()||this.currLibraryItems);this.updateQueue.length>0?t(this.getLatestLibrary()):t(rm(a))}catch{return t(this.currLibraryItems)}})),A(this,"updateLibrary",async({libraryItems:t,prompt:a=!1,merge:n=!1,openLibraryMenu:i=!1,defaultStatus:r="unpublished"})=>(i&&this.app.setState({openSidebar:{name:ii.name,tab:ip}}),this.setLibrary(()=>new Promise(async(l,o)=>{try{let d=await(typeof t=="function"&&!(t instanceof Blob)?t(this.currLibraryItems):t),h;d instanceof Blob?h=await __(d,r):h=C1(d,r),!a||window.confirm(w("alerts.confirmAddLibrary",{numShapes:h.length}))?(a&&this.app.focusContainer(),l(n?Cj(this.currLibraryItems,h):h)):o(new kp)}catch(d){o(d)}})))),A(this,"setLibrary",t=>{let a=new Promise(async(n,i)=>{try{await this.getLastUpdateTask(),typeof t=="function"&&(t=t(this.currLibraryItems)),this.currLibraryItems=rm(await t),n(this.currLibraryItems)}catch(r){i(r)}}).catch(n=>{if(n.name==="AbortError")return console.warn("Library update aborted by user"),this.currLibraryItems;throw n}).finally(()=>{this.updateQueue=this.updateQueue.filter(n=>n!==a),this.notifyListeners()});return this.updateQueue.push(a),this.notifyListeners(),a}),this.app=e}},kj=_j,ND=e=>{let t=Math.ceil(Math.sqrt(e.length)),a=[],n=u=>e.slice(u*t,u*t+t).reduce((m,p)=>{let{height:f}=Ui(p.elements);return Math.max(m,f)},0),i=u=>{let m=0,p=0,f=0;for(let y of e){if(m%t===0&&(p=0),p===u){let{width:g}=Ui(y.elements);f=Math.max(f,g)}m++,p++}return f},r=0,l=0,o=0,d=0,h=0,s=0,c=0;for(let u of e){h&&h%t===0&&(l+=o+50,r=0,s=0,c++),s===0&&(o=n(c)),d=i(s);let{minX:m,minY:p,width:f,height:y}=Ui(u.elements),g=(d-f)/2,b=(o-y)/2;a.push(...u.elements.map(v=>({...v,x:v.x+r+g-m,y:v.y+l+b-p}))),r+=d+50,h++,s++}return a};var Hf=class Dx{constructor(t){A(this,"adapter"),this.adapter=t}static async getLibraryItems(t,a,n=!0){let i=()=>new Promise(async(r,l)=>{try{let o=await t.load({source:a});r(C1(o?.libraryItems||[],"published"))}catch(o){l(o)}});return n?Dx.queue.push(i):i()}getLibraryItems(t){return Dx.getLibraryItems(this.adapter,t,!1)}};A(Hf,"queue",new wj),A(Hf,"run",async(e,t)=>{let a=new Hf(e);return Hf.queue.push(()=>t(a))});var Mj=(0,ow.forwardRef)(({children:e,gap:t,align:a,justifyContent:n,className:i,style:r},l)=>(0,sw.jsx)("div",{className:U("Stack Stack_horizontal",i),style:{"--gap":t,alignItems:a,justifyContent:n,...r},ref:l,children:e})),Aj=(0,ow.forwardRef)(({children:e,gap:t,align:a,justifyContent:n,className:i,style:r},l)=>(0,sw.jsx)("div",{className:U("Stack Stack_vertical",i),style:{"--gap":t,justifyItems:a,justifyContent:n,...r},ref:l,children:e})),Hn={Row:Mj,Col:Aj},Dj=({theme:e,id:t,libraryReturnUrl:a})=>{let n=a||window.location.origin+window.location.pathname;return(0,LD.jsx)("a",{className:"library-menu-browse-button",href:`${Ft.VITE_APP_LIBRARY_URL}?target=${window.name||"_blank"}&referrer=${n}&useHash=true&token=${t}&theme=${e}&version=${$v.excalidrawLibrary}`,target:"_excalidraw_libraries",children:w("labels.libraries")})},Ij=Dj,RD=({libraryReturnUrl:e,theme:t,id:a,style:n,children:i,className:r})=>(0,Ig.jsxs)("div",{className:U("library-menu-control-buttons",r),style:n,children:[(0,Ig.jsx)(Ij,{id:a,libraryReturnUrl:e,theme:t}),i]}),Nj=/({{[\w-]+}})|(<[\w-]+>)|(<\/[\w-]+>)/g,Lj=/{{([\w-]+)}}/,Rj=/<([\w-]+)>/,Oj=/<\/([\w-]+)>/,zj=(e,t)=>{let a=[{name:"",children:[]}];return e.split(Nj).filter(Boolean).forEach(n=>{let i=n.match(Rj),r=n.match(Oj),l=n.match(Lj);if(i!==null){let o=i[1];t.hasOwnProperty(o)?a.push({name:o,children:[]}):console.warn(`Trans: missed to pass in prop ${o} for interpolating ${e}`)}else if(r!==null)if(r[1]===a[a.length-1].name){let o=a.pop(),d=Tm.default.createElement(Tm.default.Fragment,{},...o.children),h=t[o.name];typeof h=="function"&&a[a.length-1].children.push(h(d))}else console.warn(`Trans: unexpected end tag ${n} for interpolating ${e}`);else if(l!==null){let o=l[1];t.hasOwnProperty(o)?a[a.length-1].children.push(t[o]):console.warn(`Trans: key ${o} not in props for interpolating ${e}`)}else a[a.length-1].children.push(n)}),a.length!==1&&console.warn(`Trans: stack not empty for interpolating ${e}`),a[0].children},Bj=({i18nKey:e,children:t,...a})=>{let{t:n}=Sa();return Tm.default.createElement(Tm.default.Fragment,{},...zj(n(e),a))},Qi=Bj,Uj=({label:e,onClick:t,className:a,children:n,actionType:i,type:r="button",isLoading:l,...o})=>{let d=i?`Dialog__action-button--${i}`:"";return(0,Jo.jsxs)("button",{className:U("Dialog__action-button",d,a),type:r,"aria-label":e,onClick:t,...o,children:[n&&(0,Jo.jsx)("div",{style:l?{visibility:"hidden"}:{},children:n}),(0,Jo.jsx)("div",{style:l?{visibility:"hidden"}:{},children:e}),l&&(0,Jo.jsx)("div",{style:{position:"absolute",inset:0},children:(0,Jo.jsx)(zr,{})})]})},Yc=Uj,Pj=e=>{let{onConfirm:t,onCancel:a,children:n,confirmText:i=w("buttons.confirm"),cancelText:r=w("buttons.cancel"),className:l="",...o}=e,d=Mt(),h=dg(cw),{container:s}=ar();return(0,Gc.jsxs)(Ci,{onCloseRequest:a,size:"small",...o,className:`confirm-dialog ${l}`,children:[n,(0,Gc.jsxs)("div",{className:"confirm-dialog-buttons",children:[(0,Gc.jsx)(Yc,{label:r,onClick:()=>{d({openMenu:null}),h(!1),(0,Ix.flushSync)(()=>{a()}),s?.focus()}}),(0,Gc.jsx)(Yc,{label:i,onClick:()=>{d({openMenu:null}),h(!1),(0,Ix.flushSync)(()=>{t()}),s?.focus()},actionType:"danger"})]})]})},OD=Pj,is=class{static has(e){try{return!!window.localStorage.getItem(e)}catch(t){return console.warn(`localStorage.getItem error: ${t.message}`),!1}}static get(e){try{let t=window.localStorage.getItem(e);return t?JSON.parse(t):null}catch(t){return console.warn(`localStorage.getItem error: ${t.message}`),null}}};A(is,"set",(e,t)=>{try{return window.localStorage.setItem(e,JSON.stringify(t)),!0}catch(a){return console.warn(`localStorage.setItem error: ${a.message}`),!1}}),A(is,"delete",e=>{try{window.localStorage.removeItem(e)}catch(t){console.warn(`localStorage.removeItem error: ${t.message}`)}});var jj=async e=>{let t=Math.round(8),a=Math.max(Math.round(128/64),2),n=y3(e,6),i=document.createElement("canvas");i.width=n[0].length*128+(n[0].length+1)*(t*2)-t*2,i.height=n.length*128+(n.length+1)*(t*2)-t*2;let r=i.getContext("2d");r.fillStyle=ca.white,r.fillRect(0,0,i.width,i.height);for(let[l,o]of e.entries()){let d=await $p({elements:o.elements,files:null,maxWidthOrHeight:128}),{width:h,height:s}=d,c=Math.floor(l/6)*(128+t*2),u=l%6*(128+t*2);r.drawImage(d,u+(128-h)/2+t,c+(128-s)/2+t),r.lineWidth=a,r.strokeStyle=ca.gray[4],r.strokeRect(u+t/2,c+t/2,128+t,128+t)}return await Qp(new File([await oc(i)],"preview",{type:Ma.png}),{outputType:Ma.jpg,maxWidthOrHeight:5e3})},Hj=({libItem:e,appState:t,index:a,onChange:n,onRemove:i})=>{let r=(0,hn.useRef)(null),l=(0,hn.useRef)(null);return(0,hn.useEffect)(()=>{let o=r.current;o&&(async()=>{let d=await M1({elements:e.elements,appState:{...t,viewBackgroundColor:ca.white,exportBackground:!0},files:null,skipInliningFonts:!0});o.innerHTML=d.outerHTML})()},[e.elements,t]),(0,ee.jsxs)("div",{className:"single-library-item",children:[e.status==="published"&&(0,ee.jsx)("span",{className:"single-library-item-status",children:w("labels.statusPublished")}),(0,ee.jsx)("div",{ref:r,className:"single-library-item__svg"}),(0,ee.jsx)(he,{"aria-label":w("buttons.remove"),type:"button",icon:Lo,className:"single-library-item--remove",onClick:i.bind(null,e.id),title:w("buttons.remove")}),(0,ee.jsxs)("div",{style:{display:"flex",margin:"0.8rem 0",width:"100%",fontSize:"14px",fontWeight:500,flexDirection:"column"},children:[(0,ee.jsxs)("label",{style:{display:"flex",justifyContent:"space-between",flexDirection:"column"},children:[(0,ee.jsxs)("div",{style:{padding:"0.5em 0"},children:[(0,ee.jsx)("span",{style:{fontWeight:500,color:ca.gray[6]},children:w("publishDialog.itemName")}),(0,ee.jsx)("span",{"aria-hidden":"true",className:"required",children:"*"})]}),(0,ee.jsx)("input",{type:"text",ref:l,style:{width:"80%",padding:"0.2rem"},defaultValue:e.name,placeholder:"Item name",onChange:o=>{n(o.target.value,a)}})]}),(0,ee.jsx)("span",{className:"error",children:e.error})]})]})},Fj=({onClose:e,libraryItems:t,appState:a,onSuccess:n,onError:i,updateItemsInStorage:r,onRemove:l})=>{let[o,d]=(0,hn.useState)({authorName:"",githubHandle:"",name:"",description:"",twitterHandle:"",website:""}),[h,s]=(0,hn.useState)(!1);(0,hn.useEffect)(()=>{let v=is.get($s.PUBLISH_LIBRARY);v&&d(v)},[]);let[c,u]=(0,hn.useState)(t.slice());(0,hn.useEffect)(()=>{u(t.slice())},[t]);let m=v=>{d({...o,[v.target.name]:v.target.value})},p=async v=>{v.preventDefault(),s(!0);let x=[],E=!1;if(c.forEach(I=>{let j="";I.name||(j=w("publishDialog.errors.required"),E=!0),x.push({...I,error:j})}),E){u(x),s(!1);return}let S=await jj(c),C={type:WS.excalidrawLibrary,version:$v.excalidrawLibrary,source:JS,libraryItems:c},_=JSON.stringify(C,null,2),D=new Blob([_],{type:"application/json"}),k=new FormData;k.append("excalidrawLib",D),k.append("previewImage",S),k.append("previewImageType",S.type),k.append("title",o.name),k.append("authorName",o.authorName),k.append("githubHandle",o.githubHandle),k.append("name",o.name),k.append("description",o.description),k.append("twitterHandle",o.twitterHandle),k.append("website",o.website),fetch(`${Ft.VITE_APP_LIBRARY_BACKEND}/submit`,{method:"post",body:k}).then(I=>I.ok?I.json().then(({url:j})=>{is.delete($s.PUBLISH_LIBRARY),n({url:j,authorName:o.authorName,items:c})}):I.json().catch(()=>{throw new Error(I.statusText||"something went wrong")}).then(j=>{throw new Error(j.message||I.statusText||"something went wrong")}),I=>{console.error(I),i(I),s(!1)}).catch(I=>{console.error(I),i(I),s(!1)})},f=()=>{let v=[];return c.forEach((x,E)=>{v.push((0,ee.jsx)("div",{className:"single-library-item-wrapper",children:(0,ee.jsx)(Hj,{libItem:x,appState:a,index:E,onChange:(S,C)=>{let _=c.slice();_[C].name=S,u(_)},onRemove:l})},E))}),(0,ee.jsx)("div",{className:"selected-library-items",children:v})},y=(0,hn.useCallback)(()=>{r(c),is.set($s.PUBLISH_LIBRARY,o),e()},[c,e,r,o]),g=!!t.length,b=t.some(v=>v.status==="published");return(0,ee.jsx)(Ci,{onCloseRequest:y,title:w("publishDialog.title"),className:"publish-library",children:g?(0,ee.jsxs)("form",{onSubmit:p,children:[(0,ee.jsx)("div",{className:"publish-library-note",children:(0,ee.jsx)(Qi,{i18nKey:"publishDialog.noteDescription",link:v=>(0,ee.jsx)("a",{href:"https://libraries.excalidraw.com",target:"_blank",rel:"noopener noreferrer",children:v})})}),(0,ee.jsx)("span",{className:"publish-library-note",children:(0,ee.jsx)(Qi,{i18nKey:"publishDialog.noteGuidelines",link:v=>(0,ee.jsx)("a",{href:"https://github.com/excalidraw/excalidraw-libraries#guidelines",target:"_blank",rel:"noopener noreferrer",children:v})})}),(0,ee.jsx)("div",{className:"publish-library-note",children:w("publishDialog.noteItems")}),b&&(0,ee.jsx)("span",{className:"publish-library-note publish-library-warning",children:w("publishDialog.republishWarning")}),f(),(0,ee.jsxs)("div",{className:"publish-library__fields",children:[(0,ee.jsxs)("label",{children:[(0,ee.jsxs)("div",{children:[(0,ee.jsx)("span",{children:w("publishDialog.libraryName")}),(0,ee.jsx)("span",{"aria-hidden":"true",className:"required",children:"*"})]}),(0,ee.jsx)("input",{type:"text",name:"name",required:!0,value:o.name,onChange:m,placeholder:w("publishDialog.placeholder.libraryName")})]}),(0,ee.jsxs)("label",{style:{alignItems:"flex-start"},children:[(0,ee.jsxs)("div",{children:[(0,ee.jsx)("span",{children:w("publishDialog.libraryDesc")}),(0,ee.jsx)("span",{"aria-hidden":"true",className:"required",children:"*"})]}),(0,ee.jsx)("textarea",{name:"description",rows:4,required:!0,value:o.description,onChange:m,placeholder:w("publishDialog.placeholder.libraryDesc")})]}),(0,ee.jsxs)("label",{children:[(0,ee.jsxs)("div",{children:[(0,ee.jsx)("span",{children:w("publishDialog.authorName")}),(0,ee.jsx)("span",{"aria-hidden":"true",className:"required",children:"*"})]}),(0,ee.jsx)("input",{type:"text",name:"authorName",required:!0,value:o.authorName,onChange:m,placeholder:w("publishDialog.placeholder.authorName")})]}),(0,ee.jsxs)("label",{children:[(0,ee.jsx)("span",{children:w("publishDialog.githubUsername")}),(0,ee.jsx)("input",{type:"text",name:"githubHandle",value:o.githubHandle,onChange:m,placeholder:w("publishDialog.placeholder.githubHandle")})]}),(0,ee.jsxs)("label",{children:[(0,ee.jsx)("span",{children:w("publishDialog.twitterUsername")}),(0,ee.jsx)("input",{type:"text",name:"twitterHandle",value:o.twitterHandle,onChange:m,placeholder:w("publishDialog.placeholder.twitterHandle")})]}),(0,ee.jsxs)("label",{children:[(0,ee.jsx)("span",{children:w("publishDialog.website")}),(0,ee.jsx)("input",{type:"text",name:"website",pattern:"https?://.+",title:w("publishDialog.errors.website"),value:o.website,onChange:m,placeholder:w("publishDialog.placeholder.website")})]}),(0,ee.jsx)("span",{className:"publish-library-note",children:(0,ee.jsx)(Qi,{i18nKey:"publishDialog.noteLicense",link:v=>(0,ee.jsx)("a",{href:"https://github.com/excalidraw/excalidraw-libraries/blob/main/LICENSE",target:"_blank",rel:"noopener noreferrer",children:v})})})]}),(0,ee.jsxs)("div",{className:"publish-library__buttons",children:[(0,ee.jsx)(Yc,{label:w("buttons.cancel"),onClick:y,"data-testid":"cancel-clear-canvas-button"}),(0,ee.jsx)(Yc,{type:"submit",label:w("buttons.submit"),actionType:"primary",isLoading:h})]})]}):(0,ee.jsx)("p",{style:{padding:"1em",textAlign:"center",fontWeight:500},children:w("publishDialog.atleastOneLibItem")})})},Yj=Fj,BD=({className:e="",children:t,onToggle:a,title:n,...i})=>{let r=Bt(),l=U(`dropdown-menu-button ${e}`,"zen-mode-transition",{"dropdown-menu-button--mobile":r.editor.isMobile}).trim();return(0,zD.jsx)("button",{"data-prevent-outside-click":!0,className:l,onClick:a,type:"button","data-testid":"dropdown-menu-button",title:n,...i,children:t})},Gj=BD;BD.displayName="DropdownMenuTrigger";var PD=()=>(0,UD.jsx)("div",{style:{height:"1px",backgroundColor:"var(--default-border-color)",margin:".5rem 0"}}),$j=PD;PD.displayName="DropdownMenuSeparator";var jD=({children:e,onClickOutside:t,className:a="",onSelect:n,style:i})=>{let r=Bt(),l=(0,Ng.useRef)(null),o=bg({onClickOutside:t});Qx(l,()=>{o.onClickOutside?.()}),(0,Ng.useEffect)(()=>{let h=c=>{c.key===M.ESCAPE&&(c.stopImmediatePropagation(),o.onClickOutside?.())},s={capture:!0};return document.addEventListener("keydown",h,s),()=>{document.removeEventListener("keydown",h,s)}},[o]);let d=U(`dropdown-menu ${a}`,{"dropdown-menu--mobile":r.editor.isMobile}).trim();return(0,mm.jsx)(nD.Provider,{value:{onSelect:n},children:(0,mm.jsx)("div",{ref:l,className:d,style:i,"data-testid":"dropdown-menu",children:r.editor.isMobile?(0,mm.jsx)(Hn.Col,{className:"dropdown-menu-container",children:e}):(0,mm.jsx)(xi,{className:"dropdown-menu-container",padding:2,style:{zIndex:2},children:e})})})};jD.displayName="DropdownMenuContent";var Vj=jD,HD=({icon:e,shortcut:t,href:a,children:n,onSelect:i,className:r="",selected:l,rel:o="noreferrer",...d})=>{let h=rD(d.onClick,i);return(0,Nx.jsx)("a",{...d,href:a,target:"_blank",rel:"noreferrer",className:iD(r,l),title:d.title??d["aria-label"],onClick:h,children:(0,Nx.jsx)(lD,{icon:e,shortcut:t,children:n})})},Qf=HD;HD.displayName="DropdownMenuItemLink";var Xj=({children:e,className:t="",selected:a,...n})=>(0,FD.jsx)("div",{...n,className:`dropdown-menu-item-base dropdown-menu-item-custom ${t} ${a?"dropdown-menu-item--selected":""}`.trim(),children:e}),Zj=Xj,Kj=e=>_m.default.Children.toArray(e).find(a=>_m.default.isValidElement(a)&&typeof a.type!="string"&&a?.type.displayName&&a.type.displayName==="DropdownMenuTrigger")||null,qj=e=>_m.default.Children.toArray(e).find(a=>_m.default.isValidElement(a)&&typeof a.type!="string"&&a?.type.displayName&&a.type.displayName==="DropdownMenuContent")||null,Ur=({children:e,open:t})=>{let a=Kj(e),n=qj(e);return(0,Lg.jsxs)(Lg.Fragment,{children:[a,t&&n]})};Ur.Trigger=Gj;Ur.Content=Vj;Ur.Item=$n;Ur.ItemLink=Qf;Ur.ItemCustom=Zj;Ur.Group=Sx;Ur.Separator=$j;var Pe=Ur;Ur.displayName="DropdownMenu";var Qj=(e,t)=>e.filter(a=>t.includes(a.id)),Wj=({setAppState:e,selectedItems:t,library:a,onRemoveFromLibrary:n,resetLibrary:i,onSelectItems:r,appState:l,className:o})=>{let[d]=ct(Cm),[h,s]=ct(cw),c=()=>{let k=t.length?w("alerts.removeItemsFromsLibrary",{count:t.length}):w("alerts.resetLibrary"),I=t.length?w("confirmDialog.removeItemsFromLib"):w("confirmDialog.resetLibrary");return(0,Tt.jsx)(OD,{onConfirm:()=>{t.length?n():i(),m(!1)},onCancel:()=>{m(!1)},title:I,children:(0,Tt.jsx)("p",{children:k})})},[u,m]=(0,Uc.useState)(!1),p=!!t.length,f=p?d.libraryItems.filter(k=>t.includes(k.id)):d.libraryItems,y=w(p?"buttons.remove":"buttons.resetLibrary"),[g,b]=(0,Uc.useState)(!1),[v,x]=(0,Uc.useState)(null),E=(0,Uc.useCallback)(()=>(0,Tt.jsxs)(Ci,{onCloseRequest:()=>x(null),title:w("publishSuccessDialog.title"),className:"publish-library-success",size:"small",children:[(0,Tt.jsx)("p",{children:(0,Tt.jsx)(Qi,{i18nKey:"publishSuccessDialog.content",authorName:v.authorName,link:k=>(0,Tt.jsx)("a",{href:v?.url,target:"_blank",rel:"noopener noreferrer",children:k})})}),(0,Tt.jsx)(he,{type:"button",title:w("buttons.close"),"aria-label":w("buttons.close"),label:w("buttons.close"),onClick:()=>x(null),"data-testid":"publish-library-success-close",className:"publish-library-success-close"})]}),[x,v]),S=(k,I)=>{b(!1),x({url:k.url,authorName:k.authorName});let j=I.slice();j.forEach(z=>{t.includes(z.id)&&(z.status="published")}),a.setLibrary(j)},C=async()=>{try{await a.updateLibrary({libraryItems:f1({description:"Excalidraw library files"}),merge:!0,openLibraryMenu:!0})}catch(k){if(k?.name==="AbortError"){console.warn(k);return}e({errorMessage:w("errors.importLibraryError")})}},_=async()=>{let k=p?f:await a.getLatestLibrary();OT(k).catch(t0).catch(I=>{e({errorMessage:I.message})})},D=()=>(0,Tt.jsxs)(Pe,{open:h,children:[(0,Tt.jsx)(Pe.Trigger,{onToggle:()=>s(!h),children:G3}),(0,Tt.jsxs)(Pe.Content,{onClickOutside:()=>s(!1),onSelect:()=>s(!1),className:"library-menu",children:[!p&&(0,Tt.jsx)(Pe.Item,{onSelect:C,icon:Ep,"data-testid":"lib-dropdown--load",children:w("buttons.load")}),!!f.length&&(0,Tt.jsx)(Pe.Item,{onSelect:_,icon:gu,"data-testid":"lib-dropdown--export",children:w("buttons.export")}),!!f.length&&(0,Tt.jsx)(Pe.Item,{onSelect:()=>m(!0),icon:sl,children:y}),p&&(0,Tt.jsx)(Pe.Item,{icon:Z5,onSelect:()=>b(!0),"data-testid":"lib-dropdown--remove",children:w("buttons.publishLibrary")})]})]});return(0,Tt.jsxs)("div",{className:U("library-menu-dropdown-container",o),children:[D(),t.length>0&&(0,Tt.jsx)("div",{className:"library-actions-counter",children:t.length}),u&&c(),g&&(0,Tt.jsx)(Yj,{onClose:()=>b(!1),libraryItems:Qj(d.libraryItems,t),appState:l,onSuccess:k=>S(k,d.libraryItems),onError:k=>window.alert(k),updateItemsInStorage:()=>a.setLibrary(d.libraryItems),onRemove:k=>r(t.filter(I=>I!==k))}),v&&E()]})},DM=({selectedItems:e,onSelectItems:t,className:a})=>{let{library:n}=tr(),{clearLibraryCache:i,deleteItemsFromLibraryCache:r}=ID(),l=ta(),o=Mt(),[d]=ct(Cm),h=async s=>{let c=s.filter(u=>!e.includes(u.id));n.setLibrary(c).catch(()=>{o({errorMessage:w("alerts.errorRemovingFromLibrary")})}),r(e),t([])};return(0,Tt.jsx)(Wj,{appState:l,setAppState:o,selectedItems:e,onSelectItems:t,library:n,onRemoveFromLibrary:()=>h(d.libraryItems),resetLibrary:()=>{n.resetLibrary(),i()},className:a})},Jj=(0,Fl.memo)(({id:e,elements:t,isPending:a,onClick:n,selected:i,onToggle:r,onDrag:l,svgCache:o})=>{let d=(0,Fl.useRef)(null),h=xj(e,t,o);(0,Fl.useEffect)(()=>{let p=d.current;if(p)return h&&(p.innerHTML=h.outerHTML),()=>{p.innerHTML=""}},[h]);let[s,c]=(0,Fl.useState)(!1),u=Bt().editor.isMobile,m=a&&(0,rs.jsx)("div",{className:"library-unit__adder",children:Y3});return(0,rs.jsxs)("div",{className:U("library-unit",{"library-unit__active":t,"library-unit--hover":t&&s,"library-unit--selected":i,"library-unit--skeleton":!h}),onMouseEnter:()=>c(!0),onMouseLeave:()=>c(!1),children:[(0,rs.jsx)("div",{className:U("library-unit__dragger",{"library-unit__pulse":!!a}),ref:d,draggable:!!t,onClick:t||a?p=>{e&&p.shiftKey?r(e,p):n(e)}:void 0,onDragStart:p=>{if(!e){p.preventDefault();return}c(!1),l(e,p)}}),m,e&&t&&(s||u||i)&&(0,rs.jsx)(aw,{checked:i,onChange:(p,f)=>r(e,f),className:"library-unit__checkbox"})]})}),eH=()=>(0,rs.jsx)("div",{className:"library-unit library-unit--skeleton"});function tH(){return[!1,(0,Rg.useCallback)(e=>e(),[])]}var aH=Rg.default.useTransition||tH,IM=({children:e})=>(0,ls.jsx)("div",{className:"library-menu-items-container__grid",children:e}),ix=(0,Kc.memo)(({items:e,onItemSelectToggle:t,onItemDrag:a,isItemSelected:n,onClick:i,svgCache:r,itemsRenderedPerBatch:l})=>{let[,o]=aH(),[d,h]=(0,Kc.useState)(0);return(0,Kc.useEffect)(()=>{d<e.length&&o(()=>{h(d+l)})},[d,e.length,o,l]),(0,ls.jsx)(ls.Fragment,{children:e.map((s,c)=>c<d?(0,ls.jsx)(Jj,{elements:s?.elements,isPending:!s?.id&&!!s?.elements,onClick:i,svgCache:r,id:s?.id,selected:n(s.id),onToggle:t,onDrag:a},s?.id??c):(0,ls.jsx)(eH,{},c))})}),nH=wt(0),iH=e=>{let[t,a]=ct(nH);return(0,YD.useEffect)(()=>{let{current:n}=e;if(!n)return;let i=(0,GD.default)(()=>{let{scrollTop:r}=n;a(r)},200);return n.addEventListener("scroll",i),()=>{i.cancel(),n.removeEventListener("scroll",i)}},[e,a]),t},rH=17,lH=64;function oH({isLoading:e,libraryItems:t,onAddToLibrary:a,onInsertLibraryItems:n,pendingElements:i,theme:r,id:l,libraryReturnUrl:o,onSelectItems:d,selectedItems:h}){let s=(0,ya.useRef)(null),c=iH(s);(0,ya.useEffect)(()=>{c>0&&s.current?.scrollTo(0,c)},[]);let{svgCache:u}=ID(),m=(0,ya.useMemo)(()=>t.filter(k=>k.status!=="published"),[t]),p=(0,ya.useMemo)(()=>t.filter(k=>k.status==="published"),[t]),f=!t.length&&!i.length,y=!i.length&&!m.length&&!p.length,[g,b]=(0,ya.useState)(null),v=(0,ya.useCallback)((k,I)=>{let j=!h.includes(k),z=[...m,...p];if(j){if(I.shiftKey&&g){let G=z.findIndex(V=>V.id===g),O=z.findIndex(V=>V.id===k);if(G===-1||O===-1){d([...h,k]);return}let P=Ie(h),W=z.reduce((V,X,re)=>((re>=G&&re<=O||P.has(X.id))&&V.push(X.id),V),[]);d(W)}else d([...h,k]);b(k)}else b(null),d(h.filter(G=>G!==k))},[g,d,p,h,m]),x=(0,ya.useCallback)(k=>{let I;return h.includes(k)?I=t.filter(j=>h.includes(j.id)):I=t.filter(j=>j.id===k),I.map(j=>({...j,elements:h1(j.elements,{randomizeSeed:!0})}))},[t,h]),E=(0,ya.useCallback)((k,I)=>{I.dataTransfer.setData(Ma.excalidrawlib,RT(x(k)))},[x]),S=(0,ya.useCallback)(k=>k?h.includes(k):!1,[h]),C=(0,ya.useCallback)(()=>{a(i)},[i,a]),_=(0,ya.useCallback)(k=>{k&&n(x(k))},[x,n]),D=u.size>=t.length?lH:rH;return(0,We.jsxs)("div",{className:"library-menu-items-container",style:i.length||m.length||p.length?{justifyContent:"flex-start"}:{borderBottom:0},children:[!y&&(0,We.jsx)(DM,{selectedItems:h,onSelectItems:d,className:"library-menu-dropdown-container--in-heading"}),(0,We.jsxs)(Hn.Col,{className:"library-menu-items-container__items",align:"start",gap:1,style:{flex:p.length>0?1:"0 1 auto",marginBottom:0},ref:s,children:[(0,We.jsxs)(We.Fragment,{children:[!y&&(0,We.jsx)("div",{className:"library-menu-items-container__header",children:w("labels.personalLib")}),e&&(0,We.jsx)("div",{style:{position:"absolute",top:"var(--container-padding-y)",right:"var(--container-padding-x)",transform:"translateY(50%)"},children:(0,We.jsx)(zr,{})}),!i.length&&!m.length?(0,We.jsxs)("div",{className:"library-menu-items__no-items",children:[(0,We.jsx)("div",{className:"library-menu-items__no-items__label",children:w("library.noItems")}),(0,We.jsx)("div",{className:"library-menu-items__no-items__hint",children:p.length>0?w("library.hint_emptyPrivateLibrary"):w("library.hint_emptyLibrary")})]}):(0,We.jsxs)(IM,{children:[i.length>0&&(0,We.jsx)(ix,{itemsRenderedPerBatch:D,items:[{id:null,elements:i}],onItemSelectToggle:v,onItemDrag:E,onClick:C,isItemSelected:S,svgCache:u}),(0,We.jsx)(ix,{itemsRenderedPerBatch:D,items:m,onItemSelectToggle:v,onItemDrag:E,onClick:_,isItemSelected:S,svgCache:u})]})]}),(0,We.jsxs)(We.Fragment,{children:[(p.length>0||i.length>0||m.length>0)&&(0,We.jsx)("div",{className:"library-menu-items-container__header library-menu-items-container__header--excal",children:w("labels.excalidrawLib")}),p.length>0?(0,We.jsx)(IM,{children:(0,We.jsx)(ix,{itemsRenderedPerBatch:D,items:p,onItemSelectToggle:v,onItemDrag:E,onClick:_,isItemSelected:S,svgCache:u})}):m.length>0?(0,We.jsx)("div",{style:{margin:"1rem 0",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",width:"100%",fontSize:".9rem"},children:w("library.noItems")}):null]}),f&&(0,We.jsx)(RD,{style:{padding:"16px 0",width:"100%"},id:l,libraryReturnUrl:o,theme:r,children:(0,We.jsx)(DM,{selectedItems:h,onSelectItems:d})})]})]})}var cw=wt(!1),NM=({children:e})=>(0,zn.jsx)("div",{className:"layer-ui__library",children:e}),sH=(0,Kt.memo)(({onInsertLibraryItems:e,pendingElements:t,onAddToLibrary:a,setAppState:n,libraryReturnUrl:i,library:r,id:l,theme:o,selectedItems:d,onSelectItems:h})=>{let[s]=ct(Cm),c=(0,Kt.useCallback)(p=>{(async(f,y)=>{Oe("element","addToLibrary","ui");for(let b of Xv)if(f.some(v=>v.type===b))return n({errorMessage:w(`errors.libraryElementTypeError.${b}`)});let g=[{status:"unpublished",elements:f,id:ku(),created:Date.now()},...y];a(),r.setLibrary(g).catch(()=>{n({errorMessage:w("alerts.errorAddingToLibrary")})})})(p,s.libraryItems)},[a,r,n,s.libraryItems]),u=(0,Kt.useMemo)(()=>s.libraryItems,[s]);if(s.status==="loading"&&!s.isInitialized)return(0,zn.jsx)(NM,{children:(0,zn.jsx)("div",{className:"layer-ui__library-message",children:(0,zn.jsxs)("div",{children:[(0,zn.jsx)(zr,{size:"2em"}),(0,zn.jsx)("span",{children:w("labels.libraryLoadingMessage")})]})})});let m=s.libraryItems.length>0||t.length>0;return(0,zn.jsxs)(NM,{children:[(0,zn.jsx)(oH,{isLoading:s.status==="loading",libraryItems:u,onAddToLibrary:c,onInsertLibraryItems:e,pendingElements:t,id:l,libraryReturnUrl:i,theme:o,onSelectItems:h,selectedItems:d}),m&&(0,zn.jsx)(RD,{className:"library-menu-control-buttons--at-bottom",style:{padding:"16px 12px 0 12px"},id:l,libraryReturnUrl:i,theme:o})]})}),rx=(e,t)=>({elements:e,pending:ce(e,{selectedElementIds:t},{includeBoundTextElement:!0,includeElementsInFrames:!0}),selectedElementIds:t}),cH=(e,t)=>{let a=Gg(),[n,i]=(0,Kt.useState)(()=>rx(a,e.selectedElementIds)),r=(0,Kt.useRef)(new Map);return(0,Kt.useEffect)(()=>{for(let l of n.pending)r.current.set(l.id,l.version)},[n.pending]),(0,Kt.useEffect)(()=>{t.state.cursorButton==="up"&&t.state.activeTool.type==="selection"&&i(l=>{if(!Dn(l.selectedElementIds,e.selectedElementIds))return r.current.clear(),rx(a,e.selectedElementIds);let o=t.scene.getNonDeletedElementsMap();for(let d of Object.keys(e.selectedElementIds)){let h=o.get(d)?.version;if(h&&h!==r.current.get(d))return rx(a,e.selectedElementIds)}return l})},[t,t.state.cursorButton,t.state.activeTool.type,e.selectedElementIds,a]),n.pending},dH=(0,Kt.memo)(()=>{let e=tr(),{onInsertElements:t}=e,a=Hm(),n=ta(),i=Mt(),[r,l]=(0,Kt.useState)([]),o=(0,Kt.useMemo)(()=>e.library,[e.library]),d=cH(n,e),h=(0,Kt.useCallback)(c=>{t(ND(c))},[t]),s=(0,Kt.useCallback)(()=>{i({selectedElementIds:{},selectedGroupIds:{},activeEmbeddable:null})},[i]);return(0,zn.jsx)(sH,{pendingElements:d,onInsertLibraryItems:h,onAddToLibrary:s,setAppState:i,libraryReturnUrl:a.libraryReturnUrl,library:o,id:e.id,theme:n.theme,selectedItems:r,onSelectItems:l})});function uH(e){if(e&&typeof e=="number")return e;switch(e){case"small":return 550;case"wide":return 1024;default:return 800}}var Ci=e=>{let[t,a]=vj(),[n]=(0,Mg.useState)(document.activeElement),{id:i}=ar(),r=Bt().viewport.isMobile;(0,Mg.useEffect)(()=>{if(!t)return;let h=cp(t);setTimeout(()=>{h.length>0&&e.autofocus!==!1&&(h[1]||h[0]).focus()});let s=c=>{if(c.key===M.TAB){let u=cp(t),{activeElement:m}=document,p=u.findIndex(f=>f===m);p===0&&c.shiftKey?(u[u.length-1].focus(),c.preventDefault()):p===u.length-1&&!c.shiftKey&&(u[0].focus(),c.preventDefault())}};return t.addEventListener("keydown",s),()=>t.removeEventListener("keydown",s)},[t,e.autofocus]);let l=Mt(),o=dg(cw),d=()=>{l({openMenu:null}),o(!1),n.focus(),e.onCloseRequest()};return(0,Il.jsx)(yj,{className:U("Dialog",e.className,{"Dialog--fullscreen":r}),labelledBy:"dialog-title",maxWidth:uH(e.size),onCloseRequest:d,closeOnClickOutside:e.closeOnClickOutside,children:(0,Il.jsxs)(xi,{ref:a,children:[e.title&&(0,Il.jsx)("h2",{id:`${i}-dialog-title`,className:"Dialog__title",children:(0,Il.jsx)("span",{className:"Dialog__titleContent",children:e.title})}),r&&(0,Il.jsx)("button",{className:"Dialog__close",onClick:d,title:w("buttons.close"),"aria-label":w("buttons.close"),type:"button",children:Lo}),(0,Il.jsx)("div",{className:"Dialog__content",children:e.children})]})})},hs=({type:e="button",onSelect:t,selected:a,children:n,className:i="",...r})=>(0,$D.jsx)("button",{onClick:mu(r.onClick,l=>{t()}),type:e,className:U("excalidraw-button",i,{selected:a}),...r,children:n}),dw=(0,er.forwardRef)(({onChange:e,label:t,fullWidth:a,placeholder:n,readonly:i,selectOnRender:r,onKeyDown:l,isRedacted:o=!1,icon:d,className:h,...s},c)=>{let u=(0,er.useRef)(null);(0,er.useImperativeHandle)(c,()=>u.current),(0,er.useLayoutEffect)(()=>{r&&(u.current?.focus(),u.current?.select())},[r]);let[m,p]=(0,er.useState)(!1);return(0,os.jsxs)("div",{className:U("ExcTextField",h,{"ExcTextField--fullWidth":a,"ExcTextField--hasIcon":!!d}),onClick:()=>{u.current?.focus()},children:[d,t&&(0,os.jsx)("div",{className:"ExcTextField__label",children:t}),(0,os.jsxs)("div",{className:U("ExcTextField__input",{"ExcTextField__input--readonly":i}),children:[(0,os.jsx)("input",{className:U({"is-redacted":"value"in s&&s.value&&o&&!m}),readOnly:i,value:"value"in s?s.value:void 0,defaultValue:"defaultValue"in s?s.defaultValue:void 0,placeholder:n,ref:u,onChange:f=>e?.(f.target.value),onKeyDown:l}),o&&(0,os.jsx)(hs,{onSelect:()=>p(!m),style:{border:0,userSelect:"none"},children:m?aC:Tp})]})]})}),mH={toggleTheme:[B("Shift+Alt+D")],saveScene:[B("CtrlOrCmd+S")],loadScene:[B("CtrlOrCmd+O")],clearCanvas:[B("CtrlOrCmd+Delete")],imageExport:[B("CtrlOrCmd+Shift+E")],commandPalette:[B("CtrlOrCmd+/"),B("CtrlOrCmd+Shift+P")],cut:[B("CtrlOrCmd+X")],copy:[B("CtrlOrCmd+C")],paste:[B("CtrlOrCmd+V")],copyStyles:[B("CtrlOrCmd+Alt+C")],pasteStyles:[B("CtrlOrCmd+Alt+V")],selectAll:[B("CtrlOrCmd+A")],deleteSelectedElements:[B("Delete")],duplicateSelection:[B("CtrlOrCmd+D"),B(`Alt+${w("helpDialog.drag")}`)],sendBackward:[B("CtrlOrCmd+[")],bringForward:[B("CtrlOrCmd+]")],sendToBack:[yr?B("CtrlOrCmd+Alt+["):B("CtrlOrCmd+Shift+[")],bringToFront:[yr?B("CtrlOrCmd+Alt+]"):B("CtrlOrCmd+Shift+]")],copyAsPng:[B("Shift+Alt+C")],group:[B("CtrlOrCmd+G")],ungroup:[B("CtrlOrCmd+Shift+G")],gridMode:[B("CtrlOrCmd+'")],zenMode:[B("Alt+Z")],objectsSnapMode:[B("Alt+S")],stats:[B("Alt+/")],addToLibrary:[],flipHorizontal:[B("Shift+H")],flipVertical:[B("Shift+V")],viewMode:[B("Alt+R")],hyperlink:[B("CtrlOrCmd+K")],toggleElementLock:[B("CtrlOrCmd+Shift+L")],resetZoom:[B("CtrlOrCmd+0")],zoomOut:[B("CtrlOrCmd+-")],zoomIn:[B("CtrlOrCmd++")],zoomToFitSelection:[B("Shift+3")],zoomToFit:[B("Shift+1")],zoomToFitSelectionInViewport:[B("Shift+2")],toggleEraserTool:[B("E")],toggleHandTool:[B("H")],setFrameAsActiveTool:[B("F")],saveFileToDisk:[B("CtrlOrCmd+S")],saveToActiveFile:[B("CtrlOrCmd+S")],toggleShortcuts:[B("?")],searchMenu:[B("CtrlOrCmd+F")],wrapSelectionInFrame:[]},Ea=(e,t=0)=>{let a=mH[e];return a&&a.length>0?a[t]||a[0]:""},hH="\\u0300-\\u036f",pH="\\ufe20-\\ufe2f",fH="\\u20d0-\\u20ff",gH=hH+pH+fH,bH=`[${gH}]`,vH=RegExp(bH,"g"),yH=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,xH={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"E",\u00E6:"e",\u00DE:"T",\u00FE:"t",\u00DF:"s",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"I",\u0133:"i",\u0152:"E",\u0153:"e",\u0149:"n",\u017F:"s"},LM=e=>e.replace(yH,t=>xH[t]||t).replace(vH,""),ZD=Og.default.createContext(null),Ua=()=>Og.default.useContext(ZD),wH=tf(),EH=()=>Og.default.useMemo(()=>({MainMenuTunnel:di(),WelcomeScreenMenuHintTunnel:di(),WelcomeScreenToolbarHintTunnel:di(),WelcomeScreenHelpHintTunnel:di(),WelcomeScreenCenterTunnel:di(),FooterCenterTunnel:di(),DefaultSidebarTriggerTunnel:di(),DefaultSidebarTabTriggersTunnel:di(),OverwriteConfirmDialogTunnel:di(),TTDDialogTriggerTunnel:di(),tunnelsJotai:wH}),[]),KD=(e,t)=>{let a=t[0]?.type||null;for(let n of t)if(n.type!==a){a=null;break}return Np(e.activeTool.type)&&e.activeTool.type!=="image"&&a!=="image"&&a!=="frame"&&a!=="magicframe"||t.some(n=>Np(n.type))},qD=(e,t)=>Oo(e.activeTool.type)||t.some(a=>Oo(a.type)),QD=({appState:e,elementsMap:t,renderAction:a,app:n})=>{let i=U1(t,e),r=!1;i.length===2&&(Bi(i[0])||Bi(i[1]))&&(r=!0);let l=!!(e.editingTextElement||e.newElement),o=Bt(),d=document.documentElement.getAttribute("dir")==="rtl",h=Oo(e.activeTool.type)&&!du(e.currentItemBackgroundColor)||i.some(p=>Oo(p.type)&&!du(p.backgroundColor)),s=i.length===1||r,c=!e.editingLinearElement&&i.length===1&&Ke(i[0])&&!me(i[0]),u=!e.croppingElementId&&i.length===1&&tt(i[0]),m=!r&&pn(e,n);return(0,te.jsxs)("div",{className:"panelColumn",children:[(0,te.jsx)("div",{children:KD(e,i)&&a("changeStrokeColor")}),qD(e,i)&&(0,te.jsx)("div",{children:a("changeBackgroundColor")}),h&&a("changeFillStyle"),(V0(e.activeTool.type)||i.some(p=>V0(p.type)))&&a("changeStrokeWidth"),(e.activeTool.type==="freedraw"||i.some(p=>p.type==="freedraw"))&&a("changeStrokeShape"),(X0(e.activeTool.type)||i.some(p=>X0(p.type)))&&(0,te.jsxs)(te.Fragment,{children:[a("changeStrokeStyle"),a("changeSloppiness")]}),(Z0(e.activeTool.type)||i.some(p=>Z0(p.type)))&&(0,te.jsx)(te.Fragment,{children:a("changeRoundness")}),(K0(e.activeTool.type)||i.some(p=>K0(p.type)))&&(0,te.jsx)(te.Fragment,{children:a("changeArrowType")}),(e.activeTool.type==="text"||i.some(ae))&&(0,te.jsxs)(te.Fragment,{children:[a("changeFontFamily"),a("changeFontSize"),(e.activeTool.type==="text"||xT(i,t))&&a("changeTextAlign")]}),yT(i,t)&&a("changeVerticalAlign"),(xu(e.activeTool.type)||i.some(p=>xu(p.type)))&&(0,te.jsx)(te.Fragment,{children:a("changeArrowhead")}),a("changeOpacity"),(0,te.jsxs)("fieldset",{children:[(0,te.jsx)("legend",{children:w("labels.layers")}),(0,te.jsxs)("div",{className:"buttonList",children:[a("sendToBack"),a("sendBackward"),a("bringForward"),a("bringToFront")]})]}),m&&!r&&(0,te.jsxs)("fieldset",{children:[(0,te.jsx)("legend",{children:w("labels.align")}),(0,te.jsxs)("div",{className:"buttonList",children:[d?(0,te.jsxs)(te.Fragment,{children:[a("alignRight"),a("alignHorizontallyCentered"),a("alignLeft")]}):(0,te.jsxs)(te.Fragment,{children:[a("alignLeft"),a("alignHorizontallyCentered"),a("alignRight")]}),i.length>2&&a("distributeHorizontally"),(0,te.jsx)("div",{style:{flexBasis:"100%",height:0}}),(0,te.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",gap:".5rem",marginTop:"-0.5rem"},children:[a("alignTop"),a("alignVerticallyCentered"),a("alignBottom"),i.length>2&&a("distributeVertically")]})]})]}),!l&&i.length>0&&(0,te.jsxs)("fieldset",{children:[(0,te.jsx)("legend",{children:w("labels.actions")}),(0,te.jsxs)("div",{className:"buttonList",children:[!o.editor.isMobile&&a("duplicateSelection"),!o.editor.isMobile&&a("deleteSelectedElements"),a("group"),a("ungroup"),s&&a("hyperlink"),u&&a("cropEditor"),c&&a("toggleLinearEditor")]})]})]})},WD=({activeTool:e,appState:t,app:a,UIOptions:n})=>{let[i,r]=(0,XD.useState)(!1),l=e.type==="frame",o=e.type==="laser",d=e.type==="embeddable",{TTDDialogTriggerTunnel:h}=Ua();return(0,te.jsxs)(te.Fragment,{children:[Y0.map(({value:s,icon:c,key:u,numericKey:m,fillable:p},f)=>{if(n.tools?.[s]===!1)return null;let y=w(`toolBar.${s}`),g=u&&Xs(typeof u=="string"?u:u[0]),b=g?`${g} ${w("helpDialog.or")} ${m}`:`${m}`;return(0,te.jsx)(he,{className:U("Shape",{fillable:p}),type:"radio",icon:c,checked:e.type===s,name:"editor-current-shape",title:`${Xs(y)} \u2014 ${b}`,keyBindingLabel:m||g,"aria-label":Xs(y),"aria-keyshortcuts":b,"data-testid":`toolbar-${s}`,onPointerDown:({pointerType:v})=>{!t.penDetected&&v==="pen"&&a.togglePenMode(!0)},onChange:({pointerType:v})=>{t.activeTool.type!==s&&Oe("toolbar",s,"ui"),s==="image"?a.setActiveTool({type:s,insertOnCanvasDirectly:v!=="mouse"}):a.setActiveTool({type:s})}},s)}),(0,te.jsx)("div",{className:"App-toolbar__divider"}),(0,te.jsxs)(Pe,{open:i,children:[(0,te.jsx)(Pe.Trigger,{className:U("App-toolbar__extra-tools-trigger",{"App-toolbar__extra-tools-trigger--selected":l||d||o&&!a.props.isCollaborating}),onToggle:()=>r(!i),title:w("toolBar.extraTools"),children:eC}),(0,te.jsxs)(Pe.Content,{onClickOutside:()=>r(!1),onSelect:()=>r(!1),className:"App-toolbar__extra-tools-dropdown",children:[(0,te.jsx)(Pe.Item,{onSelect:()=>a.setActiveTool({type:"frame"}),icon:R0,shortcut:M.F.toLocaleUpperCase(),"data-testid":"toolbar-frame",selected:l,children:w("toolBar.frame")}),(0,te.jsx)(Pe.Item,{onSelect:()=>a.setActiveTool({type:"embeddable"}),icon:W3,"data-testid":"toolbar-embeddable",selected:d,children:w("toolBar.embeddable")}),(0,te.jsx)(Pe.Item,{onSelect:()=>a.setActiveTool({type:"laser"}),icon:z0,"data-testid":"toolbar-laser",selected:o,shortcut:M.K.toLocaleUpperCase(),children:w("toolBar.laser")}),(0,te.jsx)("div",{style:{margin:"6px 0",fontSize:14,fontWeight:600},children:"Generate"}),a.props.aiEnabled!==!1&&(0,te.jsx)(h.Out,{}),(0,te.jsx)(Pe.Item,{onSelect:()=>a.setOpenDialog({name:"ttd",tab:"mermaid"}),icon:O0,"data-testid":"toolbar-embeddable",children:w("toolBar.mermaidToExcalidraw")}),a.props.aiEnabled!==!1&&a.plugins.diagramToCode&&(0,te.jsx)(te.Fragment,{children:(0,te.jsxs)(Pe.Item,{onSelect:()=>a.onMagicframeToolSelect(),icon:B0,"data-testid":"toolbar-magicframe",children:[w("toolBar.magicframe"),(0,te.jsx)(Pe.Item.Badge,{children:"AI"})]})})]})]})]})},SH=({renderAction:e,zoom:t})=>(0,te.jsx)(Hn.Col,{gap:1,className:To.ZOOM_ACTIONS,children:(0,te.jsxs)(Hn.Row,{align:"center",children:[e("zoomOut"),e("resetZoom"),e("zoomIn")]})}),CH=({renderAction:e,className:t})=>(0,te.jsxs)("div",{className:`undo-redo-buttons ${t}`,children:[(0,te.jsx)("div",{className:"undo-button-container",children:(0,te.jsx)(ms,{label:w("buttons.undo"),children:e("undo")})}),(0,te.jsx)("div",{className:"redo-button-container",children:(0,te.jsxs)(ms,{label:w("buttons.redo"),children:[" ",e("redo")]})})]}),TH=({actionManager:e,showExitZenModeBtn:t})=>(0,te.jsx)("button",{type:"button",className:U("disable-zen-mode",{"disable-zen-mode--visible":t}),onClick:()=>e.executeAction(_x),children:w("buttons.exitZenMode")}),_H=({renderAction:e,className:t})=>(0,te.jsx)("div",{className:`finalize-button ${t}`,children:e("finalize",{size:"small"})}),RM=e=>{let t=(0,JD.useRef)({userFn:e});return t.current.userFn=e,t.current.stableFn||(t.current.stableFn=(...a)=>t.current.userFn(...a)),t.current.stableFn},Bg=wt(null),kH=()=>{let[e,t]=ct(Bg),a=qa();return e&&e==="clearCanvas"?(0,zg.jsx)(OD,{onConfirm:()=>{a.executeAction(fm),t(null)},onCancel:()=>t(null),title:w("clearCanvasDialog.title"),children:(0,zg.jsxs)("p",{className:"clear-canvas__content",children:[" ",w("alerts.clearReset")]})}):null},e8={};Iv(e8,{toggleTheme:()=>MH});var MH={...ng,category:"App",label:"Toggle theme",perform:({actionManager:e})=>{e.executeAction(ng,"commandPalette")}},t8=Y({name:"copyElementLink",label:"labels.copyElementLink",icon:Cp,trackEvent:{category:"element"},perform:async(e,t,a,n)=>{let i=ce(e,t);try{if(window.location){let r=E1(i,t);return r?(await Nu(n.props.generateLinkForSelection?n.props.generateLinkForSelection(r.id,r.type):w1(r.id,r.type)),{appState:{toast:{message:w("toast.elementLinkCopied"),closable:!0}},captureUpdate:L.EVENTUALLY}):{appState:t,elements:e,app:n,captureUpdate:L.EVENTUALLY}}}catch(r){console.error(r)}return{appState:t,elements:e,app:n,captureUpdate:L.EVENTUALLY}},predicate:(e,t)=>Yp(ce(e,t))}),AH=Y({name:"linkToElement",label:"labels.linkToElement",icon:F0,perform:(e,t,a,n)=>{let i=ce(e,t);return i.length!==1||!Yp(i)?{elements:e,appState:t,app:n,captureUpdate:L.EVENTUALLY}:{appState:{...t,openDialog:{name:"elementLinkSelector",sourceElementId:ce(e,t)[0].id}},captureUpdate:L.IMMEDIATELY}},predicate:(e,t,a,n)=>{let i=ce(e,t);return t.openDialog?.name!=="elementLinkSelector"&&i.length===1&&Yp(i)},trackEvent:!1}),DH=wt(null),mt={app:"App",export:"Export",tools:"Tools",editor:"Editor",elements:"Elements",links:"Links"},IH=e=>{switch(e){case mt.app:return 1;case mt.export:return 2;case mt.editor:return 3;case mt.tools:return 4;case mt.elements:return 5;case mt.links:return 6;default:return 10}},Wf=({shortcut:e,className:t,children:a})=>{let n=e.replace("++","+$").split("+");return(0,je.jsxs)("div",{className:U("shortcut",t),children:[n.map((i,r)=>(0,je.jsx)("div",{className:"shortcut-wrapper",children:(0,je.jsx)("div",{className:"shortcut-key",children:i==="$"?"+":i})},i)),(0,je.jsx)("div",{className:"shortcut-desc",children:a})]})},a8=e=>!e.altKey&&e[M.CTRL_OR_CMD]&&(e.shiftKey&&e.key.toLowerCase()===M.P||e.key===M.SLASH),IJ=Object.assign(e=>{let t=ta(),a=Mt();return(0,jn.useEffect)(()=>{let n=i=>{a8(i)&&(i.preventDefault(),i.stopPropagation(),a(r=>{let l=r.openDialog?.name==="commandPalette"?null:{name:"commandPalette"};return l&&Oe("command_palette","open","shortcut"),{openDialog:l}}))};return window.addEventListener("keydown",n,{capture:!0}),()=>window.removeEventListener("keydown",n,{capture:!0})},[a]),t.openDialog?.name!=="commandPalette"?null:(0,je.jsx)(NH,{...e})},{defaultItems:e8});function NH({customCommandPaletteItems:e}){let t=tr(),a=ta(),n=Mt(),i=Hm(),r=qa(),[l,o]=ct(DH),[d,h]=(0,jn.useState)(null),s=(0,jn.useRef)(null),c=bg({uiAppState:a,customCommandPaletteItems:e,appProps:i});(0,jn.useEffect)(()=>{let{uiAppState:S,customCommandPaletteItems:C,appProps:_}=c,D=z=>{let G="";return z.label&&(typeof z.label=="function"?G=w(z.label(t.scene.getNonDeletedElements(),S,t)):G=w(z.label)),G},k=z=>typeof z.icon=="function"?z.icon(S,t.scene.getNonDeletedElements()):z.icon,I=[],j=(z,G,O)=>{let P={label:D(z),icon:k(z),category:G,shortcut:Ea(z.name),keywords:z.keywords,predicate:z.predicate,viewMode:z.viewMode,perform:()=>{r.executeAction(z,"commandPalette")}};return O?O(P,z):P};if(S&&t.scene&&r){let z=[r.actions.group,r.actions.ungroup,r.actions.cut,r.actions.copy,r.actions.deleteSelectedElements,r.actions.wrapSelectionInFrame,r.actions.copyStyles,r.actions.pasteStyles,r.actions.bringToFront,r.actions.bringForward,r.actions.sendBackward,r.actions.sendToBack,r.actions.alignTop,r.actions.alignBottom,r.actions.alignLeft,r.actions.alignRight,r.actions.alignVerticallyCentered,r.actions.alignHorizontallyCentered,r.actions.duplicateSelection,r.actions.flipHorizontal,r.actions.flipVertical,r.actions.zoomToFitSelection,r.actions.zoomToFitSelectionInViewport,r.actions.increaseFontSize,r.actions.decreaseFontSize,r.actions.toggleLinearEditor,r.actions.cropEditor,_D,t8,AH].map(X=>j(X,mt.elements,(re,oe)=>({...re,predicate:oe.predicate?oe.predicate:(ve,Ht,_a,_n)=>ce(ve,Ht).length>0}))),G=[r.actions.toggleHandTool,r.actions.setFrameAsActiveTool].map(X=>j(X,mt.tools)),O=[r.actions.undo,r.actions.redo,r.actions.zoomIn,r.actions.zoomOut,r.actions.resetZoom,r.actions.zoomToFit,r.actions.zenMode,r.actions.viewMode,r.actions.gridMode,r.actions.objectsSnapMode,r.actions.toggleShortcuts,r.actions.selectAll,r.actions.toggleElementLock,r.actions.unlockAllElements,r.actions.stats].map(X=>j(X,mt.editor)),P=[r.actions.saveToActiveFile,r.actions.saveFileToDisk,r.actions.copyAsPng,r.actions.copyAsSvg].map(X=>j(X,mt.export));I=[...z,...O,{label:D(fm),icon:k(fm),shortcut:Ea(fm.name),category:mt.editor,keywords:["delete","destroy"],viewMode:!1,perform:()=>{gi.set(Bg,"clearCanvas")}},{label:w("buttons.exportImage"),category:mt.export,icon:h0,shortcut:Ea("imageExport"),keywords:["export","image","png","jpeg","svg","clipboard","picture"],perform:()=>{n({openDialog:{name:"imageExport"}})}},...P];let W=[{label:w("toolBar.library"),category:mt.app,icon:fp,viewMode:!1,perform:()=>{S.openSidebar?n({openSidebar:null}):n({openSidebar:{name:ii.name,tab:ii.defaultTab}})}},{label:w("search.title"),category:mt.app,icon:cl,viewMode:!0,perform:()=>{r.executeAction(i8)}},{label:w("labels.changeStroke"),keywords:["color","outline"],category:mt.elements,icon:Sp,viewMode:!1,predicate:(X,re)=>{let oe=ce(X,re);return oe.length>0&&KD(re,oe)},perform:()=>{n(X=>({openMenu:X.openMenu==="shape"?null:"shape",openPopup:"elementStroke"}))}},{label:w("labels.changeBackground"),keywords:["color","fill"],icon:Sp,category:mt.elements,viewMode:!1,predicate:(X,re)=>{let oe=ce(X,re);return oe.length>0&&qD(re,oe)},perform:()=>{n(X=>({openMenu:X.openMenu==="shape"?null:"shape",openPopup:"elementBackground"}))}},{label:w("labels.canvasBackground"),keywords:["color"],icon:Sp,category:mt.editor,viewMode:!1,perform:()=>{n(X=>({openMenu:X.openMenu==="canvas"?null:"canvas",openPopup:"canvasBackground"}))}},...Y0.reduce((X,re)=>{let{value:oe,icon:ve,key:Ht,numericKey:_a}=re;if(_.UIOptions.tools?.[oe]===!1)return X;let _n=Ht&&Xs(typeof Ht=="string"?Ht:Ht[0])||_a,ai={label:w(`toolBar.${oe}`),category:mt.tools,shortcut:_n,icon:ve,keywords:["toolbar"],viewMode:!1,perform:({event:Ya})=>{oe==="image"?t.setActiveTool({type:oe,insertOnCanvasDirectly:Ya.type==="keydown"}):t.setActiveTool({type:oe})}};return X.push(ai),X},[]),...G,{label:w("toolBar.lock"),category:mt.tools,icon:S.activeTool.locked?gp:fu,shortcut:M.Q.toLocaleUpperCase(),viewMode:!1,perform:()=>{t.toggleLock()}},{label:`${w("labels.textToDiagram")}...`,category:mt.tools,icon:iC,viewMode:!1,predicate:_.aiEnabled,perform:()=>{n(X=>({...X,openDialog:{name:"ttd",tab:"text-to-diagram"}}))}},{label:`${w("toolBar.mermaidToExcalidraw")}...`,category:mt.tools,icon:O0,viewMode:!1,predicate:_.aiEnabled,perform:()=>{n(X=>({...X,openDialog:{name:"ttd",tab:"mermaid"}}))}}],V=[...I,...W,...C||[]].map(X=>({...X,icon:X.icon||U0,order:X.order??IH(X.category),haystack:`${LM(X.label.toLocaleLowerCase())} ${X.keywords?.join(" ")||""}`}));h(V),o(V.find(X=>X.label===l?.label)??null)}},[c,t,r,h,l?.label,o,n]);let[u,m]=(0,jn.useState)(""),[p,f]=(0,jn.useState)(null),[y,g]=(0,jn.useState)({}),b=S=>{n({openDialog:null},S),m("")},v=(S,C)=>{a.openDialog?.name==="commandPalette"&&(C.stopPropagation(),C.preventDefault(),document.body.classList.add("excalidraw-animations-disabled"),b(()=>{S.perform({actionManager:r,event:C}),o(S),requestAnimationFrame(()=>{document.body.classList.remove("excalidraw-animations-disabled")})}))},x=RM(S=>S.viewMode===!1&&a.viewModeEnabled?!1:typeof S.predicate=="function"?S.predicate(t.scene.getNonDeletedElements(),a,i,t):S.predicate===void 0||S.predicate),E=RM(S=>{let C=il(S.target)||a8(S)||S.key===M.ESCAPE;if(C&&S.key!==M.ARROW_UP&&S.key!==M.ARROW_DOWN&&S.key!==M.ENTER)return;let _=Object.values(y).flat(),D=l&&!u&&x(l);if(S.key===M.ARROW_UP){S.preventDefault();let k=_.findIndex(z=>z.label===p?.label);if(D){if(k===0){f(l);return}if(p===l){let z=_[_.length-1];z&&f(z);return}}let I;k===-1?I=_.length-1:I=k===0?_.length-1:(k-1)%_.length;let j=_[I];j&&f(j);return}if(S.key===M.ARROW_DOWN){S.preventDefault();let k=_.findIndex(z=>z.label===p?.label);if(D){if(!p||k===_.length-1){f(l);return}if(p===l){let z=_[0];z&&f(z);return}}let I=(k+1)%_.length,j=_[I];j&&f(j);return}if(S.key===M.ENTER&&p&&setTimeout(()=>{v(p,S)}),!C){if(S.stopPropagation(),/^[a-zA-Z0-9]$/.test(S.key)){s?.current?.focus();return}S.preventDefault()}});return(0,jn.useEffect)(()=>(window.addEventListener("keydown",E,{capture:!0}),()=>window.removeEventListener("keydown",E,{capture:!0})),[E]),(0,jn.useEffect)(()=>{if(!d)return;let S=k=>{let I={};for(let j of k)I[j.category]?I[j.category].push(j):I[j.category]=[j];return I},C=d.filter(x).sort((k,I)=>k.order-I.order),_=!u&&l&&x(l);if(!u){g(S(_?C.filter(k=>k.label!==l?.label):C)),f(_?l:C[0]||null);return}let D=LM(u.toLocaleLowerCase().replace(/[<>_| -]/g,""));C=VD.default.filter(D,C,{extract:k=>k.haystack}).sort((k,I)=>I.score-k.score).map(k=>k.original),g(S(C)),f(C[0]??null)},[u,d,x,l]),(0,je.jsxs)(Ci,{onCloseRequest:()=>b(),closeOnClickOutside:!0,title:!1,size:720,autofocus:!0,className:"command-palette-dialog",children:[(0,je.jsx)(dw,{value:u,placeholder:w("commandPalette.search.placeholder"),onChange:S=>{m(S)},selectOnRender:!0,ref:s}),!t.device.viewport.isMobile&&(0,je.jsxs)("div",{className:"shortcuts-wrapper",children:[(0,je.jsx)(Wf,{shortcut:"\u2191\u2193",children:w("commandPalette.shortcuts.select")}),(0,je.jsx)(Wf,{shortcut:"\u21B5",children:w("commandPalette.shortcuts.confirm")}),(0,je.jsx)(Wf,{shortcut:B("Esc"),children:w("commandPalette.shortcuts.close")})]}),(0,je.jsxs)("div",{className:"commands",children:[l&&!u&&(0,je.jsxs)("div",{className:"command-category",children:[(0,je.jsxs)("div",{className:"command-category-title",children:[w("commandPalette.recents"),(0,je.jsx)("div",{className:"icon",style:{marginLeft:"6px"},children:rC})]}),(0,je.jsx)(OM,{command:l,isSelected:l.label===p?.label,onClick:S=>v(l,S),disabled:!x(l),onMouseMove:()=>f(l),showShortcut:!t.device.viewport.isMobile,appState:a})]}),Object.keys(y).length>0?Object.keys(y).map((S,C)=>(0,je.jsxs)("div",{className:"command-category",children:[(0,je.jsx)("div",{className:"command-category-title",children:S}),y[S].map(_=>(0,je.jsx)(OM,{command:_,isSelected:_.label===p?.label,onClick:D=>v(_,D),onMouseMove:()=>f(_),showShortcut:!t.device.viewport.isMobile,appState:a},_.label))]},S)):d?(0,je.jsxs)("div",{className:"no-match",children:[(0,je.jsx)("div",{className:"icon",children:cl})," ",w("commandPalette.search.noMatch")]}):null]})]})}var OM=({command:e,isSelected:t,disabled:a,onMouseMove:n,onClick:i,showShortcut:r,appState:l})=>{let o=()=>{};return(0,je.jsxs)("div",{className:U("command-item",{"item-selected":t,"item-disabled":a}),ref:d=>{t&&!a&&d?.scrollIntoView?.({block:"nearest"})},onClick:a?o:i,onMouseMove:a?o:n,title:a?w("commandPalette.itemNotAvailable"):"",children:[(0,je.jsxs)("div",{className:"name",children:[e.icon&&(0,je.jsx)(yg,{icon:typeof e.icon=="function"?e.icon(l):e.icon}),e.label]}),r&&e.shortcut&&(0,je.jsx)(Wf,{shortcut:e.shortcut})]})},LH=Y({name:"toggleLinearEditor",category:mt.elements,label:(e,t,a)=>a.scene.getSelectedElements({selectedElementIds:t.selectedElementIds})[0]?.type==="arrow"?"labels.lineEditor.editArrow":"labels.lineEditor.edit",keywords:["line"],trackEvent:{category:"element"},predicate:(e,t,a,n)=>{let i=n.scene.getSelectedElements(t);return!!(!t.editingLinearElement&&i.length===1&&Ke(i[0])&&!me(i[0]))},perform(e,t,a,n){let i=n.scene.getSelectedElements({selectedElementIds:t.selectedElementIds,includeBoundTextElement:!0})[0],r=t.editingLinearElement?.elementId===i.id?null:new ne(i);return{appState:{...t,editingLinearElement:r},captureUpdate:L.IMMEDIATELY}},PanelComponent:({appState:e,updateData:t,app:a})=>{let n=a.scene.getSelectedElements({selectedElementIds:e.selectedElementIds})[0],i=w(n.type==="arrow"?"labels.lineEditor.editArrow":"labels.lineEditor.edit");return(0,n8.jsx)(he,{type:"button",icon:yC,title:i,"aria-label":i,onClick:()=>t(null)})}}),i8=Y({name:"searchMenu",icon:cl,keywords:["search","find"],label:"search.title",viewMode:!0,trackEvent:{category:"search_menu",action:"toggle",predicate:e=>e.gridModeEnabled},perform(e,t,a,n){if(t.openSidebar?.name===ii.name&&t.openSidebar.tab===_o){let i=n.excalidrawContainerValue.container?.querySelector(`.${To.SEARCH_MENU_INPUT_WRAPPER} input`);return i?.matches(":focus")?{appState:{...t,openSidebar:null},captureUpdate:L.EVENTUALLY}:(i?.focus(),i?.select(),!1)}return{appState:{...t,openSidebar:{name:ii.name,tab:_o},openDialog:null},captureUpdate:L.EVENTUALLY}},checked:e=>e.gridModeEnabled,predicate:(e,t,a)=>a.gridModeEnabled===void 0,keyTest:e=>e[M.CTRL_OR_CMD]&&e.key===M.F}),RH=Y({name:"cropEditor",label:"helpDialog.cropStart",icon:H0,viewMode:!0,trackEvent:{category:"menu"},keywords:["image","crop"],perform(e,t,a,n){let i=n.scene.getSelectedElements({selectedElementIds:t.selectedElementIds,includeBoundTextElement:!0})[0];return{appState:{...t,isCropping:!1,croppingElementId:i.id},captureUpdate:L.IMMEDIATELY}},predicate:(e,t,a,n)=>{let i=n.scene.getSelectedElements(t);return!!(!t.croppingElementId&&i.length===1&&tt(i[0]))},PanelComponent:({appState:e,updateData:t,app:a})=>{let n=w("helpDialog.cropStart");return(0,r8.jsx)(he,{type:"button",icon:H0,title:n,"aria-label":n,onClick:()=>t(null)})}}),ig=class{constructor(e=!0,t=!0){this.isUndoStackEmpty=e,this.isRedoStackEmpty=t}},zM=class hm{constructor(){A(this,"onHistoryChangedEmitter",new ji),A(this,"undoStack",[]),A(this,"redoStack",[])}get isUndoStackEmpty(){return this.undoStack.length===0}get isRedoStackEmpty(){return this.redoStack.length===0}clear(){this.undoStack.length=0,this.redoStack.length=0}record(t,a){let n=OH.create(a,t);n.isEmpty()||(this.undoStack.push(n.inverse()),n.elementsChange.isEmpty()||(this.redoStack.length=0),this.onHistoryChangedEmitter.trigger(new ig(this.isUndoStackEmpty,this.isRedoStackEmpty)))}undo(t,a,n){return this.perform(t,a,n,()=>hm.pop(this.undoStack),i=>hm.push(this.redoStack,i,t))}redo(t,a,n){return this.perform(t,a,n,()=>hm.pop(this.redoStack),i=>hm.push(this.undoStack,i,t))}perform(t,a,n,i,r){try{let l=i();if(l===null)return;let o=t,d=a,h=!1;for(;l;){try{[o,d,h]=l.applyTo(o,d,n)}finally{r(l)}if(h)break;l=i()}return[o,d]}finally{this.onHistoryChangedEmitter.trigger(new ig(this.isUndoStackEmpty,this.isRedoStackEmpty))}}static pop(t){if(!t.length)return null;let a=t.pop();return a!==void 0?a:null}static push(t,a,n){let i=a.inverse().applyLatestChanges(n);return t.push(i)}},OH=class Jf{constructor(t,a){this.appStateChange=t,this.elementsChange=a}static create(t,a){return new Jf(t,a)}inverse(){return new Jf(this.appStateChange.inverse(),this.elementsChange.inverse())}applyTo(t,a,n){let[i,r]=this.elementsChange.applyTo(t,n.elements),[l,o]=this.appStateChange.applyTo(a,i);return[i,l,r||o]}applyLatestChanges(t){let a=this.elementsChange.applyLatestChanges(t);return Jf.create(this.appStateChange,a)}isEmpty(){return this.appStateChange.isEmpty()&&this.elementsChange.isEmpty()}},l8=(e,t)=>{let[a,n]=(0,Ug.useState)(t);return(0,Ug.useEffect)(()=>{let i=e.on(r=>{n(r)});return()=>{i()}},[e]),a},o8=(e,t,a)=>{if(!t.multiElement&&!t.resizingElement&&!t.editingTextElement&&!t.newElement&&!t.selectedElementsAreBeingDragged&&!t.selectionElement&&!e.flowChartCreator.isCreatingChart){let n=a();if(!n)return{captureUpdate:L.EVENTUALLY};let[i,r]=n,l=Array.from(i.values());return{appState:r,elements:l,captureUpdate:L.NEVER}}return{captureUpdate:L.EVENTUALLY}},zH=(e,t)=>({name:"undo",label:"buttons.undo",icon:p0,trackEvent:{category:"history"},viewMode:!1,perform:(a,n,i,r)=>o8(r,n,()=>e.undo(Ie(a),n,t.snapshot)),keyTest:a=>a[M.CTRL_OR_CMD]&&Mp(a,M.Z)&&!a.shiftKey,PanelComponent:({updateData:a,data:n})=>{let{isUndoStackEmpty:i}=l8(e.onHistoryChangedEmitter,new ig(e.isUndoStackEmpty,e.isRedoStackEmpty));return(0,uw.jsx)(he,{type:"button",icon:p0,"aria-label":w("buttons.undo"),onClick:a,size:n?.size||"medium",disabled:i,"data-testid":"button-undo"})}}),BH=(e,t)=>({name:"redo",label:"buttons.redo",icon:f0,trackEvent:{category:"history"},viewMode:!1,perform:(a,n,i,r)=>o8(r,n,()=>e.redo(Ie(a),n,t.snapshot)),keyTest:a=>a[M.CTRL_OR_CMD]&&a.shiftKey&&Mp(a,M.Z)||Ov&&a.ctrlKey&&!a.shiftKey&&Mp(a,M.Y),PanelComponent:({updateData:a,data:n})=>{let{isRedoStackEmpty:i}=l8(e.onHistoryChangedEmitter,new ig(e.isUndoStackEmpty,e.isRedoStackEmpty));return(0,uw.jsx)(he,{type:"button",icon:f0,"aria-label":w("buttons.redo"),onClick:a,size:n?.size||"medium",disabled:i,"data-testid":"button-redo"})}}),lx=(e,t,a,n,i,r)=>{if(e.trackEvent)try{typeof e.trackEvent=="object"&&(!e.trackEvent.predicate||e.trackEvent.predicate(a,n,r))&&Oe(e.trackEvent.category,e.trackEvent.action||e.name,`${t} (${i.device.editor.isMobile?"mobile":"desktop"})`)}catch(l){console.error("error while logging action:",l)}},UH=class{constructor(e,t,a,n){A(this,"actions",{}),A(this,"updater"),A(this,"getAppState"),A(this,"getElementsIncludingDeleted"),A(this,"app"),A(this,"renderAction",(i,r)=>{let l=this.app.props.UIOptions.canvasActions;if(this.actions[i]&&"PanelComponent"in this.actions[i]&&(!(i in l)||l[i])){let o=this.actions[i],d=o.PanelComponent;d.displayName="PanelComponent";let h=this.getElementsIncludingDeleted(),s=this.getAppState(),c=u=>{lx(o,"ui",s,h,this.app,u),this.updater(o.perform(this.getElementsIncludingDeleted(),this.getAppState(),u,this.app))};return(0,s8.jsx)(d,{elements:this.getElementsIncludingDeleted(),appState:this.getAppState(),updateData:c,appProps:this.app.props,app:this.app,data:r})}return null}),A(this,"isActionEnabled",i=>{let r=this.getElementsIncludingDeleted(),l=this.getAppState();return!i.predicate||i.predicate(r,l,this.app.props,this.app)}),this.updater=i=>{if(sp(i))i.then(r=>e(r));else return e(i)},this.getAppState=t,this.getElementsIncludingDeleted=a,this.app=n}registerAction(e){this.actions[e.name]=e}registerAll(e){e.forEach(t=>this.registerAction(t))}handleKeyDown(e){let t=this.app.props.UIOptions.canvasActions,a=Object.values(this.actions).sort((o,d)=>(d.keyPriority||0)-(o.keyPriority||0)).filter(o=>(o.name in t?t[o.name]:!0)&&o.keyTest&&o.keyTest(e,this.getAppState(),this.getElementsIncludingDeleted(),this.app));if(a.length!==1)return a.length>1&&console.warn("Canceling as multiple actions match this shortcut",a),!1;let n=a[0];if(this.getAppState().viewModeEnabled&&n.viewMode!==!0)return!1;let i=this.getElementsIncludingDeleted(),r=this.getAppState();return lx(n,"keyboard",r,i,this.app,null),e.preventDefault(),e.stopPropagation(),this.updater(a[0].perform(i,r,null,this.app)),!0}executeAction(e,t="api",a=null){let n=this.getElementsIncludingDeleted(),i=this.getAppState();lx(e,t,i,n,this.app,a),this.updater(e.perform(n,i,a,this.app))}},BM=e=>{let t=Array.from(e.values());return{x:PM(t,a=>a.x)/t.length,y:PM(t,a=>a.y)/t.length}},UM=([e,t])=>Math.hypot(e.x-t.x,e.y-t.y),PM=(e,t)=>e.reduce((a,n)=>a+t(n),0),PH=({children:e,left:t,top:a,onCloseRequest:n,fitInViewport:i=!1,offsetLeft:r=0,offsetTop:l=0,viewportWidth:o=window.innerWidth,viewportHeight:d=window.innerHeight})=>{let h=(0,jl.useRef)(null);(0,jl.useEffect)(()=>{let c=h.current;if(!c)return;c.contains(document.activeElement)||c.focus();let u=m=>{if(m.key===M.TAB){let p=cp(c),{activeElement:f}=document,y=p.findIndex(g=>g===f);f===c?(m.shiftKey?p[p.length-1]?.focus():p[0].focus(),m.preventDefault(),m.stopImmediatePropagation()):y===0&&m.shiftKey?(p[p.length-1]?.focus(),m.preventDefault(),m.stopImmediatePropagation()):y===p.length-1&&!m.shiftKey&&(p[0]?.focus(),m.preventDefault(),m.stopImmediatePropagation())}};return c.addEventListener("keydown",u),()=>c.removeEventListener("keydown",u)},[]);let s=(0,jl.useRef)(null);return(0,jl.useLayoutEffect)(()=>{if(i&&h.current&&a!=null&&t!=null){let c=h.current,{width:u,height:m}=c.getBoundingClientRect();if(s.current?.top===a&&s.current?.left===t)return;s.current={top:a,left:t},u>=o?(c.style.width=`${o}px`,c.style.left="0px",c.style.overflowX="scroll"):t+u-r>o?c.style.left=`${o-u-10}px`:c.style.left=`${t}px`,m>=d?(c.style.height=`${d-20}px`,c.style.top="10px",c.style.overflowY="scroll"):a+m-l>d?c.style.top=`${d-m}px`:c.style.top=`${a}px`}},[a,t,i,o,d,r,l]),(0,jl.useEffect)(()=>{if(n){let c=u=>{h.current?.contains(u.target)||(0,c8.unstable_batchedUpdates)(()=>n(u))};return document.addEventListener("pointerdown",c,!1),()=>document.removeEventListener("pointerdown",c,!1)}},[n]),(0,d8.jsx)("div",{className:"popover",ref:h,tabIndex:-1,children:e})},Rt="separator",jH=u8.default.memo(({actionManager:e,items:t,top:a,left:n,onClose:i})=>{let r=Fm(),l=Gg(),o=t.reduce((d,h)=>(h&&(h===Rt||!h.predicate||h.predicate(l,r,e.app.props,e.app))&&d.push(h),d),[]);return(0,Dr.jsx)(PH,{onCloseRequest:()=>{i()},top:a,left:n,fitInViewport:!0,offsetLeft:r.offsetLeft,offsetTop:r.offsetTop,viewportWidth:r.width,viewportHeight:r.height,children:(0,Dr.jsx)("ul",{className:"context-menu",onContextMenu:d=>d.preventDefault(),children:o.map((d,h)=>{if(d===Rt)return!o[h-1]||o[h-1]===Rt?null:(0,Dr.jsx)("hr",{className:"context-menu-item-separator"},h);let s=d.name,c="";return d.label&&(typeof d.label=="function"?c=w(d.label(l,r,e.app)):c=w(d.label)),(0,Dr.jsx)("li",{"data-testid":s,onClick:()=>{i(()=>{e.executeAction(d,"contextMenu")})},children:(0,Dr.jsxs)("button",{type:"button",className:U("context-menu-item",{dangerous:s==="deleteSelectedElements",checkmark:d.checked?.(r)}),children:[(0,Dr.jsx)("div",{className:"context-menu-item__label",children:c}),(0,Dr.jsx)("kbd",{className:"context-menu-item__shortcut",children:s?Ea(s):""})]})},h)})})})}),HH=({children:e,onClose:t})=>{let[a,n]=(0,Pg.useState)(!!e),{container:i}=ar(),r=Pg.default.useCallback(()=>{n(!1),t&&t(),i?.focus()},[t,i]);return(0,Pc.jsx)(Pc.Fragment,{children:a&&(0,Pc.jsx)(Ci,{size:"small",onCloseRequest:r,title:w("errorDialog.title"),children:(0,Pc.jsx)("div",{style:{whiteSpace:"pre-wrap"},children:e})})})},h8=function({onChange:e,value:t,choices:a,name:n}){return(0,km.jsx)("div",{className:"RadioGroup",children:a.map(i=>(0,km.jsxs)("div",{className:U("RadioGroup__choice",{active:i.value===t}),title:i.ariaLabel,children:[(0,km.jsx)("input",{name:n,type:"radio",checked:i.value===t,onChange:()=>e(i.value),"aria-label":i.ariaLabel}),i.label]},String(i.value)))})},Ff=({title:e,name:t,checked:a,onChange:n,disabled:i=!1})=>(0,Lx.jsx)("div",{className:U("Switch",{toggled:a,disabled:i}),children:(0,Lx.jsx)("input",{name:t,id:t,title:e,type:"checkbox",checked:a,disabled:i,onChange:()=>n(!a),onKeyDown:r=>{r.key===" "&&n(!a)}})}),bm=(0,jg.forwardRef)(({children:e,icon:t,onClick:a,label:n,variant:i="filled",color:r="primary",size:l="medium",fullWidth:o,className:d,status:h},s)=>{let[c,u]=(0,jg.useState)(!1),m=async f=>{let y=a?.(f);if(sp(y)){let g=window.setTimeout(()=>{u(!0)},50);try{await y}catch(b){if(b instanceof kp)console.warn(b);else throw b}finally{clearTimeout(g),u(!1)}}},p=c?"loading":h;return r=p==="success"?"success":r,(0,es.jsx)("button",{className:U("ExcButton",`ExcButton--color-${r}`,`ExcButton--variant-${i}`,`ExcButton--size-${l}`,`ExcButton--status-${p}`,{"ExcButton--fullWidth":o},d),onClick:m,type:"button","aria-label":n,ref:s,disabled:p==="loading"||p==="success",children:(0,es.jsxs)("div",{className:"ExcButton__contents",children:[p==="loading"?(0,es.jsx)(zr,{className:"ExcButton__statusIcon"}):p==="success"&&(0,es.jsx)("div",{className:"ExcButton__statusIcon",children:Q5}),t&&(0,es.jsx)("div",{className:"ExcButton__icon","aria-hidden":!0,children:t}),i!=="icon"&&(e??n)]})})}),FH=2e3,YH=()=>{let[e,t]=(0,qc.useState)(null),a=(0,qc.useRef)(0),n=()=>{clearTimeout(a.current),t("success"),a.current=window.setTimeout(()=>{t(null)},FH)},i=(0,qc.useCallback)(()=>{t(null)},[]);return{copyStatus:e,resetCopyStatus:i,onCopy:n}},GH="filter"in document.createElement("canvas").getContext("2d"),$H=()=>(0,ge.jsxs)("div",{children:[(0,ge.jsx)("h3",{children:w("canvasError.cannotShowPreview")}),(0,ge.jsx)("p",{children:(0,ge.jsx)("span",{children:w("canvasError.canvasTooBig")})}),(0,ge.jsxs)("em",{children:["(",w("canvasError.canvasTooBigTip"),")"]})]}),VH=({appStateSnapshot:e,elementsSnapshot:t,files:a,actionManager:n,onExportImage:i,name:r})=>{let l=bt(t,e),[o,d]=(0,Za.useState)(r),[h,s]=(0,Za.useState)(l),[c,u]=(0,Za.useState)(e.exportBackground),[m,p]=(0,Za.useState)(e.exportWithDarkMode),[f,y]=(0,Za.useState)(e.exportEmbedScene),[g,b]=(0,Za.useState)(e.exportScale),v=(0,Za.useRef)(null),[x,E]=(0,Za.useState)(null),{onCopy:S,copyStatus:C,resetCopyStatus:_}=YH();(0,Za.useEffect)(()=>{_()},[o,c,m,g,f,_]);let{exportedElements:D,exportingFrame:k}=Tg(t,e,h);return(0,Za.useEffect)(()=>{let I=v.current;if(!I)return;let j=I.offsetWidth,z=I.offsetHeight;j&&$p({elements:D,appState:{...e,name:o,exportBackground:c,exportWithDarkMode:m,exportScale:g,exportEmbedScene:f},files:a,exportPadding:au,maxWidthOrHeight:Math.max(j,z),exportingFrame:k}).then(G=>(E(null),oc(G).then(()=>{I.replaceChildren(G)}).catch(O=>{throw O.name==="CANVAS_POSSIBLY_TOO_BIG"?new Error(w("canvasError.canvasTooBig")):O}))).catch(G=>{console.error(G),E(G)})},[e,a,D,k,o,c,m,g,f]),(0,ge.jsxs)("div",{className:"ImageExportModal",children:[(0,ge.jsx)("h3",{children:w("imageExportDialog.header")}),(0,ge.jsxs)("div",{className:"ImageExportModal__preview",children:[(0,ge.jsx)("div",{className:"ImageExportModal__preview__canvas",ref:v,children:x&&(0,ge.jsx)($H,{})}),(0,ge.jsx)("div",{className:"ImageExportModal__preview__filename",children:!Zh&&(0,ge.jsx)("input",{type:"text",className:"TextInput",value:o,style:{width:"30ch"},onChange:I=>{d(I.target.value),n.executeAction(PP,"ui",I.target.value)}})})]}),(0,ge.jsxs)("div",{className:"ImageExportModal__settings",children:[(0,ge.jsx)("h3",{children:w("imageExportDialog.header")}),l&&(0,ge.jsx)(lm,{label:w("imageExportDialog.label.onlySelected"),name:"exportOnlySelected",children:(0,ge.jsx)(Ff,{name:"exportOnlySelected",checked:h,onChange:I=>{s(I)}})}),(0,ge.jsx)(lm,{label:w("imageExportDialog.label.withBackground"),name:"exportBackgroundSwitch",children:(0,ge.jsx)(Ff,{name:"exportBackgroundSwitch",checked:c,onChange:I=>{u(I),n.executeAction(HP,"ui",I)}})}),GH&&(0,ge.jsx)(lm,{label:w("imageExportDialog.label.darkMode"),name:"exportDarkModeSwitch",children:(0,ge.jsx)(Ff,{name:"exportDarkModeSwitch",checked:m,onChange:I=>{p(I),n.executeAction(FP,"ui",I)}})}),(0,ge.jsx)(lm,{label:w("imageExportDialog.label.embedScene"),tooltip:w("imageExportDialog.tooltip.embedScene"),name:"exportEmbedSwitch",children:(0,ge.jsx)(Ff,{name:"exportEmbedSwitch",checked:f,onChange:I=>{y(I),n.executeAction(fD,"ui",I)}})}),(0,ge.jsx)(lm,{label:w("imageExportDialog.label.scale"),name:"exportScale",children:(0,ge.jsx)(h8,{name:"exportScale",value:g,onChange:I=>{b(I),n.executeAction(jP,"ui",I)},choices:Yv.map(I=>({value:I,label:`${I}\xD7`}))})}),(0,ge.jsxs)("div",{className:"ImageExportModal__settings__buttons",children:[(0,ge.jsx)(bm,{className:"ImageExportModal__settings__buttons__button",label:w("imageExportDialog.title.exportToPng"),onClick:()=>i(tp.png,D,{exportingFrame:k}),icon:L0,children:w("imageExportDialog.button.exportToPng")}),(0,ge.jsx)(bm,{className:"ImageExportModal__settings__buttons__button",label:w("imageExportDialog.title.exportToSvg"),onClick:()=>i(tp.svg,D,{exportingFrame:k}),icon:L0,children:w("imageExportDialog.button.exportToSvg")}),(Gp||Gs)&&(0,ge.jsx)(bm,{className:"ImageExportModal__settings__buttons__button",label:w("imageExportDialog.title.copyPngToClipboard"),status:C,onClick:async()=>{await i(tp.clipboard,D,{exportingFrame:k}),S()},icon:Cp,children:w("imageExportDialog.button.copyPngToClipboard")})]})]})]})},lm=({label:e,children:t,tooltip:a,name:n})=>(0,ge.jsxs)("div",{className:"ImageExportModal__settings__setting",title:e,children:[(0,ge.jsxs)("label",{htmlFor:n,className:"ImageExportModal__settings__setting__label",children:[e,a&&(0,ge.jsx)(ms,{label:a,long:!0,children:q5})]}),(0,ge.jsx)("div",{className:"ImageExportModal__settings__setting__content",children:t})]}),XH=({elements:e,appState:t,files:a,actionManager:n,onExportImage:i,onCloseRequest:r,name:l})=>{let[{appStateSnapshot:o,elementsSnapshot:d}]=(0,Za.useState)(()=>({appStateSnapshot:zi(t),elementsSnapshot:zi(e)}));return(0,ge.jsx)(Ci,{onCloseRequest:r,size:"wide",title:!1,children:(0,ge.jsx)(VH,{elementsSnapshot:d,appStateSnapshot:o,files:a,actionManager:n,onExportImage:i,name:l})})},f8=({children:e,side:t,className:a})=>(0,p8.jsx)("div",{className:U("FixedSideContainer",`FixedSideContainer_side_${t}`,a),children:e}),jc=100,Hc=100,jM=e=>{switch(e){case M.ARROW_UP:return"up";case M.ARROW_DOWN:return"down";case M.ARROW_RIGHT:return"right";case M.ARROW_LEFT:return"left";default:return"right"}},g8=(e,t,a,n)=>{let i=[...a.values()].reduce((r,l)=>{let o;if(me(l)&&(o=l[e==="predecessors"?"startBinding":"endBinding"])&&l[e==="predecessors"?"endBinding":"startBinding"]?.elementId===t.id){let d=a.get(o.elementId);if(!d)return r;ll(hp(d),"not an ExcalidrawBindableElement");let h=e==="predecessors"?l.points[l.points.length-1]:[0,0],s=YC(t,LC(t),[h[0]+l.x,h[1]+l.y]);r.push({relative:d,heading:s})}return r},[]);switch(n){case"up":return i.filter(r=>wu(r.heading,FC)).map(r=>r.relative);case"down":return i.filter(r=>wu(r.heading,jC)).map(r=>r.relative);case"right":return i.filter(r=>wu(r.heading,PC)).map(r=>r.relative);case"left":return i.filter(r=>wu(r.heading,HC)).map(r=>r.relative)}},Rx=(e,t,a)=>g8("successors",e,t,a),Ox=(e,t,a)=>g8("predecessors",e,t,a),ZH=(e,t,a)=>{let n=Hc+e.width;if(a==="up"||a==="down"){let o=jc+e.height,d=e.x,h=e.x+e.width;if(t.every(s=>s.x+s.width<d||s.x>h))return{x:0,y:o*(a==="up"?-1:1)}}else if(a==="right"||a==="left"){let o=e.y,d=e.y+e.height;if(t.every(h=>h.y+h.height<o||h.y>d))return{x:(Hc+e.width)*(a==="left"?-1:1),y:0}}if(a==="up"||a==="down"){let o=jc+e.height,d=(t.length,o),h=t.length===0?0:(t.length+1)%2===0?(t.length+1)/2*n:t.length/2*n*-1;return a==="up"?{x:h,y:d*-1}:{x:h,y:d}}let i=jc+e.height,r=(t.length,Hc+e.width),l=t.length===0?0:(t.length+1)%2===0?(t.length+1)/2*i:t.length/2*i*-1;return a==="left"?{x:r*-1,y:l}:{x:r,y:l}},KH=(e,t,a,n)=>{let i=Rx(e,t,n),r=Ox(e,t,n),l=ZH(e,[...i,...r],n),o=pl({type:e.type,x:e.x+l.x,y:e.y+l.y,width:e.width,height:e.height,roundness:e.roundness,roughness:e.roughness,backgroundColor:e.backgroundColor,strokeColor:e.strokeColor,strokeWidth:e.strokeWidth,opacity:e.opacity,fillStyle:e.fillStyle,strokeStyle:e.strokeStyle});ll(hu(o),"not an ExcalidrawFlowchartNodeElement");let d=b8(e,o,t,n,a);return{nextNode:o,bindingArrow:d}},qH=(e,t,a,n,i)=>{let r=[];for(let l=0;l<i;l++){let o,d;if(n==="left"||n==="right"){let c=jc*(i-1)+i*e.height,u=e.y+e.height/2-c/2,m=Hc+e.width;n==="left"&&(m*=-1),o=e.x+m;let p=(jc+e.height)*l;d=u+p}else{let c=Hc*(i-1)+i*e.width,u=e.x+e.width/2-c/2,m=jc+e.height;n==="up"&&(m*=-1),d=e.y+m;let p=(Hc+e.width)*l;o=u+p}let h=pl({type:e.type,x:o,y:d,width:e.width,height:e.height,roundness:e.roundness,roughness:e.roughness,backgroundColor:e.backgroundColor,strokeColor:e.strokeColor,strokeWidth:e.strokeWidth,opacity:e.opacity,fillStyle:e.fillStyle,strokeStyle:e.strokeStyle});ll(hu(h),"not an ExcalidrawFlowchartNodeElement");let s=b8(e,h,t,n,a);r.push(h),r.push(s)}return r},b8=(e,t,a,n,i)=>{let r,l;switch(n){case"up":{r=e.x+e.width/2,l=e.y-6;break}case"down":{r=e.x+e.width/2,l=e.y+e.height+6;break}case"right":{r=e.x+e.width+6,l=e.y+e.height/2;break}case"left":{r=e.x-6,l=e.y+e.height/2;break}}let o,d;switch(n){case"up":{o=t.x+t.width/2-r,d=t.y+t.height-l+6;break}case"down":{o=t.x+t.width/2-r,d=t.y-l-6;break}case"right":{o=t.x-r-6,d=t.y-l+t.height/2;break}case"left":{o=t.x+t.width-r+6,d=t.y-l+t.height/2;break}}let h=jp({type:"arrow",x:r,y:l,startArrowhead:null,endArrowhead:i.currentItemEndArrowhead,strokeColor:e.strokeColor,strokeStyle:e.strokeStyle,strokeWidth:e.strokeWidth,opacity:e.opacity,roughness:e.roughness,points:[Z(0,0),Z(o,d)],elbowed:!0});zo(h,e,"start",a),zo(h,t,"end",a);let s=new Map;s.set(e.id,e),s.set(t.id,t),s.set(h.id,h),ne.movePoints(h,[{index:1,point:h.points[1]}]);let c=VT(h,up(new Map([...a.entries(),[e.id,e],[t.id,t],[h.id,h]])),{points:h.points});return{...h,...c}},QH=class{constructor(){A(this,"isExploring",!1),A(this,"sameLevelNodes",[]),A(this,"sameLevelIndex",0),A(this,"direction",null),A(this,"visitedNodes",new Set)}clear(){this.isExploring=!1,this.sameLevelNodes=[],this.sameLevelIndex=0,this.direction=null,this.visitedNodes.clear()}exploreByDirection(e,t,a){if(!hp(e))return null;if(a!==this.direction&&this.clear(),this.visitedNodes.has(e.id)||this.visitedNodes.add(e.id),this.isExploring&&a===this.direction&&this.sameLevelNodes.length>1)return this.sameLevelIndex=(this.sameLevelIndex+1)%this.sameLevelNodes.length,this.sameLevelNodes[this.sameLevelIndex].id;let n=[...Rx(e,t,a),...Ox(e,t,a)];if(n.length>0)return this.sameLevelIndex=0,this.isExploring=!0,this.sameLevelNodes=n,this.direction=a,this.visitedNodes.add(n[0].id),n[0].id;if(a===this.direction||!this.isExploring){this.isExploring||this.visitedNodes.add(e.id);let i=["up","right","down","left"].filter(r=>r!==a).map(r=>[...Rx(e,t,r),...Ox(e,t,r)]).flat().filter(r=>!this.visitedNodes.has(r.id));for(let r of i)if(!this.visitedNodes.has(r.id))return this.visitedNodes.add(r.id),this.isExploring=!0,this.direction=a,r.id}return null}},WH=class{constructor(){A(this,"isCreatingChart",!1),A(this,"numberOfNodes",0),A(this,"direction","right"),A(this,"pendingNodes",null)}createNodes(e,t,a,n){if(n!==this.direction){let{nextNode:i,bindingArrow:r}=KH(e,t,a,n);this.numberOfNodes=1,this.isCreatingChart=!0,this.direction=n,this.pendingNodes=[i,r]}else{this.numberOfNodes+=1;let i=qH(e,t,a,n,this.numberOfNodes);this.isCreatingChart=!0,this.direction=n,this.pendingNodes=i}if(e.frameId){let i=t.get(e.frameId);ll(i&&I3(i),"not an ExcalidrawFrameElement"),i&&this.pendingNodes.every(r=>e_([r],i,t)||D1(r,i,t))&&(this.pendingNodes=this.pendingNodes.map(r=>$(r,{frameId:e.frameId},!1)))}}clear(){this.isCreatingChart=!1,this.pendingNodes=null,this.direction=null,this.numberOfNodes=0}},JH=(e,t)=>{for(let[,a]of t)if(a.type==="arrow"&&(a.startBinding?.elementId===e.id||a.endBinding?.elementId===e.id))return!0;return!1},eF=({appState:e,isMobile:t,device:a,app:n})=>{let{activeTool:i,isResizing:r,isRotating:l,lastPointerDownWith:o}=e,d=e.multiElement!==null;if(e.openSidebar?.name===ii.name&&e.openSidebar.tab===_o&&e.searchMatches?.length)return w("hints.dismissSearch");if(e.openSidebar&&!a.editor.canFitSidebar)return null;if(Ri(e))return w("hints.eraserRevert");if(i.type==="arrow"||i.type==="line")return d?w("hints.linearElementMulti"):i.type==="arrow"?w("hints.arrowTool",{arrowShortcut:B("A")}):w("hints.linearElement");if(i.type==="freedraw")return w("hints.freeDraw");if(i.type==="text")return w("hints.text");if(i.type==="embeddable")return w("hints.embeddable");if(e.activeTool.type==="image"&&e.pendingImageElementId)return w("hints.placeImage");let h=n.scene.getSelectedElements(e);if(r&&o==="mouse"&&h.length===1){let s=h[0];return Ke(s)&&s.points.length===2?w("hints.lockAngle"):tt(s)?w("hints.resizeImage"):w("hints.resize")}if(l&&o==="mouse")return w("hints.rotate");if(h.length===1&&ae(h[0]))return w("hints.text_selected");if(e.editingTextElement)return w("hints.text_editing");if(e.croppingElementId)return w("hints.leaveCropEditor");if(h.length===1&&tt(h[0]))return w("hints.enterCropEditor");if(i.type==="selection"){if(e.selectionElement&&!h.length&&!e.editingTextElement&&!e.editingLinearElement)return w("hints.deepBoxSelect");if(Tu(n)&&e.selectedElementsAreBeingDragged)return w("hints.disableSnapping");if(!h.length&&!t)return w("hints.canvasPanning");if(h.length===1){if(Ke(h[0]))return e.editingLinearElement?e.editingLinearElement.selectedPointsIndices?w("hints.lineEditor_pointSelected"):w("hints.lineEditor_nothingSelected"):w("hints.lineEditor_info");if(!e.newElement&&!e.selectedElementsAreBeingDragged&&Io(h[0]))return hu(h[0])?JH(h[0],n.scene.getNonDeletedElementsMap())?[w("hints.bindTextToElement"),w("hints.createFlowchart")]:[w("hints.bindTextToElement"),w("hints.createFlowchart")]:w("hints.bindTextToElement")}}return null},v8=({appState:e,isMobile:t,device:a,app:n})=>{let i=eF({appState:e,isMobile:t,device:a,app:n});if(!i)return null;let r=Array.isArray(i)?i.map(l=>B(l).replace(/\. ?$/,"")).join(". "):B(i);return(0,zx.jsx)("div",{className:"HintViewer",children:(0,zx.jsx)("span",{children:r})})},tF="medium",HM={CHECKED:gp,UNCHECKED:fu},y8=e=>(0,Mm.jsxs)("label",{className:U("ToolIcon ToolIcon__lock",`ToolIcon_size_${tF}`,{"is-mobile":e.isMobile}),title:`${e.title} \u2014 Q`,children:[(0,Mm.jsx)("input",{className:"ToolIcon_type_checkbox",type:"checkbox",name:e.name,onChange:e.onChange,checked:e.checked,"aria-label":e.title,"data-testid":"toolbar-lock"}),(0,Mm.jsx)("div",{className:"ToolIcon__icon",children:e.checked?HM.CHECKED:HM.UNCHECKED})]}),Am=({heading:e,children:t,...a})=>{let{id:n}=ar(),i=(0,ps.jsx)("h2",{className:"visually-hidden",id:`${n}-${e}-title`,children:w(`headings.${e}`)});return(0,ps.jsx)("section",{...a,"aria-labelledby":`${n}-${e}-title`,children:typeof t=="function"?t(i):(0,ps.jsxs)(ps.Fragment,{children:[i,t]})})},Xi=4,Ll=6,aF="rgba(0,0,0,0.3)",nF=(e,t,a,n)=>{if(!e.length)return{horizontal:null,vertical:null};let[i,r,l,o]=gt(e),d=t/n.zoom.value,h=a/n.zoom.value,s=t-d,c=a-h,u={top:parseInt(cu("sat"))||0,bottom:parseInt(cu("sab"))||0,left:parseInt(cu("sal"))||0,right:parseInt(cu("sar"))||0},m=vm().rtl,p=-n.scrollX+s/2+u.left,f=-n.scrollY+c/2+u.top,y=p+d-u.right,g=f+h-u.bottom,b=Math.min(i,p),v=Math.min(r,f),x=Math.max(l,y),E=Math.max(o,g);return{horizontal:p===b&&y===x?null:{x:Math.max(u.left,Xi)+(p-b)/(x-b)*t,y:a-Ll-Math.max(Xi,u.bottom),width:(y-p)/(x-b)*t-Math.max(Xi*2,u.left+u.right),height:Ll},vertical:f===v&&g===E?null:{x:m?Math.max(u.left,Xi):t-Ll-Math.max(u.right,Xi),y:(f-v)/(E-v)*a+Math.max(u.top,Xi),width:Ll,height:(g-f)/(E-v)*a-Math.max(Xi*2,u.top+u.bottom)}}},FM=(e,t,a)=>{let[n,i]=[e.horizontal,e.vertical].map(r=>r!=null&&r.x<=t&&t<=r.x+r.width&&r.y<=a&&a<=r.y+r.height);return{isOverEither:n||i,isOverHorizontal:n,isOverVertical:i}},iF="medium",x8=e=>e.penDetected?(0,Dm.jsxs)("label",{className:U("ToolIcon ToolIcon__penMode",`ToolIcon_size_${iF}`,{"is-mobile":e.isMobile}),title:`${e.title}`,children:[(0,Dm.jsx)("input",{className:"ToolIcon_type_checkbox",type:"checkbox",name:e.name,onChange:e.onChange,checked:e.checked,"aria-label":e.title}),(0,Dm.jsx)("div",{className:"ToolIcon__icon",children:K3})]}):null,E8=e=>(0,w8.jsx)(he,{className:U("Shape",{fillable:!1}),type:"radio",icon:N0,name:"editor-current-shape",checked:e.checked,title:`${e.title} \u2014 H`,keyBindingLabel:e.isMobile?void 0:M.H.toLocaleUpperCase(),"aria-label":`${e.title} \u2014 H`,"aria-keyshortcuts":M.H,"data-testid":"toolbar-hand",onChange:()=>e.onChange?.()}),rF=({appState:e,elements:t,actionManager:a,setAppState:n,onLockToggle:i,onHandToolToggle:r,onPenModeToggle:l,renderTopRightUI:o,renderCustomStats:d,renderSidebars:h,device:s,renderWelcomeScreen:c,UIOptions:u,app:m})=>{let{WelcomeScreenCenterTunnel:p,MainMenuTunnel:f,DefaultSidebarTriggerTunnel:y}=Ua(),g=()=>(0,Me.jsxs)(f8,{side:"top",className:"App-top-bar",children:[c&&(0,Me.jsx)(p.Out,{}),(0,Me.jsx)(Am,{heading:"shapes",children:v=>(0,Me.jsx)(Hn.Col,{gap:4,align:"center",children:(0,Me.jsxs)(Hn.Row,{gap:1,className:"App-toolbar-container",children:[(0,Me.jsxs)(xi,{padding:1,className:"App-toolbar App-toolbar--mobile",children:[v,(0,Me.jsx)(Hn.Row,{gap:1,children:(0,Me.jsx)(WD,{appState:e,activeTool:e.activeTool,UIOptions:u,app:m})})]}),o&&o(!0,e),(0,Me.jsxs)("div",{className:"mobile-misc-tools-container",children:[!e.viewModeEnabled&&e.openDialog?.name!=="elementLinkSelector"&&(0,Me.jsx)(y.Out,{}),(0,Me.jsx)(x8,{checked:e.penMode,onChange:()=>l(null),title:w("toolBar.penMode"),isMobile:!0,penDetected:e.penDetected}),(0,Me.jsx)(y8,{checked:e.activeTool.locked,onChange:i,title:w("toolBar.lock"),isMobile:!0}),(0,Me.jsx)(E8,{checked:Vs(e),onChange:()=>r(),title:w("toolBar.hand"),isMobile:!0})]})]})})}),(0,Me.jsx)(v8,{appState:e,isMobile:!0,device:s,app:m})]}),b=()=>e.viewModeEnabled||e.openDialog?.name==="elementLinkSelector"?(0,Me.jsx)("div",{className:"App-toolbar-content",children:(0,Me.jsx)(f.Out,{})}):(0,Me.jsxs)("div",{className:"App-toolbar-content",children:[(0,Me.jsx)(f.Out,{}),a.renderAction("toggleEditMenu"),a.renderAction(e.multiElement?"finalize":"duplicateSelection"),a.renderAction("deleteSelectedElements"),(0,Me.jsxs)("div",{children:[a.renderAction("undo"),a.renderAction("redo")]})]});return(0,Me.jsxs)(Me.Fragment,{children:[h(),!e.viewModeEnabled&&e.openDialog?.name!=="elementLinkSelector"&&g(),(0,Me.jsx)("div",{className:"App-bottom-bar",style:{marginBottom:Ll+Xi*2,marginLeft:Ll+Xi*2,marginRight:Ll+Xi*2},children:(0,Me.jsxs)(xi,{padding:0,children:[e.openMenu==="shape"&&!e.viewModeEnabled&&e.openDialog?.name!=="elementLinkSelector"&&Kp(e,t)?(0,Me.jsx)(Am,{className:"App-mobile-menu",heading:"selectedShapeActions",children:(0,Me.jsx)(QD,{appState:e,elementsMap:m.scene.getNonDeletedElementsMap(),renderAction:a.renderAction,app:m})}):null,(0,Me.jsxs)("footer",{className:"App-toolbar",children:[b(),e.scrolledOutside&&!e.openMenu&&!e.openSidebar&&(0,Me.jsx)("button",{type:"button",className:"scroll-back-to-content",onClick:()=>{n(v=>({...Su(t,v)}))},children:w("buttons.scrollBackToContent")})]})]})})]})},YM=e=>{let t=(0,Yl.useRef)(null),[a,n]=(0,Yl.useState)(null);return(0,Yl.useLayoutEffect)(()=>{if(!e.spreadsheet)return;let i=KT(e.chartType,e.spreadsheet,0,0);n(i);let r,l=t.current;return(async()=>(r=await S1(i,{exportBackground:!1,viewBackgroundColor:ca.white},null,{skipInliningFonts:!0}),r.querySelector(".style-fonts")?.remove(),l.replaceChildren(),l.appendChild(r),e.selected&&l.parentNode.focus()))(),()=>{l.replaceChildren()}},[e.spreadsheet,e.chartType,e.selected]),(0,zl.jsx)("button",{type:"button",className:"ChartPreview",onClick:()=>{a&&e.onClick(e.chartType,a)},children:(0,zl.jsx)("div",{ref:t})})},lF=({setAppState:e,appState:t,onClose:a})=>{let{onInsertElements:n}=tr(),i=Yl.default.useCallback(()=>{a&&a()},[a]),r=(l,o)=>{n(o),Oe("paste","chart",l),e({currentChartType:l,pasteDialog:{shown:!1,data:null}})};return(0,zl.jsx)(Ci,{size:"small",onCloseRequest:i,title:w("labels.pasteCharts"),className:"PasteChartDialog",autofocus:!1,children:(0,zl.jsxs)("div",{className:"container",children:[(0,zl.jsx)(YM,{chartType:"bar",spreadsheet:t.pasteDialog.data,selected:t.currentChartType==="bar",onClick:r}),(0,zl.jsx)(YM,{chartType:"line",spreadsheet:t.pasteDialog.data,selected:t.currentChartType==="line",onClick:r})]})})},oF=()=>(0,F.jsxs)("div",{className:"HelpDialog__header",children:[(0,F.jsxs)("a",{className:"HelpDialog__btn",href:"https://docs.excalidraw.com",target:"_blank",rel:"noopener noreferrer",children:[(0,F.jsx)("div",{className:"HelpDialog__link-icon",children:u0}),w("helpDialog.documentation")]}),(0,F.jsxs)("a",{className:"HelpDialog__btn",href:"https://plus.excalidraw.com/blog",target:"_blank",rel:"noopener noreferrer",children:[(0,F.jsx)("div",{className:"HelpDialog__link-icon",children:u0}),w("helpDialog.blog")]}),(0,F.jsxs)("a",{className:"HelpDialog__btn",href:"https://github.com/excalidraw/excalidraw/issues",target:"_blank",rel:"noopener noreferrer",children:[(0,F.jsx)("div",{className:"HelpDialog__link-icon",children:m0}),w("helpDialog.github")]}),(0,F.jsxs)("a",{className:"HelpDialog__btn",href:"https://youtube.com/@excalidraw",target:"_blank",rel:"noopener noreferrer",children:[(0,F.jsx)("div",{className:"HelpDialog__link-icon",children:bC}),"YouTube"]})]}),sF=e=>(0,F.jsxs)(F.Fragment,{children:[(0,F.jsx)("h3",{children:e.title}),(0,F.jsx)("div",{className:"HelpDialog__islands-container",children:e.children})]}),ox=e=>(0,F.jsxs)("div",{className:`HelpDialog__island ${e.className}`,children:[(0,F.jsx)("h4",{className:"HelpDialog__island-title",children:e.caption}),(0,F.jsx)("div",{className:"HelpDialog__island-content",children:e.children})]});function*cF(e,t){let a=!0;for(let n of e)a||(yield t),a=!1,yield n}var dF=e=>e.replace(/\b[a-z]\b/,t=>t.toUpperCase()),K=({label:e,shortcuts:t,isOr:a=!0})=>{let n=t.map(i=>(i.endsWith("++")?[...i.slice(0,-2).split("+"),"+"]:i.split("+")).map(r=>(0,F.jsx)(uF,{children:dF(r)},r)));return(0,F.jsxs)("div",{className:"HelpDialog__shortcut",children:[(0,F.jsx)("div",{children:e}),(0,F.jsx)("div",{className:"HelpDialog__key-container",children:[...cF(n,a?w("helpDialog.or"):null)]})]})},uF=e=>(0,F.jsx)("kbd",{className:"HelpDialog__key",...e}),mF=({onClose:e})=>{let t=S8.default.useCallback(()=>{e&&e()},[e]);return(0,F.jsx)(F.Fragment,{children:(0,F.jsxs)(Ci,{onCloseRequest:t,title:w("helpDialog.title"),className:"HelpDialog",children:[(0,F.jsx)(oF,{}),(0,F.jsxs)(sF,{title:w("helpDialog.shortcuts"),children:[(0,F.jsxs)(ox,{className:"HelpDialog__island--tools",caption:w("helpDialog.tools"),children:[(0,F.jsx)(K,{label:w("toolBar.hand"),shortcuts:[M.H]}),(0,F.jsx)(K,{label:w("toolBar.selection"),shortcuts:[M.V,M[1]]}),(0,F.jsx)(K,{label:w("toolBar.rectangle"),shortcuts:[M.R,M[2]]}),(0,F.jsx)(K,{label:w("toolBar.diamond"),shortcuts:[M.D,M[3]]}),(0,F.jsx)(K,{label:w("toolBar.ellipse"),shortcuts:[M.O,M[4]]}),(0,F.jsx)(K,{label:w("toolBar.arrow"),shortcuts:[M.A,M[5]]}),(0,F.jsx)(K,{label:w("toolBar.line"),shortcuts:[M.L,M[6]]}),(0,F.jsx)(K,{label:w("toolBar.freedraw"),shortcuts:[M.P,M[7]]}),(0,F.jsx)(K,{label:w("toolBar.text"),shortcuts:[M.T,M[8]]}),(0,F.jsx)(K,{label:w("toolBar.image"),shortcuts:[M[9]]}),(0,F.jsx)(K,{label:w("toolBar.eraser"),shortcuts:[M.E,M[0]]}),(0,F.jsx)(K,{label:w("toolBar.frame"),shortcuts:[M.F]}),(0,F.jsx)(K,{label:w("toolBar.laser"),shortcuts:[M.K]}),(0,F.jsx)(K,{label:w("labels.eyeDropper"),shortcuts:[M.I,"Shift+S","Shift+G"]}),(0,F.jsx)(K,{label:w("helpDialog.editLineArrowPoints"),shortcuts:[B("CtrlOrCmd+Enter")]}),(0,F.jsx)(K,{label:w("helpDialog.editText"),shortcuts:[B("Enter")]}),(0,F.jsx)(K,{label:w("helpDialog.textNewLine"),shortcuts:[B("Enter"),B("Shift+Enter")]}),(0,F.jsx)(K,{label:w("helpDialog.textFinish"),shortcuts:[B("Esc"),B("CtrlOrCmd+Enter")]}),(0,F.jsx)(K,{label:w("helpDialog.curvedArrow"),shortcuts:["A",w("helpDialog.click"),w("helpDialog.click"),w("helpDialog.click")],isOr:!1}),(0,F.jsx)(K,{label:w("helpDialog.curvedLine"),shortcuts:["L",w("helpDialog.click"),w("helpDialog.click"),w("helpDialog.click")],isOr:!1}),(0,F.jsx)(K,{label:w("helpDialog.cropStart"),shortcuts:[w("helpDialog.doubleClick"),B("Enter")],isOr:!0}),(0,F.jsx)(K,{label:w("helpDialog.cropFinish"),shortcuts:[B("Enter"),B("Escape")],isOr:!0}),(0,F.jsx)(K,{label:w("toolBar.lock"),shortcuts:[M.Q]}),(0,F.jsx)(K,{label:w("helpDialog.preventBinding"),shortcuts:[B("CtrlOrCmd")]}),(0,F.jsx)(K,{label:w("toolBar.link"),shortcuts:[B("CtrlOrCmd+K")]})]}),(0,F.jsxs)(ox,{className:"HelpDialog__island--view",caption:w("helpDialog.view"),children:[(0,F.jsx)(K,{label:w("buttons.zoomIn"),shortcuts:[B("CtrlOrCmd++")]}),(0,F.jsx)(K,{label:w("buttons.zoomOut"),shortcuts:[B("CtrlOrCmd+-")]}),(0,F.jsx)(K,{label:w("buttons.resetZoom"),shortcuts:[B("CtrlOrCmd+0")]}),(0,F.jsx)(K,{label:w("helpDialog.zoomToFit"),shortcuts:["Shift+1"]}),(0,F.jsx)(K,{label:w("helpDialog.zoomToSelection"),shortcuts:["Shift+2"]}),(0,F.jsx)(K,{label:w("helpDialog.movePageUpDown"),shortcuts:["PgUp/PgDn"]}),(0,F.jsx)(K,{label:w("helpDialog.movePageLeftRight"),shortcuts:["Shift+PgUp/PgDn"]}),(0,F.jsx)(K,{label:w("buttons.zenMode"),shortcuts:[B("Alt+Z")]}),(0,F.jsx)(K,{label:w("buttons.objectsSnapMode"),shortcuts:[B("Alt+S")]}),(0,F.jsx)(K,{label:w("labels.toggleGrid"),shortcuts:[B("CtrlOrCmd+'")]}),(0,F.jsx)(K,{label:w("labels.viewMode"),shortcuts:[B("Alt+R")]}),(0,F.jsx)(K,{label:w("labels.toggleTheme"),shortcuts:[B("Alt+Shift+D")]}),(0,F.jsx)(K,{label:w("stats.fullTitle"),shortcuts:[B("Alt+/")]}),(0,F.jsx)(K,{label:w("search.title"),shortcuts:[Ea("searchMenu")]}),(0,F.jsx)(K,{label:w("commandPalette.title"),shortcuts:Gs?[Ea("commandPalette")]:[Ea("commandPalette"),Ea("commandPalette",1)]})]}),(0,F.jsxs)(ox,{className:"HelpDialog__island--editor",caption:w("helpDialog.editor"),children:[(0,F.jsx)(K,{label:w("helpDialog.createFlowchart"),shortcuts:[B("CtrlOrCmd+Arrow Key")],isOr:!0}),(0,F.jsx)(K,{label:w("helpDialog.navigateFlowchart"),shortcuts:[B("Alt+Arrow Key")],isOr:!0}),(0,F.jsx)(K,{label:w("labels.moveCanvas"),shortcuts:[B(`Space+${w("helpDialog.drag")}`),B(`Wheel+${w("helpDialog.drag")}`)],isOr:!0}),(0,F.jsx)(K,{label:w("buttons.clearReset"),shortcuts:[B("CtrlOrCmd+Delete")]}),(0,F.jsx)(K,{label:w("labels.delete"),shortcuts:[B("Delete")]}),(0,F.jsx)(K,{label:w("labels.cut"),shortcuts:[B("CtrlOrCmd+X")]}),(0,F.jsx)(K,{label:w("labels.copy"),shortcuts:[B("CtrlOrCmd+C")]}),(0,F.jsx)(K,{label:w("labels.paste"),shortcuts:[B("CtrlOrCmd+V")]}),(0,F.jsx)(K,{label:w("labels.pasteAsPlaintext"),shortcuts:[B("CtrlOrCmd+Shift+V")]}),(0,F.jsx)(K,{label:w("labels.selectAll"),shortcuts:[B("CtrlOrCmd+A")]}),(0,F.jsx)(K,{label:w("labels.multiSelect"),shortcuts:[B(`Shift+${w("helpDialog.click")}`)]}),(0,F.jsx)(K,{label:w("helpDialog.deepSelect"),shortcuts:[B(`CtrlOrCmd+${w("helpDialog.click")}`)]}),(0,F.jsx)(K,{label:w("helpDialog.deepBoxSelect"),shortcuts:[B(`CtrlOrCmd+${w("helpDialog.drag")}`)]}),(Gp||Gs)&&(0,F.jsx)(K,{label:w("labels.copyAsPng"),shortcuts:[B("Shift+Alt+C")]}),(0,F.jsx)(K,{label:w("labels.copyStyles"),shortcuts:[B("CtrlOrCmd+Alt+C")]}),(0,F.jsx)(K,{label:w("labels.pasteStyles"),shortcuts:[B("CtrlOrCmd+Alt+V")]}),(0,F.jsx)(K,{label:w("labels.sendToBack"),shortcuts:[yr?B("CtrlOrCmd+Alt+["):B("CtrlOrCmd+Shift+[")]}),(0,F.jsx)(K,{label:w("labels.bringToFront"),shortcuts:[yr?B("CtrlOrCmd+Alt+]"):B("CtrlOrCmd+Shift+]")]}),(0,F.jsx)(K,{label:w("labels.sendBackward"),shortcuts:[B("CtrlOrCmd+[")]}),(0,F.jsx)(K,{label:w("labels.bringForward"),shortcuts:[B("CtrlOrCmd+]")]}),(0,F.jsx)(K,{label:w("labels.alignTop"),shortcuts:[B("CtrlOrCmd+Shift+Up")]}),(0,F.jsx)(K,{label:w("labels.alignBottom"),shortcuts:[B("CtrlOrCmd+Shift+Down")]}),(0,F.jsx)(K,{label:w("labels.alignLeft"),shortcuts:[B("CtrlOrCmd+Shift+Left")]}),(0,F.jsx)(K,{label:w("labels.alignRight"),shortcuts:[B("CtrlOrCmd+Shift+Right")]}),(0,F.jsx)(K,{label:w("labels.duplicateSelection"),shortcuts:[B("CtrlOrCmd+D"),B(`Alt+${w("helpDialog.drag")}`)]}),(0,F.jsx)(K,{label:w("helpDialog.toggleElementLock"),shortcuts:[B("CtrlOrCmd+Shift+L")]}),(0,F.jsx)(K,{label:w("buttons.undo"),shortcuts:[B("CtrlOrCmd+Z")]}),(0,F.jsx)(K,{label:w("buttons.redo"),shortcuts:Ov?[B("CtrlOrCmd+Y"),B("CtrlOrCmd+Shift+Z")]:[B("CtrlOrCmd+Shift+Z")]}),(0,F.jsx)(K,{label:w("labels.group"),shortcuts:[B("CtrlOrCmd+G")]}),(0,F.jsx)(K,{label:w("labels.ungroup"),shortcuts:[B("CtrlOrCmd+Shift+G")]}),(0,F.jsx)(K,{label:w("labels.flipHorizontal"),shortcuts:[B("Shift+H")]}),(0,F.jsx)(K,{label:w("labels.flipVertical"),shortcuts:[B("Shift+V")]}),(0,F.jsx)(K,{label:w("labels.showStroke"),shortcuts:[B("S")]}),(0,F.jsx)(K,{label:w("labels.showBackground"),shortcuts:[B("G")]}),(0,F.jsx)(K,{label:w("labels.showFonts"),shortcuts:[B("Shift+F")]}),(0,F.jsx)(K,{label:w("labels.decreaseFontSize"),shortcuts:[B("CtrlOrCmd+Shift+<")]}),(0,F.jsx)(K,{label:w("labels.increaseFontSize"),shortcuts:[B("CtrlOrCmd+Shift+>")]})]})]})]})})},hF=4,pF=8,fF=({shouldWrap:e,children:t,username:a})=>e?(0,Zt.jsx)(ms,{label:a||"Unknown user",children:t}):(0,Zt.jsx)(Zt.Fragment,{children:t}),sx=({actionManager:e,collaborator:t,socketId:a,withName:n=!1,shouldWrapWithTooltip:i=!1,isBeingFollowed:r})=>{let l={socketId:a,collaborator:t,withName:n,isBeingFollowed:r},o=e.renderAction("goToCollaborator",l);return(0,Zt.jsx)(fF,{username:t.username,shouldWrap:i,children:o},a)},gF=["avatarUrl","id","socketId","username","isInCall","isSpeaking","isMuted"],C8=ts.default.memo(({className:e,mobile:t,collaborators:a,userToFollow:n})=>{let i=qa(),r=new Map;a.forEach((p,f)=>{let y=p.id||f;r.set(y,{...p,socketId:f})});let l=Array.from(r.values()).filter(p=>p.username?.trim()),[o,d]=ts.default.useState(""),h=l.filter(p=>p.username?.toLowerCase().includes(o)),s=ts.default.useRef(null);(0,ts.useLayoutEffect)(()=>{if(s.current){let p=y=>{let g=Math.max(1,Math.min(8,Math.floor(y/38)));u(g)};if(p(s.current.clientWidth),!Kh)return;let f=new ResizeObserver(y=>{for(let g of y){let{width:b}=g.contentRect;p(b)}});return f.observe(s.current),()=>{f.disconnect()}}},[]);let[c,u]=ts.default.useState(hF),m=l.slice(0,c-1).map(p=>sx({actionManager:i,collaborator:p,socketId:p.socketId,shouldWrapWithTooltip:!0,isBeingFollowed:p.socketId===n}));return t?(0,Zt.jsx)("div",{className:U("UserList UserList_mobile",e),children:l.map(p=>sx({actionManager:i,collaborator:p,socketId:p.socketId,shouldWrapWithTooltip:!0,isBeingFollowed:p.socketId===n}))}):(0,Zt.jsx)("div",{className:"UserList__wrapper",ref:s,children:(0,Zt.jsxs)("div",{className:U("UserList",e),style:{"--max-avatars":c},children:[m,l.length>c-1&&(0,Zt.jsxs)(Cl,{children:[(0,Zt.jsxs)(Tl,{className:"UserList__more",children:["+",l.length-c+1]}),(0,Zt.jsx)(xc,{style:{zIndex:2,width:"15rem",textAlign:"left"},align:"end",sideOffset:10,children:(0,Zt.jsxs)(xi,{padding:2,children:[l.length>=pF&&(0,Zt.jsx)(JA,{placeholder:w("quickSearch.placeholder"),onChange:d}),(0,Zt.jsx)(tD,{className:"dropdown-menu UserList__collaborators",placeholder:w("userList.empty"),children:h.length>0?[(0,Zt.jsx)("div",{className:"hint",children:w("userList.hint.text")}),h.map(p=>sx({actionManager:i,collaborator:p,socketId:p.socketId,withName:!0,isBeingFollowed:p.socketId===n}))]:[]}),(0,Zt.jsx)(Mf,{width:20,height:10,style:{fill:"var(--popup-bg-color)",filter:"drop-shadow(rgba(0, 0, 0, 0.05) 0px 3px 2px)"}})]})})]})]})})},(e,t)=>{if(e.collaborators.size!==t.collaborators.size||e.mobile!==t.mobile||e.className!==t.className||e.userToFollow!==t.userToFollow)return!1;let a=t.collaborators.keys();for(let[n,i]of e.collaborators){let r=t.collaborators.get(n);if(!r||n!==a.next().value||!Dn(i,r,gF))return!1}return!0}),GM=({children:e,color:t})=>(0,_8.jsx)("div",{className:"Card",style:{"--card-color":t==="primary"?"var(--color-primary)":ca[t][7],"--card-color-darker":t==="primary"?"var(--color-primary-darker)":ca[t][8],"--card-color-darkest":t==="primary"?"var(--color-primary-darkest)":ca[t][9]},children:e}),bF=({elements:e,appState:t,setAppState:a,files:n,actionManager:i,exportOpts:r,canvas:l,onCloseRequest:o})=>{let{onExportToBackend:d}=r;return(0,zt.jsx)("div",{className:"ExportDialog ExportDialog--json",children:(0,zt.jsxs)("div",{className:"ExportDialog-cards",children:[r.saveFileToDisk&&(0,zt.jsxs)(GM,{color:"lime",children:[(0,zt.jsx)("div",{className:"Card-icon",children:l5}),(0,zt.jsx)("h2",{children:w("exportDialog.disk_title")}),(0,zt.jsxs)("div",{className:"Card-details",children:[w("exportDialog.disk_details"),!Zh&&i.renderAction("changeProjectName")]}),(0,zt.jsx)(he,{className:"Card-button",type:"button",title:w("exportDialog.disk_button"),"aria-label":w("exportDialog.disk_button"),showAriaLabel:!0,onClick:()=>{i.executeAction(gD,"ui")}})]}),d&&(0,zt.jsxs)(GM,{color:"pink",children:[(0,zt.jsx)("div",{className:"Card-icon",children:wp}),(0,zt.jsx)("h2",{children:w("exportDialog.link_title")}),(0,zt.jsx)("div",{className:"Card-details",children:w("exportDialog.link_details")}),(0,zt.jsx)(he,{className:"Card-button",type:"button",title:w("exportDialog.link_button"),"aria-label":w("exportDialog.link_button"),showAriaLabel:!0,onClick:async()=>{try{Oe("export","link",`ui (${T3()})`),await d(e,t,n),o()}catch(h){a({errorMessage:h.message})}}})]}),r.renderCustomUI&&r.renderCustomUI(e,t,n,l)]})})},vF=({elements:e,appState:t,files:a,actionManager:n,exportOpts:i,canvas:r,setAppState:l})=>{let o=T8.default.useCallback(()=>{l({openDialog:null})},[l]);return(0,zt.jsx)(zt.Fragment,{children:t.openDialog?.name==="jsonExport"&&(0,zt.jsx)(Ci,{onCloseRequest:o,title:w("buttons.export"),children:(0,zt.jsx)(bF,{elements:e,appState:t,setAppState:l,files:a,actionManager:n,onCloseRequest:o,exportOpts:i,canvas:r})})})},yF=e=>(0,k8.jsx)("button",{className:"help-icon",onClick:e.onClick,type:"button",title:`${w("helpDialog.title")} \u2014 ?`,"aria-label":w("helpDialog.title"),children:xp}),M8=({appState:e,actionManager:t,showExitZenModeBtn:a,renderWelcomeScreen:n})=>{let{FooterCenterTunnel:i,WelcomeScreenHelpHintTunnel:r}=Ua(),l=Bt(),o=!e.viewModeEnabled&&e.multiElement&&l.isTouchScreen;return(0,Ra.jsxs)("footer",{role:"contentinfo",className:"layer-ui__wrapper__footer App-menu App-menu_bottom",children:[(0,Ra.jsx)("div",{className:U("layer-ui__wrapper__footer-left zen-mode-transition",{"layer-ui__wrapper__footer-left--transition-left":e.zenModeEnabled}),children:(0,Ra.jsx)(Hn.Col,{gap:2,children:(0,Ra.jsxs)(Am,{heading:"canvasActions",children:[(0,Ra.jsx)(SH,{renderAction:t.renderAction,zoom:e.zoom}),!e.viewModeEnabled&&(0,Ra.jsx)(CH,{renderAction:t.renderAction,className:U("zen-mode-transition",{"layer-ui__wrapper__footer-left--transition-bottom":e.zenModeEnabled})}),o&&(0,Ra.jsx)(_H,{renderAction:t.renderAction,className:U("zen-mode-transition",{"layer-ui__wrapper__footer-left--transition-left":e.zenModeEnabled})})]})})}),(0,Ra.jsx)(i.Out,{}),(0,Ra.jsx)("div",{className:U("layer-ui__wrapper__footer-right zen-mode-transition",{"transition-right":e.zenModeEnabled}),children:(0,Ra.jsxs)("div",{style:{position:"relative"},children:[n&&(0,Ra.jsx)(r.Out,{}),(0,Ra.jsx)(yF,{onClick:()=>t.executeAction(iw)})]})}),(0,Ra.jsx)(TH,{actionManager:t,showExitZenModeBtn:a})]})},xF=M8;M8.displayName="Footer";var D8=A8.default.createContext({}),N8=({children:e,className:t})=>{let a=Bt(),n=(0,I8.useContext)(D8),i=!!(a.editor.canFitSidebar&&n.shouldRenderDockButton);return(0,ss.jsxs)("div",{className:U("sidebar__header",t),"data-testid":"sidebar-header",children:[e,(0,ss.jsxs)("div",{className:"sidebar__header__buttons",children:[i&&(0,ss.jsx)(ms,{label:w("labels.sidebarLock"),children:(0,ss.jsx)(hs,{onSelect:()=>n.onDock?.(!n.docked),selected:!!n.docked,className:"sidebar__dock","data-testid":"sidebar-dock","aria-label":w("labels.sidebarLock"),children:$3})}),(0,ss.jsx)(hs,{"data-testid":"sidebar-close",className:"sidebar__close",onSelect:n.onCloseRequest,"aria-label":w("buttons.close"),children:Lo})]})]})};N8.displayName="SidebarHeader";var L8=({name:e,tab:t,icon:a,title:n,children:i,onToggle:r,className:l,style:o})=>{let d=Mt(),h=ta();return(0,cs.jsxs)("label",{title:n,className:"sidebar-trigger__label-element",children:[(0,cs.jsx)("input",{className:"ToolIcon_type_checkbox",type:"checkbox",onChange:s=>{document.querySelector(".layer-ui__wrapper")?.classList.remove("animate");let c=s.target.checked;d({openSidebar:c?{name:e,tab:t}:null}),r?.(c)},checked:h.openSidebar?.name===e,"aria-label":n,"aria-keyshortcuts":"0"}),(0,cs.jsxs)("div",{className:U("sidebar-trigger",l),style:o,children:[a&&(0,cs.jsx)("div",{children:a}),i&&(0,cs.jsx)("div",{className:"sidebar-trigger__label",children:i})]})]})};L8.displayName="SidebarTrigger";var O8=({children:e,...t})=>(0,R8.jsx)(zf,{className:"sidebar-triggers",...t,children:e});O8.displayName="SidebarTabTriggers";var z8=({children:e,tab:t,onSelect:a,...n})=>(0,Bx.jsx)(Bf,{value:t,asChild:!0,onSelect:a,children:(0,Bx.jsx)("button",{type:"button",className:"excalidraw-button sidebar-tab-trigger",...n,children:e})});z8.displayName="SidebarTabTrigger";var U8=({children:e,...t})=>{let a=ta(),n=Mt();if(!a.openSidebar)return null;let{name:i}=a.openSidebar;return(0,B8.jsx)(Of,{className:"sidebar-tabs-root",value:a.openSidebar.tab,onValueChange:r=>n(l=>({...l,openSidebar:{...l.openSidebar,name:i,tab:r}})),...t,children:e})};U8.displayName="SidebarTabs";var j8=({tab:e,children:t,...a})=>(0,P8.jsx)(Uf,{...a,value:e,"data-testid":e,children:t});j8.displayName="SidebarTab";var mw=wt(!1),F8=(0,kt.forwardRef)(({name:e,children:t,onDock:a,docked:n,className:i,...r},l)=>{Ft.DEV&&a&&n==null&&console.warn("Sidebar: `docked` must be set when `onDock` is supplied for the sidebar to be user-dockable. To hide this message, either pass `docked` or remove `onDock`");let o=Mt(),d=dg(mw);(0,kt.useLayoutEffect)(()=>(d(!!n),()=>{d(!1)}),[d,n]);let h=(0,kt.useRef)({});h.current.onCloseRequest=()=>{o({openSidebar:null})},h.current.onDock=m=>a?.(m),h.current=uu(h.current,{docked:n,shouldRenderDockButton:!!a&&n!=null});let s=(0,kt.useRef)(null);(0,kt.useImperativeHandle)(l,()=>s.current);let c=Bt(),u=(0,kt.useCallback)(()=>{document.querySelector(".Dialog")||o({openSidebar:null})},[o]);return Qx(s,(0,kt.useCallback)(m=>{m.target.closest(".sidebar-trigger")||(!n||!c.editor.canFitSidebar)&&u()},[u,n,c.editor.canFitSidebar])),(0,kt.useEffect)(()=>{let m=p=>{p.key===M.ESCAPE&&(!n||!c.editor.canFitSidebar)&&u()};return document.addEventListener("keydown",m),()=>{document.removeEventListener("keydown",m)}},[u,n,c.editor.canFitSidebar]),(0,Ux.jsx)(xi,{...r,className:U("sidebar",{"sidebar--docked":n},i),ref:s,children:(0,Ux.jsx)(D8.Provider,{value:h.current,children:t})})});F8.displayName="SidebarInner";var Vi=Object.assign((0,kt.forwardRef)((e,t)=>{let a=ta(),{onStateChange:n}=e,i=(0,kt.useRef)(a.openSidebar);(0,kt.useEffect)(()=>{(!a.openSidebar&&i?.current?.name===e.name||a.openSidebar?.name===e.name&&i?.current?.name!==e.name||i.current?.name===e.name)&&a.openSidebar!==i.current&&n?.(a.openSidebar?.name!==e.name?null:a.openSidebar),i.current=a.openSidebar},[a.openSidebar,n,e.name]);let[r,l]=(0,kt.useState)(!1);return(0,kt.useLayoutEffect)(()=>(l(!0),()=>l(!1)),[]),r&&a.openSidebar?.name===e.name?(0,H8.createElement)(F8,{...e,ref:t,key:e.name}):null}),{Header:N8,TabTriggers:O8,TabTrigger:z8,Tabs:U8,Tab:j8,Trigger:L8});Vi.displayName="Sidebar";var Y8={};Iv(Y8,{ChangeCanvasBackground:()=>eI,ClearCanvas:()=>W8,CommandPalette:()=>K8,Export:()=>tI,Help:()=>Q8,LiveCollaborationTrigger:()=>nI,LoadScene:()=>V8,SaveAsImage:()=>Z8,SaveToActiveFile:()=>X8,SearchMenu:()=>q8,Socials:()=>aI,ToggleTheme:()=>J8});var G8=wt({active:!1});async function wF({title:e,description:t,actionLabel:a,color:n}){return new Promise(i=>{gi.set(G8,{active:!0,onConfirm:()=>i(!0),onClose:()=>i(!1),onReject:()=>i(!1),title:e,description:t,actionLabel:a,color:n})})}var $8=({value:e,shortcut:t,onChange:a,choices:n,children:i,name:r})=>{let l=Bt();return(0,Rr.jsxs)(Rr.Fragment,{children:[(0,Rr.jsxs)("div",{className:"dropdown-menu-item-base dropdown-menu-item-bare",children:[(0,Rr.jsx)("label",{className:"dropdown-menu-item__text",htmlFor:r,children:i}),(0,Rr.jsx)(h8,{name:r,value:e,onChange:a,choices:n})]}),t&&!l.editor.isMobile&&(0,Rr.jsx)("div",{className:"dropdown-menu-item__shortcut dropdown-menu-item__shortcut--orphaned",children:t})]})};$8.displayName="DropdownMenuItemContentRadio";var EF=$8,V8=()=>{let{t:e}=Sa(),t=qa(),a=Gg();return t.isActionEnabled(Cx)?(0,et.jsx)($n,{icon:Ep,onSelect:async()=>{(!a.length||await wF({title:e("overwriteConfirm.modal.loadFromFile.title"),actionLabel:e("overwriteConfirm.modal.loadFromFile.button"),color:"warning",description:(0,et.jsx)(Qi,{i18nKey:"overwriteConfirm.modal.loadFromFile.description",bold:n=>(0,et.jsx)("strong",{children:n}),br:()=>(0,et.jsx)("br",{})})}))&&t.executeAction(Cx)},"data-testid":"load-button",shortcut:Ea("loadScene"),"aria-label":e("buttons.load"),children:e("buttons.load")}):null};V8.displayName="LoadScene";var X8=()=>{let{t:e}=Sa(),t=qa();return t.isActionEnabled(vM)?(0,et.jsx)($n,{shortcut:Ea("saveScene"),"data-testid":"save-button",onSelect:()=>t.executeAction(vM),icon:n5,"aria-label":`${e("buttons.save")}`,children:`${e("buttons.save")}`}):null};X8.displayName="SaveToActiveFile";var Z8=()=>{let e=Mt(),{t}=Sa();return(0,et.jsx)($n,{icon:h0,"data-testid":"image-export-button",onSelect:()=>e({openDialog:{name:"imageExport"}}),shortcut:Ea("imageExport"),"aria-label":t("buttons.exportImage"),children:t("buttons.exportImage")})};Z8.displayName="SaveAsImage";var K8=e=>{let t=Mt(),{t:a}=Sa();return(0,et.jsx)($n,{icon:U0,"data-testid":"command-palette-button",onSelect:()=>{Oe("command_palette","open","menu"),t({openDialog:{name:"commandPalette"}})},shortcut:Ea("commandPalette"),"aria-label":a("commandPalette.title"),className:e?.className,children:a("commandPalette.title")})};K8.displayName="CommandPalette";var q8=e=>{let{t}=Sa(),a=qa();return(0,et.jsx)($n,{icon:cl,"data-testid":"search-menu-button",onSelect:()=>{a.executeAction(i8)},shortcut:Ea("searchMenu"),"aria-label":t("search.title"),className:e?.className,children:t("search.title")})};q8.displayName="SearchMenu";var Q8=()=>{let{t:e}=Sa(),t=qa();return(0,et.jsx)($n,{"data-testid":"help-menu-item",icon:xp,onSelect:()=>t.executeAction(iw),shortcut:"?","aria-label":e("helpDialog.title"),children:e("helpDialog.title")})};Q8.displayName="Help";var W8=()=>{let{t:e}=Sa(),t=dg(Bg);return qa().isActionEnabled(fm)?(0,et.jsx)($n,{icon:sl,onSelect:()=>t("clearCanvas"),"data-testid":"clear-canvas-button","aria-label":e("buttons.clearReset"),children:e("buttons.clearReset")}):null};W8.displayName="ClearCanvas";var J8=e=>{let{t}=Sa(),a=ta(),n=qa(),i=Ea("toggleTheme");return n.isActionEnabled(ng)?e?.allowSystemTheme?(0,et.jsx)(EF,{name:"theme",value:e.theme,onChange:r=>e.onSelect(r),choices:[{value:xe.LIGHT,label:yp,ariaLabel:`${t("buttons.lightMode")} - ${i}`},{value:xe.DARK,label:vp,ariaLabel:`${t("buttons.darkMode")} - ${i}`},{value:"system",label:gC,ariaLabel:t("buttons.systemMode")}],children:t("labels.theme")}):(0,et.jsx)($n,{onSelect:r=>{if(r.preventDefault(),e?.onSelect)e.onSelect(a.theme===xe.DARK?xe.LIGHT:xe.DARK);else return n.executeAction(ng)},icon:a.theme===xe.DARK?yp:vp,"data-testid":"toggle-dark-mode",shortcut:i,"aria-label":a.theme===xe.DARK?t("buttons.lightMode"):t("buttons.darkMode"),children:a.theme===xe.DARK?t("buttons.lightMode"):t("buttons.darkMode")}):null};J8.displayName="ToggleTheme";var eI=()=>{let{t:e}=Sa(),t=ta(),a=qa(),n=Hm();return t.viewModeEnabled||!n.UIOptions.canvasActions.changeViewBackgroundColor?null:(0,et.jsxs)("div",{style:{marginTop:"0.5rem"},children:[(0,et.jsx)("div",{"data-testid":"canvas-background-label",style:{fontSize:".75rem",marginBottom:".5rem"},children:e("labels.canvasBackground")}),(0,et.jsx)("div",{style:{padding:"0 0.625rem"},children:a.renderAction("changeViewBackgroundColor")})]})};eI.displayName="ChangeCanvasBackground";var tI=()=>{let{t:e}=Sa(),t=Mt();return(0,et.jsx)($n,{icon:gu,onSelect:()=>{t({openDialog:{name:"jsonExport"}})},"data-testid":"json-export-button","aria-label":e("buttons.export"),children:e("buttons.export")})};tI.displayName="Export";var aI=()=>{let{t:e}=Sa();return(0,et.jsxs)(et.Fragment,{children:[(0,et.jsx)(Qf,{icon:m0,href:"https://github.com/excalidraw/excalidraw","aria-label":"GitHub",children:"GitHub"}),(0,et.jsx)(Qf,{icon:t5,href:"https://x.com/excalidraw","aria-label":"X",children:e("labels.followUs")}),(0,et.jsx)(Qf,{icon:e5,href:"https://discord.gg/UexuTaE","aria-label":"Discord",children:e("labels.discordChat")})]})};aI.displayName="Socials";var nI=({onSelect:e,isCollaborating:t})=>{let{t:a}=Sa();return(0,et.jsx)($n,{"data-testid":"collab-button",icon:_0,className:U({"active-collab":t}),onSelect:e,children:a("labels.liveCollaboration")})};nI.displayName="LiveCollaborationTrigger";var Pm=(e,t)=>{let a=wt(0),n=i=>{let{tunnelsJotai:{useAtom:r}}=Ua(),[,l]=r(a),o=(0,Hg.useRef)({preferHost:!1,counter:0});return(0,Hg.useLayoutEffect)(()=>{let d=o.current;return l(h=>{let s=h+1;return d.counter=s,s}),()=>{l(h=>{let s=h-1;return d.counter=s,s||(d.preferHost=!1),s})}},[l]),i.__fallback||(o.current.preferHost=!0),!o.current.counter&&i.__fallback&&o.current.preferHost||o.current.counter>1&&i.__fallback?null:(0,iI.jsx)(t,{...i})};return n.displayName=e,n},SF=Object.assign(Pm("MainMenu",({children:e,onSelect:t})=>{let{MainMenuTunnel:a}=Ua(),n=Bt(),i=ta(),r=Mt(),l=n.editor.isMobile?void 0:()=>r({openMenu:null});return(0,Lr.jsx)(a.In,{children:(0,Lr.jsxs)(Pe,{open:i.openMenu==="canvas",children:[(0,Lr.jsx)(Pe.Trigger,{onToggle:()=>{r({openMenu:i.openMenu==="canvas"?null:"canvas"})},"data-testid":"main-menu-trigger",className:"main-menu-trigger",children:d0}),(0,Lr.jsxs)(Pe.Content,{onClickOutside:l,onSelect:mu(t,()=>{r({openMenu:null})}),children:[e,n.editor.isMobile&&i.collaborators.size>0&&(0,Lr.jsxs)("fieldset",{className:"UserList-Wrapper",children:[(0,Lr.jsx)("legend",{children:w("labels.collaborators")}),(0,Lr.jsx)(C8,{mobile:!0,collaborators:i.collaborators,userToFollow:i.userToFollow?.socketId||null})]})]})]})})}),{Trigger:Pe.Trigger,Item:Pe.Item,ItemLink:Pe.ItemLink,ItemCustom:Pe.ItemCustom,Group:Pe.Group,Separator:Pe.Separator,DefaultItems:Y8}),Xa=SF,hw=({title:e,children:t,actionLabel:a,onClick:n})=>(0,Or.jsxs)("div",{className:"OverwriteConfirm__Actions__Action",children:[(0,Or.jsx)("h4",{children:e}),(0,Or.jsx)("div",{className:"OverwriteConfirm__Actions__Action__content",children:t}),(0,Or.jsx)(bm,{variant:"outlined",color:"muted",label:a,size:"large",fullWidth:!0,onClick:n})]}),CF=()=>{let{t:e}=Sa(),t=qa(),a=Mt();return(0,Or.jsx)(hw,{title:e("overwriteConfirm.action.exportToImage.title"),actionLabel:e("overwriteConfirm.action.exportToImage.button"),onClick:()=>{t.executeAction(fD,"ui",!0),a({openDialog:{name:"imageExport"}})},children:e("overwriteConfirm.action.exportToImage.description")})},TF=()=>{let{t:e}=Sa(),t=qa();return(0,Or.jsx)(hw,{title:e("overwriteConfirm.action.saveToDisk.title"),actionLabel:e("overwriteConfirm.action.saveToDisk.button"),onClick:()=>{t.executeAction(gD,"ui")},children:e("overwriteConfirm.action.saveToDisk.description")})},$M=Object.assign(({children:e})=>(0,Or.jsx)("div",{className:"OverwriteConfirm__Actions",children:e}),{ExportToImage:CF,SaveToDisk:TF}),cx=Object.assign(Pm("OverwriteConfirmDialog",({children:e})=>{let{OverwriteConfirmDialogTunnel:t}=Ua(),[a,n]=ct(G8);if(!a.active)return null;let i=()=>{a.onClose(),n(l=>({...l,active:!1}))},r=()=>{a.onConfirm(),n(l=>({...l,active:!1}))};return(0,On.jsx)(t.In,{children:(0,On.jsx)(Ci,{onCloseRequest:i,title:!1,size:916,children:(0,On.jsxs)("div",{className:"OverwriteConfirm",children:[(0,On.jsx)("h3",{children:a.title}),(0,On.jsxs)("div",{className:`OverwriteConfirm__Description OverwriteConfirm__Description--color-${a.color}`,children:[(0,On.jsx)("div",{className:"OverwriteConfirm__Description__icon",children:W5}),(0,On.jsx)("div",{children:a.description}),(0,On.jsx)("div",{className:"OverwriteConfirm__Description__spacer"}),(0,On.jsx)(bm,{color:a.color,size:"large",label:a.actionLabel,onClick:r})]}),(0,On.jsx)($M,{children:e})]})})})}),{Actions:$M,Action:hw}),_F=wt(""),lI=wt(null),kF=350,MF=()=>{let e=tr(),t=Mt(),a=(0,ea.useRef)(null),[n,i]=ct(_F),r=n.trim(),[l,o]=(0,ea.useState)(!1),[d,h]=(0,ea.useState)({nonce:null,items:[]}),s=(0,ea.useRef)(null),c=(0,ea.useRef)(void 0),[u,m]=ct(lI),p=e.scene.getNonDeletedElementsMap();(0,ea.useEffect)(()=>{l||(r!==s.current||e.scene.getSceneNonce()!==c.current)&&(s.current=null,VM(r,e,(v,x)=>{h({nonce:Bp(),items:v}),s.current=r,c.current=e.scene.getSceneNonce(),t({searchMatches:v.map(E=>({id:E.textElement.id,focus:!1,matchedLines:E.matchedLines}))})}))},[l,r,p,e,t,m,c]);let f=()=>{d.items.length>0&&m(v=>v===null?0:(v+1)%d.items.length)},y=()=>{d.items.length>0&&m(v=>v===null?0:v-1<0?d.items.length-1:v-1)};(0,ea.useEffect)(()=>{t(v=>({searchMatches:v.searchMatches.map((x,E)=>E===u?{...x,focus:!0}:{...x,focus:!1})}))},[u,t]),(0,ea.useEffect)(()=>{if(d.items.length>0&&u!==null){let v=d.items[u];if(v){let x=e.state.zoom.value,E=fl({text:v.searchQuery,x:v.textElement.x+(v.matchedLines[0]?.offsetX??0),y:v.textElement.y+(v.matchedLines[0]?.offsetY??0),width:v.matchedLines[0]?.width,height:v.matchedLines[0]?.height,fontSize:v.textElement.fontSize,fontFamily:v.textElement.fontFamily}),S=14,C=v.textElement.fontSize,_=C*x<S;if(!zu([E],e.canvas.width/window.devicePixelRatio,e.canvas.height/window.devicePixelRatio,{offsetLeft:e.state.offsetLeft,offsetTop:e.state.offsetTop,scrollX:e.state.scrollX,scrollY:e.state.scrollY,zoom:e.state.zoom},e.scene.getNonDeletedElementsMap(),e.getEditorUIOffsets())||_){let D;_?C>=S?D={fitToContent:!0}:D={fitToViewport:!0,maxZoom:Er(S/C,1)}:D={fitToContent:!0},e.scrollToContent(E,{animate:!0,duration:300,...D,canvasOffsets:e.getEditorUIOffsets()})}}}},[u,d,e]),(0,ea.useEffect)(()=>()=>{m(null),s.current=null,c.current=void 0,t({searchMatches:[]}),o(!1)},[t,m]);let g=bg({goToNextItem:f,goToPreviousItem:y,searchMatches:d});(0,ea.useEffect)(()=>Ze(window,"keydown",x=>{if(x.key===M.ESCAPE&&!e.state.openDialog&&!e.state.openPopup){x.preventDefault(),x.stopPropagation(),t({openSidebar:null});return}x[M.CTRL_OR_CMD]&&x.key===M.F&&(x.preventDefault(),x.stopPropagation(),a.current?.matches(":focus")?t({openSidebar:null}):(e.state.openDialog&&t({openDialog:null}),a.current?.focus(),a.current?.select())),x.target instanceof HTMLElement&&x.target.closest(".layer-ui__search")&&g.searchMatches.items.length&&(x.key===M.ENTER&&(x.stopPropagation(),g.goToNextItem()),x.key===M.ARROW_UP?(x.stopPropagation(),g.goToPreviousItem()):x.key===M.ARROW_DOWN&&(x.stopPropagation(),g.goToNextItem()))},{capture:!0,passive:!1}),[t,g,e]);let b=`${d.items.length} ${d.items.length===1?w("search.singleResult"):w("search.multipleResults")}`;return(0,ht.jsxs)("div",{className:"layer-ui__search",children:[(0,ht.jsx)("div",{className:"layer-ui__search-header",children:(0,ht.jsx)(dw,{className:To.SEARCH_MENU_INPUT_WRAPPER,value:n,ref:a,placeholder:w("search.placeholder"),icon:cl,onChange:v=>{i(v),o(!0);let x=v.trim();VM(x,e,(E,S)=>{h({nonce:Bp(),items:E}),m(S),s.current=x,c.current=e.scene.getSceneNonce(),t({searchMatches:E.map(C=>({id:C.textElement.id,focus:!1,matchedLines:C.matchedLines}))}),o(!1)})},selectOnRender:!0})}),(0,ht.jsxs)("div",{className:"layer-ui__search-count",children:[d.items.length>0&&(0,ht.jsxs)(ht.Fragment,{children:[u!==null&&u>-1?(0,ht.jsxs)("div",{children:[u+1," / ",b]}):(0,ht.jsx)("div",{children:b}),(0,ht.jsxs)("div",{className:"result-nav",children:[(0,ht.jsx)(hs,{onSelect:()=>{f()},className:"result-nav-btn",children:j0}),(0,ht.jsx)(hs,{onSelect:()=>{y()},className:"result-nav-btn",children:CC})]})]}),d.items.length===0&&r&&s.current&&(0,ht.jsx)("div",{style:{margin:"1rem auto"},children:w("search.noMatch")})]}),(0,ht.jsx)(NF,{matches:d,onItemClick:m,focusIndex:u,searchQuery:r})]})},AF=e=>{let t=[e.preview.moreBefore?"...":"",e.preview.previewText.slice(0,e.preview.indexInSearchQuery),e.preview.previewText.slice(e.preview.indexInSearchQuery,e.preview.indexInSearchQuery+e.searchQuery.length),e.preview.previewText.slice(e.preview.indexInSearchQuery+e.searchQuery.length),e.preview.moreAfter?"...":""];return(0,ht.jsx)("div",{tabIndex:-1,className:U("layer-ui__result-item",{active:e.highlighted}),onClick:e.onClick,ref:a=>{e.highlighted&&a?.scrollIntoView({behavior:"auto",block:"nearest"})},children:(0,ht.jsx)("div",{className:"preview-text",children:t.flatMap((a,n)=>(0,ht.jsx)(ea.Fragment,{children:n===2?(0,ht.jsx)("b",{children:a}):a},n))})})},DF=e=>(0,ht.jsx)("div",{className:"layer-ui__search-result-container",children:e.matches.items.map((t,a)=>(0,ht.jsx)(AF,{searchQuery:e.searchQuery,preview:t.preview,highlighted:a===e.focusIndex,onClick:()=>e.onItemClick(a)},t.textElement.id+t.index))}),IF=(e,t)=>e.matches.nonce===t.matches.nonce&&e.focusIndex===t.focusIndex,NF=(0,ea.memo)(DF,IF),LF=(e,t,a)=>{let n=e.slice(0,t),i=n.split(/\s+/),r=n.endsWith(" "),l=i.length-2-1-(r?0:1),o=i.slice(l<=0?0:l).join(" ")+(r?" ":""),d=20;o=o.length>d?o.slice(-d):o;let h=e.slice(t+a.length),s=h.split(/\s+/),c=!h.startsWith(" "),u=c?6:5,m=(c?"":" ")+s.slice(0,u).join(" ");return{indexInSearchQuery:o.length,previewText:o+a+m,moreBefore:l>0,moreAfter:s.length>u}},RF=(e,t)=>{let a=e.split(`
|
|
53
|
+
`),n=[],i=0;for(let r=0;r<a.length;r++){let l=a[r],o=a[r+1];if(o){let d=t.indexOf(o,i);if(d>l.length+i){let h=d-(l.length+i);for(;h>0;)l+=" ",h--}}n.push(l),i=i+l.length}return n.join(`
|
|
54
|
+
`)},OF=(e,t,a)=>{let n=RF(e.text,e.originalText).split(`
|
|
55
|
+
`),i=[],r=0,l=0;for(let s of n){let c=r,u=c+s.length-1;i.push({line:s,startIndex:c,endIndex:u,lineNumber:l}),r=u+1,l++}let o=a,d=e.originalText.slice(a,a+t.length),h=[];for(let s of i){if(d==="")break;if(o>=s.startIndex&&o<=s.endIndex){let c=s.endIndex+1-o,u=s.line.slice(0,o-s.startIndex),m=d.slice(0,c);d=d.slice(c);let p=Sr(u,An(e),e.lineHeight);if(u===""&&(p.width=0),e.textAlign!=="left"&&s.line.length>0){let v=Sr(s.line,An(e),e.lineHeight),x=e.textAlign==="center"?(e.width-v.width)/2:e.width-v.width;p.width+=x}let{width:f,height:y}=Sr(m,An(e),e.lineHeight),g=p.width,b=s.lineNumber*p.height;h.push({offsetX:g,offsetY:b,width:f,height:y}),o+=c}}return h},zF=e=>e.replace(/[.*+?^${}()|[\]\\-]/g,"\\$&"),VM=(0,rI.default)((e,t,a)=>{if(!e||e===""){a([],null);return}let n=t.scene.getNonDeletedElements().filter(d=>ae(d));n.sort((d,h)=>d.y-h.y);let i=[],r=new RegExp(zF(e),"gi");for(let d of n){let h=null,s=d.originalText;for(;(h=r.exec(s))!==null;){let c=LF(s,h.index,e),u=OF(d,e,h.index);u.length>0&&i.push({textElement:d,searchQuery:e,preview:c,index:h.index,matchedLines:u})}}let l=new Set(t.visibleElements.map(d=>d.id)),o=i.findIndex(d=>l.has(d.textElement.id))??null;a(i,o)},kF),sI=Pm("DefaultSidebarTrigger",e=>{let{DefaultSidebarTriggerTunnel:t}=Ua();return(0,Oa.jsx)(t.In,{children:(0,Oa.jsx)(Vi.Trigger,{...e,className:"default-sidebar-trigger",name:ii.name})})});sI.displayName="DefaultSidebarTrigger";var cI=({children:e})=>{let{DefaultSidebarTabTriggersTunnel:t}=Ua();return(0,Oa.jsx)(t.In,{children:e})};cI.displayName="DefaultTabTriggers";var XM=Object.assign(Pm("DefaultSidebar",({children:e,className:t,onDock:a,docked:n,...i})=>{let r=ta(),l=Mt(),{DefaultSidebarTabTriggersTunnel:o}=Ua(),d=r.openSidebar?.tab===_o;return(0,oI.createElement)(Vi,{...i,name:"default",key:"default",className:U("default-sidebar",t),docked:d||(n??r.defaultSidebarDockedPreference),onDock:d||a===!1||!a&&n!=null?void 0:mu(a,h=>{l({defaultSidebarDockedPreference:h})})},(0,Oa.jsxs)(Vi.Tabs,{children:[(0,Oa.jsx)(Vi.Header,{children:(0,Oa.jsxs)(Vi.TabTriggers,{children:[(0,Oa.jsx)(Vi.TabTrigger,{tab:_o,children:cl}),(0,Oa.jsx)(Vi.TabTrigger,{tab:ip,children:fp}),(0,Oa.jsx)(o.Out,{})]})}),(0,Oa.jsx)(Vi.Tab,{tab:ip,children:(0,Oa.jsx)(dH,{})}),(0,Oa.jsx)(Vi.Tab,{tab:_o,children:(0,Oa.jsx)(MF,{})}),e]}))}),{Trigger:sI,TabTriggers:cI}),BF="small",UF=e=>(0,Im.jsxs)("label",{className:U("ToolIcon ToolIcon__LaserPointer",`ToolIcon_size_${BF}`,{"is-mobile":e.isMobile}),title:`${e.title}`,children:[(0,Im.jsx)("input",{className:"ToolIcon_type_checkbox",type:"checkbox",name:e.name,onChange:e.onChange,checked:e.checked,"aria-label":e.title,"data-testid":"toolbar-LaserPointer"}),(0,Im.jsx)("div",{className:"ToolIcon__icon",children:z0})]}),PF=({canvasRef:e,setError:t})=>{let a=e.current;if(!a)return;let n=a.parentElement;n&&(n.style.background="",t(null),a.replaceChildren())},dI=async({canvasRef:e,mermaidToExcalidrawLib:t,mermaidDefinition:a,setError:n,data:i})=>{let r=e.current,l=r?.parentElement;if(!(!r||!l)){if(!a){PF({canvasRef:e,setError:n});return}try{let o=await t.api,d;try{d=await o.parseMermaidToExcalidraw(a)}catch{d=await o.parseMermaidToExcalidraw(a.replace(/"/g,"'"))}let{elements:h,files:s={}}=d;n(null),i.current={elements:Gx(h,{regenerateIds:!0}),files:s};let c=await $p({elements:i.current.elements,files:i.current.files,exportPadding:au,maxWidthOrHeight:Math.max(l.offsetWidth,l.offsetHeight)*window.devicePixelRatio});try{await oc(c)}catch(u){throw u.name==="CANVAS_POSSIBLY_TOO_BIG"?new Error(w("canvasError.canvasTooBig")):u}l.style.background="var(--default-bg-color)",r.replaceChildren(c)}catch(o){throw l.style.background="var(--default-bg-color)",a&&n(o),o}}},pw=e=>{is.set($s.MERMAID_TO_EXCALIDRAW,e)},uI=({app:e,data:t,text:a,shouldSaveMermaidDataToStorage:n})=>{let{elements:i,files:r}=t.current;i.length&&(e.addElementsFromPasteOrLibrary({elements:i,files:r,position:"center",fitToContent:!0}),e.setOpenDialog(null),n&&a&&pw(a))},hI=({children:e})=>(0,mI.jsx)("div",{className:"ttd-dialog-panels",children:e}),rg=({label:e,children:t,panelAction:a,panelActionDisabled:n=!1,onTextSubmitInProgess:i,renderTopRight:r,renderSubmitShortcut:l,renderBottomRight:o})=>(0,Ki.jsxs)("div",{className:"ttd-dialog-panel",children:[(0,Ki.jsxs)("div",{className:"ttd-dialog-panel__header",children:[(0,Ki.jsx)("label",{children:e}),r?.()]}),t,(0,Ki.jsxs)("div",{className:U("ttd-dialog-panel-button-container",{invisible:!a}),style:{display:"flex",alignItems:"center"},children:[(0,Ki.jsxs)(hs,{className:"ttd-dialog-panel-button",onSelect:a?a.action:()=>{},disabled:n||i,children:[(0,Ki.jsxs)("div",{className:U({invisible:i}),children:[a?.label,a?.icon&&(0,Ki.jsx)("span",{children:a.icon})]}),i&&(0,Ki.jsx)(zr,{})]}),!n&&!i&&l?.(),o?.()]})]}),fI=({input:e,placeholder:t,onChange:a,onKeyboardSubmit:n})=>{let i=(0,Nm.useRef)(null),r=(0,Nm.useRef)(n);return r.current=n,(0,Nm.useEffect)(()=>{if(!r.current)return;let l=i.current;if(l){let o=d=>{d[M.CTRL_OR_CMD]&&d.key===M.ENTER&&(d.preventDefault(),r.current?.())};return l.addEventListener("keydown",o),()=>{l.removeEventListener("keydown",o)}}},[]),(0,pI.jsx)("textarea",{className:"ttd-dialog-input",onChange:a,value:e,placeholder:t,autoFocus:!0,ref:i})},jF=({error:e})=>(0,Bl.jsxs)("div",{"data-testid":"ttd-dialog-output-error",className:"ttd-dialog-output-error",children:["Error! ",(0,Bl.jsx)("p",{children:e})]}),gI=({error:e,canvasRef:t,loaded:a})=>(0,Bl.jsxs)("div",{className:"ttd-dialog-output-wrapper",children:[e&&(0,Bl.jsx)(jF,{error:e.message}),a?(0,Bl.jsx)("div",{ref:t,style:{opacity:e?"0.15":1},className:"ttd-dialog-output-canvas-container"}):(0,Bl.jsx)(zr,{size:"2rem"})]}),bI=()=>(0,Lm.jsxs)("div",{className:"ttd-dialog-submit-shortcut",children:[(0,Lm.jsx)("div",{className:"ttd-dialog-submit-shortcut__key",children:B("CtrlOrCmd")}),(0,Lm.jsx)("div",{className:"ttd-dialog-submit-shortcut__key",children:B("Enter")})]}),HF=`flowchart TD
|
|
56
|
+
A[Christmas] -->|Get money| B(Go shopping)
|
|
57
|
+
B --> C{Let me think}
|
|
58
|
+
C -->|One| D[Laptop]
|
|
59
|
+
C -->|Two| E[iPhone]
|
|
60
|
+
C -->|Three| F[Car]`,ZM=su(pw,300),FF=({mermaidToExcalidrawLib:e})=>{let[t,a]=(0,Ei.useState)(()=>is.get($s.MERMAID_TO_EXCALIDRAW)||HF),n=(0,Ei.useDeferredValue)(t.trim()),[i,r]=(0,Ei.useState)(null),l=(0,Ei.useRef)(null),o=(0,Ei.useRef)({elements:[],files:null}),d=tr();(0,Ei.useEffect)(()=>{dI({canvasRef:l,data:o,mermaidToExcalidrawLib:e,setError:r,mermaidDefinition:n}).catch(s=>{n0()&&console.error("Failed to parse mermaid definition",s)}),ZM(n)},[n,e]),(0,Ei.useEffect)(()=>()=>{ZM.flush()},[]);let h=()=>{uI({app:d,data:o,text:t,shouldSaveMermaidDataToStorage:!0})};return(0,va.jsxs)(va.Fragment,{children:[(0,va.jsx)("div",{className:"ttd-dialog-desc",children:(0,va.jsx)(Qi,{i18nKey:"mermaid.description",flowchartLink:s=>(0,va.jsx)("a",{href:"https://mermaid.js.org/syntax/flowchart.html",children:s}),sequenceLink:s=>(0,va.jsx)("a",{href:"https://mermaid.js.org/syntax/sequenceDiagram.html",children:s}),classLink:s=>(0,va.jsx)("a",{href:"https://mermaid.js.org/syntax/classDiagram.html",children:s})})}),(0,va.jsxs)(hI,{children:[(0,va.jsx)(rg,{label:w("mermaid.syntax"),children:(0,va.jsx)(fI,{input:t,placeholder:"Write Mermaid diagram defintion here...",onChange:s=>a(s.target.value),onKeyboardSubmit:()=>{h()}})}),(0,va.jsx)(rg,{label:w("mermaid.preview"),panelAction:{action:()=>{h()},label:w("mermaid.button"),icon:vu},renderSubmitShortcut:()=>(0,va.jsx)(bI,{}),children:(0,va.jsx)(gI,{canvasRef:l,loaded:e.loaded,error:i})})]})]})},YF=FF,yI=e=>{let t=Mt(),a=(0,Px.useRef)(null),n=(0,Px.useRef)(0);return(0,vI.jsx)(Of,{ref:a,className:"ttd-dialog-tabs-root",value:e.tab,onValueChange:i=>{if(!i)return;let r=a.current?.closest(".Modal__content");if(r){let l=r.offsetHeight||0;l>n.current&&(n.current=l,r.style.minHeight=`min(${n.current}px, 100%)`)}e.dialog==="ttd"&&k3(["text-to-diagram","mermaid"],i)&&t({openDialog:{name:e.dialog,tab:i}})},children:e.children})};yI.displayName="TTDDialogTabs";var GF=yI,wI=({children:e,...t})=>(0,xI.jsx)(zf,{className:"ttd-dialog-triggers",...t,children:e});wI.displayName="TTDDialogTabTriggers";var Hx=({children:e,tab:t,onSelect:a,...n})=>(0,jx.jsx)(Bf,{value:t,asChild:!0,onSelect:a,children:(0,jx.jsx)("button",{type:"button",className:"ttd-dialog-tab-trigger",...n,children:e})});Hx.displayName="TTDDialogTabTrigger";var Fx=({tab:e,children:t,...a})=>(0,EI.jsx)(Uf,{...a,value:e,children:t});Fx.displayName="TTDDialogTab";var dx=3,Ac=1e3,$F=wt(null),VF=wt(null),XF=e=>{let t=ta();return t.openDialog?.name!=="ttd"?null:(0,Je.jsx)(ZF,{...e,tab:t.openDialog.tab})},ZF=Pm("TTDDialogBase",({tab:e,...t})=>{let a=tr(),n=Mt(),i=(0,bi.useRef)(null),[r,l]=ct(VF),[o,d]=(0,bi.useState)(r?.prompt??""),h=o.trim(),s=S=>{d(S.target.value),l(C=>({generatedResponse:C?.generatedResponse??null,prompt:S.target.value}))},[c,u]=(0,bi.useState)(!1),[m,p]=ct($F),f=async()=>{if(h.length>Ac||h.length<dx||c||m?.rateLimitRemaining===0||"__fallback"in t){h.length<dx&&E(new Error(`Prompt is too short (min ${dx} characters)`)),h.length>Ac&&E(new Error(`Prompt is too long (max ${Ac} characters)`));return}try{u(!0),Oe("ai","generate","ttd");let{generatedResponse:S,error:C,rateLimit:_,rateLimitRemaining:D}=await t.onTextSubmit(h);if(typeof S=="string"&&l(k=>({generatedResponse:S,prompt:k?.prompt??null})),Zv(_)&&Zv(D)&&p({rateLimit:_,rateLimitRemaining:D}),C){E(C);return}if(!S){E(new Error("Generation failed"));return}try{await dI({canvasRef:i,data:v,mermaidToExcalidrawLib:g,setError:E,mermaidDefinition:S}),Oe("ai","mermaid parse success","ttd")}catch(k){console.info(`%cTTD mermaid render errror: ${k.message}`,"color: red"),console.info(`>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
|
61
|
+
TTD mermaid definition render errror: ${k.message}`,"color: yellow"),Oe("ai","mermaid parse failed","ttd"),E(new Error("Generated an invalid diagram :(. You may also try a different prompt."))}}catch(S){let C=S.message;(!C||C==="Failed to fetch")&&(C="Request failed"),E(new Error(C))}finally{u(!1)}},y=(0,bi.useRef)(f);y.current=f;let[g,b]=(0,bi.useState)({loaded:!1,api:import("./chunks/dist-KSN2466A.js")});(0,bi.useEffect)(()=>{(async()=>(await g.api,b(S=>({...S,loaded:!0}))))()},[g.api]);let v=(0,bi.useRef)({elements:[],files:null}),[x,E]=(0,bi.useState)(null);return(0,Je.jsx)(Ci,{className:"ttd-dialog",onCloseRequest:()=>{a.setOpenDialog(null)},size:1200,title:!1,...t,autofocus:!1,children:(0,Je.jsxs)(GF,{dialog:"ttd",tab:e,children:["__fallback"in t&&t.__fallback?(0,Je.jsx)("p",{className:"dialog-mermaid-title",children:w("mermaid.title")}):(0,Je.jsxs)(wI,{children:[(0,Je.jsx)(Hx,{tab:"text-to-diagram",children:(0,Je.jsxs)("div",{style:{display:"flex",alignItems:"center"},children:[w("labels.textToDiagram"),(0,Je.jsx)("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",padding:"1px 6px",marginLeft:"10px",fontSize:10,borderRadius:"12px",background:"var(--color-promo)",color:"var(--color-surface-lowest)"},children:"AI Beta"})]})}),(0,Je.jsx)(Hx,{tab:"mermaid",children:"Mermaid"})]}),(0,Je.jsx)(Fx,{className:"ttd-dialog-content",tab:"mermaid",children:(0,Je.jsx)(YF,{mermaidToExcalidrawLib:g})}),!("__fallback"in t)&&(0,Je.jsxs)(Fx,{className:"ttd-dialog-content",tab:"text-to-diagram",children:[(0,Je.jsx)("div",{className:"ttd-dialog-desc",children:"Currently we use Mermaid as a middle step, so you'll get best results if you describe a diagram, workflow, flow chart, and similar."}),(0,Je.jsxs)(hI,{children:[(0,Je.jsx)(rg,{label:w("labels.prompt"),panelAction:{action:f,label:"Generate",icon:vu},onTextSubmitInProgess:c,panelActionDisabled:h.length>Ac||m?.rateLimitRemaining===0,renderTopRight:()=>m?(0,Je.jsxs)("div",{className:"ttd-dialog-rate-limit",style:{fontSize:12,marginLeft:"auto",color:m.rateLimitRemaining===0?"var(--color-danger)":void 0},children:[m.rateLimitRemaining," requests left today"]}):null,renderSubmitShortcut:()=>(0,Je.jsx)(bI,{}),renderBottomRight:()=>{if(typeof r?.generatedResponse=="string")return(0,Je.jsxs)("div",{className:"excalidraw-link",style:{marginLeft:"auto",fontSize:14},onClick:()=>{typeof r?.generatedResponse=="string"&&(pw(r.generatedResponse),n({openDialog:{name:"ttd",tab:"mermaid"}}))},children:["View as Mermaid",(0,Je.jsx)(yg,{icon:vu})]});let S=h.length/Ac;return S>.8?(0,Je.jsxs)("div",{style:{marginLeft:"auto",fontSize:12,fontFamily:"monospace",color:S>1?"var(--color-danger)":void 0},children:["Length: ",h.length,"/",Ac]}):null},children:(0,Je.jsx)(fI,{onChange:s,input:o,placeholder:"Describe what you want to see...",onKeyboardSubmit:()=>{y.current()}})}),(0,Je.jsx)(rg,{label:"Preview",panelAction:{action:()=>{console.info("Panel action clicked"),uI({app:a,data:v})},label:"Insert",icon:vu},children:(0,Je.jsx)(gI,{canvasRef:i,error:x,loaded:g.loaded})})]})]})]})})}),KF=.01,Br=(e,t)=>!(t==="height"&&ae(e)||t==="width"&&ae(e)||t==="angle"&&Ce(e)),xa=(e,t)=>{let a=e+t/2;return a-a%t},lg=(e,t,a)=>Object.keys(e).map(n=>({original:(a??t).get(n),latest:t.get(n)})).filter(n=>n.original!==void 0&&n.latest!==void 0),Rm=(e,t,a,n,i,r,l,o=!0)=>{let d=n.get(a.id);if(!d)return;let[h,s]=[a.x+a.width/2,a.y+a.height/2],[c,u]=Mn(Z(a.x,a.y),Z(h,s),a.angle),m=e-c,p=t-u,[f,y]=Mn(Z(e,t),Z(h+m,s+p),-a.angle);$(d,{x:f,y},o),Yx(d,n,i,r);let g=qe(a,l);if(g){let b=n.get(g.id);b&&$(b,{x:g.x+m,y:g.y+p},o)}},fw=(e,t)=>{let a=ul(t).map(n=>xt(e,n).reduce((i,r)=>(i[r.id]=!0,i),{}));return e.filter(n=>!nc(n)).forEach(n=>{a.push({[n.id]:!0})}),a},Yx=(e,t,a,n,i)=>{Ke(e)?Eu([e],t,a,n,!0,[],i?.zoom):dl(e,t,i)},qF=({label:e,icon:t,dragInputCallback:a,value:n,elements:i,editable:r=!0,shouldKeepAspectRatio:l,property:o,scene:d,appState:h,sensitivity:s=1})=>{let c=tr(),u=(0,Wi.useRef)(null),m=(0,Wi.useRef)(null),[p,f]=(0,Wi.useState)(n.toString()),y=(0,Wi.useRef)(null);y.current||(y.current={originalAppState:zi(h),originalElements:i,lastUpdatedValue:p,updatePending:!1}),(0,Wi.useEffect)(()=>{let v=n.toString();f(v),y.current.lastUpdatedValue=v},[n]);let g=(v,x,E)=>{if(!y.current.updatePending)return!1;y.current.updatePending=!1;let S=Number(v);if(isNaN(S)){f(n.toString());return}let C=Number(S.toFixed(2)),_=Number(n);(isNaN(_)||Math.abs(C-_)>=KF)&&(y.current.lastUpdatedValue=v,a({accumulatedChange:0,instantChange:0,originalElements:x,originalElementsMap:c.scene.getNonDeletedElementsMap(),shouldKeepAspectRatio:l,shouldChangeByStepSize:!1,scene:d,nextValue:C,property:o,originalAppState:E,setInputValue:D=>f(String(D))}),c.syncActionResult({captureUpdate:L.IMMEDIATELY}))},b=(0,Wi.useRef)({});return b.current.handleInputValue=g,(0,Wi.useEffect)(()=>{let v=u.current,x=b.current;return()=>{let E=v?.value;E&&x.handleInputValue?.(E,y.current.originalElements,y.current.originalAppState),window.removeEventListener("pointermove",x.onPointerMove,!1),window.removeEventListener("pointerup",x.onPointerUp,!1)}},[r]),r?(0,Fc.jsxs)("div",{className:U("drag-input-container",!r&&"disabled"),"data-testid":e,children:[(0,Fc.jsx)("div",{className:"drag-input-label",ref:m,onPointerDown:v=>{if(u.current&&r){document.body.classList.add("excalidraw-cursor-resize");let x=Number(u.current.value);isNaN(x)&&(x=0);let E=null,S=c.scene.getNonDeletedElements().reduce((z,G)=>(z.set(G.id,Mu(G)),z),new Map),C=i.map(z=>S.get(z.id)),_=zi(h),D=0,k=0,I=z=>{if(E&&S!==null&&C!==null){let G=z.clientX-E.x;G!==0&&(k+=G,Math.abs(k)>=s&&(k=Math.sign(k)*Math.floor(Math.abs(k)/s),D+=k,a({accumulatedChange:D,instantChange:k,originalElements:C,originalElementsMap:S,shouldKeepAspectRatio:l,shouldChangeByStepSize:z.shiftKey,property:o,scene:d,originalAppState:_,setInputValue:O=>f(String(O))}),k=0))}E={x:z.clientX,y:z.clientY}},j=()=>{window.removeEventListener("pointermove",I,!1),c.syncActionResult({captureUpdate:L.IMMEDIATELY}),E=null,D=0,k=0,C=null,S=null,document.body.classList.remove("excalidraw-cursor-resize"),window.removeEventListener("pointerup",j,!1)};b.current.onPointerMove=I,b.current.onPointerUp=j,window.addEventListener("pointermove",I,!1),window.addEventListener("pointerup",j,!1)}},onPointerEnter:()=>{m.current&&(m.current.style.cursor="ew-resize")},children:t?(0,Fc.jsx)(yg,{icon:t}):e}),(0,Fc.jsx)("input",{className:"drag-input",autoComplete:"off",spellCheck:"false",onKeyDown:v=>{if(r){let x=v.target;x instanceof HTMLInputElement&&v.key===M.ENTER&&(g(x.value,i,h),c.focusContainer())}},ref:u,value:p,onChange:v=>{y.current.updatePending=!0,f(v.target.value)},onFocus:v=>{v.target.select(),y.current.originalElements=i,y.current.originalAppState=zi(h)},onBlur:v=>{p?r&&g(v.target.value,y.current.originalElements,y.current.originalAppState):f(n.toString())},disabled:!r})]}):null},Pr=qF,KM=10,QF=e=>e.type==="image",WF=({accumulatedChange:e,originalElements:t,originalElementsMap:a,shouldKeepAspectRatio:n,shouldChangeByStepSize:i,nextValue:r,property:l,originalAppState:o,instantChange:d,scene:h})=>{let s=h.getNonDeletedElementsMap(),c=t[0],u=s.get(c.id);if(c&&u){let m=n||QF(c),p=c.width/c.height;if(o.croppingElementId===c.id){let v=s.get(c.id);if(!v||!tt(v)||!v.crop)return;let x=v.crop,E={...x},S=v.scale[0]===-1,C=v.scale[1]===-1,{width:_,height:D}=yu(v),k=x.naturalWidth/_,I=x.naturalHeight/D,j=S?x.width+x.x:x.naturalWidth-x.x,z=C?x.height+x.y:x.naturalHeight-x.y,G=$0*k,O=$0*I;if(r!==void 0){if(l==="width"){let re=r*k,oe=Aa(re,G,j);E={...E,width:oe,x:S?x.x+x.width-oe:x.x}}else if(l==="height"){let re=r*I,oe=Aa(re,O,z);E={...E,height:oe,y:C?x.y+x.height-oe:x.y}}$(v,{crop:E,width:E.width/(x.naturalWidth/_),height:E.height/(x.naturalHeight/D)});return}let P=l==="width"?d:0,W=l==="height"?d:0,V=Aa(x.width+P,G,j),X=Aa(x.height+W,G,z);E={...x,x:S?x.x+x.width-V:x.x,y:C?x.y+x.height-X:x.y,width:V,height:X},$(v,{crop:E,width:E.width/(x.naturalWidth/_),height:E.height/(x.naturalHeight/D)});return}if(r!==void 0){let v=Math.max(l==="width"?r:m?r*p:c.width,ln),x=Math.max(l==="height"?r:m?r/p:c.height,ln);Bu(v,x,u,c,s,a,l==="width"?"e":"s",{shouldMaintainAspectRatio:m});return}let f=l==="width"?e:0,y=l==="height"?e:0,g=Math.max(0,c.width+f);l==="width"&&(i?g=xa(g,KM):g=Math.round(g));let b=Math.max(0,c.height+y);l==="height"&&(i?b=xa(b,KM):b=Math.round(b)),m&&(l==="width"?b=Math.round(g/p*100)/100:g=Math.round(b*p*100)/100),b=Math.max(ln,b),g=Math.max(ln,g),Bu(g,b,u,c,s,a,l==="width"?"e":"s",{shouldMaintainAspectRatio:m})}},JF=({property:e,element:t,scene:a,appState:n})=>{let i=Er(e==="width"?t.width:t.height,2);if(n.croppingElementId&&n.croppingElementId===t.id&&tt(t)&&t.crop){let{width:r,height:l}=yu(t);if(e==="width"){let o=r/t.crop.naturalWidth;i=Er(t.crop.width*o,2)}if(e==="height"){let o=l/t.crop.naturalHeight;i=Er(t.crop.height*o,2)}}return(0,CI.jsx)(Pr,{label:e==="width"?"W":"H",elements:[t],dragInputCallback:WF,value:i,editable:Br(t,e),scene:a,appState:n,property:e})},qM=JF,eY=15,tY=({accumulatedChange:e,originalElements:t,shouldChangeByStepSize:a,nextValue:n,scene:i})=>{let r=i.getNonDeletedElementsMap(),l=i.getNonDeletedElements(),o=t[0];if(o&&!me(o)){let d=r.get(o.id);if(!d)return;if(n!==void 0){let p=ru(n);$(d,{angle:p}),Yx(d,r,l,i);let f=qe(d,r);f&&!Gt(d)&&$(f,{angle:p});return}let h=Math.round(lu(o.angle)*100)/100,s=Math.round(e),c=(h+s)%360;a&&(c=xa(c,eY)),c=c<0?c+360:c;let u=ru(c);$(d,{angle:u}),Yx(d,r,l,i);let m=qe(d,r);m&&!Gt(d)&&$(m,{angle:u})}},aY=({element:e,scene:t,appState:a,property:n})=>(0,TI.jsx)(Pr,{label:"A",icon:I0,value:Math.round(lu(e.angle)%360*100)/100,elements:[e],dragInputCallback:tY,editable:Br(e,"angle"),scene:t,appState:a,property:n}),nY=aY,QM=4,iY=4,rY=({accumulatedChange:e,originalElements:t,shouldChangeByStepSize:a,nextValue:n,scene:i})=>{let r=i.getNonDeletedElementsMap(),l=t[0];if(l){let o=r.get(l.id);if(!o||!ae(o))return;let d;if(n!==void 0)d=Math.max(Math.round(n),QM);else if(l.type==="text"){let h=Math.round(l.fontSize),s=Math.round(e);d=Math.max(h+s,QM),a&&(d=xa(d,iY))}d&&($(o,{fontSize:d}),Da(o,i.getContainerElement(o),i.getNonDeletedElementsMap()))}},lY=({element:e,scene:t,appState:a,property:n})=>{let i=ae(e)?e:Bi(e)?qe(e,t.getNonDeletedElementsMap()):null;return i?(0,_I.jsx)(Pr,{label:"F",value:Math.round(i.fontSize*10)/10,elements:[i],dragInputCallback:rY,icon:bu,appState:a,scene:t,property:n}):null},oY=lY,Dc=10,sY=(e,t,a,n)=>{let i=n.x-e,r=n.y-t,l=n.width*a,o=n.height*a,d=e+i*a,h=t+r*a;return{width:l,height:o,x:d,y:h,...f_(n,l,o,!1),...ae(n)?{fontSize:n.fontSize*a}:{}}},cY=(e,t,a,n,i,r,l,o)=>{let d=sY(e,t,n,r);$(i,d,!1);let h=qe(r,o);if(h){let s=h.fontSize*n;dl(i,l,{newSize:{width:d.width,height:d.height}});let c=l.get(h.id);c&&ae(c)&&($(c,{fontSize:s},!1),gT(i,l,a==="width"?"e":"s",!0))}},WM=(e,t,a,n,i,r,l,o,d,h)=>{r==="width"?t=Math.round(e/n*100)/100:e=Math.round(t*n*100)/100;let s=t/a;for(let c=0;c<o.length;c++){let u=o[c],m=l[c];cY(i[0],i[1],r,s,m,u,d,h)}},dY=({accumulatedChange:e,originalElements:t,originalElementsMap:a,originalAppState:n,shouldChangeByStepSize:i,nextValue:r,scene:l,property:o})=>{let d=l.getNonDeletedElementsMap(),h=fw(t,n);if(r!==void 0){for(let u of h){let m=lg(u,d,a);if(m.length>1){let p=m.map(D=>D.latest),f=m.map(D=>D.original),[y,g,b,v]=gt(f),x=b-y,E=v-g,S=x/E,C=Math.max(ln,o==="width"?Math.max(0,r):x),_=Math.max(ln,o==="height"?Math.max(0,r):E);WM(C,_,E,S,Z(y,g),o,p,f,d,a)}else{let[p]=m,f=p?.latest,y=p?.original;if(f&&y&&Br(f,o)){let g=o==="width"?Math.max(0,r):f.width;o==="width"&&(i?g=xa(g,Dc):g=Math.round(g));let b=o==="height"?Math.max(0,r):f.height;o==="height"&&(i?b=xa(b,Dc):b=Math.round(b)),g=Math.max(ln,g),b=Math.max(ln,b),Bu(g,b,f,y,d,a,o==="width"?"e":"s",{shouldInformMutation:!1})}}}l.triggerUpdate();return}let s=o==="width"?e:0,c=o==="height"?e:0;for(let u of h){let m=lg(u,d,a);if(m.length>1){let p=m.map(D=>D.latest),f=m.map(D=>D.original),[y,g,b,v]=gt(f),x=b-y,E=v-g,S=x/E,C=Math.max(0,x+s);o==="width"&&(i?C=xa(C,Dc):C=Math.round(C));let _=Math.max(0,E+c);o==="height"&&(i?_=xa(_,Dc):_=Math.round(_)),C=Math.max(ln,C),_=Math.max(ln,_),WM(C,_,E,S,Z(y,g),o,p,f,d,a)}else{let[p]=m,f=p?.latest,y=p?.original;if(f&&y&&Br(f,o)){let g=Math.max(0,y.width+s);o==="width"&&(i?g=xa(g,Dc):g=Math.round(g));let b=Math.max(0,y.height+c);o==="height"&&(i?b=xa(b,Dc):b=Math.round(b)),g=Math.max(ln,g),b=Math.max(ln,b),Bu(g,b,f,y,d,a,o==="width"?"e":"s",{shouldInformMutation:!1})}}}l.triggerUpdate()},uY=({property:e,elements:t,elementsMap:a,atomicUnits:n,scene:i,appState:r})=>{let l=(0,kI.useMemo)(()=>n.map(h=>{let s=lg(h,a);if(s.length>1){let[u,m,p,f]=gt(s.map(y=>y.latest));return Math.round((e==="width"?p-u:f-m)*100)/100}let[c]=s;return Math.round((e==="width"?c.latest.width:c.latest.height)*100)/100}),[a,n,e]),o=new Set(l).size===1?Math.round(l[0]*100)/100:"Mixed",d=l.length>0;return(0,MI.jsx)(Pr,{label:e==="width"?"W":"H",elements:t,dragInputCallback:dY,value:o,editable:d,appState:r,property:e,scene:i})},JM=uY,mY=15,hY=({accumulatedChange:e,originalElements:t,shouldChangeByStepSize:a,nextValue:n,property:i,scene:r})=>{let l=r.getNonDeletedElementsMap(),o=t.map(h=>l.get(h.id)).filter(h=>h&&!nc(h)&&Br(h,i)),d=t.filter(h=>!nc(h)&&Br(h,i));if(n!==void 0){let h=ru(n);for(let s of o){if(!s)continue;$(s,{angle:h},!1);let c=qe(s,l);c&&!Gt(s)&&$(c,{angle:h},!1)}r.triggerUpdate();return}for(let h=0;h<o.length;h++){let s=o[h];if(!s)continue;let c=d[h],u=Math.round(lu(c.angle)*100)/100,m=Math.round(e),p=(u+m)%360;a&&(p=xa(p,mY)),p=p<0?p+360:p;let f=ru(p);$(s,{angle:f},!1);let y=qe(s,l);y&&!Gt(s)&&$(y,{angle:f},!1)}r.triggerUpdate()},pY=({elements:e,scene:t,appState:a,property:n})=>{let i=e.filter(d=>!nc(d)&&Br(d,"angle")),r=i.map(d=>Math.round(lu(d.angle)%360*100)/100),l=new Set(r).size===1?r[0]:"Mixed",o=i.some(d=>Br(d,"angle"));return(0,AI.jsx)(Pr,{label:"A",icon:I0,value:l,elements:e,dragInputCallback:hY,editable:o,appState:a,scene:t,property:n})},fY=pY,eA=4,gY=4,bY=(e,t)=>e.reduce((a,n)=>{if(!n||nc(n))return a;if(ae(n))return a.push(n),a;if(Bi(n)){let i=qe(n,t);if(i)return a.push(i),a}return a},[]),vY=({accumulatedChange:e,originalElements:t,shouldChangeByStepSize:a,nextValue:n,scene:i})=>{let r=i.getNonDeletedElementsMap(),l=t.map(d=>r.get(d.id)),o;if(n){o=Math.max(Math.round(n),eA);for(let d of l)$(d,{fontSize:o},!1),Da(d,i.getContainerElement(d),r,!1);i.triggerUpdate()}else{let d=t;for(let h=0;h<l.length;h++){let s=l[h],c=d[h],u=Math.round(c.fontSize),m=Math.round(e),p=Math.max(u+m,eA);a&&(p=xa(p,gY)),$(s,{fontSize:p},!1),Da(s,i.getContainerElement(s),r,!1)}i.triggerUpdate()}},yY=({elements:e,scene:t,appState:a,property:n,elementsMap:i})=>{let r=bY(e,i);if(!r.length)return null;let l=r.map(h=>Math.round(h.fontSize*10)/10),o=new Set(l).size===1?l[0]:"Mixed",d=l.length>0;return(0,DI.jsx)(Pr,{label:"F",icon:bu,elements:r,dragInputCallback:vY,value:o,editable:d,scene:t,property:n,appState:a})},xY=yY,tA=10,wY=({accumulatedChange:e,instantChange:t,originalElements:a,originalElementsMap:n,shouldChangeByStepSize:i,nextValue:r,property:l,scene:o,originalAppState:d})=>{let h=o.getNonDeletedElementsMap(),s=o.getNonDeletedElements(),c=a[0],[u,m]=[c.x+c.width/2,c.y+c.height/2],[p,f]=Mn(Z(c.x,c.y),Z(u,m),c.angle);if(d.croppingElementId===c.id){let x=h.get(c.id);if(!x||!tt(x)||!x.crop)return;let E=x.crop,S=E,C=x.scale[0]===-1,_=x.scale[1]===-1,{width:D,height:k}=yu(x);if(r!==void 0){if(l==="x"){let z=r*(E.naturalWidth/D);C?S={...E,x:Aa(E.naturalWidth-z-E.width,0,E.naturalWidth-E.width)}:S={...E,x:Aa(r*(E.naturalWidth/D),0,E.naturalWidth-E.width)}}l==="y"&&(S={...E,y:Aa(r*(E.naturalHeight/k),0,E.naturalHeight-E.height)}),$(x,{crop:S});return}let I=(l==="x"?t:0)*(C?-1:1),j=(l==="y"?t:0)*(_?-1:1);S={...E,x:Aa(E.x+I,0,E.naturalWidth-E.width),y:Aa(E.y+j,0,E.naturalHeight-E.height)},$(x,{crop:S});return}if(r!==void 0){Rm(l==="x"?r:p,l==="y"?r:f,c,h,s,o,n);return}let y=l==="x"?e:0,g=l==="y"?e:0,b=l==="x"?Math.round(i?xa(c.x+y,tA):p+y):p,v=l==="y"?Math.round(i?xa(c.y+g,tA):f+g):f;Rm(b,v,c,h,s,o,n)},EY=({property:e,element:t,elementsMap:a,scene:n,appState:i})=>{let[r,l]=Mn(Z(t.x,t.y),Z(t.x+t.width/2,t.y+t.height/2),t.angle),o=Er(e==="x"?r:l,2);if(i.croppingElementId===t.id&&tt(t)&&t.crop){let d=OC(t);d&&(o=Er(e==="x"?d.x:d.y,2))}return(0,II.jsx)(Pr,{label:e==="x"?"X":"Y",elements:[t],dragInputCallback:wY,scene:n,value:o,property:e,appState:i})},aA=EY,SY=10,CY=(e,t,a,n,i,r,l,o)=>{for(let d=0;d<n.length;d++){let h=i[d],[s,c]=[h.x+h.width/2,h.y+h.height/2],[u,m]=Mn(Z(h.x,h.y),Z(s,c),h.angle),p=e==="x"?Math.round(u+t):u,f=e==="y"?Math.round(m+a):m;Rm(p,f,h,r,n,o,l,!1)}},TY=(e,t,a,n,i,r,l)=>{let[o,d,,]=gt(a),h=e-o,s=t-d;for(let c=0;c<a.length;c++){let u=a[c],m=n.get(u.id);if(m&&(!ae(m)||!m.containerId)){let[p,f]=[m.x+m.width/2,m.y+m.height/2],[y,g]=Mn(Z(m.x,m.y),Z(p,f),m.angle);Rm(y+h,g+s,u,n,i,l,r,!1)}}},_Y=({accumulatedChange:e,originalElements:t,originalElementsMap:a,shouldChangeByStepSize:n,nextValue:i,property:r,scene:l,originalAppState:o})=>{let d=l.getNonDeletedElementsMap(),h=l.getNonDeletedElements();if(i!==void 0){for(let c of fw(t,o)){let u=lg(c,d,a);if(u.length>1){let[m,p,,]=gt(u.map(f=>f.latest));TY(r==="x"?i:m,r==="y"?i:p,u.map(f=>f.original),d,h,a,l)}else{let m=u[0]?.original,p=u[0]?.latest;if(m&&p&&Br(p,r)){let[f,y]=[m.x+m.width/2,m.y+m.height/2],[g,b]=Mn(Z(m.x,m.y),Z(f,y),m.angle);Rm(r==="x"?i:g,r==="y"?i:b,m,d,h,l,a,!1)}}}l.triggerUpdate();return}let s=n?xa(e,SY):e;CY(r,r==="x"?s:0,r==="y"?s:0,t,t,d,a,l),l.triggerUpdate()},kY=({property:e,elements:t,elementsMap:a,atomicUnits:n,scene:i,appState:r})=>{let l=(0,NI.useMemo)(()=>n.map(d=>{let h=Object.keys(d).map(f=>a.get(f)).filter(f=>f!==void 0);if(h.length>1){let[f,y]=gt(h);return Math.round((e==="x"?f:y)*100)/100}let[s]=h,[c,u]=[s.x+s.width/2,s.y+s.height/2],[m,p]=Mn(Z(s.x,s.y),Z(c,u),s.angle);return Math.round((e==="x"?m:p)*100)/100}),[n,a,e]),o=new Set(l).size===1?l[0]:"Mixed";return(0,LI.jsx)(Pr,{label:e==="x"?"X":"Y",elements:t,dragInputCallback:_Y,value:o,property:e,scene:i,appState:r})},nA=kY,iA=5,MY=({property:e,scene:t,appState:a,setAppState:n})=>(0,RI.jsx)(Pr,{label:"Grid step",sensitivity:8,elements:[],dragInputCallback:({nextValue:i,instantChange:r,shouldChangeByStepSize:l,setInputValue:o})=>{n(d=>{let h;return i?h=i:r&&(h=l?xa(d.gridStep+iA*Math.sign(r),iA):d.gridStep+r),h?(h=WC(h),o(h),{gridStep:h}):(o(d.gridStep),null)})},scene:t,value:a.gridStep,property:e,appState:a}),AY=MY,DY=50,gw=e=>{let t=Fm(),a=e.app.scene.getSceneNonce()||1,n=e.app.scene.getSelectedElements({selectedElementIds:t.selectedElementIds,includeBoundTextElement:!1}),i=Tu(e.app);return(0,Q.jsx)(IY,{...e,appState:t,sceneNonce:a,selectedElements:n,gridModeEnabled:i})},Ge=({children:e,columns:t=1,heading:a,style:n,...i})=>(0,Q.jsx)("div",{className:U("exc-stats__row",{"exc-stats__row--heading":a}),style:{gridTemplateColumns:`repeat(${t}, 1fr)`,...n},...i,children:e});Ge.displayName="StatsRow";var og=({children:e,order:t,style:a,...n})=>(0,Q.jsx)("div",{className:"exc-stats__rows",style:{order:t,...a},...n,children:e});og.displayName="StatsRows";gw.StatsRow=Ge;gw.StatsRows=og;var IY=(0,wi.memo)(({app:e,onClose:t,renderCustomStats:a,selectedElements:n,appState:i,sceneNonce:r,gridModeEnabled:l})=>{let o=e.scene,d=o.getNonDeletedElements(),h=o.getNonDeletedElementsMap(),s=Mt(),c=n.length===1?n[0]:null,u=n.length>1?n:null,m=i.croppingElementId&&tt(c),p=m?yu(c):null,[f,y]=(0,wi.useState)({width:0,height:0}),g=(0,wi.useMemo)(()=>(0,SI.default)(x=>{let E=gt(x);y({width:Math.round(E[2])-Math.round(E[0]),height:Math.round(E[3])-Math.round(E[1])})},DY),[]);(0,wi.useEffect)(()=>{g(d)},[r,d,g]),(0,wi.useEffect)(()=>()=>g.cancel(),[g]);let b=(0,wi.useMemo)(()=>fw(n,i),[n,i]),v=(0,wi.useMemo)(()=>z1(n),[n]);return(0,Q.jsx)("div",{className:"exc-stats",children:(0,Q.jsxs)(xi,{padding:3,children:[(0,Q.jsxs)("div",{className:"title",children:[(0,Q.jsx)("h2",{children:w("stats.title")}),(0,Q.jsx)("div",{className:"close",onClick:t,children:Lo})]}),(0,Q.jsxs)(wx,{label:(0,Q.jsx)("h3",{children:w("stats.generalStats")}),open:!!(i.stats.panels&nu.generalStats),openTrigger:()=>s(x=>({stats:{open:!0,panels:x.stats.panels^nu.generalStats}})),children:[(0,Q.jsxs)(og,{children:[(0,Q.jsx)(Ge,{heading:!0,children:w("stats.scene")}),(0,Q.jsxs)(Ge,{columns:2,children:[(0,Q.jsx)("div",{children:w("stats.shapes")}),(0,Q.jsx)("div",{children:d.length})]}),(0,Q.jsxs)(Ge,{columns:2,children:[(0,Q.jsx)("div",{children:w("stats.width")}),(0,Q.jsx)("div",{children:f.width})]}),(0,Q.jsxs)(Ge,{columns:2,children:[(0,Q.jsx)("div",{children:w("stats.height")}),(0,Q.jsx)("div",{children:f.height})]}),l&&(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(Ge,{heading:!0,children:"Canvas"}),(0,Q.jsx)(Ge,{children:(0,Q.jsx)(AY,{property:"gridStep",scene:o,appState:i,setAppState:s})})]})]}),a?.(d,i)]}),!v&&n.length>0&&(0,Q.jsx)("div",{id:"elementStats",style:{marginTop:12},children:(0,Q.jsx)(wx,{label:(0,Q.jsx)("h3",{children:w("stats.elementProperties")}),open:!!(i.stats.panels&nu.elementProperties),openTrigger:()=>s(x=>({stats:{open:!0,panels:x.stats.panels^nu.elementProperties}})),children:(0,Q.jsxs)(og,{children:[c&&(0,Q.jsxs)(Q.Fragment,{children:[m&&(0,Q.jsx)(Ge,{heading:!0,children:w("labels.unCroppedDimension")}),i.croppingElementId&&tt(c)&&p&&(0,Q.jsxs)(Ge,{columns:2,children:[(0,Q.jsx)("div",{children:w("stats.width")}),(0,Q.jsx)("div",{children:Er(p.width,2)})]}),i.croppingElementId&&tt(c)&&p&&(0,Q.jsxs)(Ge,{columns:2,children:[(0,Q.jsx)("div",{children:w("stats.height")}),(0,Q.jsx)("div",{children:Er(p.height,2)})]}),(0,Q.jsx)(Ge,{heading:!0,"data-testid":"stats-element-type",children:i.croppingElementId?w("labels.imageCropping"):w(`element.${c.type}`)}),(0,Q.jsx)(Ge,{children:(0,Q.jsx)(aA,{element:c,property:"x",elementsMap:h,scene:o,appState:i})}),(0,Q.jsx)(Ge,{children:(0,Q.jsx)(aA,{element:c,property:"y",elementsMap:h,scene:o,appState:i})}),(0,Q.jsx)(Ge,{children:(0,Q.jsx)(qM,{property:"width",element:c,scene:o,appState:i})}),(0,Q.jsx)(Ge,{children:(0,Q.jsx)(qM,{property:"height",element:c,scene:o,appState:i})}),!me(c)&&(0,Q.jsx)(Ge,{children:(0,Q.jsx)(nY,{property:"angle",element:c,scene:o,appState:i})}),(0,Q.jsx)(Ge,{children:(0,Q.jsx)(oY,{property:"fontSize",element:c,scene:o,appState:i})})]}),u&&(0,Q.jsxs)(Q.Fragment,{children:[lT(u)&&(0,Q.jsx)(Ge,{heading:!0,children:w("element.group")}),(0,Q.jsxs)(Ge,{columns:2,style:{margin:"0.3125rem 0"},children:[(0,Q.jsx)("div",{children:w("stats.shapes")}),(0,Q.jsx)("div",{children:n.length})]}),(0,Q.jsx)(Ge,{children:(0,Q.jsx)(nA,{property:"x",elements:u,elementsMap:h,atomicUnits:b,scene:o,appState:i})}),(0,Q.jsx)(Ge,{children:(0,Q.jsx)(nA,{property:"y",elements:u,elementsMap:h,atomicUnits:b,scene:o,appState:i})}),(0,Q.jsx)(Ge,{children:(0,Q.jsx)(JM,{property:"width",elements:u,elementsMap:h,atomicUnits:b,scene:o,appState:i})}),(0,Q.jsx)(Ge,{children:(0,Q.jsx)(JM,{property:"height",elements:u,elementsMap:h,atomicUnits:b,scene:o,appState:i})}),(0,Q.jsx)(Ge,{children:(0,Q.jsx)(fY,{property:"angle",elements:u,scene:o,appState:i})}),(0,Q.jsx)(Ge,{children:(0,Q.jsx)(xY,{property:"fontSize",elements:u,scene:o,appState:i,elementsMap:h})})]})]})})})]})})},(e,t)=>e.sceneNonce===t.sceneNonce&&e.selectedElements===t.selectedElements&&e.appState.stats.panels===t.appState.stats.panels&&e.gridModeEnabled===t.gridModeEnabled&&e.appState.gridStep===t.appState.gridStep&&e.appState.croppingElementId===t.appState.croppingElementId),NY=({sourceElementId:e,onClose:t,elementsMap:a,appState:n,generateLinkForSelection:i=w1})=>{let r=a.get(e)?.link??null,[l,o]=(0,Hl.useState)(r),[d,h]=(0,Hl.useState)(!1);(0,Hl.useEffect)(()=>{let c=ce(a,n),u=r;if(c.length>0&&i){let m=E1(c,n);m&&(u=hl(i(m.id,m.type)))}o(u)},[a,n,n.selectedElementIds,r,i]);let s=(0,Hl.useCallback)(()=>{if(l&&l!==a.get(e)?.link){let c=a.get(e);c&&$(c,{link:l})}if(!l&&d&&e){let c=a.get(e);c&&$(c,{link:null})}t?.()},[e,l,a,d,t]);return(0,Hl.useEffect)(()=>{let c=u=>{n.openDialog?.name==="elementLinkSelector"&&u.key===M.ENTER&&s(),n.openDialog?.name==="elementLinkSelector"&&u.key===M.ESCAPE&&t?.()};return window.addEventListener("keydown",c),()=>{window.removeEventListener("keydown",c)}},[n,t,s]),(0,Bn.jsxs)("div",{className:"ElementLinkDialog",children:[(0,Bn.jsxs)("div",{className:"ElementLinkDialog__header",children:[(0,Bn.jsx)("h2",{children:w("elementLink.title")}),(0,Bn.jsx)("p",{children:w("elementLink.desc")})]}),(0,Bn.jsxs)("div",{className:"ElementLinkDialog__input",children:[(0,Bn.jsx)(dw,{value:l??"",onChange:c=>{d||h(!0),o(c)},onKeyDown:c=>{c.key===M.ENTER&&s()},className:"ElementLinkDialog__input-field",selectOnRender:!0}),r&&l&&(0,Bn.jsx)(he,{type:"button",title:w("buttons.remove"),"aria-label":w("buttons.remove"),label:w("buttons.remove"),onClick:()=>{o(null),h(!0)},className:"ElementLinkDialog__remove",icon:sl})]}),(0,Bn.jsxs)("div",{className:"ElementLinkDialog__actions",children:[(0,Bn.jsx)(Yc,{label:w("buttons.cancel"),onClick:()=>{t?.()},style:{marginRight:10}}),(0,Bn.jsx)(Yc,{label:w("buttons.confirm"),onClick:s,actionType:"primary"})]})]})},LY=NY,RY=({UIOptions:e})=>(0,q.jsxs)(Xa,{__fallback:!0,children:[(0,q.jsx)(Xa.DefaultItems.LoadScene,{}),(0,q.jsx)(Xa.DefaultItems.SaveToActiveFile,{}),e.canvasActions.export&&(0,q.jsx)(Xa.DefaultItems.Export,{}),e.canvasActions.saveAsImage&&(0,q.jsx)(Xa.DefaultItems.SaveAsImage,{}),(0,q.jsx)(Xa.DefaultItems.SearchMenu,{}),(0,q.jsx)(Xa.DefaultItems.Help,{}),(0,q.jsx)(Xa.DefaultItems.ClearCanvas,{}),(0,q.jsx)(Xa.Separator,{}),(0,q.jsx)(Xa.Group,{title:"Excalidraw links",children:(0,q.jsx)(Xa.DefaultItems.Socials,{})}),(0,q.jsx)(Xa.Separator,{}),(0,q.jsx)(Xa.DefaultItems.ToggleTheme,{}),(0,q.jsx)(Xa.DefaultItems.ChangeCanvasBackground,{})]}),OY=()=>(0,q.jsxs)(cx,{__fallback:!0,children:[(0,q.jsx)(cx.Actions.SaveToDisk,{}),(0,q.jsx)(cx.Actions.ExportToImage,{})]}),zY=({actionManager:e,appState:t,files:a,setAppState:n,elements:i,canvas:r,onLockToggle:l,onHandToolToggle:o,onPenModeToggle:d,showExitZenModeBtn:h,renderTopRightUI:s,renderCustomStats:c,UIOptions:u,onExportImage:m,renderWelcomeScreen:p,children:f,app:y,isCollaborating:g,generateLinkForSelection:b})=>{let v=Bt(),x=EH(),E=x.tunnelsJotai.Provider,[S,C]=ct(vg),_=()=>u.canvasActions.export?(0,q.jsx)(vF,{elements:i,appState:t,files:a,actionManager:e,exportOpts:u.canvasActions.export,canvas:r,setAppState:n}):null,D=()=>!u.canvasActions.saveAsImage||t.openDialog?.name!=="imageExport"?null:(0,q.jsx)(XH,{elements:i,appState:t,files:a,actionManager:e,onExportImage:m,onCloseRequest:()=>n({openDialog:null}),name:y.getName()}),k=()=>(0,q.jsxs)("div",{style:{position:"relative"},children:[(0,q.jsx)(x.MainMenuTunnel.Out,{}),p&&(0,q.jsx)(x.WelcomeScreenMenuHintTunnel.Out,{})]}),I=()=>(0,q.jsx)(Am,{heading:"selectedShapeActions",className:U("selected-shape-actions zen-mode-transition",{"transition-left":t.zenModeEnabled}),children:(0,q.jsx)(xi,{className:To.SHAPE_ACTIONS_MENU,padding:2,style:{maxHeight:`${t.height-166}px`},children:(0,q.jsx)(QD,{appState:t,elementsMap:y.scene.getNonDeletedElementsMap(),renderAction:e.renderAction,app:y})})}),j=()=>{let P=Kp(t,i),W=t.stats.open&&!t.zenModeEnabled&&!t.viewModeEnabled&&t.openDialog?.name!=="elementLinkSelector";return(0,q.jsx)(f8,{side:"top",children:(0,q.jsxs)("div",{className:"App-menu App-menu_top",children:[(0,q.jsxs)(Hn.Col,{gap:6,className:U("App-menu_top__left"),children:[k(),P&&I()]}),!t.viewModeEnabled&&t.openDialog?.name!=="elementLinkSelector"&&(0,q.jsx)(Am,{heading:"shapes",className:"shapes-section",children:V=>(0,q.jsxs)("div",{style:{position:"relative"},children:[p&&(0,q.jsx)(x.WelcomeScreenToolbarHintTunnel.Out,{}),(0,q.jsx)(Hn.Col,{gap:4,align:"start",children:(0,q.jsxs)(Hn.Row,{gap:1,className:U("App-toolbar-container",{"zen-mode":t.zenModeEnabled}),children:[(0,q.jsxs)(xi,{padding:1,className:U("App-toolbar",{"zen-mode":t.zenModeEnabled}),children:[(0,q.jsx)(v8,{appState:t,isMobile:v.editor.isMobile,device:v,app:y}),V,(0,q.jsxs)(Hn.Row,{gap:1,children:[(0,q.jsx)(x8,{zenModeEnabled:t.zenModeEnabled,checked:t.penMode,onChange:()=>d(null),title:w("toolBar.penMode"),penDetected:t.penDetected}),(0,q.jsx)(y8,{checked:t.activeTool.locked,onChange:l,title:w("toolBar.lock")}),(0,q.jsx)("div",{className:"App-toolbar__divider"}),(0,q.jsx)(E8,{checked:Vs(t),onChange:()=>o(),title:w("toolBar.hand"),isMobile:!0}),(0,q.jsx)(WD,{appState:t,activeTool:t.activeTool,UIOptions:u,app:y})]})]}),g&&(0,q.jsx)(xi,{style:{marginLeft:8,alignSelf:"center",height:"fit-content"},children:(0,q.jsx)(UF,{title:w("toolBar.laser"),checked:t.activeTool.type===rn.laser,onChange:()=>y.setActiveTool({type:rn.laser}),isMobile:!0})})]})})]})}),(0,q.jsxs)("div",{className:U("layer-ui__wrapper__top-right zen-mode-transition",{"transition-right":t.zenModeEnabled}),children:[t.collaborators.size>0&&(0,q.jsx)(C8,{collaborators:t.collaborators,userToFollow:t.userToFollow?.socketId||null}),s?.(v.editor.isMobile,t),!t.viewModeEnabled&&t.openDialog?.name!=="elementLinkSelector"&&(!G||t.openSidebar?.name!==ii.name)&&(0,q.jsx)(x.DefaultSidebarTriggerTunnel.Out,{}),W&&(0,q.jsx)(gw,{app:y,onClose:()=>{e.executeAction(kx)},renderCustomStats:c})]})]})})},z=()=>(0,q.jsx)(XM,{__fallback:!0,onDock:P=>{Oe("sidebar",`toggleDock (${P?"dock":"undock"})`,`(${v.editor.isMobile?"mobile":"desktop"})`)}}),G=vA(mw),O=(0,q.jsxs)(q.Fragment,{children:[f,(0,q.jsx)(RY,{UIOptions:u}),(0,q.jsx)(XM.Trigger,{__fallback:!0,icon:fp,title:Xs(w("toolBar.library")),onToggle:P=>{P&&Oe("sidebar",`${ii.name} (open)`,`button (${v.editor.isMobile?"mobile":"desktop"})`)},tab:ii.defaultTab,children:w("toolBar.library")}),(0,q.jsx)(OY,{}),t.openDialog?.name==="ttd"&&(0,q.jsx)(XF,{__fallback:!0}),t.isLoading&&(0,q.jsx)(EA,{delay:250}),t.errorMessage&&(0,q.jsx)(HH,{onClose:()=>n({errorMessage:null}),children:t.errorMessage}),S&&!v.editor.isMobile&&(0,q.jsx)(fP,{colorPickerType:S.colorPickerType,onCancel:()=>{C(null)},onChange:(P,W,V,{altKey:X})=>{if(!(P!=="elementBackground"&&P!=="elementStroke"))if(V.length){for(let re of V)$(re,{[X&&S.swapPreviewOnAlt?P==="elementBackground"?"strokeColor":"backgroundColor":P==="elementBackground"?"backgroundColor":"strokeColor"]:W},!1),No.delete(re);bl.getScene(V[0])?.triggerUpdate()}else n(P==="elementBackground"?{currentItemBackgroundColor:W}:{currentItemStrokeColor:W})},onSelect:(P,W)=>{C(V=>V?.keepOpenOnAlt&&W.altKey?V:null),S?.onSelect?.(P,W)}}),t.openDialog?.name==="help"&&(0,q.jsx)(mF,{onClose:()=>{n({openDialog:null})}}),(0,q.jsx)(kH,{}),t.openDialog?.name==="elementLinkSelector"&&(0,q.jsx)(LY,{sourceElementId:t.openDialog.sourceElementId,onClose:()=>{n({openDialog:null})},elementsMap:y.scene.getNonDeletedElementsMap(),appState:t,generateLinkForSelection:b}),(0,q.jsx)(x.OverwriteConfirmDialogTunnel.Out,{}),D(),_(),t.pasteDialog.shown&&(0,q.jsx)(lF,{setAppState:n,appState:t,onClose:()=>n({pasteDialog:{shown:!1,data:null}})}),v.editor.isMobile&&(0,q.jsx)(rF,{app:y,appState:t,elements:i,actionManager:e,renderJSONExportDialog:_,renderImageExportDialog:D,setAppState:n,onLockToggle:l,onHandToolToggle:o,onPenModeToggle:d,renderTopRightUI:s,renderCustomStats:c,renderSidebars:z,device:v,renderWelcomeScreen:p,UIOptions:u}),!v.editor.isMobile&&(0,q.jsxs)(q.Fragment,{children:[(0,q.jsxs)("div",{className:"layer-ui__wrapper",style:t.openSidebar&&G&&v.editor.canFitSidebar?{width:"calc(100% - var(--right-sidebar-width))"}:{},children:[p&&(0,q.jsx)(x.WelcomeScreenCenterTunnel.Out,{}),j(),(0,q.jsx)(xF,{appState:t,actionManager:e,showExitZenModeBtn:h,renderWelcomeScreen:p}),t.scrolledOutside&&(0,q.jsx)("button",{type:"button",className:"scroll-back-to-content",onClick:()=>{n(P=>({...Su(i,P)}))},children:w("buttons.scrollBackToContent")})]}),z()]})]});return(0,q.jsx)(FA.Provider,{value:t,children:(0,q.jsx)(E,{children:(0,q.jsx)(ZD.Provider,{value:x,children:O})})})},rA=e=>{let{suggestedBindings:t,startBoundElement:a,cursorButton:n,scrollX:i,scrollY:r,...l}=e;return l},BY=(e,t)=>{if(e.children!==t.children)return!1;let{canvas:a,appState:n,...i}=e,{canvas:r,appState:l,...o}=t;return Dn(rA(n),rA(l),{selectedElementIds:Dn,selectedGroupIds:Dn})&&Dn(i,o)},UY=m8.default.memo(zY,BY),PY=5e3,jY=({message:e,onClose:t,closable:a=!1,duration:n=PY,style:i})=>{let r=(0,Qc.useRef)(0),l=n!==1/0,o=(0,Qc.useCallback)(()=>{l&&(r.current=window.setTimeout(()=>t(),n))},[t,n,l]);return(0,Qc.useEffect)(()=>{if(l)return o(),()=>clearTimeout(r.current)},[o,e,n,l]),(0,Om.jsxs)("div",{className:"Toast",onMouseEnter:l?()=>clearTimeout(r?.current):void 0,onMouseLeave:l?o:void 0,style:i,children:[(0,Om.jsx)("p",{className:"Toast__message",children:e}),a&&(0,Om.jsx)(he,{icon:Lo,"aria-label":"close",type:"icon",onClick:t,className:"close"})]})},lA=Y({name:"viewMode",label:"labels.viewMode",paletteName:"Toggle view mode",icon:Tp,viewMode:!0,trackEvent:{category:"canvas",predicate:e=>!e.viewModeEnabled},perform(e,t){return{appState:{...t,viewModeEnabled:!this.checked(t)},captureUpdate:L.EVENTUALLY}},checked:e=>e.viewModeEnabled,predicate:(e,t,a)=>typeof a.viewModeEnabled>"u",keyTest:e=>!e[M.CTRL_OR_CMD]&&e.altKey&&e.code===ye.R}),zI=(e,t)=>{let a=t.scene.getSelectedElements(e);return a.length===1&&Ce(a[0])},HY=Y({name:"selectAllElementsInFrame",label:"labels.selectAllElementsInFrame",trackEvent:{category:"canvas"},perform:(e,t,a,n)=>{let i=n.scene.getSelectedElements(t).at(0)||null;if(Ce(i)){let r=Uo(Ue(e),i.id).filter(l=>!(l.type==="text"&&l.containerId));return{elements:e,appState:{...t,selectedElementIds:r.reduce((l,o)=>(l[o.id]=!0,l),{})},captureUpdate:L.IMMEDIATELY}}return{elements:e,appState:t,captureUpdate:L.EVENTUALLY}},predicate:(e,t,a,n)=>zI(t,n)}),FY=Y({name:"removeAllElementsFromFrame",label:"labels.removeAllElementsFromFrame",trackEvent:{category:"history"},perform:(e,t,a,n)=>{let i=n.scene.getSelectedElements(t).at(0)||null;return Ce(i)?{elements:l_(e,i),appState:{...t,selectedElementIds:{[i.id]:!0}},captureUpdate:L.IMMEDIATELY}:{elements:e,appState:t,captureUpdate:L.EVENTUALLY}},predicate:(e,t,a,n)=>zI(t,n)}),tee=Y({name:"updateFrameRendering",label:"labels.updateFrameRendering",viewMode:!0,trackEvent:{category:"canvas"},perform:(e,t)=>({elements:e,appState:{...t,frameRendering:{...t.frameRendering,enabled:!t.frameRendering.enabled}},captureUpdate:L.EVENTUALLY}),checked:e=>e.frameRendering.enabled}),aee=Y({name:"setFrameAsActiveTool",label:"toolBar.frame",trackEvent:{category:"toolbar"},icon:R0,viewMode:!1,perform:(e,t,a,n)=>{let i=Nt(t,{type:"frame"});return Pi(n.interactiveCanvas,{...t,activeTool:i}),{elements:e,appState:{...t,activeTool:Nt(t,{type:"frame"})},captureUpdate:L.EVENTUALLY}},keyTest:e=>!e[M.CTRL_OR_CMD]&&!e.shiftKey&&!e.altKey&&e.key.toLocaleLowerCase()===M.F}),YY=Y({name:"wrapSelectionInFrame",label:"labels.wrapSelectionInFrame",trackEvent:{category:"element"},predicate:(e,t,a,n)=>{let i=ce(e,t);return i.length>0&&!i.some(r=>Ce(r))},perform:(e,t,a,n)=>{let i=ce(e,t),[r,l,o,d]=gt(i,n.scene.getNonDeletedElementsMap()),h=16,s=Up({x:r-h,y:l-h,width:o-r+h*2,height:d-l+h*2});if(t.editingGroupId){let c=xt(i,t.editingGroupId);for(let u of c){let m=u.groupIds.indexOf(t.editingGroupId);$(u,{groupIds:u.groupIds.slice(0,m)},!1)}}return{elements:Ru([...n.scene.getElementsIncludingDeleted(),s],i,s,t),appState:{selectedElementIds:{[s.id]:!0}},captureUpdate:L.IMMEDIATELY}}}),GY=()=>(0,ga.jsxs)("div",{"data-testid":"brave-measure-text-error",children:[(0,ga.jsx)("p",{children:(0,ga.jsx)(Qi,{i18nKey:"errors.brave_measure_text_error.line1",bold:e=>(0,ga.jsx)("span",{style:{fontWeight:600},children:e})})}),(0,ga.jsx)("p",{children:(0,ga.jsx)(Qi,{i18nKey:"errors.brave_measure_text_error.line2",bold:e=>(0,ga.jsx)("span",{style:{fontWeight:600},children:e})})}),(0,ga.jsx)("p",{children:(0,ga.jsx)(Qi,{i18nKey:"errors.brave_measure_text_error.line3",link:e=>(0,ga.jsx)("a",{href:"http://docs.excalidraw.com/docs/@excalidraw/excalidraw/faq#turning-off-aggresive-block-fingerprinting-in-brave-browser",children:e})})}),(0,ga.jsx)("p",{children:(0,ga.jsx)(Qi,{i18nKey:"errors.brave_measure_text_error.line4",issueLink:e=>(0,ga.jsx)("a",{href:"https://github.com/excalidraw/excalidraw/issues/new",children:e}),discordLink:e=>(0,ga.jsxs)("a",{href:"https://discord.gg/UexuTaE",children:[e,"."]})})})]}),$Y=GY,Yf={width:100,height:0},Rl=100,VY=(e,t,a)=>{let n=fl({x:0,y:0,textAlign:ap.CENTER,verticalAlign:wr.MIDDLE,...t,containerId:e.id,strokeColor:t.strokeColor||e.strokeColor});return Object.assign(e,{boundElements:(e.boundElements||[]).concat({type:"text",id:n.id})}),Da(n,e,a),[e,n]},oA=(e,t,a,n,i)=>{let r,l;if(Object.assign(e,{startBinding:e?.startBinding||null,endBinding:e.endBinding||null}),t){let s=t?.width??Rl,c=t?.height??Rl,u;t.id&&(u=n.getElement(t.id),u||console.error(`No element for start binding with id ${t.id} found`));let m=t.x||e.x-s,p=t.y||e.y-c/2,f=u?u.type:t.type;if(f){if(f==="text"){let y="";u&&u.type==="text"?y=u.text:t.type==="text"&&(y=t.text),y||console.error(`No text found for start binding text element for ${e.id}`),r=fl({x:m,y:p,type:"text",...u,...t,text:y}),Object.assign(r,{x:t.x||e.x-r.width,y:t.y||e.y-r.height/2})}else switch(f){case"rectangle":case"ellipse":case"diamond":{r=pl({x:m,y:p,width:s,height:c,...u,...t,type:f});break}default:dp(e,`Unhandled element start type "${t.type}"`,!0)}zo(e,r,"start",i)}}if(a){let s=a?.height??Rl,c=a?.width??Rl,u;a.id&&(u=n.getElement(a.id),u||console.error(`No element for end binding with id ${a.id} found`));let m=a.x||e.x+e.width,p=a.y||e.y-s/2,f=u?u.type:a.type;if(f){if(f==="text"){let y="";u&&u.type==="text"?y=u.text:a.type==="text"&&(y=a.text),y||console.error(`No text found for end binding text element for ${e.id}`),l=fl({x:m,y:p,type:"text",...u,...a,text:y}),Object.assign(l,{y:a.y||e.y-l.height/2})}else switch(f){case"rectangle":case"ellipse":case"diamond":{l=pl({x:m,y:p,width:c,height:s,...u,...a,type:f});break}default:dp(e,`Unhandled element end type "${f}"`,!0)}zo(e,l,"end",i)}}if(e.points.length<2)return{linearElement:e,startBoundElement:r,endBoundElement:l};let o=e.points.length-1,d=.5,h=zi(e.points);return e.points[o][0]>e.points[o-1][0]&&(h[0][0]=d,h[o][0]-=d),e.points[o][0]<e.points[o-1][0]&&(h[0][0]=-d,h[o][0]+=d),e.points[o][1]>e.points[o-1][1]&&(h[0][1]=d,h[o][1]-=d),e.points[o][1]<e.points[o-1][1]&&(h[0][1]=-d,h[o][1]+=d),Object.assign(e,{points:h}),{linearElement:e,startBoundElement:r,endBoundElement:l}},XY=class{constructor(){A(this,"excalidrawElements",new Map),A(this,"add",e=>{e&&this.excalidrawElements.set(e.id,e)}),A(this,"getElements",()=>ic(Array.from(this.excalidrawElements.values()))),A(this,"getElementsMap",()=>up(Ie(this.getElements()))),A(this,"getElement",e=>this.excalidrawElements.get(e))}},Gx=(e,t)=>{if(!e)return[];let a=zi(e),n=new XY,i=new Map,r=new Map;for(let o of a){let d,h=o.id;switch(t?.regenerateIds!==!1&&Object.assign(o,{id:ku()}),o.type){case"rectangle":case"ellipse":case"diamond":{let s=o?.label?.text&&o.width===void 0?0:o?.width||Rl,c=o?.label?.text&&o.height===void 0?0:o?.height||Rl;d=pl({...o,width:s,height:c});break}case"line":{let s=o.width||Yf.width,c=o.height||Yf.height;d=d1({width:s,height:c,points:[Z(0,0),Z(s,c)],...o});break}case"arrow":{let s=o.width||Yf.width,c=o.height||Yf.height;d=jp({width:s,height:c,endArrowhead:"arrow",points:[Z(0,0),Z(s,c)],...o,type:"arrow"}),Object.assign(d,GC(d.points));break}case"text":{let s=o?.fontFamily||Wh,c=o?.fontSize||Qh,u=o?.lineHeight||Ws(s),m=o.text??"",p=pu(m),f=Sr(p,An({fontFamily:s,fontSize:c}),u);d=fl({width:f.width,height:f.height,fontFamily:s,fontSize:c,...o});break}case"image":{d=u1({width:o?.width||Rl,height:o?.height||Rl,...o});break}case"frame":{d=Up({x:0,y:0,...o});break}case"magicframe":{d=Pp({x:0,y:0,...o});break}case"freedraw":case"iframe":case"embeddable":{d=o;break}default:d=o,dp(o,`Unhandled element type "${o.type}"`,!0)}n.getElement(d.id)?console.error(`Duplicate id found for ${d.id}`):(n.add(d),i.set(d.id,o),h&&r.set(h,d.id))}let l=n.getElementsMap();for(let[o,d]of i){let h=n.getElement(o);switch(d.type){case"rectangle":case"ellipse":case"diamond":case"arrow":{if(d.label?.text){let[s,c]=VY(h,d?.label,l);if(n.add(s),n.add(c),Gt(s)){let u=d.type==="arrow"?d?.start:void 0,m=d.type==="arrow"?d?.end:void 0;if(u&&u.id){let g=r.get(u.id);g&&Object.assign(u,{id:g})}if(m&&m.id){let g=r.get(m.id);g&&Object.assign(m,{id:g})}let{linearElement:p,startBoundElement:f,endBoundElement:y}=oA(s,u,m,n,l);s=p,n.add(p),n.add(f),n.add(y)}}else switch(d.type){case"arrow":{let{start:s,end:c}=d;if(s&&s.id){let f=r.get(s.id);Object.assign(s,{id:f})}if(c&&c.id){let f=r.get(c.id);Object.assign(c,{id:f})}let{linearElement:u,startBoundElement:m,endBoundElement:p}=oA(h,s,c,n,l);n.add(u),n.add(m),n.add(p);break}}break}}}for(let[o,d]of i){if(d.type!=="frame"&&d.type!=="magicframe")continue;let h=n.getElement(o);if(!h)throw new Error(`Excalidraw element with id ${o} doesn't exist`);let s=[];d.children.forEach(x=>{let E=r.get(x);if(!E)throw new Error(`Element with ${x} wasn't mapped correctly`);let S=n.getElement(E);if(!S)throw new Error(`Frame element with id ${E} doesn't exist`);Object.assign(S,{frameId:h.id}),S?.boundElements?.forEach(C=>{let _=n.getElement(C.id);if(!_)throw new Error(`Bound element with id ${C.id} doesn't exist`);Object.assign(_,{frameId:h.id}),s.push(_)}),s.push(S)});let[c,u,m,p]=gt(s),f=10;c=c-f,u=u-f,m=m+f,p=p+f;let y=h?.x||c,g=h?.y||u,b=h?.width||m-c,v=h?.height||p-u;Object.assign(h,{x:y,y:g,width:b,height:v}),n0()&&d.children.length&&(h?.x||h?.y||h?.width||h?.height)&&console.info("User provided frame attributes are being considered, if you find this inaccurate, please remove any of the attributes - x, y, width and height so frame coordinates and dimensions are calculated automatically")}return n.getElements()},st=e=>t=>{(0,bw.unstable_batchedUpdates)(e,t)},ux=e=>lp(t=>{(0,bw.unstable_batchedUpdates)(e,t)}),vw=(()=>{let e;try{let a=BI.version.split(".");e=Number(a[0])>17}catch{e=!1}let t=!1;return()=>window.EXCALIDRAW_THROTTLE_RENDER===!0?e?!0:(t||(t=!0,console.warn("Excalidraw: render throttling is disabled on React versions < 18.")),!1):!1})(),ZY="#ff6b6b",KY="#ff0000",sA=1,cA=2,qY=(e,t)=>{if(!t.snapLines.length)return;let a=t.theme===xe.LIGHT||t.zenModeEnabled?ZY:KY,n=(t.zenModeEnabled?sA*1.5:sA)/t.zoom.value;e.save(),e.translate(t.scrollX,t.scrollY);for(let i of t.snapLines)i.type==="pointer"?(e.lineWidth=n,e.strokeStyle=a,WY(i,e,t)):i.type==="gap"?(e.lineWidth=n,e.strokeStyle=a,JY(i.points[0],i.points[1],i.direction,t,e)):i.type==="points"&&(e.lineWidth=n,e.strokeStyle=a,QY(i,e,t));e.restore()},QY=(e,t,a)=>{if(!a.zenModeEnabled){let n=e.points[0],i=e.points[e.points.length-1];Rn(n,i,t)}for(let n of e.points)UI(n,a,t)},WY=(e,t,a)=>{UI(e.points[0],a,t),a.zenModeEnabled||Rn(e.points[0],e.points[1],t)},UI=([e,t],a,n)=>{n.save();let i=(a.zenModeEnabled?cA*1.5:cA)/a.zoom.value;n.beginPath(),n.moveTo(e-i,t-i),n.lineTo(e+i,t+i),n.moveTo(e+i,t-i),n.lineTo(e-i,t+i),n.stroke(),n.restore()},Rn=(e,t,a)=>{a.beginPath(),a.lineTo(e[0],e[1]),a.lineTo(t[0],t[1]),a.stroke()},JY=(e,t,a,n,i)=>{let r=8/n.zoom.value,l=r/2,o=r/4;if(a==="horizontal"){let d=[(e[0]+t[0])/2,e[1]];n.zenModeEnabled||Rn(Z(e[0],e[1]-r),Z(e[0],e[1]+r),i),Rn(Z(d[0]-o,d[1]-l),Z(d[0]-o,d[1]+l),i),Rn(Z(d[0]+o,d[1]-l),Z(d[0]+o,d[1]+l),i),n.zenModeEnabled||(Rn(Z(t[0],t[1]-r),Z(t[0],t[1]+r),i),Rn(e,t,i))}else{let d=[e[0],(e[1]+t[1])/2];n.zenModeEnabled||Rn(Z(e[0]-r,e[1]),Z(e[0]+r,e[1]),i),Rn(Z(d[0]-l,d[1]-o),Z(d[0]+l,d[1]-o),i),Rn(Z(d[0]-l,d[1]+o),Z(d[0]+l,d[1]+o),i),n.zenModeEnabled||(Rn(Z(t[0]-r,t[1]),Z(t[0]+r,t[1]),i),Rn(e,t,i))}},eG=(e,t)=>{ll(t.selectedLinearElement,"selectedLinearElement is null");let{segmentMidPointHoveredCoords:a}=t.selectedLinearElement;ll(a,"midPointCoords is null"),e.save(),e.translate(t.scrollX,t.scrollY),PI(a,e,t),e.restore()},tG=(e,t,a)=>{let{elementId:n,hoverPointIndex:i}=t.selectedLinearElement;if(t.editingLinearElement?.selectedPointsIndices?.includes(i))return;let r=ne.getElement(n,a);if(!r)return;let l=ne.getPointAtIndexGlobalCoordinates(r,i,a);e.save(),e.translate(t.scrollX,t.scrollY),PI(l,e,t),e.restore()},PI=(e,t,a)=>{t.fillStyle="rgba(105, 101, 219, 0.4)",Du(t,e[0],e[1],ne.POINT_HANDLE_SIZE/a.zoom.value,!1)},jm=(e,t,a,n,i,r,l,o,d=!1,h=0)=>{e.save(),e.translate(r,l),e.rotate(o),d&&e.fillRect(t-r,a-l,n,i),h&&e.roundRect?(e.beginPath(),e.roundRect(t-r,a-l,n,i,h),e.stroke(),e.closePath()):e.strokeRect(t-r,a-l,n,i),e.restore()},aG=(e,t,a,n,i,r)=>{e.save(),e.translate(n,i),e.rotate(r),e.beginPath(),e.moveTo(0,a/2),e.lineTo(t/2,0),e.lineTo(0,-a/2),e.lineTo(-t/2,0),e.closePath(),e.stroke(),e.restore()},mx=(e,t,a,n,i,r=!1)=>{e.strokeStyle="#5e5ad8",e.setLineDash([]),e.fillStyle="rgba(255, 255, 255, 0.9)",i?e.fillStyle="rgba(134, 131, 226, 0.9)":r&&(e.fillStyle="rgba(177, 151, 252, 0.7)"),Du(e,a[0],a[1],n/t.zoom.value,!r)},nG=(e,t,a,n,i,r)=>{e.beginPath(),e.ellipse(n,i,t/2,a/2,r,0,Math.PI*2),e.stroke()},iG=(e,t,a,n)=>{let[i,r,l,o]=In(t,a),d=l-i,h=o-r;e.strokeStyle="rgba(0,0,0,.05)";let s=n.value<1?n.value:1;e.lineWidth=XC/s;let c=e.lineWidth/2+ZC,u=G0(Math.min(t.width,t.height),t);switch(t.type){case"rectangle":case"text":case"image":case"iframe":case"embeddable":case"frame":case"magicframe":jm(e,i-c,r-c,d+c*2,h+c*2,i+d/2,r+h/2,t.angle,void 0,u);break;case"diamond":let m=Math.hypot(d,h),p=c*m/h,f=c*m/d;aG(e,d+p*2,h+f*2,i+d/2,r+h/2,t.angle);break;case"ellipse":nG(e,d+c*2,h+c*2,i+d/2,r+h/2,t.angle);break}},rG=(e,t,a,n)=>{let[i,r,l]=t,o=qC(l,l.width,l.height,n);e.strokeStyle="rgba(0,0,0,0)",e.fillStyle="rgba(0,0,0,.05)",(r==="both"?[0,-1]:r==="start"?[0]:[-1]).forEach(d=>{let[h,s]=ne.getPointAtIndexGlobalCoordinates(i,d,a);Du(e,h,s,o)})},jI=(e,t,a)=>{let{angle:n,x1:i,y1:r,x2:l,y2:o,selectionColors:d,cx:h,cy:s,dashed:c,activeEmbeddable:u}=a,m=l-i,p=o-r,f=(a.padding??Jh*2)/t.zoom.value,y=8/t.zoom.value,g=4/t.zoom.value;e.save(),e.translate(t.scrollX,t.scrollY),e.lineWidth=(u?4:1)/t.zoom.value;let b=d.length;for(let v=0;v<b;++v)e.strokeStyle=d[v],c&&e.setLineDash([y,g+(y+g)*(b-1)]),e.lineDashOffset=(y+g)*v,jm(e,i-f,r-f,m+f*2,p+f*2,h,s,n);e.restore()},lG=(e,t,a,n)=>{let i=Array.isArray(a)?rG:iG;e.save(),e.translate(t.scrollX,t.scrollY),i(e,a,n,t.zoom),e.restore()},oG=(e,t,a,n)=>{let[i,r,l,o]=In(a,n),d=l-i,h=o-r;e.strokeStyle="rgb(0,118,255)",e.lineWidth=Li.strokeWidth/t.zoom.value,e.save(),e.translate(t.scrollX,t.scrollY),jm(e,i,r,d,h,i+d/2,r+h/2,a.angle,!1,Li.radius/t.zoom.value),e.restore()},sG=(e,t,a)=>{let n=a.filter(o=>o.groupIds.length===0),i=a.filter(o=>o.groupIds.length>0),r=o=>{let[d,h,s,c]=gt(o);return{angle:0,x1:d,x2:s,y1:h,y2:c,selectionColors:["rgb(0,118,255)"],dashed:!1,cx:d+(s-d)/2,cy:h+(c-h)/2,activeEmbeddable:!1}},l=o=>{let d=xt(a,o);return r(d)};Object.entries(tT(i,t)).filter(([o,d])=>d).map(([o,d])=>o).map(o=>l(o)).concat(n.map(o=>r([o]))).forEach(o=>jI(e,t,o))},hx=(e,t,a,n)=>{if(!t.selectedLinearElement)return;e.save(),e.translate(t.scrollX,t.scrollY),e.lineWidth=1/t.zoom.value;let i=ne.getPointsGlobalCoordinates(a,n),{POINT_HANDLE_SIZE:r}=ne,l=t.editingLinearElement?r:r/2;if(i.forEach((o,d)=>{if(me(a)&&d!==0&&d!==i.length-1)return;let h=!!t.editingLinearElement?.selectedPointsIndices?.includes(d);mx(e,t,o,l,h)}),me(a)){let o=a.fixedSegments?.map(d=>d.index)||[];i.slice(0,-1).forEach((d,h)=>{ne.isSegmentTooShort(a,i[h+1],i[h],h,t.zoom)||mx(e,t,Z((d[0]+i[h+1][0])/2,(d[1]+i[h+1][1])/2),r/2,!1,!o.includes(h+1))})}else ne.getEditorMidPoints(a,n,t).filter((o,d,h)=>o!==null&&!(me(a)&&(d===0||d===h.length-1))).forEach(o=>{(t.editingLinearElement||i.length===2)&&mx(e,t,o,r/2,!1,!0)});e.restore()},dA=(e,t,a,n,i)=>{Object.keys(n).forEach(r=>{let l=n[r];if(l!==void 0){let[o,d,h,s]=l;e.save(),e.lineWidth=1/a.zoom.value,t.selectionColor&&(e.strokeStyle=t.selectionColor),r==="rotation"?Du(e,o+h/2,d+s/2,h/2):e.roundRect?(e.beginPath(),e.roundRect(o,d,h,s,2/a.zoom.value),e.fill(),e.stroke()):jm(e,o,d,h,s,o+h/2,d+s/2,i,!0),e.restore()}})},cG=(e,t,a,n,i)=>{let[r,l,,,o,d]=In(n,i),h=3,s=20,c=h/a.zoom.value,u=c/2,m=o-r+c,p=d-l+c,f=Math.min(s/a.zoom.value,m),y=Math.min(s/a.zoom.value,p);e.save(),e.fillStyle=t.selectionColor,e.strokeStyle=t.selectionColor,e.lineWidth=c,[[[-m,-p],[0,u],[f,u],[u,0],[u,y]],[[m-u,-p],[u,u],[-f+u,u],[0,0],[0,y]],[[-m,p],[0,-u],[f,-u],[u,0],[u,-y]],[[m-u,p],[u,-u],[-f+u,-u],[0,0],[0,-y]]].forEach(g=>{let[[b,v],[x,E],[S,C],[_,D],[k,I]]=g;e.save(),e.translate(o,d),e.rotate(n.angle),e.beginPath(),e.moveTo(b+x,v+E),e.lineTo(b+S,v+C),e.stroke(),e.beginPath(),e.moveTo(b+_,v+D),e.lineTo(b+k,v+I),e.stroke(),e.restore()}),e.restore()},dG=(e,t,a,n)=>{t.save();let i=Jh*2/a.zoom.value,r=e.width+i*2,l=e.height+i*2,o=e.x+r/2,d=e.y+l/2,h=-(r/2+i),s=-(l/2+i);t.translate(o+a.scrollX,d+a.scrollY),t.rotate(e.angle),t.lineWidth=1/a.zoom.value,t.strokeStyle=n,t.strokeRect(h,s,r,l),t.restore()},HI=({canvas:e,elementsMap:t,visibleElements:a,selectedElements:n,allElementsMap:i,scale:r,appState:l,renderConfig:o,device:d})=>{if(e===null)return{atLeastOneVisibleElement:!1,elementsMap:t};let[h,s]=y1(e,r),c=x1({canvas:e,scale:r,normalizedWidth:h,normalizedHeight:s});c.save(),c.scale(l.zoom.value,l.zoom.value);let u;if(a.forEach(f=>{l.editingLinearElement?.elementId===f.id&&f&&(u=f)}),u&&hx(c,l,u,t),l.selectionElement&&!l.isCropping)try{BC(l.selectionElement,c,l,o.selectionColor)}catch(f){console.error(f)}if(l.editingTextElement&&ae(l.editingTextElement)){let f=i.get(l.editingTextElement.id);f&&!f.autoResize&&dG(f,c,l,o.selectionColor)}l.isBindingEnabled&&l.suggestedBindings.filter(f=>f!=null).forEach(f=>{lG(c,l,f,t)}),l.frameToHighlight&&oG(c,l,l.frameToHighlight,t),l.elementsToHighlight&&sG(c,l,l.elementsToHighlight);let m=n.some(f=>Ce(f));if(n.length===1&&l.editingLinearElement?.elementId===n[0].id&&hx(c,l,n[0],t),me(n[0])&&l.selectedLinearElement&&l.selectedLinearElement.segmentMidPointHoveredCoords?eG(c,l):l.selectedLinearElement&&l.selectedLinearElement.hoverPointIndex>=0&&!(me(n[0])&&l.selectedLinearElement.hoverPointIndex>0&&l.selectedLinearElement.hoverPointIndex<n[0].points.length-1)&&tG(c,l,t),!l.multiElement&&!l.editingLinearElement){let f=j1(n,l),y=n.length===1&&Ke(n[0]);y&&l.selectedLinearElement?.elementId===n[0].id&&!n[0].locked&&hx(c,l,n[0],t);let g=o.selectionColor||ca.black;if(f){let b=Ie(n),v=[];for(let E of t.values()){let S=[],C=o.remoteSelectedElementIds.get(E.id);if(y&&me(E)&&(E.startBinding||E.endBinding)||(b.has(E.id)&&!t1(l,E)&&S.push(g),C&&S.push(...C.map(_=>kg(_,l.collaborators.get(_))))),S.length){let[_,D,k,I,j,z]=In(E,t,!0);v.push({angle:E.angle,x1:_,y1:D,x2:k,y2:I,selectionColors:S,dashed:!!C,cx:j,cy:z,activeEmbeddable:l.activeEmbeddable?.element===E&&l.activeEmbeddable.state==="active",padding:E.id===l.croppingElementId||tt(E)?0:void 0})}}let x=E=>{let S=xt(t,E),[C,_,D,k]=gt(S);v.push({angle:0,x1:C,x2:D,y1:_,y2:k,selectionColors:[ca.black],dashed:!0,cx:C+(D-C)/2,cy:_+(k-_)/2,activeEmbeddable:!1})};for(let E of ul(l))x(E);l.editingGroupId&&x(l.editingGroupId),v.forEach(E=>jI(c,l,E))}if(c.save(),c.translate(l.scrollX,l.scrollY),n.length===1){c.fillStyle=ca.white;let b=h_(n[0],l.zoom,t,"mouse",Zp(d));if(!l.viewModeEnabled&&f&&!ae(l.editingTextElement)&&!l.croppingElementId&&dA(c,o,l,b,n[0].angle),l.croppingElementId&&!l.isCropping){let v=t.get(l.croppingElementId);v&&tt(v)&&cG(c,o,l,v,t)}}else if(n.length>1&&!l.isRotating){let b=Jh*2/l.zoom.value;c.fillStyle=ca.white;let[v,x,E,S]=gt(n),C=c.getLineDash();c.setLineDash([2/l.zoom.value]);let _=c.lineWidth;c.lineWidth=1/l.zoom.value,c.strokeStyle=g,jm(c,v-b,x-b,E-v+b*2,S-x+b*2,(v+E)/2,(x+S)/2,0),c.lineWidth=_,c.setLineDash(C);let D=m_([v,x,E,S,(v+E)/2,(x+S)/2],0,l.zoom,"mouse",m?{...Zp(d),rotation:!0}:Zp(d));n.some(k=>!k.locked)&&dA(c,o,l,D,0)}c.restore()}l.searchMatches.forEach(({id:f,focus:y,matchedLines:g})=>{let b=t.get(f);if(b&&ae(b)){let[v,x,,,E,S]=In(b,t,!0);c.save(),l.theme===xe.LIGHT?y?c.fillStyle="rgba(255, 124, 0, 0.4)":c.fillStyle="rgba(255, 226, 0, 0.4)":y?c.fillStyle="rgba(229, 82, 0, 0.4)":c.fillStyle="rgba(99, 52, 0, 0.4)",c.translate(l.scrollX,l.scrollY),c.translate(E,S),c.rotate(b.angle),g.forEach(C=>{c.fillRect(v+C.offsetX-E,x+C.offsetY-S,C.width,C.height)}),c.restore()}}),qY(c,l),c.restore(),qP({context:c,renderConfig:o,appState:l,normalizedWidth:h,normalizedHeight:s});let p;return o.renderScrollbars&&(p=nF(a,h,s,l),c.save(),c.fillStyle=aF,c.strokeStyle="rgba(255,255,255,0.8)",[p.horizontal,p.vertical].forEach(f=>{f&&vD(c,f.x,f.y,f.width,f.height,Ll/2)}),c.restore()),{scrollBars:p,atLeastOneVisibleElement:a.length>0,elementsMap:t}},FI=lp(e=>{let t=HI(e);e.callback?.(t)},{trailing:!0}),uG=(e,t)=>{if(t){FI(e);return}let a=HI(e);return e.callback(a),a},mG=e=>{let t=(0,Wc.useRef)(!1);return(0,Wc.useEffect)(()=>{if(!t.current){t.current=!0;return}let a=new Map,n=new Map,i=new Map,r=new Map,l=new Map;e.appState.collaborators.forEach((d,h)=>{if(d.selectedElementIds)for(let s of Object.keys(d.selectedElementIds))i.has(s)||i.set(s,[]),i.get(s).push(h);!d.pointer||d.pointer.renderCursor===!1||(d.username&&r.set(h,d.username),d.userState&&l.set(h,d.userState),n.set(h,Oi({sceneX:d.pointer.x,sceneY:d.pointer.y},e.appState)),a.set(h,d.button))});let o=e.containerRef?.current&&getComputedStyle(e.containerRef.current).getPropertyValue("--color-selection")||"#6965db";uG({canvas:e.canvas,elementsMap:e.elementsMap,visibleElements:e.visibleElements,selectedElements:e.selectedElements,allElementsMap:e.allElementsMap,scale:window.devicePixelRatio,appState:e.appState,renderConfig:{remotePointerViewportCoords:n,remotePointerButton:a,remoteSelectedElementIds:i,remotePointerUsernames:r,remotePointerUserStates:l,selectionColor:o,renderScrollbars:!1},device:e.device,callback:e.renderInteractiveSceneCallback},vw())}),(0,YI.jsx)("canvas",{className:"excalidraw__canvas interactive",style:{width:e.appState.width,height:e.appState.height,cursor:e.appState.viewModeEnabled?De.GRAB:De.AUTO},width:e.appState.width*e.scale,height:e.appState.height*e.scale,ref:e.handleCanvasRef,onContextMenu:e.onContextMenu,onPointerMove:e.onPointerMove,onPointerUp:e.onPointerUp,onPointerCancel:e.onPointerCancel,onTouchMove:e.onTouchMove,onPointerDown:e.onPointerDown,onDoubleClick:e.appState.viewModeEnabled?void 0:e.onDoubleClick,children:w("labels.drawingCanvas")})},uA=e=>({zoom:e.zoom,scrollX:e.scrollX,scrollY:e.scrollY,width:e.width,height:e.height,viewModeEnabled:e.viewModeEnabled,openDialog:e.openDialog,editingGroupId:e.editingGroupId,editingLinearElement:e.editingLinearElement,selectedElementIds:e.selectedElementIds,frameToHighlight:e.frameToHighlight,offsetLeft:e.offsetLeft,offsetTop:e.offsetTop,theme:e.theme,pendingImageElementId:e.pendingImageElementId,selectionElement:e.selectionElement,selectedGroupIds:e.selectedGroupIds,selectedLinearElement:e.selectedLinearElement,multiElement:e.multiElement,isBindingEnabled:e.isBindingEnabled,suggestedBindings:e.suggestedBindings,isRotating:e.isRotating,elementsToHighlight:e.elementsToHighlight,collaborators:e.collaborators,activeEmbeddable:e.activeEmbeddable,snapLines:e.snapLines,zenModeEnabled:e.zenModeEnabled,editingTextElement:e.editingTextElement,isCropping:e.isCropping,croppingElementId:e.croppingElementId,searchMatches:e.searchMatches}),hG=(e,t)=>e.selectionNonce!==t.selectionNonce||e.sceneNonce!==t.sceneNonce||e.scale!==t.scale||e.elementsMap!==t.elementsMap||e.visibleElements!==t.visibleElements||e.selectedElements!==t.selectedElements?!1:Dn(uA(e.appState),uA(t.appState)),pG=Wc.default.memo(mG,hG),fG=e=>{let t=(0,fs.useRef)(null),a=(0,fs.useRef)(!1);return(0,fs.useEffect)(()=>{let n=t.current;if(!n)return;let i=e.canvas;a.current||(a.current=!0,n.replaceChildren(i),i.classList.add("excalidraw__canvas","static"));let r=`${e.appState.width}px`,l=`${e.appState.height}px`;i.style.width!==r&&(i.style.width=r),i.style.height!==l&&(i.style.height=l);let o=e.appState.width*e.scale,d=e.appState.height*e.scale;i.width!==o&&(i.width=o),i.height!==d&&(i.height=d),YT({canvas:i,rc:e.rc,scale:e.scale,elementsMap:e.elementsMap,allElementsMap:e.allElementsMap,visibleElements:e.visibleElements,appState:e.appState,renderConfig:e.renderConfig},vw())}),(0,GI.jsx)("div",{className:"excalidraw__canvas-wrapper",ref:t})},mA=e=>({zoom:e.zoom,scrollX:e.scrollX,scrollY:e.scrollY,width:e.width,height:e.height,viewModeEnabled:e.viewModeEnabled,openDialog:e.openDialog,hoveredElementIds:e.hoveredElementIds,offsetLeft:e.offsetLeft,offsetTop:e.offsetTop,theme:e.theme,pendingImageElementId:e.pendingImageElementId,shouldCacheIgnoreZoom:e.shouldCacheIgnoreZoom,viewBackgroundColor:e.viewBackgroundColor,exportScale:e.exportScale,selectedElementsAreBeingDragged:e.selectedElementsAreBeingDragged,gridSize:e.gridSize,gridStep:e.gridStep,frameRendering:e.frameRendering,selectedElementIds:e.selectedElementIds,frameToHighlight:e.frameToHighlight,editingGroupId:e.editingGroupId,currentHoveredFontFamily:e.currentHoveredFontFamily,croppingElementId:e.croppingElementId}),gG=(e,t)=>e.sceneNonce!==t.sceneNonce||e.scale!==t.scale||e.elementsMap!==t.elementsMap||e.visibleElements!==t.visibleElements?!1:Dn(mA(e.appState),mA(t.appState))&&Dn(e.renderConfig,t.renderConfig),bG=fs.default.memo(fG,gG),hA=class{constructor(e){A(this,"scene"),A(this,"getRenderableElements",(()=>{let t=({elementsMap:n,zoom:i,offsetLeft:r,offsetTop:l,scrollX:o,scrollY:d,height:h,width:s})=>{let c=[];for(let u of n.values())Xp(u,s,h,{zoom:i,offsetLeft:r,offsetTop:l,scrollX:o,scrollY:d},n)&&c.push(u);return c},a=({elements:n,editingTextElement:i,newElementId:r,pendingImageElementId:l})=>{let o=up(new Map);for(let d of n)tt(d)&&l===d.id||r!==d.id&&(!i||i.type!=="text"||d.id!==i.id)&&o.set(d.id,d);return o};return _3(({zoom:n,offsetLeft:i,offsetTop:r,scrollX:l,scrollY:o,height:d,width:h,editingTextElement:s,newElementId:c,pendingImageElementId:u,sceneNonce:m})=>{let p=this.scene.getNonDeletedElements(),f=a({elements:p,editingTextElement:s,newElementId:c,pendingImageElementId:u}),y=t({elementsMap:f,zoom:n,offsetLeft:i,offsetTop:r,scrollX:l,scrollY:o,height:d,width:h});return{elementsMap:f,visibleElements:y}})})()),this.scene=e}destroy(){FI.cancel(),FT.cancel(),this.getRenderableElements.clear()}},vG=({trails:e})=>{let t=(0,Fg.useRef)(null);return(0,Fg.useEffect)(()=>{if(t.current)for(let a of e)a.start(t.current);return()=>{for(let a of e)a.stop()}},e),(0,$x.jsx)("div",{className:"SVGLayer",children:(0,$x.jsx)("svg",{ref:t})})},yG=5,xG=(e,t,a)=>{let[n,i]=In(e,a),{x:r,y:l}=Oi({sceneX:n+e.width,sceneY:i},t),o=r-t.offsetLeft+10,d=l-t.offsetTop;return{x:o,y:d}},pA=({children:e,element:t,elementsMap:a})=>{let n=Fm();if(n.contextMenu||n.newElement||n.resizingElement||n.isRotating||n.openMenu||n.viewModeEnabled)return null;let{x:i,y:r}=xG(t,n,a);return(0,$I.jsx)("div",{className:"excalidraw-canvas-buttons",style:{top:`${r}px`,left:`${i}px`,padding:yG},children:e})},wG="small",px=e=>(0,zm.jsxs)("label",{className:U("ToolIcon ToolIcon__MagicButton",`ToolIcon_size_${wG}`,{"is-mobile":e.isMobile}),title:`${e.title}`,children:[(0,zm.jsx)("input",{className:"ToolIcon_type_checkbox",type:"checkbox",name:e.name,onChange:e.onChange,checked:e.checked,"aria-label":e.title}),(0,zm.jsx)("div",{className:"ToolIcon__icon",children:e.icon})]}),EG=({height:e,width:t,userToFollow:a,onDisconnect:n})=>(0,ds.jsx)("div",{className:"follow-mode",style:{width:t,height:e},children:(0,ds.jsxs)("div",{className:"follow-mode__badge",children:[(0,ds.jsxs)("div",{className:"follow-mode__badge__label",children:["Following"," ",(0,ds.jsx)("span",{className:"follow-mode__badge__username",title:a.username,children:a.username})]}),(0,ds.jsx)("button",{type:"button",onClick:n,className:"follow-mode__disconnect-btn",children:Lo})]})}),SG=EG,CG=class{constructor(){A(this,"targets",new WeakMap),A(this,"rafIds",new WeakMap)}register(e,t){this.targets.set(e,{callback:t,stopped:!0})}start(e){let t=this.targets.get(e);t&&(this.rafIds.has(e)||(this.targets.set(e,{...t,stopped:!1}),this.scheduleFrame(e)))}stop(e){let t=this.targets.get(e);t&&!t.stopped&&this.targets.set(e,{...t,stopped:!0}),this.cancelFrame(e)}constructFrame(e){return t=>{let a=this.targets.get(e);if(!a)return;let n=this.onFrame(a,t);!a.stopped&&!n?this.scheduleFrame(e):this.cancelFrame(e)}}scheduleFrame(e){let t=requestAnimationFrame(this.constructFrame(e));this.rafIds.set(e,t)}cancelFrame(e){if(this.rafIds.has(e)){let t=this.rafIds.get(e);cancelAnimationFrame(t)}this.rafIds.delete(e)}onFrame(e,t){return e.callback(t)??!1}},Vx=class{constructor(e,t,a){this.animationFrameHandler=e,this.app=t,this.options=a,A(this,"currentTrail"),A(this,"pastTrails",[]),A(this,"container"),A(this,"trailElement"),this.animationFrameHandler.register(this,this.onFrame.bind(this)),this.trailElement=document.createElementNS(u3,"path")}get hasCurrentTrail(){return!!this.currentTrail}hasLastPoint(e,t){if(this.currentTrail){let a=this.currentTrail.originalPoints.length;return this.currentTrail.originalPoints[a-1][0]===e&&this.currentTrail.originalPoints[a-1][1]===t}return!1}start(e){e&&(this.container=e),this.trailElement.parentNode!==this.container&&this.container&&this.container.appendChild(this.trailElement),this.animationFrameHandler.start(this)}stop(){this.animationFrameHandler.stop(this),this.trailElement.parentNode===this.container&&this.container?.removeChild(this.trailElement)}startPath(e,t){this.currentTrail=new im(this.options),this.currentTrail.addPoint([e,t,performance.now()]),this.update()}addPointToPath(e,t){this.currentTrail&&(this.currentTrail.addPoint([e,t,performance.now()]),this.update())}endPath(){this.currentTrail&&(this.currentTrail.close(),this.currentTrail.options.keepHead=!1,this.pastTrails.push(this.currentTrail),this.currentTrail=void 0,this.update())}update(){this.start()}onFrame(){let e=[];for(let a of this.pastTrails)e.push(this.drawTrail(a,this.app.state));if(this.currentTrail){let a=this.drawTrail(this.currentTrail,this.app.state);e.push(a)}this.pastTrails=this.pastTrails.filter(a=>a.getStrokeOutline().length!==0),e.length===0&&this.stop();let t=e.join(" ").trim();this.trailElement.setAttribute("d",t),this.trailElement.setAttribute("fill",(this.options.fill??(()=>"black"))(this))}drawTrail(e,t){let a=e.getStrokeOutline(e.options.size/t.zoom.value).map(([n,i])=>{let r=Oi({sceneX:n,sceneY:i},t);return[r.x,r.y]});return M3(a,!0)}},TG=class{constructor(e,t){this.animationFrameHandler=e,this.app=t,A(this,"localTrail"),A(this,"collabTrails",new Map),A(this,"container"),this.animationFrameHandler.register(this,this.onFrame.bind(this)),this.localTrail=new Vx(e,t,{...this.getTrailOptions(),fill:()=>ZS})}getTrailOptions(){return{simplify:0,streamline:.4,sizeMapping:e=>{let t=Math.max(0,1-(performance.now()-e.pressure)/1e3),a=(50-Math.min(50,e.totalLength-e.currentIndex))/50;return Math.min(Zs(a),Zs(t))}}}startPath(e,t){this.localTrail.startPath(e,t)}addPointToPath(e,t){this.localTrail.addPointToPath(e,t)}endPath(){this.localTrail.endPath()}start(e){this.container=e,this.animationFrameHandler.start(this),this.localTrail.start(e)}stop(){this.animationFrameHandler.stop(this),this.localTrail.stop()}onFrame(){this.updateCollabTrails()}updateCollabTrails(){if(!(!this.container||this.app.state.collaborators.size===0)){for(let[e,t]of this.app.state.collaborators.entries()){let a;this.collabTrails.has(e)?a=this.collabTrails.get(e):(a=new Vx(this.animationFrameHandler,this.app,{...this.getTrailOptions(),fill:()=>t.pointer?.laserColor||kg(e,t)}),a.start(this.container),this.collabTrails.set(e,a)),t.pointer&&t.pointer.tool==="laser"&&(t.button==="down"&&!a.hasCurrentTrail&&a.startPath(t.pointer.x,t.pointer.y),t.button==="down"&&a.hasCurrentTrail&&!a.hasLastPoint(t.pointer.x,t.pointer.y)&&a.addPointToPath(t.pointer.x,t.pointer.y),t.button==="up"&&a.hasCurrentTrail&&(a.addPointToPath(t.pointer.x,t.pointer.y),a.endPath()))}for(let e of this.collabTrails.keys())this.app.state.collaborators.has(e)||(this.collabTrails.get(e).stop(),this.collabTrails.delete(e))}}},_G=(e,t,a,n,i,r)=>{let{zoom:l}=n,o=180*a/Math.PI,d=e*(l.value-1)/2,h=t*(l.value-1)/2;return e>i&&l.value!==1&&(d=i*(l.value-1)/2),t>r&&l.value!==1&&(h=r*(l.value-1)/2),`translate(${d}px, ${h}px) scale(${l.value}) rotate(${o}deg)`},kG=({id:e,onChange:t,onSubmit:a,getViewportCoords:n,element:i,canvas:r,excalidrawContainer:l,app:o,autoSelect:d=!0})=>{let h=(O,P)=>{if(!P.style.fontFamily||!P.style.fontSize)return!1;let W=P.style.fontFamily.replace(/"/g,"");return ou({fontFamily:O.fontFamily})!==W||`${O.fontSize}px`!==P.style.fontSize},s=()=>{let O=o.state,P=bl.getScene(i)?.getElement(e);if(!P)return;let{textAlign:W,verticalAlign:V}=P,X=o.scene.getNonDeletedElementsMap();if(P&&ae(P)){let re=P.x,oe=P.y,ve=Tr(P,o.scene.getNonDeletedElementsMap()),Ht=P.width,_a=P.height,_n=P.width,ai=P.height;if(ve&&P.containerId){if(Gt(ve)){let al=ne.getBoundTextElementPosition(ve,P,X);re=al.x,oe=al.y}let Vh=h(P,c),qd;if(Vh?qd=Op(ve.id,ve.height):(qd=hT[ve.id],qd||(qd=Op(ve.id,ve.height))),_n=o1(ve,P),ai=ET(ve,P),!Gt(ve)&&_a>ai){let al=_u(_a,ve.type);$(ve,{height:al});return}else if(!Gt(ve)&&ve.height>qd.height&&_a<ai){let al=_u(_a,ve.type);$(ve,{height:al})}else{let{y:al}=l1(ve,P,X);oe=al}}let[Ya,vr]=n(re,oe),Kd=c.selectionStart,ka=c.selectionEnd,yt=c.value.length;if(Kd===ka&&ka!==yt){let Vh=yt-ka;c.selectionStart=c.value.length-Vh,c.selectionEnd=c.value.length-Vh}ve?Ht+=.5:(_n=(O.width-8-Ya)/O.zoom.value,Ht=Math.min(Ht,_n)),_a*=1.05;let Dv=An(P),wo=(O.height-vr)/O.zoom.value;Object.assign(c.style,{font:Dv,lineHeight:P.lineHeight,width:`${Ht}px`,height:`${_a}px`,left:`${Ya}px`,top:`${vr}px`,transform:_G(Ht,_a,vT(P,ve),O,_n,wo),textAlign:W,verticalAlign:V,color:P.strokeColor,opacity:P.opacity/100,filter:"var(--theme-filter)",maxHeight:`${wo}px`}),c.scrollTop=0,op()&&(c.style.fontFamily=ou(P)),$(P,{x:re,y:oe})}},c=document.createElement("textarea");c.dir="auto",c.tabIndex=0,c.dataset.type="wysiwyg",c.wrap="off",c.classList.add("excalidraw-wysiwyg");let u="pre",m="normal";(Ga(i)||!i.autoResize)&&(u="pre-wrap",m="break-word"),Object.assign(c.style,{position:"absolute",display:"inline-block",minHeight:"1em",backfaceVisibility:"hidden",margin:0,padding:0,border:0,outline:0,resize:"none",background:"transparent",overflow:"hidden",zIndex:"var(--zIndex-wysiwyg)",wordBreak:m,whiteSpace:u,overflowWrap:"break-word",boxSizing:"content-box"}),c.value=i.originalText,s(),t&&(c.onpaste=async O=>{let P=await _1(O,!0);if(!P.text)return;let W=pu(P.text);if(!W)return;let V=Tr(i,o.scene.getNonDeletedElementsMap()),X=An({fontSize:o.state.currentItemFontSize,fontFamily:o.state.currentItemFontFamily});if(V){let re=qe(V,o.scene.getNonDeletedElementsMap()),oe=l0(`${c.value}${W}`,X,o1(V,re)),ve=F3(oe,X);c.style.width=`${ve}px`}},c.oninput=()=>{let O=pu(c.value);if(c.value!==O){let P=c.selectionStart;c.value=O,c.selectionStart=P,c.selectionEnd=P}t(c.value)}),c.onkeydown=O=>{if(!O.shiftKey&&pM.keyTest(O))O.preventDefault(),o.actionManager.executeAction(pM),s();else if(!O.shiftKey&&fM.keyTest(O))O.preventDefault(),o.actionManager.executeAction(fM),s();else if(!O.shiftKey&&gM.keyTest(O))O.preventDefault(),o.actionManager.executeAction(gM),s();else if(uM.keyTest(O))o.actionManager.executeAction(uM);else if(mM.keyTest(O))o.actionManager.executeAction(mM);else if(O.key===M.ESCAPE)O.preventDefault(),E=!0,S();else if(O.key===M.ENTER&&O[M.CTRL_OR_CMD]){if(O.preventDefault(),O.isComposing||O.keyCode===229)return;E=!0,S()}else if(O.key===M.TAB||O[M.CTRL_OR_CMD]&&(O.code===ye.BRACKET_LEFT||O.code===ye.BRACKET_RIGHT)){if(O.preventDefault(),O.isComposing)return;O.shiftKey||O.code===ye.BRACKET_LEFT?b():g(),c.dispatchEvent(new Event("input"))}};let p=4,f=" ".repeat(p),y=new RegExp(`^ {1,${p}}`),g=()=>{let{selectionStart:O,selectionEnd:P}=c,W=v(),V=c.value;W.forEach(X=>{let re=V.slice(0,X),oe=V.slice(X);V=`${re}${f}${oe}`}),c.value=V,c.selectionStart=O+p,c.selectionEnd=P+p*W.length},b=()=>{let{selectionStart:O,selectionEnd:P}=c,W=v(),V=[],X=c.value;W.forEach(re=>{let oe=X.slice(re,re+p).match(y);if(oe){let ve=X.slice(0,re),Ht=X.slice(re+oe[0].length);X=`${ve}${Ht}`,V.push(re)}}),c.value=X,V.length&&(O>V[V.length-1]?c.selectionStart=Math.max(O-p,V[V.length-1]):c.selectionStart=O,c.selectionEnd=Math.max(c.selectionStart,P-p*V.length))},v=()=>{let{selectionStart:O,selectionEnd:P,value:W}=c,V=W.slice(0,O).match(/[^\n]*$/)[0].length;return O=O-V,W.slice(O,P).split(`
|
|
62
|
+
`).reduce((X,re,oe,ve)=>X.concat(oe?X[oe-1]+ve[oe-1].length+1:O),[]).reverse()},x=O=>{O.target instanceof HTMLCanvasElement&&(O.preventDefault(),O.stopPropagation())},E=!1,S=()=>{if(z)return;z=!0,C();let O=bl.getScene(i)?.getElement(i.id);if(!O)return;let P=Tr(O,o.scene.getNonDeletedElementsMap());if(P){if(c.value.trim()){let W=bT(P);!W||W!==i.id?$(P,{boundElements:(P.boundElements||[]).concat({type:"text",id:i.id})}):Gt(P)&&d_(P)}else $(P,{boundElements:P.boundElements?.filter(W=>!ae(W))});Da(O,P,o.scene.getNonDeletedElementsMap())}a({viaKeyboard:E,nextOriginalText:c.value})},C=()=>{c.onblur=null,c.oninput=null,c.onkeydown=null,G&&G.disconnect(),window.removeEventListener("resize",s),window.removeEventListener("wheel",x,!0),window.removeEventListener("pointerdown",k),window.removeEventListener("pointerup",_),window.removeEventListener("blur",S),window.removeEventListener("beforeunload",S),I(),j(),c.remove()},_=O=>{window.removeEventListener("pointerup",_);let P=O?.target,W=P instanceof HTMLElement&&P.classList.contains("properties-trigger");setTimeout(()=>{c.onblur=S,W||c.focus()})},D=()=>{c.onblur=null,window.addEventListener("pointerup",_),window.addEventListener("blur",S)},k=O=>{let P=O?.target;if(O.button===xr.WHEEL){P instanceof HTMLTextAreaElement&&(O.preventDefault(),o.handleCanvasPanUsingWheelOrSpaceDrag(O)),D();return}let W=P instanceof HTMLElement&&P.classList.contains("properties-trigger");(O.target instanceof HTMLElement||O.target instanceof SVGElement)&&O.target.closest(`.${To.SHAPE_ACTIONS_MENU}, .${To.ZOOM_ACTIONS}`)&&!il(O.target)||W?D():O.target instanceof HTMLCanvasElement&&!op()&&requestAnimationFrame(()=>{S()})},I=o.scene.onUpdate(()=>{s(),document.activeElement?.closest(".properties-content")||c.focus()}),j=o.onScrollChangeEmitter.on(()=>{s()}),z=!1;d&&c.select(),_();let G=null;r&&"ResizeObserver"in window?(G=new window.ResizeObserver(()=>{s()}),G.observe(r)):window.addEventListener("resize",s),c.onpointerdown=O=>O.stopPropagation(),requestAnimationFrame(()=>{window.addEventListener("pointerdown",k,{capture:!0})}),window.addEventListener("beforeunload",S),l?.querySelector(".excalidraw-textEditorContainer").appendChild(c)},MG=Y({name:"autoResize",label:"labels.autoResize",icon:null,trackEvent:{category:"element"},predicate:(e,t,a,n)=>{let i=ce(e,t);return i.length===1&&ae(i[0])&&!i[0].autoResize},perform:(e,t,a,n)=>{let i=ce(e,t);return{appState:t,elements:e.map(r=>{if(r.id===i[0].id&&ae(r)){let l=Sr(r.originalText,An(r),r.lineHeight);return se(r,{autoResize:!0,width:l.width,height:l.height,text:r.originalText})}return r}),captureUpdate:L.IMMEDIATELY}}}),AG=e=>{let t=["flowchart","graph","sequenceDiagram","classDiagram","stateDiagram","stateDiagram-v2","erDiagram","journey","gantt","pie","quadrantChart","requirementDiagram","gitGraph","C4Context","mindmap","timeline","zenuml","sankey","xychart","block"];return new RegExp(`^(?:%%{.*?}%%[\\s\\n]*)?\\b(?:${t.map(a=>`\\s*${a}(-beta)?`).join("|")})\\b`).test(e.trim())},VI=({canvas:e,rc:t,newElement:a,elementsMap:n,allElementsMap:i,scale:r,appState:l,renderConfig:o})=>{if(e){let[d,h]=y1(e,r),s=x1({canvas:e,scale:r,normalizedWidth:d,normalizedHeight:h});s.save(),s.scale(l.zoom.value,l.zoom.value),a&&a.type!=="selection"?UC(a,n,i,t,s,o,l):s.clearRect(0,0,d,h)}},DG=lp(e=>{VI(e)},{trailing:!0}),IG=(e,t)=>{if(t){DG(e);return}VI(e)},NG=e=>{let t=(0,Yg.useRef)(null);return(0,Yg.useEffect)(()=>{t.current&&IG({canvas:t.current,scale:e.scale,newElement:e.appState.newElement,elementsMap:e.elementsMap,allElementsMap:e.allElementsMap,rc:e.rc,renderConfig:e.renderConfig,appState:e.appState},vw())}),(0,XI.jsx)("canvas",{className:"excalidraw__canvas",style:{width:e.appState.width,height:e.appState.height},width:e.appState.width*e.scale,height:e.appState.height*e.scale,ref:t})},LG=NG,ZI=_t.default.createContext(null),KI=_t.default.createContext(null),qI={viewport:{isMobile:!1,isLandscape:!1},editor:{isMobile:!1,canFitSidebar:!1},isTouchScreen:!1},yw=_t.default.createContext(qI);yw.displayName="DeviceContext";var xw=_t.default.createContext({container:null,id:null});xw.displayName="ExcalidrawContainerContext";var ww=_t.default.createContext([]);ww.displayName="ExcalidrawElementsContext";var Ew=_t.default.createContext({...iu(),width:0,height:0,offsetLeft:0,offsetTop:0});Ew.displayName="ExcalidrawAppStateContext";var Sw=_t.default.createContext(()=>{console.warn("Uninitialized ExcalidrawSetAppStateContext context!")});Sw.displayName="ExcalidrawSetAppStateContext";var Cw=_t.default.createContext(null);Cw.displayName="ExcalidrawActionManagerContext";var tr=()=>(0,_t.useContext)(ZI),Hm=()=>(0,_t.useContext)(KI),Bt=()=>(0,_t.useContext)(yw),ar=()=>(0,_t.useContext)(xw),Gg=()=>(0,_t.useContext)(ww),Fm=()=>(0,_t.useContext)(Ew),Mt=()=>(0,_t.useContext)(Sw),qa=()=>(0,_t.useContext)(Cw),om=!1,fx=0,Qo=!1,sm=!1,gx=!1,bx={horizontal:null,vertical:null},Al=0,cm=!1,vx=new Map,Gf=!1,fA=0,gA=!1,dm=null,we={pointers:new Map,lastCenter:null,initialDistance:null,initialScale:null},RG=class QI extends _t.default.Component{constructor(t){super(t),A(this,"canvas"),A(this,"interactiveCanvas",null),A(this,"rc"),A(this,"unmounted",!1),A(this,"actionManager"),A(this,"device",qI),A(this,"excalidrawContainerRef",_t.default.createRef()),A(this,"scene"),A(this,"fonts"),A(this,"renderer"),A(this,"visibleElements"),A(this,"resizeObserver"),A(this,"nearestScrollableContainer"),A(this,"library"),A(this,"libraryItemsFromStorage"),A(this,"id"),A(this,"store"),A(this,"history"),A(this,"excalidrawContainerValue"),A(this,"files",{}),A(this,"imageCache",new Map),A(this,"iFrameRefs",new Map),A(this,"embedsValidationStatus",new Map),A(this,"initializedEmbeds",new Set),A(this,"elementsPendingErasure",new Set),A(this,"flowChartCreator",new WH),A(this,"flowChartNavigator",new QH),A(this,"hitLinkElement"),A(this,"lastPointerDownEvent",null),A(this,"lastPointerUpEvent",null),A(this,"lastPointerMoveEvent",null),A(this,"lastPointerMoveCoords",null),A(this,"lastViewportPosition",{x:0,y:0}),A(this,"animationFrameHandler",new CG),A(this,"laserTrails",new TG(this.animationFrameHandler,this)),A(this,"eraserTrail",new Vx(this.animationFrameHandler,this,{streamline:.2,size:5,keepHead:!0,sizeMapping:s=>{let c=Math.max(0,1-(performance.now()-s.pressure)/200),u=(10-Math.min(10,s.totalLength-s.currentIndex))/10;return Math.min(Zs(u),Zs(c))},fill:()=>this.state.theme===xe.LIGHT?"rgba(0, 0, 0, 0.2)":"rgba(255, 255, 255, 0.2)"})),A(this,"onChangeEmitter",new ji),A(this,"onPointerDownEmitter",new ji),A(this,"onPointerUpEmitter",new ji),A(this,"onUserFollowEmitter",new ji),A(this,"onScrollChangeEmitter",new ji),A(this,"missingPointerEventCleanupEmitter",new ji),A(this,"onRemoveEventListenersEmitter",new ji),A(this,"getEffectiveGridSize",()=>Tu(this)?this.state.gridSize:null),A(this,"updateEmbedValidationStatus",(s,c)=>{this.embedsValidationStatus.set(s.id,c),No.delete(s)}),A(this,"updateEmbeddables",()=>{let s=new Set,c=!1;this.scene.getNonDeletedElements().filter(u=>{if(on(u)){if(s.add(u.id),!this.embedsValidationStatus.has(u.id)){c=!0;let m=Au(u.link,this.props.validateEmbeddable);this.updateEmbedValidationStatus(u,m)}}else Do(u)&&s.add(u.id);return!1}),c&&this.scene.triggerUpdate(),this.iFrameRefs.forEach((u,m)=>{s.has(m)||this.iFrameRefs.delete(m)})}),A(this,"getFrameNameDOMId",s=>`${this.id}-frame-name-${s.id}`),A(this,"frameNameBoundsCache",{get:s=>{let c=this.frameNameBoundsCache._cache.get(s.id);if(!c||c.zoom!==this.state.zoom.value||c.versionNonce!==s.versionNonce){let u=document.getElementById(this.getFrameNameDOMId(s));if(u){let m=u.getBoundingClientRect(),p=rt({clientX:m.x,clientY:m.y},this.state),f=rt({clientX:m.right,clientY:m.bottom},this.state);return c={x:p.x,y:p.y,width:f.x-p.x,height:f.y-p.y,angle:0,zoom:this.state.zoom.value,versionNonce:s.versionNonce},this.frameNameBoundsCache._cache.set(s.id,c),c}return null}return c},_cache:new Map}),A(this,"resetEditingFrame",s=>{s&&$(s,{name:s.name?.trim()||null}),this.setState({editingFrame:null})}),A(this,"renderFrameNames",()=>{if(!this.state.frameRendering.enabled||!this.state.frameRendering.name)return this.state.editingFrame&&this.resetEditingFrame(null),null;let s=this.state.theme===xe.DARK;return this.scene.getNonDeletedFramesLikes().map(c=>{if(!Xp(c,this.canvas.width/window.devicePixelRatio,this.canvas.height/window.devicePixelRatio,{offsetLeft:this.state.offsetLeft,offsetTop:this.state.offsetTop,scrollX:this.state.scrollX,scrollY:this.state.scrollY,zoom:this.state.zoom},this.scene.getNonDeletedElementsMap()))return this.state.editingFrame===c.id&&this.resetEditingFrame(c),null;let{x:u,y:m}=Oi({sceneX:c.x,sceneY:c.y},this.state),p=6,f,y=o_(c);if(c.id===this.state.editingFrame){let g=y;f=(0,de.jsx)("input",{autoFocus:!0,value:g,onChange:b=>{$(c,{name:b.target.value})},onFocus:b=>b.target.select(),onBlur:()=>this.resetEditingFrame(c),onKeyDown:b=>{(b.key===M.ESCAPE||b.key===M.ENTER)&&this.resetEditingFrame(c)},style:{background:this.state.viewBackgroundColor,filter:s?r3:"none",zIndex:2,border:"none",display:"block",padding:`${p}px`,borderRadius:4,boxShadow:"inset 0 0 0 1px var(--color-primary)",fontFamily:"Assistant",fontSize:"14px",transform:`translate(-${p}px, ${p}px)`,color:"var(--color-gray-80)",overflow:"hidden",maxWidth:`${document.body.clientWidth-u-p}px`},size:g.length+1||1,dir:"auto",autoComplete:"off",autoCapitalize:"off",autoCorrect:"off"})}else f=y;return(0,de.jsx)("div",{id:this.getFrameNameDOMId(c),style:{position:"absolute",bottom:`${this.state.height+Li.nameOffsetY-m+this.state.offsetTop}px`,left:`${u-this.state.offsetLeft}px`,zIndex:2,fontSize:Li.nameFontSize,color:s?Li.nameColorDarkTheme:Li.nameColorLightTheme,lineHeight:Li.nameLineHeight,width:"max-content",maxWidth:`${c.width}px`,overflow:c.id===this.state.editingFrame?"visible":"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis",cursor:De.MOVE,pointerEvents:this.state.viewModeEnabled?Co.disabled:Co.enabled},onPointerDown:g=>this.handleCanvasPointerDown(g),onWheel:g=>this.handleWheel(g),onContextMenu:this.handleCanvasContextMenu,onDoubleClick:()=>{this.setState({editingFrame:c.id})},children:f},c.id)})}),A(this,"focusContainer",()=>{this.excalidrawContainerRef.current?.focus()}),A(this,"getSceneElementsIncludingDeleted",()=>this.scene.getElementsIncludingDeleted()),A(this,"getSceneElements",()=>this.scene.getNonDeletedElements()),A(this,"onInsertElements",s=>{this.addElementsFromPasteOrLibrary({elements:s,position:"center",files:null})}),A(this,"onExportImage",async(s,c,u)=>{Oe("export",s,"ui");let m=await _g(s,c,this.state,this.files,{exportBackground:this.state.exportBackground,name:this.getName(),viewBackgroundColor:this.state.viewBackgroundColor,exportingFrame:u.exportingFrame}).catch(t0).catch(p=>{console.error(p),this.setState({errorMessage:p.message})});this.state.exportEmbedScene&&m&&V1(m)&&this.setState({fileHandle:m})}),A(this,"magicGenerations",new Map),A(this,"updateMagicGeneration",({frameElement:s,data:c})=>{c.status==="pending"?$(s,{customData:{generationData:void 0}},!1):$(s,{customData:{generationData:c}},!1),this.magicGenerations.set(s.id,c),this.triggerRender()}),A(this,"plugins",{}),A(this,"onMagicframeToolSelect",()=>{let s=this.scene.getSelectedElements({selectedElementIds:this.state.selectedElementIds});if(s.length===0)this.setActiveTool({type:rn.magicframe}),Oe("ai","tool-select (empty-selection)","d2c");else{let c=s.length===1&&mp(s[0])&&s[0];if(!c&&s.some(m=>Ce(m)||m.frameId)){this.setActiveTool({type:rn.magicframe});return}Oe("ai","tool-select (existing selection)","d2c");let u;if(c)u=c;else{let[m,p,f,y]=gt(s),g=50;u=Pp({...Li,x:m-g,y:p-g,width:f-m+g*2,height:y-p+g*2,opacity:100,locked:!1}),this.scene.insertElement(u);for(let b of s)$(b,{frameId:u.id});this.setState({selectedElementIds:{[u.id]:!0}})}this.onMagicFrameGenerate(u,"upstream")}}),A(this,"openEyeDropper",({type:s})=>{gi.set(vg,{swapPreviewOnAlt:!0,colorPickerType:s==="stroke"?"elementStroke":"elementBackground",onSelect:(c,u)=>{let m=s==="background"&&u.altKey||s==="stroke"&&!u.altKey;!this.scene.getSelectedElements(this.state).length||this.state.activeTool.type!=="selection"?m?this.syncActionResult({appState:{...this.state,currentItemStrokeColor:c},captureUpdate:L.IMMEDIATELY}):this.syncActionResult({appState:{...this.state,currentItemBackgroundColor:c},captureUpdate:L.IMMEDIATELY}):this.updateScene({elements:this.scene.getElementsIncludingDeleted().map(p=>this.state.selectedElementIds[p.id]?se(p,{[m?"strokeColor":"backgroundColor"]:c}):p),captureUpdate:L.IMMEDIATELY})},keepOpenOnAlt:!1})}),A(this,"dismissLinearEditor",()=>{setTimeout(()=>{this.setState({editingLinearElement:null})})}),A(this,"syncActionResult",st(s=>{if(this.unmounted||s===!1)return;s.captureUpdate===L.NEVER?this.store.shouldUpdateSnapshot():s.captureUpdate===L.IMMEDIATELY&&this.store.shouldCaptureIncrement();let c=!1,u=null;if(s.elements&&(this.scene.replaceAllElements(s.elements),c=!0),s.files&&(this.addMissingFiles(s.files,s.replaceFiles),this.addNewImagesToImageCache()),s.appState||u||this.state.contextMenu){let m=s?.appState?.viewModeEnabled||!1,p=s?.appState?.zenModeEnabled||!1,f=s?.appState?.theme||this.props.theme||xe.LIGHT,y=s?.appState?.name??this.state.name,g=s?.appState?.errorMessage??this.state.errorMessage;typeof this.props.viewModeEnabled<"u"&&(m=this.props.viewModeEnabled),typeof this.props.zenModeEnabled<"u"&&(p=this.props.zenModeEnabled),u=s.appState?.editingTextElement||null,s.elements&&u&&s.elements.forEach(b=>{u?.id===b.id&&u!==b&&$1(b)&&ae(b)&&(u=b)}),u?.isDeleted&&(u=null),this.setState(b=>{let v=s.appState||{};return{...b,...v,contextMenu:null,editingTextElement:u,viewModeEnabled:m,zenModeEnabled:p,theme:f,name:y,errorMessage:g}}),c=!0}!c&&s.captureUpdate!==L.EVENTUALLY&&this.scene.triggerUpdate()})),A(this,"onBlur",st(()=>{Qo=!1,this.setState({isBindingEnabled:!0})})),A(this,"onUnload",()=>{this.onBlur()}),A(this,"disableEvent",s=>{s.preventDefault()}),A(this,"resetHistory",()=>{this.history.clear()}),A(this,"resetStore",()=>{this.store.clear()}),A(this,"resetScene",st(s=>{this.scene.replaceAllElements([]),this.setState(c=>({...iu(),isLoading:s?.resetLoadingState?!1:c.isLoading,theme:this.state.theme})),this.resetStore(),this.resetHistory()})),A(this,"initializeScene",async()=>{"launchQueue"in window&&"LaunchParams"in window&&window.launchQueue.setConsumer(async u=>{if(!u.files.length)return;let m=u.files[0],p=await m.getFile();this.loadFileToCanvas(new File([p],p.name||"",{type:p.type}),m)}),this.props.theme&&this.setState({theme:this.props.theme}),this.state.isLoading||this.setState({isLoading:!0});let s=null;try{typeof this.props.initialData=="function"?s=await this.props.initialData()||null:s=await this.props.initialData||null,s?.libraryItems&&this.library.updateLibrary({libraryItems:s.libraryItems,merge:!0}).catch(u=>{console.error(u)})}catch(u){console.error(u),s={appState:{errorMessage:u.message||"Encountered an error during importing or restoring scene data"}}}let c=ZT(s,null,null,{repairBindings:!0});c.appState={...c.appState,theme:this.props.theme||c.appState.theme,openSidebar:c.appState?.openSidebar||this.state.openSidebar,activeTool:c.appState.activeTool.type==="image"?{...c.appState.activeTool,type:"selection"}:c.appState.activeTool,isLoading:!1,toast:this.state.toast},s?.scrollToContent&&(c.appState={...c.appState,...Su(c.elements,{...c.appState,width:this.state.width,height:this.state.height,offsetTop:this.state.offsetTop,offsetLeft:this.state.offsetLeft})}),this.resetStore(),this.resetHistory(),this.syncActionResult({...c,captureUpdate:L.NEVER}),this.clearImageShapeCache(),this.fonts.loadSceneFonts().then(u=>{this.fonts.onLoaded(u)}),Iu(window.location.href)&&this.scrollToContent(window.location.href,{animate:!1})}),A(this,"isMobileBreakpoint",(s,c)=>s<l3||c<s3&&s<o3),A(this,"refreshViewportBreakpoints",()=>{if(!this.excalidrawContainerRef.current)return;let{clientWidth:s,clientHeight:c}=document.body,u=this.device.viewport,m=uu(u,{isLandscape:s>c,isMobile:this.isMobileBreakpoint(s,c)});return u!==m?(this.device={...this.device,viewport:m},!0):!1}),A(this,"refreshEditorBreakpoints",()=>{let s=this.excalidrawContainerRef.current;if(!s)return;let{width:c,height:u}=s.getBoundingClientRect(),m=this.props.UIOptions.dockedSidebarBreakpoint!=null?this.props.UIOptions.dockedSidebarBreakpoint:c3,p=this.device.editor,f=uu(p,{isMobile:this.isMobileBreakpoint(c,u),canFitSidebar:c>m});return p!==f?(this.device={...this.device,editor:f},!0):!1}),A(this,"onResize",st(()=>{this.scene.getElementsIncludingDeleted().forEach(s=>No.delete(s)),this.refreshViewportBreakpoints(),this.updateDOMRect(),Kh||this.refreshEditorBreakpoints(),this.setState({})})),A(this,"onFullscreenChange",()=>{!document.fullscreenElement&&this.state.activeEmbeddable?.state==="active"&&this.setState({activeEmbeddable:null})}),A(this,"renderInteractiveSceneCallback",({atLeastOneVisibleElement:s,scrollBars:c,elementsMap:u})=>{c&&(bx=c);let m=this.state.editingTextElement?!1:!s&&u.size>0;this.state.scrolledOutside!==m&&this.setState({scrolledOutside:m}),this.scheduleImageRefresh()}),A(this,"onScroll",su(()=>{let{offsetTop:s,offsetLeft:c}=this.getCanvasOffsets();this.setState(u=>u.offsetLeft===c&&u.offsetTop===s?null:{offsetTop:s,offsetLeft:c})},n3)),A(this,"onCut",st(s=>{!this.excalidrawContainerRef.current?.contains(document.activeElement)||il(s.target)||(this.actionManager.executeAction(EM,"keyboard",s),s.preventDefault(),s.stopPropagation())})),A(this,"onCopy",st(s=>{!this.excalidrawContainerRef.current?.contains(document.activeElement)||il(s.target)||(this.actionManager.executeAction(qf,"keyboard",s),s.preventDefault(),s.stopPropagation())})),A(this,"onTouchStart",s=>{if(YS&&s.preventDefault(),!om){om=!0,clearTimeout(fx),fx=window.setTimeout(QI.resetTapTwice,t3);return}if(om&&s.touches.length===1){let c=s.touches[0];this.handleCanvasDoubleClick({clientX:c.clientX,clientY:c.clientY}),om=!1,clearTimeout(fx)}s.touches.length===2&&this.setState({selectedElementIds:Ee({},this.state),activeEmbeddable:null})}),A(this,"onTouchEnd",s=>{this.resetContextMenuTimer(),s.touches.length>0?this.setState({previousSelectedElementIds:{},selectedElementIds:Ee(this.state.previousSelectedElementIds,this.state)}):we.pointers.clear()}),A(this,"pasteFromClipboard",st(async s=>{let c=!!Gf,u=document.activeElement,m=this.excalidrawContainerRef.current?.contains(u);if(s&&!m)return;let p=document.elementFromPoint(this.lastViewportPosition.x,this.lastViewportPosition.y);if(s&&(!(p instanceof HTMLCanvasElement)||il(u)))return;let{x:f,y}=rt({clientX:this.lastViewportPosition.x,clientY:this.lastViewportPosition.y},this.state),g=s?.clipboardData?.files[0],b=await _1(s,c);if(!g&&!c){if(b.mixedContent)return this.addElementsFromMixedContentPaste(b.mixedContent,{isPlainPaste:c,sceneX:f,sceneY:y});if(b.text){let v=b.text.trim();v.startsWith("<svg")&&v.endsWith("</svg>")&&(g=Z1(v))}}if(qp(g)&&!b.spreadsheet){if(!this.isToolSupported("image")){this.setState({errorMessage:w("errors.imageToolNotSupported")});return}let v=this.createImageElement({sceneX:f,sceneY:y});this.insertImageElement(v,g),this.initializeImageDimensions(v),this.setState({selectedElementIds:Ee({[v.id]:!0},this.state)});return}if(this.props.onPaste)try{if(await this.props.onPaste(b,s)===!1)return}catch(v){console.error(v)}if(b.errorMessage)this.setState({errorMessage:b.errorMessage});else if(b.spreadsheet&&!c)this.setState({pasteDialog:{data:b.spreadsheet,shown:!0}});else if(b.elements){let v=b.programmaticAPI?Gx(b.elements):b.elements;this.addElementsFromPasteOrLibrary({elements:v,files:b.files||null,position:"cursor",retainSeed:c})}else if(b.text){if(b.text&&AG(b.text)){let E=await import("./chunks/dist-KSN2466A.js");try{let{elements:S,files:C={}}=await E.parseMermaidToExcalidraw(b.text),_=Gx(S,{regenerateIds:!0});this.addElementsFromPasteOrLibrary({elements:_,files:C,position:"cursor"});return}catch(S){console.warn(`parsing pasted text as mermaid definition failed: ${S.message}`)}}let v=A3(b.text).split(/\n+/).map(E=>E.trim()).filter(Boolean),x=v.map(E=>NT(E)).filter(E=>Au(E,this.props.validateEmbeddable)&&(/^(http|https):\/\/[^\s/$.?#].[^\s]*$/.test(E)||rc(E)?.type==="video"));if(!Gf&&x.length>0&&x.length===v.length){let E=[];for(let S of x){let C=E[E.length-1],_=this.insertEmbeddableElement({sceneX:C?C.x+C.width+20:f,sceneY:y,link:hl(S)});_&&E.push(_)}E.length&&this.setState({selectedElementIds:Object.fromEntries(E.map(S=>[S.id,!0]))});return}this.addTextFromPaste(b.text,c)}this.setActiveTool({type:"selection"}),s?.preventDefault()})),A(this,"addElementsFromPasteOrLibrary",s=>{let c=XT(s.elements,null,void 0),[u,m,p,f]=gt(c),y=ko(u,p)/2,g=ko(m,f)/2,b=typeof s.position=="object"?s.position.clientX:s.position==="cursor"?this.lastViewportPosition.x:this.state.width/2+this.state.offsetLeft,v=typeof s.position=="object"?s.position.clientY:s.position==="cursor"?this.lastViewportPosition.y:this.state.height/2+this.state.offsetTop,{x,y:E}=rt({clientX:b,clientY:v},this.state),S=x-y,C=E-g,[_,D]=$t(S,C,this.getEffectiveGridSize()),k=h1(c.map(O=>se(O,{x:O.x+_-u,y:O.y+D-m})),{randomizeSeed:!s.retainSeed}),I=this.scene.getElementsIncludingDeleted(),j=[...I,...k];j=this.props.onDuplicate?.(j,I)||j,gl(j,Ie(k));let z=this.getTopLayerFrameAtSceneCoords({x,y:E});if(z){let O=r_(k,z);Ru(j,O,z,this.state)}this.scene.replaceAllElements(j),k.forEach(O=>{if(ae(O)&&Ga(O)){let P=Tr(O,this.scene.getElementsMapIncludingDeleted());Da(O,P,this.scene.getElementsMapIncludingDeleted())}}),FS&&Qs.loadElementsFonts(k).then(O=>{this.fonts.onLoaded(O)}),s.files&&this.addMissingFiles(s.files),this.store.shouldCaptureIncrement();let G=B1(k);this.setState({...this.state,openSidebar:this.state.openSidebar&&this.device.editor.canFitSidebar&&gi.get(mw)?this.state.openSidebar:null,...da({editingGroupId:null,selectedElementIds:G.reduce((O,P)=>(Ga(P)||(O[P.id]=!0),O),{})},this.scene.getNonDeletedElements(),this.state,this)},()=>{s.files&&this.addNewImagesToImageCache()}),this.setActiveTool({type:"selection"}),s.fitToContent&&this.scrollToContent(k,{fitToContent:!0,canvasOffsets:this.getEditorUIOffsets()})}),A(this,"setAppState",(s,c)=>{this.setState(s,c)}),A(this,"removePointer",s=>{Al&&this.resetContextMenuTimer(),we.pointers.delete(s.pointerId)}),A(this,"toggleLock",(s="ui")=>{this.state.activeTool.locked||Oe("toolbar","toggleLock",`${s} (${this.device.editor.isMobile?"mobile":"desktop"})`),this.setState(c=>({activeTool:{...c.activeTool,...Nt(this.state,c.activeTool.locked?{type:"selection"}:c.activeTool),locked:!c.activeTool.locked}}))}),A(this,"updateFrameRendering",s=>{this.setState(c=>{let u=typeof s=="function"?s(c.frameRendering):s;return{frameRendering:{enabled:u?.enabled??c.frameRendering.enabled,clip:u?.clip??c.frameRendering.clip,name:u?.name??c.frameRendering.name,outline:u?.outline??c.frameRendering.outline}}})}),A(this,"togglePenMode",s=>{this.setState(c=>({penMode:s??!c.penMode,penDetected:!0}))}),A(this,"onHandToolToggle",()=>{this.actionManager.executeAction(OP)}),A(this,"zoomCanvas",s=>{this.setState({...Wo({viewportX:this.state.width/2+this.state.offsetLeft,viewportY:this.state.height/2+this.state.offsetTop,nextZoom:Cr(s)},this.state)})}),A(this,"cancelInProgressAnimation",null),A(this,"scrollToContent",(s=this.scene.getNonDeletedElements(),c)=>{if(typeof s=="string"){let y;if(Iu(s)?y=HT(s):y=s,y){let g=this.scene.getElementsFromId(y);g?.length?this.scrollToContent(g,{fitToContent:c?.fitToContent??!0,animate:c?.animate??!0}):Iu(s)&&this.setState({toast:{message:w("elementLink.notFound"),duration:3e3,closable:!0}})}return}this.cancelInProgressAnimation?.();let u=Array.isArray(s)?s:[s],m=this.state.zoom,p=this.state.scrollX,f=this.state.scrollY;if(c?.fitToContent||c?.fitToViewport){let{appState:y}=Cg({canvasOffsets:c.canvasOffsets,targetElements:u,appState:this.state,fitToViewport:!!c?.fitToViewport,viewportZoomFactor:c?.viewportZoomFactor,minZoom:c?.minZoom,maxZoom:c?.maxZoom});m=y.zoom,p=y.scrollX,f=y.scrollY}else{let y=Su(u,this.state);p=y.scrollX,f=y.scrollY}if(c?.animate){let y=this.state.scrollX,g=this.state.scrollY,b=this.state.zoom.value,v=v3({fromValues:{scrollX:y,scrollY:g,zoom:b},toValues:{scrollX:p,scrollY:f,zoom:m.value},interpolateValue:(x,E,S,C)=>{if(C==="zoom")return x*Math.pow(E/x,Zs(S))},onStep:({scrollX:x,scrollY:E,zoom:S})=>{this.setState({scrollX:x,scrollY:E,zoom:{value:S}})},onStart:()=>{this.setState({shouldCacheIgnoreZoom:!0})},onEnd:()=>{this.setState({shouldCacheIgnoreZoom:!1})},onCancel:()=>{this.setState({shouldCacheIgnoreZoom:!1})},duration:c?.duration??500});this.cancelInProgressAnimation=()=>{v(),this.cancelInProgressAnimation=null}}else this.setState({scrollX:p,scrollY:f,zoom:m})}),A(this,"maybeUnfollowRemoteUser",()=>{this.state.userToFollow&&this.setState({userToFollow:null})}),A(this,"translateCanvas",s=>{this.cancelInProgressAnimation?.(),this.maybeUnfollowRemoteUser(),this.setState(s)}),A(this,"setToast",s=>{this.setState({toast:s})}),A(this,"restoreFileFromShare",async()=>{try{let s=await caches.open("web-share-target"),c=await s.match("shared-file");if(c){let u=await c.blob(),m=new File([u],u.name||"",{type:u.type});this.loadFileToCanvas(m,null),await s.delete("shared-file"),window.history.replaceState(null,$S,window.location.pathname)}}catch(s){this.setState({errorMessage:s.message})}}),A(this,"addFiles",st(s=>{let{addedFiles:c}=this.addMissingFiles(s);this.clearImageShapeCache(c),this.scene.triggerUpdate(),this.addNewImagesToImageCache()})),A(this,"addMissingFiles",(s,c=!1)=>{let u=c?{}:{...this.files},m={},p=Array.isArray(s)?s:Object.values(s);for(let f of p)if(!u[f.id]&&(m[f.id]=f,u[f.id]=f,f.mimeType===Ma.svg))try{let y=M_(v1(D_(f.dataURL)),Ma.svg);f.dataURL!==y&&(f.version=(f.version??1)+1,f.dataURL=y)}catch(y){console.error(y)}return this.files=u,{addedFiles:m}}),A(this,"updateScene",st(s=>{let c=ic(s.elements??[]);if(s.captureUpdate&&s.captureUpdate!==L.EVENTUALLY){let u=this.store.snapshot.appState,m=this.store.snapshot.elements,p=s.appState?Object.assign({},u,s.appState):u,f=s.elements?this.store.filterUncomittedElements(this.scene.getElementsMapIncludingDeleted(),Ie(c)):m;s.captureUpdate===L.IMMEDIATELY?this.store.captureIncrement(f,p):s.captureUpdate===L.NEVER&&this.store.updateSnapshot(f,p)}s.appState&&this.setState(s.appState),s.elements&&this.scene.replaceAllElements(c),s.collaborators&&this.setState({collaborators:s.collaborators})})),A(this,"triggerRender",s=>{s===!0?this.scene.triggerUpdate():this.setState({})}),A(this,"toggleSidebar",({name:s,tab:c,force:u})=>{let m;u===void 0?m=this.state.openSidebar?.name===s&&this.state.openSidebar?.tab===c?null:s:m=u?s:null;let p=m?{name:m}:null;return p&&c&&(p.tab=c),this.setState({openSidebar:p}),!!m}),A(this,"updateCurrentCursorPosition",st(s=>{this.lastViewportPosition.x=s.clientX,this.lastViewportPosition.y=s.clientY})),A(this,"getEditorUIOffsets",()=>{let s=this.excalidrawContainerRef?.current?.querySelector(".App-toolbar")?.getBoundingClientRect()?.bottom??0,c=this.excalidrawContainerRef?.current?.querySelector(".sidebar")?.getBoundingClientRect(),u=this.excalidrawContainerRef?.current?.querySelector(".App-menu__left")?.getBoundingClientRect(),m=16;return vm().rtl?{top:s+m,right:Math.max(this.state.width-(u?.left??this.state.width),0)+m,bottom:m,left:Math.max(c?.right??0,0)+m}:{top:s+m,right:Math.max(this.state.width-(c?.left??this.state.width)+m,0),bottom:m,left:Math.max(u?.right??0,0)+m}}),A(this,"onKeyDown",st(s=>{if("Proxy"in window&&(!s.shiftKey&&/^[A-Z]$/.test(s.key)||s.shiftKey&&/^[a-z]$/.test(s.key))&&(s=new Proxy(s,{get(p,f){let y=p[f];return typeof y=="function"?y.bind(p):f==="key"?s.shiftKey?p.key.toUpperCase():p.key.toLowerCase():y}})),!e0(s.target)){if((s.key===M.ESCAPE||s.key===M.ENTER)&&this.state.croppingElementId){this.finishImageCropping();return}let p=ce(this.scene.getNonDeletedElementsMap(),this.state);if(p.length===1&&tt(p[0])&&s.key===M.ENTER){this.startImageCropping(p[0]);return}if(s.key===M.ESCAPE&&this.flowChartCreator.isCreatingChart){this.flowChartCreator.clear(),this.triggerRender(!0);return}let f=ec(s.key);if(s[M.CTRL_OR_CMD]&&f&&!s.shiftKey){s.preventDefault();let y=ce(this.scene.getNonDeletedElementsMap(),this.state);y.length===1&&hu(y[0])&&this.flowChartCreator.createNodes(y[0],this.scene.getNonDeletedElementsMap(),this.state,jM(s.key)),this.flowChartCreator.pendingNodes?.length&&!zu(this.flowChartCreator.pendingNodes,this.canvas.width/window.devicePixelRatio,this.canvas.height/window.devicePixelRatio,{offsetLeft:this.state.offsetLeft,offsetTop:this.state.offsetTop,scrollX:this.state.scrollX,scrollY:this.state.scrollY,zoom:this.state.zoom},this.scene.getNonDeletedElementsMap(),this.getEditorUIOffsets())&&this.scrollToContent(this.flowChartCreator.pendingNodes,{animate:!0,duration:300,fitToContent:!0,canvasOffsets:this.getEditorUIOffsets()});return}if(s.altKey){let y=ce(this.scene.getNonDeletedElementsMap(),this.state);if(y.length===1&&f){s.preventDefault();let g=this.flowChartNavigator.exploreByDirection(y[0],this.scene.getNonDeletedElementsMap(),jM(s.key));if(g){this.setState(v=>({selectedElementIds:Ee({[g]:!0},v)}));let b=this.scene.getNonDeletedElementsMap().get(g);b&&!zu([b],this.canvas.width/window.devicePixelRatio,this.canvas.height/window.devicePixelRatio,{offsetLeft:this.state.offsetLeft,offsetTop:this.state.offsetTop,scrollX:this.state.scrollX,scrollY:this.state.scrollY,zoom:this.state.zoom},this.scene.getNonDeletedElementsMap(),this.getEditorUIOffsets())&&this.scrollToContent(b,{animate:!0,duration:300,canvasOffsets:this.getEditorUIOffsets()})}return}}}if(s[M.CTRL_OR_CMD]&&s.key===M.P&&!s.shiftKey&&!s.altKey){this.setToast({message:w("commandPalette.shortcutHint",{shortcut:Ea("commandPalette")})}),s.preventDefault();return}if(s[M.CTRL_OR_CMD]&&s.key.toLowerCase()===M.V&&(Gf=s.shiftKey,clearTimeout(fA),fA=window.setTimeout(()=>{Gf=!1},100)),s[M.CTRL_OR_CMD]&&il(s.target)&&(s.code===ye.MINUS||s.code===ye.EQUAL)){s.preventDefault();return}if(il(s.target)&&s.key!==M.ESCAPE||ec(s.key)&&e0(s.target))return;if(s.key===M.QUESTION_MARK){this.setState({openDialog:{name:"help"}});return}else if(s.key.toLowerCase()===M.E&&s.shiftKey&&s[M.CTRL_OR_CMD]){s.preventDefault(),this.setState({openDialog:{name:"imageExport"}});return}if(s.key===M.PAGE_UP||s.key===M.PAGE_DOWN){let p=(s.shiftKey?this.state.width:this.state.height)/this.state.zoom.value;s.key===M.PAGE_DOWN&&(p=-p),s.shiftKey?this.translateCanvas(f=>({scrollX:f.scrollX+p})):this.translateCanvas(f=>({scrollY:f.scrollY+p}))}if(this.state.openDialog?.name==="elementLinkSelector"||this.actionManager.handleKeyDown(s)||this.state.viewModeEnabled)return;if(s[M.CTRL_OR_CMD]&&this.state.isBindingEnabled&&this.setState({isBindingEnabled:!1}),ec(s.key)){let p=this.scene.getSelectedElements({selectedElementIds:this.state.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0}),f=p.find(me),y=new Set;p.filter(me).filter(x=>{let E=x.startBinding&&!p.some(C=>C.id===x.startBinding?.elementId),S=x.endBinding&&!p.some(C=>C.id===x.endBinding?.elementId);return E||S}).forEach(x=>y.add(x.id)),p=p.filter(x=>!y.has(x.id));let g=this.getEffectiveGridSize()&&(s.shiftKey?zv:this.getEffectiveGridSize())||(s.shiftKey?VS:zv),b=0,v=0;s.key===M.ARROW_LEFT?b=-g:s.key===M.ARROW_RIGHT?b=g:s.key===M.ARROW_UP?v=-g:s.key===M.ARROW_DOWN&&(v=g),p.forEach(x=>{$(x,{x:x.x+b,y:x.y+v},!1),dl(x,this.scene.getNonDeletedElementsMap(),{simultaneouslyUpdated:p})}),this.setState({suggestedBindings:Lp(p.filter(x=>x.id!==f?.id||g!==0),this.scene.getNonDeletedElementsMap(),this.state.zoom)}),this.scene.triggerUpdate(),s.preventDefault()}else if(s.key===M.ENTER){let p=this.scene.getSelectedElements(this.state);if(p.length===1){let f=p[0];if(s[M.CTRL_OR_CMD])Ke(f)&&(!this.state.editingLinearElement||this.state.editingLinearElement.elementId!==p[0].id)&&(this.store.shouldCaptureIncrement(),me(f)||this.setState({editingLinearElement:new ne(f)}));else if(ae(f)||wT(f)){let y;ae(f)||(y=f);let g=zp(f,this.state,this.scene.getNonDeletedElementsMap()),b=g.x,v=g.y;this.startTextEditing({sceneX:b,sceneY:v,container:y}),s.preventDefault();return}else Ce(f)&&this.setState({editingFrame:f.id})}}else if(!s.ctrlKey&&!s.altKey&&!s.metaKey&&!this.state.newElement&&!this.state.selectionElement&&!this.state.selectedElementsAreBeingDragged){let p=IC(s.key);p?(this.state.activeTool.type!==p&&Oe("toolbar",p,`keyboard (${this.device.editor.isMobile?"mobile":"desktop"})`),p==="arrow"&&this.state.activeTool.type==="arrow"&&this.setState(f=>({currentItemArrowType:f.currentItemArrowType===Yt.sharp?Yt.round:f.currentItemArrowType===Yt.round?Yt.elbow:Yt.sharp})),this.setActiveTool({type:p}),s.stopPropagation()):s.key===M.Q&&(this.toggleLock("keyboard"),s.stopPropagation())}if(s.key===M.SPACE&&we.pointers.size===0&&(Qo=!0,ke(this.interactiveCanvas,De.GRAB),s.preventDefault()),(s.key===M.G||s.key===M.S)&&!s.altKey&&!s[M.CTRL_OR_CMD]){let p=this.scene.getSelectedElements(this.state);if(this.state.activeTool.type==="selection"&&!p.length)return;s.key===M.G&&(Oo(this.state.activeTool.type)||p.some(f=>Oo(f.type)))&&(this.setState({openPopup:"elementBackground"}),s.stopPropagation()),s.key===M.S&&(this.setState({openPopup:"elementStroke"}),s.stopPropagation())}if(!s[M.CTRL_OR_CMD]&&s.shiftKey&&s.key.toLowerCase()===M.F){let p=this.scene.getSelectedElements(this.state);if(this.state.activeTool.type==="selection"&&!p.length)return;(this.state.activeTool.type==="text"||p.find(f=>ae(f)||qe(f,this.scene.getNonDeletedElementsMap())))&&(s.preventDefault(),this.setState({openPopup:"fontFamily"}))}if(s.key===M.K&&!s.altKey&&!s[M.CTRL_OR_CMD]){this.state.activeTool.type==="laser"?this.setActiveTool({type:"selection"}):this.setActiveTool({type:"laser"});return}s[M.CTRL_OR_CMD]&&(s.key===M.BACKSPACE||s.key===M.DELETE)&&gi.set(Bg,"clearCanvas");let c=s.key.toLocaleLowerCase(),u=c===M.S&&s.shiftKey,m=s.key===M.I||c===M.G&&s.shiftKey;(u||m)&&this.openEyeDropper({type:u?"stroke":"background"})})),A(this,"onKeyUp",st(s=>{if(s.key===M.SPACE&&(this.state.viewModeEnabled||this.state.openDialog?.name==="elementLinkSelector"?ke(this.interactiveCanvas,De.GRAB):this.state.activeTool.type==="selection"?ri(this.interactiveCanvas):(Pi(this.interactiveCanvas,this.state),this.setState({selectedElementIds:Ee({},this.state),selectedGroupIds:{},editingGroupId:null,activeEmbeddable:null})),Qo=!1),!s[M.CTRL_OR_CMD]&&!this.state.isBindingEnabled&&this.setState({isBindingEnabled:!0}),ec(s.key)&&(Eu(this.scene.getSelectedElements(this.state).filter(Ke),this.scene.getNonDeletedElementsMap(),this.scene.getNonDeletedElements(),this.scene,ac(this.state),this.state.selectedLinearElement?.selectedPointsIndices??[],this.state.zoom),this.setState({suggestedBindings:[]})),s.altKey||this.flowChartNavigator.isExploring&&(this.flowChartNavigator.clear(),this.syncActionResult({captureUpdate:L.IMMEDIATELY})),!s[M.CTRL_OR_CMD]&&this.flowChartCreator.isCreatingChart){this.flowChartCreator.pendingNodes?.length&&this.scene.insertElements(this.flowChartCreator.pendingNodes);let c=this.flowChartCreator.pendingNodes?.[0];c&&(this.setState(u=>({selectedElementIds:Ee({[c.id]:!0},u)})),zu([c],this.canvas.width/window.devicePixelRatio,this.canvas.height/window.devicePixelRatio,{offsetLeft:this.state.offsetLeft,offsetTop:this.state.offsetTop,scrollX:this.state.scrollX,scrollY:this.state.scrollY,zoom:this.state.zoom},this.scene.getNonDeletedElementsMap(),this.getEditorUIOffsets())||this.scrollToContent(c,{animate:!0,duration:300,canvasOffsets:this.getEditorUIOffsets()})),this.flowChartCreator.clear(),this.syncActionResult({captureUpdate:L.IMMEDIATELY})}})),A(this,"isToolSupported",s=>this.props.UIOptions.tools?.[s]!==!1),A(this,"setActiveTool",s=>{if(!this.isToolSupported(s.type)){console.warn(`"${s.type}" tool is disabled via "UIOptions.canvasActions.tools.${s.type}"`);return}let c=Nt(this.state,s);c.type==="hand"?ke(this.interactiveCanvas,De.GRAB):Qo||Pi(this.interactiveCanvas,{...this.state,activeTool:c}),g3(document.activeElement)&&this.focusContainer(),N3(c.type)||this.setState({suggestedBindings:[]}),c.type==="image"&&this.onImageAction({insertOnCanvasDirectly:(s.type==="image"&&s.insertOnCanvasDirectly)??!1}),this.setState(u=>{let m={snapLines:u.snapLines.length?[]:u.snapLines,originSnapOffset:null,activeEmbeddable:null};return c.type==="freedraw"&&this.store.shouldCaptureIncrement(),c.type!=="selection"?{...u,activeTool:c,selectedElementIds:Ee({},u),selectedGroupIds:Ee({},u),editingGroupId:null,multiElement:null,...m}:{...u,activeTool:c,...m}})}),A(this,"setOpenDialog",s=>{this.setState({openDialog:s})}),A(this,"setCursor",s=>{ke(this.interactiveCanvas,s)}),A(this,"resetCursor",()=>{ri(this.interactiveCanvas)}),A(this,"isTouchScreenMultiTouchGesture",()=>we.pointers.size>=2),A(this,"getName",()=>this.state.name||this.props.name||`${w("labels.untitled")}-${Jv()}`),A(this,"onGestureStart",st(s=>{s.preventDefault(),this.isTouchScreenMultiTouchGesture()&&this.setState({selectedElementIds:Ee({},this.state),activeEmbeddable:null}),we.initialScale=this.state.zoom.value})),A(this,"onGestureChange",st(s=>{if(s.preventDefault(),this.isTouchScreenMultiTouchGesture())return;let c=we.initialScale;c&&this.setState(u=>({...Wo({viewportX:this.lastViewportPosition.x,viewportY:this.lastViewportPosition.y,nextZoom:Cr(c*s.scale)},u)}))})),A(this,"onGestureEnd",st(s=>{s.preventDefault(),this.isTouchScreenMultiTouchGesture()&&this.setState({previousSelectedElementIds:{},selectedElementIds:Ee(this.state.previousSelectedElementIds,this.state)}),we.initialScale=null})),A(this,"startTextEditing",({sceneX:s,sceneY:c,insertAtParentCenter:u=!0,container:m,autoEdit:p=!0})=>{let f=!1,y=u&&this.getTextWysiwygSnappedToCenterPosition(s,c,this.state,m);m&&y&&(qe(m,this.scene.getNonDeletedElementsMap())||(f=!0));let g=null,b=this.scene.getSelectedElements(this.state);b.length===1?ae(b[0])?g=b[0]:m?g=qe(b[0],this.scene.getNonDeletedElementsMap()):g=this.getTextElementAtPosition(s,c):g=this.getTextElementAtPosition(s,c);let v=g?.fontFamily||this.state.currentItemFontFamily,x=g?.lineHeight||Ws(v),E=this.state.currentItemFontSize;if(!g&&f&&m&&!Gt(m)){let _=B3(An({fontSize:E,fontFamily:v}),x),D=H3(E,x),k=Math.max(m.height,D),I=Math.max(m.width,_);$(m,{height:k,width:I}),s=m.x+I/2,c=m.y+k/2,y&&(y=this.getTextWysiwygSnappedToCenterPosition(s,c,this.state,m))}let S=this.getTopLayerFrameAtSceneCoords({x:s,y:c}),C=g||fl({x:y?y.elementCenterX:s,y:y?y.elementCenterY:c,strokeColor:this.state.currentItemStrokeColor,backgroundColor:this.state.currentItemBackgroundColor,fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roughness:this.state.currentItemRoughness,opacity:this.state.currentItemOpacity,text:"",fontSize:E,fontFamily:v,textAlign:y?"center":this.state.currentItemTextAlign,verticalAlign:y?wr.MIDDLE:Uv,containerId:f?m?.id:void 0,groupIds:m?.groupIds??[],lineHeight:x,angle:m?.angle??0,frameId:S?S.id:null});if(!g&&f&&m&&$(m,{boundElements:(m.boundElements||[]).concat({type:"text",id:C.id})}),this.setState({editingTextElement:C}),!g)if(m&&f){let _=this.scene.getElementIndex(m.id);this.scene.insertElementAtIndex(C,_+1)}else this.scene.insertElement(C);p||g||m?this.handleTextWysiwyg(C,{isExistingElement:!!g}):this.setState({newElement:C,multiElement:null})}),A(this,"startImageCropping",s=>{this.store.shouldCaptureIncrement(),this.setState({croppingElementId:s.id})}),A(this,"finishImageCropping",()=>{this.state.croppingElementId&&(this.store.shouldCaptureIncrement(),this.setState({croppingElementId:null}))}),A(this,"handleCanvasDoubleClick",s=>{if(this.state.multiElement||this.state.activeTool.type!=="selection")return;let c=this.scene.getSelectedElements(this.state),{x:u,y:m}=rt(s,this.state);if(c.length===1&&Ke(c[0])){if(s[M.CTRL_OR_CMD]&&(!this.state.editingLinearElement||this.state.editingLinearElement.elementId!==c[0].id)&&!me(c[0])){this.store.shouldCaptureIncrement(),this.setState({editingLinearElement:new ne(c[0])});return}else if(this.state.selectedLinearElement&&me(c[0])){let p=ne.getSegmentMidpointHitCoords(this.state.selectedLinearElement,{x:u,y:m},this.state,this.scene.getNonDeletedElementsMap()),f=p?ne.getSegmentMidPointIndex(this.state.selectedLinearElement,this.state,p,this.scene.getNonDeletedElementsMap()):-1;if(f&&f>-1){this.store.shouldCaptureIncrement(),ne.deleteFixedSegment(c[0],f);let y=ne.getSegmentMidpointHitCoords({...this.state.selectedLinearElement,segmentMidPointHoveredCoords:null},{x:u,y:m},this.state,this.scene.getNonDeletedElementsMap()),g=y?ne.getSegmentMidPointIndex(this.state.selectedLinearElement,this.state,y,this.scene.getNonDeletedElementsMap()):null;this.setState({selectedLinearElement:{...this.state.selectedLinearElement,pointerDownState:{...this.state.selectedLinearElement.pointerDownState,segmentMidpoint:{index:g,value:p,added:!1}},segmentMidPointHoveredCoords:y}});return}}}if(c.length===1&&tt(c[0])){this.startImageCropping(c[0]);return}if(ri(this.interactiveCanvas),ul(this.state).length>0){let p=this.getElementAtPosition(u,m),f=p&&nT(p,this.state.selectedGroupIds);if(f){this.store.shouldCaptureIncrement(),this.setState(y=>({...y,...da({editingGroupId:f,selectedElementIds:{[p.id]:!0}},this.scene.getNonDeletedElements(),y,this)}));return}}if(ri(this.interactiveCanvas),!s[M.CTRL_OR_CMD]&&!this.state.viewModeEnabled){let p=this.getElementAtPosition(u,m);if(qs(p)){this.setState({activeEmbeddable:{element:p,state:"active"}});return}let f=this.getTextBindableContainerAtPosition(u,m);if(f&&(Bi(f)||!du(f.backgroundColor)||Js({x:u,y:m,element:f,shape:Ro(f,this.scene.getNonDeletedElementsMap()),threshold:this.getElementHitThreshold()}))){let y=zp(f,this.state,this.scene.getNonDeletedElementsMap());u=y.x,m=y.y}this.startTextEditing({sceneX:u,sceneY:m,insertAtParentCenter:!s.altKey,container:f})}}),A(this,"getElementLinkAtPosition",(s,c)=>{let u=this.scene.getNonDeletedElements(),m=-1;for(let p=u.length-1;p>=0;p--){let f=u[p];if(c&&f.id===c.id&&(m=p),f.link&&p>=m&&Fp(f,this.scene.getNonDeletedElementsMap(),this.state,Z(s.x,s.y),this.device.editor.isMobile))return f}}),A(this,"redirectToLink",(s,c)=>{let u=nl(Z(this.lastPointerDownEvent.clientX,this.lastPointerDownEvent.clientY),Z(this.lastPointerUpEvent.clientX,this.lastPointerUpEvent.clientY));if(!this.hitLinkElement||u>So)return;let m=rt(this.lastPointerDownEvent,this.state),p=this.scene.getNonDeletedElementsMap(),f=Fp(this.hitLinkElement,p,this.state,Z(m.x,m.y),this.device.editor.isMobile),y=rt(this.lastPointerUpEvent,this.state),g=Fp(this.hitLinkElement,p,this.state,Z(y.x,y.y),this.device.editor.isMobile);if(f&&g){MM();let b=this.hitLinkElement.link;if(b){b=hl(b);let v;if(this.props.onLinkOpen&&(v=i0("excalidraw-link",s.nativeEvent),this.props.onLinkOpen({...this.hitLinkElement,link:b},v)),!v?.defaultPrevented){let x=s1(b)?"_self":"_blank",E=window.open(void 0,x);E&&(E.opener=null,E.location=b)}}}}),A(this,"getTopLayerFrameAtSceneCoords",s=>{let c=this.scene.getNonDeletedElementsMap(),u=this.scene.getNonDeletedFramesLikes().filter(m=>I1(s,m,c));return u.length?u[u.length-1]:null}),A(this,"handleCanvasPointerMove",s=>{this.savePointer(s.clientX,s.clientY,this.state.cursorButton),this.lastPointerMoveEvent=s.nativeEvent,we.pointers.has(s.pointerId)&&we.pointers.set(s.pointerId,{x:s.clientX,y:s.clientY});let c=we.initialScale;if(we.pointers.size===2&&we.lastCenter&&c&&we.initialDistance){let v=BM(we.pointers),x=v.x-we.lastCenter.x,E=v.y-we.lastCenter.y;we.lastCenter=v;let S=UM(Array.from(we.pointers.values())),C=this.state.activeTool.type==="freedraw"&&this.state.penMode?1:S/we.initialDistance,_=C?Cr(c*C):this.state.zoom.value;this.setState(D=>{let k=Wo({viewportX:v.x,viewportY:v.y,nextZoom:_},D);this.translateCanvas({zoom:k.zoom,scrollX:k.scrollX+2*(x/_),scrollY:k.scrollY+2*(E/_),shouldCacheIgnoreZoom:!0})}),this.resetShouldCacheIgnoreZoomDebounced()}else we.lastCenter=we.initialDistance=we.initialScale=null;if(Qo||sm||gx||Vs(this.state))return;let u=FM(bx,s.clientX-this.state.offsetLeft,s.clientY-this.state.offsetTop).isOverEither;!this.state.newElement&&!this.state.selectionElement&&!this.state.selectedElementsAreBeingDragged&&!this.state.multiElement&&(u?ri(this.interactiveCanvas):Pi(this.interactiveCanvas,this.state));let m=rt(s,this.state),{x:p,y:f}=m;if(!this.state.newElement&&mT(this.state.activeTool.type)){let{originOffset:v,snapLines:x}=uT(this.scene.getNonDeletedElements(),this,{x:p,y:f},s,this.scene.getNonDeletedElementsMap());this.setState(E=>{let S=Ks(E.snapLines,x),C=E.originSnapOffset?Ks(E.originSnapOffset,v):v;return E.snapLines===S&&E.originSnapOffset===C?null:{snapLines:S,originSnapOffset:C}})}else!this.state.newElement&&!this.state.selectedElementsAreBeingDragged&&!this.state.selectionElement&&this.setState(v=>v.snapLines.length?{snapLines:[]}:null);if(this.state.editingLinearElement&&!this.state.editingLinearElement.isDragging){let v=ne.handlePointerMove(s,p,f,this,this.scene.getNonDeletedElementsMap());v&&v!==this.state.editingLinearElement&&(0,Dl.flushSync)(()=>{this.setState({editingLinearElement:v})}),v?.lastUncommittedPoint!=null?this.maybeSuggestBindingAtCursor(m,v.elbowed):(0,Dl.flushSync)(()=>{this.setState({suggestedBindings:[]})})}if(L3(this.state.activeTool.type)){let{newElement:v}=this.state;ol(v,!1)?this.maybeSuggestBindingsForLinearElementAtCoords(v,[m],this.state.startBoundElement):this.maybeSuggestBindingAtCursor(m,!1)}if(this.state.multiElement){let{multiElement:v}=this.state,{x,y:E}=v,{points:S,lastCommittedPoint:C}=v,_=S[S.length-1];if(Pi(this.interactiveCanvas,this.state),_===C)nl(Z(p-x,f-E),_)>=qh?$(v,{points:[...S,Z(p-x,f-E)]},!1):ke(this.interactiveCanvas,De.POINTER);else if(S.length>2&&C&&nl(Z(p-x,f-E),C)<qh)ke(this.interactiveCanvas,De.POINTER),$(v,{points:S.slice(0,-1)},!1);else{let[D,k]=$t(p,f,s[M.CTRL_OR_CMD]||me(v)?null:this.getEffectiveGridSize()),[I,j]=v?.lastCommittedPoint??[0,0],z=D-x-I,G=k-E-j;Dp(s)&&({width:z,height:G}=P1(I+x,j+E,D,k)),Ip(S,this.state.zoom.value)&&ke(this.interactiveCanvas,De.POINTER),$(v,{points:[...S.slice(0,-1),Z(I+z,j+G)]},!1,{isDragging:!0}),this.triggerRender(!1)}return}if(s.buttons||this.state.activeTool.type!=="selection"&&this.state.activeTool.type!=="text"&&this.state.activeTool.type!=="eraser")return;let y=this.scene.getNonDeletedElements(),g=this.scene.getSelectedElements(this.state);if(g.length===1&&!u&&!this.state.editingLinearElement){if(this.state.selectedLinearElement&&this.handleHoverSelectedLinearElement(this.state.selectedLinearElement,p,f),(!this.state.selectedLinearElement||this.state.selectedLinearElement.hoverPointIndex===-1)&&this.state.openDialog?.name!=="elementLinkSelector"&&!(g.length===1&&me(g[0]))){let v=H1(y,this.state,p,f,this.state.zoom,s.pointerType,this.scene.getNonDeletedElementsMap(),this.device);if(v&&v.transformHandleType){ke(this.interactiveCanvas,Y1(v));return}}}else if(g.length>1&&!u&&this.state.openDialog?.name!=="elementLinkSelector"){let v=F1(gt(g),p,f,this.state.zoom,s.pointerType,this.device);if(v){ke(this.interactiveCanvas,Y1({transformHandleType:v}));return}}let b=this.getElementAtPosition(m.x,m.y);this.hitLinkElement=this.getElementLinkAtPosition(m,b),!Ri(this.state)&&(this.hitLinkElement&&!this.state.selectedElementIds[this.hitLinkElement.id]?(ke(this.interactiveCanvas,De.POINTER),hj(this.hitLinkElement,this.state,this.scene.getNonDeletedElementsMap())):(MM(),b&&(b.link||on(b))&&this.state.selectedElementIds[b.id]&&!this.state.contextMenu&&!this.state.showHyperlinkPopup?this.setState({showHyperlinkPopup:"info"}):this.state.activeTool.type==="text"?ke(this.interactiveCanvas,ae(b)?De.TEXT:De.CROSSHAIR):this.state.viewModeEnabled?ke(this.interactiveCanvas,De.GRAB):this.state.openDialog?.name==="elementLinkSelector"?ke(this.interactiveCanvas,De.AUTO):u?ke(this.interactiveCanvas,De.AUTO):this.state.selectedLinearElement?this.handleHoverSelectedLinearElement(this.state.selectedLinearElement,p,f):s[M.CTRL_OR_CMD]?ke(this.interactiveCanvas,De.AUTO):(b||this.isHittingCommonBoundingBoxOfSelectedElements(m,g))&&!b?.locked&&(b&&qs(b)&&this.isIframeLikeElementCenter(b,s,p,f)?(ke(this.interactiveCanvas,De.POINTER),this.setState({activeEmbeddable:{element:b,state:"hover"}})):(!b||!me(b))&&(ke(this.interactiveCanvas,De.MOVE),this.state.activeEmbeddable?.state==="hover"&&this.setState({activeEmbeddable:null})))),this.state.openDialog?.name==="elementLinkSelector"&&b?this.setState(v=>({hoveredElementIds:Ks(v.hoveredElementIds,da({editingGroupId:v.editingGroupId,selectedElementIds:{[b.id]:!0}},this.scene.getNonDeletedElements(),v,this).selectedElementIds)})):this.state.openDialog?.name==="elementLinkSelector"&&!b&&this.setState(v=>({hoveredElementIds:Ks(v.hoveredElementIds,{})})))}),A(this,"handleEraser",(s,c,u)=>{this.eraserTrail.addPointToPath(u.x,u.y);let m=!1,p=new Set,f=this.scene.getNonDeletedElements(),y=E=>{for(let S of E){if(S.locked)return;if(s.altKey?this.elementsPendingErasure.delete(S.id)&&(m=!0):this.elementsPendingErasure.has(S.id)||(m=!0,this.elementsPendingErasure.add(S.id)),m&&S.groupIds?.length){let C=S.groupIds.at(-1);if(!p.has(C)){p.add(C);let _=xt(f,C);for(let D of _)s.altKey?this.elementsPendingErasure.delete(D.id):this.elementsPendingErasure.add(D.id)}}}},g=nl(Z(c.lastCoords.x,c.lastCoords.y),Z(u.x,u.y)),b=this.getElementHitThreshold(),v={...c.lastCoords},x=0;for(;x<=g;){let E=this.getElementsAtPosition(v.x,v.y);if(y(E),x===g)break;x=Math.min(x+b,g);let S=x/g,C=(1-S)*v.x+S*u.x,_=(1-S)*v.y+S*u.y;v.x=C,v.y=_}if(c.lastCoords.x=u.x,c.lastCoords.y=u.y,m){for(let E of this.scene.getNonDeletedElements())Ga(E)&&(this.elementsPendingErasure.has(E.id)||this.elementsPendingErasure.has(E.containerId))&&(s.altKey?(this.elementsPendingErasure.delete(E.id),this.elementsPendingErasure.delete(E.containerId)):(this.elementsPendingErasure.add(E.id),this.elementsPendingErasure.add(E.containerId)));this.elementsPendingErasure=new Set(this.elementsPendingErasure),this.triggerRender()}}),A(this,"handleTouchMove",s=>{cm=!0}),A(this,"handleCanvasPointerDown",s=>{let c=s.target;if(c.setPointerCapture&&c.setPointerCapture(s.pointerId),this.maybeCleanupAfterMissingPointerUp(s.nativeEvent),this.maybeUnfollowRemoteUser(),this.state.searchMatches&&(this.setState(b=>({searchMatches:b.searchMatches.map(v=>({...v,focus:!1}))})),gi.set(lI,null)),this.state.contextMenu&&this.setState({contextMenu:null}),this.state.snapLines&&this.setAppState({snapLines:[]}),this.updateGestureOnPointerDown(s),s.pointerType==="touch"&&this.state.newElement&&this.state.newElement.type==="freedraw"){let b=this.state.newElement;this.updateScene({...b.points.length<10?{elements:this.scene.getElementsIncludingDeleted().filter(v=>v.id!==b.id)}:{},appState:{newElement:null,editingTextElement:null,startBoundElement:null,suggestedBindings:[],selectedElementIds:Ee(Object.keys(this.state.selectedElementIds).filter(v=>v!==b.id).reduce((v,x)=>(v[x]=this.state.selectedElementIds[x],v),{}),this.state)},captureUpdate:this.state.openDialog?.name==="elementLinkSelector"?L.EVENTUALLY:L.NEVER});return}let u=document.getSelection();if(u?.anchorNode&&u.removeAllRanges(),this.maybeOpenContextMenuAfterPointerDownOnTouchDevices(s),!this.state.penDetected&&s.pointerType==="pen"&&this.setState(b=>({penMode:!0,penDetected:!0})),!this.device.isTouchScreen&&["pen","touch"].includes(s.pointerType)&&(this.device=uu(this.device,{isTouchScreen:!0})),sm||(this.lastPointerDownEvent=s,this.handleCanvasPanUsingWheelOrSpaceDrag(s)))return;if(this.setState({lastPointerDownWith:s.pointerType,cursorButton:"down"}),this.savePointer(s.clientX,s.clientY,"down"),s.button===xr.ERASER&&this.state.activeTool.type!==rn.eraser){this.setState({activeTool:Nt(this.state,{type:rn.eraser,lastActiveToolBeforeEraser:this.state.activeTool})},()=>{this.handleCanvasPointerDown(s);let b=()=>{v(),x?.(),Ri(this.state)&&this.setState({activeTool:Nt(this.state,{...this.state.activeTool.lastActiveTool||{type:rn.selection},lastActiveToolBeforeEraser:null})})},v=Ze(window,"pointerup",b,{once:!0}),x;requestAnimationFrame(()=>{x=this.missingPointerEventCleanupEmitter.once(b)})});return}if(s.button!==xr.MAIN&&s.button!==xr.TOUCH&&s.button!==xr.ERASER||we.pointers.size>1)return;let m=this.initialPointerDownState(s);if(this.setState({selectedElementsAreBeingDragged:!1}),this.handleDraggingScrollBar(s,m)||(this.clearSelectionIfNotUsingSelection(),this.updateBindingEnabledOnPointerMove(s),this.handleSelectionOnPointerDown(s,m))||!(!this.state.penMode||s.pointerType!=="touch"||this.state.activeTool.type==="selection"||this.state.activeTool.type==="text"||this.state.activeTool.type==="image"))return;if(this.state.activeTool.type==="text")this.handleTextOnPointerDown(s,m);else if(this.state.activeTool.type==="arrow"||this.state.activeTool.type==="line")this.handleLinearElementOnPointerDown(s,this.state.activeTool.type,m);else if(this.state.activeTool.type==="image"){ke(this.interactiveCanvas,De.CROSSHAIR);let b=this.state.pendingImageElementId&&this.scene.getElement(this.state.pendingImageElementId);if(!b)return;this.setState({newElement:b,pendingImageElementId:null,multiElement:null});let{x:v,y:x}=rt(s,this.state),E=this.getTopLayerFrameAtSceneCoords({x:v,y:x});$(b,{x:v,y:x,frameId:E?E.id:null})}else this.state.activeTool.type==="freedraw"?this.handleFreeDrawElementOnPointerDown(s,this.state.activeTool.type,m):this.state.activeTool.type==="custom"?Pi(this.interactiveCanvas,this.state):this.state.activeTool.type===rn.frame||this.state.activeTool.type===rn.magicframe?this.createFrameElementOnPointerDown(m,this.state.activeTool.type):this.state.activeTool.type==="laser"?this.laserTrails.startPath(m.lastCoords.x,m.lastCoords.y):this.state.activeTool.type!=="eraser"&&this.state.activeTool.type!=="hand"&&this.createGenericElementOnPointerDown(this.state.activeTool.type,m);this.props?.onPointerDown?.(this.state.activeTool,m),this.onPointerDownEmitter.trigger(this.state.activeTool,m,s),this.state.activeTool.type==="eraser"&&this.eraserTrail.startPath(m.lastCoords.x,m.lastCoords.y);let p=this.onPointerMoveFromPointerDownHandler(m),f=this.onPointerUpFromPointerDownHandler(m),y=this.onKeyDownFromPointerDownHandler(m),g=this.onKeyUpFromPointerDownHandler(m);this.missingPointerEventCleanupEmitter.once(b=>f(b||s.nativeEvent)),(!this.state.viewModeEnabled||this.state.activeTool.type==="laser")&&(window.addEventListener("pointermove",p),window.addEventListener("pointerup",f),window.addEventListener("keydown",y),window.addEventListener("keyup",g),m.eventListeners.onMove=p,m.eventListeners.onUp=f,m.eventListeners.onKeyUp=g,m.eventListeners.onKeyDown=y)}),A(this,"handleCanvasPointerUp",s=>{this.removePointer(s),this.lastPointerUpEvent=s;let c=rt({clientX:s.clientX,clientY:s.clientY},this.state),u=s.timeStamp-(this.lastPointerDownEvent?.timeStamp??0);if(this.device.editor.isMobile&&u<300){let m=this.getElementAtPosition(c.x,c.y);if(qs(m)&&this.isIframeLikeElementCenter(m,s,c.x,c.y)){this.handleEmbeddableCenterClick(m);return}}if(this.device.isTouchScreen){let m=this.getElementAtPosition(c.x,c.y);this.hitLinkElement=this.getElementLinkAtPosition(c,m)}this.hitLinkElement&&!this.state.selectedElementIds[this.hitLinkElement.id]?u<300&&qs(this.hitLinkElement)&&!jT(this.hitLinkElement,this.scene.getNonDeletedElementsMap(),this.state,Z(c.x,c.y))?this.handleEmbeddableCenterClick(this.hitLinkElement):this.redirectToLink(s,this.device.isTouchScreen):this.state.viewModeEnabled&&this.setState({activeEmbeddable:null,selectedElementIds:{}})}),A(this,"maybeOpenContextMenuAfterPointerDownOnTouchDevices",s=>{s.pointerType==="touch"&&(cm=!1,Al?cm=!0:Al=window.setTimeout(()=>{Al=0,cm||this.handleCanvasContextMenu(s)},a3))}),A(this,"resetContextMenuTimer",()=>{clearTimeout(Al),Al=0,cm=!1}),A(this,"maybeCleanupAfterMissingPointerUp",s=>{dm?.(),this.missingPointerEventCleanupEmitter.trigger(s).clear()}),A(this,"handleCanvasPanUsingWheelOrSpaceDrag",s=>{if(!(we.pointers.size<=1&&(s.button===xr.WHEEL||s.button===xr.MAIN&&Qo||Vs(this.state)||this.state.viewModeEnabled)))return!1;sm=!0,this.focusContainer(),this.state.editingTextElement||s.preventDefault();let c=!1,u=typeof window===void 0?!1:/Linux/.test(window.navigator.platform);ke(this.interactiveCanvas,De.GRABBING);let{clientX:m,clientY:p}=s,f=ux(g=>{let b=m-g.clientX,v=p-g.clientY;if(m=g.clientX,p=g.clientY,u&&!c&&(Math.abs(b)>1||Math.abs(v)>1)){c=!0;let x=S=>{document.body.removeEventListener("paste",x),S.stopPropagation()},E=()=>{setTimeout(()=>{document.body.removeEventListener("paste",x),window.removeEventListener("pointerup",E)},100)};document.body.addEventListener("paste",x),window.addEventListener("pointerup",E)}this.translateCanvas({scrollX:this.state.scrollX-b/this.state.zoom.value,scrollY:this.state.scrollY-v/this.state.zoom.value})}),y=st(dm=()=>{dm=null,sm=!1,Qo||(this.state.viewModeEnabled?ke(this.interactiveCanvas,De.GRAB):Pi(this.interactiveCanvas,this.state)),this.setState({cursorButton:"up"}),this.savePointer(s.clientX,s.clientY,"up"),window.removeEventListener("pointermove",f),window.removeEventListener("pointerup",y),window.removeEventListener("blur",y),f.flush()});return window.addEventListener("blur",y),window.addEventListener("pointermove",f,{passive:!0}),window.addEventListener("pointerup",y),!0}),A(this,"clearSelectionIfNotUsingSelection",()=>{this.state.activeTool.type!=="selection"&&this.setState({selectedElementIds:Ee({},this.state),selectedGroupIds:{},editingGroupId:null,activeEmbeddable:null})}),A(this,"handleSelectionOnPointerDown",(s,c)=>{if(this.state.activeTool.type==="selection"){let u=this.scene.getNonDeletedElements(),m=this.scene.getNonDeletedElementsMap(),p=this.scene.getSelectedElements(this.state);if(p.length===1&&!this.state.editingLinearElement&&!me(p[0])&&!(this.state.selectedLinearElement&&this.state.selectedLinearElement.hoverPointIndex!==-1)){let f=H1(u,this.state,c.origin.x,c.origin.y,this.state.zoom,s.pointerType,this.scene.getNonDeletedElementsMap(),this.device);f!=null&&(f.transformHandleType==="rotation"?(this.setState({resizingElement:f.element}),c.resize.handleType=f.transformHandleType):(this.state.croppingElementId||this.setState({resizingElement:f.element}),c.resize.handleType=f.transformHandleType))}else p.length>1&&(c.resize.handleType=F1(gt(p),c.origin.x,c.origin.y,this.state.zoom,s.pointerType,this.device));if(c.resize.handleType)c.resize.isResizing=!0,c.resize.offset=Mo(g_(c.resize.handleType,p,m,c.origin.x,c.origin.y)),p.length===1&&Ke(p[0])&&p[0].points.length===2&&(c.resize.arrowDirection=b_(c.resize.handleType,p[0]));else{if(this.state.selectedLinearElement){let g=this.state.editingLinearElement||this.state.selectedLinearElement,b=ne.handlePointerDown(s,this,this.store,c.origin,g,this.scene);if(b.hitElement&&(c.hit.element=b.hitElement),b.linearElementEditor&&(this.setState({selectedLinearElement:b.linearElementEditor}),this.state.editingLinearElement&&this.setState({editingLinearElement:b.linearElementEditor})),b.didAddPoint)return!0}if(c.hit.element=c.hit.element??this.getElementAtPosition(c.origin.x,c.origin.y),this.hitLinkElement=this.getElementLinkAtPosition(c.origin,c.hit.element),this.hitLinkElement)return!0;if(this.state.croppingElementId&&c.hit.element?.id!==this.state.croppingElementId&&this.finishImageCropping(),c.hit.element&&this.getElementLinkAtPosition({x:c.origin.x,y:c.origin.y},c.hit.element))return!1;c.hit.allHitElements=this.getElementsAtPosition(c.origin.x,c.origin.y);let f=c.hit.element,y=c.hit.allHitElements.some(g=>this.isASelectedElement(g));if((f===null||!y)&&!s.shiftKey&&!c.hit.hasHitCommonBoundingBoxOfSelectedElements&&this.clearSelection(f),this.state.editingLinearElement)this.setState({selectedElementIds:Ee({[this.state.editingLinearElement.elementId]:!0},this.state)});else if(f!=null){if(s[M.CTRL_OR_CMD])return this.state.selectedElementIds[f.id]||(c.hit.wasAddedToSelection=!0),this.setState(g=>({...aT(g,f),previousSelectedElementIds:this.state.selectedElementIds})),!1;this.state.selectedElementIds[f.id]||(this.state.editingGroupId&&!Cu(f,this.state.editingGroupId)&&this.setState({selectedElementIds:Ee({},this.state),selectedGroupIds:{},editingGroupId:null,activeEmbeddable:null}),!y&&!c.hit.hasHitCommonBoundingBoxOfSelectedElements&&(this.setState(g=>{let b={...g.selectedElementIds,[f.id]:!0},v=[];if(Object.keys(g.selectedElementIds).forEach(x=>{let E=this.scene.getElement(x);E&&v.push(E)}),Ce(f))Uo(v,f.id).forEach(x=>{delete b[x.id]});else if(f.frameId)b[f.frameId]&&delete b[f.id];else{let x=f.groupIds,E=new Set(x.flatMap(S=>xt(this.scene.getNonDeletedElements(),S)).filter(S=>Ce(S)).map(S=>S.id));E.size>0&&v.forEach(S=>{S.frameId&&E.has(S.frameId)&&(delete b[S.id],S.groupIds.flatMap(C=>xt(this.scene.getNonDeletedElements(),C)).forEach(C=>{delete b[C.id]}))})}return g.openDialog?.name==="elementLinkSelector"&&(f.groupIds.some(x=>g.selectedGroupIds[x])||(b={[f.id]:!0})),{...da({editingGroupId:g.editingGroupId,selectedElementIds:b},this.scene.getNonDeletedElements(),g,this),showHyperlinkPopup:f.link||on(f)?"info":!1}}),c.hit.wasAddedToSelection=!0))}this.setState({previousSelectedElementIds:this.state.selectedElementIds})}}return!1}),A(this,"handleTextOnPointerDown",(s,c)=>{if(this.state.editingTextElement)return;let u=c.origin.x,m=c.origin.y,p=this.getElementAtPosition(u,m,{includeBoundTextElement:!0}),f=this.getTextBindableContainerAtPosition(u,m);Bi(p)&&(f=p,u=p.x+p.width/2,m=p.y+p.height/2),this.startTextEditing({sceneX:u,sceneY:m,insertAtParentCenter:!s.altKey,container:f,autoEdit:!1}),ri(this.interactiveCanvas),this.state.activeTool.locked||this.setState({activeTool:Nt(this.state,{type:"selection"})})}),A(this,"handleFreeDrawElementOnPointerDown",(s,c,u)=>{let[m,p]=$t(u.origin.x,u.origin.y,null),f=this.getTopLayerFrameAtSceneCoords({x:m,y:p}),y=s.pressure===.5,g=AT({type:c,x:m,y:p,strokeColor:this.state.currentItemStrokeColor,backgroundColor:this.state.currentItemBackgroundColor,fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roughness:this.state.currentItemRoughness,opacity:this.state.currentItemOpacity,roundness:null,simulatePressure:y,locked:!1,frameId:f?f.id:null,points:[Z(0,0)],pressures:y?[]:[s.pressure]});this.scene.insertElement(g),this.setState(v=>{let x={...v.selectedElementIds};return delete x[g.id],{selectedElementIds:Ee(x,v)}});let b=Bo(u.origin,this.scene.getNonDeletedElements(),this.scene.getNonDeletedElementsMap(),this.state.zoom);this.setState({newElement:g,startBoundElement:b,suggestedBindings:[]})}),A(this,"insertIframeElement",({sceneX:s,sceneY:c,width:u,height:m})=>{let[p,f]=$t(s,c,this.lastPointerDownEvent?.[M.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),y=kT({type:"iframe",x:p,y:f,strokeColor:"transparent",backgroundColor:"transparent",fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roughness:this.state.currentItemRoughness,roundness:this.getCurrentItemRoundness("iframe"),opacity:this.state.currentItemOpacity,locked:!1,width:u,height:m});return this.scene.insertElement(y),y}),A(this,"insertEmbeddableElement",({sceneX:s,sceneY:c,link:u})=>{let[m,p]=$t(s,c,this.lastPointerDownEvent?.[M.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),f=rc(u);if(!f)return;f.error instanceof URIError&&this.setToast({message:w("toast.unrecognizedLinkFormat"),closable:!0});let y=c1({type:"embeddable",x:m,y:p,strokeColor:"transparent",backgroundColor:"transparent",fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roughness:this.state.currentItemRoughness,roundness:this.getCurrentItemRoundness("embeddable"),opacity:this.state.currentItemOpacity,locked:!1,width:f.intrinsicSize.w,height:f.intrinsicSize.h,link:u});return this.scene.insertElement(y),y}),A(this,"createImageElement",({sceneX:s,sceneY:c,addToFrameUnderCursor:u=!0})=>{let[m,p]=$t(s,c,this.lastPointerDownEvent?.[M.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),f=u?this.getTopLayerFrameAtSceneCoords({x:m,y:p}):null;return u1({type:"image",x:m,y:p,strokeColor:this.state.currentItemStrokeColor,backgroundColor:this.state.currentItemBackgroundColor,fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roughness:this.state.currentItemRoughness,roundness:null,opacity:this.state.currentItemOpacity,locked:!1,frameId:f?f.id:null})}),A(this,"handleLinearElementOnPointerDown",(s,c,u)=>{if(this.state.multiElement){let{multiElement:m}=this.state;if(m.type==="line"&&Ip(m.points,this.state.zoom.value)){$(m,{lastCommittedPoint:m.points[m.points.length-1]}),this.actionManager.executeAction(pi);return}if(me(m)&&m.points.length>1){$(m,{lastCommittedPoint:m.points[m.points.length-1]}),this.actionManager.executeAction(pi);return}let{x:p,y:f,lastCommittedPoint:y}=m;if(m.points.length>1&&y&&nl(Z(u.origin.x-p,u.origin.y-f),y)<qh){this.actionManager.executeAction(pi);return}this.setState(g=>({selectedElementIds:Ee({...g.selectedElementIds,[m.id]:!0},g)})),$(m,{lastCommittedPoint:m.points[m.points.length-1]}),ke(this.interactiveCanvas,De.POINTER)}else{let[m,p]=$t(u.origin.x,u.origin.y,s[M.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),f=this.getTopLayerFrameAtSceneCoords({x:m,y:p}),{currentItemStartArrowhead:y,currentItemEndArrowhead:g}=this.state,[b,v]=c==="arrow"?[y,g]:[null,null],x=c==="arrow"?jp({type:c,x:m,y:p,strokeColor:this.state.currentItemStrokeColor,backgroundColor:this.state.currentItemBackgroundColor,fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roughness:this.state.currentItemRoughness,opacity:this.state.currentItemOpacity,roundness:this.state.currentItemArrowType===Yt.round?{type:ni.PROPORTIONAL_RADIUS}:null,startArrowhead:b,endArrowhead:v,locked:!1,frameId:f?f.id:null,elbowed:this.state.currentItemArrowType===Yt.elbow,fixedSegments:this.state.currentItemArrowType===Yt.elbow?[]:null}):d1({type:c,x:m,y:p,strokeColor:this.state.currentItemStrokeColor,backgroundColor:this.state.currentItemBackgroundColor,fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roughness:this.state.currentItemRoughness,opacity:this.state.currentItemOpacity,roundness:this.state.currentItemRoundness==="round"?{type:ni.PROPORTIONAL_RADIUS}:null,locked:!1,frameId:f?f.id:null});this.setState(S=>{let C={...S.selectedElementIds};return delete C[x.id],{selectedElementIds:Ee(C,S)}}),$(x,{points:[...x.points,Z(0,0)]});let E=Bo(u.origin,this.scene.getNonDeletedElements(),this.scene.getNonDeletedElementsMap(),this.state.zoom,me(x),me(x));this.scene.insertElement(x),this.setState({newElement:x,startBoundElement:E,suggestedBindings:[]})}}),A(this,"createGenericElementOnPointerDown",(s,c)=>{let[u,m]=$t(c.origin.x,c.origin.y,this.lastPointerDownEvent?.[M.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),p=this.getTopLayerFrameAtSceneCoords({x:u,y:m}),f={x:u,y:m,strokeColor:this.state.currentItemStrokeColor,backgroundColor:this.state.currentItemBackgroundColor,fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roughness:this.state.currentItemRoughness,opacity:this.state.currentItemOpacity,roundness:this.getCurrentItemRoundness(s),locked:!1,frameId:p?p.id:null},y;s==="embeddable"?y=c1({type:"embeddable",...f}):y=pl({type:s,...f}),y.type==="selection"?this.setState({selectionElement:y}):(this.scene.insertElement(y),this.setState({multiElement:null,newElement:y}))}),A(this,"createFrameElementOnPointerDown",(s,c)=>{let[u,m]=$t(s.origin.x,s.origin.y,this.lastPointerDownEvent?.[M.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),p={x:u,y:m,opacity:this.state.currentItemOpacity,locked:!1,...Li},f=c===rn.magicframe?Pp(p):Up(p);this.scene.insertElement(f),this.setState({multiElement:null,newElement:f})}),A(this,"restoreReadyToEraseElements",()=>{this.elementsPendingErasure=new Set,this.triggerRender()}),A(this,"eraseElements",()=>{let s=!1,c=this.scene.getElementsIncludingDeleted().map(u=>this.elementsPendingErasure.has(u.id)||u.frameId&&this.elementsPendingErasure.has(u.frameId)||Ga(u)&&this.elementsPendingErasure.has(u.containerId)?(s=!0,se(u,{isDeleted:!0})):u);this.elementsPendingErasure=new Set,s&&(this.store.shouldCaptureIncrement(),this.scene.replaceAllElements(c))}),A(this,"initializeImage",async({imageFile:s,imageElement:c,showCursorImagePreview:u=!1})=>{if(!qp(s))throw new Error(w("errors.unsupportedFileType"));let m=s.type;if(ke(this.interactiveCanvas,"wait"),m===Ma.svg)try{s=Z1(v1(await s.text()),s.name)}catch(g){throw console.warn(g),new Error(w("errors.svgImageInsertError"))}let p=await(this.props.generateIdForFile?.(s)||k_(s));if(!p)throw console.warn("Couldn't generate file id or the supplied `generateIdForFile` didn't resolve to one."),new Error(w("errors.imageInsertError"));if(!this.files[p]?.dataURL){try{s=await Qp(s,{maxWidthOrHeight:d3})}catch(g){console.error("Error trying to resizing image file on insertion",g)}if(s.size>Gv)throw new Error(w("errors.fileTooBig",{maxSize:`${Math.trunc(Gv/1024/1024)}MB`}))}if(u){let g=this.files[p]?.dataURL,b=g&&A_(g);this.setImagePreviewCursor(b||s)}let f=this.files[p]?.dataURL||await X1(s),y=$(c,{fileId:p},!1);return new Promise(async(g,b)=>{try{this.addMissingFiles([{mimeType:m,id:p,dataURL:f,created:Date.now(),lastRetrieved:Date.now()}]);let v=this.imageCache.get(p);v||(this.addNewImagesToImageCache(),await this.updateImageCache([y])),v?.image instanceof Promise&&await v.image,this.state.pendingImageElementId!==y.id&&this.state.newElement?.id!==y.id&&this.initializeImageDimensions(y,!0),g(y)}catch(v){console.error(v),b(new Error(w("errors.imageInsertError")))}finally{u||ri(this.interactiveCanvas)}})}),A(this,"insertImageElement",async(s,c,u)=>{if(!this.isToolSupported("image")){this.setState({errorMessage:w("errors.imageToolNotSupported")});return}this.scene.insertElement(s);try{return await this.initializeImage({imageFile:c,imageElement:s,showCursorImagePreview:u})}catch(m){return $(s,{isDeleted:!0}),this.actionManager.executeAction(pi),this.setState({errorMessage:m.message||w("errors.imageInsertError")}),null}}),A(this,"setImagePreviewCursor",async s=>{let c;try{c=await Qp(s,{maxWidthOrHeight:96})}catch(m){throw m.cause==="UNSUPPORTED"?new Error(w("errors.unsupportedFileType")):m}let u=await X1(c);if(s.type===Ma.svg){let m=await zT(u),p=Math.min(m.height,96),f=p*(m.width/m.height);f>96&&(f=96,p=f*(m.height/m.width));let y=document.createElement("canvas");y.height=p,y.width=f,y.getContext("2d").drawImage(m,0,0,f,p),u=y.toDataURL(Ma.svg)}this.state.pendingImageElementId&&ke(this.interactiveCanvas,`url(${u}) 4 4, auto`)}),A(this,"onImageAction",async({insertOnCanvasDirectly:s})=>{try{let c=this.state.width/2+this.state.offsetLeft,u=this.state.height/2+this.state.offsetTop,{x:m,y:p}=rt({clientX:c,clientY:u},this.state),f=await f1({description:"Image",extensions:Object.keys(ep)}),y=this.createImageElement({sceneX:m,sceneY:p,addToFrameUnderCursor:!1});s?(this.insertImageElement(y,f),this.initializeImageDimensions(y),this.setState({selectedElementIds:Ee({[y.id]:!0},this.state)},()=>{this.actionManager.executeAction(pi)})):this.setState({pendingImageElementId:y.id},()=>{this.insertImageElement(y,f,!0)})}catch(c){c.name!=="AbortError"?console.error(c):console.warn(c),this.setState({pendingImageElementId:null,newElement:null,activeTool:Nt(this.state,{type:"selection"})},()=>{this.actionManager.executeAction(pi)})}}),A(this,"initializeImageDimensions",(s,c=!1)=>{let u=Ao(s)&&this.imageCache.get(s.fileId)?.image;if(!u||u instanceof Promise){if(s.width<So/this.state.zoom.value&&s.height<So/this.state.zoom.value){let m=100/this.state.zoom.value;$(s,{x:s.x-m/2,y:s.y-m/2,width:m,height:m})}return}if(c||s.width<So/this.state.zoom.value&&s.height<So/this.state.zoom.value){let m=Math.max(this.state.height-120,160),p=Math.min(m,Math.floor(this.state.height*.5)/this.state.zoom.value),f=Math.min(u.naturalHeight,p),y=f*(u.naturalWidth/u.naturalHeight),g=s.x+s.width/2-y/2,b=s.y+s.height/2-f/2;$(s,{x:g,y:b,width:y,height:f,crop:null})}}),A(this,"updateImageCache",async(s,c=this.files)=>{let{updatedFiles:u,erroredFiles:m}=await BT({imageCache:this.imageCache,fileIds:s.map(p=>p.fileId),files:c});if(u.size||m.size)for(let p of s)u.has(p.fileId)&&No.delete(p);return m.size&&this.scene.replaceAllElements(this.scene.getElementsIncludingDeleted().map(p=>Ao(p)&&m.has(p.fileId)?se(p,{status:"error"}):p)),{updatedFiles:u,erroredFiles:m}}),A(this,"addNewImagesToImageCache",async(s=UT(this.scene.getNonDeletedElements()),c=this.files)=>{let u=s.filter(m=>!m.isDeleted&&!this.imageCache.has(m.fileId));if(u.length){let{updatedFiles:m}=await this.updateImageCache(u,c);m.size&&this.scene.triggerUpdate()}}),A(this,"scheduleImageRefresh",(0,OI.default)(()=>{this.addNewImagesToImageCache()},e3)),A(this,"updateBindingEnabledOnPointerMove",s=>{let c=VC(s);this.state.isBindingEnabled!==c&&this.setState({isBindingEnabled:c})}),A(this,"maybeSuggestBindingAtCursor",(s,c)=>{let u=Bo(s,this.scene.getNonDeletedElements(),this.scene.getNonDeletedElementsMap(),this.state.zoom,!1,c);this.setState({suggestedBindings:u!=null?[u]:[]})}),A(this,"maybeSuggestBindingsForLinearElementAtCoords",(s,c,u)=>{if(!c.length)return;let m=c.reduce((p,f)=>{let y=Bo(f,this.scene.getNonDeletedElements(),this.scene.getNonDeletedElementsMap(),this.state.zoom,me(s),me(s));return y!=null&&!KC(s,u?.id,y)&&p.push(y),p},[]);this.setState({suggestedBindings:m})}),A(this,"handleInteractiveCanvasRef",s=>{s!==null?(this.interactiveCanvas=s,this.interactiveCanvas.addEventListener("touchstart",this.onTouchStart,{passive:!1}),this.interactiveCanvas.addEventListener("touchend",this.onTouchEnd)):(this.interactiveCanvas?.removeEventListener("touchstart",this.onTouchStart),this.interactiveCanvas?.removeEventListener("touchend",this.onTouchEnd))}),A(this,"handleAppOnDrop",async s=>{let{file:c,fileHandle:u}=await N_(s),{x:m,y:p}=rt(s,this.state);try{if(qp(c)&&this.isToolSupported("image")){if(c?.type===Ma.png||c?.type===Ma.svg)try{let g=await C_(c,this.state,this.scene.getElementsIncludingDeleted(),u);this.syncActionResult({...g,appState:{...g.appState||this.state,isLoading:!1},replaceFiles:!0,captureUpdate:L.IMMEDIATELY});return}catch(g){if(g.name!=="EncodingError")throw new Error(w("alerts.couldNotLoadInvalidFile"))}let y=this.createImageElement({sceneX:m,sceneY:p});this.insertImageElement(y,c),this.initializeImageDimensions(y),this.setState({selectedElementIds:Ee({[y.id]:!0},this.state)});return}}catch(y){return this.setState({isLoading:!1,errorMessage:y.message})}let f=s.dataTransfer.getData(Ma.excalidrawlib);if(f&&typeof f=="string"){try{let y=T_(f);this.addElementsFromPasteOrLibrary({elements:ND(y),position:s,files:null})}catch(y){this.setState({errorMessage:y.message})}return}if(c&&await this.loadFileToCanvas(c,u),s.dataTransfer?.types?.includes("text/plain")){let y=s.dataTransfer?.getData("text");if(y&&Au(y,this.props.validateEmbeddable)&&(/^(http|https):\/\/[^\s/$.?#].[^\s]*$/.test(y)||rc(y)?.type==="video")){let g=this.insertEmbeddableElement({sceneX:m,sceneY:p,link:hl(y)});g&&this.setState({selectedElementIds:{[g.id]:!0}})}}}),A(this,"loadFileToCanvas",async(s,c)=>{s=await L_(s);try{let u=this.scene.getElementsIncludingDeleted(),m;try{m=await S_(s,this.state,u,c)}catch(p){let f=p instanceof TC;if(f&&p.code==="IMAGE_NOT_CONTAINS_SCENE_DATA"&&!this.isToolSupported("image")){this.setState({isLoading:!1,errorMessage:w("errors.imageToolNotSupported")});return}let y=w(f?"alerts.cannotRestoreFromImage":"alerts.couldNotLoadInvalidFile");this.setState({isLoading:!1,errorMessage:y})}if(!m)return;m.type===Ma.excalidraw?(ic(u.concat(m.data.elements)),this.store.updateSnapshot(Ie(u),this.state),this.setState({isLoading:!0}),this.syncActionResult({...m.data,appState:{...m.data.appState||this.state,isLoading:!1},replaceFiles:!0,captureUpdate:L.IMMEDIATELY})):m.type===Ma.excalidrawlib&&await this.library.updateLibrary({libraryItems:s,merge:!0,openLibraryMenu:!0}).catch(p=>{console.error(p),this.setState({errorMessage:w("errors.importLibraryError")})})}catch(u){this.setState({isLoading:!1,errorMessage:u.message})}}),A(this,"handleCanvasContextMenu",s=>{if(s.preventDefault(),("pointerType"in s.nativeEvent&&s.nativeEvent.pointerType==="touch"||"pointerType"in s.nativeEvent&&s.nativeEvent.pointerType==="pen"&&s.button!==xr.SECONDARY)&&this.state.activeTool.type!=="selection")return;let{x:c,y:u}=rt(s,this.state),m=this.getElementAtPosition(c,u,{preferSelected:!0,includeLockedElements:!0}),p=this.scene.getSelectedElements(this.state),f=this.isHittingCommonBoundingBoxOfSelectedElements({x:c,y:u},p),y=m||f?"element":"canvas",g=this.excalidrawContainerRef.current,{top:b,left:v}=g.getBoundingClientRect(),x=s.clientX-v,E=s.clientY-b;Oe("contextMenu","openContextMenu",y),this.setState({...m&&!this.state.selectedElementIds[m.id]?{...this.state,...da({editingGroupId:this.state.editingGroupId,selectedElementIds:{[m.id]:!0}},this.scene.getNonDeletedElements(),this.state,this),selectedLinearElement:Ke(m)?new ne(m):null}:this.state,showHyperlinkPopup:!1},()=>{this.setState({contextMenu:{top:E,left:x,items:this.getContextMenuItems(y)}})})}),A(this,"maybeDragNewGenericElement",(s,c,u=!0)=>{let m=this.state.selectionElement,p=s.lastCoords;if(m&&this.state.activeTool.type!=="eraser"){G1({newElement:m,elementType:this.state.activeTool.type,originX:s.origin.x,originY:s.origin.y,x:p.x,y:p.y,width:ko(s.origin.x,p.x),height:ko(s.origin.y,p.y),shouldMaintainAspectRatio:tc(c),shouldResizeFromCenter:Ap(c),zoom:this.state.zoom.value,informMutation:u});return}let f=this.state.newElement;if(!f)return;let[y,g]=$t(p.x,p.y,c[M.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),b=Ao(f)&&this.imageCache.get(f.fileId)?.image,v=b&&!(b instanceof Promise)?b.width/b.height:null;this.maybeCacheReferenceSnapPoints(c,[f]);let{snapOffset:x,snapLines:E}=dT(f,this,c,{x:s.originInGrid.x+(this.state.originSnapOffset?.x??0),y:s.originInGrid.y+(this.state.originSnapOffset?.y??0)},{x:y-s.originInGrid.x,y:g-s.originInGrid.y},this.scene.getNonDeletedElementsMap());y+=x.x,g+=x.y,this.setState({snapLines:E}),G1({newElement:f,elementType:this.state.activeTool.type,originX:s.originInGrid.x,originY:s.originInGrid.y,x:y,y:g,width:ko(s.originInGrid.x,y),height:ko(s.originInGrid.y,g),shouldMaintainAspectRatio:tt(f)?!tc(c):tc(c),shouldResizeFromCenter:Ap(c),zoom:this.state.zoom.value,widthAspectRatio:v,originOffset:this.state.originSnapOffset,informMutation:u}),this.setState({newElement:f}),(this.state.activeTool.type===rn.frame||this.state.activeTool.type===rn.magicframe)&&this.setState({elementsToHighlight:Lu(this.scene.getNonDeletedElements(),f,this.state,this.scene.getNonDeletedElementsMap())})}),A(this,"maybeHandleCrop",(s,c)=>{if(!this.state.croppingElementId)return!1;let u=s.resize.handleType,m=s.lastCoords,[p,f]=$t(m.x-s.resize.offset.x,m.y-s.resize.offset.y,c[M.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),y=this.scene.getNonDeletedElementsMap().get(this.state.croppingElementId);if(u&&y&&tt(y)){let g=s.originalElements.get(y.id),b=Ao(y)&&this.imageCache.get(y.fileId)?.image;if(g&&tt(g)&&b&&!(b instanceof Promise)){let[v,x]=$t(m.x,m.y,c[M.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),E={x:v-s.originInGrid.x,y:x-s.originInGrid.y};this.maybeCacheReferenceSnapPoints(c,[y]);let{snapOffset:S,snapLines:C}=i1([y],[g],this,c,E,u);$(y,RC(y,u,b.naturalWidth,b.naturalHeight,p+S.x,f+S.y,c.shiftKey?g.width/g.height:void 0)),dl(y,this.scene.getNonDeletedElementsMap(),{newSize:{width:y.width,height:y.height}}),this.setState({isCropping:u&&u!=="rotation",snapLines:C})}return!0}return!1}),A(this,"maybeHandleResize",(s,c)=>{let u=this.scene.getSelectedElements(this.state),m=u.filter(v=>Ce(v)),p=s.resize.handleType;if(m.length>0&&p==="rotation"||u.length===1&&me(u[0])||this.state.croppingElementId)return!1;this.setState({isResizing:p&&p!=="rotation",isRotating:p==="rotation",activeEmbeddable:null});let f=s.lastCoords,[y,g]=$t(f.x-s.resize.offset.x,f.y-s.resize.offset.y,c[M.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),b=new Map;if(m.forEach(v=>{Uo(this.scene.getNonDeletedElements(),v.id).forEach(x=>{b.set(v.id+x.id,{x:x.x-v.x,y:x.y-v.y})})}),!this.state.selectedElementsAreBeingDragged){let[v,x]=$t(f.x,f.y,c[M.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),E={x:v-s.originInGrid.x,y:x-s.originInGrid.y},S=[...s.originalElements.values()];this.maybeCacheReferenceSnapPoints(c,u);let{snapOffset:C,snapLines:_}=i1(u,ce(S,this.state),this,c,E,p);y+=C.x,g+=C.y,this.setState({snapLines:_})}if(p_(s.originalElements,p,u,this.scene.getElementsMapIncludingDeleted(),this.scene,Dp(c),Ap(c),u.some(v=>tt(v))?!tc(c):tc(c),y,g,s.resize.center.x,s.resize.center.y)){let v=Lp(u,this.scene.getNonDeletedElementsMap(),this.state.zoom),x=new Set;return m.forEach(E=>{Lu(this.scene.getNonDeletedElements(),E,this.state,this.scene.getNonDeletedElementsMap()).forEach(S=>x.add(S))}),this.setState({elementsToHighlight:[...x],suggestedBindings:v}),!0}return!1}),A(this,"getContextMenuItems",s=>{let c=[];return c.push(CM,SM),s==="canvas"?this.state.viewModeEnabled?[...c,_M,_x,lA,kx]:[wM,Rt,CM,SM,TM,Rt,qU,bj,Rt,_M,ij,_x,lA,kx]:(c.push(TM),this.state.viewModeEnabled?[qf,...c]:[Rt,EM,qf,wM,Rt,HY,FY,YY,Rt,RH,Rt,...c,Rt,YP,GP,Rt,VP,MG,rj,lj,cj,XP,Rt,QP,Rt,VU,XU,ZU,KU,Rt,tj,aj,Rt,LH,Rt,_D,t8,Rt,eP,gj,Rt,TA])}),A(this,"handleWheel",st(s=>{if(!(s.target instanceof HTMLCanvasElement||s.target instanceof HTMLTextAreaElement||s.target instanceof HTMLIFrameElement)){s[M.CTRL_OR_CMD]&&s.preventDefault();return}if(s.preventDefault(),sm)return;let{deltaX:c,deltaY:u}=s;if(s.metaKey||s.ctrlKey){let m=Math.sign(u),p=tu*100,f=Math.abs(u),y=u;f>p&&(y=p*m);let g=this.state.zoom.value-y/100;g+=Math.log10(Math.max(1,this.state.zoom.value))*-m*Math.min(1,f/20),this.translateCanvas(b=>({...Wo({viewportX:this.lastViewportPosition.x,viewportY:this.lastViewportPosition.y,nextZoom:Cr(g)},b),shouldCacheIgnoreZoom:!0})),this.resetShouldCacheIgnoreZoomDebounced();return}if(s.shiftKey){this.translateCanvas(({zoom:m,scrollX:p})=>({scrollX:p-(u||c)/m.value}));return}this.translateCanvas(({zoom:m,scrollX:p,scrollY:f})=>({scrollX:p-c/m.value,scrollY:f-u/m.value}))})),A(this,"savePointer",(s,c,u)=>{if(!s||!c)return;let{x:m,y:p}=rt({clientX:s,clientY:c},this.state);isNaN(m)||isNaN(p);let f={x:m,y:p,tool:this.state.activeTool.type==="laser"?"laser":"pointer"};this.props.onPointerUpdate?.({pointer:f,button:u,pointersMap:we.pointers})}),A(this,"resetShouldCacheIgnoreZoomDebounced",su(()=>{this.unmounted||this.setState({shouldCacheIgnoreZoom:!1})},300)),A(this,"updateDOMRect",s=>{if(this.excalidrawContainerRef?.current){let c=this.excalidrawContainerRef.current,{width:u,height:m,left:p,top:f}=c.getBoundingClientRect(),{width:y,height:g,offsetTop:b,offsetLeft:v}=this.state;if(u===y&&m===g&&p===v&&f===b){s&&s();return}this.setState({width:u,height:m,offsetLeft:p,offsetTop:f},()=>{s&&s()})}}),A(this,"refresh",()=>{this.setState({...this.getCanvasOffsets()})});let a=iu(),{excalidrawAPI:n,viewModeEnabled:i=!1,zenModeEnabled:r=!1,gridModeEnabled:l=!1,objectsSnapModeEnabled:o=!1,theme:d=a.theme,name:h=`${w("labels.untitled")}-${Jv()}`}=t;if(this.state={...a,theme:d,isLoading:!0,...this.getCanvasOffsets(),viewModeEnabled:i,zenModeEnabled:r,objectsSnapModeEnabled:o,gridModeEnabled:l??a.gridModeEnabled,name:h,width:window.innerWidth,height:window.innerHeight},this.id=RS(),this.library=new kj(this),this.actionManager=new UH(this.syncActionResult,()=>this.state,()=>this.scene.getElementsIncludingDeleted(),this),this.scene=new bl,this.canvas=document.createElement("canvas"),this.rc=OS.canvas(this.canvas),this.renderer=new hA(this.scene),this.visibleElements=[],this.store=new IT,this.history=new zM,n){let s={updateScene:this.updateScene,updateLibrary:this.library.updateLibrary,addFiles:this.addFiles,resetScene:this.resetScene,getSceneElementsIncludingDeleted:this.getSceneElementsIncludingDeleted,history:{clear:this.resetHistory},scrollToContent:this.scrollToContent,getSceneElements:this.getSceneElements,getAppState:()=>this.state,getFiles:()=>this.files,getName:this.getName,registerAction:c=>{this.actionManager.registerAction(c)},refresh:this.refresh,setToast:this.setToast,id:this.id,setActiveTool:this.setActiveTool,setCursor:this.setCursor,resetCursor:this.resetCursor,updateFrameRendering:this.updateFrameRendering,toggleSidebar:this.toggleSidebar,onChange:c=>this.onChangeEmitter.on(c),onPointerDown:c=>this.onPointerDownEmitter.on(c),onPointerUp:c=>this.onPointerUpEmitter.on(c),onScrollChange:c=>this.onScrollChangeEmitter.on(c),onUserFollow:c=>this.onUserFollowEmitter.on(c)};typeof n=="function"?n(s):console.error("excalidrawAPI should be a function!")}this.excalidrawContainerValue={container:this.excalidrawContainerRef.current,id:this.id},this.fonts=new Qs(this.scene),this.history=new zM,this.actionManager.registerAll(TT),this.actionManager.registerAction(zH(this.history,this.store)),this.actionManager.registerAction(BH(this.history,this.store))}onWindowMessage(t){if(t.origin!=="https://player.vimeo.com"&&t.origin!=="https://www.youtube.com")return;let a=null;try{a=JSON.parse(t.data)}catch{}if(a)switch(t.origin){case"https://player.vimeo.com":if(a.method==="paused"){let n=null,i=document.body.querySelectorAll("iframe.excalidraw__embeddable");if(!i)break;for(let r of i)r.contentWindow===t.source&&(n=r.contentWindow);n?.postMessage(JSON.stringify({method:a.value?"play":"pause",value:!0}),"*")}break;case"https://www.youtube.com":if(a.event==="infoDelivery"&&a.info&&a.id&&typeof a.info.playerState=="number"){let n=a.id,i=a.info.playerState;Object.values(Qd).includes(i)&&vx.set(n,i)}break}}cacheEmbeddableRef(t,a){a&&this.iFrameRefs.set(t.id,a)}getHTMLIFrameElement(t){return this.iFrameRefs.get(t.id)}handleEmbeddableCenterClick(t){if(this.state.activeEmbeddable?.element===t&&this.state.activeEmbeddable?.state==="active"||(setTimeout(()=>{this.setState({activeEmbeddable:{element:t,state:"active"},selectedElementIds:{[t.id]:!0},newElement:null,selectionElement:null})},100),Do(t)))return;let a=this.getHTMLIFrameElement(t);if(a?.contentWindow){if(a.src.includes("youtube")){let n=vx.get(t.id);switch(n||(vx.set(t.id,Qd.UNSTARTED),a.contentWindow.postMessage(JSON.stringify({event:"listening",id:t.id}),"*")),n){case Qd.PLAYING:case Qd.BUFFERING:a.contentWindow?.postMessage(JSON.stringify({event:"command",func:"pauseVideo",args:""}),"*");break;default:a.contentWindow?.postMessage(JSON.stringify({event:"command",func:"playVideo",args:""}),"*")}}a.src.includes("player.vimeo.com")&&a.contentWindow.postMessage(JSON.stringify({method:"paused"}),"*")}}isIframeLikeElementCenter(t,a,n,i){return t&&!a.altKey&&!a.shiftKey&&!a.metaKey&&!a.ctrlKey&&(this.state.activeEmbeddable?.element!==t||this.state.activeEmbeddable?.state==="hover"||!this.state.activeEmbeddable)&&n>=t.x+t.width/3&&n<=t.x+2*t.width/3&&i>=t.y+t.height/3&&i<=t.y+2*t.height/3}renderEmbeddables(){let t=this.state.zoom.value,a=this.state.width,n=this.state.height,i=this.scene.getNonDeletedElements().filter(r=>on(r)&&this.embedsValidationStatus.get(r.id)===!0||Do(r));return(0,de.jsx)(de.Fragment,{children:i.map(r=>{let{x:l,y:o}=Oi({sceneX:r.x,sceneY:r.y},this.state),d=Xp(r,a,n,this.state,this.scene.getNonDeletedElementsMap()),h=this.initializedEmbeds.has(r.id);if(d&&!h&&this.initializedEmbeds.add(r.id),!(d||h))return null;let s;if(Do(r)){s=null;let m=(r.customData?.generationData??this.magicGenerations.get(r.id))||{status:"error",message:"No generation data",code:"ERR_NO_GENERATION_DATA"};if(m.status==="done"){let p=m.html;s={intrinsicSize:{w:r.width,h:r.height},type:"document",srcdoc:()=>p}}else if(m.status==="pending")s={intrinsicSize:{w:r.width,h:r.height},type:"document",srcdoc:()=>p1(`
|
|
63
|
+
<style>
|
|
64
|
+
html, body {
|
|
65
|
+
width: 100%;
|
|
66
|
+
height: 100%;
|
|
67
|
+
color: ${this.state.theme===xe.DARK?"white":"black"};
|
|
68
|
+
}
|
|
69
|
+
body {
|
|
70
|
+
display: flex;
|
|
71
|
+
align-items: center;
|
|
72
|
+
justify-content: center;
|
|
73
|
+
flex-direction: column;
|
|
74
|
+
gap: 1rem;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
.Spinner {
|
|
78
|
+
display: flex;
|
|
79
|
+
align-items: center;
|
|
80
|
+
justify-content: center;
|
|
81
|
+
margin-left: auto;
|
|
82
|
+
margin-right: auto;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
.Spinner svg {
|
|
86
|
+
animation: rotate 1.6s linear infinite;
|
|
87
|
+
transform-origin: center center;
|
|
88
|
+
width: 40px;
|
|
89
|
+
height: 40px;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
.Spinner circle {
|
|
93
|
+
stroke: currentColor;
|
|
94
|
+
animation: dash 1.6s linear 0s infinite;
|
|
95
|
+
stroke-linecap: round;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
@keyframes rotate {
|
|
99
|
+
100% {
|
|
100
|
+
transform: rotate(360deg);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
@keyframes dash {
|
|
105
|
+
0% {
|
|
106
|
+
stroke-dasharray: 1, 300;
|
|
107
|
+
stroke-dashoffset: 0;
|
|
108
|
+
}
|
|
109
|
+
50% {
|
|
110
|
+
stroke-dasharray: 150, 300;
|
|
111
|
+
stroke-dashoffset: -200;
|
|
112
|
+
}
|
|
113
|
+
100% {
|
|
114
|
+
stroke-dasharray: 1, 300;
|
|
115
|
+
stroke-dashoffset: -280;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
</style>
|
|
119
|
+
<div class="Spinner">
|
|
120
|
+
<svg
|
|
121
|
+
viewBox="0 0 100 100"
|
|
122
|
+
>
|
|
123
|
+
<circle
|
|
124
|
+
cx="50"
|
|
125
|
+
cy="50"
|
|
126
|
+
r="46"
|
|
127
|
+
stroke-width="8"
|
|
128
|
+
fill="none"
|
|
129
|
+
stroke-miter-limit="10"
|
|
130
|
+
/>
|
|
131
|
+
</svg>
|
|
132
|
+
</div>
|
|
133
|
+
<div>Generating...</div>
|
|
134
|
+
`)};else{let p;m.code==="ERR_GENERATION_INTERRUPTED"?p="Generation was interrupted...":p=m.message||"Generation failed",s={intrinsicSize:{w:r.width,h:r.height},type:"document",srcdoc:()=>p1(`
|
|
135
|
+
<style>
|
|
136
|
+
html, body {
|
|
137
|
+
height: 100%;
|
|
138
|
+
}
|
|
139
|
+
body {
|
|
140
|
+
display: flex;
|
|
141
|
+
flex-direction: column;
|
|
142
|
+
align-items: center;
|
|
143
|
+
justify-content: center;
|
|
144
|
+
color: ${Ys.red[3]};
|
|
145
|
+
}
|
|
146
|
+
h1, h3 {
|
|
147
|
+
margin-top: 0;
|
|
148
|
+
margin-bottom: 0.5rem;
|
|
149
|
+
}
|
|
150
|
+
</style>
|
|
151
|
+
<h1>Error!</h1>
|
|
152
|
+
<h3>${p}</h3>
|
|
153
|
+
`)}}}else s=rc(CT(r.link||""));let c=this.state.activeEmbeddable?.element===r&&this.state.activeEmbeddable?.state==="active",u=this.state.activeEmbeddable?.element===r&&this.state.activeEmbeddable?.state==="hover";return(0,de.jsx)("div",{className:U("excalidraw__embeddable-container",{"is-hovered":u}),style:{transform:d?`translate(${l-this.state.offsetLeft}px, ${o-this.state.offsetTop}px) scale(${t})`:"none",display:d?"block":"none",opacity:zC(r,Vp(r,this.scene.getNonDeletedElementsMap()),this.elementsPendingErasure,null,this.state.openDialog?.name==="elementLinkSelector"?h3:1),"--embeddable-radius":`${G0(Math.min(r.width,r.height),r)}px`},children:(0,de.jsxs)("div",{className:"excalidraw__embeddable-container__inner",style:{width:d?`${r.width}px`:0,height:d?`${r.height}px`:0,transform:d?`rotate(${r.angle}rad)`:"none",pointerEvents:c?Co.enabled:Co.disabled},children:[u&&(0,de.jsx)("div",{className:"excalidraw__embeddable-hint",children:w("buttons.embeddableInteractionButton")}),(0,de.jsx)("div",{className:"excalidraw__embeddable__outer",style:{padding:`${r.strokeWidth}px`},children:(on(r)?this.props.renderEmbeddable?.(r,this.state):null)??(0,de.jsx)("iframe",{ref:m=>this.cacheEmbeddableRef(r,m),className:"excalidraw__embeddable",srcDoc:s?.type==="document"?s.srcdoc(this.state.theme):void 0,src:s?.type!=="document"?s?.link??"":void 0,scrolling:"no",referrerPolicy:"no-referrer-when-downgrade",title:"Excalidraw Embedded Content",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowFullScreen:!0,sandbox:`${s?.sandbox?.allowSameOrigin?"allow-same-origin":""} allow-scripts allow-forms allow-popups allow-popups-to-escape-sandbox allow-presentation allow-downloads`})})]})},r.id)})})}toggleOverscrollBehavior(t){document.documentElement.style.overscrollBehaviorX=t.type==="pointerenter"?"none":"auto"}render(){let t=this.scene.getSelectedElements(this.state),{renderTopRightUI:a,renderCustomStats:n}=this.props,i=this.scene.getSceneNonce(),{elementsMap:r,visibleElements:l}=this.renderer.getRenderableElements({sceneNonce:i,zoom:this.state.zoom,offsetLeft:this.state.offsetLeft,offsetTop:this.state.offsetTop,scrollX:this.state.scrollX,scrollY:this.state.scrollY,height:this.state.height,width:this.state.width,editingTextElement:this.state.editingTextElement,newElementId:this.state.newElement?.id,pendingImageElementId:this.state.pendingImageElementId});this.visibleElements=l;let o=this.scene.getNonDeletedElementsMap(),d="setPointerCapture"in HTMLElement.prototype?!1:this.state.selectionElement||this.state.newElement||this.state.selectedElementsAreBeingDragged||this.state.resizingElement||this.state.activeTool.type==="laser"&&this.state.cursorButton==="down",h=t[0];return(0,de.jsx)("div",{className:U("excalidraw excalidraw-container",{"excalidraw--view-mode":this.state.viewModeEnabled||this.state.openDialog?.name==="elementLinkSelector","excalidraw--mobile":this.device.editor.isMobile}),style:{"--ui-pointerEvents":d?Co.disabled:Co.enabled,"--right-sidebar-width":"302px"},ref:this.excalidrawContainerRef,onDrop:this.handleAppOnDrop,tabIndex:0,onKeyDown:this.props.handleKeyboardGlobally?void 0:this.onKeyDown,onPointerEnter:this.toggleOverscrollBehavior,onPointerLeave:this.toggleOverscrollBehavior,children:(0,de.jsx)(ZI.Provider,{value:this,children:(0,de.jsx)(KI.Provider,{value:this.props,children:(0,de.jsx)(xw.Provider,{value:this.excalidrawContainerValue,children:(0,de.jsx)(yw.Provider,{value:this.device,children:(0,de.jsx)(Sw.Provider,{value:this.setAppState,children:(0,de.jsx)(Ew.Provider,{value:this.state,children:(0,de.jsxs)(ww.Provider,{value:this.scene.getNonDeletedElements(),children:[(0,de.jsxs)(Cw.Provider,{value:this.actionManager,children:[(0,de.jsx)(UY,{canvas:this.canvas,appState:this.state,files:this.files,setAppState:this.setAppState,actionManager:this.actionManager,elements:this.scene.getNonDeletedElements(),onLockToggle:this.toggleLock,onPenModeToggle:this.togglePenMode,onHandToolToggle:this.onHandToolToggle,langCode:vm().code,renderTopRightUI:a,renderCustomStats:n,showExitZenModeBtn:typeof this.props?.zenModeEnabled>"u"&&this.state.zenModeEnabled,UIOptions:this.props.UIOptions,onExportImage:this.onExportImage,renderWelcomeScreen:!this.state.isLoading&&this.state.showWelcomeScreen&&this.state.activeTool.type==="selection"&&!this.state.zenModeEnabled&&!this.scene.getElementsIncludingDeleted().length,app:this,isCollaborating:this.props.isCollaborating,generateLinkForSelection:this.props.generateLinkForSelection,children:this.props.children}),(0,de.jsx)("div",{className:"excalidraw-textEditorContainer"}),(0,de.jsx)("div",{className:"excalidraw-contextMenuContainer"}),(0,de.jsx)("div",{className:"excalidraw-eye-dropper-container"}),(0,de.jsx)(vG,{trails:[this.laserTrails,this.eraserTrail]}),t.length===1&&this.state.openDialog?.name!=="elementLinkSelector"&&this.state.showHyperlinkPopup&&(0,de.jsx)(mj,{element:h,elementsMap:o,setAppState:this.setAppState,onLinkOpen:this.props.onLinkOpen,setToast:this.setToast,updateEmbedValidationStatus:this.updateEmbedValidationStatus},h.id),this.props.aiEnabled!==!1&&t.length===1&&mp(h)&&(0,de.jsx)(pA,{element:h,elementsMap:r,children:(0,de.jsx)(px,{title:w("labels.convertToCode"),icon:B0,checked:!1,onChange:()=>this.onMagicFrameGenerate(h,"button")})}),t.length===1&&Do(h)&&h.customData?.generationData?.status==="done"&&(0,de.jsxs)(pA,{element:h,elementsMap:r,children:[(0,de.jsx)(px,{title:w("labels.copySource"),icon:Cp,checked:!1,onChange:()=>this.onIframeSrcCopy(h)}),(0,de.jsx)(px,{title:"Enter fullscreen",icon:tC,checked:!1,onChange:()=>{let s=this.getHTMLIFrameElement(h);if(s)try{s.requestFullscreen(),this.setState({activeEmbeddable:{element:h,state:"active"},selectedElementIds:{[h.id]:!0},newElement:null,selectionElement:null})}catch(c){console.warn(c),this.setState({errorMessage:"Couldn't enter fullscreen"})}}})]}),this.state.toast!==null&&(0,de.jsx)(jY,{message:this.state.toast.message,onClose:()=>this.setToast(null),duration:this.state.toast.duration,closable:this.state.toast.closable}),this.state.contextMenu&&(0,de.jsx)(jH,{items:this.state.contextMenu.items,top:this.state.contextMenu.top,left:this.state.contextMenu.left,actionManager:this.actionManager,onClose:s=>{this.setState({contextMenu:null},()=>{this.focusContainer(),s?.()})}}),(0,de.jsx)(bG,{canvas:this.canvas,rc:this.rc,elementsMap:r,allElementsMap:o,visibleElements:l,sceneNonce:i,selectionNonce:this.state.selectionElement?.versionNonce,scale:window.devicePixelRatio,appState:this.state,renderConfig:{imageCache:this.imageCache,isExporting:!1,renderGrid:Tu(this),canvasBackgroundColor:this.state.viewBackgroundColor,embedsValidationStatus:this.embedsValidationStatus,elementsPendingErasure:this.elementsPendingErasure,pendingFlowchartNodes:this.flowChartCreator.pendingNodes}}),this.state.newElement&&(0,de.jsx)(LG,{appState:this.state,scale:window.devicePixelRatio,rc:this.rc,elementsMap:r,allElementsMap:o,renderConfig:{imageCache:this.imageCache,isExporting:!1,renderGrid:!1,canvasBackgroundColor:this.state.viewBackgroundColor,embedsValidationStatus:this.embedsValidationStatus,elementsPendingErasure:this.elementsPendingErasure,pendingFlowchartNodes:null}}),(0,de.jsx)(pG,{containerRef:this.excalidrawContainerRef,canvas:this.interactiveCanvas,elementsMap:r,visibleElements:l,allElementsMap:o,selectedElements:t,sceneNonce:i,selectionNonce:this.state.selectionElement?.versionNonce,scale:window.devicePixelRatio,appState:this.state,device:this.device,renderInteractiveSceneCallback:this.renderInteractiveSceneCallback,handleCanvasRef:this.handleInteractiveCanvasRef,onContextMenu:this.handleCanvasContextMenu,onPointerMove:this.handleCanvasPointerMove,onPointerUp:this.handleCanvasPointerUp,onPointerCancel:this.removePointer,onTouchMove:this.handleTouchMove,onPointerDown:this.handleCanvasPointerDown,onDoubleClick:this.handleCanvasDoubleClick}),this.state.userToFollow&&(0,de.jsx)(SG,{width:this.state.width,height:this.state.height,userToFollow:this.state.userToFollow,onDisconnect:this.maybeUnfollowRemoteUser}),this.renderFrameNames()]}),this.renderEmbeddables()]})})})})})})})})}setPlugins(t){Object.assign(this.plugins,t)}async onMagicFrameGenerate(t,a){let n=this.plugins.diagramToCode?.generate;if(!n){this.setState({errorMessage:"No diagram to code plugin found"});return}let i=O1(this.scene.getNonDeletedElements(),t).filter(l=>!mp(l));if(!i.length){a==="button"?(this.setState({errorMessage:"Cannot generate from an empty frame"}),Oe("ai","generate (no-children)","d2c")):this.setActiveTool({type:"magicframe"});return}let r=this.insertIframeElement({sceneX:t.x+t.width+30,sceneY:t.y,width:t.width,height:t.height});if(r){this.updateMagicGeneration({frameElement:r,data:{status:"pending"}}),this.setState({selectedElementIds:{[r.id]:!0}}),Oe("ai","generate (start)","d2c");try{let{html:l}=await n({frame:t,children:i});if(Oe("ai","generate (success)","d2c"),!l.trim()){this.updateMagicGeneration({frameElement:r,data:{status:"error",code:"ERR_OAI",message:"Nothing genereated :("}});return}let o=l.includes("<!DOCTYPE html>")&&l.includes("</html>")?l.slice(l.indexOf("<!DOCTYPE html>"),l.indexOf("</html>")+7):l;this.updateMagicGeneration({frameElement:r,data:{status:"done",html:o}})}catch(l){Oe("ai","generate (failed)","d2c"),this.updateMagicGeneration({frameElement:r,data:{status:"error",code:"ERR_OAI",message:l.message||"Unknown error during generation"}})}}}onIframeSrcCopy(t){t.customData?.generationData?.status==="done"&&(Nu(t.customData.generationData.html),this.setToast({message:"copied to clipboard",closable:!1,duration:1500}))}clearImageShapeCache(t){let a=t??this.files;this.scene.getNonDeletedElements().forEach(n=>{Ao(n)&&a[n.fileId]&&(this.imageCache.delete(n.fileId),No.delete(n))})}async componentDidMount(){if(this.unmounted=!1,this.excalidrawContainerValue.container=this.excalidrawContainerRef.current,Ft.MODE===Wd.TEST||Ft.DEV){let t=this.setState.bind(this);Object.defineProperties(window.h,{state:{configurable:!0,get:()=>this.state},setState:{configurable:!0,value:(...a)=>this.setState(...a)},app:{configurable:!0,value:this},history:{configurable:!0,value:this.history},store:{configurable:!0,value:this.store},fonts:{configurable:!0,value:this.fonts}})}this.store.onStoreIncrementEmitter.on(t=>{this.history.record(t.elementsChange,t.appStateChange)}),this.scene.onUpdate(this.triggerRender),this.addEventListeners(),this.props.autoFocus&&this.excalidrawContainerRef.current&&this.focusContainer(),op()||(this.refreshViewportBreakpoints(),this.refreshEditorBreakpoints()),Kh&&this.excalidrawContainerRef.current&&(this.resizeObserver=new ResizeObserver(()=>{this.refreshEditorBreakpoints(),this.updateDOMRect()}),this.resizeObserver?.observe(this.excalidrawContainerRef.current)),new URLSearchParams(window.location.search.slice(1)).has("web-share-target")?this.restoreFileFromShare():this.updateDOMRect(this.initializeScene),GS()&&!P3()&&this.setState({errorMessage:(0,de.jsx)($Y,{})})}componentWillUnmount(){window.launchQueue?.setConsumer(()=>{}),this.renderer.destroy(),this.scene.destroy(),this.scene=new bl,this.fonts=new Qs(this.scene),this.renderer=new hA(this.scene),this.files={},this.imageCache.clear(),this.resizeObserver?.disconnect(),this.unmounted=!0,this.removeEventListeners(),this.library.destroy(),this.laserTrails.stop(),this.eraserTrail.stop(),this.onChangeEmitter.clear(),this.store.onStoreIncrementEmitter.clear(),No.destroy(),ml.destroy(),clearTimeout(Al),bt.clearCache(),da.clearCache(),Al=0,document.documentElement.style.overscrollBehaviorX=""}removeEventListeners(){this.onRemoveEventListenersEmitter.trigger()}addEventListeners(){this.removeEventListeners(),this.props.handleKeyboardGlobally&&this.onRemoveEventListenersEmitter.once(Ze(document,"keydown",this.onKeyDown,!1)),this.onRemoveEventListenersEmitter.once(Ze(this.excalidrawContainerRef.current,"wheel",this.handleWheel,{passive:!1}),Ze(window,"message",this.onWindowMessage,!1),Ze(document,"pointerup",this.removePointer,{passive:!1}),Ze(document,"copy",this.onCopy,{passive:!1}),Ze(document,"keyup",this.onKeyUp,{passive:!0}),Ze(document,"pointermove",this.updateCurrentCursorPosition,{passive:!1}),Ze(document.fonts,"loadingdone",t=>{let a=t.fontfaces;this.fonts.onLoaded(a)},{passive:!1}),Ze(document,"gesturestart",this.onGestureStart,!1),Ze(document,"gesturechange",this.onGestureChange,!1),Ze(document,"gestureend",this.onGestureEnd,!1),Ze(window,"focus",()=>{this.maybeCleanupAfterMissingPointerUp(null),this.triggerRender(!0)},{passive:!1})),!this.state.viewModeEnabled&&(this.onRemoveEventListenersEmitter.once(Ze(document,"fullscreenchange",this.onFullscreenChange,{passive:!1}),Ze(document,"paste",this.pasteFromClipboard,{passive:!1}),Ze(document,"cut",this.onCut,{passive:!1}),Ze(window,"resize",this.onResize,!1),Ze(window,"unload",this.onUnload,!1),Ze(window,"blur",this.onBlur,!1),Ze(this.excalidrawContainerRef.current,"wheel",this.handleWheel,{passive:!1}),Ze(this.excalidrawContainerRef.current,"dragover",this.disableEvent,!1),Ze(this.excalidrawContainerRef.current,"drop",this.disableEvent,!1)),this.props.detectScroll&&this.onRemoveEventListenersEmitter.once(Ze(w3(this.excalidrawContainerRef.current),"scroll",this.onScroll,{passive:!1})))}componentDidUpdate(t,a){this.updateEmbeddables();let n=this.scene.getElementsIncludingDeleted(),i=this.scene.getElementsMapIncludingDeleted(),r=this.scene.getNonDeletedElementsMap();!this.state.showWelcomeScreen&&!n.length&&this.setState({showWelcomeScreen:!0}),t.UIOptions.dockedSidebarBreakpoint!==this.props.UIOptions.dockedSidebarBreakpoint&&this.refreshEditorBreakpoints(),a.userToFollow&&!this.state.collaborators.has(a.userToFollow.socketId)&&this.maybeUnfollowRemoteUser(),(a.zoom.value!==this.state.zoom.value||a.scrollX!==this.state.scrollX||a.scrollY!==this.state.scrollY)&&(this.props?.onScrollChange?.(this.state.scrollX,this.state.scrollY,this.state.zoom),this.onScrollChangeEmitter.trigger(this.state.scrollX,this.state.scrollY,this.state.zoom)),a.userToFollow!==this.state.userToFollow&&(a.userToFollow&&this.onUserFollowEmitter.trigger({userToFollow:a.userToFollow,action:"UNFOLLOW"}),this.state.userToFollow&&this.onUserFollowEmitter.trigger({userToFollow:this.state.userToFollow,action:"FOLLOW"})),Object.keys(this.state.selectedElementIds).length&&Ri(this.state)&&this.setState({activeTool:Nt(this.state,{type:"selection"})}),this.state.activeTool.type==="eraser"&&a.theme!==this.state.theme&&_T(this.interactiveCanvas,this.state.theme),a.activeTool.type==="selection"&&this.state.activeTool.type!=="selection"&&this.state.showHyperlinkPopup&&this.setState({showHyperlinkPopup:!1}),t.langCode!==this.props.langCode&&this.updateLanguage(),Ri(a)&&!Ri(this.state)&&this.eraserTrail.endPath(),t.viewModeEnabled!==this.props.viewModeEnabled&&this.setState({viewModeEnabled:!!this.props.viewModeEnabled}),a.viewModeEnabled!==this.state.viewModeEnabled&&(this.addEventListeners(),this.deselectElements()),(a.openDialog?.name==="elementLinkSelector"||this.state.openDialog?.name==="elementLinkSelector")&&a.openDialog?.name!==this.state.openDialog?.name&&(this.deselectElements(),this.setState({hoveredElementIds:{}})),t.zenModeEnabled!==this.props.zenModeEnabled&&this.setState({zenModeEnabled:!!this.props.zenModeEnabled}),t.theme!==this.props.theme&&this.props.theme&&this.setState({theme:this.props.theme}),this.excalidrawContainerRef.current?.classList.toggle("theme--dark",this.state.theme===xe.DARK),this.state.editingLinearElement&&!this.state.selectedElementIds[this.state.editingLinearElement.elementId]&&setTimeout(()=>{this.state.editingLinearElement&&this.actionManager.executeAction(pi)}),this.state.editingTextElement?.isDeleted&&this.setState({editingTextElement:null}),this.state.selectedLinearElement&&!this.state.selectedElementIds[this.state.selectedLinearElement.elementId]&&this.setState({selectedLinearElement:null});let{multiElement:l}=a;a.activeTool!==this.state.activeTool&&l!=null&&ac(this.state)&&ol(l,!1)&&Rp(l,this.state,Mo(ne.getPointAtIndexGlobalCoordinates(l,-1,r)),this.scene.getNonDeletedElementsMap(),this.scene.getNonDeletedElements()),this.store.commit(i,this.state),this.state.isLoading||(this.props.onChange?.(n,this.state,this.files),this.onChangeEmitter.trigger(n,this.state,this.files))}static resetTapTwice(){om=!1}async addElementsFromMixedContentPaste(t,{isPlainPaste:a,sceneX:n,sceneY:i}){if(!a&&t.some(r=>r.type==="imageUrl")&&this.isToolSupported("image")){let r=t.filter(c=>c.type==="imageUrl").map(c=>c.value),l=await Promise.all(r.map(async c=>{try{return{file:await I_(c)}}catch(u){let m=u.message;return u.cause==="FETCH_ERROR"?m=w("errors.failedToFetchImage"):u.cause==="UNSUPPORTED"&&(m=w("errors.unsupportedFileType")),{errorMessage:m}}})),o=i,d=!1,h={};for(let c of l)if(c.file){let u=this.createImageElement({sceneX:n,sceneY:o}),m=await this.insertImageElement(u,c.file);m&&(d||(d=!0,o-=m.height/2),$(m,{y:o},!1),o=u.y+u.height+25,h[u.id]=!0)}this.setState({selectedElementIds:Ee(h,this.state)});let s=l.find(c=>!!c.errorMessage);s&&s.errorMessage&&this.setState({errorMessage:s.errorMessage})}else{let r=t.filter(l=>l.type==="text");r.length&&this.addTextFromPaste(r.map(l=>l.value).join(`
|
|
154
|
+
|
|
155
|
+
`),a)}}addTextFromPaste(t,a=!1){let{x:n,y:i}=rt({clientX:this.lastViewportPosition.x,clientY:this.lastViewportPosition.y},this.state),r={x:n,y:i,strokeColor:this.state.currentItemStrokeColor,backgroundColor:this.state.currentItemBackgroundColor,fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roundness:null,roughness:this.state.currentItemRoughness,opacity:this.state.currentItemOpacity,text:t,fontSize:this.state.currentItemFontSize,fontFamily:this.state.currentItemFontFamily,textAlign:Bv,verticalAlign:Uv,locked:!1},l=An({fontSize:r.fontSize,fontFamily:r.fontFamily}),o=Ws(r.fontFamily),[d,,h]=$C(this.state),s=Math.max(Math.min((h-d)*.5,800),200),c=10,u=i,m=a?[t]:t.split(`
|
|
156
|
+
`),p=m.reduce((f,y,g)=>{let b=pu(y).trim();if(b.length){let v=this.getTopLayerFrameAtSceneCoords({x:n,y:u}),x=Sr(b,l,o),E=x.width>s,S=E?l0(b,l,s):b;x=E?Sr(S,l,o):x;let C=n-x.width/2,_=u-x.height/2,D=fl({...r,x:C,y:_,text:S,originalText:b,lineHeight:o,autoResize:!E,frameId:v?v.id:null});f.push(D),u+=D.height+c}else m[g-1]?.trim()&&(u+=j3(r.fontSize,o)+c);return f},[]);p.length!==0&&(this.scene.insertElements(p),this.setState({selectedElementIds:Ee(Object.fromEntries(p.map(f=>[f.id,!0])),this.state)}),!a&&p.length>1&&gA===!1&&!this.device.editor.isMobile&&(this.setToast({message:w("toast.pasteAsSingleElement",{shortcut:B("CtrlOrCmd+Shift+V")}),duration:5e3}),gA=!0),this.store.shouldCaptureIncrement())}handleTextWysiwyg(t,{isExistingElement:a=!1}){let n=this.scene.getElementsMapIncludingDeleted(),i=(r,l)=>{this.scene.replaceAllElements([...this.scene.getElementsIncludingDeleted().map(o=>o.id===t.id&&ae(o)?se(o,{originalText:r,isDeleted:l??o.isDeleted,...MT(o,Tr(o,n),n,r)}):o)])};kG({id:t.id,canvas:this.canvas,getViewportCoords:(r,l)=>{let{x:o,y:d}=Oi({sceneX:r,sceneY:l},this.state);return[o-this.state.offsetLeft,d-this.state.offsetTop]},onChange:st(r=>{i(r,!1),$1(t)&&dl(t,this.scene.getNonDeletedElementsMap())}),onSubmit:st(({viaKeyboard:r,nextOriginalText:l})=>{let o=!l.trim();if(i(l,o),!o&&r){let d=t.containerId?t.containerId:t.id;(0,Dl.flushSync)(()=>{this.setState(h=>({selectedElementIds:Ee({...h.selectedElementIds,[d]:!0},h)}))})}o&&e1(this.scene.getNonDeletedElements(),[t]),(!o||a)&&this.store.shouldCaptureIncrement(),(0,Dl.flushSync)(()=>{this.setState({newElement:null,editingTextElement:null})}),this.state.activeTool.locked&&Pi(this.interactiveCanvas,this.state),this.focusContainer()}),element:t,excalidrawContainer:this.excalidrawContainerRef.current,app:this,autoSelect:!this.device.isTouchScreen}),this.deselectElements(),i(t.originalText,!1)}deselectElements(){this.setState({selectedElementIds:Ee({},this.state),selectedGroupIds:{},editingGroupId:null,activeEmbeddable:null})}getTextElementAtPosition(t,a){let n=this.getElementAtPosition(t,a,{includeBoundTextElement:!0});return n&&ae(n)&&!n.isDeleted?n:null}getElementAtPosition(t,a,n){let i=this.getElementsAtPosition(t,a,n?.includeBoundTextElement,n?.includeLockedElements);if(i.length>1){if(n?.preferSelected){for(let l=i.length-1;l>-1;l--)if(this.state.selectedElementIds[i[l].id])return i[l]}let r=i[i.length-1];return Js({x:t,y:a,element:r,shape:Ro(r,this.scene.getNonDeletedElementsMap()),threshold:this.getElementHitThreshold()/2,frameNameBound:Ce(r)?this.frameNameBoundsCache.get(r):null})?r:i[i.length-2]}return i.length===1?i[0]:null}getElementsAtPosition(t,a,n=!1,i=!1){let r=[],l=this.scene.getNonDeletedElementsMap();return(n&&i?this.scene.getNonDeletedElements():this.scene.getNonDeletedElements().filter(o=>(i||!o.locked)&&(n||!(ae(o)&&o.containerId)))).filter(o=>this.hitElement(t,a,o)).filter(o=>{let d=Vp(o,l);return d&&this.state.frameRendering.enabled&&this.state.frameRendering.clip?I1({x:t,y:a},d,l):!0}).filter(o=>Do(o)?(r.push(o),!1):!0).concat(r)}getElementHitThreshold(){return KS/this.state.zoom.value}hitElement(t,a,n,i=!0){if(i&&this.state.selectedElementIds[n.id]&&j1([n],this.state)){let r=_C(n,this.scene.getNonDeletedElementsMap(),tt(n)?0:this.getElementHitThreshold());if(kC(Z(t,a),r))return!0}return DC(t,a,NC(n,this.scene.getNonDeletedElementsMap()))?!0:Js({x:t,y:a,element:n,shape:Ro(n,this.scene.getNonDeletedElementsMap()),threshold:this.getElementHitThreshold(),frameNameBound:Ce(n)?this.frameNameBoundsCache.get(n):null})}getTextBindableContainerAtPosition(t,a){let n=this.scene.getNonDeletedElements(),i=this.scene.getSelectedElements(this.state);if(i.length===1)return Io(i[0],!1)?i[0]:null;let r=null;for(let l=n.length-1;l>=0;--l){if(n[l].isDeleted)continue;let[o,d,h,s]=In(n[l],this.scene.getNonDeletedElementsMap());if(Gt(n[l])&&Js({x:t,y:a,element:n[l],shape:Ro(n[l],this.scene.getNonDeletedElementsMap()),threshold:this.getElementHitThreshold()})){r=n[l];break}else if(o<t&&t<h&&d<a&&a<s){r=n[l];break}}return Io(r,!1)?r:null}handleHoverSelectedLinearElement(t,a,n){let i=this.scene.getNonDeletedElementsMap(),r=ne.getElement(t.elementId,i);if(r)if(this.state.selectedLinearElement){let l=-1,o=null;Js({x:a,y:n,element:r,shape:Ro(r,this.scene.getNonDeletedElementsMap())})?(l=ne.getPointIndexUnderCursor(r,i,this.state.zoom,a,n),o=ne.getSegmentMidpointHitCoords(t,{x:a,y:n},this.state,this.scene.getNonDeletedElementsMap()),(me(r)?l===0||l===r.points.length-1:l>=0)||o?ke(this.interactiveCanvas,De.POINTER):this.hitElement(a,n,r)&&ke(this.interactiveCanvas,De.MOVE)):this.hitElement(a,n,r)&&(!me(r)||!(r.startBinding||r.endBinding))&&ke(this.interactiveCanvas,De.MOVE),this.state.selectedLinearElement.hoverPointIndex!==l&&this.setState({selectedLinearElement:{...this.state.selectedLinearElement,hoverPointIndex:l}}),ne.arePointsEqual(this.state.selectedLinearElement.segmentMidPointHoveredCoords,o)||this.setState({selectedLinearElement:{...this.state.selectedLinearElement,segmentMidPointHoveredCoords:o}})}else ke(this.interactiveCanvas,De.AUTO)}updateGestureOnPointerDown(t){we.pointers.set(t.pointerId,{x:t.clientX,y:t.clientY}),we.pointers.size===2&&(we.lastCenter=BM(we.pointers),we.initialScale=this.state.zoom.value,we.initialDistance=UM(Array.from(we.pointers.values())))}initialPointerDownState(t){let a=rt(t,this.state),n=this.scene.getSelectedElements(this.state),[i,r,l,o]=gt(n),d=n.findIndex(me)===0;return{origin:a,withCmdOrCtrl:t[M.CTRL_OR_CMD],originInGrid:Mo($t(a.x,a.y,t[M.CTRL_OR_CMD]||d?null:this.getEffectiveGridSize())),scrollbars:FM(bx,t.clientX-this.state.offsetLeft,t.clientY-this.state.offsetTop),lastCoords:{...a},originalElements:this.scene.getNonDeletedElements().reduce((h,s)=>(h.set(s.id,Mu(s)),h),new Map),resize:{handleType:!1,isResizing:!1,offset:{x:0,y:0},arrowDirection:"origin",center:{x:(l+i)/2,y:(o+r)/2}},hit:{element:null,allHitElements:[],wasAddedToSelection:!1,hasBeenDuplicated:!1,hasHitCommonBoundingBoxOfSelectedElements:this.isHittingCommonBoundingBoxOfSelectedElements(a,n)},drag:{hasOccurred:!1,offset:null},eventListeners:{onMove:null,onUp:null,onKeyUp:null,onKeyDown:null},boxSelection:{hasOccurred:!1}}}handleDraggingScrollBar(t,a){if(!(a.scrollbars.isOverEither&&!this.state.multiElement))return!1;gx=!0,a.lastCoords.x=t.clientX,a.lastCoords.y=t.clientY;let n=ux(r=>{r.target instanceof HTMLElement&&this.handlePointerMoveOverScrollbars(r,a)}),i=st(()=>{dm=null,gx=!1,Pi(this.interactiveCanvas,this.state),this.setState({cursorButton:"up"}),this.savePointer(t.clientX,t.clientY,"up"),window.removeEventListener("pointermove",n),window.removeEventListener("pointerup",i),n.flush()});return dm=i,window.addEventListener("pointermove",n),window.addEventListener("pointerup",i),!0}isASelectedElement(t){return t!=null&&this.state.selectedElementIds[t.id]}isHittingCommonBoundingBoxOfSelectedElements(t,a){if(a.length<2)return!1;let n=this.getElementHitThreshold(),[i,r,l,o]=gt(a);return t.x>i-n&&t.x<l+n&&t.y>r-n&&t.y<o+n}getCurrentItemRoundness(t){return this.state.currentItemRoundness==="round"?{type:pp(t)?ni.ADAPTIVE_RADIUS:ni.PROPORTIONAL_RADIUS}:null}maybeCacheReferenceSnapPoints(t,a,n=!1){n1({event:t,app:this,selectedElements:a})&&(n||!ml.getReferenceSnapPoints())&&ml.setReferenceSnapPoints(sT(this.scene.getNonDeletedElements(),a,this.state,this.scene.getNonDeletedElementsMap()))}maybeCacheVisibleGaps(t,a,n=!1){n1({event:t,app:this,selectedElements:a})&&(n||!ml.getVisibleGaps())&&ml.setVisibleGaps(oT(this.scene.getNonDeletedElements(),a,this.state,this.scene.getNonDeletedElementsMap()))}onKeyDownFromPointerDownHandler(t){return st(a=>{this.maybeHandleResize(t,a)||this.maybeDragNewGenericElement(t,a)})}onKeyUpFromPointerDownHandler(t){return st(a=>{a.key===M.ALT&&a.preventDefault(),!this.maybeHandleResize(t,a)&&this.maybeDragNewGenericElement(t,a)})}onPointerMoveFromPointerDownHandler(t){return ux(a=>{if(this.state.openDialog?.name==="elementLinkSelector")return;let n=rt(a,this.state);if(this.state.selectedLinearElement&&this.state.selectedLinearElement.elbowed&&this.state.selectedLinearElement.pointerDownState.segmentMidpoint.index){let[s,c]=$t(n.x,n.y,a[M.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),u=this.state.selectedLinearElement.pointerDownState.segmentMidpoint.index;if(u<0){let p=ne.getSegmentMidpointHitCoords({...this.state.selectedLinearElement,segmentMidPointHoveredCoords:null},{x:s,y:c},this.state,this.scene.getNonDeletedElementsMap());u=p?ne.getSegmentMidPointIndex(this.state.selectedLinearElement,this.state,p,this.scene.getNonDeletedElementsMap()):-1}let m=ne.moveFixedSegment(this.state.selectedLinearElement,u,s,c,this.scene.getNonDeletedElementsMap());(0,Dl.flushSync)(()=>{this.state.selectedLinearElement&&this.setState({selectedLinearElement:{...this.state.selectedLinearElement,segmentMidPointHoveredCoords:m.segmentMidPointHoveredCoords,pointerDownState:m.pointerDownState}})});return}let i=this.lastPointerMoveCoords??t.origin;if(this.lastPointerMoveCoords=n,t.drag.offset===null&&(t.drag.offset=Mo(x_(this.scene.getSelectedElements(this.state),t.origin.x,t.origin.y))),!(a.target instanceof HTMLElement)||this.handlePointerMoveOverScrollbars(a,t))return;if(Ri(this.state)){this.handleEraser(a,t,n);return}this.state.activeTool.type==="laser"&&this.laserTrails.addPointToPath(n.x,n.y);let[r,l]=$t(n.x,n.y,a[M.CTRL_OR_CMD]?null:this.getEffectiveGridSize());if(!t.drag.hasOccurred&&(this.state.activeTool.type==="arrow"||this.state.activeTool.type==="line")&&nl(Z(n.x,n.y),Z(t.origin.x,t.origin.y))<So)return;if(t.resize.isResizing&&(t.lastCoords.x=n.x,t.lastCoords.y=n.y,this.maybeHandleCrop(t,a)||this.maybeHandleResize(t,a)))return!0;let o=this.scene.getNonDeletedElementsMap();if(this.state.selectedLinearElement){let s=this.state.editingLinearElement||this.state.selectedLinearElement;if(ne.shouldAddMidpoint(this.state.selectedLinearElement,n,this.state,o)){let c=ne.addMidpoint(this.state.selectedLinearElement,n,this,!a[M.CTRL_OR_CMD],o);if(!c)return;(0,Dl.flushSync)(()=>{this.state.selectedLinearElement&&this.setState({selectedLinearElement:{...this.state.selectedLinearElement,pointerDownState:c.pointerDownState,selectedPointsIndices:c.selectedPointsIndices}}),this.state.editingLinearElement&&this.setState({editingLinearElement:{...this.state.editingLinearElement,pointerDownState:c.pointerDownState,selectedPointsIndices:c.selectedPointsIndices}})});return}else if(s.pointerDownState.segmentMidpoint.value!==null&&!s.pointerDownState.segmentMidpoint.added)return;if(ne.handlePointDragging(a,this,n.x,n.y,(c,u)=>{this.maybeSuggestBindingsForLinearElementAtCoords(c,u)},s,this.scene)){t.lastCoords.x=n.x,t.lastCoords.y=n.y,t.drag.hasOccurred=!0,this.state.editingLinearElement&&!this.state.editingLinearElement.isDragging&&this.setState({editingLinearElement:{...this.state.editingLinearElement,isDragging:!0}}),this.state.selectedLinearElement.isDragging||this.setState({selectedLinearElement:{...this.state.selectedLinearElement,isDragging:!0}});return}}let d=t.hit.allHitElements.some(s=>this.isASelectedElement(s)),h=this.state.editingLinearElement&&a.shiftKey&&this.state.editingLinearElement.elementId===t.hit.element?.id;if((d||t.hit.hasHitCommonBoundingBoxOfSelectedElements)&&!h){let s=this.scene.getSelectedElements(this.state);if(s.every(p=>p.locked))return;let c=s.find(p=>Ce(p)),u=this.getTopLayerFrameAtSceneCoords(n),m=u&&!c?u:null;if(this.state.frameToHighlight!==m&&(0,Dl.flushSync)(()=>{this.setState({frameToHighlight:m})}),t.drag.hasOccurred=!0,s.length>0&&!t.withCmdOrCtrl&&!this.state.editingTextElement&&this.state.activeEmbeddable?.state!=="active"){let p={x:n.x-t.origin.x,y:n.y-t.origin.y},f=[...t.originalElements.values()],y=a.shiftKey;if(y){let v=Math.abs(p.x),x=Math.abs(p.y),E=y&&v<x,S=y&&v>x;E&&(p.x=0),S&&(p.y=0)}if(this.state.croppingElementId){let v=this.scene.getNonDeletedElementsMap().get(this.state.croppingElementId);if(v&&tt(v)&&v.crop!==null&&t.hit.element===v){let x=v.crop,E=Ao(v)&&this.imageCache.get(v.fileId)?.image;if(E&&!(E instanceof Promise)){let S=f3(Kv(n.x-i.x,n.y-i.y),Math.max(this.state.zoom.value,2)),[C,_,D,k,I,j]=In(v,o),z=rp(Mn(Z(C,_),Z(I,j),v.angle)),G=rp(Mn(Z(D,_),Z(I,j),v.angle)),O=rp(Mn(Z(C,k),Z(I,j),v.angle)),P=Wv(Qv(G,z)),W=Wv(Qv(O,z)),V=Kv(qv(S,P),qv(S,W)),X={...x,x:Aa(x.x-V[0]*Math.sign(v.scale[0]),0,E.naturalWidth-x.width),y:Aa(x.y-V[1]*Math.sign(v.scale[1]),0,E.naturalHeight-x.height)};$(v,{crop:X});return}}}this.maybeCacheVisibleGaps(a,s),this.maybeCacheReferenceSnapPoints(a,s);let{snapOffset:g,snapLines:b}=cT(f,p,this,a,this.scene.getNonDeletedElementsMap());if(this.setState({snapLines:b}),this.state.editingFrame||y_(t,s,p,this.scene,g,a[M.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),this.setState({selectedElementsAreBeingDragged:!0,selectionElement:null}),(s.length!==1||!me(s[0]))&&this.setState({suggestedBindings:Lp(s,this.scene.getNonDeletedElementsMap(),this.state.zoom)}),a.altKey&&!t.hit.hasBeenDuplicated){t.hit.hasBeenDuplicated=!0;let v=[],x=[],E=new Map,S=new Map,C=t.hit.element,_=new Set(this.scene.getSelectedElements({selectedElementIds:this.state.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0}).map(I=>I.id)),D=this.scene.getElementsIncludingDeleted();for(let I of D){let j=_.has(I.id)||I.id===C?.id&&t.hit.wasAddedToSelection;if(Math.abs(I.x)>1e7||Math.abs(I.x)>1e7||Math.abs(I.width)>1e7||Math.abs(I.height)>1e7){console.error("Alt+dragging element in scene with invalid dimensions",I.x,I.y,I.width,I.height,j);return}if(j){let z=m1(this.state.editingGroupId,E,I);if(Math.abs(z.x)>1e7||Math.abs(z.x)>1e7||Math.abs(z.width)>1e7||Math.abs(z.height)>1e7){console.error("Alt+dragging duplicated element with invalid dimensions",z.x,z.y,z.width,z.height);return}let G=t.originalElements.get(I.id);if(Math.abs(G.x)>1e7||Math.abs(G.x)>1e7||Math.abs(G.width)>1e7||Math.abs(G.height)>1e7){console.error("Alt+dragging duplicated element with invalid dimensions",G.x,G.y,G.width,G.height);return}$(z,{x:G.x,y:G.y}),t.originalElements.set(z.id,z),v.push(z),x.push(I),S.set(I.id,z.id)}else v.push(I)}let k=[...v,...x];k=this.props.onDuplicate?.(k,D)||k,gl(k,Ie(x)),r1(v,x,S),J0(k,x,S,"duplicatesServeAsOld"),A1(k,x,S),this.scene.replaceAllElements(k),this.maybeCacheVisibleGaps(a,s,!0),this.maybeCacheReferenceSnapPoints(a,s,!0)}return}}if(this.state.selectionElement)t.lastCoords.x=n.x,t.lastCoords.y=n.y,this.maybeDragNewGenericElement(t,a);else{let s=this.state.newElement;if(!s)return;if(s.type==="freedraw"){let c=s.points,u=n.x-s.x,m=n.y-s.y,p=c.length>0&&c[c.length-1];if(!(p&&p[0]===u&&p[1]===m)){let f=s.simulatePressure?s.pressures:[...s.pressures,a.pressure];$(s,{points:[...c,Z(u,m)],pressures:f},!1),this.setState({newElement:s})}}else if(Ke(s)){t.drag.hasOccurred=!0;let c=s.points,u=r-s.x,m=l-s.y;Dp(a)&&c.length===2&&({width:u,height:m}=P1(s.x,s.y,n.x,n.y)),c.length===1?$(s,{points:[...c,Z(u,m)]},!1):(c.length===2||c.length>1&&me(s))&&$(s,{points:[...c.slice(0,-1),Z(u,m)]},!1,{isDragging:!0}),this.setState({newElement:s}),ol(s,!1)&&this.maybeSuggestBindingsForLinearElementAtCoords(s,[n],this.state.startBoundElement)}else t.lastCoords.x=n.x,t.lastCoords.y=n.y,this.maybeDragNewGenericElement(t,a,!1)}if(this.state.activeTool.type==="selection"){t.boxSelection.hasOccurred=!0;let s=this.scene.getNonDeletedElements();if(this.state.editingLinearElement)ne.handleBoxSelection(a,this.state,this.setState.bind(this),this.scene.getNonDeletedElementsMap());else{let c=!0;!a.shiftKey&&bt(s,this.state)&&(t.withCmdOrCtrl&&t.hit.element?this.setState(m=>da({...m,selectedElementIds:{[t.hit.element.id]:!0}},this.scene.getNonDeletedElements(),m,this)):c=!1);let u=this.state.selectionElement?s_(s,this.state.selectionElement,this.scene.getNonDeletedElementsMap(),!1):[];this.setState(m=>{let p={...c&&m.selectedElementIds,...u.reduce((f,y)=>(f[y.id]=!0,f),{})};return t.hit.element&&(u.length?delete p[t.hit.element.id]:p[t.hit.element.id]=!0),m=c?m:{...m,selectedGroupIds:{},editingGroupId:null},{...da({editingGroupId:m.editingGroupId,selectedElementIds:p},this.scene.getNonDeletedElements(),m,this),selectedLinearElement:u.length===1&&Ke(u[0])?new ne(u[0]):null,showHyperlinkPopup:u.length===1&&(u[0].link||on(u[0]))?"info":!1}})}}})}handlePointerMoveOverScrollbars(t,a){if(a.scrollbars.isOverHorizontal){let n=t.clientX,i=n-a.lastCoords.x;return this.translateCanvas({scrollX:this.state.scrollX-i/this.state.zoom.value}),a.lastCoords.x=n,!0}if(a.scrollbars.isOverVertical){let n=t.clientY,i=n-a.lastCoords.y;return this.translateCanvas({scrollY:this.state.scrollY-i/this.state.zoom.value}),a.lastCoords.y=n,!0}return!1}onPointerUpFromPointerDownHandler(t){return st(a=>{this.removePointer(a),t.eventListeners.onMove&&t.eventListeners.onMove.flush();let{newElement:n,resizingElement:i,croppingElementId:r,multiElement:l,activeTool:o,isResizing:d,isRotating:h,isCropping:s}=this.state;this.setState(f=>({isResizing:!1,isRotating:!1,isCropping:!1,resizingElement:null,selectionElement:null,frameToHighlight:null,elementsToHighlight:null,cursorButton:"up",snapLines:Ks(f.snapLines,[]),originSnapOffset:null})),this.lastPointerMoveCoords=null,ml.setReferenceSnapPoints(null),ml.setVisibleGaps(null),this.savePointer(a.clientX,a.clientY,"up"),this.setState({selectedElementsAreBeingDragged:!1});let c=this.scene.getNonDeletedElementsMap();if(t.drag.hasOccurred&&t.hit?.element?.id){let f=c.get(t.hit.element.id);hp(f)&&f.boundElements?.filter(y=>y.type==="arrow").map(y=>c.get(y.id)).filter(y=>me(y)).forEach(y=>{y&&$(y,{},!0)})}if(this.state.editingLinearElement)if(!t.boxSelection.hasOccurred&&t.hit?.element?.id!==this.state.editingLinearElement.elementId)this.actionManager.executeAction(pi);else{let f=ne.handlePointerUp(a,this.state.editingLinearElement,this.state,this.scene);f!==this.state.editingLinearElement&&this.setState({editingLinearElement:f,suggestedBindings:[]})}else if(this.state.selectedLinearElement){if(this.state.selectedLinearElement.elbowed){let f=ne.getElement(this.state.selectedLinearElement.elementId,this.scene.getNonDeletedElementsMap());f&&$(f,{},!0)}if(t.hit?.element?.id!==this.state.selectedLinearElement.elementId)this.scene.getSelectedElements(this.state).length>1&&this.setState({selectedLinearElement:null});else{let f=ne.handlePointerUp(a,this.state.selectedLinearElement,this.state,this.scene),{startBindingElement:y,endBindingElement:g}=f,b=this.scene.getElement(f.elementId);ol(b)&&q0(b,y,g,c,this.scene),f!==this.state.selectedLinearElement&&this.setState({selectedLinearElement:{...f,selectedPointsIndices:null},suggestedBindings:[]})}}if(this.missingPointerEventCleanupEmitter.clear(),window.removeEventListener("pointermove",t.eventListeners.onMove),window.removeEventListener("pointerup",t.eventListeners.onUp),window.removeEventListener("keydown",t.eventListeners.onKeyDown),window.removeEventListener("keyup",t.eventListeners.onKeyUp),this.state.pendingImageElementId&&this.setState({pendingImageElementId:null}),this.props?.onPointerUp?.(o,t),this.onPointerUpEmitter.trigger(this.state.activeTool,t,a),n?.type==="freedraw"){let f=rt(a,this.state),y=n.points,g=f.x-n.x,b=f.y-n.y;g===y[0][0]&&b===y[0][1]&&(b+=1e-4,g+=1e-4);let v=n.simulatePressure?[]:[...n.pressures,a.pressure];$(n,{points:[...y,Z(g,b)],pressures:v,lastCommittedPoint:Z(g,b)}),this.actionManager.executeAction(pi);return}if(tt(n)){let f=n;try{this.initializeImageDimensions(f),this.setState({selectedElementIds:Ee({[f.id]:!0},this.state)},()=>{this.actionManager.executeAction(pi)})}catch(y){console.error(y),this.scene.replaceAllElements(this.scene.getElementsIncludingDeleted().filter(g=>g.id!==f.id)),this.actionManager.executeAction(pi)}return}if(Ke(n)){n.points.length>1&&this.store.shouldCaptureIncrement();let f=rt(a,this.state);!t.drag.hasOccurred&&n&&!l?($(n,{points:[...n.points,Z(f.x-n.x,f.y-n.y)]}),this.setState({multiElement:n,newElement:n})):t.drag.hasOccurred&&!l&&(ac(this.state)&&ol(n,!1)&&Rp(n,this.state,f,this.scene.getNonDeletedElementsMap(),this.scene.getNonDeletedElements()),this.setState({suggestedBindings:[],startBoundElement:null}),o.locked?this.setState(y=>({newElement:null})):(ri(this.interactiveCanvas),this.setState(y=>({newElement:null,activeTool:Nt(this.state,{type:"selection"}),selectedElementIds:Ee({...y.selectedElementIds,[n.id]:!0},y),selectedLinearElement:new ne(n)}))),this.scene.triggerUpdate());return}if(ae(n)){let f=U3(An({fontSize:n.fontSize,fontFamily:n.fontFamily}),n.lineHeight);n.width<f&&$(n,{autoResize:!0}),this.resetCursor(),this.handleTextWysiwyg(n,{isExistingElement:!0})}if(o.type!=="selection"&&n&&Ou(n)){this.updateScene({elements:this.scene.getElementsIncludingDeleted().filter(f=>f.id!==n.id),appState:{newElement:null},captureUpdate:L.NEVER});return}if(Ce(n)){let f=i_(this.scene.getElementsIncludingDeleted(),n,this.scene.getNonDeletedElementsMap());this.scene.replaceAllElements(Ru(this.scene.getElementsMapIncludingDeleted(),f,n,this.state))}if(n&&($(n,u_(n)),this.scene.triggerUpdate()),t.drag.hasOccurred){let f=rt(a,this.state);if(this.state.selectedLinearElement&&this.state.selectedLinearElement.isDragging){let y=this.scene.getElement(this.state.selectedLinearElement.elementId);if(y?.frameId){let g=Vp(y,c);g&&y&&(D1(y,g,this.scene.getNonDeletedElementsMap())||($(y,{groupIds:[]}),N1([y],this.scene.getNonDeletedElementsMap()),this.scene.triggerUpdate()))}}else{let y=this.getTopLayerFrameAtSceneCoords(f),g=this.scene.getSelectedElements(this.state),b=this.scene.getElementsMapIncludingDeleted(),v=x=>{if(x.length>0){for(let E of x){let S=E.groupIds.indexOf(this.state.editingGroupId);$(E,{groupIds:E.groupIds.slice(0,S)},!1)}b.forEach(E=>{E.groupIds.length&&xt(b,E.groupIds[E.groupIds.length-1]).length<2&&$(E,{groupIds:[]},!1)}),this.setState({editingGroupId:null})}};if(y&&!this.state.selectedElementIds[y.id]){let x=g.filter(E=>E.frameId!==y.id&&R1(E,b,this.state));this.state.editingGroupId&&v(x),b=Ru(b,x,y,this.state)}else if(!y&&this.state.editingGroupId){let x=g.filter(E=>E.frameId&&!R1(E,b,this.state));v(x)}b=Po(b,this.state,this),this.scene.replaceAllElements(b)}}if(i&&this.store.shouldCaptureIncrement(),i&&Ou(i)&&this.updateScene({elements:this.scene.getElementsIncludingDeleted().filter(f=>f.id!==i.id),captureUpdate:L.NEVER}),t.resize.isResizing){let f=Po(this.scene.getElementsIncludingDeleted(),this.state,this),y=this.scene.getSelectedElements(this.state).filter(g=>Ce(g));for(let g of y)f=L1(f,Lu(this.scene.getElementsIncludingDeleted(),g,this.state,c),g,this);this.scene.replaceAllElements(f)}let u=t.hit.element;this.state.selectedLinearElement?.elementId!==u?.id&&Ke(u)&&this.scene.getSelectedElements(this.state).length===1&&this.setState({selectedLinearElement:new ne(u)}),(!r||r&&(!u&&!s||u&&u.id!==r))&&this.finishImageCropping();let m=this.lastPointerDownEvent,p=this.lastPointerUpEvent||this.lastPointerMoveEvent;if(Ri(this.state)&&m&&p){if(this.eraserTrail.endPath(),nl(Z(m.clientX,m.clientY),Z(p.clientX,p.clientY))===0){let f=rt({clientX:p.clientX,clientY:p.clientY},this.state);this.getElementsAtPosition(f.x,f.y).forEach(y=>this.elementsPendingErasure.add(y.id))}this.eraseElements();return}else this.elementsPendingErasure.size&&this.restoreReadyToEraseElements();if(u&&!t.drag.hasOccurred&&!t.hit.wasAddedToSelection&&(!this.state.editingLinearElement||!t.boxSelection.hasOccurred)&&(a.shiftKey&&!this.state.editingLinearElement?this.state.selectedElementIds[u.id]?t1(this.state,u)?this.setState(f=>{let y={...f.selectedElementIds};for(let g of u.groupIds.flatMap(b=>xt(this.scene.getNonDeletedElements(),b)))delete y[g.id];return{selectedGroupIds:{...f.selectedElementIds,...u.groupIds.map(g=>({[g]:!1})).reduce((g,b)=>({...g,...b}),{})},selectedElementIds:Ee(y,f)}}):this.state.selectedLinearElement?.isDragging||this.setState(f=>{let y={...f.selectedElementIds};delete y[u.id];let g=ce(this.scene.getNonDeletedElements(),{selectedElementIds:y});return{...da({editingGroupId:f.editingGroupId,selectedElementIds:y},this.scene.getNonDeletedElements(),f,this),selectedLinearElement:g.length===1&&Ke(g[0])?new ne(g[0]):f.selectedLinearElement}}):u.frameId&&this.state.selectedElementIds[u.frameId]?this.setState(f=>{let y={...f.selectedElementIds,[u.id]:!0};return delete y[u.frameId],(this.scene.getElement(u.frameId)?.groupIds??[]).flatMap(g=>xt(this.scene.getNonDeletedElements(),g)).forEach(g=>{delete y[g.id]}),{...da({editingGroupId:f.editingGroupId,selectedElementIds:y},this.scene.getNonDeletedElements(),f,this),showHyperlinkPopup:u.link||on(u)?"info":!1}}):this.setState(f=>({selectedElementIds:Ee({...f.selectedElementIds,[u.id]:!0},f)})):this.setState(f=>({...da({editingGroupId:f.editingGroupId,selectedElementIds:{[u.id]:!0}},this.scene.getNonDeletedElements(),f,this),selectedLinearElement:Ke(u)&&f.selectedLinearElement?.elementId!==u.id?new ne(u):f.selectedLinearElement}))),!(u&&me(u))&&!t.drag.hasOccurred&&!this.state.isResizing&&(u&&AC({x:t.origin.x,y:t.origin.y,element:u,shape:Ro(u,this.scene.getNonDeletedElementsMap()),threshold:this.getElementHitThreshold(),frameNameBound:Ce(u)?this.frameNameBoundsCache.get(u):null},c)||!u&&t.hit.hasHitCommonBoundingBoxOfSelectedElements)){this.state.editingLinearElement?this.setState({editingLinearElement:null}):this.setState({selectedElementIds:Ee({},this.state),selectedGroupIds:{},editingGroupId:null,activeEmbeddable:null}),ke(this.interactiveCanvas,De.AUTO);return}if(!o.locked&&o.type!=="freedraw"&&n&&this.setState(f=>({selectedElementIds:Ee({...f.selectedElementIds,[n.id]:!0},f),showHyperlinkPopup:on(n)&&!n.link?"editor":f.showHyperlinkPopup})),(o.type!=="selection"||bt(this.scene.getNonDeletedElements(),this.state)||!Dn(this.state.previousSelectedElementIds,this.state.selectedElementIds))&&this.store.shouldCaptureIncrement(),t.drag.hasOccurred||d||h||s){let f=this.scene.getSelectedElements(this.state).filter(Ke);Eu(f,this.scene.getNonDeletedElementsMap(),this.scene.getNonDeletedElements(),this.scene,ac(this.state),this.state.selectedLinearElement?.selectedPointsIndices??[],this.state.zoom)}if(o.type==="laser"){this.laserTrails.endPath();return}!o.locked&&o.type!=="freedraw"?(ri(this.interactiveCanvas),this.setState({newElement:null,suggestedBindings:[],activeTool:Nt(this.state,{type:"selection"})})):this.setState({newElement:null,suggestedBindings:[]}),u&&this.lastPointerUpEvent&&this.lastPointerDownEvent&&this.lastPointerUpEvent.timeStamp-this.lastPointerDownEvent.timeStamp<300&&we.pointers.size<=1&&qs(u)&&this.isIframeLikeElementCenter(u,this.lastPointerUpEvent,t.origin.x,t.origin.y)&&this.handleEmbeddableCenterClick(u)})}clearSelection(t){this.setState(a=>({selectedElementIds:Ee({},a),activeEmbeddable:null,selectedGroupIds:{},editingGroupId:a.editingGroupId&&t!=null&&Cu(t,a.editingGroupId)?a.editingGroupId:null})),this.setState({selectedElementIds:Ee({},this.state),activeEmbeddable:null,previousSelectedElementIds:this.state.selectedElementIds})}getTextWysiwygSnappedToCenterPosition(t,a,n,i){if(i){let r=i.x+i.width/2,l=i.y+i.height/2,o=zp(i,n,this.scene.getNonDeletedElementsMap());if(o&&(r=o.x,l=o.y),Math.hypot(t-r,a-l)<XS){let{x:d,y:h}=Oi({sceneX:r,sceneY:l},n);return{viewportX:d,viewportY:h,elementCenterX:r,elementCenterY:l}}}}getCanvasOffsets(){if(this.excalidrawContainerRef?.current){let t=this.excalidrawContainerRef.current,{left:a,top:n}=t.getBoundingClientRect();return{offsetLeft:a,offsetTop:n}}return{offsetLeft:0,offsetTop:0}}async updateLanguage(){let t=Zx.find(a=>a.code===this.props.langCode)||$c;await yA(t),this.setAppState({})}},OG=()=>{(Ft.MODE===Wd.TEST||Ft.DEV)&&(window.h=window.h||{},Object.defineProperties(window.h,{elements:{configurable:!0,get(){return this.app?.scene.getElementsIncludingDeleted()},set(e){return this.app?.scene.replaceAllElements(ic(e))}},scene:{configurable:!0,get(){return this.app?.scene}}}))};OG();var zG=RG,BG=()=>{Array.prototype.at||Object.defineProperty(Array.prototype,"at",{value:function(e){if(e=Math.trunc(e)||0,e<0&&(e+=this.length),!(e<0||e>=this.length))return this[e]},writable:!0,enumerable:!1,configurable:!0}),Element.prototype.replaceChildren||(Element.prototype.replaceChildren=function(...e){this.innerHTML="",this.append(...e)})},UG=BG,PG=({children:e})=>{let{FooterCenterTunnel:t}=Ua(),a=ta();return(0,Xx.jsx)(t.In,{children:(0,Xx.jsx)("div",{className:U("footer-center zen-mode-transition",{"layer-ui__wrapper__footer-left--transition-bottom":a.zenModeEnabled}),children:e})})};PG.displayName="FooterCenter";var jG=()=>(0,Fn.jsx)("svg",{viewBox:"0 0 40 40",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"ExcalidrawLogo-icon",children:(0,Fn.jsx)("path",{d:"M39.9 32.889a.326.326 0 0 0-.279-.056c-2.094-3.083-4.774-6-7.343-8.833l-.419-.472a.212.212 0 0 0-.056-.139.586.586 0 0 0-.167-.111l-.084-.083-.056-.056c-.084-.167-.28-.278-.475-.167-.782.39-1.507.973-2.206 1.528-.92.722-1.842 1.445-2.708 2.25a8.405 8.405 0 0 0-.977 1.028c-.14.194-.028.361.14.444-.615.611-1.23 1.223-1.843 1.861a.315.315 0 0 0-.084.223c0 .083.056.166.111.194l1.09.833v.028c1.535 1.528 4.244 3.611 7.12 5.861.418.334.865.667 1.284 1 .195.223.39.473.558.695.084.11.28.139.391.055.056.056.14.111.196.167a.398.398 0 0 0 .167.056.255.255 0 0 0 .224-.111.394.394 0 0 0 .055-.167c.029 0 .028.028.056.028a.318.318 0 0 0 .224-.084l5.082-5.528a.309.309 0 0 0 0-.444Zm-14.63-1.917a.485.485 0 0 0 .111.14c.586.5 1.2 1 1.843 1.555l-2.569-1.945-.251-.166c-.056-.028-.112-.084-.168-.111l-.195-.167.056-.056.055-.055.112-.111c.866-.861 2.346-2.306 3.1-3.028-.81.805-2.43 3.167-2.095 3.944Zm8.767 6.89-2.122-1.612a44.713 44.713 0 0 0-2.625-2.5c1.145.861 2.122 1.611 2.262 1.75 1.117.972 1.06.806 1.815 1.445l.921.666a1.06 1.06 0 0 1-.251.25Zm.558.416-.056-.028c.084-.055.168-.111.252-.194l-.196.222ZM1.089 5.75c.055.361.14.722.195 1.056.335 1.833.67 3.5 1.284 4.75l.252.944c.084.361.223.806.363.917 1.424 1.25 3.602 3.11 5.947 4.889a.295.295 0 0 0 .363 0s0 .027.028.027a.254.254 0 0 0 .196.084.318.318 0 0 0 .223-.084c2.988-3.305 5.221-6.027 6.813-8.305.112-.111.14-.278.14-.417.111-.111.195-.25.307-.333.111-.111.111-.306 0-.39l-.028-.027c0-.055-.028-.139-.084-.167-.698-.666-1.2-1.138-1.731-1.638-.922-.862-1.871-1.75-3.881-3.75l-.028-.028c-.028-.028-.056-.056-.112-.056-.558-.194-1.703-.389-3.127-.639C6.087 2.223 3.21 1.723.614.944c0 0-.168 0-.196.028l-.083.084c-.028.027-.056.055-.224.11h.056-.056c.028.167.028.278.084.473 0 .055.112.5.112.555l.782 3.556Zm15.496 3.278-.335-.334c.084.112.196.195.335.334Zm-3.546 4.666-.056.056c0-.028.028-.056.056-.056Zm-2.038-10c.168.167.866.834 1.033.973-.726-.334-2.54-1.167-3.379-1.445.838.167 1.983.334 2.346.472ZM1.424 2.306c.419.722.754 3.222 1.089 5.666-.196-.778-.335-1.555-.503-2.278-.251-1.277-.503-2.416-.838-3.416.056 0 .14 0 .252.028Zm-.168-.584c-.112 0-.223-.028-.307-.028 0-.027 0-.055-.028-.055.14 0 .223.028.335.083Zm-1.089.222c0-.027 0-.027 0 0ZM39.453 1.333c.028-.11-.558-.61-.363-.639.42-.027.42-.666 0-.666-.558.028-1.144.166-1.675.25-.977.194-1.982.389-2.96.61-2.205.473-4.383.973-6.561 1.557-.67.194-1.424.333-2.066.666-.224.111-.196.333-.084.472-.056.028-.084.028-.14.056-.195.028-.363.056-.558.083-.168.028-.252.167-.224.334 0 .027.028.083.028.11-1.173 1.556-2.485 3.195-3.909 4.945-1.396 1.611-2.876 3.306-4.356 5.056-4.719 5.5-10.052 11.75-15.943 17.25a.268.268 0 0 0 0 .389c.028.027.056.055.084.055-.084.084-.168.14-.252.222-.056.056-.084.111-.084.167a.605.605 0 0 0-.111.139c-.112.111-.112.305.028.389.111.11.307.11.39-.028.029-.028.029-.056.056-.056a.44.44 0 0 1 .615 0c.335.362.67.723.977 1.028l-.698-.583c-.112-.111-.307-.083-.39.028-.113.11-.085.305.027.389l7.427 6.194c.056.056.112.056.196.056s.14-.028.195-.084l.168-.166c.028.027.083.027.111.027.084 0 .14-.027.196-.083 10.052-10.055 18.15-17.639 27.42-24.417.083-.055.111-.166.111-.25.112 0 .196-.083.251-.194 1.704-5.194 2.039-9.806 2.15-12.083v-.028c0-.028.028-.056.028-.083.028-.056.028-.084.028-.084a1.626 1.626 0 0 0-.111-1.028ZM21.472 9.5c.446-.5.893-1.028 1.34-1.5-2.876 3.778-7.65 9.583-14.408 16.5 4.607-5.083 9.242-10.333 13.068-15ZM5.193 35.778h.084-.084Zm3.462 3.194c-.027-.028-.027-.028 0-.028v.028Zm4.16-3.583c.224-.25.448-.472.699-.722 0 0 0 .027.028.027-.252.223-.475.445-.726.695Zm1.146-1.111c.14-.14.279-.334.446-.5l.028-.028c1.648-1.694 3.351-3.389 5.082-5.111l.028-.028c.419-.333.921-.694 1.368-1.028a379.003 379.003 0 0 0-6.952 6.695ZM24.794 6.472c-.921 1.195-1.954 2.778-2.82 4.028-2.736 3.944-11.532 13.583-11.727 13.75a1976.983 1976.983 0 0 1-8.042 7.639l-.167.167c-.14-.167-.14-.417.028-.556C14.49 19.861 22.03 10.167 25.074 5.917c-.084.194-.14.36-.28.555Zm4.83 5.695c-1.116-.64-1.646-1.64-1.34-2.611l.084-.334c.028-.083.084-.194.14-.277.307-.5.754-.917 1.257-1.167.027 0 .055 0 .083-.028-.028-.056-.028-.139-.028-.222.028-.167.14-.278.335-.278.335 0 1.369.306 1.76.639.111.083.223.194.335.305.14.167.363.445.474.667.056.028.112.306.196.445.056.222.111.472.084.694-.028.028 0 .194-.028.194a2.668 2.668 0 0 1-.363 1.028c-.028.028-.028.056-.056.084l-.028.027c-.14.223-.335.417-.53.556-.643.444-1.369.583-2.095.389 0 0-.195-.084-.28-.111Zm8.154-.834a39.098 39.098 0 0 1-.893 3.167c0 .028-.028.083 0 .111-.056 0-.084.028-.14.056-2.206 1.61-4.356 3.305-6.506 5.028 1.843-1.64 3.686-3.306 5.613-4.945.558-.5.949-1.139 1.06-1.861l.28-1.667v-.055c.14-.334.67-.195.586.166Z",fill:"currentColor"})}),HG=()=>(0,Fn.jsxs)("svg",{viewBox:"0 0 450 55",xmlns:"http://www.w3.org/2000/svg",fill:"none",className:"ExcalidrawLogo-text",children:[(0,Fn.jsx)("path",{d:"M429.27 96.74c2.47-1.39 4.78-3.02 6.83-4.95 1.43-1.35 2.73-2.86 3.81-4.51-.66.9-1.4 1.77-2.23 2.59-2.91 2.84-5.72 5.09-8.42 6.87h.01ZM343.6 69.36c.33 3.13.58 6.27.79 9.4.09 1.37.18 2.75.25 4.12-.12-4.46-.27-8.93-.5-13.39-.11-2.08-.24-4.16-.4-6.24-.06 1.79-.11 3.85-.13 6.11h-.01ZM378.47 98.34c.01-.37.07-1.13.01-6.51-.11 1.9-.22 3.81-.31 5.71-.07 1.42-.22 2.91-.16 4.35.39.03.78.07 1.17.1-.92-.85-.76-2.01-.72-3.66l.01.01ZM344.09 86.12c-.09-2.41-.22-4.83-.39-7.24v12.21c.15-.05.32-.09.47-.14.05-1.61-.03-3.23-.09-4.83h.01ZM440.69 66.79c-.22-.34-.45-.67-.69-.99-3.71-4.87-9.91-7.14-15.65-8.55-1.05-.26-2.12-.49-3.18-.71 2.29.59 4.48 1.26 6.64 2.02 7.19 2.54 10.57 5.41 12.88 8.23ZM305.09 72.46l1.2 3.6c.84 2.53 1.67 5.06 2.46 7.61.24.78.5 1.57.73 2.36.22-.04.44-.08.67-.12a776.9 776.9 0 0 1-5.01-13.57c-.02.04-.03.09-.05.13v-.01ZM345.49 90.25v.31c1.48-.42 3.05-.83 4.66-1.2-1.56.25-3.12.52-4.66.89ZM371.02 90.22c0-.57-.04-1.14-.11-1.71-.06-.02-.12-.04-.19-.05-.21-.05-.43-.08-.65-.11.42.16.74.88.95 1.87ZM398.93 54.23c-.13 0-.27-.01-.4-.02l.03.4c.11-.15.23-.27.37-.38ZM401.57 62.28v-.15c-1.22-.24-2.86-.61-3.23-1.25-.09-.15-.18-.51-.27-.98-.09.37-.2.73-.33 1.09 1.24.56 2.52.98 3.83 1.29ZM421.73 88.68c-2.97 1.65-6.28 3.12-9.69 3.68v.18c4.72-.14 11.63-3.85 16.33-8.38-2.04 1.75-4.33 3.24-6.63 4.53l-.01-.01ZM411.28 80.92c-.05-1.2-.09-2.4-.15-3.6-.21 5.66-.46 11.38-.47 14.51.24-.02.48-.04.71-.07.15-3.61.05-7.23-.09-10.83v-.01Z",transform:"translate(-144.023 -51.76)"}),(0,Fn.jsx)("path",{d:"M425.38 67.41c-3.5-1.45-7.19-2.57-14.06-3.62.09 1.97.06 4.88-.03 8.12.03.04.06.09.06.15.19 1.36.28 2.73.37 4.1.25 3.77.39 7.55.41 11.33 0 1.38-.01 2.76-.07 4.13 1.4-.25 2.78-.65 4.12-1.15 4.07-1.5 7.94-3.78 11.28-6.54 2.33-1.92 5.13-4.49 5.88-7.58.63-3.53-2.45-6.68-7.97-8.96l.01.02ZM411.35 92.53v-.06l-.34.03c.11.01.22.03.34.03ZM314.26 64.06c-.23-.59-.47-1.17-.7-1.75.57 1.62 1.11 3.25 1.6 4.9l.15.54 2.35 6.05c.32.82.66 1.64.98 2.46-1.38-4.1-2.83-8.17-4.39-12.2h.01ZM156.82 103.07c-.18.13-.38.23-.58.33 1.32-.03 2.66-.2 3.93-.34.86-.09 1.72-.22 2.58-.33-2.12.1-4.12.17-5.94.34h.01ZM210.14 68.88s.03.04.05.07c.18-.31.39-.64.58-.96-.21.3-.42.6-.64.89h.01ZM201.65 82.8c-.5.77-1.02 1.56-1.49 2.37 1.11-1.55 2.21-3.1 3.2-4.59-.23.23-.49.51-.75.79-.32.47-.65.95-.96 1.43ZM194.03 98.66c-.33-.4-.65-.84-1.05-1.17-.24-.2-.07-.49.17-.56-.23-.26-.42-.5-.63-.75 1.51-2.55 3.93-5.87 6.4-9.28-.17-.08-.29-.28-.2-.49.04-.09.09-.17.13-.26-1.21 1.78-2.42 3.55-3.61 5.33-.87 1.31-1.74 2.64-2.54 4-.29.5-.63 1.04-.87 1.61.81.65 1.63 1.27 2.47 1.88-.09-.11-.18-.21-.27-.32v.01ZM307.79 82.93c-1-3.17-2.05-6.32-3.1-9.48-1.62 4.08-3.69 9.17-6.16 15.19 3.32-1.04 6.77-1.87 10.27-2.5-.32-1.08-.67-2.15-1.01-3.21ZM149.5 80.7c.05-1.71.04-3.43 0-5.14-.1 2.26-.16 4.51-.22 6.77-.02.73-.03 1.46-.04 2.19.14-1.27.2-2.55.24-3.82h.02ZM228.98 98.3c.39 1.25.91 3.03.94 3.91.06-.03.12-.07.17-.1.08-1.29-.55-2.65-1.11-3.81ZM307.72 53.36c.81.5 1.53 1.04 2.07 1.49-.38-.8-.78-1.58-1.21-2.35-.17.03-.34.06-.51.11-.43.12-.86.26-1.29.41.35-.01.53.1.94.34ZM283.69 96.14c3.91-7.25 6.89-13.35 8.88-18.15l1.1-2.66c-1.27 2.64-2.56 5.27-3.83 7.9-1.53 3.15-3.06 6.31-4.58 9.47-.87 1.81-1.76 3.62-2.54 5.47.04.02.07.04.11.07.05.05.1.09.15.14.05-.73.27-1.48.71-2.24ZM289.92 103.23s-.04.01-.05.03c0-.02.04-.03.05-.04.05-.05.11-.1.16-.15l.21-.21c-.55 0-1.5-.27-2.55-.72.4.26.8.51 1.22.74.24.13.48.26.73.37.05.02.1.03.14.05a.27.27 0 0 1 .08-.07h.01ZM269.23 68.49c-.39-.19-.82-.48-1.33-.87-3.06-1.56-6.31-2.78-9.36-2.35-3.5.49-5.7 1.11-7.74 2.44 5.71-2.6 12.82-2.07 18.44.79l-.01-.01ZM177.87 53.69l1.06.03c-.96-.22-2-.25-2.89-.3-4.95-.26-9.99.33-14.86 1.19-2.44.43-4.88.95-7.28 1.59 9.09-1.76 15.69-2.77 23.97-2.51ZM219.85 55.51c-.18.12-.36.27-.56.45-.45.53-.86 1.11-1.26 1.66-1.91 2.61-3.71 5.31-5.57 7.95l-.12.18 8.05-10.11c-.18-.05-.36-.1-.55-.13h.01ZM510.71 54.1c.12-.15.29-.3.53-.45.69-.4 3.72-.63 5.87-.74-.36-.02-.73-.04-1.09-.05-1.84-.03-3.67.09-5.49.35.05.3.12.59.18.88v.01ZM510.76 86.02c1.37-3.07 2.49-6.27 3.57-9.46.55-1.64 1.12-3.3 1.6-4.97-1.59 4.01-3.67 9.14-6.2 15.3.24-.08.5-.14.74-.22.1-.22.19-.44.29-.65ZM566.95 75.76c.11-.02.23.03.31.11-.05-.13-.09-.26-.14-.39-.05.09-.11.18-.17.28ZM511.33 86.41c3.08-.89 6.24-1.62 9.46-2.14-1.51-3.98-2.98-7.96-4.39-11.87-.05.15-.09.31-.14.46-1.02 3.32-2.15 6.61-3.39 9.85-.48 1.25-.98 2.49-1.53 3.7h-.01ZM578.24 74.45c.11-.44.23-.87.35-1.31-.31.7-.64 1.39-.97 2.08.09.21.19.4.28.61.12-.46.23-.92.35-1.38h-.01ZM520.62 53.11c-.09 0-.18-.01-.28-.02.38.34.29 1.08.93 2.53l6.65 17.15c2.2 5.68 4.69 11.36 7.41 16.87l1.06 2.17c-2.95-7.05-5.92-14.08-8.87-21.13-1.58-3.79-3.16-7.59-4.7-11.4-.78-1.92-1.73-3.89-2.25-5.91-.03-.1 0-.19.04-.26h.01ZM578.78 77.87c1.45-5.77 3.07-10.43 3.58-13.36.05-.34.16-.88.31-1.55-.67 1.79-1.37 3.56-2.08 5.33-.12.43-.23.86-.35 1.29-.65 2.43-1.29 4.86-1.9 7.3.14.33.29.65.43 1l.01-.01ZM545.3 94.66c.02-.44.03-.83.05-1.12.02-1.01.05-2.02.11-3.02.03-6.66-.46-14.33-1.46-22.8-.13-.42-.27-1.24-.56-2.89 0-.02 0-.04-.01-.06.62 6.61.95 13.25 1.32 19.87.17 3.08.33 6.16.52 9.23.02.25.03.52.04.78l-.01.01ZM580.77 102.81c.13.2.27.38.37.49.27-.11.53-.22.8-.32-.43.09-.82.05-1.17-.16v-.01ZM530.48 104.07h.33c-.36-.13-.71-.32-1.04-.56.14.24.3.47.45.7.06-.08.14-.13.26-.13v-.01ZM542.63 58.82c.06.23.11.47.15.71.14-.33.36-.62.7-.86-.28.05-.57.11-.85.15ZM583.81 57.87c.15-.7.29-1.41.42-2.11-.14.45-.28.9-.42 1.34-.46 1.44-.89 2.89-1.31 4.34.44-1.19.88-2.37 1.31-3.57ZM523.62 91.48c-4.66 1.17-9.05 2.89-14.02 5.27 4.65-1.84 9.48-3.29 14.28-4.63-.09-.22-.17-.41-.26-.64ZM460.64 78.3c-.04-2.9-.11-5.81-.28-8.71-.1-1.68-.17-3.43-.5-5.09-.07.02-.14.03-.2.05.3 6.54.45 12.17.51 17.12.17-.07.34-.14.51-.2 0-1.06-.01-2.11-.03-3.17h-.01ZM470.63 63.24c-3.38-.26-6.81.32-10.1 1.1.41 2.01.47 4.14.57 6.18.18 3.55.25 7.11.27 10.67 3.31-1.38 6.5-3.12 9.3-5.35 1.96-1.56 3.86-3.41 5.02-5.66.73-1.41 1.19-3.22.26-4.65-1.09-1.7-3.46-2.14-5.32-2.29ZM460.29 63.68c1-.24 2.01-.46 3.04-.65-1.15.16-2.37.38-3.71.69v.13c.07-.02.15-.04.22-.05.11-.13.3-.18.45-.11v-.01ZM457.24 100.96c.43-.03.86-.07 1.29-.11.14-.49.27-.99.38-1.49-.44.7-1 1.23-1.67 1.6ZM482.88 104.98c-.18.23-.36.38-.55.47.14.09.27.19.4.28a70.76 70.76 0 0 0 4.37-4.63c.76-.89 1.52-1.81 2.19-2.77-.3-.27-.61-.53-.92-.79-.07 1.94-4.62 6.32-5.49 7.45v-.01Z",transform:"translate(-144.023 -51.76)"}),(0,Fn.jsx)("path",{d:"M474.36 63.31c-.4-.16-.84-.27-1.29-.37 1.56.42 3.08 1.22 3.76 2.74.62 1.4.32 2.95-.28 4.32.7-1.22.94-2.34.74-3.47-.24-1.33-1.19-2.54-2.93-3.21v-.01ZM477.34 89.18c-1.2-.81-2.4-1.62-3.6-2.42-.14.1-.26.19-.4.29 1.4.67 2.73 1.39 4 2.13ZM465.88 93.85c.37.25.74.5 1.1.75.46.32.92.65 1.38.97-1.57-1.2-2.01-1.61-2.49-1.72h.01ZM574.92 90.06c-2.28-5.21-4.93-11.13-5.67-12.26-.1-.15-1.57-3.01-1.63-3.08 0 0-.01.02-.02.02.4 1.37 1.09 2.69 1.65 3.99 2.14 4.95 4.36 9.86 6.67 14.73.6 1.26 1.21 2.52 1.83 3.78-.75-2.01-1.64-4.45-2.83-7.18ZM448.73 65.29c.1.2.22.38.34.57.22-.02.43-.06.65-.08v-.08c-.14-.05-.25 0-.99-.41ZM460.16 94.81c-.02.31-.06.59-.1.89-.03 1.71-.33 3.43-.79 5.07.15-.02.3-.03.45-.05.01-.04.02-.08.03-.11.09-.34.15-.69.2-1.03.17-1.07.25-2.16.33-3.24.05-.69.08-1.39.12-2.08-.27.1-.27.26-.24.57v-.02Z",transform:"translate(-144.023 -51.76)"}),(0,Fn.jsx)("path",{d:"m328.67 98.12-3.22-6.58c-1.29-2.63-2.53-5.29-3.72-7.97-.25-.85-.52-1.69-.79-2.53-.81-2.57-1.67-5.12-2.55-7.67-1.92-5.53-3.9-11.08-6.32-16.41-.72-1.58-1.46-3.44-2.63-4.79-.03-.17-.16-.29-.34-.36a.282.282 0 0 0-.23-.04c-.06-.01-.12 0-.18.01-.74.06-1.5.38-2.19.61-2.22.77-4.4 1.64-6.63 2.38-.03-.08-.06-.16-.09-.25-.15-.42-.82-.24-.67.19.03.09.07.19.1.28l-.18.06c-.36.11-.28.6 0 .68.18 1.18.63 2.36.98 3.49.03.09.06.17.08.26-.08.23-.17.46-.24.64-.37.98-.79 1.94-1.21 2.9-1.27 2.89-2.62 5.75-3.98 8.6-3.18 6.67-6.44 13.31-9.64 19.97-1.08 2.25-2.2 4.5-3.15 6.81-.13.32.24.5.5.37 1.34 1.33 2.84 2.5 4.4 3.57.65.44 1.31.87 2.01 1.24.4.22.86.48 1.33.5.24.01.35-.19.33-.37.11-.1.21-.21.28-.28.41-.41.81-.84 1.2-1.26.85-.92 1.69-1.87 2.5-2.84 6.31-2.34 12.6-4.31 18.71-5.84 2.14 5.3 3.43 8.43 3.97 9.58.55 1.05 1.15 1.88 1.82 2.52 1.32.56 6.96-.03 9.23-1.96.87-1.28 1.19-2.67.93-4.15-.09-.5-.22-.95-.4-1.33l-.01-.03Zm-20.09-45.61c.43.77.83 1.56 1.21 2.35-.54-.45-1.27-.99-2.07-1.49-.42-.24-.6-.35-.94-.34.43-.15.85-.29 1.29-.41.17-.05.34-.08.51-.11Zm-25.86 45.66c.78-1.85 1.67-3.66 2.54-5.47 1.51-3.16 3.05-6.31 4.58-9.47 1.28-2.63 2.56-5.26 3.83-7.9l-1.1 2.66c-1.99 4.79-4.97 10.9-8.88 18.15-.43.76-.66 1.51-.71 2.24-.05-.05-.1-.09-.15-.14a.259.259 0 0 0-.11-.07Zm6.24 4.71c-.42-.23-.82-.48-1.22-.74 1.05.45 2 .72 2.55.72l-.21.21c-.05.05-.11.1-.16.15-.01.01-.04.03-.05.04 0-.02.03-.02.05-.03a.27.27 0 0 0-.08.07c-.05-.02-.1-.03-.14-.05-.25-.1-.49-.24-.73-.37h-.01Zm15.73-29.43c1.05 3.15 2.1 6.31 3.1 9.48.34 1.06.69 2.13 1.01 3.21-3.5.63-6.95 1.46-10.27 2.5 2.48-6.03 4.54-11.11 6.16-15.19Zm4.79 12.57c-.23-.79-.49-1.58-.73-2.36-.79-2.54-1.63-5.08-2.46-7.61l-1.2-3.6c.02-.04.04-.09.05-.13 1.6 4.45 3.28 9 5.01 13.57l-.67.12v.01Zm5.83-18.27-.15-.54c-.49-1.64-1.03-3.28-1.6-4.9.23.58.47 1.17.7 1.75 1.56 4.03 3.01 8.1 4.39 12.2-.33-.82-.67-1.64-.98-2.46l-2.35-6.05h-.01ZM390.43 79.37c-.13-10.43-.22-17.5-.24-19.97-.24-1.6.21-2.88-.65-3.65-.14-.13-.32-.23-.52-.32h.03c.45 0 .45-.69 0-.7-1.75-.03-3.5-.04-5.25-.14-1.38-.08-2.76-.21-4.15-.31-.07 0-.12.01-.17.04-.21-.07-.47.03-.45.31l.03.45c-.11.14-.19.3-.22.5-.21 1.26-.32 13.67-.36 23.59-.32 5.79-.67 11.57-.97 17.36-.09 1.73-.29 3.54-.21 5.3-.39.02-.38.64.04.69v.12c.05.44.74.45.7 0v-.06c1.1.09 2.2.21 3.3.3 1.14.19 2.44.2 3.29.17 1.73-.05 2.92-.05 3.8-.37.45-.05.9-.11 1.35-.17.44-.06.25-.73-.19-.67h-.01c.24-.32.45-.72.62-1.25.66-1.84.41-6.36.34-11.33l-.13-9.9.02.01Zm-12.26 18.17c.09-1.91.2-3.81.31-5.71.06 5.38 0 6.14-.01 6.51-.05 1.65-.21 2.81.72 3.66-.39-.04-.78-.07-1.17-.1-.06-1.44.09-2.93.16-4.35l-.01-.01ZM588.97 53.85c-2.06-.25-3.17-.51-3.76-.6a.3.3 0 0 1 .04-.08c.22-.39-.39-.75-.6-.35-.56 1.02-.9 2.19-1.26 3.29-.61 1.88-1.17 3.78-1.72 5.68-.63 2.19-1.24 4.39-1.83 6.59-.81 2.03-1.67 4.05-2.61 6.03-1.7-3.64-3.11-6.04-4.03-7.57-2.26-3.74-2.85-5.48-3.57-6.08l.31-.09c.43-.12.25-.8-.19-.67-1.06.3-2.12.6-3.17.95-.93.32-1.85.69-2.76 1.07-.13.05-.19.16-.22.27-.04.02-.08.05-.11.07-.04-.06-.07-.12-.11-.18a.354.354 0 0 0-.48-.12c-.16.09-.22.32-.13.48l.33.54c0 .09.02.18.06.28.51 1.16.78 1.38.72 1.47-2.42 3.44-5.41 7.86-6.2 9.1-1.27 1.97-2.01 3.14-2.45 3.84l-.91-6.56-.43-4.1c-.19-1.85-.37-3.23-.53-4.13-.19-1.1-.3-2.15-.45-3.16-.2-1.36-.29-2.06-.47-2.42h.04c.45.02.45-.68 0-.7-3.43-.16-6.81.94-10.17 1.48-.24-.22-.73-.04-.58.32.24.59.33 1.25.43 1.87.17 1.06.29 2.13.4 3.2.32 3.09.53 6.2.74 9.3.44 6.75.77 13.51 1.17 20.26.11 1.95.13 3.96.46 5.89.05.3.37.31.55.14.74 1.71 2.87 1.27 6.13 1.27 1.34 0 2.39.04 2.99-.11.02.32.48.53.63.18 3.61-8.26 7.41-16.46 12.05-24.2.03-.05.04-.1.05-.15.3.73.64 1.45.94 2.16.97 2.26 1.97 4.52 2.98 6.76 2.26 5.03 4.54 10.07 7.09 14.96.47.9.94 1.79 1.47 2.65.2.32.4.67.66.96-.18.25 0 .68.34.54.91-.38 1.82-.75 2.76-1.07 1.04-.35 2.11-.65 3.17-.95.39-.11.28-.66-.07-.68.62-.4.95-.96.87-1.91-.3-3.34.72-7.47.86-8.52l2.14-11.43c1.75-10.74 3.13-17.51 3.23-20.86.02-.49.08-2.84.13-3.24.17-1.25.48-1-4.96-1.65l.03-.02Zm-46.19 5.67c-.04-.24-.09-.48-.15-.71l.85-.15c-.34.24-.56.53-.7.86Zm1.95 25.12c-.36-6.63-.7-13.26-1.32-19.87 0 .02 0 .04.01.06.29 1.65.44 2.47.56 2.89 1 8.46 1.5 16.14 1.46 22.8-.06.99-.1 2-.11 3.02-.01.29-.03.68-.05 1.12-.01-.26-.03-.53-.04-.78-.19-3.08-.35-6.16-.52-9.23l.01-.01Zm36.4 18.66c-.11-.11-.24-.29-.37-.49.35.21.74.26 1.17.16-.27.11-.53.22-.8.32v.01Zm-.89-33.72c.12-.43.23-.86.35-1.29.71-1.77 1.41-3.55 2.08-5.33-.15.68-.26 1.22-.31 1.55-.5 2.94-2.13 7.59-3.58 13.36-.15-.35-.29-.66-.43-1 .61-2.44 1.25-4.87 1.9-7.3l-.01.01Zm3.56-12.48c.14-.44.28-.89.42-1.34-.13.7-.27 1.41-.42 2.11-.43 1.19-.86 2.38-1.31 3.57.42-1.45.85-2.9 1.31-4.34Zm-5.22 16.05c-.11.44-.23.87-.35 1.31-.12.46-.23.92-.35 1.38-.1-.22-.19-.4-.28-.61.34-.69.66-1.38.97-2.08h.01Zm-11.64 2.62c.06-.1.12-.19.17-.28.05.13.09.26.14.39a.398.398 0 0 0-.31-.11Zm2.3 2.98c-.56-1.3-1.25-2.63-1.65-3.99 0 0 .01-.02.02-.02.06.08 1.52 2.93 1.63 3.08.73 1.13 3.38 7.04 5.67 12.26 1.2 2.73 2.08 5.17 2.83 7.18-.62-1.25-1.23-2.51-1.83-3.78-2.31-4.87-4.53-9.78-6.67-14.73ZM275.92 87.03c-1.06-2.18-1.13-3.45-2.44-2.93-1.52.57-2.94 1.3-4.5 2.1-1.4.72-2.68 1.44-3.92 2.12.01-.25-.24-.5-.51-.34-4.8 2.93-12.41 4.7-17.28 1.31-1.98-1.77-3.32-4.15-3.97-5.78-.29-.95-.49-1.94-.63-2.93-.14-3.34 1.58-6.53 3.9-9.12.8-.79 1.68-1.51 2.66-2.12 3.7-2.3 8.22-3.07 12.51-2.51 2.71.35 5.32 1.24 7.71 2.55.39.22.75-.39.35-.6-.18-.1-.37-.18-.55-.27.56.27 1.03.33 1.51.19l-.48.39c-.15.11-.23.3-.13.48.09.15.33.24.48.13 1.3-.97 2.46-2.09 3.45-3.37.37-.29.64-.6.65-.97v-.02c.08-.33-.03-.7-.21-1.08-.31-.87-.98-2.01-2.19-3.26-2.43-2.52-3.79-3.45-5.68-4.26-1.14-.49-3.12-1.06-4.42-1.23-3.28-.42-10.64-1.21-18.18 4.11-7.74 5.46-11.94 12.3-12.23 20.61-.08 2.06.04 3.98.34 5.71.74 4.18 2.57 8 5.44 11.34 4.26 4.99 9.76 7.52 16.34 7.52 4.85 0 9.69-1.77 14.89-4.62.23-.12.45-.23.68-.35 2.19-1.1 4.37-2.23 6.46-3.5.49-.3 1.03-.61 1.5-.98 1.47-.87 1.11-1.12.49-2.95-.39-1.14-.76-2.7-2.06-5.36l.02-.01Zm-17.38-21.76c3.05-.42 6.31.79 9.36 2.35.51.39.94.68 1.33.87-5.61-2.86-12.72-3.39-18.44-.79 2.05-1.33 4.24-1.95 7.74-2.44l.01.01ZM443.67 72.67c-.4-2.2-1.15-4.33-2.37-6.22-1.49-2.32-3.58-4.19-5.91-5.64-6.17-3.81-13.75-5.11-20.83-6.01-3.23-.41-6.47-.69-9.72-.92l-1.39-.12c-.85-.07-1.52-.1-2.05-.1-1.08-.06-2.17-.12-3.25-.17-.08 0-.14.02-.19.05-.1.05-.18.14-.16.3.27 2.55-.01 5.12-.92 7.52-.15.38.4.56.62.28 1.32.59 2.68 1.05 4.08 1.37 0 2.78-.14 7.58-.33 12.91 0 0 0 .02-.01.03-.61 3.66-.79 7.42-1 11.12-.23 4.01-.43 8.03-.44 12.05 0 .64 0 1.28.03 1.93.02.31 0 .68.15.96.06.11.14.16.24.17-.2.17-.21.54.11.59 3.83.67 7.78.71 11.68.25 2.3-.19 4.87-.65 7.65-1.56 1.85-.54 3.67-1.18 5.43-1.91 7.2-3.02 14.31-8.07 17.35-15.53.76-1.86 1.17-3.8 1.31-5.75.3-1.93.28-3.82-.09-5.58l.01-.02Zm-19.32-15.42c5.74 1.41 11.94 3.68 15.65 8.55.25.32.47.65.69.99-2.3-2.82-5.68-5.69-12.88-8.23-2.16-.76-4.35-1.43-6.64-2.02 1.06.21 2.13.45 3.18.71Zm-25.82-3.04c.13 0 .27.01.4.02-.14.1-.26.23-.37.38 0-.13-.02-.26-.03-.4Zm34.82 22.17c-.75 3.09-3.55 5.66-5.88 7.58-3.35 2.76-7.21 5.03-11.28 6.54-1.33.49-2.71.9-4.12 1.15.06-1.38.08-2.76.07-4.13-.02-3.78-.16-7.56-.41-11.33-.09-1.37-.18-2.74-.37-4.1 0-.06-.03-.11-.06-.15.09-3.25.12-6.16.03-8.12 6.86 1.05 10.56 2.17 14.06 3.62 5.52 2.28 8.59 5.44 7.97 8.96l-.01-.02Zm-22 16.15c-.12 0-.23-.02-.34-.03l.34-.03v.06Zm-.69-.7c0-3.13.26-8.84.47-14.51.06 1.2.11 2.41.15 3.6.15 3.6.25 7.23.09 10.83-.24.03-.48.05-.71.07v.01Zm-12.33-30.94c.37.63 2.01 1.01 3.23 1.25v.15c-1.31-.31-2.59-.73-3.83-1.29.12-.36.23-.72.33-1.09.08.48.18.84.27.98Zm13.7 31.65v-.18c3.41-.56 6.71-2.02 9.69-3.68 2.31-1.28 4.59-2.78 6.63-4.53-4.69 4.53-11.61 8.24-16.33 8.38l.01.01Zm24.07-.75c-2.05 1.93-4.37 3.56-6.83 4.95 2.7-1.78 5.52-4.03 8.42-6.87.82-.82 1.56-1.69 2.23-2.59-1.08 1.65-2.38 3.16-3.81 4.51h-.01ZM187.16 92.14c-.79-2.47-2.1-7.12-3.1-6.87-.19-.01-2.09.77-4.08 1.54-3.06 1.18-5.91 2.13-10.09 2.82-2.74.42-5.87 1.01-10.61 1.06.04-3.34.05-6.01.05-7.99 7.97-.65 12.33-2.11 16.37-3.55 1.11-.39 2.69-1.01 2.63-1.8-.08-.35-.55-1.39-1.17-2.61-.47-1.16-.98-2.31-1.61-3.38-.42-.71-1.04-1.69-1.86-2.06-.11-.08-.22-.13-.29-.12-.02 0-.04 0-.07.01-.19-.04-.39-.05-.6-.01-.17.03-.24.15-.25.28-.04.02-.09.04-.14.05-4.33 1.48-8.85 2.33-13.24 3.61a499.1 499.1 0 0 0-.31-8.19c4.51-.99 8.88-1.38 13.11-1.82 3.68-.38 6.28.12 7.47.34.59.11.9.16 1.16.18h.1c-.1.37.44.66.62.28.02-.04.03-.08.05-.13.15.2.53.22.62-.1.17-.58.19-1.21.21-1.81v-.36c.03-.15.05-.3.07-.45.52-2.47.33-5.09-.64-7.44-.11-.27-.44-.28-.6-.14-.08-.21-.15-.42-.24-.62-.19-.41-.79-.05-.6.35.03.07.05.15.09.22-.98-.42-2.15-.54-3.17-.63-2.17-.19-4.37-.14-6.54 0-5.7.35-11.4 1.3-16.91 2.79-2.08.56-4.13 1.22-6.14 2-4.54 1.05-3.79 1.51-2.17 6.07.18.51.46 1.68.54 1.94.82 2.47 1.08 2.13 3.1 2.13s0 .05 0 .08h.52c-.48 2.66-.51 5.45-.62 8.13-.15 3.48-.22 6.96-.28 10.45 0 .41-.01.82-.02 1.23-.16.29-.33.57-.51.85-.05.38-.09.77-.14 1.18-.42 3.52-.59 6.48-.52 8.8v.34c.02.47.05.76.06.87.16 1.57-.26 3.47 1.35 3.79 1.61.32 3.5.55 4.85.55.11 0 .22-.02.33-.02 1.79.24 3.67.05 5.45-.12 2.85-.28 5.69-.7 8.51-1.19 3.03-.53 6.05-1.14 9.04-1.86 2.4-.58 4.82-1.19 7.13-2.06.51-.19 1.73-.57 2.46-1.14 1.81-.68 2.18-1 1.57-2.67-.23-.62-.48-1.49-.91-2.78l-.03-.02Zm-11.12-38.71c.89.05 1.93.08 2.89.3-.33 0-.68-.02-1.06-.03-8.28-.26-14.88.75-23.97 2.51 2.41-.64 4.85-1.16 7.28-1.59 4.87-.86 9.91-1.45 14.86-1.19Zm-26.53 22.13c.03 1.71.04 3.43 0 5.14-.04 1.27-.11 2.55-.24 3.82 0-.73.02-1.46.04-2.19.05-2.26.12-4.51.22-6.77h-.02Zm6.73 27.85c.2-.1.4-.21.58-.33 1.82-.17 3.82-.24 5.94-.34-.86.11-1.72.24-2.58.33-1.27.14-2.61.31-3.93.34h-.01ZM534.48 85.44c-3.52-8.38-7.07-16.75-10.5-25.17-.63-1.54-1.25-3.09-1.86-4.65-.31-.8-.65-1.6-.87-2.43-.04-.17-.17-.24-.31-.25.1-.2 0-.51-.29-.53-1.59-.08-3.18-.22-4.78-.25-1.96-.03-3.91.13-5.84.42-.31.05-.31.38-.13.56-.03.06-.05.14-.04.22.23 1.54.63 3.06 1.16 4.53.13.35.27.7.41 1.06l-2.68 6.18c-.11.03-.2.09-.25.22-.67 1.9-1.52 3.73-2.34 5.56a536.85 536.85 0 0 1-3.9 8.45c-2.64 5.64-5.34 11.25-7.91 16.93-.44.97-.88 1.94-1.29 2.93-.2.48-.47 1-.55 1.52v.05c-.02.12.02.26.16.34 1.19.73 2.41 1.41 3.66 2.05 1.2.62 2.45 1.25 3.76 1.61.43.12.62-.55.19-.67-1.13-.31-2.2-.83-3.24-1.36 1.09.36 2.1.69 2.75.93 2.82 1.01 2.38 1.1 4.3-3.75 2.1-1.09 4.34-1.96 6.53-2.79 4.35-1.64 8.8-3.03 13.27-4.29.82 2.01 1.77 3.97 2.72 5.92.35.83.62 1.45.79 1.82.22.42.45.8.69 1.15.17.33.33.67.5 1 .42.8.84 1.63 1.4 2.35.23.29.6 0 .55-.31 1.53-.02 3.06-.07 4.58-.27.92-.12 1.82-.32 2.71-.54 1.39-.27 3.85-1.11 3.74-1.42-.67-1.96-1.55-3.87-2.34-5.78-1.57-3.78-3.16-7.56-4.75-11.33v-.01Zm-11.65-26.16c1.54 3.81 3.12 7.6 4.7 11.4 2.94 7.05 5.91 14.09 8.87 21.13l-1.06-2.17c-2.71-5.51-5.2-11.19-7.41-16.87l-6.65-17.15c-.65-1.45-.55-2.19-.93-2.53.09 0 .18.01.28.02a.29.29 0 0 0-.04.26c.52 2.02 1.47 3.98 2.25 5.91h-.01Zm-6.58 13.58c.05-.15.09-.31.14-.46 1.41 3.92 2.88 7.9 4.39 11.87-3.22.52-6.38 1.25-9.46 2.14.55-1.22 1.05-2.46 1.53-3.7 1.24-3.24 2.37-6.53 3.39-9.85h.01Zm-.23-20c.36 0 .73.03 1.09.05-2.15.1-5.18.33-5.87.74-.24.15-.41.3-.53.45-.06-.29-.13-.58-.18-.88 1.82-.26 3.65-.39 5.49-.35v-.01Zm-.09 18.72c-.49 1.67-1.05 3.33-1.6 4.97-1.07 3.19-2.19 6.38-3.57 9.46-.09.21-.19.43-.29.65-.25.07-.5.14-.74.22 2.53-6.16 4.61-11.29 6.2-15.3Zm-6.34 25.16c4.97-2.38 9.37-4.1 14.02-5.27l.26.64c-4.8 1.35-9.63 2.8-14.28 4.63Zm20.17 6.76c.33.23.68.42 1.04.56h-.33c-.12 0-.21.06-.26.13-.15-.23-.31-.45-.45-.7v.01ZM226.57 91.75c-3.55-4.74-6.68-9.11-9.31-12.99 9.2-15.25 10.05-17.81 10.35-18.38.17-.34 1.09-2.27.64-2.53-1.13-.65-1.03-.65-2.97-1.71-1.19-.65-3.04-1.61-4.53-2.12-1.71-.59-1.24-.36-3 2.77-.06.1-.11.2-.17.3-.75 1.02-1.48 2.05-2.2 3.09-1.88 2.71-3.73 5.45-5.69 8.1-3.68-4.91-6.88-8.76-9.51-11.43-.15-.15-.3-.29-.46-.42-1.27-1.28-7.24 3.53-7.93 5.58-.09.09-.19.16-.28.25-.27.26.03.64.33.58.19.65.5 1.29.94 1.91 3.85 5.06 7.19 9.76 9.94 14-1.23 2.61-3.06 5-4.67 7.38l-2.28 3.33c-.5.66-.93 1.23-1.29 1.69-.67.93-2.09 2.61-2.3 3.87-.51.85-1.16 1.84-1.29 2.83-.06.44.61.63.67.19.01-.08.04-.15.06-.22 1.36 1.08 2.76 2.11 4.19 3.11 1.3.91 2.62 1.85 4.04 2.56.21.1.4 0 .48-.17.24.07.48.14.72.2.44.1.62-.57.19-.67-2.02-.48-3.77-1.57-5.23-3.02-.47-.46-.9-.96-1.32-1.46 1.74 1.35 4.2 2.89 5.89 4.14 1.39 1.03 2.85-2.27 4.22-4.2 1.86-2.64 3.96-5.86 5.52-8.29l10.39 14.51c.67.81 1.14 1.21 1.57 1.36-.05.24.12.51.41.4 1.53-.58 3.05-1.19 4.54-1.87 1.52-.69 3.06-1.45 4.36-2.5a.28.28 0 0 0 .12-.23c1.66-1.1.81-1.74-1.41-4.91-1.13-1.58-1.71-2.36-3.7-5.01l-.03-.02Zm2.41 6.54c.56 1.15 1.19 2.52 1.11 3.81-.06.04-.12.07-.17.1-.03-.88-.55-2.66-.94-3.91Zm-16.51-32.73c1.86-2.65 3.65-5.35 5.57-7.95.4-.55.81-1.13 1.26-1.66.19-.18.38-.33.56-.45.18.03.36.08.55.13l-8.05 10.11.12-.18h-.01ZM192.7 95.48c.79-1.37 1.66-2.69 2.54-4 1.19-1.79 2.4-3.56 3.61-5.33-.04.09-.09.17-.13.26-.1.22.03.41.2.49-2.47 3.42-4.89 6.73-6.4 9.28.21.24.4.48.63.75-.24.07-.4.36-.17.56.4.33.72.77 1.05 1.17.09.11.18.21.27.32-.84-.61-1.66-1.24-2.47-1.88.24-.57.58-1.11.87-1.61v-.01Zm7.46-10.32c.47-.81.98-1.59 1.49-2.37.31-.48.64-.95.96-1.43.26-.29.52-.56.75-.79-.99 1.48-2.09 3.03-3.2 4.59Zm10.03-16.22s-.03-.05-.05-.07c.22-.29.43-.59.64-.89-.2.32-.4.65-.58.96h-.01ZM371.54 87.96c-.01-.08-.01-.16-.03-.23-.06-.38-.58-.29-.66.03-.3-.05-.6-.08-.81-.11-1.14-.15-2.29-.19-3.44-.2 1.04-.09 2.09-.18 3.14-.23.45-.02.45-.72 0-.7-6.57.35-13.14 1.23-19.65 2.11-1.53.21-3.05.42-4.57.68-.01 0-.02.01-.04.01-.04-3.33-.13-6.66-.24-9.99-.19-5.7-.4-11.41-.88-17.1-.13-1.51-.23-3.07-.49-4.58 0-.25 0-.48-.02-.68-.06-1.19-.04-2.61-.68-2.78-.16-.07-.72-.16-1.5-.24.22-.17.16-.62-.2-.63-1.19-.04-2.39.09-3.57.23-1.2.14-2.41.32-3.59.6-.16-.1-.41-.06-.5.12-.06.02-.13.03-.19.05-.35.1-.29.55-.03.66-.26.6-.19 2.27-.21 3-.02.66-.66 33.73-.9 40.3-.03.65.06 1.12.04 1.45-.16 3.05.87 4.96 6.34 3.93 1.09-.08 2.75-.77 5.36-1.43 4.13-1.04 5.78-1.52 6.2-1.65 6.43-1.69 6.78-1.97 11.72-2.43.55-.05 4.8-.38 6.03-.3.64.04 1.19.07 1.65.1.09 0 .16-.03.24-.05.1.27.56.33.66-.02.39-1.32.61-2.71.78-4.08.2-1.61.29-3.24.15-4.86.24.03.52-.23.38-.53-.09-.2-.27-.33-.49-.43v-.02Zm-.63.56c.07.57.11 1.14.11 1.71-.21-.99-.53-1.71-.95-1.87.22.03.44.06.65.11.06.01.12.04.19.05Zm-25.41 1.73c1.54-.36 3.1-.64 4.66-.89-1.61.37-3.18.77-4.66 1.2v-.31Zm-.86-7.37c-.07-1.37-.16-2.75-.25-4.12-.21-3.13-.45-6.27-.79-9.4.02-2.25.08-4.31.13-6.11.16 2.08.29 4.16.4 6.24.23 4.46.38 8.93.5 13.39h.01Zm-.94-4c.16 2.41.29 4.83.39 7.24.06 1.6.14 3.22.09 4.83-.15.05-.32.09-.47.14V78.88h-.01ZM483.72 92.83c-3.05-2.28-6.22-4.4-9.38-6.51 8.86-6.49 13.49-12.95 13.73-19.23.04-.76 0-1.5-.13-2.2-.67-3.82-3.5-6.68-8.39-8.48.13.04.27.08.4.13 3.92 1.39 7.74 4.23 8.5 8.56.34 1.95-.05 3.96-.98 5.69-.21.4.39.75.6.35 1.86-3.46 1.46-7.55-.97-10.63-3.53-4.47-9.76-5.88-15.16-6.16-2.32-.12-4.64-.04-6.95.19-6 .32-12.71 1.68-17.63 3.21-.37.11-.67.23-.92.35-.2-.17-.62.02-.57.37v.03c-.64.68-.18 1.64.48 3.21.38.91.67 1.89 1.15 2.58.32.76.68 1.51 1.13 2.19.14.21.38.19.53.07.19-.02.38-.05.57-.08v1.57c-.06.06-.1.13-.11.23-.27 4.18-.34 8.38-.48 12.57l-.3 9.03c-.24 3.91-.44 6.77-.46 7.26-.05.88-.11 1.95.07 2.81-.01.22-.02.43-.04.65 0 .11-.02.23-.03.35 0 .05-.03.27-.01.16-.05.4.5.59.64.28.05.04.12.08.2.08 1.75.13 3.5.28 5.25.3 1.69.02 3.38-.12 5.06-.32.08.23.36.39.55.15.06-.08.11-.17.16-.26.18-.09.24-.32.18-.48.05-.2.1-.4.13-.6.16-.86.25-1.74.33-2.62.11-1.17.17-2.34.23-3.51.15-.01.32-.03.52-.04.36-.03 1.73-.15 2.06-.15.39 0 .7-.02.95-.04 1.76 1.11 3.45 2.35 5.14 3.55 2.83 2.01 5.64 4.04 8.47 6.04 1.42 1 2.85 2 4.29 2.97.1.06.19.07.27.04.08 0 .17-.02.25-.1 1.61-1.56 3.15-3.18 4.6-4.88.75-.88 1.49-1.78 2.15-2.73.01.01.03.02.04.03.34.3.83-.2.49-.49-2.16-1.9-4.34-3.76-6.64-5.48l.03-.01Zm-6.38-3.65a55.72 55.72 0 0 0-4-2.13c.14-.1.26-.19.4-.29 1.2.81 2.4 1.61 3.6 2.42Zm-20.1 11.78c.67-.37 1.23-.91 1.67-1.6-.11.5-.24 1-.38 1.49-.43.04-.86.08-1.29.11Zm2.38-37.24c1.34-.31 2.56-.52 3.71-.69-1.03.19-2.04.41-3.04.65-.14-.07-.34-.02-.45.11-.07.02-.15.04-.22.05v-.13.01Zm.04.84c.07-.02.14-.03.2-.05.34 1.66.41 3.41.5 5.09.17 2.9.24 5.81.28 8.71l.03 3.17c-.17.07-.34.14-.51.2-.06-4.96-.21-10.58-.51-17.12h.01Zm16.04 5.62c-1.16 2.25-3.06 4.1-5.02 5.66-2.8 2.23-5.99 3.97-9.3 5.35-.01-3.56-.09-7.12-.27-10.67-.1-2.04-.16-4.16-.57-6.18 3.3-.78 6.72-1.36 10.1-1.1 1.85.14 4.23.59 5.32 2.29.92 1.43.46 3.24-.26 4.65Zm.85-.18c.6-1.37.9-2.92.28-4.32-.67-1.52-2.2-2.32-3.76-2.74.46.1.89.21 1.29.37 1.74.67 2.69 1.88 2.93 3.21.2 1.13-.05 2.25-.74 3.47V70Zm-27.47-4.14c-.12-.19-.23-.38-.34-.57.74.42.85.36.99.41v.08c-.22.03-.43.06-.65.08Zm11.21 30.46c-.08 1.08-.16 2.17-.33 3.24-.05.35-.11.69-.2 1.03 0 .04-.02.07-.03.11-.15.02-.3.04-.45.05.45-1.64.76-3.36.79-5.07.03-.29.08-.57.1-.89-.03-.31-.03-.47.24-.57-.04.69-.07 1.39-.12 2.08v.02Zm5.6-2.47c.48.11.92.52 2.49 1.72-.46-.32-.92-.65-1.38-.97-.37-.25-.73-.5-1.1-.75h-.01Zm21.23 7.24a70.76 70.76 0 0 1-4.37 4.63c-.14-.09-.27-.19-.4-.28.19-.09.37-.24.55-.47.87-1.14 5.43-5.51 5.49-7.45.31.26.62.53.92.79-.67.97-1.42 1.88-2.19 2.77v.01Z",fill:"currentColor",transform:"translate(-144.023 -51.76)"})]}),FG=({style:e,size:t="small",withText:a})=>(0,Fn.jsxs)("div",{className:`ExcalidrawLogo is-${t}`,style:e,children:[(0,Fn.jsx)(jG,{}),a&&(0,Fn.jsx)(HG,{})]}),Tw=({icon:e,shortcut:t,children:a})=>{let n=Bt();return(0,ze.jsxs)(ze.Fragment,{children:[(0,ze.jsx)("div",{className:"welcome-screen-menu-item__icon",children:e}),(0,ze.jsx)("div",{className:"welcome-screen-menu-item__text",children:a}),t&&!n.editor.isMobile&&(0,ze.jsx)("div",{className:"welcome-screen-menu-item__shortcut",children:t})]})};Tw.displayName="WelcomeScreenMenuItemContent";var Ym=({onSelect:e,children:t,icon:a,shortcut:n,className:i="",...r})=>(0,ze.jsx)("button",{...r,type:"button",className:`welcome-screen-menu-item ${i}`,onClick:e,children:(0,ze.jsx)(Tw,{icon:a,shortcut:n,children:t})});Ym.displayName="WelcomeScreenMenuItem";var WI=({children:e,href:t,icon:a,shortcut:n,className:i="",...r})=>(0,ze.jsx)("a",{...r,className:`welcome-screen-menu-item ${i}`,href:t,target:"_blank",rel:"noreferrer",children:(0,ze.jsx)(Tw,{icon:a,shortcut:n,children:e})});WI.displayName="WelcomeScreenMenuItemLink";var Ti=({children:e})=>{let{WelcomeScreenCenterTunnel:t}=Ua();return(0,ze.jsx)(t.In,{children:(0,ze.jsx)("div",{className:"welcome-screen-center",children:e||(0,ze.jsxs)(ze.Fragment,{children:[(0,ze.jsx)(_w,{}),(0,ze.jsx)(kw,{children:w("welcomeScreen.defaults.center_heading")}),(0,ze.jsxs)(Mw,{children:[(0,ze.jsx)(Dw,{}),(0,ze.jsx)(Aw,{})]})]})})})};Ti.displayName="Center";var _w=({children:e})=>(0,ze.jsx)("div",{className:"welcome-screen-center__logo excalifont welcome-screen-decor",children:e||(0,ze.jsx)(FG,{withText:!0})});_w.displayName="Logo";var kw=({children:e})=>(0,ze.jsx)("div",{className:"welcome-screen-center__heading welcome-screen-decor excalifont",children:e});kw.displayName="Heading";var Mw=({children:e})=>(0,ze.jsx)("div",{className:"welcome-screen-menu",children:e});Mw.displayName="Menu";var Aw=()=>{let e=qa();return(0,ze.jsx)(Ym,{onSelect:()=>e.executeAction(iw),shortcut:"?",icon:xp,children:w("helpDialog.title")})};Aw.displayName="MenuItemHelp";var Dw=()=>{let e=ta(),t=qa();return e.viewModeEnabled?null:(0,ze.jsx)(Ym,{onSelect:()=>t.executeAction(Cx),shortcut:Ea("loadScene"),icon:Ep,children:w("buttons.load")})};Dw.displayName="MenuItemLoadScene";var JI=({onSelect:e})=>{let{t}=Sa();return(0,ze.jsx)(Ym,{shortcut:null,onSelect:e,icon:_0,children:t("labels.liveCollaboration")})};JI.displayName="MenuItemLiveCollaborationTrigger";Ti.Logo=_w;Ti.Heading=kw;Ti.Menu=Mw;Ti.MenuItem=Ym;Ti.MenuItemLink=WI;Ti.MenuItemHelp=Aw;Ti.MenuItemLoadScene=Dw;Ti.MenuItemLiveCollaborationTrigger=JI;var Iw=({children:e})=>{let{WelcomeScreenMenuHintTunnel:t}=Ua();return(0,Si.jsx)(t.In,{children:(0,Si.jsxs)("div",{className:"excalifont welcome-screen-decor welcome-screen-decor-hint welcome-screen-decor-hint--menu",children:[V3,(0,Si.jsx)("div",{className:"welcome-screen-decor-hint__label",children:e||w("welcomeScreen.defaults.menuHint")})]})})};Iw.displayName="MenuHint";var Nw=({children:e})=>{let{WelcomeScreenToolbarHintTunnel:t}=Ua();return(0,Si.jsx)(t.In,{children:(0,Si.jsxs)("div",{className:"excalifont welcome-screen-decor welcome-screen-decor-hint welcome-screen-decor-hint--toolbar",children:[(0,Si.jsx)("div",{className:"welcome-screen-decor-hint__label",children:e||w("welcomeScreen.defaults.toolbarHint")}),Z3]})})};Nw.displayName="ToolbarHint";var Lw=({children:e})=>{let{WelcomeScreenHelpHintTunnel:t}=Ua();return(0,Si.jsx)(t.In,{children:(0,Si.jsxs)("div",{className:"excalifont welcome-screen-decor welcome-screen-decor-hint welcome-screen-decor-hint--help",children:[(0,Si.jsx)("div",{children:e||w("welcomeScreen.defaults.helpHint")}),X3]})})};Lw.displayName="HelpHint";var Rw=e=>(0,fi.jsx)(fi.Fragment,{children:e.children||(0,fi.jsxs)(fi.Fragment,{children:[(0,fi.jsx)(Ti,{}),(0,fi.jsx)(Iw,{}),(0,fi.jsx)(Nw,{}),(0,fi.jsx)(Lw,{})]})});Rw.displayName="WelcomeScreen";Rw.Center=Ti;Rw.Hints={MenuHint:Iw,ToolbarHint:Nw,HelpHint:Lw};var YG=({isCollaborating:e,onSelect:t,...a})=>{let n=ta(),i=n.width<830;return(0,$g.jsxs)(hs,{...a,className:U("collab-button",{active:e}),type:"button",onSelect:t,style:{position:"relative",width:i?void 0:"auto"},title:w("labels.liveCollaboration"),children:[i?c5:w("labels.share"),n.collaborators.size>0&&(0,$g.jsx)("div",{className:"CollabButton-collaborators",children:n.collaborators.size})]})};YG.displayName="LiveCollaborationTrigger";var see=(0,e7.default)((e,t,a)=>{if(Ft.DEV||Ft.MODE===Wd.TEST||window?.DEBUG_FRACTIONAL_INDICES){let n=ic(e.map(i=>({...i})));DT(n,{shouldThrow:Ft.DEV||Ft.MODE===Wd.TEST,includeBoundTextValidation:!0,reconciliationContext:{localElements:t,remoteElements:a}})}},1e3*60,{leading:!0,trailing:!1});var GG=({children:e,icon:t})=>{let{TTDDialogTriggerTunnel:a}=Ua(),n=Mt();return(0,Bm.jsx)(a.In,{children:(0,Bm.jsxs)(Pe.Item,{onSelect:()=>{Oe("ai","dialog open","ttd"),n({openDialog:{name:"ttd",tab:"text-to-diagram"}})},icon:t??nC,children:[e??w("labels.textToDiagram"),(0,Bm.jsx)(Pe.Item.Badge,{children:"AI"})]})})};GG.displayName="TTDDialogTrigger";UG();var VG=e=>{let{onChange:t,initialData:a,excalidrawAPI:n,isCollaborating:i=!1,onPointerUpdate:r,renderTopRightUI:l,langCode:o=$c.code,viewModeEnabled:d,zenModeEnabled:h,gridModeEnabled:s,libraryReturnUrl:c,theme:u,name:m,renderCustomStats:p,onPaste:f,detectScroll:y=!0,handleKeyboardGlobally:g=!1,onLibraryChange:b,autoFocus:v=!1,generateIdForFile:x,onLinkOpen:E,generateLinkForSelection:S,onPointerDown:C,onPointerUp:_,onScrollChange:D,onDuplicate:k,children:I,validateEmbeddable:j,renderEmbeddable:z,aiEnabled:G,showDeprecatedFonts:O}=e,P=e.UIOptions?.canvasActions,W={...e.UIOptions,canvasActions:{...Fv.canvasActions,...P},tools:{image:e.UIOptions?.tools?.image??!0}};return P?.export&&(W.canvasActions.export.saveFileToDisk=P.export?.saveFileToDisk??Fv.canvasActions.export.saveFileToDisk),W.canvasActions.toggleTheme===null&&typeof u>"u"&&(W.canvasActions.toggleTheme=!0),(0,sg.useEffect)(()=>{(async()=>await import("./chunks/roundRect-6E7DSTEN.js"))();let V=X=>{typeof X.scale=="number"&&X.scale!==1&&X.preventDefault()};return document.addEventListener("touchmove",V,{passive:!1}),()=>{document.removeEventListener("touchmove",V)}},[]),(0,eg.jsx)(LU,{store:gi,children:(0,eg.jsx)(BU,{langCode:o,theme:u,children:(0,eg.jsx)(zG,{onChange:t,initialData:a,excalidrawAPI:n,isCollaborating:i,onPointerUpdate:r,renderTopRightUI:l,langCode:o,viewModeEnabled:d,zenModeEnabled:h,gridModeEnabled:s,libraryReturnUrl:c,theme:u,name:m,renderCustomStats:p,UIOptions:W,onPaste:f,detectScroll:y,handleKeyboardGlobally:g,onLibraryChange:b,autoFocus:v,generateIdForFile:x,onLinkOpen:E,generateLinkForSelection:S,onPointerDown:C,onPointerUp:_,onScrollChange:D,onDuplicate:k,validateEmbeddable:j,renderEmbeddable:z,aiEnabled:G!==!1,showDeprecatedFonts:O,children:I})})})},XG=(e,t)=>{if(e.children!==t.children)return!1;let{initialData:a,UIOptions:n={},...i}=e,{initialData:r,UIOptions:l={},...o}=t,d=Object.keys(n),h=Object.keys(l);return d.length!==h.length?!1:d.every(s=>s==="canvasActions"?Object.keys(n.canvasActions).every(c=>c==="export"&&n?.canvasActions?.export&&l?.canvasActions?.export?n.canvasActions.export.saveFileToDisk===l.canvasActions.export.saveFileToDisk:n?.canvasActions?.[c]===l?.canvasActions?.[c]):n[s]===l[s])&&Dn(i,o)},Ow=sg.default.memo(VG,XG);Ow.displayName="Excalidraw";var Ni=T(R(),1),rO=T(tO(),1),$h=T(N(),1);window.EXCALIDRAW_ASSET_PATH=new URL("./",import.meta.url).pathname;var aO=1200;function nO(){let e=document.documentElement.dataset.theme;return e==="dark"||e!=="light"&&matchMedia("(prefers-color-scheme: dark)").matches}async function iO(e){let t=await fetch(`/api/documents/${encodeURIComponent(e)}/file`);if(!t.ok)throw new Error(`cannot read ${e}`);let{text:a}=await t.json();return{text:a,data:a.trim()?JSON.parse(a):{}}}function QX(e){return new Promise((t,a)=>{let n=new FileReader;n.onload=()=>t(String(n.result).replace(/^data:[^,]*,/,"")),n.onerror=()=>a(n.error),n.readAsDataURL(e)})}function WX({host:e,docKey:t,file:a}){let[n,i]=(0,Ni.useState)(),[r,l]=(0,Ni.useState)(),o=(0,Ni.useRef)(null),d=(0,Ni.useRef)({text:"",hash:0}),h=(0,Ni.useRef)(void 0),s=(0,Ni.useRef)(!1),c=(0,Ni.useRef)(!1);(0,Ni.useEffect)(()=>{iO(t).then(({text:f,data:y})=>{d.current={text:f,hash:lc(y.elements??[])},i({elements:y.elements??[],appState:{...y.appState,theme:nO()?"dark":"light"},files:y.files??{},scrollToContent:!0})},f=>l(f.message));let p=f=>{f.detail.keys.includes(t)&&iO(t).then(({text:y,data:g})=>{y===d.current.text||!o.current||(d.current={text:y,hash:lc(g.elements??[])},o.current.updateScene({elements:g.elements??[]}))})};return window.addEventListener("adoc-documents-changed",p),()=>window.removeEventListener("adoc-documents-changed",p)},[t]);let u=p=>new Promise(f=>e.dispatchEvent(new CustomEvent("adoc-action",{bubbles:!0,detail:{name:"save",value:p,reply:f}}))),m=async()=>{let p=o.current;if(!p)return;if(s.current){c.current=!0;return}let f=p.getSceneElements(),y=lc(f);if(y!==d.current.hash){s.current=!0;try{let g=p.getAppState(),b=p.getFiles(),v=Hp(f,g,b,"local"),x=await k1({elements:f,appState:{...g,exportBackground:!0},files:b,mimeType:"image/png"});if((await u(JSON.stringify({scene:v,png:await QX(x)}))).status==="applied"){d.current={text:v,hash:y};let S=a.replace(/\.excalidraw$/,".png");e.dispatchEvent(new CustomEvent("adoc-draft",{bubbles:!0,detail:{text:`The sketch ${t} changed: ${S} (image) and ${a} (Excalidraw JSON).`}}))}else c.current=!0}finally{s.current=!1,c.current&&(c.current=!1,window.clearTimeout(h.current),h.current=window.setTimeout(()=>{m()},aO))}}};return r?(0,$h.jsx)("p",{className:"adoc-muted",children:r}):n?(0,$h.jsx)(Ow,{excalidrawAPI:p=>o.current=p,initialData:n,theme:nO()?"dark":"light",onChange:p=>{lc(p)!==d.current.hash&&(window.clearTimeout(h.current),h.current=window.setTimeout(()=>{m()},aO))}}):(0,$h.jsx)("p",{className:"adoc-muted",children:"Loading the sketch\u2026"})}var NS=class extends HTMLElement{root;connectedCallback(){this.root=(0,rO.createRoot)(this),this.root.render((0,$h.jsx)(WX,{host:this,docKey:this.dataset.adocDocument??"",file:this.dataset.adocFile??""}))}disconnectedCallback(){this.root?.unmount()}};customElements.get("adoc-sketch")||customElements.define("adoc-sketch",NS);
|
|
157
|
+
/*! Bundled license information:
|
|
158
|
+
|
|
159
|
+
react-dom/cjs/react-dom.production.js:
|
|
160
|
+
(**
|
|
161
|
+
* @license React
|
|
162
|
+
* react-dom.production.js
|
|
163
|
+
*
|
|
164
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
165
|
+
*
|
|
166
|
+
* This source code is licensed under the MIT license found in the
|
|
167
|
+
* LICENSE file in the root directory of this source tree.
|
|
168
|
+
*)
|
|
169
|
+
|
|
170
|
+
use-sync-external-store/cjs/use-sync-external-store-shim.production.js:
|
|
171
|
+
(**
|
|
172
|
+
* @license React
|
|
173
|
+
* use-sync-external-store-shim.production.js
|
|
174
|
+
*
|
|
175
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
176
|
+
*
|
|
177
|
+
* This source code is licensed under the MIT license found in the
|
|
178
|
+
* LICENSE file in the root directory of this source tree.
|
|
179
|
+
*)
|
|
180
|
+
|
|
181
|
+
use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.js:
|
|
182
|
+
(**
|
|
183
|
+
* @license React
|
|
184
|
+
* use-sync-external-store-shim/with-selector.production.js
|
|
185
|
+
*
|
|
186
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
187
|
+
*
|
|
188
|
+
* This source code is licensed under the MIT license found in the
|
|
189
|
+
* LICENSE file in the root directory of this source tree.
|
|
190
|
+
*)
|
|
191
|
+
|
|
192
|
+
scheduler/cjs/scheduler.production.js:
|
|
193
|
+
(**
|
|
194
|
+
* @license React
|
|
195
|
+
* scheduler.production.js
|
|
196
|
+
*
|
|
197
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
198
|
+
*
|
|
199
|
+
* This source code is licensed under the MIT license found in the
|
|
200
|
+
* LICENSE file in the root directory of this source tree.
|
|
201
|
+
*)
|
|
202
|
+
|
|
203
|
+
react-dom/cjs/react-dom-client.production.js:
|
|
204
|
+
(**
|
|
205
|
+
* @license React
|
|
206
|
+
* react-dom-client.production.js
|
|
207
|
+
*
|
|
208
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
209
|
+
*
|
|
210
|
+
* This source code is licensed under the MIT license found in the
|
|
211
|
+
* LICENSE file in the root directory of this source tree.
|
|
212
|
+
*)
|
|
213
|
+
*/
|