@emailmaker/filemanager 0.10.14 → 0.10.15
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/assets/image-editor/fonts/TrashHand.ttf +0 -0
- package/assets/image-editor/fonts/aleo-v4-latin-ext_latin-700.woff2 +0 -0
- package/assets/image-editor/fonts/amatic-sc-v16-latin-ext_latin-regular.woff2 +0 -0
- package/assets/image-editor/fonts/bungee-inline-v6-latin-ext_latin-regular.woff2 +0 -0
- package/assets/image-editor/fonts/carter-one-v12-latin-regular.woff2 +0 -0
- package/assets/image-editor/fonts/codystar-v10-latin-ext_latin-regular.woff2 +0 -0
- package/assets/image-editor/fonts/corinthia-v7-latin-ext_latin-700.woff2 +0 -0
- package/assets/image-editor/fonts/fira-sans-v11-latin-ext_latin_cyrillic-regular.woff2 +0 -0
- package/assets/image-editor/fonts/fuzzy-bubbles-v3-latin-700.woff2 +0 -0
- package/assets/image-editor/fonts/krona-one-v9-latin-ext_latin-regular.woff2 +0 -0
- package/assets/image-editor/fonts/kumar-one-outline-v8-latin-ext_latin-regular.woff2 +0 -0
- package/assets/image-editor/fonts/lobster-two-v13-latin-regular.woff2 +0 -0
- package/assets/image-editor/fonts/molle-v11-latin-ext_latin-italic.woff2 +0 -0
- package/assets/image-editor/fonts/monoton-v10-latin-regular.woff2 +0 -0
- package/assets/image-editor/fonts/nixie-one-v11-latin-regular.woff2 +0 -0
- package/assets/image-editor/fonts/open-sans-v27-latin-ext_latin-regular.woff2 +0 -0
- package/assets/image-editor/fonts/permanent-marker-v10-latin-regular.woff2 +0 -0
- package/assets/image-editor/fonts/roboto-slab-v16-latin-ext_latin-500.woff2 +0 -0
- package/assets/image-editor/fonts/sancreek-v13-latin-ext_latin-regular.woff2 +0 -0
- package/assets/image-editor/fonts/stint-ultra-expanded-v10-latin-regular.woff2 +0 -0
- package/assets/image-editor/fonts/vt323-v12-latin-ext_latin-regular.woff2 +0 -0
- package/assets/image-editor/images/brushes/black/circle.png +0 -0
- package/assets/image-editor/images/brushes/black/diamond.png +0 -0
- package/assets/image-editor/images/brushes/black/hline.png +0 -0
- package/assets/image-editor/images/brushes/black/pencil.png +0 -0
- package/assets/image-editor/images/brushes/black/spray.png +0 -0
- package/assets/image-editor/images/brushes/black/square.png +0 -0
- package/assets/image-editor/images/brushes/black/vline.png +0 -0
- package/assets/image-editor/images/brushes/white/circle.png +0 -0
- package/assets/image-editor/images/brushes/white/diamond.png +0 -0
- package/assets/image-editor/images/brushes/white/hline.png +0 -0
- package/assets/image-editor/images/brushes/white/pencil.png +0 -0
- package/assets/image-editor/images/brushes/white/spray.png +0 -0
- package/assets/image-editor/images/brushes/white/square.png +0 -0
- package/assets/image-editor/images/brushes/white/vline.png +0 -0
- package/assets/image-editor/images/empty-canvas-bg.png +0 -0
- package/assets/image-editor/images/filter/blackWhite.jpg +0 -0
- package/assets/image-editor/images/filter/blendColor.jpg +0 -0
- package/assets/image-editor/images/filter/blur.jpg +0 -0
- package/assets/image-editor/images/filter/brightness.jpg +0 -0
- package/assets/image-editor/images/filter/brownie.jpg +0 -0
- package/assets/image-editor/images/filter/emboss.jpg +0 -0
- package/assets/image-editor/images/filter/gamma.jpg +0 -0
- package/assets/image-editor/images/filter/grayscale.jpg +0 -0
- package/assets/image-editor/images/filter/invert.jpg +0 -0
- package/assets/image-editor/images/filter/kodachrome.jpg +0 -0
- package/assets/image-editor/images/filter/noise.jpg +0 -0
- package/assets/image-editor/images/filter/original.jpg +0 -0
- package/assets/image-editor/images/filter/pixelate.jpg +0 -0
- package/assets/image-editor/images/filter/polaroid.jpg +0 -0
- package/assets/image-editor/images/filter/removeColor.jpg +0 -0
- package/assets/image-editor/images/filter/sepia.jpg +0 -0
- package/assets/image-editor/images/filter/sharpen.jpg +0 -0
- package/assets/image-editor/images/filter/technicolor.jpg +0 -0
- package/assets/image-editor/images/filter/vintage.jpg +0 -0
- package/assets/image-editor/images/frames/art1/bottom.png +0 -0
- package/assets/image-editor/images/frames/art1/bottomLeft.png +0 -0
- package/assets/image-editor/images/frames/art1/bottomRight.png +0 -0
- package/assets/image-editor/images/frames/art1/left.png +0 -0
- package/assets/image-editor/images/frames/art1/right.png +0 -0
- package/assets/image-editor/images/frames/art1/thumbnail.png +0 -0
- package/assets/image-editor/images/frames/art1/top.png +0 -0
- package/assets/image-editor/images/frames/art1/topLeft.png +0 -0
- package/assets/image-editor/images/frames/art1/topRight.png +0 -0
- package/assets/image-editor/images/frames/art2/bottom.png +0 -0
- package/assets/image-editor/images/frames/art2/bottomLeft.png +0 -0
- package/assets/image-editor/images/frames/art2/bottomRight.png +0 -0
- package/assets/image-editor/images/frames/art2/left.png +0 -0
- package/assets/image-editor/images/frames/art2/right.png +0 -0
- package/assets/image-editor/images/frames/art2/thumbnail.png +0 -0
- package/assets/image-editor/images/frames/art2/top.png +0 -0
- package/assets/image-editor/images/frames/art2/topLeft.png +0 -0
- package/assets/image-editor/images/frames/art2/topRight.png +0 -0
- package/assets/image-editor/images/frames/basic/thumbnail.png +0 -0
- package/assets/image-editor/images/frames/ebony/bottom.png +0 -0
- package/assets/image-editor/images/frames/ebony/bottomLeft.png +0 -0
- package/assets/image-editor/images/frames/ebony/bottomRight.png +0 -0
- package/assets/image-editor/images/frames/ebony/left.png +0 -0
- package/assets/image-editor/images/frames/ebony/right.png +0 -0
- package/assets/image-editor/images/frames/ebony/thumbnail.png +0 -0
- package/assets/image-editor/images/frames/ebony/top.png +0 -0
- package/assets/image-editor/images/frames/ebony/topLeft.png +0 -0
- package/assets/image-editor/images/frames/ebony/topRight.png +0 -0
- package/assets/image-editor/images/frames/grunge1/bottom.png +0 -0
- package/assets/image-editor/images/frames/grunge1/bottomLeft.png +0 -0
- package/assets/image-editor/images/frames/grunge1/bottomRight.png +0 -0
- package/assets/image-editor/images/frames/grunge1/left.png +0 -0
- package/assets/image-editor/images/frames/grunge1/right.png +0 -0
- package/assets/image-editor/images/frames/grunge1/thumbnail.png +0 -0
- package/assets/image-editor/images/frames/grunge1/top.png +0 -0
- package/assets/image-editor/images/frames/grunge1/topLeft.png +0 -0
- package/assets/image-editor/images/frames/grunge1/topRight.png +0 -0
- package/assets/image-editor/images/frames/grunge2/bottom.png +0 -0
- package/assets/image-editor/images/frames/grunge2/bottomLeft.png +0 -0
- package/assets/image-editor/images/frames/grunge2/bottomRight.png +0 -0
- package/assets/image-editor/images/frames/grunge2/left.png +0 -0
- package/assets/image-editor/images/frames/grunge2/right.png +0 -0
- package/assets/image-editor/images/frames/grunge2/thumbnail.png +0 -0
- package/assets/image-editor/images/frames/grunge2/top.png +0 -0
- package/assets/image-editor/images/frames/grunge2/topLeft.png +0 -0
- package/assets/image-editor/images/frames/grunge2/topRight.png +0 -0
- package/assets/image-editor/images/frames/oak/bottom.png +0 -0
- package/assets/image-editor/images/frames/oak/bottomLeft.png +0 -0
- package/assets/image-editor/images/frames/oak/bottomRight.png +0 -0
- package/assets/image-editor/images/frames/oak/left.png +0 -0
- package/assets/image-editor/images/frames/oak/right.png +0 -0
- package/assets/image-editor/images/frames/oak/thumbnail.png +0 -0
- package/assets/image-editor/images/frames/oak/top.png +0 -0
- package/assets/image-editor/images/frames/oak/topLeft.png +0 -0
- package/assets/image-editor/images/frames/oak/topRight.png +0 -0
- package/assets/image-editor/images/frames/pine/bottom.png +0 -0
- package/assets/image-editor/images/frames/pine/bottomLeft.png +0 -0
- package/assets/image-editor/images/frames/pine/bottomRight.png +0 -0
- package/assets/image-editor/images/frames/pine/left.png +0 -0
- package/assets/image-editor/images/frames/pine/right.png +0 -0
- package/assets/image-editor/images/frames/pine/thumbnail.png +0 -0
- package/assets/image-editor/images/frames/pine/top.png +0 -0
- package/assets/image-editor/images/frames/pine/topLeft.png +0 -0
- package/assets/image-editor/images/frames/pine/topRight.png +0 -0
- package/assets/image-editor/images/frames/rainbow/bottom.png +0 -0
- package/assets/image-editor/images/frames/rainbow/bottomLeft.png +0 -0
- package/assets/image-editor/images/frames/rainbow/bottomRight.png +0 -0
- package/assets/image-editor/images/frames/rainbow/left.png +0 -0
- package/assets/image-editor/images/frames/rainbow/right.png +0 -0
- package/assets/image-editor/images/frames/rainbow/thumbnail.png +0 -0
- package/assets/image-editor/images/frames/rainbow/top.png +0 -0
- package/assets/image-editor/images/frames/rainbow/topLeft.png +0 -0
- package/assets/image-editor/images/frames/rainbow/topRight.png +0 -0
- package/assets/image-editor/images/gradients/0.png +0 -0
- package/assets/image-editor/images/gradients/1.png +0 -0
- package/assets/image-editor/images/gradients/10.png +0 -0
- package/assets/image-editor/images/gradients/11.png +0 -0
- package/assets/image-editor/images/gradients/12.png +0 -0
- package/assets/image-editor/images/gradients/2.png +0 -0
- package/assets/image-editor/images/gradients/3.png +0 -0
- package/assets/image-editor/images/gradients/4.png +0 -0
- package/assets/image-editor/images/gradients/5.png +0 -0
- package/assets/image-editor/images/gradients/6.png +0 -0
- package/assets/image-editor/images/gradients/7.png +0 -0
- package/assets/image-editor/images/gradients/8.png +0 -0
- package/assets/image-editor/images/gradients/9.png +0 -0
- package/assets/image-editor/images/samples/large_sample.jpg +0 -0
- package/assets/image-editor/images/samples/sample1.jpg +0 -0
- package/assets/image-editor/images/samples/sample1_thumbnail.jpg +0 -0
- package/assets/image-editor/images/samples/sample2.jpg +0 -0
- package/assets/image-editor/images/samples/sample2_thumbnail.jpg +0 -0
- package/assets/image-editor/images/samples/sample3.jpg +0 -0
- package/assets/image-editor/images/samples/sample3_thumbnail.jpg +0 -0
- package/assets/image-editor/images/samples/sample4.json +871 -0
- package/assets/image-editor/images/samples/sample4_preview.jpg +0 -0
- package/assets/image-editor/images/stickers/beach/0.svg +25 -0
- package/assets/image-editor/images/stickers/beach/1.svg +14 -0
- package/assets/image-editor/images/stickers/beach/10.svg +34 -0
- package/assets/image-editor/images/stickers/beach/11.svg +27 -0
- package/assets/image-editor/images/stickers/beach/12.svg +10 -0
- package/assets/image-editor/images/stickers/beach/13.svg +25 -0
- package/assets/image-editor/images/stickers/beach/14.svg +16 -0
- package/assets/image-editor/images/stickers/beach/15.svg +14 -0
- package/assets/image-editor/images/stickers/beach/16.svg +44 -0
- package/assets/image-editor/images/stickers/beach/17.svg +35 -0
- package/assets/image-editor/images/stickers/beach/18.svg +32 -0
- package/assets/image-editor/images/stickers/beach/19.svg +23 -0
- package/assets/image-editor/images/stickers/beach/2.svg +14 -0
- package/assets/image-editor/images/stickers/beach/20.svg +24 -0
- package/assets/image-editor/images/stickers/beach/21.svg +11 -0
- package/assets/image-editor/images/stickers/beach/3.svg +26 -0
- package/assets/image-editor/images/stickers/beach/4.svg +25 -0
- package/assets/image-editor/images/stickers/beach/5.svg +22 -0
- package/assets/image-editor/images/stickers/beach/6.svg +20 -0
- package/assets/image-editor/images/stickers/beach/7.svg +32 -0
- package/assets/image-editor/images/stickers/beach/8.svg +28 -0
- package/assets/image-editor/images/stickers/beach/9.svg +18 -0
- package/assets/image-editor/images/stickers/bubbles/0.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/1.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/10.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/100.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/101.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/102.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/103.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/105.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/11.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/12.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/13.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/14.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/15.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/16.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/17.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/18.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/19.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/2.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/20.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/21.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/22.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/23.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/24.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/25.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/26.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/27.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/28.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/29.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/3.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/30.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/31.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/32.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/33.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/34.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/35.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/36.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/37.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/38.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/39.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/4.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/40.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/41.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/42.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/43.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/44.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/45.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/46.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/47.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/48.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/49.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/5.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/50.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/51.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/52.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/53.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/54.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/55.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/56.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/57.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/58.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/59.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/6.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/60.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/61.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/62.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/63.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/64.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/65.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/66.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/67.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/68.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/69.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/7.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/70.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/71.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/72.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/73.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/74.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/75.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/76.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/77.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/78.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/79.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/8.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/80.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/81.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/82.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/83.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/84.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/85.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/86.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/87.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/88.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/89.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/9.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/90.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/91.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/92.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/93.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/94.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/95.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/96.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/97.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/98.png +0 -0
- package/assets/image-editor/images/stickers/bubbles/99.png +0 -0
- package/assets/image-editor/images/stickers/categories/beach.svg +18 -0
- package/assets/image-editor/images/stickers/categories/clouds.svg +15 -0
- package/assets/image-editor/images/stickers/categories/doodles.svg +13 -0
- package/assets/image-editor/images/stickers/categories/emoticon.svg +10 -0
- package/assets/image-editor/images/stickers/categories/landmark.svg +20 -0
- package/assets/image-editor/images/stickers/categories/speech-bubble.svg +6 -0
- package/assets/image-editor/images/stickers/categories/star.svg +6 -0
- package/assets/image-editor/images/stickers/categories/transportation.svg +18 -0
- package/assets/image-editor/images/stickers/clouds/0.png +0 -0
- package/assets/image-editor/images/stickers/clouds/1.png +0 -0
- package/assets/image-editor/images/stickers/clouds/10.png +0 -0
- package/assets/image-editor/images/stickers/clouds/11.png +0 -0
- package/assets/image-editor/images/stickers/clouds/12.png +0 -0
- package/assets/image-editor/images/stickers/clouds/13.png +0 -0
- package/assets/image-editor/images/stickers/clouds/14.png +0 -0
- package/assets/image-editor/images/stickers/clouds/2.png +0 -0
- package/assets/image-editor/images/stickers/clouds/3.png +0 -0
- package/assets/image-editor/images/stickers/clouds/4.png +0 -0
- package/assets/image-editor/images/stickers/clouds/5.png +0 -0
- package/assets/image-editor/images/stickers/clouds/6.png +0 -0
- package/assets/image-editor/images/stickers/clouds/7.png +0 -0
- package/assets/image-editor/images/stickers/clouds/8.png +0 -0
- package/assets/image-editor/images/stickers/clouds/9.png +0 -0
- package/assets/image-editor/images/stickers/doodles/0.svg +201 -0
- package/assets/image-editor/images/stickers/doodles/1.svg +255 -0
- package/assets/image-editor/images/stickers/doodles/10.svg +160 -0
- package/assets/image-editor/images/stickers/doodles/11.svg +393 -0
- package/assets/image-editor/images/stickers/doodles/12.svg +293 -0
- package/assets/image-editor/images/stickers/doodles/13.svg +251 -0
- package/assets/image-editor/images/stickers/doodles/14.svg +370 -0
- package/assets/image-editor/images/stickers/doodles/15.svg +194 -0
- package/assets/image-editor/images/stickers/doodles/16.svg +383 -0
- package/assets/image-editor/images/stickers/doodles/17.svg +346 -0
- package/assets/image-editor/images/stickers/doodles/18.svg +286 -0
- package/assets/image-editor/images/stickers/doodles/19.svg +241 -0
- package/assets/image-editor/images/stickers/doodles/2.svg +227 -0
- package/assets/image-editor/images/stickers/doodles/20.svg +330 -0
- package/assets/image-editor/images/stickers/doodles/21.svg +200 -0
- package/assets/image-editor/images/stickers/doodles/22.svg +308 -0
- package/assets/image-editor/images/stickers/doodles/23.svg +518 -0
- package/assets/image-editor/images/stickers/doodles/24.svg +207 -0
- package/assets/image-editor/images/stickers/doodles/25.svg +260 -0
- package/assets/image-editor/images/stickers/doodles/26.svg +380 -0
- package/assets/image-editor/images/stickers/doodles/27.svg +222 -0
- package/assets/image-editor/images/stickers/doodles/28.svg +164 -0
- package/assets/image-editor/images/stickers/doodles/29.svg +271 -0
- package/assets/image-editor/images/stickers/doodles/3.svg +272 -0
- package/assets/image-editor/images/stickers/doodles/30.svg +283 -0
- package/assets/image-editor/images/stickers/doodles/31.svg +257 -0
- package/assets/image-editor/images/stickers/doodles/32.svg +276 -0
- package/assets/image-editor/images/stickers/doodles/33.svg +198 -0
- package/assets/image-editor/images/stickers/doodles/34.svg +314 -0
- package/assets/image-editor/images/stickers/doodles/35.svg +236 -0
- package/assets/image-editor/images/stickers/doodles/36.svg +273 -0
- package/assets/image-editor/images/stickers/doodles/37.svg +284 -0
- package/assets/image-editor/images/stickers/doodles/38.svg +167 -0
- package/assets/image-editor/images/stickers/doodles/39.svg +381 -0
- package/assets/image-editor/images/stickers/doodles/4.svg +216 -0
- package/assets/image-editor/images/stickers/doodles/40.svg +198 -0
- package/assets/image-editor/images/stickers/doodles/41.svg +259 -0
- package/assets/image-editor/images/stickers/doodles/42.svg +371 -0
- package/assets/image-editor/images/stickers/doodles/43.svg +198 -0
- package/assets/image-editor/images/stickers/doodles/44.svg +174 -0
- package/assets/image-editor/images/stickers/doodles/45.svg +178 -0
- package/assets/image-editor/images/stickers/doodles/46.svg +211 -0
- package/assets/image-editor/images/stickers/doodles/47.svg +195 -0
- package/assets/image-editor/images/stickers/doodles/48.svg +293 -0
- package/assets/image-editor/images/stickers/doodles/49.svg +191 -0
- package/assets/image-editor/images/stickers/doodles/5.svg +179 -0
- package/assets/image-editor/images/stickers/doodles/50.svg +323 -0
- package/assets/image-editor/images/stickers/doodles/51.svg +308 -0
- package/assets/image-editor/images/stickers/doodles/52.svg +162 -0
- package/assets/image-editor/images/stickers/doodles/53.svg +263 -0
- package/assets/image-editor/images/stickers/doodles/54.svg +175 -0
- package/assets/image-editor/images/stickers/doodles/55.svg +177 -0
- package/assets/image-editor/images/stickers/doodles/56.svg +160 -0
- package/assets/image-editor/images/stickers/doodles/57.svg +115 -0
- package/assets/image-editor/images/stickers/doodles/58.svg +327 -0
- package/assets/image-editor/images/stickers/doodles/59.svg +197 -0
- package/assets/image-editor/images/stickers/doodles/6.svg +388 -0
- package/assets/image-editor/images/stickers/doodles/60.svg +414 -0
- package/assets/image-editor/images/stickers/doodles/61.svg +287 -0
- package/assets/image-editor/images/stickers/doodles/62.svg +193 -0
- package/assets/image-editor/images/stickers/doodles/63.svg +329 -0
- package/assets/image-editor/images/stickers/doodles/64.svg +150 -0
- package/assets/image-editor/images/stickers/doodles/65.svg +275 -0
- package/assets/image-editor/images/stickers/doodles/66.svg +174 -0
- package/assets/image-editor/images/stickers/doodles/67.svg +343 -0
- package/assets/image-editor/images/stickers/doodles/68.svg +242 -0
- package/assets/image-editor/images/stickers/doodles/69.svg +160 -0
- package/assets/image-editor/images/stickers/doodles/7.svg +194 -0
- package/assets/image-editor/images/stickers/doodles/70.svg +365 -0
- package/assets/image-editor/images/stickers/doodles/71.svg +454 -0
- package/assets/image-editor/images/stickers/doodles/72.svg +162 -0
- package/assets/image-editor/images/stickers/doodles/73.svg +393 -0
- package/assets/image-editor/images/stickers/doodles/74.svg +206 -0
- package/assets/image-editor/images/stickers/doodles/75.svg +275 -0
- package/assets/image-editor/images/stickers/doodles/76.svg +350 -0
- package/assets/image-editor/images/stickers/doodles/77.svg +323 -0
- package/assets/image-editor/images/stickers/doodles/78.svg +316 -0
- package/assets/image-editor/images/stickers/doodles/79.svg +503 -0
- package/assets/image-editor/images/stickers/doodles/8.svg +185 -0
- package/assets/image-editor/images/stickers/doodles/80.svg +235 -0
- package/assets/image-editor/images/stickers/doodles/81.svg +184 -0
- package/assets/image-editor/images/stickers/doodles/82.svg +246 -0
- package/assets/image-editor/images/stickers/doodles/83.svg +125 -0
- package/assets/image-editor/images/stickers/doodles/84.svg +168 -0
- package/assets/image-editor/images/stickers/doodles/85.svg +138 -0
- package/assets/image-editor/images/stickers/doodles/86.svg +223 -0
- package/assets/image-editor/images/stickers/doodles/87.svg +475 -0
- package/assets/image-editor/images/stickers/doodles/88.svg +172 -0
- package/assets/image-editor/images/stickers/doodles/89.svg +199 -0
- package/assets/image-editor/images/stickers/doodles/9.svg +368 -0
- package/assets/image-editor/images/stickers/doodles/90.svg +298 -0
- package/assets/image-editor/images/stickers/doodles/91.svg +176 -0
- package/assets/image-editor/images/stickers/doodles/92.svg +152 -0
- package/assets/image-editor/images/stickers/doodles/93.svg +206 -0
- package/assets/image-editor/images/stickers/doodles/94.svg +202 -0
- package/assets/image-editor/images/stickers/doodles/95.svg +114 -0
- package/assets/image-editor/images/stickers/doodles/96.svg +149 -0
- package/assets/image-editor/images/stickers/doodles/97.svg +197 -0
- package/assets/image-editor/images/stickers/doodles/98.svg +397 -0
- package/assets/image-editor/images/stickers/doodles/99.svg +502 -0
- package/assets/image-editor/images/stickers/emoticons/afro-1.svg +122 -0
- package/assets/image-editor/images/stickers/emoticons/afro.svg +85 -0
- package/assets/image-editor/images/stickers/emoticons/agent.svg +114 -0
- package/assets/image-editor/images/stickers/emoticons/alien-1.svg +60 -0
- package/assets/image-editor/images/stickers/emoticons/alien.svg +64 -0
- package/assets/image-editor/images/stickers/emoticons/angel.svg +47 -0
- package/assets/image-editor/images/stickers/emoticons/angry-1.svg +83 -0
- package/assets/image-editor/images/stickers/emoticons/angry-2.svg +48 -0
- package/assets/image-editor/images/stickers/emoticons/angry-3.svg +45 -0
- package/assets/image-editor/images/stickers/emoticons/angry-4.svg +52 -0
- package/assets/image-editor/images/stickers/emoticons/angry-5.svg +62 -0
- package/assets/image-editor/images/stickers/emoticons/angry.svg +78 -0
- package/assets/image-editor/images/stickers/emoticons/arguing.svg +49 -0
- package/assets/image-editor/images/stickers/emoticons/arrogant.svg +98 -0
- package/assets/image-editor/images/stickers/emoticons/asian-1.svg +52 -0
- package/assets/image-editor/images/stickers/emoticons/asian.svg +54 -0
- package/assets/image-editor/images/stickers/emoticons/avatar.svg +49 -0
- package/assets/image-editor/images/stickers/emoticons/baby-1.svg +51 -0
- package/assets/image-editor/images/stickers/emoticons/baby-2.svg +54 -0
- package/assets/image-editor/images/stickers/emoticons/baby.svg +66 -0
- package/assets/image-editor/images/stickers/emoticons/bully.svg +68 -0
- package/assets/image-editor/images/stickers/emoticons/burglar.svg +75 -0
- package/assets/image-editor/images/stickers/emoticons/businessman.svg +52 -0
- package/assets/image-editor/images/stickers/emoticons/cheeky-1.svg +83 -0
- package/assets/image-editor/images/stickers/emoticons/cheeky.svg +73 -0
- package/assets/image-editor/images/stickers/emoticons/clown.svg +75 -0
- package/assets/image-editor/images/stickers/emoticons/confused-1.svg +74 -0
- package/assets/image-editor/images/stickers/emoticons/confused-2.svg +55 -0
- package/assets/image-editor/images/stickers/emoticons/confused-3.svg +45 -0
- package/assets/image-editor/images/stickers/emoticons/confused.svg +66 -0
- package/assets/image-editor/images/stickers/emoticons/creepy.svg +60 -0
- package/assets/image-editor/images/stickers/emoticons/crying-1.svg +55 -0
- package/assets/image-editor/images/stickers/emoticons/crying-2.svg +83 -0
- package/assets/image-editor/images/stickers/emoticons/crying-3.svg +53 -0
- package/assets/image-editor/images/stickers/emoticons/crying.svg +59 -0
- package/assets/image-editor/images/stickers/emoticons/dazed-1.svg +63 -0
- package/assets/image-editor/images/stickers/emoticons/dazed-2.svg +51 -0
- package/assets/image-editor/images/stickers/emoticons/dazed-3.svg +55 -0
- package/assets/image-editor/images/stickers/emoticons/dazed.svg +56 -0
- package/assets/image-editor/images/stickers/emoticons/dead-1.svg +61 -0
- package/assets/image-editor/images/stickers/emoticons/dead-2.svg +80 -0
- package/assets/image-editor/images/stickers/emoticons/dead-3.svg +66 -0
- package/assets/image-editor/images/stickers/emoticons/dead-4.svg +54 -0
- package/assets/image-editor/images/stickers/emoticons/dead-5.svg +52 -0
- package/assets/image-editor/images/stickers/emoticons/dead-6.svg +53 -0
- package/assets/image-editor/images/stickers/emoticons/dead.svg +54 -0
- package/assets/image-editor/images/stickers/emoticons/desperate-1.svg +47 -0
- package/assets/image-editor/images/stickers/emoticons/desperate.svg +75 -0
- package/assets/image-editor/images/stickers/emoticons/detective.svg +75 -0
- package/assets/image-editor/images/stickers/emoticons/dissapointment.svg +70 -0
- package/assets/image-editor/images/stickers/emoticons/doctor.svg +61 -0
- package/assets/image-editor/images/stickers/emoticons/drunk.svg +55 -0
- package/assets/image-editor/images/stickers/emoticons/dumb.svg +50 -0
- package/assets/image-editor/images/stickers/emoticons/emo-1.svg +104 -0
- package/assets/image-editor/images/stickers/emoticons/emo-2.svg +111 -0
- package/assets/image-editor/images/stickers/emoticons/emo.svg +56 -0
- package/assets/image-editor/images/stickers/emoticons/emoticon.svg +84 -0
- package/assets/image-editor/images/stickers/emoticons/evil.svg +59 -0
- package/assets/image-editor/images/stickers/emoticons/faint-1.svg +75 -0
- package/assets/image-editor/images/stickers/emoticons/faint.svg +84 -0
- package/assets/image-editor/images/stickers/emoticons/flirt-1.svg +81 -0
- package/assets/image-editor/images/stickers/emoticons/flirt-2.svg +68 -0
- package/assets/image-editor/images/stickers/emoticons/flirt.svg +71 -0
- package/assets/image-editor/images/stickers/emoticons/flirty.svg +60 -0
- package/assets/image-editor/images/stickers/emoticons/gangster.svg +54 -0
- package/assets/image-editor/images/stickers/emoticons/geek-1.svg +76 -0
- package/assets/image-editor/images/stickers/emoticons/geek.svg +69 -0
- package/assets/image-editor/images/stickers/emoticons/gentleman-1.svg +82 -0
- package/assets/image-editor/images/stickers/emoticons/gentleman-2.svg +58 -0
- package/assets/image-editor/images/stickers/emoticons/gentleman-3.svg +54 -0
- package/assets/image-editor/images/stickers/emoticons/gentleman-4.svg +59 -0
- package/assets/image-editor/images/stickers/emoticons/gentleman.svg +57 -0
- package/assets/image-editor/images/stickers/emoticons/ginger.svg +55 -0
- package/assets/image-editor/images/stickers/emoticons/girl-1.svg +70 -0
- package/assets/image-editor/images/stickers/emoticons/girl.svg +73 -0
- package/assets/image-editor/images/stickers/emoticons/goofy-1.svg +46 -0
- package/assets/image-editor/images/stickers/emoticons/goofy-2.svg +79 -0
- package/assets/image-editor/images/stickers/emoticons/goofy-3.svg +79 -0
- package/assets/image-editor/images/stickers/emoticons/goofy-4.svg +46 -0
- package/assets/image-editor/images/stickers/emoticons/goofy.svg +79 -0
- package/assets/image-editor/images/stickers/emoticons/grubby-1.svg +114 -0
- package/assets/image-editor/images/stickers/emoticons/grubby.svg +165 -0
- package/assets/image-editor/images/stickers/emoticons/happy-1.svg +49 -0
- package/assets/image-editor/images/stickers/emoticons/happy-10.svg +62 -0
- package/assets/image-editor/images/stickers/emoticons/happy-11.svg +55 -0
- package/assets/image-editor/images/stickers/emoticons/happy-12.svg +53 -0
- package/assets/image-editor/images/stickers/emoticons/happy-13.svg +58 -0
- package/assets/image-editor/images/stickers/emoticons/happy-14.svg +62 -0
- package/assets/image-editor/images/stickers/emoticons/happy-15.svg +49 -0
- package/assets/image-editor/images/stickers/emoticons/happy-16.svg +49 -0
- package/assets/image-editor/images/stickers/emoticons/happy-2.svg +71 -0
- package/assets/image-editor/images/stickers/emoticons/happy-3.svg +74 -0
- package/assets/image-editor/images/stickers/emoticons/happy-4.svg +77 -0
- package/assets/image-editor/images/stickers/emoticons/happy-5.svg +52 -0
- package/assets/image-editor/images/stickers/emoticons/happy-6.svg +54 -0
- package/assets/image-editor/images/stickers/emoticons/happy-7.svg +58 -0
- package/assets/image-editor/images/stickers/emoticons/happy-8.svg +42 -0
- package/assets/image-editor/images/stickers/emoticons/happy-9.svg +45 -0
- package/assets/image-editor/images/stickers/emoticons/happy.svg +48 -0
- package/assets/image-editor/images/stickers/emoticons/harry-potter.svg +68 -0
- package/assets/image-editor/images/stickers/emoticons/heisenberg.svg +80 -0
- package/assets/image-editor/images/stickers/emoticons/hipster-1.svg +118 -0
- package/assets/image-editor/images/stickers/emoticons/hipster-2.svg +49 -0
- package/assets/image-editor/images/stickers/emoticons/hipster.svg +48 -0
- package/assets/image-editor/images/stickers/emoticons/in-love-1.svg +62 -0
- package/assets/image-editor/images/stickers/emoticons/in-love-2.svg +48 -0
- package/assets/image-editor/images/stickers/emoticons/in-love-3.svg +49 -0
- package/assets/image-editor/images/stickers/emoticons/in-love-4.svg +50 -0
- package/assets/image-editor/images/stickers/emoticons/in-love-5.svg +49 -0
- package/assets/image-editor/images/stickers/emoticons/in-love-6.svg +53 -0
- package/assets/image-editor/images/stickers/emoticons/in-love.svg +57 -0
- package/assets/image-editor/images/stickers/emoticons/japan.svg +79 -0
- package/assets/image-editor/images/stickers/emoticons/jew.svg +83 -0
- package/assets/image-editor/images/stickers/emoticons/joyful-1.svg +72 -0
- package/assets/image-editor/images/stickers/emoticons/joyful-2.svg +45 -0
- package/assets/image-editor/images/stickers/emoticons/joyful.svg +47 -0
- package/assets/image-editor/images/stickers/emoticons/kiss-1.svg +48 -0
- package/assets/image-editor/images/stickers/emoticons/kiss-2.svg +59 -0
- package/assets/image-editor/images/stickers/emoticons/kiss-3.svg +53 -0
- package/assets/image-editor/images/stickers/emoticons/kiss-4.svg +59 -0
- package/assets/image-editor/images/stickers/emoticons/kiss.svg +67 -0
- package/assets/image-editor/images/stickers/emoticons/laughing-1.svg +54 -0
- package/assets/image-editor/images/stickers/emoticons/laughing-2.svg +57 -0
- package/assets/image-editor/images/stickers/emoticons/laughing-3.svg +55 -0
- package/assets/image-editor/images/stickers/emoticons/laughing.svg +56 -0
- package/assets/image-editor/images/stickers/emoticons/listening.svg +55 -0
- package/assets/image-editor/images/stickers/emoticons/love.svg +74 -0
- package/assets/image-editor/images/stickers/emoticons/manly.svg +75 -0
- package/assets/image-editor/images/stickers/emoticons/miserly-1.svg +90 -0
- package/assets/image-editor/images/stickers/emoticons/miserly.svg +82 -0
- package/assets/image-editor/images/stickers/emoticons/nerd-1.svg +88 -0
- package/assets/image-editor/images/stickers/emoticons/nerd-2.svg +73 -0
- package/assets/image-editor/images/stickers/emoticons/nerd-3.svg +60 -0
- package/assets/image-editor/images/stickers/emoticons/nerd-4.svg +70 -0
- package/assets/image-editor/images/stickers/emoticons/nerd.svg +88 -0
- package/assets/image-editor/images/stickers/emoticons/ninja.svg +51 -0
- package/assets/image-editor/images/stickers/emoticons/pirate-1.svg +92 -0
- package/assets/image-editor/images/stickers/emoticons/pirate-2.svg +48 -0
- package/assets/image-editor/images/stickers/emoticons/pirate.svg +286 -0
- package/assets/image-editor/images/stickers/emoticons/punk-1.svg +134 -0
- package/assets/image-editor/images/stickers/emoticons/punk-2.svg +153 -0
- package/assets/image-editor/images/stickers/emoticons/punk.svg +82 -0
- package/assets/image-editor/images/stickers/emoticons/rapper.svg +51 -0
- package/assets/image-editor/images/stickers/emoticons/relieved.svg +56 -0
- package/assets/image-editor/images/stickers/emoticons/rich-1.svg +59 -0
- package/assets/image-editor/images/stickers/emoticons/rich-2.svg +93 -0
- package/assets/image-editor/images/stickers/emoticons/rich.svg +88 -0
- package/assets/image-editor/images/stickers/emoticons/rockstar.svg +177 -0
- package/assets/image-editor/images/stickers/emoticons/sad-1.svg +43 -0
- package/assets/image-editor/images/stickers/emoticons/sad-2.svg +49 -0
- package/assets/image-editor/images/stickers/emoticons/sad-3.svg +49 -0
- package/assets/image-editor/images/stickers/emoticons/sad-4.svg +49 -0
- package/assets/image-editor/images/stickers/emoticons/sad-5.svg +45 -0
- package/assets/image-editor/images/stickers/emoticons/sad-6.svg +47 -0
- package/assets/image-editor/images/stickers/emoticons/sad.svg +47 -0
- package/assets/image-editor/images/stickers/emoticons/scared-1.svg +79 -0
- package/assets/image-editor/images/stickers/emoticons/scared-2.svg +59 -0
- package/assets/image-editor/images/stickers/emoticons/scared-3.svg +52 -0
- package/assets/image-editor/images/stickers/emoticons/scared.svg +45 -0
- package/assets/image-editor/images/stickers/emoticons/sceptic-1.svg +59 -0
- package/assets/image-editor/images/stickers/emoticons/sceptic-2.svg +80 -0
- package/assets/image-editor/images/stickers/emoticons/sceptic-3.svg +59 -0
- package/assets/image-editor/images/stickers/emoticons/sceptic-4.svg +46 -0
- package/assets/image-editor/images/stickers/emoticons/sceptic-5.svg +43 -0
- package/assets/image-editor/images/stickers/emoticons/sceptic-6.svg +42 -0
- package/assets/image-editor/images/stickers/emoticons/sceptic-7.svg +50 -0
- package/assets/image-editor/images/stickers/emoticons/sceptic.svg +44 -0
- package/assets/image-editor/images/stickers/emoticons/secret.svg +48 -0
- package/assets/image-editor/images/stickers/emoticons/shocked-1.svg +67 -0
- package/assets/image-editor/images/stickers/emoticons/shocked-2.svg +44 -0
- package/assets/image-editor/images/stickers/emoticons/shocked-3.svg +48 -0
- package/assets/image-editor/images/stickers/emoticons/shocked.svg +46 -0
- package/assets/image-editor/images/stickers/emoticons/sick-1.svg +55 -0
- package/assets/image-editor/images/stickers/emoticons/sick-2.svg +48 -0
- package/assets/image-editor/images/stickers/emoticons/sick-3.svg +49 -0
- package/assets/image-editor/images/stickers/emoticons/sick-4.svg +52 -0
- package/assets/image-editor/images/stickers/emoticons/sick.svg +52 -0
- package/assets/image-editor/images/stickers/emoticons/silent.svg +43 -0
- package/assets/image-editor/images/stickers/emoticons/skeleton.svg +64 -0
- package/assets/image-editor/images/stickers/emoticons/smile.svg +43 -0
- package/assets/image-editor/images/stickers/emoticons/smiling-1.svg +47 -0
- package/assets/image-editor/images/stickers/emoticons/smiling.svg +75 -0
- package/assets/image-editor/images/stickers/emoticons/smoked.svg +131 -0
- package/assets/image-editor/images/stickers/emoticons/smug-1.svg +74 -0
- package/assets/image-editor/images/stickers/emoticons/smug-2.svg +82 -0
- package/assets/image-editor/images/stickers/emoticons/smug-3.svg +71 -0
- package/assets/image-editor/images/stickers/emoticons/smug-4.svg +50 -0
- package/assets/image-editor/images/stickers/emoticons/smug-5.svg +64 -0
- package/assets/image-editor/images/stickers/emoticons/smug-6.svg +82 -0
- package/assets/image-editor/images/stickers/emoticons/smug.svg +96 -0
- package/assets/image-editor/images/stickers/emoticons/sporty.svg +68 -0
- package/assets/image-editor/images/stickers/emoticons/stunned.svg +72 -0
- package/assets/image-editor/images/stickers/emoticons/superhero-1.svg +60 -0
- package/assets/image-editor/images/stickers/emoticons/superhero-2.svg +47 -0
- package/assets/image-editor/images/stickers/emoticons/superhero-3.svg +48 -0
- package/assets/image-editor/images/stickers/emoticons/superhero-4.svg +52 -0
- package/assets/image-editor/images/stickers/emoticons/superhero.svg +45 -0
- package/assets/image-editor/images/stickers/emoticons/surprised-1.svg +47 -0
- package/assets/image-editor/images/stickers/emoticons/surprised.svg +58 -0
- package/assets/image-editor/images/stickers/emoticons/thinking.svg +43 -0
- package/assets/image-editor/images/stickers/emoticons/tired-1.svg +78 -0
- package/assets/image-editor/images/stickers/emoticons/tired-2.svg +65 -0
- package/assets/image-editor/images/stickers/emoticons/tired-3.svg +59 -0
- package/assets/image-editor/images/stickers/emoticons/tired.svg +83 -0
- package/assets/image-editor/images/stickers/emoticons/tough-1.svg +65 -0
- package/assets/image-editor/images/stickers/emoticons/tough.svg +158 -0
- package/assets/image-editor/images/stickers/emoticons/trendy.svg +57 -0
- package/assets/image-editor/images/stickers/emoticons/vampire-1.svg +56 -0
- package/assets/image-editor/images/stickers/emoticons/vampire.svg +59 -0
- package/assets/image-editor/images/stickers/emoticons/wink-1.svg +54 -0
- package/assets/image-editor/images/stickers/emoticons/wink-2.svg +64 -0
- package/assets/image-editor/images/stickers/emoticons/wink.svg +73 -0
- package/assets/image-editor/images/stickers/emoticons/winking-1.svg +52 -0
- package/assets/image-editor/images/stickers/emoticons/winking.svg +43 -0
- package/assets/image-editor/images/stickers/emoticons/yawning-1.svg +62 -0
- package/assets/image-editor/images/stickers/emoticons/yawning-2.svg +51 -0
- package/assets/image-editor/images/stickers/emoticons/yawning-3.svg +51 -0
- package/assets/image-editor/images/stickers/emoticons/yawning.svg +73 -0
- package/assets/image-editor/images/stickers/emoticons/yelling.svg +80 -0
- package/assets/image-editor/images/stickers/emoticons/zombie.svg +65 -0
- package/assets/image-editor/images/stickers/landmarks/0.svg +38 -0
- package/assets/image-editor/images/stickers/landmarks/1.svg +46 -0
- package/assets/image-editor/images/stickers/landmarks/10.svg +18 -0
- package/assets/image-editor/images/stickers/landmarks/11.svg +81 -0
- package/assets/image-editor/images/stickers/landmarks/12.svg +77 -0
- package/assets/image-editor/images/stickers/landmarks/13.svg +42 -0
- package/assets/image-editor/images/stickers/landmarks/14.svg +78 -0
- package/assets/image-editor/images/stickers/landmarks/15.svg +84 -0
- package/assets/image-editor/images/stickers/landmarks/16.svg +87 -0
- package/assets/image-editor/images/stickers/landmarks/17.svg +60 -0
- package/assets/image-editor/images/stickers/landmarks/18.svg +30 -0
- package/assets/image-editor/images/stickers/landmarks/19.svg +36 -0
- package/assets/image-editor/images/stickers/landmarks/2.svg +28 -0
- package/assets/image-editor/images/stickers/landmarks/20.svg +137 -0
- package/assets/image-editor/images/stickers/landmarks/21.svg +63 -0
- package/assets/image-editor/images/stickers/landmarks/22.svg +26 -0
- package/assets/image-editor/images/stickers/landmarks/23.svg +52 -0
- package/assets/image-editor/images/stickers/landmarks/24.svg +56 -0
- package/assets/image-editor/images/stickers/landmarks/25.svg +40 -0
- package/assets/image-editor/images/stickers/landmarks/26.svg +34 -0
- package/assets/image-editor/images/stickers/landmarks/27.svg +32 -0
- package/assets/image-editor/images/stickers/landmarks/28.svg +19 -0
- package/assets/image-editor/images/stickers/landmarks/29.svg +23 -0
- package/assets/image-editor/images/stickers/landmarks/3.svg +36 -0
- package/assets/image-editor/images/stickers/landmarks/30.svg +36 -0
- package/assets/image-editor/images/stickers/landmarks/31.svg +27 -0
- package/assets/image-editor/images/stickers/landmarks/32.svg +25 -0
- package/assets/image-editor/images/stickers/landmarks/33.svg +29 -0
- package/assets/image-editor/images/stickers/landmarks/34.svg +72 -0
- package/assets/image-editor/images/stickers/landmarks/35.svg +18 -0
- package/assets/image-editor/images/stickers/landmarks/36.svg +45 -0
- package/assets/image-editor/images/stickers/landmarks/37.svg +46 -0
- package/assets/image-editor/images/stickers/landmarks/38.svg +44 -0
- package/assets/image-editor/images/stickers/landmarks/39.svg +23 -0
- package/assets/image-editor/images/stickers/landmarks/4.svg +33 -0
- package/assets/image-editor/images/stickers/landmarks/40.svg +25 -0
- package/assets/image-editor/images/stickers/landmarks/41.svg +69 -0
- package/assets/image-editor/images/stickers/landmarks/42.svg +75 -0
- package/assets/image-editor/images/stickers/landmarks/43.svg +44 -0
- package/assets/image-editor/images/stickers/landmarks/44.svg +65 -0
- package/assets/image-editor/images/stickers/landmarks/45.svg +19 -0
- package/assets/image-editor/images/stickers/landmarks/46.svg +47 -0
- package/assets/image-editor/images/stickers/landmarks/47.svg +544 -0
- package/assets/image-editor/images/stickers/landmarks/48.svg +162 -0
- package/assets/image-editor/images/stickers/landmarks/49.svg +70 -0
- package/assets/image-editor/images/stickers/landmarks/5.svg +36 -0
- package/assets/image-editor/images/stickers/landmarks/50.svg +52 -0
- package/assets/image-editor/images/stickers/landmarks/51.svg +110 -0
- package/assets/image-editor/images/stickers/landmarks/52.svg +41 -0
- package/assets/image-editor/images/stickers/landmarks/53.svg +74 -0
- package/assets/image-editor/images/stickers/landmarks/54.svg +36 -0
- package/assets/image-editor/images/stickers/landmarks/55.svg +84 -0
- package/assets/image-editor/images/stickers/landmarks/56.svg +93 -0
- package/assets/image-editor/images/stickers/landmarks/57.svg +67 -0
- package/assets/image-editor/images/stickers/landmarks/58.svg +101 -0
- package/assets/image-editor/images/stickers/landmarks/59.svg +47 -0
- package/assets/image-editor/images/stickers/landmarks/6.svg +59 -0
- package/assets/image-editor/images/stickers/landmarks/60.svg +134 -0
- package/assets/image-editor/images/stickers/landmarks/61.svg +79 -0
- package/assets/image-editor/images/stickers/landmarks/62.svg +43 -0
- package/assets/image-editor/images/stickers/landmarks/63.svg +83 -0
- package/assets/image-editor/images/stickers/landmarks/64.svg +99 -0
- package/assets/image-editor/images/stickers/landmarks/65.svg +79 -0
- package/assets/image-editor/images/stickers/landmarks/66.svg +37 -0
- package/assets/image-editor/images/stickers/landmarks/67.svg +82 -0
- package/assets/image-editor/images/stickers/landmarks/68.svg +216 -0
- package/assets/image-editor/images/stickers/landmarks/69.svg +17 -0
- package/assets/image-editor/images/stickers/landmarks/7.svg +16 -0
- package/assets/image-editor/images/stickers/landmarks/70.svg +45 -0
- package/assets/image-editor/images/stickers/landmarks/71.svg +37 -0
- package/assets/image-editor/images/stickers/landmarks/72.svg +28 -0
- package/assets/image-editor/images/stickers/landmarks/73.svg +25 -0
- package/assets/image-editor/images/stickers/landmarks/74.svg +23 -0
- package/assets/image-editor/images/stickers/landmarks/75.svg +88 -0
- package/assets/image-editor/images/stickers/landmarks/76.svg +25 -0
- package/assets/image-editor/images/stickers/landmarks/77.svg +23 -0
- package/assets/image-editor/images/stickers/landmarks/78.svg +63 -0
- package/assets/image-editor/images/stickers/landmarks/79.svg +25 -0
- package/assets/image-editor/images/stickers/landmarks/8.svg +52 -0
- package/assets/image-editor/images/stickers/landmarks/80.svg +29 -0
- package/assets/image-editor/images/stickers/landmarks/81.svg +44 -0
- package/assets/image-editor/images/stickers/landmarks/82.svg +83 -0
- package/assets/image-editor/images/stickers/landmarks/83.svg +65 -0
- package/assets/image-editor/images/stickers/landmarks/84.svg +31 -0
- package/assets/image-editor/images/stickers/landmarks/85.svg +30 -0
- package/assets/image-editor/images/stickers/landmarks/86.svg +26 -0
- package/assets/image-editor/images/stickers/landmarks/87.svg +132 -0
- package/assets/image-editor/images/stickers/landmarks/88.svg +93 -0
- package/assets/image-editor/images/stickers/landmarks/89.svg +91 -0
- package/assets/image-editor/images/stickers/landmarks/9.svg +70 -0
- package/assets/image-editor/images/stickers/landmarks/90.svg +65 -0
- package/assets/image-editor/images/stickers/landmarks/91.svg +36 -0
- package/assets/image-editor/images/stickers/landmarks/92.svg +66 -0
- package/assets/image-editor/images/stickers/landmarks/93.svg +65 -0
- package/assets/image-editor/images/stickers/landmarks/94.svg +28 -0
- package/assets/image-editor/images/stickers/landmarks/95.svg +31 -0
- package/assets/image-editor/images/stickers/landmarks/96.svg +25 -0
- package/assets/image-editor/images/stickers/landmarks/97.svg +31 -0
- package/assets/image-editor/images/stickers/landmarks/98.svg +52 -0
- package/assets/image-editor/images/stickers/landmarks/99.svg +56 -0
- package/assets/image-editor/images/stickers/stars/0.png +0 -0
- package/assets/image-editor/images/stickers/stars/1.png +0 -0
- package/assets/image-editor/images/stickers/stars/2.png +0 -0
- package/assets/image-editor/images/stickers/stars/3.png +0 -0
- package/assets/image-editor/images/stickers/stars/4.png +0 -0
- package/assets/image-editor/images/stickers/stars/5.png +0 -0
- package/assets/image-editor/images/stickers/transportation/0.svg +26 -0
- package/assets/image-editor/images/stickers/transportation/1.svg +10 -0
- package/assets/image-editor/images/stickers/transportation/10.svg +16 -0
- package/assets/image-editor/images/stickers/transportation/11.svg +30 -0
- package/assets/image-editor/images/stickers/transportation/12.svg +22 -0
- package/assets/image-editor/images/stickers/transportation/13.svg +24 -0
- package/assets/image-editor/images/stickers/transportation/14.svg +19 -0
- package/assets/image-editor/images/stickers/transportation/15.svg +23 -0
- package/assets/image-editor/images/stickers/transportation/16.svg +25 -0
- package/assets/image-editor/images/stickers/transportation/17.svg +34 -0
- package/assets/image-editor/images/stickers/transportation/18.svg +29 -0
- package/assets/image-editor/images/stickers/transportation/19.svg +24 -0
- package/assets/image-editor/images/stickers/transportation/2.svg +27 -0
- package/assets/image-editor/images/stickers/transportation/20.svg +25 -0
- package/assets/image-editor/images/stickers/transportation/21.svg +22 -0
- package/assets/image-editor/images/stickers/transportation/3.svg +18 -0
- package/assets/image-editor/images/stickers/transportation/4.svg +24 -0
- package/assets/image-editor/images/stickers/transportation/5.svg +15 -0
- package/assets/image-editor/images/stickers/transportation/6.svg +25 -0
- package/assets/image-editor/images/stickers/transportation/7.svg +17 -0
- package/assets/image-editor/images/stickers/transportation/8.svg +28 -0
- package/assets/image-editor/images/stickers/transportation/9.svg +23 -0
- package/assets/image-editor/images/textures/0.png +0 -0
- package/assets/image-editor/images/textures/1.png +0 -0
- package/assets/image-editor/images/textures/10.png +0 -0
- package/assets/image-editor/images/textures/11.png +0 -0
- package/assets/image-editor/images/textures/12.png +0 -0
- package/assets/image-editor/images/textures/13.png +0 -0
- package/assets/image-editor/images/textures/14.png +0 -0
- package/assets/image-editor/images/textures/15.png +0 -0
- package/assets/image-editor/images/textures/16.png +0 -0
- package/assets/image-editor/images/textures/17.png +0 -0
- package/assets/image-editor/images/textures/18.png +0 -0
- package/assets/image-editor/images/textures/19.png +0 -0
- package/assets/image-editor/images/textures/2.png +0 -0
- package/assets/image-editor/images/textures/20.png +0 -0
- package/assets/image-editor/images/textures/21.png +0 -0
- package/assets/image-editor/images/textures/22.png +0 -0
- package/assets/image-editor/images/textures/23.png +0 -0
- package/assets/image-editor/images/textures/24.png +0 -0
- package/assets/image-editor/images/textures/25.png +0 -0
- package/assets/image-editor/images/textures/26.png +0 -0
- package/assets/image-editor/images/textures/27.png +0 -0
- package/assets/image-editor/images/textures/28.png +0 -0
- package/assets/image-editor/images/textures/3.png +0 -0
- package/assets/image-editor/images/textures/4.png +0 -0
- package/assets/image-editor/images/textures/5.png +0 -0
- package/assets/image-editor/images/textures/6.png +0 -0
- package/assets/image-editor/images/textures/7.png +0 -0
- package/assets/image-editor/images/textures/8.png +0 -0
- package/assets/image-editor/images/textures/9.png +0 -0
- package/components/EmIcons/EmIcons.d.ts +0 -13
- package/file-manager.css +12 -0
- package/file-manager.d.ts +2 -0
- package/file-manager.esm.js +14 -33
- package/file-manager.esm.js.map +1 -1
- package/file-manager.js +1 -1
- package/file-manager.js.LICENSE.txt +5 -25
- package/helpers/urls.d.ts +2 -0
- package/hooks/core/files/useFilesAPI.d.ts +8 -0
- package/hooks/core/useFiles.d.ts +8 -0
- package/hooks/useCustomIcons.d.ts +7 -0
- package/package.json +1 -1
- package/test-pixie-loading.html +2 -2
- package/types.d.ts +11 -1
- package/utils/mimeUtils.d.ts +13 -0
- package/loacal_module/pixie/dist/images/empty-canvas-bg.png +0 -0
- package/loacal_module/pixie/dist/pixie.es.js +0 -2
- package/loacal_module/pixie/dist/pixie.es.js.LICENSE.txt +0 -86
- package/loacal_module/pixie/dist/pixie.es.js.map +0 -1
- package/loacal_module/pixie/dist/pixie.umd.js +0 -2
- package/loacal_module/pixie/dist/pixie.umd.js.LICENSE.txt +0 -116
- package/loacal_module/pixie/dist/pixie.umd.js.map +0 -1
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
/*! For license information please see pixie.es.js.LICENSE.txt */
|
|
2
|
-
var em=Object.defineProperty,tm=(t,e,i)=>e in t?em(t,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):t[e]=i,Ce=(t,e,i)=>(tm(t,"symbol"!=typeof e?e+"":e,i),i);import*as Se from"react";import ae,{forwardRef as et,useDebugValue as rm,createContext as sr,useContext as De,useLayoutEffect as pi,useEffect as xe,useRef as de,useCallback as Ie,useMemo as Je,createElement as Ch,useId as yt,useState as Ae,useInsertionEffect as im,cloneElement as dt,Children as Sr,isValidElement as tr,memo as nm,Fragment as Gt}from"react";import*as om from"react-dom";import sm,{createPortal as Th}from"react-dom";var Hr=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function am(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function lm(t){var e=t.default;if("function"==typeof e){var i=function(){return e.apply(this,arguments)};i.prototype=e.prototype}else i={};return Object.defineProperty(i,"__esModule",{value:!0}),Object.keys(t).forEach(function(e){var r=Object.getOwnPropertyDescriptor(t,e);Object.defineProperty(i,e,r.get?r:{enumerable:!0,get:function(){return t[e]}})}),i}var cm=function(t){return um(t)&&!hm(t)};function um(t){return!!t&&"object"==typeof t}function hm(t){var e=Object.prototype.toString.call(t);return"[object RegExp]"===e||"[object Date]"===e||pm(t)}var fm="function"==typeof Symbol&&Symbol.for,dm=fm?Symbol.for("react.element"):60103;function pm(t){return t.$$typeof===dm}function gm(t){return Array.isArray(t)?[]:{}}function Di(t,e){return!1!==e.clone&&e.isMergeableObject(t)?oi(gm(t),t,e):t}function mm(t,e,i){return t.concat(e).map(function(t){return Di(t,i)})}function vm(t,e){if(!e.customMerge)return oi;var i=e.customMerge(t);return"function"==typeof i?i:oi}function bm(t){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(t).filter(function(e){return t.propertyIsEnumerable(e)}):[]}function Gl(t){return Object.keys(t).concat(bm(t))}function kh(t,e){try{return e in t}catch{return!1}}function ym(t,e){return kh(t,e)&&!(Object.hasOwnProperty.call(t,e)&&Object.propertyIsEnumerable.call(t,e))}function wm(t,e,i){var r={};return i.isMergeableObject(t)&&Gl(t).forEach(function(e){r[e]=Di(t[e],i)}),Gl(e).forEach(function(n){ym(t,n)||(kh(t,n)&&i.isMergeableObject(e[n])?r[n]=vm(n,i)(t[n],e[n],i):r[n]=Di(e[n],i))}),r}function oi(t,e,i){(i=i||{}).arrayMerge=i.arrayMerge||mm,i.isMergeableObject=i.isMergeableObject||cm,i.cloneUnlessOtherwiseSpecified=Di;var r=Array.isArray(e);return r===Array.isArray(t)?r?i.arrayMerge(t,e,i):wm(t,e,i):Di(e,i)}oi.all=function(t,e){if(!Array.isArray(t))throw new Error("first argument should be an array");return t.reduce(function(t,i){return oi(t,i,e)},{})};var xm=oi,Eh=xm;function _m(t,e){void 0===e&&(e={});var i=e.insertAt;if(t&&!(typeof document>"u")){var r=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css","top"===i&&r.firstChild?r.insertBefore(n,r.firstChild):r.appendChild(n),n.styleSheet?n.styleSheet.cssText=t:n.appendChild(document.createTextNode(t))}}function Ma(t,e){return void 0===e&&(e=15),+parseFloat(Number(t).toPrecision(e))}function Tt(t){var e=t.toString().split(/[eE]/),i=(e[0].split(".")[1]||"").length-+(e[1]||0);return i>0?i:0}function Ii(t){if(-1===t.toString().indexOf("e"))return Number(t.toString().replace(".",""));var e=Tt(t);return e>0?Ma(Number(t)*Math.pow(10,e)):Number(t)}function Cs(t){Mh&&(t>Number.MAX_SAFE_INTEGER||t<Number.MIN_SAFE_INTEGER)&&console.warn(t+" is beyond boundary when transfer to integer, the results may not be accurate")}function mo(t,e){var i=t[0],r=t[1],n=t.slice(2),o=e(i,r);return n.forEach(function(t){o=e(o,t)}),o}function Rt(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];if(t.length>2)return mo(t,Rt);var i=t[0],r=t[1],n=Ii(i),o=Ii(r),a=Tt(i)+Tt(r),s=n*o;return Cs(s),s/Math.pow(10,a)}function Oh(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];if(t.length>2)return mo(t,Oh);var i=t[0],r=t[1],n=Math.pow(10,Math.max(Tt(i),Tt(r)));return(Rt(i,n)+Rt(r,n))/n}function Ph(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];if(t.length>2)return mo(t,Ph);var i=t[0],r=t[1],n=Math.pow(10,Math.max(Tt(i),Tt(r)));return(Rt(i,n)-Rt(r,n))/n}function Aa(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];if(t.length>2)return mo(t,Aa);var i=t[0],r=t[1],n=Ii(i),o=Ii(r);return Cs(n),Cs(o),Rt(n/o,Ma(Math.pow(10,Tt(r)-Tt(i))))}function Sm(t,e){var i=Math.pow(10,e),r=Aa(Math.round(Math.abs(Rt(t,i))),i);return t<0&&0!==r&&(r=Rt(r,-1)),r}var Mh=!0;function Cm(t){void 0===t&&(t=!0),Mh=t}var Ts={strip:Ma,plus:Oh,minus:Ph,times:Rt,divide:Aa,round:Sm,digitLength:Tt,float2Fixed:Ii,enableBoundaryChecking:Cm};function mn(t){return t&&t.Math==Math?t:void 0}var Ah="object"==typeof globalThis&&mn(globalThis)||"object"==typeof window&&mn(window)||"object"==typeof self&&mn(self)||"object"==typeof global&&mn(global)||function(){return this}()||{};function Ve(){return Ah}function Da(t,e,i){var r=i||Ah,n=r.__SENTRY__=r.__SENTRY__||{};return n[t]||(n[t]=e())}var Dh=Object.prototype.toString;function Ih(t){switch(Dh.call(t)){case"[object Error]":case"[object Exception]":case"[object DOMException]":return!0;default:return ar(t,Error)}}function gi(t,e){return Dh.call(t)===`[object ${e}]`}function Rh(t){return gi(t,"ErrorEvent")}function ql(t){return gi(t,"DOMError")}function Tm(t){return gi(t,"DOMException")}function si(t){return gi(t,"String")}function Lh(t){return null===t||"object"!=typeof t&&"function"!=typeof t}function ai(t){return gi(t,"Object")}function Ia(t){return typeof Event<"u"&&ar(t,Event)}function km(t){return typeof Element<"u"&&ar(t,Element)}function Em(t){return gi(t,"RegExp")}function Ra(t){return Boolean(t&&t.then&&"function"==typeof t.then)}function Om(t){return ai(t)&&"nativeEvent"in t&&"preventDefault"in t&&"stopPropagation"in t}function Pm(t){return"number"==typeof t&&t!=t}function ar(t,e){try{return t instanceof e}catch{return!1}}function ks(t,e){try{let r=t;var i=[];let n,o=0,a=0;for(;r&&o++<5&&(n=Mm(r,e),!("html"===n||o>1&&a+3*i.length+n.length>=80));)i.push(n),a+=n.length,r=r.parentNode;return i.reverse().join(" > ")}catch{return"<unknown>"}}function Mm(t,e){var i=t,r=[];let n,o,a,s,l;if(!i||!i.tagName)return"";r.push(i.tagName.toLowerCase());var c=e&&e.length?e.filter(t=>i.getAttribute(t)).map(t=>[t,i.getAttribute(t)]):null;if(c&&c.length)c.forEach(t=>{r.push(`[${t[0]}="${t[1]}"]`)});else if(i.id&&r.push(`#${i.id}`),n=i.className,n&&si(n))for(o=n.split(/\s+/),l=0;l<o.length;l++)r.push(`.${o[l]}`);var h=["type","name","title","alt"];for(l=0;l<h.length;l++)a=h[l],s=i.getAttribute(a),s&&r.push(`[${a}="${s}"]`);return r.join("")}function Am(){var t=Ve();try{return t.document.location.href}catch{return""}}class Ke extends Error{constructor(t,e="warn"){super(t),this.message=t,this.name=new.target.prototype.constructor.name,Object.setPrototypeOf(this,new.target.prototype),this.logLevel=e}}var Dm=/^(?:(\w+):)\/\/(?:(\w+)(?::(\w+))?@)([\w.-]+)(?::(\d+))?\/(.+)/;function Im(t){return"http"===t||"https"===t}function La(t,e=!1){const{host:i,path:r,pass:n,port:o,projectId:a,protocol:s,publicKey:l}=t;return`${s}://${l}${e&&n?`:${n}`:""}@${i}${o?`:${o}`:""}/${r&&`${r}/`}${a}`}function Rm(t){var e=Dm.exec(t);if(!e)throw new Ke(`Invalid Sentry Dsn: ${t}`);const[i,r,n="",o,a="",s]=e.slice(1);let l="",c=s;var h=c.split("/");if(h.length>1&&(l=h.slice(0,-1).join("/"),c=h.pop()),c){var u=c.match(/^\d+/);u&&(c=u[0])}return Fh({host:o,pass:n,path:l,projectId:c,port:a,protocol:i,publicKey:r})}function Fh(t){return{protocol:t.protocol,publicKey:t.publicKey||"",pass:t.pass||"",host:t.host,port:t.port||"",path:t.path||"",projectId:t.projectId}}function Lm(t){if(!(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__))return;const{port:e,projectId:i,protocol:r}=t;if(["protocol","publicKey","host","projectId"].forEach(e=>{if(!t[e])throw new Ke(`Invalid Sentry Dsn: ${e} missing`)}),!i.match(/^\d+$/))throw new Ke(`Invalid Sentry Dsn: Invalid projectId ${i}`);if(!Im(r))throw new Ke(`Invalid Sentry Dsn: Invalid protocol ${r}`);if(e&&isNaN(parseInt(e,10)))throw new Ke(`Invalid Sentry Dsn: Invalid port ${e}`);return!0}function Fm(t){var e="string"==typeof t?Rm(t):Fh(t);return Lm(e),e}var zm=Ve(),jm="Sentry Logger ",$n=["debug","info","warn","error","log","assert","trace"];function zh(t){var e=Ve();if(!("console"in e))return t();var i=e.console,r={};$n.forEach(t=>{var n=i[t]&&i[t].__sentry_original__;t in e.console&&n&&(r[t]=i[t],i[t]=n)});try{return t()}finally{Object.keys(r).forEach(t=>{i[t]=r[t]})}}function Kl(){let t=!1;var e={enable:()=>{t=!0},disable:()=>{t=!1}};return typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__?$n.forEach(i=>{e[i]=(...e)=>{t&&zh(()=>{zm.console[i](`${jm}[${i}]:`,...e)})}}):$n.forEach(t=>{e[t]=()=>{}}),e}let Te;function Ci(t,e=0){return"string"!=typeof t||0===e||t.length<=e?t:`${t.substr(0,e)}...`}function Zl(t,e){if(!Array.isArray(t))return"";var i=[];for(let e=0;e<t.length;e++){var r=t[e];try{i.push(String(r))}catch{i.push("[value cannot be serialized]")}}return i.join(e)}function Fa(t,e){return!!si(t)&&(Em(e)?e.test(t):"string"==typeof e&&-1!==t.indexOf(e))}function Ze(t,e,i){if(e in t){var r=t[e],n=i(r);if("function"==typeof n)try{jh(n,r)}catch{}t[e]=n}}function za(t,e,i){Object.defineProperty(t,e,{value:i,writable:!0,configurable:!0})}function jh(t,e){var i=e.prototype||{};t.prototype=e.prototype=i,za(t,"__sentry_original__",e)}function ja(t){return t.__sentry_original__}function Bm(t){return Object.keys(t).map(e=>`${encodeURIComponent(e)}=${encodeURIComponent(t[e])}`).join("&")}function Bh(t){if(Ih(t))return{message:t.message,name:t.name,stack:t.stack,...Ql(t)};if(Ia(t)){var e={type:t.type,target:Jl(t.target),currentTarget:Jl(t.currentTarget),...Ql(t)};return typeof CustomEvent<"u"&&ar(t,CustomEvent)&&(e.detail=t.detail),e}return t}function Jl(t){try{return km(t)?ks(t):Object.prototype.toString.call(t)}catch{return"<unknown>"}}function Ql(t){if("object"==typeof t&&null!==t){var e={};for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e}return{}}function Nm(t,e=40){var i=Object.keys(Bh(t));if(i.sort(),!i.length)return"[object has no keys]";if(i[0].length>=e)return Ci(i[0],e);for(let t=i.length;t>0;t--){var r=i.slice(0,t).join(", ");if(!(r.length>e))return t===i.length?r:Ci(r,e)}return""}function Ba(t){return Es(t,new Map)}function Es(t,e){if(ai(t)){if(void 0!==(n=e.get(t)))return n;var i={};for(var r of(e.set(t,i),Object.keys(t)))typeof t[r]<"u"&&(i[r]=Es(t[r],e));return i}var n;return Array.isArray(t)?void 0!==(n=e.get(t))?n:(i=[],e.set(t,i),t.forEach(t=>{i.push(Es(t,e))}),i):t}Te=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__?Da("logger",Kl):Kl();var Vm=50;function Nh(...t){var e=t.sort((t,e)=>t[0]-e[0]).map(t=>t[1]);return(t,i=0)=>{var r=[];for(var n of t.split("\n").slice(i)){var o=n.replace(/\(error: (.*)\)/,"$1");for(var a of e){var s=a(o);if(s){r.push(s);break}}}return Hm(r)}}function $m(t){return Array.isArray(t)?Nh(...t):t}function Hm(t){if(!t.length)return[];let e=t;var i=e[0].function||"",r=e[e.length-1].function||"";return(-1!==i.indexOf("captureMessage")||-1!==i.indexOf("captureException"))&&(e=e.slice(1)),-1!==r.indexOf("sentryWrapped")&&(e=e.slice(0,-1)),e.slice(0,Vm).map(t=>({...t,filename:t.filename||e[0].filename,function:t.function||"?"})).reverse()}var Go="<anonymous>";function rr(t){try{return t&&"function"==typeof t&&t.name||Go}catch{return Go}}function Vh(){if(!("fetch"in Ve()))return!1;try{return new Headers,new Request("http://www.example.com"),new Response,!0}catch{return!1}}function Os(t){return t&&/^function fetch\(\)\s+\{\s+\[native code\]\s+\}$/.test(t.toString())}function Um(){if(!Vh())return!1;var t=Ve();if(Os(t.fetch))return!0;let e=!1;var i=t.document;if(i&&"function"==typeof i.createElement)try{var r=i.createElement("iframe");r.hidden=!0,i.head.appendChild(r),r.contentWindow&&r.contentWindow.fetch&&(e=Os(r.contentWindow.fetch)),i.head.removeChild(r)}catch(t){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.warn("Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ",t)}return e}function Wm(){var t=Ve(),e=t.chrome,i=e&&e.app&&e.app.runtime,r="history"in t&&!!t.history.pushState&&!!t.history.replaceState;return!i&&r}var Fe=Ve(),Ti={},ec={};function Ym(t){if(!ec[t])switch(ec[t]=!0,t){case"console":Xm();break;case"dom":rv();break;case"xhr":Zm();break;case"fetch":Gm();break;case"history":Jm();break;case"error":iv();break;case"unhandledrejection":nv();break;default:return void((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.warn("unknown instrumentation type:",t))}}function Ht(t,e){Ti[t]=Ti[t]||[],Ti[t].push(e),Ym(t)}function bt(t,e){if(t&&Ti[t])for(var i of Ti[t]||[])try{i(e)}catch(e){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.error(`Error while triggering instrumentation handler.\nType: ${t}\nName: ${rr(i)}\nError:`,e)}}function Xm(){"console"in Fe&&$n.forEach(function(t){t in Fe.console&&Ze(Fe.console,t,function(e){return function(...i){bt("console",{args:i,level:t}),e&&e.apply(Fe.console,i)}})})}function Gm(){!Um()||Ze(Fe,"fetch",function(t){return function(...e){var i={args:e,fetchData:{method:qm(e),url:Km(e)},startTimestamp:Date.now()};return bt("fetch",{...i}),t.apply(Fe,e).then(t=>(bt("fetch",{...i,endTimestamp:Date.now(),response:t}),t),t=>{throw bt("fetch",{...i,endTimestamp:Date.now(),error:t}),t})}})}function qm(t=[]){return"Request"in Fe&&ar(t[0],Request)&&t[0].method?String(t[0].method).toUpperCase():t[1]&&t[1].method?String(t[1].method).toUpperCase():"GET"}function Km(t=[]){return"string"==typeof t[0]?t[0]:"Request"in Fe&&ar(t[0],Request)?t[0].url:String(t[0])}function Zm(){if("XMLHttpRequest"in Fe){var t=XMLHttpRequest.prototype;Ze(t,"open",function(t){return function(...e){var i=this,r=e[1],n=i.__sentry_xhr__={method:si(e[0])?e[0].toUpperCase():e[0],url:e[1]};si(r)&&"POST"===n.method&&r.match(/sentry_key/)&&(i.__sentry_own_request__=!0);var o=function(){if(4===i.readyState){try{n.status_code=i.status}catch{}bt("xhr",{args:e,endTimestamp:Date.now(),startTimestamp:Date.now(),xhr:i})}};return"onreadystatechange"in i&&"function"==typeof i.onreadystatechange?Ze(i,"onreadystatechange",function(t){return function(...e){return o(),t.apply(i,e)}}):i.addEventListener("readystatechange",o),t.apply(i,e)}}),Ze(t,"send",function(t){return function(...e){return this.__sentry_xhr__&&void 0!==e[0]&&(this.__sentry_xhr__.body=e[0]),bt("xhr",{args:e,startTimestamp:Date.now(),xhr:this}),t.apply(this,e)}})}}let vn;function Jm(){if(Wm()){var t=Fe.onpopstate;Fe.onpopstate=function(...e){var i=Fe.location.href,r=vn;if(vn=i,bt("history",{from:r,to:i}),t)try{return t.apply(this,e)}catch{}},Ze(Fe.history,"pushState",e),Ze(Fe.history,"replaceState",e)}function e(t){return function(...e){var i=e.length>2?e[2]:void 0;if(i){var r=vn,n=String(i);vn=n,bt("history",{from:r,to:n})}return t.apply(this,e)}}}var Qm=1e3;let bn,yn;function ev(t,e){if(!t||t.type!==e.type)return!0;try{if(t.target!==e.target)return!0}catch{}return!1}function tv(t){if("keypress"!==t.type)return!1;try{var e=t.target;if(!e||!e.tagName)return!0;if("INPUT"===e.tagName||"TEXTAREA"===e.tagName||e.isContentEditable)return!1}catch{}return!0}function tc(t,e=!1){return i=>{if(i&&yn!==i&&!tv(i)){var r="keypress"===i.type?"input":i.type;(void 0===bn||ev(yn,i))&&(t({event:i,name:r,global:e}),yn=i),clearTimeout(bn),bn=Fe.setTimeout(()=>{bn=void 0},Qm)}}}function rv(){if("document"in Fe){var t=bt.bind(null,"dom"),e=tc(t,!0);Fe.document.addEventListener("click",e,!1),Fe.document.addEventListener("keypress",e,!1),["EventTarget","Node"].forEach(e=>{var i=Fe[e]&&Fe[e].prototype;!i||!i.hasOwnProperty||!i.hasOwnProperty("addEventListener")||(Ze(i,"addEventListener",function(e){return function(i,r,n){if("click"===i||"keypress"==i)try{var o=this.__sentry_instrumentation_handlers__=this.__sentry_instrumentation_handlers__||{},a=o[i]=o[i]||{refCount:0};if(!a.handler){var s=tc(t);a.handler=s,e.call(this,i,s,n)}a.refCount+=1}catch{}return e.call(this,i,r,n)}}),Ze(i,"removeEventListener",function(t){return function(e,i,r){if("click"===e||"keypress"==e)try{var n=this.__sentry_instrumentation_handlers__||{},o=n[e];o&&(o.refCount-=1,o.refCount<=0&&(t.call(this,e,o.handler,r),o.handler=void 0,delete n[e]),0===Object.keys(n).length&&delete this.__sentry_instrumentation_handlers__)}catch{}return t.call(this,e,i,r)}}))})}}let qo=null;function iv(){qo=Fe.onerror,Fe.onerror=function(t,e,i,r,n){return bt("error",{column:r,error:n,line:i,msg:t,url:e}),!!qo&&qo.apply(this,arguments)}}let Ko=null;function nv(){Ko=Fe.onunhandledrejection,Fe.onunhandledrejection=function(t){return bt("unhandledrejection",t),!Ko||Ko.apply(this,arguments)}}function ov(){var t="function"==typeof WeakSet,e=t?new WeakSet:[];return[function(i){if(t)return!!e.has(i)||(e.add(i),!1);for(let t=0;t<e.length;t++)if(e[t]===i)return!0;return e.push(i),!1},function(i){if(t)e.delete(i);else for(let t=0;t<e.length;t++)if(e[t]===i){e.splice(t,1);break}}]}function Zr(){var t=Ve(),e=t.crypto||t.msCrypto;if(e&&e.randomUUID)return e.randomUUID().replace(/-/g,"");var i=e&&e.getRandomValues?()=>e.getRandomValues(new Uint8Array(1))[0]:()=>16*Math.random();return([1e7]+1e3+4e3+8e3+1e11).replace(/[018]/g,t=>(t^(15&i())>>t/4).toString(16))}function $h(t){return t.exception&&t.exception.values?t.exception.values[0]:void 0}function wr(t){const{message:e,event_id:i}=t;if(e)return e;var r=$h(t);return r?r.type&&r.value?`${r.type}: ${r.value}`:r.type||r.value||i||"<unknown>":i||"<unknown>"}function Ps(t,e,i){var r=t.exception=t.exception||{},n=r.values=r.values||[],o=n[0]=n[0]||{};o.value||(o.value=e||""),o.type||(o.type=i||"Error")}function Ri(t,e){var i=$h(t);if(i){var r=i.mechanism;if(i.mechanism={type:"generic",handled:!0,...r,...e},e&&"data"in e){var n={...r&&r.data,...e.data};i.mechanism.data=n}}}function rc(t){if(t&&t.__sentry_captured__)return!0;try{za(t,"__sentry_captured__",!0)}catch{}return!1}function Hh(t){return Array.isArray(t)?t:[t]}function sv(){return typeof __SENTRY_BROWSER_BUNDLE__<"u"&&!!__SENTRY_BROWSER_BUNDLE__}function Uh(){return!sv()&&"[object process]"===Object.prototype.toString.call(typeof process<"u"?process:0)}function av(t,e){return t.require(e)}function vr(t,e=1/0,i=1/0){try{return Ms("",t,e,i)}catch(t){return{ERROR:`**non-serializable** (${t})`}}}function Wh(t,e=3,i=102400){var r=vr(t,e);return uv(r)>i?Wh(t,e-1,i):r}function Ms(t,e,i=1/0,r=1/0,n=ov()){const[o,a]=n;if(null===e||["number","boolean","string"].includes(typeof e)&&!Pm(e))return e;var s=lv(t,e);if(!s.startsWith("[object "))return s;if(e.__sentry_skip_normalization__)return e;if(0===i)return s.replace("object ","");if(o(e))return"[Circular ~]";var l=e;if(l&&"function"==typeof l.toJSON)try{return Ms("",l.toJSON(),i-1,r,n)}catch{}var c=Array.isArray(e)?[]:{};let h=0;var u=Bh(e);for(var d in u)if(Object.prototype.hasOwnProperty.call(u,d)){if(h>=r){c[d]="[MaxProperties ~]";break}var p=u[d];c[d]=Ms(d,p,i-1,r,n),h+=1}return a(e),c}function lv(t,e){try{return"domain"===t&&e&&"object"==typeof e&&e._events?"[Domain]":"domainEmitter"===t?"[DomainEmitter]":typeof global<"u"&&e===global?"[Global]":typeof window<"u"&&e===window?"[Window]":typeof document<"u"&&e===document?"[Document]":Om(e)?"[SyntheticEvent]":"number"==typeof e&&e!=e?"[NaN]":void 0===e?"[undefined]":"function"==typeof e?`[Function: ${rr(e)}]`:"symbol"==typeof e?`[${String(e)}]`:"bigint"==typeof e?`[BigInt: ${String(e)}]`:`[object ${Object.getPrototypeOf(e).constructor.name}]`}catch(t){return`**non-serializable** (${t})`}}function cv(t){return~-encodeURI(t).split(/%..|./).length}function uv(t){return cv(JSON.stringify(t))}var Pt;function Cr(t){return new nt(e=>{e(t)})}function As(t){return new nt((e,i)=>{i(t)})}!function(t){t[t.PENDING=0]="PENDING",t[t.RESOLVED=1]="RESOLVED",t[t.REJECTED=2]="REJECTED"}(Pt||(Pt={}));class nt{__init(){this._state=Pt.PENDING}__init2(){this._handlers=[]}constructor(t){nt.prototype.__init.call(this),nt.prototype.__init2.call(this),nt.prototype.__init3.call(this),nt.prototype.__init4.call(this),nt.prototype.__init5.call(this),nt.prototype.__init6.call(this);try{t(this._resolve,this._reject)}catch(t){this._reject(t)}}then(t,e){return new nt((i,r)=>{this._handlers.push([!1,e=>{if(t)try{i(t(e))}catch(t){r(t)}else i(e)},t=>{if(e)try{i(e(t))}catch(t){r(t)}else r(t)}]),this._executeHandlers()})}catch(t){return this.then(t=>t,t)}finally(t){return new nt((e,i)=>{let r,n;return this.then(e=>{n=!1,r=e,t&&t()},e=>{n=!0,r=e,t&&t()}).then(()=>{n?i(r):e(r)})})}__init3(){this._resolve=t=>{this._setResult(Pt.RESOLVED,t)}}__init4(){this._reject=t=>{this._setResult(Pt.REJECTED,t)}}__init5(){this._setResult=(t,e)=>{if(this._state===Pt.PENDING){if(Ra(e))return void e.then(this._resolve,this._reject);this._state=t,this._value=e,this._executeHandlers()}}}__init6(){this._executeHandlers=()=>{if(this._state!==Pt.PENDING){var t=this._handlers.slice();this._handlers=[],t.forEach(t=>{t[0]||(this._state===Pt.RESOLVED&&t[1](this._value),this._state===Pt.REJECTED&&t[2](this._value),t[0]=!0)})}}}}function hv(t){var e=[];function i(t){return e.splice(e.indexOf(t),1)[0]}return{$:e,add:function(r){if(!(void 0===t||e.length<t))return As(new Ke("Not adding Promise because buffer limit was reached."));var n=r();return-1===e.indexOf(n)&&e.push(n),n.then(()=>i(n)).then(null,()=>i(n).then(null,()=>{})),n},drain:function(t){return new nt((i,r)=>{let n=e.length;if(!n)return i(!0);var o=setTimeout(()=>{t&&t>0&&i(!1)},t);e.forEach(t=>{Cr(t).then(()=>{--n||(clearTimeout(o),i(!0))},r)})})}}}function Zo(t){if(!t)return{};var e=t.match(/^(([^:/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/);if(!e)return{};var i=e[6]||"",r=e[8]||"";return{host:e[4],path:e[5],protocol:e[2],relative:e[5]+i+r}}var fv=["fatal","error","warning","log","info","debug"];function dv(t){return"warn"===t?"warning":fv.includes(t)?t:"log"}var Ds={nowSeconds:()=>Date.now()/1e3};function pv(){const{performance:t}=Ve();if(t&&t.now)return{now:()=>t.now(),timeOrigin:Date.now()-t.now()}}function gv(){try{return av(module,"perf_hooks").performance}catch{return}}var Jo=Uh()?gv():pv(),ic=void 0===Jo?Ds:{nowSeconds:()=>(Jo.timeOrigin+Jo.now())/1e3},vo=Ds.nowSeconds.bind(Ds),Yh=ic.nowSeconds.bind(ic);function bo(t,e=[]){return[t,e]}function mv(t,e){const[i,r]=t;return[i,[...r,e]]}function nc(t,e){t[1].forEach(t=>{var i=t[0].type;e(t,i)})}function Is(t,e){return(e||new TextEncoder).encode(t)}function Xh(t,e){const[i,r]=t;let n=JSON.stringify(i);function o(t){"string"==typeof n?n="string"==typeof t?n+t:[Is(n,e),t]:n.push("string"==typeof t?Is(t,e):t)}for(var a of r){const[t,e]=a;o(`\n${JSON.stringify(t)}\n`),o("string"==typeof e||e instanceof Uint8Array?e:JSON.stringify(e))}return"string"==typeof n?n:vv(n)}function vv(t){var e=t.reduce((t,e)=>t+e.length,0),i=new Uint8Array(e);let r=0;for(var n of t)i.set(n,r),r+=n.length;return i}function bv(t,e){var i="string"==typeof t.data?Is(t.data,e):t.data;return[Ba({type:"attachment",length:i.length,filename:t.filename,content_type:t.contentType,attachment_type:t.attachmentType}),i]}(()=>{const{performance:t}=Ve();if(t&&t.now){var e=36e5,i=t.now(),r=Date.now(),n=t.timeOrigin?Math.abs(t.timeOrigin+i-r):e,o=n<e,a=t.timing&&t.timing.navigationStart,s="number"==typeof a?Math.abs(a+i-r):e;(o||s<e)&&n<=s&&t.timeOrigin}})();var yv={session:"session",sessions:"session",attachment:"attachment",transaction:"transaction",event:"error",client_report:"internal",user_report:"default"};function oc(t){return yv[t]}function wv(t,e,i){return bo(e?{dsn:e}:{},[[{type:"client_report"},{timestamp:i||vo(),discarded_events:t}]])}var xv=6e4;function _v(t,e=Date.now()){var i=parseInt(`${t}`,10);if(!isNaN(i))return 1e3*i;var r=Date.parse(`${t}`);return isNaN(r)?xv:r-e}function Sv(t,e){return t[e]||t.all||0}function Cv(t,e,i=Date.now()){return Sv(t,e)>i}function Tv(t,{statusCode:e,headers:i},r=Date.now()){var n={...t},o=i&&i["x-sentry-rate-limits"],a=i&&i["retry-after"];if(o)for(var s of o.trim().split(",")){const[t,e]=s.split(":",2);var l=parseInt(t,10),c=1e3*(isNaN(l)?60:l);if(e)for(var h of e.split(";"))n[h]=r+c;else n.all=r+c}else a?n.all=r+_v(a,r):429===e&&(n.all=r+6e4);return n}function kv(t){var e=Yh(),i={sid:Zr(),init:!0,timestamp:e,started:e,duration:0,status:"ok",errors:0,ignoreDuration:!1,toJSON:()=>Ov(i)};return t&&li(i,t),i}function li(t,e={}){if(e.user&&(!t.ipAddress&&e.user.ip_address&&(t.ipAddress=e.user.ip_address),!t.did&&!e.did&&(t.did=e.user.id||e.user.email||e.user.username)),t.timestamp=e.timestamp||Yh(),e.ignoreDuration&&(t.ignoreDuration=e.ignoreDuration),e.sid&&(t.sid=32===e.sid.length?e.sid:Zr()),void 0!==e.init&&(t.init=e.init),!t.did&&e.did&&(t.did=`${e.did}`),"number"==typeof e.started&&(t.started=e.started),t.ignoreDuration)t.duration=void 0;else if("number"==typeof e.duration)t.duration=e.duration;else{var i=t.timestamp-t.started;t.duration=i>=0?i:0}e.release&&(t.release=e.release),e.environment&&(t.environment=e.environment),!t.ipAddress&&e.ipAddress&&(t.ipAddress=e.ipAddress),!t.userAgent&&e.userAgent&&(t.userAgent=e.userAgent),"number"==typeof e.errors&&(t.errors=e.errors),e.status&&(t.status=e.status)}function Ev(t,e){let i={};e?i={status:e}:"ok"===t.status&&(i={status:"exited"}),li(t,i)}function Ov(t){return Ba({sid:`${t.sid}`,init:t.init,started:new Date(1e3*t.started).toISOString(),timestamp:new Date(1e3*t.timestamp).toISOString(),status:t.status,errors:t.errors,did:"number"==typeof t.did||"string"==typeof t.did?`${t.did}`:void 0,duration:t.duration,attrs:{release:t.release,environment:t.environment,ip_address:t.ipAddress,user_agent:t.userAgent}})}var sc=100;class qt{constructor(){this._notifyingListeners=!1,this._scopeListeners=[],this._eventProcessors=[],this._breadcrumbs=[],this._attachments=[],this._user={},this._tags={},this._extra={},this._contexts={},this._sdkProcessingMetadata={}}static clone(t){var e=new qt;return t&&(e._breadcrumbs=[...t._breadcrumbs],e._tags={...t._tags},e._extra={...t._extra},e._contexts={...t._contexts},e._user=t._user,e._level=t._level,e._span=t._span,e._session=t._session,e._transactionName=t._transactionName,e._fingerprint=t._fingerprint,e._eventProcessors=[...t._eventProcessors],e._requestSession=t._requestSession,e._attachments=[...t._attachments]),e}addScopeListener(t){this._scopeListeners.push(t)}addEventProcessor(t){return this._eventProcessors.push(t),this}setUser(t){return this._user=t||{},this._session&&li(this._session,{user:t}),this._notifyScopeListeners(),this}getUser(){return this._user}getRequestSession(){return this._requestSession}setRequestSession(t){return this._requestSession=t,this}setTags(t){return this._tags={...this._tags,...t},this._notifyScopeListeners(),this}setTag(t,e){return this._tags={...this._tags,[t]:e},this._notifyScopeListeners(),this}setExtras(t){return this._extra={...this._extra,...t},this._notifyScopeListeners(),this}setExtra(t,e){return this._extra={...this._extra,[t]:e},this._notifyScopeListeners(),this}setFingerprint(t){return this._fingerprint=t,this._notifyScopeListeners(),this}setLevel(t){return this._level=t,this._notifyScopeListeners(),this}setTransactionName(t){return this._transactionName=t,this._notifyScopeListeners(),this}setContext(t,e){return null===e?delete this._contexts[t]:this._contexts={...this._contexts,[t]:e},this._notifyScopeListeners(),this}setSpan(t){return this._span=t,this._notifyScopeListeners(),this}getSpan(){return this._span}getTransaction(){var t=this.getSpan();return t&&t.transaction}setSession(t){return t?this._session=t:delete this._session,this._notifyScopeListeners(),this}getSession(){return this._session}update(t){if(!t)return this;if("function"==typeof t){var e=t(this);return e instanceof qt?e:this}return t instanceof qt?(this._tags={...this._tags,...t._tags},this._extra={...this._extra,...t._extra},this._contexts={...this._contexts,...t._contexts},t._user&&Object.keys(t._user).length&&(this._user=t._user),t._level&&(this._level=t._level),t._fingerprint&&(this._fingerprint=t._fingerprint),t._requestSession&&(this._requestSession=t._requestSession)):ai(t)&&(this._tags={...this._tags,...t.tags},this._extra={...this._extra,...t.extra},this._contexts={...this._contexts,...t.contexts},t.user&&(this._user=t.user),t.level&&(this._level=t.level),t.fingerprint&&(this._fingerprint=t.fingerprint),t.requestSession&&(this._requestSession=t.requestSession)),this}clear(){return this._breadcrumbs=[],this._tags={},this._extra={},this._user={},this._contexts={},this._level=void 0,this._transactionName=void 0,this._fingerprint=void 0,this._requestSession=void 0,this._span=void 0,this._session=void 0,this._notifyScopeListeners(),this._attachments=[],this}addBreadcrumb(t,e){var i="number"==typeof e?Math.min(e,sc):sc;if(i<=0)return this;var r={timestamp:vo(),...t};return this._breadcrumbs=[...this._breadcrumbs,r].slice(-i),this._notifyScopeListeners(),this}clearBreadcrumbs(){return this._breadcrumbs=[],this._notifyScopeListeners(),this}addAttachment(t){return this._attachments.push(t),this}getAttachments(){return this._attachments}clearAttachments(){return this._attachments=[],this}applyToEvent(t,e={}){if(this._extra&&Object.keys(this._extra).length&&(t.extra={...this._extra,...t.extra}),this._tags&&Object.keys(this._tags).length&&(t.tags={...this._tags,...t.tags}),this._user&&Object.keys(this._user).length&&(t.user={...this._user,...t.user}),this._contexts&&Object.keys(this._contexts).length&&(t.contexts={...this._contexts,...t.contexts}),this._level&&(t.level=this._level),this._transactionName&&(t.transaction=this._transactionName),this._span){t.contexts={trace:this._span.getTraceContext(),...t.contexts};var i=this._span.transaction&&this._span.transaction.name;i&&(t.tags={transaction:i,...t.tags})}return this._applyFingerprint(t),t.breadcrumbs=[...t.breadcrumbs||[],...this._breadcrumbs],t.breadcrumbs=t.breadcrumbs.length>0?t.breadcrumbs:void 0,t.sdkProcessingMetadata={...t.sdkProcessingMetadata,...this._sdkProcessingMetadata},this._notifyEventProcessors([...Gh(),...this._eventProcessors],t,e)}setSDKProcessingMetadata(t){return this._sdkProcessingMetadata={...this._sdkProcessingMetadata,...t},this}_notifyEventProcessors(t,e,i,r=0){return new nt((n,o)=>{var a=t[r];if(null===e||"function"!=typeof a)n(e);else{var s=a({...e},i);(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&a.id&&null===s&&Te.log(`Event processor "${a.id}" dropped event`),Ra(s)?s.then(e=>this._notifyEventProcessors(t,e,i,r+1).then(n)).then(null,o):this._notifyEventProcessors(t,s,i,r+1).then(n).then(null,o)}})}_notifyScopeListeners(){this._notifyingListeners||(this._notifyingListeners=!0,this._scopeListeners.forEach(t=>{t(this)}),this._notifyingListeners=!1)}_applyFingerprint(t){t.fingerprint=t.fingerprint?Hh(t.fingerprint):[],this._fingerprint&&(t.fingerprint=t.fingerprint.concat(this._fingerprint)),t.fingerprint&&!t.fingerprint.length&&delete t.fingerprint}}function Gh(){return Da("globalEventProcessors",()=>[])}function Na(t){Gh().push(t)}var Va=4,Pv=100;class Qi{__init(){this._stack=[{}]}constructor(t,e=new qt,i=Va){this._version=i,Qi.prototype.__init.call(this),this.getStackTop().scope=e,t&&this.bindClient(t)}isOlderThan(t){return this._version<t}bindClient(t){this.getStackTop().client=t,t&&t.setupIntegrations&&t.setupIntegrations()}pushScope(){var t=qt.clone(this.getScope());return this.getStack().push({client:this.getClient(),scope:t}),t}popScope(){return!(this.getStack().length<=1||!this.getStack().pop())}withScope(t){var e=this.pushScope();try{t(e)}finally{this.popScope()}}getClient(){return this.getStackTop().client}getScope(){return this.getStackTop().scope}getStack(){return this._stack}getStackTop(){return this._stack[this._stack.length-1]}captureException(t,e){var i=this._lastEventId=e&&e.event_id?e.event_id:Zr(),r=new Error("Sentry syntheticException");return this._withClient((n,o)=>{n.captureException(t,{originalException:t,syntheticException:r,...e,event_id:i},o)}),i}captureMessage(t,e,i){var r=this._lastEventId=i&&i.event_id?i.event_id:Zr(),n=new Error(t);return this._withClient((o,a)=>{o.captureMessage(t,e,{originalException:t,syntheticException:n,...i,event_id:r},a)}),r}captureEvent(t,e){var i=e&&e.event_id?e.event_id:Zr();return"transaction"!==t.type&&(this._lastEventId=i),this._withClient((r,n)=>{r.captureEvent(t,{...e,event_id:i},n)}),i}lastEventId(){return this._lastEventId}addBreadcrumb(t,e){const{scope:i,client:r}=this.getStackTop();if(!i||!r)return;const{beforeBreadcrumb:n=null,maxBreadcrumbs:o=Pv}=r.getOptions&&r.getOptions()||{};if(!(o<=0)){var a={timestamp:vo(),...t},s=n?zh(()=>n(a,e)):a;null!==s&&i.addBreadcrumb(s,o)}}setUser(t){var e=this.getScope();e&&e.setUser(t)}setTags(t){var e=this.getScope();e&&e.setTags(t)}setExtras(t){var e=this.getScope();e&&e.setExtras(t)}setTag(t,e){var i=this.getScope();i&&i.setTag(t,e)}setExtra(t,e){var i=this.getScope();i&&i.setExtra(t,e)}setContext(t,e){var i=this.getScope();i&&i.setContext(t,e)}configureScope(t){const{scope:e,client:i}=this.getStackTop();e&&i&&t(e)}run(t){var e=ac(this);try{t(this)}finally{ac(e)}}getIntegration(t){var e=this.getClient();if(!e)return null;try{return e.getIntegration(t)}catch{return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.warn(`Cannot retrieve integration ${t.id} from the current Hub`),null}}startTransaction(t,e){return this._callExtensionMethod("startTransaction",t,e)}traceHeaders(){return this._callExtensionMethod("traceHeaders")}captureSession(t=!1){if(t)return this.endSession();this._sendSessionUpdate()}endSession(){var t=this.getStackTop(),e=t&&t.scope,i=e&&e.getSession();i&&Ev(i),this._sendSessionUpdate(),e&&e.setSession()}startSession(t){const{scope:e,client:i}=this.getStackTop(),{release:r,environment:n}=i&&i.getOptions()||{};var o=Ve();const{userAgent:a}=o.navigator||{};var s=kv({release:r,environment:n,...e&&{user:e.getUser()},...a&&{userAgent:a},...t});if(e){var l=e.getSession&&e.getSession();l&&"ok"===l.status&&li(l,{status:"exited"}),this.endSession(),e.setSession(s)}return s}shouldSendDefaultPii(){var t=this.getClient(),e=t&&t.getOptions();return Boolean(e&&e.sendDefaultPii)}_sendSessionUpdate(){const{scope:t,client:e}=this.getStackTop();if(t){var i=t.getSession();i&&e&&e.captureSession&&e.captureSession(i)}}_withClient(t){const{scope:e,client:i}=this.getStackTop();i&&t(i,e)}_callExtensionMethod(t,...e){var i=yo().__SENTRY__;if(i&&i.extensions&&"function"==typeof i.extensions[t])return i.extensions[t].apply(this,e);(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.warn(`Extension method ${t} couldn't be found, doing nothing.`)}}function yo(){var t=Ve();return t.__SENTRY__=t.__SENTRY__||{extensions:{},hub:void 0},t}function ac(t){var e=yo(),i=Ut(e);return $a(e,t),i}function Xe(){var t=yo();return(!qh(t)||Ut(t).isOlderThan(Va))&&$a(t,new Qi),Uh()?Mv(t):Ut(t)}function Mv(t){try{var e=yo().__SENTRY__,i=e&&e.extensions&&e.extensions.domain&&e.extensions.domain.active;if(!i)return Ut(t);if(!qh(i)||Ut(i).isOlderThan(Va)){var r=Ut(t).getStackTop();$a(i,new Qi(r.client,qt.clone(r.scope)))}return Ut(i)}catch{return Ut(t)}}function qh(t){return!!(t&&t.__SENTRY__&&t.__SENTRY__.hub)}function Ut(t){return Da("hub",()=>new Qi,t)}function $a(t,e){return!!t&&((t.__SENTRY__=t.__SENTRY__||{}).hub=e,!0)}function Av(t,e){return Xe().captureException(t,{captureContext:e})}function Dv(t){Xe().withScope(t)}var Iv="7";function Rv(t){var e=t.protocol?`${t.protocol}:`:"",i=t.port?`:${t.port}`:"";return`${e}//${t.host}${i}${t.path?`/${t.path}`:""}/api/`}function Lv(t){return`${Rv(t)}${t.projectId}/envelope/`}function Fv(t,e){return Bm({sentry_key:t.publicKey,sentry_version:Iv,...e&&{sentry_client:`${e.name}/${e.version}`}})}function Kh(t,e={}){var i="string"==typeof e?e:e.tunnel,r="string"!=typeof e&&e._metadata?e._metadata.sdk:void 0;return i||`${Lv(t)}?${Fv(t,r)}`}function Zh(t){if(!t||!t.sdk)return;const{name:e,version:i}=t.sdk;return{name:e,version:i}}function zv(t,e){return e&&(t.sdk=t.sdk||{},t.sdk.name=t.sdk.name||e.name,t.sdk.version=t.sdk.version||e.version,t.sdk.integrations=[...t.sdk.integrations||[],...e.integrations||[]],t.sdk.packages=[...t.sdk.packages||[],...e.packages||[]]),t}function jv(t,e,i,r){var n=Zh(i);return bo({sent_at:(new Date).toISOString(),...n&&{sdk:n},...!!r&&{dsn:La(e)}},["aggregates"in t?[{type:"sessions"},t]:[{type:"session"},t]])}function Bv(t,e,i,r){var n=Zh(i),o=t.type||"event";zv(t,i&&i.sdk);var a=Nv(t,n,r,e);return delete t.sdkProcessingMetadata,bo(a,[[{type:o},t]])}function Nv(t,e,i,r){var n=t.sdkProcessingMetadata&&t.sdkProcessingMetadata.dynamicSamplingContext;return{event_id:t.event_id,sent_at:(new Date).toISOString(),...e&&{sdk:e},...!!i&&{dsn:La(r)},..."transaction"===t.type&&n&&{trace:Ba({...n})}}}var lc=[];function Vv(t){var e={};return t.forEach(t=>{const{name:i}=t;var r=e[i];r&&!r.isDefaultInstance&&t.isDefaultInstance||(e[i]=t)}),Object.values(e)}function $v(t){var e=t.defaultIntegrations||[],i=t.integrations;let r;e.forEach(t=>{t.isDefaultInstance=!0}),r=Array.isArray(i)?[...e,...i]:"function"==typeof i?Hh(i(e)):e;var n=Vv(r),o=n.findIndex(t=>"Debug"===t.name);if(-1!==o){const[t]=n.splice(o,1);n.push(t)}return n}function Hv(t){var e={};return t.forEach(t=>{e[t.name]=t,-1===lc.indexOf(t.name)&&(t.setupOnce(Na,Xe),lc.push(t.name),(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.log(`Integration installed: ${t.name}`))}),e}var cc="Not capturing exception because it's already been captured.";class Gr{__init(){this._integrations={}}__init2(){this._integrationsInitialized=!1}__init3(){this._numProcessing=0}__init4(){this._outcomes={}}constructor(t){if(Gr.prototype.__init.call(this),Gr.prototype.__init2.call(this),Gr.prototype.__init3.call(this),Gr.prototype.__init4.call(this),this._options=t,t.dsn){this._dsn=Fm(t.dsn);var e=Kh(this._dsn,t);this._transport=t.transport({recordDroppedEvent:this.recordDroppedEvent.bind(this),...t.transportOptions,url:e})}else(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.warn("No DSN provided, client will not do anything.")}captureException(t,e,i){if(rc(t))return void((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.log(cc));let r=e&&e.event_id;return this._process(this.eventFromException(t,e).then(t=>this._captureEvent(t,e,i)).then(t=>{r=t})),r}captureMessage(t,e,i,r){let n=i&&i.event_id;var o=Lh(t)?this.eventFromMessage(String(t),e,i):this.eventFromException(t,i);return this._process(o.then(t=>this._captureEvent(t,i,r)).then(t=>{n=t})),n}captureEvent(t,e,i){if(e&&e.originalException&&rc(e.originalException))return void((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.log(cc));let r=e&&e.event_id;return this._process(this._captureEvent(t,e,i).then(t=>{r=t})),r}captureSession(t){this._isEnabled()?"string"!=typeof t.release?(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.warn("Discarded session because of missing or non-string release"):(this.sendSession(t),li(t,{init:!1})):(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.warn("SDK not enabled, will not capture session.")}getDsn(){return this._dsn}getOptions(){return this._options}getTransport(){return this._transport}flush(t){var e=this._transport;return e?this._isClientDoneProcessing(t).then(i=>e.flush(t).then(t=>i&&t)):Cr(!0)}close(t){return this.flush(t).then(t=>(this.getOptions().enabled=!1,t))}setupIntegrations(){this._isEnabled()&&!this._integrationsInitialized&&(this._integrations=Hv(this._options.integrations),this._integrationsInitialized=!0)}getIntegrationById(t){return this._integrations[t]}getIntegration(t){try{return this._integrations[t.id]||null}catch{return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.warn(`Cannot retrieve integration ${t.id} from the current Client`),null}}sendEvent(t,e={}){if(this._dsn){let r=Bv(t,this._dsn,this._options._metadata,this._options.tunnel);for(var i of e.attachments||[])r=mv(r,bv(i,this._options.transportOptions&&this._options.transportOptions.textEncoder));this._sendEnvelope(r)}}sendSession(t){if(this._dsn){var e=jv(t,this._dsn,this._options._metadata,this._options.tunnel);this._sendEnvelope(e)}}recordDroppedEvent(t,e){if(this._options.sendClientReports){var i=`${t}:${e}`;(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.log(`Adding outcome: "${i}"`),this._outcomes[i]=this._outcomes[i]+1||1}}_updateSessionFromEvent(t,e){let i=!1,r=!1;var n=e.exception&&e.exception.values;if(n)for(var o of(r=!0,n)){var a=o.mechanism;if(a&&!1===a.handled){i=!0;break}}var s="ok"===t.status;(s&&0===t.errors||s&&i)&&(li(t,{...i&&{status:"crashed"},errors:t.errors||Number(r||i)}),this.captureSession(t))}_isClientDoneProcessing(t){return new nt(e=>{let i=0;var r=setInterval(()=>{0==this._numProcessing?(clearInterval(r),e(!0)):(i+=1,t&&i>=t&&(clearInterval(r),e(!1)))},1)})}_isEnabled(){return!1!==this.getOptions().enabled&&void 0!==this._dsn}_prepareEvent(t,e,i){const{normalizeDepth:r=3,normalizeMaxBreadth:n=1e3}=this.getOptions();var o={...t,event_id:t.event_id||e.event_id||Zr(),timestamp:t.timestamp||vo()};this._applyClientOptions(o),this._applyIntegrationsMetadata(o);let a=i;e.captureContext&&(a=qt.clone(a).update(e.captureContext));let s=Cr(o);if(a){var l=[...e.attachments||[],...a.getAttachments()];l.length&&(e.attachments=l),s=a.applyToEvent(o,e)}return s.then(t=>"number"==typeof r&&r>0?this._normalizeEvent(t,r,n):t)}_normalizeEvent(t,e,i){if(!t)return null;var r={...t,...t.breadcrumbs&&{breadcrumbs:t.breadcrumbs.map(t=>({...t,...t.data&&{data:vr(t.data,e,i)}}))},...t.user&&{user:vr(t.user,e,i)},...t.contexts&&{contexts:vr(t.contexts,e,i)},...t.extra&&{extra:vr(t.extra,e,i)}};return t.contexts&&t.contexts.trace&&r.contexts&&(r.contexts.trace=t.contexts.trace,t.contexts.trace.data&&(r.contexts.trace.data=vr(t.contexts.trace.data,e,i))),t.spans&&(r.spans=t.spans.map(t=>(t.data&&(t.data=vr(t.data,e,i)),t))),r}_applyClientOptions(t){var e=this.getOptions();const{environment:i,release:r,dist:n,maxValueLength:o=250}=e;"environment"in t||(t.environment="environment"in e?i:"production"),void 0===t.release&&void 0!==r&&(t.release=r),void 0===t.dist&&void 0!==n&&(t.dist=n),t.message&&(t.message=Ci(t.message,o));var a=t.exception&&t.exception.values&&t.exception.values[0];a&&a.value&&(a.value=Ci(a.value,o));var s=t.request;s&&s.url&&(s.url=Ci(s.url,o))}_applyIntegrationsMetadata(t){var e=Object.keys(this._integrations);e.length>0&&(t.sdk=t.sdk||{},t.sdk.integrations=[...t.sdk.integrations||[],...e])}_captureEvent(t,e={},i){return this._processEvent(t,e,i).then(t=>t.event_id,t=>{if(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__){var e=t;"log"===e.logLevel?Te.log(e.message):Te.warn(e)}})}_processEvent(t,e,i){const{beforeSend:r,sampleRate:n}=this.getOptions();if(!this._isEnabled())return As(new Ke("SDK not enabled, will not capture event.","log"));var o="transaction"===t.type;return!o&&"number"==typeof n&&Math.random()>n?(this.recordDroppedEvent("sample_rate","error"),As(new Ke(`Discarding event because it's not included in the random sample (sampling rate = ${n})`,"log"))):this._prepareEvent(t,e,i).then(i=>{if(null===i)throw this.recordDroppedEvent("event_processor",t.type||"error"),new Ke("An event processor returned null, will not send event.","log");return e.data&&!0===e.data.__sentry__||o||!r?i:Uv(r(i,e))}).then(r=>{if(null===r)throw this.recordDroppedEvent("before_send",t.type||"error"),new Ke("`beforeSend` returned `null`, will not send event.","log");var n=i&&i.getSession();!o&&n&&this._updateSessionFromEvent(n,r);var a=r.transaction_info;if(o&&a&&r.transaction!==t.transaction){var s="custom";r.transaction_info={...a,source:s,changes:[...a.changes,{source:s,timestamp:r.timestamp,propagations:a.propagations}]}}return this.sendEvent(r,e),r}).then(null,t=>{throw t instanceof Ke?t:(this.captureException(t,{data:{__sentry__:!0},originalException:t}),new Ke(`Event processing pipeline threw an error, original event will not be sent. Details have been sent as a new event.\nReason: ${t}`))})}_process(t){this._numProcessing+=1,t.then(t=>(this._numProcessing-=1,t),t=>(this._numProcessing-=1,t))}_sendEnvelope(t){this._transport&&this._dsn?this._transport.send(t).then(null,t=>{(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.error("Error while sending event:",t)}):(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.error("Transport disabled")}_clearOutcomes(){var t=this._outcomes;return this._outcomes={},Object.keys(t).map(e=>{const[i,r]=e.split(":");return{reason:i,category:r,quantity:t[e]}})}}function Uv(t){var e="`beforeSend` method has to return `null` or a valid event.";if(Ra(t))return t.then(t=>{if(!ai(t)&&null!==t)throw new Ke(e);return t},t=>{throw new Ke(`beforeSend rejected with ${t}`)});if(!ai(t)&&null!==t)throw new Ke(e);return t}function Wv(t,e){!0===e.debug&&(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__?Te.enable():console.warn("[Sentry] Cannot initialize SDK with `debug` option using a non-debug bundle."));var i=Xe(),r=i.getScope();r&&r.update(e.initialScope);var n=new t(e);i.bindClient(n)}var Yv=30;function Jh(t,e,i=hv(t.bufferSize||Yv)){let r={};return{send:function(n){var o=[];if(nc(n,(e,i)=>{var n=oc(i);Cv(r,n)?t.recordDroppedEvent("ratelimit_backoff",n):o.push(e)}),0===o.length)return Cr();var a=bo(n[0],o),s=e=>{nc(a,(i,r)=>{t.recordDroppedEvent(e,oc(r))})};return i.add(()=>e({body:Xh(a,t.textEncoder)}).then(t=>{void 0!==t.statusCode&&(t.statusCode<200||t.statusCode>=300)&&(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.warn(`Sentry responded with status code ${t.statusCode} to sent event.`),r=Tv(r,t)},t=>{(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.error("Failed while sending event:",t),s("network_error")})).then(t=>t,t=>{if(t instanceof Ke)return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.error("Skipped sending event because buffer is full."),s("queue_overflow"),Cr();throw t})},flush:t=>i.drain(t)}}var Hn="7.14.0";let uc;class Li{constructor(){Li.prototype.__init.call(this)}static __initStatic(){this.id="FunctionToString"}__init(){this.name=Li.id}setupOnce(){uc=Function.prototype.toString,Function.prototype.toString=function(...t){var e=ja(this)||this;return uc.apply(e,t)}}}Li.__initStatic();var Xv=[/^Script error\.?$/,/^Javascript error: Script error\.? on line 0$/];class Jr{static __initStatic(){this.id="InboundFilters"}__init(){this.name=Jr.id}constructor(t={}){this._options=t,Jr.prototype.__init.call(this)}setupOnce(t,e){var i=t=>{var i=e();if(i){var r=i.getIntegration(Jr);if(r){var n=i.getClient(),o=n?n.getOptions():{};return qv(t,Gv(r._options,o))?null:t}}return t};i.id=this.name,t(i)}}function Gv(t={},e={}){return{allowUrls:[...t.allowUrls||[],...e.allowUrls||[]],denyUrls:[...t.denyUrls||[],...e.denyUrls||[]],ignoreErrors:[...t.ignoreErrors||[],...e.ignoreErrors||[],...Xv],ignoreInternal:void 0===t.ignoreInternal||t.ignoreInternal}}function qv(t,e){return e.ignoreInternal&&e0(t)?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.warn(`Event dropped due to being internal Sentry Error.\nEvent: ${wr(t)}`),!0):Kv(t,e.ignoreErrors)?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.warn(`Event dropped due to being matched by \`ignoreErrors\` option.\nEvent: ${wr(t)}`),!0):Zv(t,e.denyUrls)?((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.warn(`Event dropped due to being matched by \`denyUrls\` option.\nEvent: ${wr(t)}.\nUrl: ${Un(t)}`),!0):!Jv(t,e.allowUrls)&&((typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.warn(`Event dropped due to not being matched by \`allowUrls\` option.\nEvent: ${wr(t)}.\nUrl: ${Un(t)}`),!0)}function Kv(t,e){return!(!e||!e.length)&&Qv(t).some(t=>e.some(e=>Fa(t,e)))}function Zv(t,e){if(!e||!e.length)return!1;var i=Un(t);return!!i&&e.some(t=>Fa(i,t))}function Jv(t,e){if(!e||!e.length)return!0;var i=Un(t);return!i||e.some(t=>Fa(i,t))}function Qv(t){if(t.message)return[t.message];if(t.exception)try{const{type:e="",value:i=""}=t.exception.values&&t.exception.values[0]||{};return[`${i}`,`${e}: ${i}`]}catch{return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.error(`Cannot extract message for event ${wr(t)}`),[]}return[]}function e0(t){try{return"SentryError"===t.exception.values[0].type}catch{}return!1}function t0(t=[]){for(let i=t.length-1;i>=0;i--){var e=t[i];if(e&&"<anonymous>"!==e.filename&&"[native code]"!==e.filename)return e.filename||null}return null}function Un(t){try{let e;try{e=t.exception.values[0].stacktrace.frames}catch{}return e?t0(e):null}catch{return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.error(`Cannot extract url for event ${wr(t)}`),null}}function Qh(t,e){var i=Ha(t,e),r={type:e&&e.name,value:o0(e)};return i.length&&(r.stacktrace={frames:i}),void 0===r.type&&""===r.value&&(r.value="Unrecoverable error caught"),r}function r0(t,e,i,r){var n=Xe().getClient(),o=n&&n.getOptions().normalizeDepth,a={exception:{values:[{type:Ia(e)?e.constructor.name:r?"UnhandledRejection":"Error",value:`Non-Error ${r?"promise rejection":"exception"} captured with keys: ${Nm(e)}`}]},extra:{__serialized__:Wh(e,o)}};if(i){var s=Ha(t,i);s.length&&(a.exception.values[0].stacktrace={frames:s})}return a}function Qo(t,e){return{exception:{values:[Qh(t,e)]}}}function Ha(t,e){var i=e.stacktrace||e.stack||"",r=n0(e);try{return t(i,r)}catch{}return[]}Jr.__initStatic();var i0=/Minified React error #\d+;/i;function n0(t){if(t){if("number"==typeof t.framesToPop)return t.framesToPop;if(i0.test(t.message))return 1}return 0}function o0(t){var e=t&&t.message;return e?e.error&&"string"==typeof e.error.message?e.error.message:e:"No error message"}function s0(t,e,i,r){var n=Ua(t,e,i&&i.syntheticException||void 0,r);return Ri(n),n.level="error",i&&i.event_id&&(n.event_id=i.event_id),Cr(n)}function a0(t,e,i="info",r,n){var o=Rs(t,e,r&&r.syntheticException||void 0,n);return o.level=i,r&&r.event_id&&(o.event_id=r.event_id),Cr(o)}function Ua(t,e,i,r,n){let o;if(Rh(e)&&e.error)return Qo(t,e.error);if(ql(e)||Tm(e)){var a=e;if("stack"in e)o=Qo(t,e);else{var s=a.name||(ql(a)?"DOMError":"DOMException"),l=a.message?`${s}: ${a.message}`:s;o=Rs(t,l,i,r),Ps(o,l)}return"code"in a&&(o.tags={...o.tags,"DOMException.code":`${a.code}`}),o}return Ih(e)?Qo(t,e):ai(e)||Ia(e)?(o=r0(t,e,i,n),Ri(o,{synthetic:!0}),o):(o=Rs(t,e,i,r),Ps(o,`${e}`,void 0),Ri(o,{synthetic:!0}),o)}function Rs(t,e,i,r){var n={message:e};if(r&&i){var o=Ha(t,i);o.length&&(n.exception={values:[{value:e,stacktrace:{frames:o}}]})}return n}var ef="Breadcrumbs";class Fi{static __initStatic(){this.id=ef}__init(){this.name=Fi.id}constructor(t){Fi.prototype.__init.call(this),this.options={console:!0,dom:!0,fetch:!0,history:!0,sentry:!0,xhr:!0,...t}}setupOnce(){this.options.console&&Ht("console",c0),this.options.dom&&Ht("dom",l0(this.options.dom)),this.options.xhr&&Ht("xhr",u0),this.options.fetch&&Ht("fetch",h0),this.options.history&&Ht("history",f0)}}function l0(t){return function(e){let i,r="object"==typeof t?t.serializeAttribute:void 0;"string"==typeof r&&(r=[r]);try{i=e.event.target?ks(e.event.target,r):ks(e.event,r)}catch{i="<unknown>"}0!==i.length&&Xe().addBreadcrumb({category:`ui.${e.name}`,message:i},{event:e.event,name:e.name,global:e.global})}}function c0(t){var e={category:"console",data:{arguments:t.args,logger:"console"},level:dv(t.level),message:Zl(t.args," ")};if("assert"===t.level){if(!1!==t.args[0])return;e.message=`Assertion failed: ${Zl(t.args.slice(1)," ")||"console.assert"}`,e.data.arguments=t.args.slice(1)}Xe().addBreadcrumb(e,{input:t.args,level:t.level})}function u0(t){if(t.endTimestamp){if(t.xhr.__sentry_own_request__)return;const{method:e,url:i,status_code:r,body:n}=t.xhr.__sentry_xhr__||{};return void Xe().addBreadcrumb({category:"xhr",data:{method:e,url:i,status_code:r},type:"http"},{xhr:t.xhr,input:n})}}function h0(t){!t.endTimestamp||t.fetchData.url.match(/sentry_key/)&&"POST"===t.fetchData.method||(t.error?Xe().addBreadcrumb({category:"fetch",data:t.fetchData,level:"error",type:"http"},{data:t.error,input:t.args}):Xe().addBreadcrumb({category:"fetch",data:{...t.fetchData,status_code:t.response.status},type:"http"},{input:t.args,response:t.response}))}function f0(t){var e=Ve();let i=t.from,r=t.to;var n=Zo(e.location.href);let o=Zo(i);var a=Zo(r);o.path||(o=n),n.protocol===a.protocol&&n.host===a.host&&(r=a.relative),n.protocol===o.protocol&&n.host===o.host&&(i=o.relative),Xe().addBreadcrumb({category:"navigation",data:{from:i,to:r}})}Fi.__initStatic();var es=Ve();class d0 extends Gr{constructor(t){t._metadata=t._metadata||{},t._metadata.sdk=t._metadata.sdk||{name:"sentry.javascript.browser",packages:[{name:"npm:@sentry/browser",version:Hn}],version:Hn},super(t),t.sendClientReports&&es.document&&es.document.addEventListener("visibilitychange",()=>{"hidden"===es.document.visibilityState&&this._flushOutcomes()})}eventFromException(t,e){return s0(this._options.stackParser,t,e,this._options.attachStacktrace)}eventFromMessage(t,e="info",i){return a0(this._options.stackParser,t,e,i,this._options.attachStacktrace)}sendEvent(t,e){var i=this.getIntegrationById(ef);i&&i.options&&i.options.sentry&&Xe().addBreadcrumb({category:"sentry."+("transaction"===t.type?"transaction":"event"),event_id:t.event_id,level:t.level,message:wr(t)},{event:t}),super.sendEvent(t,e)}_prepareEvent(t,e,i){return t.platform=t.platform||"javascript",super._prepareEvent(t,e,i)}_flushOutcomes(){var t=this._clearOutcomes();if(0!==t.length)if(this._dsn){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.log("Sending outcomes:",t);var e=Kh(this._dsn,this._options),i=wv(t,this._options.tunnel&&La(this._dsn));try{var r=Ve();"[object Navigator]"!==Object.prototype.toString.call(r&&r.navigator)||"function"!=typeof r.navigator.sendBeacon||this._options.transportOptions?this._sendEnvelope(i):r.navigator.sendBeacon.bind(r.navigator)(e,Xh(i))}catch(t){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.error(t)}}else(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.log("No dsn provided, will not send outcomes");else(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.log("No outcomes to send")}}var Br=Ve();let wn;function p0(){if(wn)return wn;if(Os(Br.fetch))return wn=Br.fetch.bind(Br);var t=Br.document;let e=Br.fetch;if(t&&"function"==typeof t.createElement)try{var i=t.createElement("iframe");i.hidden=!0,t.head.appendChild(i);var r=i.contentWindow;r&&r.fetch&&(e=r.fetch),t.head.removeChild(i)}catch(t){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.warn("Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ",t)}return wn=e.bind(Br)}function g0(t,e=p0()){return Jh(t,function(i){var r={body:i.body,method:"POST",referrerPolicy:"origin",headers:t.headers,keepalive:i.body.length<=65536,...t.fetchOptions};return e(t.url,r).then(t=>({statusCode:t.status,headers:{"x-sentry-rate-limits":t.headers.get("X-Sentry-Rate-Limits"),"retry-after":t.headers.get("Retry-After")}}))})}var m0=4;function v0(t){return Jh(t,function(e){return new nt((i,r)=>{var n=new XMLHttpRequest;for(var o in n.onerror=r,n.onreadystatechange=()=>{n.readyState===m0&&i({statusCode:n.status,headers:{"x-sentry-rate-limits":n.getResponseHeader("X-Sentry-Rate-Limits"),"retry-after":n.getResponseHeader("Retry-After")}})},n.open("POST",t.url),t.headers)Object.prototype.hasOwnProperty.call(t.headers,o)&&n.setRequestHeader(o,t.headers[o]);n.send(e.body)})})}var wo="?",b0=30,y0=40,w0=50;function Wa(t,e,i,r){var n={filename:t,function:e,in_app:!0};return void 0!==i&&(n.lineno=i),void 0!==r&&(n.colno=r),n}var x0=/^\s*at (?:(.*\).*?|.*?) ?\((?:address at )?)?((?:file|https?|blob|chrome-extension|address|native|eval|webpack|<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,_0=/\((\S*)(?::(\d+))(?::(\d+))\)/,S0=t=>{var e=x0.exec(t);if(e){if(e[2]&&0===e[2].indexOf("eval")){var i=_0.exec(e[2]);i&&(e[2]=i[1],e[3]=i[2],e[4]=i[3])}const[t,r]=tf(e[1]||wo,e[2]);return Wa(r,t,e[3]?+e[3]:void 0,e[4]?+e[4]:void 0)}},C0=[b0,S0],T0=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:file|https?|blob|chrome|webpack|resource|moz-extension|safari-extension|safari-web-extension|capacitor)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,k0=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,E0=t=>{var e=T0.exec(t);if(e){if(e[3]&&e[3].indexOf(" > eval")>-1){var i=k0.exec(e[3]);i&&(e[1]=e[1]||"eval",e[3]=i[1],e[4]=i[2],e[5]="")}let t=e[3],r=e[1]||wo;return[r,t]=tf(r,t),Wa(t,r,e[4]?+e[4]:void 0,e[5]?+e[5]:void 0)}},O0=[w0,E0],P0=/^\s*at (?:((?:\[object object\])?.+) )?\(?((?:file|ms-appx|https?|webpack|blob):.*?):(\d+)(?::(\d+))?\)?\s*$/i,M0=t=>{var e=P0.exec(t);return e?Wa(e[2],e[1]||wo,+e[3],e[4]?+e[4]:void 0):void 0},A0=[y0,M0],D0=[C0,O0,A0],I0=Nh(...D0),tf=(t,e)=>{var i=-1!==t.indexOf("safari-extension"),r=-1!==t.indexOf("safari-web-extension");return i||r?[-1!==t.indexOf("@")?t.split("@")[0]:wo,i?`safari-extension:${e}`:`safari-web-extension:${e}`]:[t,e]};let Ls=0;function rf(){return Ls>0}function R0(){Ls+=1,setTimeout(()=>{Ls-=1})}function ci(t,e={},i){if("function"!=typeof t)return t;try{var r=t.__sentry_wrapped__;if(r)return r;if(ja(t))return t}catch{return t}var n=function(){var r=Array.prototype.slice.call(arguments);try{i&&"function"==typeof i&&i.apply(this,arguments);var n=r.map(t=>ci(t,e));return t.apply(this,n)}catch(t){throw R0(),Dv(i=>{i.addEventProcessor(t=>(e.mechanism&&(Ps(t,void 0,void 0),Ri(t,e.mechanism)),t.extra={...t.extra,arguments:r},t)),Av(t)}),t}};try{for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(n[o]=t[o])}catch{}jh(n,t),za(t,"__sentry_wrapped__",n);try{Object.getOwnPropertyDescriptor(n,"name").configurable&&Object.defineProperty(n,"name",{get:()=>t.name})}catch{}return n}class Kt{static __initStatic(){this.id="GlobalHandlers"}__init(){this.name=Kt.id}__init2(){this._installFunc={onerror:L0,onunhandledrejection:F0}}constructor(t){Kt.prototype.__init.call(this),Kt.prototype.__init2.call(this),this._options={onerror:!0,onunhandledrejection:!0,...t}}setupOnce(){Error.stackTraceLimit=50;var t=this._options;for(var e in t){var i=this._installFunc[e];i&&t[e]&&(B0(e),i(),this._installFunc[e]=void 0)}}}function L0(){Ht("error",t=>{const[e,i,r]=sf();if(!e.getIntegration(Kt))return;const{msg:n,url:o,line:a,column:s,error:l}=t;if(!(rf()||l&&l.__sentry_own_request__)){var c=void 0===l&&si(n)?j0(n,o,a,s):nf(Ua(i,l||n,void 0,r,!1),o,a,s);c.level="error",of(e,l,c,"onerror")}})}function F0(){Ht("unhandledrejection",t=>{const[e,i,r]=sf();if(!e.getIntegration(Kt))return;let n=t;try{"reason"in t?n=t.reason:"detail"in t&&"reason"in t.detail&&(n=t.detail.reason)}catch{}if(rf()||n&&n.__sentry_own_request__)return!0;var o=Lh(n)?z0(n):Ua(i,n,void 0,r,!0);o.level="error",of(e,n,o,"onunhandledrejection")})}function z0(t){return{exception:{values:[{type:"UnhandledRejection",value:`Non-Error promise rejection captured with value: ${String(t)}`}]}}}function j0(t,e,i,r){let n=Rh(t)?t.message:t,o="Error";var a=n.match(/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i);return a&&(o=a[1],n=a[2]),nf({exception:{values:[{type:o,value:n}]}},e,i,r)}function nf(t,e,i,r){var n=t.exception=t.exception||{},o=n.values=n.values||[],a=o[0]=o[0]||{},s=a.stacktrace=a.stacktrace||{},l=s.frames=s.frames||[],c=isNaN(parseInt(r,10))?void 0:r,h=isNaN(parseInt(i,10))?void 0:i,u=si(e)&&e.length>0?e:Am();return 0===l.length&&l.push({colno:c,filename:u,function:"?",in_app:!0,lineno:h}),t}function B0(t){(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.log(`Global Handler attached: ${t}`)}function of(t,e,i,r){Ri(i,{handled:!1,type:r}),t.captureEvent(i,{originalException:e})}function sf(){var t=Xe(),e=t.getClient(),i=e&&e.getOptions()||{stackParser:()=>[],attachStacktrace:!1};return[t,i.stackParser,i.attachStacktrace]}Kt.__initStatic();var N0=["EventTarget","Window","Node","ApplicationCache","AudioTrackList","ChannelMergerNode","CryptoOperation","EventSource","FileReader","HTMLUnknownElement","IDBDatabase","IDBRequest","IDBTransaction","KeyOperation","MediaController","MessagePort","ModalWindow","Notification","SVGElementInstance","Screen","TextTrack","TextTrackCue","TextTrackList","WebSocket","WebSocketWorker","Worker","XMLHttpRequest","XMLHttpRequestEventTarget","XMLHttpRequestUpload"];class zi{static __initStatic(){this.id="TryCatch"}__init(){this.name=zi.id}constructor(t){zi.prototype.__init.call(this),this._options={XMLHttpRequest:!0,eventTarget:!0,requestAnimationFrame:!0,setInterval:!0,setTimeout:!0,...t}}setupOnce(){var t=Ve();this._options.setTimeout&&Ze(t,"setTimeout",hc),this._options.setInterval&&Ze(t,"setInterval",hc),this._options.requestAnimationFrame&&Ze(t,"requestAnimationFrame",V0),this._options.XMLHttpRequest&&"XMLHttpRequest"in t&&Ze(XMLHttpRequest.prototype,"send",$0);var e=this._options.eventTarget;e&&(Array.isArray(e)?e:N0).forEach(H0)}}function hc(t){return function(...e){var i=e[0];return e[0]=ci(i,{mechanism:{data:{function:rr(t)},handled:!0,type:"instrument"}}),t.apply(this,e)}}function V0(t){return function(e){return t.apply(this,[ci(e,{mechanism:{data:{function:"requestAnimationFrame",handler:rr(t)},handled:!0,type:"instrument"}})])}}function $0(t){return function(...e){var i=this;return["onload","onerror","onprogress","onreadystatechange"].forEach(t=>{t in i&&"function"==typeof i[t]&&Ze(i,t,function(e){var i={mechanism:{data:{function:t,handler:rr(e)},handled:!0,type:"instrument"}},r=ja(e);return r&&(i.mechanism.data.handler=rr(r)),ci(e,i)})}),t.apply(this,e)}}function H0(t){var e=Ve(),i=e[t]&&e[t].prototype;!i||!i.hasOwnProperty||!i.hasOwnProperty("addEventListener")||(Ze(i,"addEventListener",function(e){return function(i,r,n){try{"function"==typeof r.handleEvent&&(r.handleEvent=ci(r.handleEvent,{mechanism:{data:{function:"handleEvent",handler:rr(r),target:t},handled:!0,type:"instrument"}}))}catch{}return e.apply(this,[i,ci(r,{mechanism:{data:{function:"addEventListener",handler:rr(r),target:t},handled:!0,type:"instrument"}}),n])}}),Ze(i,"removeEventListener",function(t){return function(e,i,r){var n=i;try{var o=n&&n.__sentry_wrapped__;o&&t.call(this,e,o,r)}catch{}return t.call(this,e,n,r)}}))}zi.__initStatic();var U0="cause",W0=5;class Qr{static __initStatic(){this.id="LinkedErrors"}__init(){this.name=Qr.id}constructor(t={}){Qr.prototype.__init.call(this),this._key=t.key||U0,this._limit=t.limit||W0}setupOnce(){var t=Xe().getClient();!t||Na((e,i)=>{var r=Xe().getIntegration(Qr);return r?Y0(t.getOptions().stackParser,r._key,r._limit,e,i):e})}}function Y0(t,e,i,r,n){if(!(r.exception&&r.exception.values&&n&&ar(n.originalException,Error)))return r;var o=af(t,i,n.originalException,e);return r.exception.values=[...o,...r.exception.values],r}function af(t,e,i,r,n=[]){if(!ar(i[r],Error)||n.length+1>=e)return n;var o=Qh(t,i[r]);return af(t,e,i[r],r,[o,...n])}Qr.__initStatic();var fr=Ve();class ei{constructor(){ei.prototype.__init.call(this)}static __initStatic(){this.id="HttpContext"}__init(){this.name=ei.id}setupOnce(){Na(t=>{if(Xe().getIntegration(ei)){if(!fr.navigator&&!fr.location&&!fr.document)return t;var e=t.request&&t.request.url||fr.location&&fr.location.href;const{referrer:r}=fr.document||{},{userAgent:n}=fr.navigator||{};var i={...e&&{url:e},headers:{...t.request&&t.request.headers,...r&&{Referer:r},...n&&{"User-Agent":n}}};return{...t,request:i}}return t})}}ei.__initStatic();class ti{constructor(){ti.prototype.__init.call(this)}static __initStatic(){this.id="Dedupe"}__init(){this.name=ti.id}setupOnce(t,e){var i=t=>{var i=e().getIntegration(ti);if(i){try{if(X0(t,i._previousEvent))return(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.warn("Event dropped due to being a duplicate of previously captured event."),null}catch{return i._previousEvent=t}return i._previousEvent=t}return t};i.id=this.name,t(i)}}function X0(t,e){return!(!e||!G0(t,e)&&!q0(t,e))}function G0(t,e){var i=t.message,r=e.message;return!(!i&&!r||i&&!r||!i&&r||i!==r||!cf(t,e)||!lf(t,e))}function q0(t,e){var i=fc(e),r=fc(t);return!!(i&&r&&i.type===r.type&&i.value===r.value&&cf(t,e)&&lf(t,e))}function lf(t,e){let i=dc(t),r=dc(e);if(!i&&!r)return!0;if(i&&!r||!i&&r||r.length!==i.length)return!1;for(let t=0;t<r.length;t++){var n=r[t],o=i[t];if(n.filename!==o.filename||n.lineno!==o.lineno||n.colno!==o.colno||n.function!==o.function)return!1}return!0}function cf(t,e){let i=t.fingerprint,r=e.fingerprint;if(!i&&!r)return!0;if(i&&!r||!i&&r)return!1;try{return i.join("")===r.join("")}catch{return!1}}function fc(t){return t.exception&&t.exception.values&&t.exception.values[0]}function dc(t){var e=t.exception;if(e)try{return e.values[0].stacktrace.frames}catch{return}}ti.__initStatic();var K0=[new Jr,new Li,new zi,new Fi,new Kt,new Qr,new ti,new ei];function Z0(t={}){if(void 0===t.defaultIntegrations&&(t.defaultIntegrations=K0),void 0===t.release){var e=Ve();e.SENTRY_RELEASE&&e.SENTRY_RELEASE.id&&(t.release=e.SENTRY_RELEASE.id)}void 0===t.autoSessionTracking&&(t.autoSessionTracking=!0),void 0===t.sendClientReports&&(t.sendClientReports=!0);var i={...t,stackParser:$m(t.stackParser||I0),integrations:$v(t),transport:t.transport||(Vh()?g0:v0)};Wv(d0,i),t.autoSessionTracking&&J0()}function pc(t){t.startSession({ignoreDuration:!0}),t.captureSession()}function J0(){if(typeof Ve().document>"u")(typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__)&&Te.warn("Session tracking in non-browser environment with @sentry/browser is not supported.");else{var t=Xe();!t.captureSession||(pc(t),Ht("history",({from:t,to:e})=>{void 0===t||t===e||pc(Xe())}))}}function Q0(t){t._metadata=t._metadata||{},t._metadata.sdk=t._metadata.sdk||{name:"sentry.javascript.react",packages:[{name:"npm:@sentry/react",version:Hn}],version:Hn},Z0(t)}var xo={exports:{}},_o={},eb=ae,tb=Symbol.for("react.element"),rb=Symbol.for("react.fragment"),ib=Object.prototype.hasOwnProperty,nb=eb.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,ob={key:!0,ref:!0,__self:!0,__source:!0};function uf(t,e,i){var r,n={},o=null,a=null;for(r in void 0!==i&&(o=""+i),void 0!==e.key&&(o=""+e.key),void 0!==e.ref&&(a=e.ref),e)ib.call(e,r)&&!ob.hasOwnProperty(r)&&(n[r]=e[r]);if(t&&t.defaultProps)for(r in e=t.defaultProps)void 0===n[r]&&(n[r]=e[r]);return{$$typeof:tb,type:t,key:o,ref:a,props:n,_owner:nb.current}}_o.Fragment=rb,_o.jsx=uf,_o.jsxs=uf,xo.exports=_o;const ji=xo.exports.Fragment,x=xo.exports.jsx,ie=xo.exports.jsxs;var Ya=(t=>(t.INLINE="inline",t.OVERLAY="overlay",t))(Ya||{}),hf=(t=>(t.TOP="top",t.BOTTOM="bottom",t.HIDDEN="",t))(hf||{});const sb=[{name:"circle",type:"Circle"},{name:"square",type:"Rect",options:{lockUniScaling:!1}},{name:"triangle",type:"Triangle"},{name:"ellipse",type:"Ellipse",options:{lockUniScaling:!1}},{name:"Arrow #1",type:"Path",options:{path:"M 294.9 16.4 l 15.7 42.2 c -171.4 70.3 -294 242.3 -289.1 437.4 l 14.7 -1 c 9.1 -0.6 18.1 -1.2 27.1 -1.9 l 14.7 -1 c -4.3 -170.1 102.5 -320 252 -381.3 l 15.7 42.2 c 34.7 -40.5 83.1 -76.6 144.8 -99.8 c -58.1 -26.2 -124.9 -39.6 -195.6 -36.8 z"}},{name:"Arrow #2",type:"Path",options:{path:"M 16 248.4 v 14.9 h 447.5 l -93.2 82.5 l 11.9 10.5 l 113.8 -100.2 l -113.6 -100.4 l -11.8 10.5 l 92.9 82.2 z"}},{name:"Arrow #3",type:"Path",options:{path:"M 496 256 l -118.6 -66 v 40.8 h -361.4 v 50.4 h 361.4 v 40.8 l 118.6 -66 z"}},{name:"Line",type:"Path",options:{path:"M 16 256 h 480",strokeWidth:10,stroke:"#000",padding:10}},{name:"Star",type:"Path",options:{path:"M 256 406.3 l 148.3 78 l -28.3 -165.2 l 120 -117 l -165.8 -24.1 l -74.2 -150.3 l -74.2 150.3 l -165.8 24.1 l 120 117 l -28.3 165.2 z"}},{name:"Polygon",type:"Path",options:{path:"M 256 19.6 l 156.6 57.1 l 83.4 144.3 l -28.9 164.2 l -127.7 107.2 h -166.8 l -127.7 -107.2 l -28.9 -164.2 l 83.4 -144.3 z"}},{name:"Badge",type:"Path",options:{path:"M 257.3 16.2 s -148 58.2 -204.4 81.4 c 0 75.7 -16.8 303.5 204.4 398.2 c 218.7 -94.6 201.9 -322.4 201.9 -398.2 c -62.1 -23.6 -201.9 -81.4 -201.9 -81.4 z"}}],ab=["afro-1","afro","agent","alien-1","alien","angel","angry-1","angry-2","angry-3","angry-4","angry-5","angry","arguing","arrogant","asian-1","asian","avatar","baby-1","baby-2","baby","bully","burglar","businessman","cheeky-1","cheeky","clown","confused-1","confused-2","confused-3","confused","creepy","crying-1","crying-2","crying-3","crying","dazed-1","dazed-2","dazed-3","dazed","dead-1","dead-2","dead-3","dead-4","dead-5","dead-6","dead","desperate-1","desperate","detective","dissapointment","doctor","drunk","dumb","emo-1","emo-2","emo","emoticon","evil","faint-1","faint","flirt-1","flirt-2","flirt","flirty","gangster","geek-1","geek","gentleman-1","gentleman-2","gentleman-3","gentleman-4","gentleman","ginger","girl-1","girl","goofy-1","goofy-2","goofy-3","goofy-4","goofy","grubby-1","grubby","happy-1","happy-10","happy-11","happy-12","happy-13","happy-14","happy-15","happy-16","happy-2","happy-3","happy-4","happy-5","happy-6","happy-7","happy-8","happy-9","happy","harry-potter","heisenberg","hipster-1","hipster-2","hipster","in-love-1","in-love-2","in-love-3","in-love-4","in-love-5","in-love-6","in-love","japan","jew","joyful-1","joyful-2","joyful","kiss-1","kiss-2","kiss-3","kiss-4","kiss","laughing-1","laughing-2","laughing-3","laughing","listening","love","manly","miserly-1","miserly","nerd-1","nerd-2","nerd-3","nerd-4","nerd","ninja","pirate-1","pirate-2","pirate","punk-1","punk-2","punk","rapper","relieved","rich-1","rich-2","rich","rockstar","sad-1","sad-2","sad-3","sad-4","sad-5","sad-6","sad","scared-1","scared-2","scared-3","scared","sceptic-1","sceptic-2","sceptic-3","sceptic-4","sceptic-5","sceptic-6","sceptic-7","sceptic","secret","shocked-1","shocked-2","shocked-3","shocked","sick-1","sick-2","sick-3","sick-4","sick","silent","skeleton","smile","smiling-1","smiling","smoked","smug-1","smug-2","smug-3","smug-4","smug-5","smug-6","smug","sporty","stunned","superhero-1","superhero-2","superhero-3","superhero-4","superhero","surprised-1","surprised","thinking","tired-1","tired-2","tired-3","tired","tough-1","tough","trendy","vampire-1","vampire","wink-1","wink-2","wink","winking-1","winking","yawning-1","yawning-2","yawning-3","yawning","yelling","zombie"];function ce(t,e){return{...e,message:t}}const lb=[{name:"emoticons",list:ab,type:"svg",thumbnailUrl:"images/stickers/categories/emoticon.svg"},{name:"doodles",items:100,type:"svg",thumbnailUrl:"images/stickers/categories/doodles.svg"},{name:"landmarks",items:100,type:"svg",thumbnailUrl:"images/stickers/categories/landmark.svg",invertPreview:!0},{name:"bubbles",items:104,type:"png",thumbnailUrl:"images/stickers/categories/speech-bubble.svg"},{name:"transportation",items:22,type:"svg",thumbnailUrl:"images/stickers/categories/transportation.svg",invertPreview:!0},{name:"beach",items:22,type:"svg",thumbnailUrl:"images/stickers/categories/beach.svg",invertPreview:!0}],cb={emoticons:ce("Emoticons"),doodles:ce("Doodles"),landmarks:ce("Landmarks"),bubbles:ce("Bubbles"),transportation:ce("Transportation"),beach:ce("Beach")},Xa={fill:"#1565C0",opacity:1,backgroundColor:null,strokeWidth:.05,stroke:"#000"},ub=["PencilBrush","SprayBrush","CircleBrush","DiamondBrush","VLineBrush","HLineBrush","SquareBrush"],ff=[1,8,15,20,25];var Wn=(t=>(t.DARK="dark",t.LIGHT="light",t))(Wn||{});const Fs=[{name:Wn.LIGHT,colors:{"--be-foreground-base":"0 0 0","--be-primary-light":"191 219 254","--be-primary":"59 130 246","--be-primary-dark":"37 99 235","--be-on-primary":"255 255 255","--be-danger":"179 38 30","--be-on-danger":"255 255 255","--be-background":"255 255 255","--be-background-alt":"250 250 250","--be-paper":"255 255 255","--be-disabled-bg-opacity":"12%","--be-disabled-fg-opacity":"26%","--be-hover-opacity":"4%","--be-focus-opacity":"12%","--be-selected-opacity":"8%","--be-text-main-opacity":"87%","--be-text-muted-opacity":"60%","--be-divider-opacity":"12%"}},{name:Wn.DARK,isDark:!0,colors:{"--be-foreground-base":"255 255 255","--be-primary-light":"239 246 255","--be-primary":"191 219 254","--be-primary-dark":"147 197 253","--be-on-primary":"56 30 114","--be-danger":"242 184 181","--be-on-danger":"96 20 16","--be-background":"20 21 23","--be-background-alt":"26 27 30","--be-paper":"44 46 51","--be-disabled-bg-opacity":"12%","--be-disabled-fg-opacity":"30%","--be-hover-opacity":"8%","--be-focus-opacity":"12%","--be-selected-opacity":"16%","--be-text-main-opacity":"100%","--be-text-muted-opacity":"70%","--be-divider-opacity":"12%"}}];var Pe=(t=>(t.FILTER="filter",t.RESIZE="resize",t.CROP="crop",t.DRAW="draw",t.TEXT="text",t.SHAPES="shapes",t.STICKERS="stickers",t.FRAME="frame",t.CORNERS="corners",t.MERGE="merge",t))(Pe||{});function df(t){var e,i,r="";if("string"==typeof t||"number"==typeof t)r+=t;else if("object"==typeof t)if(Array.isArray(t))for(e=0;e<t.length;e++)t[e]&&(i=df(t[e]))&&(r&&(r+=" "),r+=i);else for(e in t)t[e]&&(r&&(r+=" "),r+=e);return r}function ue(){for(var t,e,i=0,r="";i<arguments.length;)(t=arguments[i++])&&(e=df(t))&&(r&&(r+=" "),r+=e);return r}const hb=et((t,e)=>{const{attr:i,size:r,title:n,className:o,color:a,style:s,children:l,viewBox:c,width:h,height:u,...d}=t;return ie("svg",{"aria-hidden":!n,focusable:!1,xmlns:"http://www.w3.org/2000/svg",viewBox:c||"0 0 24 24",...i,...d,className:ue("svg-icon",o,fb(r)),style:{color:a,...s},ref:e,height:u||"1em",width:h||"1em",children:[n&&x("title",{children:n}),l]})});function fb(t){switch(t){case"2xs":return"icon-2xs";case"xs":return"icon-xs";case"sm":return"icon-sm";case"md":return"icon-md";case"lg":return"icon-lg";case"xl":return"icon-xl";default:return""}}function me(t,e="",i){return ae.memo(ae.forwardRef((r,n)=>x(hb,{"data-testid":`${e}Icon`,ref:n,viewBox:i,...r,size:r.size||"md",children:t})))}function db(t,e=""){return me(pf(t),e)}function pf(t){return(null==t?void 0:t.map)&&t.map((t,e)=>ae.createElement(t.tag,{key:e,...t.attr},pf(t.child)))}const gf=me(x("path",{d:"M3 17v2h6v-2H3zM3 5v2h10V5H3zm10 16v-2h8v-2h-8v-2h-2v6h2zM7 9v2H3v2h4v2h2V9H7zm14 4v-2H11v2h10zm-6-4h2V7h4V5h-4V3h-2v6z"}),"TuneOutlined"),pb=me(x("path",{d:"M21 15h2v2h-2v-2zm0-4h2v2h-2v-2zm2 8h-2v2c1 0 2-1 2-2zM13 3h2v2h-2V3zm8 4h2v2h-2V7zm0-4v2h2c0-1-1-2-2-2zM1 7h2v2H1V7zm16-4h2v2h-2V3zm0 16h2v2h-2v-2zM3 3C2 3 1 4 1 5h2V3zm6 0h2v2H9V3zM5 3h2v2H5V3zm-4 8v8c0 1.1.9 2 2 2h12V11H1zm2 8 2.5-3.21 1.79 2.15 2.5-3.22L13 19H3z"}),"PhotoSizeSelectLargeOutlined"),gb=me(x("path",{d:"M17 15h2V7c0-1.1-.9-2-2-2H9v2h8v8zM7 17V1H5v4H1v2h4v10c0 1.1.9 2 2 2h10v4h2v-4h4v-2H7z"}),"CropOutlined"),mb=me(x("path",{d:"M2.5 4v3h5v12h3V7h5V4h-13zm19 5h-9v3h3v7h3v-7h3V9z"}),"TextFieldsOutlined"),vb=me(x("path",{d:"M10.5 4.5c.28 0 .5.22.5.5v2h6v6h2c.28 0 .5.22.5.5s-.22.5-.5.5h-2v6h-2.12c-.68-1.75-2.39-3-4.38-3s-3.7 1.25-4.38 3H4v-2.12c1.75-.68 3-2.39 3-4.38 0-1.99-1.24-3.7-2.99-4.38L4 7h6V5c0-.28.22-.5.5-.5m0-2C9.12 2.5 8 3.62 8 5H4c-1.1 0-1.99.9-1.99 2v3.8h.29c1.49 0 2.7 1.21 2.7 2.7s-1.21 2.7-2.7 2.7H2V20c0 1.1.9 2 2 2h3.8v-.3c0-1.49 1.21-2.7 2.7-2.7s2.7 1.21 2.7 2.7v.3H17c1.1 0 2-.9 2-2v-4c1.38 0 2.5-1.12 2.5-2.5S20.38 11 19 11V7c0-1.1-.9-2-2-2h-4c0-1.38-1.12-2.5-2.5-2.5z"}),"ExtensionOutlined"),bb=me(x("path",{d:"M10.25 13c0 .69-.56 1.25-1.25 1.25S7.75 13.69 7.75 13s.56-1.25 1.25-1.25 1.25.56 1.25 1.25zM15 11.75c-.69 0-1.25.56-1.25 1.25s.56 1.25 1.25 1.25 1.25-.56 1.25-1.25-.56-1.25-1.25-1.25zm7 .25c0 5.52-4.48 10-10 10S2 17.52 2 12 6.48 2 12 2s10 4.48 10 10zM10.66 4.12C12.06 6.44 14.6 8 17.5 8c.46 0 .91-.05 1.34-.12C17.44 5.56 14.9 4 12 4c-.46 0-.91.05-1.34.12zM4.42 9.47c1.71-.97 3.03-2.55 3.66-4.44C6.37 6 5.05 7.58 4.42 9.47zM20 12c0-.78-.12-1.53-.33-2.24-.7.15-1.42.24-2.17.24-3.13 0-5.92-1.44-7.76-3.69C8.69 8.87 6.6 10.88 4 11.86c.01.04 0 .09 0 .14 0 4.41 3.59 8 8 8s8-3.59 8-8z"}),"FaceOutlined"),yb=me(x("path",{d:"M20 4h-4l-4-4-4 4H4c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 16H4V6h4.52l3.52-3.5L15.52 6H20v14zM6 18h12V8H6v10zm2-8h8v6H8v-6z"}),"FilterFramesOutlined"),wb=me(x("path",{d:"M6.41 21 5 19.59l4.83-4.83c.75-.75 1.17-1.77 1.17-2.83v-5.1L9.41 8.41 8 7l4-4 4 4-1.41 1.41L13 6.83v5.1c0 1.06.42 2.08 1.17 2.83L19 19.59 17.59 21 12 15.41 6.41 21z"}),"MergeOutlined"),xb=me(x("path",{d:"M19 19h2v2h-2v-2zm0-2h2v-2h-2v2zM3 13h2v-2H3v2zm0 4h2v-2H3v2zm0-8h2V7H3v2zm0-4h2V3H3v2zm4 0h2V3H7v2zm8 16h2v-2h-2v2zm-4 0h2v-2h-2v2zm4 0h2v-2h-2v2zm-8 0h2v-2H7v2zm-4 0h2v-2H3v2zM21 8c0-2.76-2.24-5-5-5h-5v2h5c1.65 0 3 1.35 3 3v5h2V8z"}),"RoundedCornerOutlined"),gc=me(x("path",{d:"M20 4v12H8V4h12m0-2H8c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-8.5 9.67 1.69 2.26 2.48-3.1L19 15H9zM2 6v14c0 1.1.9 2 2 2h14v-2H4V6H2z"}),"PhotoLibraryOutlined"),mf=me(x("path",{d:"M13 3c-4.97 0-9 4.03-9 9H1l3.89 3.89.07.14L9 12H6c0-3.87 3.13-7 7-7s7 3.13 7 7-3.13 7-7 7c-1.93 0-3.68-.79-4.94-2.06l-1.42 1.42C8.27 19.99 10.51 21 13 21c4.97 0 9-4.03 9-9s-4.03-9-9-9zm-1 5v5l4.25 2.52.77-1.28-3.52-2.09V8z"}),"HistoryOutlined"),_b=me([x("path",{d:"m2.53 19.65 1.34.56v-9.03l-2.43 5.86c-.41 1.02.08 2.19 1.09 2.61zm19.5-3.7L17.07 3.98c-.31-.75-1.04-1.21-1.81-1.23-.26 0-.53.04-.79.15L7.1 5.95c-.75.31-1.21 1.03-1.23 1.8-.01.27.04.54.15.8l4.96 11.97c.31.76 1.05 1.22 1.83 1.23.26 0 .52-.05.77-.15l7.36-3.05c1.02-.42 1.51-1.59 1.09-2.6zm-9.2 3.8L7.87 7.79l7.35-3.04h.01l4.95 11.95-7.35 3.05z"},"0"),x("circle",{cx:"11",cy:"9",r:"1"},"1"),x("path",{d:"M5.88 19.75c0 1.1.9 2 2 2h1.45l-3.45-8.34v6.34z"},"2")],"StyleOutlined"),Sb=me(x("path",{d:"M16 9v10H8V9h8m-1.5-6h-5l-1 1H5v2h14V4h-3.5l-1-1zM18 7H6v12c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7z"}),"DeleteOutlined"),Cb=me(x("path",{d:"M18.85,10.39l1.06-1.06c0.78-0.78,0.78-2.05,0-2.83L18.5,5.09c-0.78-0.78-2.05-0.78-2.83,0l-1.06,1.06L18.85,10.39z M14.61,11.81L7.41,19H6v-1.41l7.19-7.19L14.61,11.81z M13.19,7.56L4,16.76V21h4.24l9.19-9.19L13.19,7.56L13.19,7.56z M19,17.5 c0,2.19-2.54,3.5-5,3.5c-0.55,0-1-0.45-1-1s0.45-1,1-1c1.54,0,3-0.73,3-1.5c0-0.47-0.48-0.87-1.23-1.2l1.48-1.48 C18.32,15.45,19,16.29,19,17.5z M4.58,13.35C3.61,12.79,3,12.06,3,11c0-1.8,1.89-2.63,3.56-3.36C7.59,7.18,9,6.56,9,6 c0-0.41-0.78-1-2-1C5.74,5,5.2,5.61,5.17,5.64C4.82,6.05,4.19,6.1,3.77,5.76C3.36,5.42,3.28,4.81,3.62,4.38C3.73,4.24,4.76,3,7,3 c2.24,0,4,1.32,4,3c0,1.87-1.93,2.72-3.64,3.47C6.42,9.88,5,10.5,5,11c0,0.31,0.43,0.6,1.07,0.86L4.58,13.35z"}),"Draw"),Tb=me(x("path",{d:"m12 5.69 5 4.5V18h-2v-6H9v6H7v-7.81l5-4.5M12 3 2 12h3v8h6v-6h2v6h6v-8h3L12 3z"}),"HomeOutlined"),$t={[Pe.FILTER]:{name:ce("Applied Filters"),icon:gf},[Pe.RESIZE]:{name:ce("Resized Image"),icon:pb},[Pe.CROP]:{name:ce("Cropped Image"),icon:gb},[Pe.DRAW]:{name:ce("Added Drawing"),icon:Cb},[Pe.TEXT]:{name:ce("Added Text"),icon:mb},[Pe.SHAPES]:{name:ce("Added Shape"),icon:vb},[Pe.STICKERS]:{name:ce("Added Sticker"),icon:bb},[Pe.FRAME]:{name:ce("Added Frame"),icon:yb},[Pe.MERGE]:{name:ce("Merged Objects"),icon:wb},[Pe.CORNERS]:{name:ce("Rounded Corner"),icon:xb},bgImage:{name:ce("Replaced Background Image"),icon:gc},overlayImage:{name:ce("Added Image"),icon:gc},initial:{name:ce("Initial"),icon:Tb},loadedState:{name:ce("Loaded State"),icon:mf},objectStyle:{name:ce("Changed Style"),icon:_b},deletedObject:{name:ce("Deleted object"),icon:Sb}},kb=Object.values(Pe).map(t=>({name:t,icon:$t[t].icon,action:t===Pe.MERGE?t=>{t.tools.merge.apply()}:t})),Eb={filter:ce("Filter"),resize:ce("Resize"),crop:ce("Crop"),draw:ce("Draw"),text:ce("Text"),shapes:ce("Shapes"),Stickers:ce("Stickers"),frame:ce("Frame"),corners:ce("Corners"),merge:ce("Merge")},Ob=me(x("path",{d:"M18 15v3H6v-3H4v3c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2v-3h-2zm-1-4-1.41-1.41L13 12.17V4h-2v8.17L8.41 9.59 7 11l5 5 5-5z"}),"FileDownloadOutlined"),Pb="pixie",Mb="3.0.3",Ab="dist/pixie.umd.js",Db="dist/pixie.es.js",Ib="dist/types/src/pixie.d.ts",Rb={".":{import:"./dist/pixie.es.js",require:"./dist/pixie.umd.js"}},Lb=["dist"],Fb={dev:"vite --host",build:"vite build && npm run build-umd && npm run types && npm run build-cc",types:"tsc --skipLibCheck --emitDeclarationOnly --noEmit false --declarationMap false","build-umd":"vite build --config scripts/vite-umd.config.ts","build-cc":"./scripts/build-cc.sh",serve:"vite preview",extract:"node ./scripts/extract-translations.js"},zb={"@floating-ui/react-dom":"^1.0.0","@internationalized/date":"^3.0.1","@internationalized/number":"^3.0.3","@react-aria/focus":"3.7.0","@react-aria/interactions":"^3.11.0","@react-aria/overlays":"^3.10.1","@react-aria/ssr":"^3.3.0","@react-aria/utils":"^3.13.3","@react-stately/color":"^3.1.1","@react-stately/utils":"^3.5.1","@sentry/react":"^7.13.0","@sentry/tracing":"^7.13.0","@tanstack/react-query":"^4.3.4","@tanstack/react-virtual":"^3.0.0-beta.18","@use-gesture/react":"^10.2.20",axios:"^0.27.2","axios-retry":"^3.3.1",clsx:"^1.2.1",color:"^4.2.3","deep-object-diff":"^1.1.7",deepmerge:"^4.2.2","dot-object":"^2.1.4",fabric:"^5.2.4","file-saver":"^2.0.5","framer-motion":"^7.3.6",immer:"^9.0.15","mime-match":"^1.0.2","nano-memoize":"^1.3.0",nanoid:"^4.0.0","number-precision":"^1.5.1",react:">=18.2.0","react-ace":"^10.1.0","react-colorful":"^5.6.1","react-dom":">=18.2.0","react-hook-form":"^7.36.1","react-merge-refs":"^2.0.1","react-router-dom":"^6.4.1","react-textarea-autosize":"^8.3.3","react-use-clipboard":"^1.0.7","react-use-cookie":"^1.4.0","style-inject":"^0.3.0","tus-js-client":"^3.0.1",zustand:"^4.1.1"},jb={react:">=18.2.0","react-dom":">=18.2.0"},Bb={"@faker-js/faker":"^7.5.0","@storybook/addon-actions":"^6.5.11","@storybook/addon-essentials":"^6.5.11","@storybook/addon-interactions":"^6.5.11","@storybook/addon-links":"^6.5.11","@storybook/builder-vite":"^0.2.2","@storybook/react":"^6.5.12","@storybook/testing-library":"^0.0.13","@tailwindcss/typography":"^0.5.7","@types/color":"^3.0.2","@types/dot-object":"^2.1.2","@types/fabric":"^4.5.12","@types/file-saver":"^2.0.4","@types/lodash.debounce":"^4.0.6","@types/react":"^18.0.21","@types/react-dom":"^18.0.6","@types/react-recaptcha-v3":"^1.1.2","@types/swagger-ui-react":"^4.11.0","@typescript-eslint/eslint-plugin":"^5.38.0","@typescript-eslint/parser":"^5.38.0","@vitejs/plugin-react":"^2.1.0",autoprefixer:"^10.4.12",cssnano:"^5.1.13",eslint:"8.22","eslint-config-prettier":"^8.3.0","eslint-plugin-import":"^2.25.2","eslint-plugin-jsx-a11y":"^6.6.1","eslint-plugin-react":"^7.31.8","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-storybook":"^0.6.3","fast-glob":"^3.2.12","fast-xml-parser":"^4.0.10","fs-extra":"^10.1.0",postcss:"^8.4.16",prettier:"^2.7.1","rollup-plugin-visualizer":"^5.8.1",tailwindcss:"^3.1.8",typescript:"^4.8.3","utility-types":"^3.10.0",vite:"^3.1.3","vite-plugin-checker":"^0.5.1","vite-tsconfig-paths":"^3.5.0"},Nb={name:Pb,version:Mb,main:Ab,module:Db,types:Ib,private:!0,exports:Rb,files:Lb,scripts:Fb,dependencies:zb,peerDependencies:jb,devDependencies:Bb},Vb=Nb.version,vf={selector:"pixie-editor",textureSize:4096,activeLanguage:"en",ui:{visible:!0,mode:Ya.INLINE,forceOverlayModeOnMobile:!0,activeTheme:Wn.LIGHT,themes:Fs,allowEditorClose:!0,menubar:{items:[{type:"undoWidget",align:"left"},{type:"zoomWidget",align:"center",desktopOnly:!0},{type:"button",icon:mf,align:"right",desktopOnly:!0,action:t=>{t.togglePanel("history")}},{type:"button",icon:Ob,label:ce("Done"),align:"right",action:t=>{var e;null!=(e=t.state.config.ui)&&e.showExportPanel?t.state.togglePanel("export",!0):t.tools.export.save("image")}}]},nav:{position:hf.BOTTOM,items:[...kb]},openImageDialog:{show:!0,sampleImages:[{url:"images/samples/sample1.jpg",thumbnail:"images/samples/sample1_thumbnail.jpg"},{url:"images/samples/sample2.jpg",thumbnail:"images/samples/sample2_thumbnail.jpg"},{url:"images/samples/sample3.jpg",thumbnail:"images/samples/sample3_thumbnail.jpg"}]},colorPresets:{items:["rgb(0,0,0)","rgb(255, 255, 255)","rgb(242, 38, 19)","rgb(249, 105, 14)","rgb(253, 227, 167)","rgb(4, 147, 114)","rgb(30, 139, 195)","rgb(142, 68, 173)"]}},objectDefaults:{global:{...Xa},sticker:{fill:void 0},text:{textAlign:"initial",underline:!1,linethrough:!1,fontStyle:"normal",fontFamily:"Times New Roman",fontWeight:"normal",stroke:void 0,fontSize:40}},tools:{filter:{items:["grayscale","blackWhite","sharpen","invert","vintage","polaroid","kodachrome","technicolor","brownie","sepia","removeColor","brightness","gamma","noise","pixelate","blur","emboss","blendColor"]},zoom:{allowUserZoom:!0,fitImageToScreen:!0},crop:{allowCustomRatio:!0,defaultRatio:"1:1",presets:[{ratio:null,name:"Custom"},{ratio:"1:1",name:"Square"},{ratio:"4:3"},{ratio:"16:9"},{ratio:"5:3"},{ratio:"5:4"},{ratio:"6:4"},{ratio:"7:5"},{ratio:"10:8"}]},text:{defaultText:"Double click to edit",items:[{family:"Roboto",src:"fonts/open-sans-v27-latin-ext_latin-regular.woff2"},{family:"Fuzzy Bubbles",src:"fonts/fuzzy-bubbles-v3-latin-700.woff2",descriptors:{weight:"700"}},{family:"Aleo Bold",src:"fonts/aleo-v4-latin-ext_latin-700.woff2",descriptors:{weight:"700"}},{family:"Amatic SC",src:"fonts/amatic-sc-v16-latin-ext_latin-regular.woff2"},{family:"Corinthia Bold",src:"fonts/corinthia-v7-latin-ext_latin-700.woff2"},{family:"Bungee Inline",src:"fonts/bungee-inline-v6-latin-ext_latin-regular.woff2"},{family:"Robot Slab Bold",src:"fonts/roboto-slab-v16-latin-ext_latin-500.woff2"},{family:"Carter One",src:"fonts/carter-one-v12-latin-regular.woff2"},{family:"Cody Star",src:"fonts/codystar-v10-latin-ext_latin-regular.woff2"},{family:"Fira Sans",src:"fonts/fira-sans-v11-latin-ext_latin_cyrillic-regular.woff2"},{family:"Krona One",src:"fonts/krona-one-v9-latin-ext_latin-regular.woff2"},{family:"Kumar One Outline",src:"fonts/kumar-one-outline-v8-latin-ext_latin-regular.woff2"},{family:"Lobster Two",src:"fonts/lobster-two-v13-latin-regular.woff2"},{family:"Molle Italic",src:"fonts/molle-v11-latin-ext_latin-italic.woff2"},{family:"Monoton",src:"fonts/monoton-v10-latin-regular.woff2"},{family:"Nixie One",src:"fonts/nixie-one-v11-latin-regular.woff2"},{family:"Permanent Marker",src:"fonts/permanent-marker-v10-latin-regular.woff2"},{family:"Sancreek",src:"fonts/sancreek-v13-latin-ext_latin-regular.woff2"},{family:"Stint Ultra Expanded",src:"fonts/stint-ultra-expanded-v10-latin-regular.woff2"},{family:"VT323",src:"fonts/vt323-v12-latin-ext_latin-regular.woff2"},{family:"Trash Hand",src:"fonts/TrashHand.ttf"}]},draw:{brushSizes:ff,brushTypes:ub},shapes:{items:sb.slice()},stickers:{items:lb},import:{validImgExtensions:["png","jpg","jpeg","svg","gif"],fitOverlayToScreen:!0,openDroppedImageAsBackground:!1},export:{defaultFormat:"png",defaultQuality:.8,defaultName:"image"},frame:{items:[{name:"basic",mode:"basic",size:{min:1,max:35,default:10}},{name:"pine",mode:"stretch",size:{min:1,max:35,default:15}},{name:"oak",mode:"stretch",size:{min:1,max:35,default:15}},{name:"rainbow",mode:"stretch",size:{min:1,max:35,default:15}},{name:"grunge1",display_name:"grunge #1",mode:"stretch",size:{min:1,max:35,default:15}},{name:"grunge2",display_name:"grunge #2",mode:"stretch",size:{min:1,max:35,default:20}},{name:"ebony",mode:"stretch",size:{min:1,max:35,default:15}},{name:"art1",display_name:"Art #1",mode:"repeat",size:{min:10,max:70,default:55}},{name:"art2",display_name:"Art #2",mode:"repeat",size:{min:10,max:70,default:55}}]}}},mc=t=>{let e;const i=new Set,r=(t,r)=>{const n="function"==typeof t?t(e):t;if(n!==e){const t=e;e=(null!=r?r:"object"!=typeof n)?n:Object.assign({},e,n),i.forEach(i=>i(e,t))}},n=()=>e,o={setState:r,getState:n,subscribe:t=>(i.add(t),()=>i.delete(t)),destroy:()=>i.clear()};return e=t(r,n,o),o},$b=t=>t?mc(t):mc;var bf={exports:{}},yf={},wf={exports:{}},xf={},ui=ae;function Hb(t,e){return t===e&&(0!==t||1/t==1/e)||t!=t&&e!=e}var Ub="function"==typeof Object.is?Object.is:Hb,Wb=ui.useState,Yb=ui.useEffect,Xb=ui.useLayoutEffect,Gb=ui.useDebugValue;function qb(t,e){var i=e(),r=Wb({inst:{value:i,getSnapshot:e}}),n=r[0].inst,o=r[1];return Xb(function(){n.value=i,n.getSnapshot=e,ts(n)&&o({inst:n})},[t,i,e]),Yb(function(){return ts(n)&&o({inst:n}),t(function(){ts(n)&&o({inst:n})})},[t]),Gb(i),i}function ts(t){var e=t.getSnapshot;t=t.value;try{var i=e();return!Ub(t,i)}catch{return!0}}function Kb(t,e){return e()}var Zb=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?Kb:qb;xf.useSyncExternalStore=void 0!==ui.useSyncExternalStore?ui.useSyncExternalStore:Zb,wf.exports=xf;var So=ae,Jb=wf.exports;function Qb(t,e){return t===e&&(0!==t||1/t==1/e)||t!=t&&e!=e}var e1="function"==typeof Object.is?Object.is:Qb,t1=Jb.useSyncExternalStore,r1=So.useRef,i1=So.useEffect,n1=So.useMemo,o1=So.useDebugValue;yf.useSyncExternalStoreWithSelector=function(t,e,i,r,n){var o=r1(null);if(null===o.current){var a={hasValue:!1,value:null};o.current=a}else a=o.current;o=n1(function(){function t(t){if(!l){if(l=!0,o=t,t=r(t),void 0!==n&&a.hasValue){var e=a.value;if(n(e,t))return s=e}return s=t}if(e=s,e1(o,t))return e;var i=r(t);return void 0!==n&&n(e,i)?e:(o=t,s=i)}var o,s,l=!1,c=void 0===i?null:i;return[function(){return t(e())},null===c?void 0:function(){return t(c())}]},[e,i,r,n]);var s=t1(t,o[0],o[1]);return i1(function(){a.hasValue=!0,a.value=s},[s]),o1(s),s},bf.exports=yf;const s1=am(bf.exports),{useSyncExternalStoreWithSelector:a1}=s1;function l1(t,e=t.getState,i){const r=a1(t.subscribe,t.getState,t.getServerState||t.getState,e,i);return rm(r),r}const vc=t=>{const e="function"==typeof t?$b(t):t,i=(t,i)=>l1(e,t,i);return Object.assign(i,e),i},c1=t=>t?vc(t):vc;var _f=c1;const u1=t=>(e,i,r)=>{const n=r.subscribe;return r.subscribe=(t,e,i)=>{let o=t;if(e){const n=(null==i?void 0:i.equalityFn)||Object.is;let a=t(r.getState());o=i=>{const r=t(i);if(!n(a,r)){const t=a;e(a=r,t)}},null!=i&&i.fireImmediately&&e(a,a)}return n(o)},t(e,i,r)},h1=u1;function gt(t){for(var e=arguments.length,i=Array(e>1?e-1:0),r=1;r<e;r++)i[r-1]=arguments[r];throw Error("[Immer] minified error nr: "+t+(i.length?" "+i.map(function(t){return"'"+t+"'"}).join(","):"")+". Find the full error at: https://bit.ly/3cXEKWf")}function hi(t){return!!t&&!!t[ut]}function Tr(t){return!!t&&(function(t){if(!t||"object"!=typeof t)return!1;var e=Object.getPrototypeOf(t);if(null===e)return!0;var i=Object.hasOwnProperty.call(e,"constructor")&&e.constructor;return i===Object||"function"==typeof i&&Function.toString.call(i)===y1}(t)||Array.isArray(t)||!!t[Tc]||!!t.constructor[Tc]||Ga(t)||qa(t))}function Bi(t,e,i){void 0===i&&(i=!1),0===mi(t)?(i?Object.keys:el)(t).forEach(function(r){i&&"symbol"==typeof r||e(r,t[r],t)}):t.forEach(function(i,r){return e(r,i,t)})}function mi(t){var e=t[ut];return e?e.i>3?e.i-4:e.i:Array.isArray(t)?1:Ga(t)?2:qa(t)?3:0}function zs(t,e){return 2===mi(t)?t.has(e):Object.prototype.hasOwnProperty.call(t,e)}function f1(t,e){return 2===mi(t)?t.get(e):t[e]}function Sf(t,e,i){var r=mi(t);2===r?t.set(e,i):3===r?(t.delete(e),t.add(i)):t[e]=i}function d1(t,e){return t===e?0!==t||1/t==1/e:t!=t&&e!=e}function Ga(t){return v1&&t instanceof Map}function qa(t){return b1&&t instanceof Set}function br(t){return t.o||t.t}function Ka(t){if(Array.isArray(t))return Array.prototype.slice.call(t);var e=w1(t);delete e[ut];for(var i=el(e),r=0;r<i.length;r++){var n=i[r],o=e[n];!1===o.writable&&(o.writable=!0,o.configurable=!0),(o.get||o.set)&&(e[n]={configurable:!0,writable:!0,enumerable:o.enumerable,value:t[n]})}return Object.create(Object.getPrototypeOf(t),e)}function Za(t,e){return void 0===e&&(e=!1),Ja(t)||hi(t)||!Tr(t)||(mi(t)>1&&(t.set=t.add=t.clear=t.delete=p1),Object.freeze(t),e&&Bi(t,function(t,e){return Za(e,!0)},!0)),t}function p1(){gt(2)}function Ja(t){return null==t||"object"!=typeof t||Object.isFrozen(t)}function St(t){var e=x1[t];return e||gt(18,t),e}function bc(){return Ni}function rs(t,e){e&&(St("Patches"),t.u=[],t.s=[],t.v=e)}function Yn(t){js(t),t.p.forEach(g1),t.p=null}function js(t){t===Ni&&(Ni=t.l)}function yc(t){return Ni={p:[],l:Ni,h:t,m:!0,_:0}}function g1(t){var e=t[ut];0===e.i||1===e.i?e.j():e.O=!0}function is(t,e){e._=e.p.length;var i=e.p[0],r=void 0!==t&&t!==i;return e.h.g||St("ES5").S(e,t,r),r?(i[ut].P&&(Yn(e),gt(4)),Tr(t)&&(t=Xn(e,t),e.l||Gn(e,t)),e.u&&St("Patches").M(i[ut].t,t,e.u,e.s)):t=Xn(e,i,[]),Yn(e),e.u&&e.v(e.u,e.s),t!==Cf?t:void 0}function Xn(t,e,i){if(Ja(e))return e;var r=e[ut];if(!r)return Bi(e,function(n,o){return wc(t,r,e,n,o,i)},!0),e;if(r.A!==t)return e;if(!r.P)return Gn(t,r.t,!0),r.t;if(!r.I){r.I=!0,r.A._--;var n=4===r.i||5===r.i?r.o=Ka(r.k):r.o;Bi(3===r.i?new Set(n):n,function(e,o){return wc(t,r,n,e,o,i)}),Gn(t,n,!1),i&&t.u&&St("Patches").R(r,i,t.u,t.s)}return r.o}function wc(t,e,i,r,n,o){if(hi(n)){var a=Xn(t,n,o&&e&&3!==e.i&&!zs(e.D,r)?o.concat(r):void 0);if(Sf(i,r,a),!hi(a))return;t.m=!1}if(Tr(n)&&!Ja(n)){if(!t.h.F&&t._<1)return;Xn(t,n),e&&e.A.l||Gn(t,n)}}function Gn(t,e,i){void 0===i&&(i=!1),t.h.F&&t.m&&Za(e,i)}function ns(t,e){var i=t[ut];return(i?br(i):t)[e]}function xc(t,e){if(e in t)for(var i=Object.getPrototypeOf(t);i;){var r=Object.getOwnPropertyDescriptor(i,e);if(r)return r;i=Object.getPrototypeOf(i)}}function Bs(t){t.P||(t.P=!0,t.l&&Bs(t.l))}function os(t){t.o||(t.o=Ka(t.t))}function Ns(t,e,i){var r=Ga(e)?St("MapSet").N(e,i):qa(e)?St("MapSet").T(e,i):t.g?function(t,e){var i=Array.isArray(t),r={i:i?1:0,A:e?e.A:bc(),P:!1,I:!1,D:{},l:e,t,k:null,o:null,j:null,C:!1},n=r,o=Vs;i&&(n=[r],o=_i);var a=Proxy.revocable(n,o),s=a.revoke,l=a.proxy;return r.k=l,r.j=s,l}(e,i):St("ES5").J(e,i);return(i?i.A:bc()).p.push(r),r}function m1(t){return hi(t)||gt(22,t),function t(e){if(!Tr(e))return e;var i,r=e[ut],n=mi(e);if(r){if(!r.P&&(r.i<4||!St("ES5").K(r)))return r.t;r.I=!0,i=_c(e,n),r.I=!1}else i=_c(e,n);return Bi(i,function(e,n){r&&f1(r.t,e)===n||Sf(i,e,t(n))}),3===n?new Set(i):i}(t)}function _c(t,e){switch(e){case 2:return new Map(t);case 3:return Array.from(t)}return Ka(t)}var Sc,Ni,Qa=typeof Symbol<"u"&&"symbol"==typeof Symbol("x"),v1=typeof Map<"u",b1=typeof Set<"u",Cc=typeof Proxy<"u"&&void 0!==Proxy.revocable&&typeof Reflect<"u",Cf=Qa?Symbol.for("immer-nothing"):((Sc={})["immer-nothing"]=!0,Sc),Tc=Qa?Symbol.for("immer-draftable"):"__$immer_draftable",ut=Qa?Symbol.for("immer-state"):"__$immer_state",y1=""+Object.prototype.constructor,el=typeof Reflect<"u"&&Reflect.ownKeys?Reflect.ownKeys:void 0!==Object.getOwnPropertySymbols?function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:Object.getOwnPropertyNames,w1=Object.getOwnPropertyDescriptors||function(t){var e={};return el(t).forEach(function(i){e[i]=Object.getOwnPropertyDescriptor(t,i)}),e},x1={},Vs={get:function(t,e){if(e===ut)return t;var i,r,n,o=br(t);if(!zs(o,e))return i=t,(n=xc(o,e))?"value"in n?n.value:null===(r=n.get)||void 0===r?void 0:r.call(i.k):void 0;var a=o[e];return t.I||!Tr(a)?a:a===ns(t.t,e)?(os(t),t.o[e]=Ns(t.A.h,a,t)):a},has:function(t,e){return e in br(t)},ownKeys:function(t){return Reflect.ownKeys(br(t))},set:function(t,e,i){var r=xc(br(t),e);if(null!=r&&r.set)return r.set.call(t.k,i),!0;if(!t.P){var n=ns(br(t),e),o=null==n?void 0:n[ut];if(o&&o.t===i)return t.o[e]=i,t.D[e]=!1,!0;if(d1(i,n)&&(void 0!==i||zs(t.t,e)))return!0;os(t),Bs(t)}return t.o[e]===i&&"number"!=typeof i&&(void 0!==i||e in t.o)||(t.o[e]=i,t.D[e]=!0,!0)},deleteProperty:function(t,e){return void 0!==ns(t.t,e)||e in t.t?(t.D[e]=!1,os(t),Bs(t)):delete t.D[e],t.o&&delete t.o[e],!0},getOwnPropertyDescriptor:function(t,e){var i=br(t),r=Reflect.getOwnPropertyDescriptor(i,e);return r&&{writable:!0,configurable:1!==t.i||"length"!==e,enumerable:r.enumerable,value:i[e]}},defineProperty:function(){gt(11)},getPrototypeOf:function(t){return Object.getPrototypeOf(t.t)},setPrototypeOf:function(){gt(12)}},_i={};Bi(Vs,function(t,e){_i[t]=function(){return arguments[0]=arguments[0][0],e.apply(this,arguments)}}),_i.deleteProperty=function(t,e){return _i.set.call(this,t,e,void 0)},_i.set=function(t,e,i){return Vs.set.call(this,t[0],e,i,t[0])};var _1=function(){function t(t){var e=this;this.g=Cc,this.F=!0,this.produce=function(t,i,r){if("function"==typeof t&&"function"!=typeof i){var n=i;i=t;var o=e;return function(t){var e=this;void 0===t&&(t=n);for(var r=arguments.length,a=Array(r>1?r-1:0),s=1;s<r;s++)a[s-1]=arguments[s];return o.produce(t,function(t){var r;return(r=i).call.apply(r,[e,t].concat(a))})}}var a;if("function"!=typeof i&>(6),void 0!==r&&"function"!=typeof r&>(7),Tr(t)){var s=yc(e),l=Ns(e,t,void 0),c=!0;try{a=i(l),c=!1}finally{c?Yn(s):js(s)}return typeof Promise<"u"&&a instanceof Promise?a.then(function(t){return rs(s,r),is(t,s)},function(t){throw Yn(s),t}):(rs(s,r),is(a,s))}if(!t||"object"!=typeof t){if(void 0===(a=i(t))&&(a=t),a===Cf&&(a=void 0),e.F&&Za(a,!0),r){var h=[],u=[];St("Patches").M(t,a,h,u),r(h,u)}return a}gt(21,t)},this.produceWithPatches=function(t,i){if("function"==typeof t)return function(i){for(var r=arguments.length,n=Array(r>1?r-1:0),o=1;o<r;o++)n[o-1]=arguments[o];return e.produceWithPatches(i,function(e){return t.apply(void 0,[e].concat(n))})};var r,n,o=e.produce(t,i,function(t,e){r=t,n=e});return typeof Promise<"u"&&o instanceof Promise?o.then(function(t){return[t,r,n]}):[o,r,n]},"boolean"==typeof(null==t?void 0:t.useProxies)&&this.setUseProxies(t.useProxies),"boolean"==typeof(null==t?void 0:t.autoFreeze)&&this.setAutoFreeze(t.autoFreeze)}var e=t.prototype;return e.createDraft=function(t){Tr(t)||gt(8),hi(t)&&(t=m1(t));var e=yc(this),i=Ns(this,t,void 0);return i[ut].C=!0,js(e),i},e.finishDraft=function(t,e){var i=(t&&t[ut]).A;return rs(i,e),is(void 0,i)},e.setAutoFreeze=function(t){this.F=t},e.setUseProxies=function(t){t&&!Cc&>(20),this.g=t},e.applyPatches=function(t,e){var i;for(i=e.length-1;i>=0;i--){var r=e[i];if(0===r.path.length&&"replace"===r.op){t=r.value;break}}i>-1&&(e=e.slice(i+1));var n=St("Patches").$;return hi(t)?n(t,e):this.produce(t,function(t){return n(t,e)})},t}(),ht=new _1,S1=ht.produce;function C1(t){return t?t.charAt(0).toLowerCase()+t.slice(1):""}function T1(t,e){return Tf(Eh(e,t),t)}function Tf(t,e){return Object.keys(t).forEach(i=>{if(i.startsWith("replaceDefault")&&t[i]){const r=C1(i.replace("replaceDefault","")||"items");t[r]=e?e[r]:[],delete t[i]}else"object"==typeof t[i]&&null!==t[i]&&Tf(t[i],null==e?void 0:e[i])}),t}ht.produceWithPatches.bind(ht),ht.setAutoFreeze.bind(ht),ht.setUseProxies.bind(ht),ht.applyPatches.bind(ht),ht.createDraft.bind(ht),ht.finishDraft.bind(ht);const k1=(t,e)=>({history:{...kc,updatePointerById:t=>{const i=e().history.items.findIndex(e=>e.id===t);e().history.update(i)},update:(e,i)=>{t(t=>{t.history.pointer=e,i&&(t.history.items=i),t.history.canUndo=t.history.pointer>0,t.history.canRedo=t.history.items.length>t.history.pointer+1})},reset:()=>{t({history:{...e().history,...kc}})}}}),kc={items:[],pointer:0,canUndo:!1,canRedo:!1};var mt=(t=>(t.Filter="filter",t.Frame="frame",t.ActiveObject="activeObj",t.Text="text",t))(mt||{});const E1=(t,e)=>({filter:{...Ec,select(e,i=!1){t(t=>{t.filter.selected=e,t.activeToolOverlay=i?mt.Filter:null,t.dirty=!0})},deselect(i){e().filter.selected===i&&t(t=>{t.filter.selected=null,t.activeToolOverlay=null,t.dirty=!0})},reset(){t({filter:{...e().filter,...Ec}})}}}),Ec={selected:null,applied:[]},O1=(t,e)=>({crop:{...Oc,setCropzoneRect:e=>{t(t=>{t.crop.zoneRect=e})},setAspectRatio:e=>{t(t=>{t.crop.selectedAspectRatio=e})},setTransformAngle:e=>{t(t=>{t.crop.straightenAngle=e})},apply:async()=>{const t=e().crop.zoneRect;if(t){const i={width:Math.ceil(t.width/e().zoom),height:Math.ceil(t.height/e().zoom),left:Math.ceil(t.left/e().zoom),top:Math.ceil(t.top/e().zoom)};await e().editor.tools.crop.apply(i)}},reset:()=>{t({crop:{...e().crop,...Oc}})}}}),Oc={zoneRect:null,selectedAspectRatio:null,straightenAngle:0};function lr(t){return"i-text"===(null==t?void 0:t.type)}var Ne=(t=>(t.Text="text",t.Shape="shape",t.Sticker="sticker",t.Drawing="drawing",t.Image="image",t.MainImage="mainImage",t.StraightenAnchor="straightenHelper",t))(Ne||{});const P1={text:{name:ce("Text"),icon:$t.text.icon},shape:{name:ce("Shape"),icon:$t.shapes.icon},sticker:{name:ce("Sticker"),icon:$t.stickers.icon},drawing:{name:ce("Drawing"),icon:$t.draw.icon},image:{name:ce("Image"),icon:$t.overlayImage.icon},mainImage:{name:ce("Background Image"),icon:$t.bgImage.icon}};function M1(t){return t.name===Ne.Image}const kf={isMoving:!1,editableProps:{},id:null,isText:!1,isImage:!1,name:null};function A1(t){if(!t)return{};const e={fill:t.fill,opacity:t.opacity,backgroundColor:t.backgroundColor,stroke:t.stroke,strokeWidth:t.strokeWidth},i=t.shadow;return i&&(e.shadow={color:i.color,blur:i.blur,offsetX:i.offsetX,offsetY:i.offsetY}),lr(t)&&(e.textAlign=t.textAlign,e.underline=t.underline,e.linethrough=t.linethrough,e.fontStyle=t.fontStyle,e.fontFamily=t.fontFamily,e.fontWeight=t.fontWeight,e.fontSize=t.fontSize),e}const D1=(t,e)=>({objects:{...Pc,setActiveIsMoving:e=>{t(t=>{t.objects.active.isMoving=e})},setIsEditingText:e=>{t(t=>{t.objects.isEditingText=e})},setActive:i=>{t(i?t=>{var e;t.objects.active.editableProps=A1(i),t.objects.active.id=i.data.id,t.objects.active.name=null!=(e=i.name)?e:null,t.objects.active.isText=lr(i),t.objects.active.isImage=M1(i)}:t=>{var i,r,n,o,a;const s={...null==(i=e().config.objectDefaults)?void 0:i.global,fontFamily:null==(n=null==(r=e().config.objectDefaults)?void 0:r.text)?void 0:n.fontFamily,fontSize:null==(a=null==(o=e().config.objectDefaults)?void 0:o.text)?void 0:a.fontSize};t.objects.active={...kf,editableProps:s}})},reset(){t({objects:{...e().objects,...Pc}})}}}),Pc={all:[],isEditingText:!1,active:kf},I1=(t,e)=>({frame:{...Mc,select:i=>{t(t=>{t.frame.active=i}),e().frame.showOptionsPanel()},deselect:()=>{t(t=>{t.frame.active=null,t.activeToolOverlay=null})},showOptionsPanel:()=>{e().activeTool===Pe.FRAME&&t(t=>{t.activeToolOverlay=mt.Frame})},reset(){t({frame:{...e().frame,...Mc}})}}}),Mc={active:null},R1=(t,e)=>({resize:{...Ac,setFormValue:e=>{t(t=>{Object.entries(e).forEach(([e,i])=>{t.resize.formValue[e]=i})})},apply(){const t=e().resize.formValue,i=e().original;if(t.width===i.width&&t.height===i.height)return!1;e().editor.tools.resize.apply(t)},reset(){t({resize:{...e().resize,...Ac}})}}}),Ac={formValue:{width:1,height:1,maintainAspect:!0,usePercentages:!1}},L1=(t,e)=>({corners:{...Dc,setRadius:e=>{t(t=>{t.corners.radius=e})},apply:()=>e().editor.tools.corners.apply(e().corners.radius),reset(){t({corners:{...e().corners,...Dc}})}}}),Dc={radius:50},F1=t=>(e,i,r)=>(r.setState=(t,i,...r)=>{const n="function"==typeof t?S1(t):t;return e(n,i,...r)},t(r.setState,i,r)),Ef=F1;var Of={exports:{}},z1={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},Pf={exports:{}},j1=function(t){return!(!t||"string"==typeof t)&&(t instanceof Array||Array.isArray(t)||t.length>=0&&(t.splice instanceof Function||Object.getOwnPropertyDescriptor(t,t.length-1)&&"String"!==t.constructor.name))},B1=j1,N1=Array.prototype.concat,V1=Array.prototype.slice,Ic=Pf.exports=function(t){for(var e=[],i=0,r=t.length;i<r;i++){var n=t[i];B1(n)?e=N1.call(e,V1.call(n)):e.push(n)}return e};Ic.wrap=function(t){return function(){return t(Ic(arguments))}};var ki=z1,en=Pf.exports,Mf=Object.hasOwnProperty,Af=Object.create(null);for(var ss in ki)Mf.call(ki,ss)&&(Af[ki[ss]]=ss);var at=Of.exports={to:{},get:{}};function Zt(t,e,i){return Math.min(Math.max(e,t),i)}function xn(t){var e=Math.round(t).toString(16).toUpperCase();return e.length<2?"0"+e:e}at.get=function(t){var e,i;switch(t.substring(0,3).toLowerCase()){case"hsl":e=at.get.hsl(t),i="hsl";break;case"hwb":e=at.get.hwb(t),i="hwb";break;default:e=at.get.rgb(t),i="rgb"}return e?{model:i,value:e}:null},at.get.rgb=function(t){if(!t)return null;var e,i,r,n=[0,0,0,1];if(e=t.match(/^#([a-f0-9]{6})([a-f0-9]{2})?$/i)){for(r=e[2],e=e[1],i=0;i<3;i++){var o=2*i;n[i]=parseInt(e.slice(o,o+2),16)}r&&(n[3]=parseInt(r,16)/255)}else if(e=t.match(/^#([a-f0-9]{3,4})$/i)){for(r=(e=e[1])[3],i=0;i<3;i++)n[i]=parseInt(e[i]+e[i],16);r&&(n[3]=parseInt(r+r,16)/255)}else if(e=t.match(/^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/)){for(i=0;i<3;i++)n[i]=parseInt(e[i+1],0);e[4]&&(e[5]?n[3]=.01*parseFloat(e[4]):n[3]=parseFloat(e[4]))}else{if(!(e=t.match(/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/)))return(e=t.match(/^(\w+)$/))?"transparent"===e[1]?[0,0,0,0]:Mf.call(ki,e[1])?((n=ki[e[1]])[3]=1,n):null:null;for(i=0;i<3;i++)n[i]=Math.round(2.55*parseFloat(e[i+1]));e[4]&&(e[5]?n[3]=.01*parseFloat(e[4]):n[3]=parseFloat(e[4]))}for(i=0;i<3;i++)n[i]=Zt(n[i],0,255);return n[3]=Zt(n[3],0,1),n},at.get.hsl=function(t){if(!t)return null;var e=t.match(/^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,?\s*([+-]?[\d\.]+)%\s*,?\s*([+-]?[\d\.]+)%\s*(?:[,|\/]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/);if(e){var i=parseFloat(e[4]);return[(parseFloat(e[1])%360+360)%360,Zt(parseFloat(e[2]),0,100),Zt(parseFloat(e[3]),0,100),Zt(isNaN(i)?1:i,0,1)]}return null},at.get.hwb=function(t){if(!t)return null;var e=t.match(/^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/);if(e){var i=parseFloat(e[4]);return[(parseFloat(e[1])%360+360)%360,Zt(parseFloat(e[2]),0,100),Zt(parseFloat(e[3]),0,100),Zt(isNaN(i)?1:i,0,1)]}return null},at.to.hex=function(){var t=en(arguments);return"#"+xn(t[0])+xn(t[1])+xn(t[2])+(t[3]<1?xn(Math.round(255*t[3])):"")},at.to.rgb=function(){var t=en(arguments);return t.length<4||1===t[3]?"rgb("+Math.round(t[0])+", "+Math.round(t[1])+", "+Math.round(t[2])+")":"rgba("+Math.round(t[0])+", "+Math.round(t[1])+", "+Math.round(t[2])+", "+t[3]+")"},at.to.rgb.percent=function(){var t=en(arguments),e=Math.round(t[0]/255*100),i=Math.round(t[1]/255*100),r=Math.round(t[2]/255*100);return t.length<4||1===t[3]?"rgb("+e+"%, "+i+"%, "+r+"%)":"rgba("+e+"%, "+i+"%, "+r+"%, "+t[3]+")"},at.to.hsl=function(){var t=en(arguments);return t.length<4||1===t[3]?"hsl("+t[0]+", "+t[1]+"%, "+t[2]+"%)":"hsla("+t[0]+", "+t[1]+"%, "+t[2]+"%, "+t[3]+")"},at.to.hwb=function(){var t=en(arguments),e="";return t.length>=4&&1!==t[3]&&(e=", "+t[3]),"hwb("+t[0]+", "+t[1]+"%, "+t[2]+"%"+e+")"},at.to.keyword=function(t){return Af[t.slice(0,3)]};var $1={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};const Vi=$1,Df={};for(const t of Object.keys(Vi))Df[Vi[t]]=t;const fe={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};var If=fe;for(const t of Object.keys(fe)){if(!("channels"in fe[t]))throw new Error("missing channels property: "+t);if(!("labels"in fe[t]))throw new Error("missing channel labels property: "+t);if(fe[t].labels.length!==fe[t].channels)throw new Error("channel and label counts mismatch: "+t);const{channels:e,labels:i}=fe[t];delete fe[t].channels,delete fe[t].labels,Object.defineProperty(fe[t],"channels",{value:e}),Object.defineProperty(fe[t],"labels",{value:i})}function H1(t,e){return(t[0]-e[0])**2+(t[1]-e[1])**2+(t[2]-e[2])**2}fe.rgb.hsl=function(t){const e=t[0]/255,i=t[1]/255,r=t[2]/255,n=Math.min(e,i,r),o=Math.max(e,i,r),a=o-n;let s,l;o===n?s=0:e===o?s=(i-r)/a:i===o?s=2+(r-e)/a:r===o&&(s=4+(e-i)/a),s=Math.min(60*s,360),s<0&&(s+=360);const c=(n+o)/2;return l=o===n?0:c<=.5?a/(o+n):a/(2-o-n),[s,100*l,100*c]},fe.rgb.hsv=function(t){let e,i,r,n,o;const a=t[0]/255,s=t[1]/255,l=t[2]/255,c=Math.max(a,s,l),h=c-Math.min(a,s,l),u=function(t){return(c-t)/6/h+.5};return 0===h?(n=0,o=0):(o=h/c,e=u(a),i=u(s),r=u(l),a===c?n=r-i:s===c?n=1/3+e-r:l===c&&(n=2/3+i-e),n<0?n+=1:n>1&&(n-=1)),[360*n,100*o,100*c]},fe.rgb.hwb=function(t){const e=t[0],i=t[1];let r=t[2];const n=fe.rgb.hsl(t)[0],o=1/255*Math.min(e,Math.min(i,r));return r=1-1/255*Math.max(e,Math.max(i,r)),[n,100*o,100*r]},fe.rgb.cmyk=function(t){const e=t[0]/255,i=t[1]/255,r=t[2]/255,n=Math.min(1-e,1-i,1-r);return[100*((1-e-n)/(1-n)||0),100*((1-i-n)/(1-n)||0),100*((1-r-n)/(1-n)||0),100*n]},fe.rgb.keyword=function(t){const e=Df[t];if(e)return e;let i,r=1/0;for(const e of Object.keys(Vi)){const n=H1(t,Vi[e]);n<r&&(r=n,i=e)}return i},fe.keyword.rgb=function(t){return Vi[t]},fe.rgb.xyz=function(t){let e=t[0]/255,i=t[1]/255,r=t[2]/255;return e=e>.04045?((e+.055)/1.055)**2.4:e/12.92,i=i>.04045?((i+.055)/1.055)**2.4:i/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92,[100*(.4124*e+.3576*i+.1805*r),100*(.2126*e+.7152*i+.0722*r),100*(.0193*e+.1192*i+.9505*r)]},fe.rgb.lab=function(t){const e=fe.rgb.xyz(t);let i=e[0],r=e[1],n=e[2];return i/=95.047,r/=100,n/=108.883,i=i>.008856?i**(1/3):7.787*i+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,n=n>.008856?n**(1/3):7.787*n+16/116,[116*r-16,500*(i-r),200*(r-n)]},fe.hsl.rgb=function(t){const e=t[0]/360,i=t[1]/100,r=t[2]/100;let n,o,a;if(0===i)return a=255*r,[a,a,a];n=r<.5?r*(1+i):r+i-r*i;const s=2*r-n,l=[0,0,0];for(let t=0;t<3;t++)o=e+1/3*-(t-1),o<0&&o++,o>1&&o--,a=6*o<1?s+6*(n-s)*o:2*o<1?n:3*o<2?s+(n-s)*(2/3-o)*6:s,l[t]=255*a;return l},fe.hsl.hsv=function(t){const e=t[0];let i=t[1]/100,r=t[2]/100,n=i;const o=Math.max(r,.01);return r*=2,i*=r<=1?r:2-r,n*=o<=1?o:2-o,[e,100*(0===r?2*n/(o+n):2*i/(r+i)),(r+i)/2*100]},fe.hsv.rgb=function(t){const e=t[0]/60,i=t[1]/100;let r=t[2]/100;const n=Math.floor(e)%6,o=e-Math.floor(e),a=255*r*(1-i),s=255*r*(1-i*o),l=255*r*(1-i*(1-o));switch(r*=255,n){case 0:return[r,l,a];case 1:return[s,r,a];case 2:return[a,r,l];case 3:return[a,s,r];case 4:return[l,a,r];case 5:return[r,a,s]}},fe.hsv.hsl=function(t){const e=t[0],i=t[1]/100,r=t[2]/100,n=Math.max(r,.01);let o,a;a=(2-i)*r;const s=(2-i)*n;return o=i*n,o/=s<=1?s:2-s,o=o||0,a/=2,[e,100*o,100*a]},fe.hwb.rgb=function(t){const e=t[0]/360;let i=t[1]/100,r=t[2]/100;const n=i+r;let o;n>1&&(i/=n,r/=n);const a=Math.floor(6*e),s=1-r;o=6*e-a,1&a&&(o=1-o);const l=i+o*(s-i);let c,h,u;switch(a){default:case 6:case 0:c=s,h=l,u=i;break;case 1:c=l,h=s,u=i;break;case 2:c=i,h=s,u=l;break;case 3:c=i,h=l,u=s;break;case 4:c=l,h=i,u=s;break;case 5:c=s,h=i,u=l}return[255*c,255*h,255*u]},fe.cmyk.rgb=function(t){const e=t[0]/100,i=t[1]/100,r=t[2]/100,n=t[3]/100;return[255*(1-Math.min(1,e*(1-n)+n)),255*(1-Math.min(1,i*(1-n)+n)),255*(1-Math.min(1,r*(1-n)+n))]},fe.xyz.rgb=function(t){const e=t[0]/100,i=t[1]/100,r=t[2]/100;let n,o,a;return n=3.2406*e+-1.5372*i+-.4986*r,o=-.9689*e+1.8758*i+.0415*r,a=.0557*e+-.204*i+1.057*r,n=n>.0031308?1.055*n**(1/2.4)-.055:12.92*n,o=o>.0031308?1.055*o**(1/2.4)-.055:12.92*o,a=a>.0031308?1.055*a**(1/2.4)-.055:12.92*a,n=Math.min(Math.max(0,n),1),o=Math.min(Math.max(0,o),1),a=Math.min(Math.max(0,a),1),[255*n,255*o,255*a]},fe.xyz.lab=function(t){let e=t[0],i=t[1],r=t[2];return e/=95.047,i/=100,r/=108.883,e=e>.008856?e**(1/3):7.787*e+16/116,i=i>.008856?i**(1/3):7.787*i+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,[116*i-16,500*(e-i),200*(i-r)]},fe.lab.xyz=function(t){let e,i,r;i=(t[0]+16)/116,e=t[1]/500+i,r=i-t[2]/200;const n=i**3,o=e**3,a=r**3;return i=n>.008856?n:(i-16/116)/7.787,e=o>.008856?o:(e-16/116)/7.787,r=a>.008856?a:(r-16/116)/7.787,e*=95.047,i*=100,r*=108.883,[e,i,r]},fe.lab.lch=function(t){const e=t[0],i=t[1],r=t[2];let n;return n=360*Math.atan2(r,i)/2/Math.PI,n<0&&(n+=360),[e,Math.sqrt(i*i+r*r),n]},fe.lch.lab=function(t){const e=t[0],i=t[1],r=t[2]/360*2*Math.PI;return[e,i*Math.cos(r),i*Math.sin(r)]},fe.rgb.ansi16=function(t,e=null){const[i,r,n]=t;let o=null===e?fe.rgb.hsv(t)[2]:e;if(o=Math.round(o/50),0===o)return 30;let a=30+(Math.round(n/255)<<2|Math.round(r/255)<<1|Math.round(i/255));return 2===o&&(a+=60),a},fe.hsv.ansi16=function(t){return fe.rgb.ansi16(fe.hsv.rgb(t),t[2])},fe.rgb.ansi256=function(t){const e=t[0],i=t[1],r=t[2];return e===i&&i===r?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(i/255*5)+Math.round(r/255*5)},fe.ansi16.rgb=function(t){let e=t%10;if(0===e||7===e)return t>50&&(e+=3.5),e=e/10.5*255,[e,e,e];const i=.5*(1+~~(t>50));return[(1&e)*i*255,(e>>1&1)*i*255,(e>>2&1)*i*255]},fe.ansi256.rgb=function(t){if(t>=232){const e=10*(t-232)+8;return[e,e,e]}let e;return t-=16,[Math.floor(t/36)/5*255,Math.floor((e=t%36)/6)/5*255,e%6/5*255]},fe.rgb.hex=function(t){const e=(((255&Math.round(t[0]))<<16)+((255&Math.round(t[1]))<<8)+(255&Math.round(t[2]))).toString(16).toUpperCase();return"000000".substring(e.length)+e},fe.hex.rgb=function(t){const e=t.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!e)return[0,0,0];let i=e[0];3===e[0].length&&(i=i.split("").map(t=>t+t).join(""));const r=parseInt(i,16);return[r>>16&255,r>>8&255,255&r]},fe.rgb.hcg=function(t){const e=t[0]/255,i=t[1]/255,r=t[2]/255,n=Math.max(Math.max(e,i),r),o=Math.min(Math.min(e,i),r),a=n-o;let s,l;return s=a<1?o/(1-a):0,l=a<=0?0:n===e?(i-r)/a%6:n===i?2+(r-e)/a:4+(e-i)/a,l/=6,l%=1,[360*l,100*a,100*s]},fe.hsl.hcg=function(t){const e=t[1]/100,i=t[2]/100,r=i<.5?2*e*i:2*e*(1-i);let n=0;return r<1&&(n=(i-.5*r)/(1-r)),[t[0],100*r,100*n]},fe.hsv.hcg=function(t){const e=t[1]/100,i=t[2]/100,r=e*i;let n=0;return r<1&&(n=(i-r)/(1-r)),[t[0],100*r,100*n]},fe.hcg.rgb=function(t){const e=t[0]/360,i=t[1]/100,r=t[2]/100;if(0===i)return[255*r,255*r,255*r];const n=[0,0,0],o=e%1*6,a=o%1,s=1-a;let l=0;switch(Math.floor(o)){case 0:n[0]=1,n[1]=a,n[2]=0;break;case 1:n[0]=s,n[1]=1,n[2]=0;break;case 2:n[0]=0,n[1]=1,n[2]=a;break;case 3:n[0]=0,n[1]=s,n[2]=1;break;case 4:n[0]=a,n[1]=0,n[2]=1;break;default:n[0]=1,n[1]=0,n[2]=s}return l=(1-i)*r,[255*(i*n[0]+l),255*(i*n[1]+l),255*(i*n[2]+l)]},fe.hcg.hsv=function(t){const e=t[1]/100,i=e+t[2]/100*(1-e);let r=0;return i>0&&(r=e/i),[t[0],100*r,100*i]},fe.hcg.hsl=function(t){const e=t[1]/100,i=t[2]/100*(1-e)+.5*e;let r=0;return i>0&&i<.5?r=e/(2*i):i>=.5&&i<1&&(r=e/(2*(1-i))),[t[0],100*r,100*i]},fe.hcg.hwb=function(t){const e=t[1]/100,i=e+t[2]/100*(1-e);return[t[0],100*(i-e),100*(1-i)]},fe.hwb.hcg=function(t){const e=t[1]/100,i=1-t[2]/100,r=i-e;let n=0;return r<1&&(n=(i-r)/(1-r)),[t[0],100*r,100*n]},fe.apple.rgb=function(t){return[t[0]/65535*255,t[1]/65535*255,t[2]/65535*255]},fe.rgb.apple=function(t){return[t[0]/255*65535,t[1]/255*65535,t[2]/255*65535]},fe.gray.rgb=function(t){return[t[0]/100*255,t[0]/100*255,t[0]/100*255]},fe.gray.hsl=function(t){return[0,0,t[0]]},fe.gray.hsv=fe.gray.hsl,fe.gray.hwb=function(t){return[0,100,t[0]]},fe.gray.cmyk=function(t){return[0,0,0,t[0]]},fe.gray.lab=function(t){return[t[0],0,0]},fe.gray.hex=function(t){const e=255&Math.round(t[0]/100*255),i=((e<<16)+(e<<8)+e).toString(16).toUpperCase();return"000000".substring(i.length)+i},fe.rgb.gray=function(t){return[(t[0]+t[1]+t[2])/3/255*100]};const qn=If;function U1(){const t={},e=Object.keys(qn);for(let i=e.length,r=0;r<i;r++)t[e[r]]={distance:-1,parent:null};return t}function W1(t){const e=U1(),i=[t];for(e[t].distance=0;i.length;){const t=i.pop(),r=Object.keys(qn[t]);for(let n=r.length,o=0;o<n;o++){const n=r[o],a=e[n];-1===a.distance&&(a.distance=e[t].distance+1,a.parent=t,i.unshift(n))}}return e}function Y1(t,e){return function(i){return e(t(i))}}function X1(t,e){const i=[e[t].parent,t];let r=qn[e[t].parent][t],n=e[t].parent;for(;e[n].parent;)i.unshift(e[n].parent),r=Y1(qn[e[n].parent][n],r),n=e[n].parent;return r.conversion=i,r}var G1=function(t){const e=W1(t),i={},r=Object.keys(e);for(let t=r.length,n=0;n<t;n++){const t=r[n];null!==e[t].parent&&(i[t]=X1(t,e))}return i};const $s=If,q1=G1,Ur={},K1=Object.keys($s);function Z1(t){const e=function(...e){const i=e[0];return null==i?i:(i.length>1&&(e=i),t(e))};return"conversion"in t&&(e.conversion=t.conversion),e}function J1(t){const e=function(...e){const i=e[0];if(null==i)return i;i.length>1&&(e=i);const r=t(e);if("object"==typeof r)for(let t=r.length,e=0;e<t;e++)r[e]=Math.round(r[e]);return r};return"conversion"in t&&(e.conversion=t.conversion),e}K1.forEach(t=>{Ur[t]={},Object.defineProperty(Ur[t],"channels",{value:$s[t].channels}),Object.defineProperty(Ur[t],"labels",{value:$s[t].labels});const e=q1(t);Object.keys(e).forEach(i=>{const r=e[i];Ur[t][i]=J1(r),Ur[t][i].raw=Z1(r)})});var Q1=Ur;const Wr=Of.exports,st=Q1,Rf=["keyword","gray","hex"],Hs={};for(const t of Object.keys(st))Hs[[...st[t].labels].sort().join("")]=t;const Kn={};function Ye(t,e){if(!(this instanceof Ye))return new Ye(t,e);if(e&&e in Rf&&(e=null),e&&!(e in st))throw new Error("Unknown model: "+e);let i,r;if(null==t)this.model="rgb",this.color=[0,0,0],this.valpha=1;else if(t instanceof Ye)this.model=t.model,this.color=[...t.color],this.valpha=t.valpha;else if("string"==typeof t){const e=Wr.get(t);if(null===e)throw new Error("Unable to parse color from string: "+t);this.model=e.model,r=st[this.model].channels,this.color=e.value.slice(0,r),this.valpha="number"==typeof e.value[r]?e.value[r]:1}else if(t.length>0){this.model=e||"rgb",r=st[this.model].channels;const i=Array.prototype.slice.call(t,0,r);this.color=Us(i,r),this.valpha="number"==typeof t[r]?t[r]:1}else if("number"==typeof t)this.model="rgb",this.color=[t>>16&255,t>>8&255,255&t],this.valpha=1;else{this.valpha=1;const e=Object.keys(t);"alpha"in t&&(e.splice(e.indexOf("alpha"),1),this.valpha="number"==typeof t.alpha?t.alpha:0);const r=e.sort().join("");if(!(r in Hs))throw new Error("Unable to parse color from object: "+JSON.stringify(t));this.model=Hs[r];const{labels:n}=st[this.model],o=[];for(i=0;i<n.length;i++)o.push(t[n[i]]);this.color=Us(o)}if(Kn[this.model])for(r=st[this.model].channels,i=0;i<r;i++){const t=Kn[this.model][i];t&&(this.color[i]=t(this.color[i]))}this.valpha=Math.max(0,Math.min(1,this.valpha)),Object.freeze&&Object.freeze(this)}Ye.prototype={toString(){return this.string()},toJSON(){return this[this.model]()},string(t){let e=this.model in Wr.to?this:this.rgb();e=e.round("number"==typeof t?t:1);const i=1===e.valpha?e.color:[...e.color,this.valpha];return Wr.to[e.model](i)},percentString(t){const e=this.rgb().round("number"==typeof t?t:1),i=1===e.valpha?e.color:[...e.color,this.valpha];return Wr.to.rgb.percent(i)},array(){return 1===this.valpha?[...this.color]:[...this.color,this.valpha]},object(){const t={},{channels:e}=st[this.model],{labels:i}=st[this.model];for(let r=0;r<e;r++)t[i[r]]=this.color[r];return 1!==this.valpha&&(t.alpha=this.valpha),t},unitArray(){const t=this.rgb().color;return t[0]/=255,t[1]/=255,t[2]/=255,1!==this.valpha&&t.push(this.valpha),t},unitObject(){const t=this.rgb().object();return t.r/=255,t.g/=255,t.b/=255,1!==this.valpha&&(t.alpha=this.valpha),t},round(t){return t=Math.max(t||0,0),new Ye([...this.color.map(ty(t)),this.valpha],this.model)},alpha(t){return void 0!==t?new Ye([...this.color,Math.max(0,Math.min(1,t))],this.model):this.valpha},red:je("rgb",0,Ue(255)),green:je("rgb",1,Ue(255)),blue:je("rgb",2,Ue(255)),hue:je(["hsl","hsv","hsl","hwb","hcg"],0,t=>(t%360+360)%360),saturationl:je("hsl",1,Ue(100)),lightness:je("hsl",2,Ue(100)),saturationv:je("hsv",1,Ue(100)),value:je("hsv",2,Ue(100)),chroma:je("hcg",1,Ue(100)),gray:je("hcg",2,Ue(100)),white:je("hwb",1,Ue(100)),wblack:je("hwb",2,Ue(100)),cyan:je("cmyk",0,Ue(100)),magenta:je("cmyk",1,Ue(100)),yellow:je("cmyk",2,Ue(100)),black:je("cmyk",3,Ue(100)),x:je("xyz",0,Ue(95.047)),y:je("xyz",1,Ue(100)),z:je("xyz",2,Ue(108.833)),l:je("lab",0,Ue(100)),a:je("lab",1),b:je("lab",2),keyword(t){return void 0!==t?new Ye(t):st[this.model].keyword(this.color)},hex(t){return void 0!==t?new Ye(t):Wr.to.hex(this.rgb().round().color)},hexa(t){if(void 0!==t)return new Ye(t);const e=this.rgb().round().color;let i=Math.round(255*this.valpha).toString(16).toUpperCase();return 1===i.length&&(i="0"+i),Wr.to.hex(e)+i},rgbNumber(){const t=this.rgb().color;return(255&t[0])<<16|(255&t[1])<<8|255&t[2]},luminosity(){const t=this.rgb().color,e=[];for(const[i,r]of t.entries()){const t=r/255;e[i]=t<=.04045?t/12.92:((t+.055)/1.055)**2.4}return.2126*e[0]+.7152*e[1]+.0722*e[2]},contrast(t){const e=this.luminosity(),i=t.luminosity();return e>i?(e+.05)/(i+.05):(i+.05)/(e+.05)},level(t){const e=this.contrast(t);return e>=7?"AAA":e>=4.5?"AA":""},isDark(){const t=this.rgb().color;return(2126*t[0]+7152*t[1]+722*t[2])/1e4<128},isLight(){return!this.isDark()},negate(){const t=this.rgb();for(let e=0;e<3;e++)t.color[e]=255-t.color[e];return t},lighten(t){const e=this.hsl();return e.color[2]+=e.color[2]*t,e},darken(t){const e=this.hsl();return e.color[2]-=e.color[2]*t,e},saturate(t){const e=this.hsl();return e.color[1]+=e.color[1]*t,e},desaturate(t){const e=this.hsl();return e.color[1]-=e.color[1]*t,e},whiten(t){const e=this.hwb();return e.color[1]+=e.color[1]*t,e},blacken(t){const e=this.hwb();return e.color[2]+=e.color[2]*t,e},grayscale(){const t=this.rgb().color,e=.3*t[0]+.59*t[1]+.11*t[2];return Ye.rgb(e,e,e)},fade(t){return this.alpha(this.valpha-this.valpha*t)},opaquer(t){return this.alpha(this.valpha+this.valpha*t)},rotate(t){const e=this.hsl();let i=e.color[0];return i=(i+t)%360,i=i<0?360+i:i,e.color[0]=i,e},mix(t,e){if(!t||!t.rgb)throw new Error('Argument to "mix" was not a Color instance, but rather an instance of '+typeof t);const i=t.rgb(),r=this.rgb(),n=void 0===e?.5:e,o=2*n-1,a=i.alpha()-r.alpha(),s=((o*a===-1?o:(o+a)/(1+o*a))+1)/2,l=1-s;return Ye.rgb(s*i.red()+l*r.red(),s*i.green()+l*r.green(),s*i.blue()+l*r.blue(),i.alpha()*n+r.alpha()*(1-n))}};for(const t of Object.keys(st)){if(Rf.includes(t))continue;const{channels:e}=st[t];Ye.prototype[t]=function(...e){return this.model===t?new Ye(this):e.length>0?new Ye(e,t):new Ye([...ry(st[this.model][t].raw(this.color)),this.valpha],t)},Ye[t]=function(...i){let r=i[0];return"number"==typeof r&&(r=Us(i,e)),new Ye(r,t)}}function ey(t,e){return Number(t.toFixed(e))}function ty(t){return function(e){return ey(e,t)}}function je(t,e,i){t=Array.isArray(t)?t:[t];for(const r of t)(Kn[r]||(Kn[r]=[]))[e]=i;return t=t[0],function(r){let n;return void 0!==r?(i&&(r=i(r)),n=this[t](),n.color[e]=r,n):(n=this[t]().color[e],i&&(n=i(n)),n)}}function Ue(t){return function(e){return Math.max(0,Math.min(t,e))}}function ry(t){return Array.isArray(t)?t:[t]}function Us(t,e){for(let i=0;i<e;i++)"number"!=typeof t[i]&&(t[i]=0);return t}var iy=Ye;const ny=iy;function oy(t){const e=t.isDark?Fs.find(t=>t.isDark):Fs.find(t=>!t.isDark),i={...e,...t,colors:{...null==e?void 0:e.colors,...t.colors}},r=Object.entries(i.colors).map(([t,e])=>[t,sy(e)]);return{id:i.name,name:i.name,colors:Object.fromEntries(r),is_dark:i.isDark}}function sy(t){return t.endsWith("%")||3===t.split(" ").length?t:ny(t).rgb().array().slice(0,3).join(" ")}var xh;let Ct=typeof document<"u"?null!=(xh=document.getElementById("root"))?xh:document.body:void 0;function ay(t){Ct=t}function ly(t,e){null==Ct||Ct.style.setProperty(t,e)}function cy(t){Object.entries(t.colors).forEach(([t,e])=>{ly(t,e)}),t.is_dark?Ct.classList.add("dark"):Ct.classList.remove("dark")}const Rc={top:0,right:0,bottom:0,left:0,width:0,height:0},oe=_f()(h1(Ef((t,e)=>({editor:null,fabric:null,bootstrapData:{},config:vf,zoom:1,dirty:!1,original:{width:1,height:1},stageSize:Rc,canvasSize:Rc,canvasRef:null,activeTool:null,activeToolOverlay:null,loading:!1,openPanels:{newImage:!1,history:!1,objects:!1,export:!1},...k1(t,e),...D1(t,e),...E1(t,e),...O1(t,e),...I1(t,e),...R1(t,e),...L1(t,e),setZoom:e=>t(t=>{t.zoom=e}),setOriginal:(e,i)=>t(t=>{t.original={width:e,height:i}}),setDirty:e=>t(t=>{t.dirty=e}),toggleLoading:e=>t(t=>{t.loading=e}),setStageSize:e=>t(t=>{t.stageSize=e}),setCanvasSize:e=>t(t=>{t.canvasSize=e}),setActiveTool:(e,i)=>{t(t=>{t.activeTool=e,t.activeToolOverlay=i})},setConfig:i=>t(t=>{var r,n;const o=T1(i,e().config);t.config=o;const a=o.activeLanguage||"en",s=null==(r=o.languages)?void 0:r[a],l=((null==(n=o.ui)?void 0:n.themes)||[]).map(t=>oy(t)),c=l.find(t=>{var e;return t.id===(null==(e=o.ui)?void 0:e.activeTheme)});c&&cy(c),t.bootstrapData={i18n:{language:a,name:a,id:0,lines:s},themes:{all:l}}}),togglePanel:(e,i)=>t(t=>{t.openPanels[e]=null!=i?i:!t.openPanels[e]}),applyChanges:async()=>{var i;const r=e().activeTool;if(!r)return;const n=e()[r],o=await(null==(i=null==n?void 0:n.apply)?void 0:i.call(n));t(t=>{t.dirty=!1,t.activeTool=null,t.activeToolOverlay=null}),!1!==o&&e().editor.tools.history.addHistoryItem({name:r}),null==n||n.reset()},cancelChanges:async()=>{const i=e().activeTool;if(!i)return;const r=e().dirty;t(t=>{t.dirty=!1,t.activeTool=null,t.activeToolOverlay=null}),r&&await e().editor.tools.history.reload();const n=e()[i];null==n||n.reset()},reset:()=>{e().editor.tools.transform.resetStraightenAnchor(),t({activeTool:null,activeToolOverlay:null,zoom:1,dirty:!1,loading:!1,openPanels:{newImage:!1,history:!1,objects:!1,export:!1}}),e().history.reset(),e().objects.reset(),e().filter.reset(),e().crop.reset(),e().frame.reset(),e().resize.reset(),e().corners.reset()}}))));function O(){return oe.getState()}function I(){return O().editor.tools}function he(){return O().fabric}function Ws(t){return I().canvas.clear(),I().frame.remove(),O().setConfig({image:void 0,blankCanvasSize:void 0,...t}),O().reset(),new Promise(t=>setTimeout(t))}async function Co(t){return(await fetch(t)).json()}const Pr={selectable:!1,evented:!1,lockMovementX:!0,lockMovementY:!0,lockRotation:!0,lockScalingX:!0,lockScalingY:!0,lockUniScaling:!0,hasControls:!1,hasBorders:!1,hasRotatingPoint:!1,strokeWidth:0};function Zn(t=[]){var e;t=[...Object.keys(Pr),"crossOrigin","name","displayName","data",...t];const i=he().toJSON(t);return i.objects=i.objects.filter(t=>!t.data.pixieInternal).map(t=>("image"===t.type&&O().config.crossOrigin&&(t.crossOrigin="anonymous"),lr(t)&&(t.selectable=!0,t.lockMovementX=!1,t.lockMovementY=!1,t.lockUniScaling=!1),{...t,data:t.data?{...t.data}:{}})),{canvas:i,editor:{frame:I().frame.active.config?{name:I().frame.active.config.name,sizePercent:I().frame.active.currentSizeInPercent}:null,zoom:O().zoom,activeObjectId:(null==(e=O().objects.active)?void 0:e.id)||null},canvasWidth:O().original.width,canvasHeight:O().original.height}}function tl(t=null){if(O().dirty)return;I().zoom.fitToScreen();const[e,i]=Lf(he().getActiveObject());t?O().setActiveTool(t,e===t?i:null):O().setActiveTool(e,i)}function Lf(t){switch(null==t?void 0:t.name){case Ne.Text:return[Pe.TEXT,mt.Text];case Ne.Sticker:case Ne.Image:return[Pe.STICKERS,mt.ActiveObject];case Ne.Shape:return[Pe.SHAPES,mt.ActiveObject];default:return[null,null]}}function rl(){return!(O().config.image||O().config.blankCanvasSize||he()&&0!==he().getObjects().length)}const uy='/*! tailwindcss v3.1.8 | MIT License | https://tailwindcss.com*/.pi *,.pi :after,.pi :before{border-color:rgb(var(--be-foreground-base)/var(--be-divider-opacity));border-style:solid;border-width:0;box-sizing:border-box}.pi :after,.pi :before{--tw-content:""}.pi hr{border-top-width:1px;color:inherit;height:0}.pi abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.pi h1,.pi h2,.pi h3,.pi h4,.pi h5,.pi h6{font-size:inherit;font-weight:inherit}.pi a{color:inherit;text-decoration:inherit}.pi b,.pi strong{font-weight:bolder}.pi code,.pi kbd,.pi pre,.pi samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}.pi small{font-size:80%}.pi sub,.pi sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.pi sub{bottom:-.25em}.pi sup{top:-.5em}.pi table{border-collapse:collapse;border-color:inherit;text-indent:0}.pi button,.pi input,.pi optgroup,.pi select,.pi textarea{color:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;margin:0;padding:0}.pi button,.pi select{text-transform:none}.pi [type=button],.pi [type=reset],.pi [type=submit],.pi button{-webkit-appearance:button;background-color:transparent;background-image:none}.pi :-moz-focusring{outline:auto}.pi :-moz-ui-invalid{box-shadow:none}.pi progress{vertical-align:baseline}.pi ::-webkit-inner-spin-button,.pi ::-webkit-outer-spin-button{height:auto}.pi [type=search]{-webkit-appearance:textfield;outline-offset:-2px}.pi ::-webkit-search-decoration{-webkit-appearance:none}.pi ::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}.pi summary{display:list-item}.pi blockquote,.pi dd,.pi dl,.pi figure,.pi h1,.pi h2,.pi h3,.pi h4,.pi h5,.pi h6,.pi hr,.pi p,.pi pre{margin:0}.pi fieldset{margin:0;padding:0}.pi legend{padding:0}.pi menu,.pi ol,.pi ul{list-style:none;margin:0;padding:0}.pi textarea{resize:vertical}.pi input::-moz-placeholder,.pi textarea::-moz-placeholder{color:#9ca3af;opacity:1}.pi input::placeholder,.pi textarea::placeholder{color:#9ca3af;opacity:1}.pi [role=button],.pi button{cursor:pointer}.pi :disabled{cursor:default}.pi audio,.pi canvas,.pi embed,.pi iframe,.pi img,.pi object,.pi svg,.pi video{display:block;vertical-align:middle}.pi img,.pi video{height:auto;max-width:100%}.pi *,.pi :after,.pi :before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(147,197,253,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.pi ::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(147,197,253,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.pi .container{width:100%}.pi .\\!container{width:100%!important}@media (min-width:640px){.pi .container{max-width:640px}.pi .\\!container{max-width:640px!important}}@media (min-width:768px){.pi .container{max-width:768px}.pi .\\!container{max-width:768px!important}}@media (min-width:1024px){.pi .container{max-width:1024px}.pi .\\!container{max-width:1024px!important}}@media (min-width:1280px){.pi .container{max-width:1280px}.pi .\\!container{max-width:1280px!important}}@media (min-width:1536px){.pi .container{max-width:1536px}.pi .\\!container{max-width:1536px!important}}.pi .sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.pi .pointer-events-none{pointer-events:none}.pi .pointer-events-auto{pointer-events:auto}.pi .visible{visibility:visible}.pi .\\!visible{visibility:visible!important}.pi .invisible{visibility:hidden}.pi .static{position:static}.pi .fixed{position:fixed}.pi .absolute{position:absolute}.pi .relative{position:relative}.pi .sticky{position:sticky}.pi .inset-0{bottom:0;top:0}.pi .inset-0,.pi .inset-x-0{left:0;right:0}.pi .right-2{right:2px}.pi .top-2{top:2px}.pi .top-0{top:0}.pi .left-0{left:0}.pi .left-16{left:16px}.pi .top-26{top:26px}.pi .-left-5{left:-5px}.pi .-top-5{top:-5px}.pi .bottom-0{bottom:0}.pi .-bottom-5{bottom:-5px}.pi .right-0{right:0}.pi .-right-5{right:-5px}.pi .bottom-20{bottom:20px}.pi .right-20{right:20px}.pi .top-24{top:24px}.pi .-bottom-14{bottom:-14px}.pi .left-30{left:30px}.pi .right-4{right:4px}.pi .top-1\\/2{top:50%}.pi .-bottom-20{bottom:-20px}.pi .left-1\\/2{left:50%}.pi .-bottom-10{bottom:-10px}.pi .-left-8{left:-8px}.pi .-left-80{left:-80px}.pi .-bottom-2{bottom:-2px}.pi .-right-2{right:-2px}.pi .isolate{isolation:isolate}.pi .z-20{z-index:20}.pi .z-modal{z-index:110}.pi .z-10{z-index:10}.pi .z-obj-box{z-index:20}.pi .z-navbar{z-index:40}.pi .z-tool-overlay{z-index:30}.pi .z-50,.pi .z-loading-indicator{z-index:50}.pi .z-popover{z-index:130}.pi .z-tray{z-index:120}.pi .z-toast{z-index:160}.pi .z-tooltip{z-index:150}.pi .z-cropzone{z-index:10}.pi .col-auto{grid-column:auto}.pi .m-auto{margin:auto}.pi .m-10{margin:10px}.pi .my-20{margin-bottom:20px;margin-top:20px}.pi .my-12{margin-bottom:12px;margin-top:12px}.pi .mx-auto{margin-left:auto;margin-right:auto}.pi .my-50{margin-bottom:50px;margin-top:50px}.pi .mx-14{margin-left:14px;margin-right:14px}.pi .my-30{margin-bottom:30px;margin-top:30px}.pi .my-24{margin-bottom:24px;margin-top:24px}.pi .my-80{margin-bottom:80px;margin-top:80px}.pi .my-32{margin-bottom:32px;margin-top:32px}.pi .my-40{margin-bottom:40px;margin-top:40px}.pi .my-8{margin-bottom:8px;margin-top:8px}.pi .my-10{margin-bottom:10px;margin-top:10px}.pi .my-100{margin-bottom:6.25rem;margin-top:6.25rem}.pi .mx-4{margin-left:4px;margin-right:4px}.pi .my-4{margin-bottom:4px;margin-top:4px}.pi .mx-8{margin-left:8px;margin-right:8px}.pi .mx-20{margin-left:20px;margin-right:20px}.pi .my-auto{margin-bottom:auto;margin-top:auto}.pi .mr-5{margin-right:5px}.pi .ml-auto{margin-left:auto}.pi .mr-20{margin-right:20px}.pi .mb-16{margin-bottom:16px}.pi .mr-10{margin-right:10px}.pi .mt-auto{margin-top:auto}.pi .mt-80{margin-top:80px}.pi .mt-30{margin-top:30px}.pi .mt-4{margin-top:4px}.pi .mb-30{margin-bottom:30px}.pi .mb-20{margin-bottom:20px}.pi .mr-auto{margin-right:auto}.pi .mr-24{margin-right:24px}.pi .mb-24{margin-bottom:24px}.pi .mb-14{margin-bottom:14px}.pi .mt-6{margin-top:6px}.pi .mt-12{margin-top:12px}.pi .mb-4{margin-bottom:4px}.pi .mt-14{margin-top:14px}.pi .ml-6{margin-left:6px}.pi .mr-14{margin-right:14px}.pi .mt-8{margin-top:8px}.pi .mb-10{margin-bottom:10px}.pi .mb-8{margin-bottom:8px}.pi .mt-20{margin-top:20px}.pi .mb-1{margin-bottom:1px}.pi .ml-10{margin-left:10px}.pi .mt-10{margin-top:10px}.pi .mt-2{margin-top:2px}.pi .mb-12{margin-bottom:12px}.pi .mb-40{margin-bottom:40px}.pi .mt-40{margin-top:40px}.pi .mb-32{margin-bottom:32px}.pi .mb-64{margin-bottom:64px}.pi .mt-32{margin-top:32px}.pi .mb-48{margin-bottom:48px}.pi .mt-50{margin-top:50px}.pi .mb-6{margin-bottom:6px}.pi .mt-60{margin-top:60px}.pi .-ml-1{margin-left:-1px}.pi .-ml-4{margin-left:-4px}.pi .mr-8{margin-right:8px}.pi .-mr-4{margin-right:-4px}.pi .ml-8{margin-left:8px}.pi .mt-16{margin-top:16px}.pi .mb-2{margin-bottom:2px}.pi .mt-24{margin-top:24px}.pi .-mt-2{margin-top:-2px}.pi .mt-36{margin-top:36px}.pi .mb-110{margin-bottom:110px}.pi .mt-18{margin-top:18px}.pi .mr-6{margin-right:6px}.pi .mr-16{margin-right:16px}.pi .ml-12{margin-left:12px}.pi .mr-4{margin-right:4px}.pi .mr-12{margin-right:12px}.pi .mr-2{margin-right:2px}.pi .mb-18{margin-bottom:18px}.pi .-ml-3{margin-left:-3px}.pi .-ml-12{margin-left:-12px}.pi .-ml-6{margin-left:-6px}.pi .box-content{box-sizing:content-box}.pi .block{display:block}.pi .inline-block{display:inline-block}.pi .inline{display:inline}.pi .flex{display:flex}.pi .inline-flex{display:inline-flex}.pi .table{display:table}.pi .table-cell{display:table-cell}.pi .table-row{display:table-row}.pi .grid{display:grid}.pi .\\!grid{display:grid!important}.pi .contents{display:contents}.pi .hidden{display:none}.pi .aspect-square{aspect-ratio:1/1}.pi .h-2\\/4{height:50%}.pi .h-full{height:100%}.pi .h-font{height:1em}.pi .h-1{height:1px}.pi .h-80{height:80px}.pi .h-400{height:25rem}.pi .h-50{height:50px}.pi .h-42{height:42px}.pi .h-54{height:3.375rem}.pi .h-8{height:8px}.pi .h-24{height:24px}.pi .h-36{height:36px}.pi .h-40{height:40px}.pi .h-20{height:20px}.pi .h-30{height:30px}.pi .h-84{height:84px}.pi .h-68{height:68px}.pi .h-32{height:32px}.pi .h-\\[54px\\]{height:54px}.pi .h-\\[186px\\]{height:186px}.pi .h-60{height:60px}.pi .h-18{height:18px}.pi .h-12{height:12px}.pi .h-26{height:26px}.pi .h-90{height:5.625rem}.pi .h-128{height:128px}.pi .h-6{height:6px}.pi .h-4{height:4px}.pi .h-48{height:48px}.pi .h-2{height:2px}.pi .h-16{height:16px}.pi .h-56{height:56px}.pi .h-64{height:64px}.pi .h-144{height:144px}.pi .h-100{height:6.25rem}.pi .h-max{height:-moz-max-content;height:max-content}.pi .h-px{height:1px}.pi .h-28{height:28px}.pi .h-92{height:92px}.pi .h-14{height:14px}.pi .h-38{height:2.375rem}.pi .h-22{height:22px}.pi .max-h-\\[calc\\(100vh-90px\\)\\]{max-height:calc(100vh - 90px)}.pi .max-h-\\[calc\\(100\\%-40px\\)\\]{max-height:calc(100% - 40px)}.pi .max-h-620{max-height:38.75rem}.pi .max-h-100{max-height:6.25rem}.pi .max-h-\\[36px\\]{max-height:36px}.pi .max-h-8{max-height:8px}.pi .max-h-tray{max-height:calc(var(--be-viewport-height, 100vh)*.9)}.pi .max-h-\\[calc\\(100\\%-30px\\)\\]{max-height:calc(100% - 30px)}.pi .max-h-40{max-height:40px}.pi .max-h-inherit{max-height:inherit}.pi .max-h-\\[583px\\]{max-height:583px}.pi .max-h-full{max-height:100%}.pi .max-h-26{max-height:26px}.pi .max-h-36{max-height:36px}.pi .max-h-dialog{max-height:calc(var(--be-viewport-height, 100vh)*.9)}.pi .max-h-240{max-height:240px}.pi .min-h-440{min-height:27.5rem}.pi .min-h-full{min-height:100%}.pi .min-h-\\[238px\\]{min-height:238px}.pi .min-h-86{min-height:86px}.pi .min-h-90{min-height:5.625rem}.pi .min-h-36{min-height:36px}.pi .min-h-42{min-height:42px}.pi .min-h-dialog{min-height:calc(var(--be-viewport-height, 100vh)*.9)}.pi .min-h-50{min-height:50px}.pi .min-h-\\[228px\\]{min-height:228px}.pi .min-h-30{min-height:30px}.pi .min-h-60{min-height:60px}.pi .w-max{width:-moz-max-content;width:max-content}.pi .w-full{width:100%}.pi .w-font{width:1em}.pi .w-80{width:80px}.pi .w-50{width:50px}.pi .w-8{width:8px}.pi .w-24{width:24px}.pi .w-36{width:36px}.pi .w-20{width:20px}.pi .w-30{width:30px}.pi .w-224{width:224px}.pi .w-68{width:68px}.pi .w-96{width:96px}.pi .w-144{width:144px}.pi .w-auto{width:auto}.pi .w-1{width:1px}.pi .w-240{width:240px}.pi .w-\\[168px\\]{width:168px}.pi .w-1\\/2{width:50%}.pi .w-384{width:384px}.pi .w-min{width:-moz-min-content;width:min-content}.pi .w-256{width:256px}.pi .w-18{width:18px}.pi .w-12{width:12px}.pi .w-42{width:42px}.pi .w-60{width:60px}.pi .\\!w-auto{width:auto!important}.pi .w-26{width:26px}.pi .w-32{width:32px}.pi .w-850{width:53.125rem}.pi .w-288{width:288px}.pi .w-320{width:320px}.pi .w-440{width:27.5rem}.pi .w-40{width:40px}.pi .w-64{width:64px}.pi .w-1\\/3{width:33.333333%}.pi .w-16{width:16px}.pi .w-56{width:56px}.pi .w-2{width:2px}.pi .w-110{width:110px}.pi .w-\\[4ch\\]{width:4ch}.pi .w-\\[233px\\]{width:233px}.pi .w-46{width:2.875rem}.pi .w-38{width:2.375rem}.pi .w-\\[210px\\]{width:210px}.pi .w-100{width:6.25rem}.pi .w-620{width:38.75rem}.pi .w-780{width:48.75rem}.pi .w-\\[calc\\(100\\%-40px\\)\\]{width:calc(100% - 40px)}.pi .w-px{width:1px}.pi .w-28{width:28px}.pi .w-90{width:5.625rem}.pi .w-14{width:14px}.pi .w-22{width:22px}.pi .w-280{width:17.5rem}.pi .min-w-0{min-width:0}.pi .min-w-320{min-width:320px}.pi .min-w-80{min-width:80px}.pi .min-w-224{min-width:224px}.pi .min-w-288{min-width:288px}.pi .min-w-240{min-width:240px}.pi .min-w-42{min-width:42px}.pi .min-w-90{min-width:5.625rem}.pi .min-w-180{min-width:11.25rem}.pi .min-w-128{min-width:128px}.pi .min-w-4{min-width:4px}.pi .min-w-192{min-width:192px}.pi .max-w-\\[calc\\(100vw-90px\\)\\]{max-width:calc(100vw - 90px)}.pi .max-w-max{max-width:-moz-max-content;max-width:max-content}.pi .max-w-280{max-width:17.5rem}.pi .max-w-620{max-width:38.75rem}.pi .max-w-440{max-width:27.5rem}.pi .max-w-\\[calc\\(100\\%-40px\\)\\]{max-width:calc(100% - 40px)}.pi .max-w-\\[90\\%\\]{max-width:90%}.pi .max-w-full{max-width:100%}.pi .max-w-500{max-width:31.25rem}.pi .max-w-\\[464px\\]{max-width:464px}.pi .max-w-180{max-width:11.25rem}.pi .max-w-400{max-width:25rem}.pi .max-w-780{max-width:48.75rem}.pi .max-w-375{max-width:375px}.pi .max-w-240{max-width:240px}.pi .max-w-320{max-width:320px}.pi .max-w-288{max-width:288px}.pi .max-w-112{max-width:112px}.pi .max-w-80{max-width:80px}.pi .max-w-850{max-width:53.125rem}.pi .max-w-580{max-width:36.25rem}.pi .max-w-dialog{max-width:calc(var(--be-viewport-width, 100vw)*.9)}.pi .max-w-950{max-width:59.375rem}.pi .flex-auto{flex:1 1 auto}.pi .flex-shrink-0,.pi .shrink-0{flex-shrink:0}.pi .flex-grow-0{flex-grow:0}.pi .origin-\\[100\\%\\]{transform-origin:100%}.pi .-translate-y-1\\/2{--tw-translate-y:-50%}.pi .-translate-x-1\\/2,.pi .-translate-y-1\\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.pi .-translate-x-1\\/2{--tw-translate-x:-50%}.pi .rotate-180{--tw-rotate:180deg}.pi .rotate-0,.pi .rotate-180{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.pi .rotate-0{--tw-rotate:0deg}.pi .rotate-45{--tw-rotate:45deg}.pi .rotate-45,.pi .rotate-90{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.pi .rotate-90{--tw-rotate:90deg}.pi .transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.pi .cursor-pointer{cursor:pointer}.pi .cursor-nwse-resize{cursor:nwse-resize}.pi .cursor-nesw-resize{cursor:nesw-resize}.pi .cursor-se-resize{cursor:se-resize}.pi .cursor-sw-resize{cursor:sw-resize}.pi .cursor-zoom-in{cursor:zoom-in}.pi .cursor-default{cursor:default}.pi .cursor-move{cursor:move}.pi .cursor-not-allowed{cursor:not-allowed}.pi .touch-none{touch-action:none}.pi .select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.pi .resize-none{resize:none}.pi .resize{resize:both}.pi .appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.pi .break-inside-avoid{-moz-column-break-inside:avoid;break-inside:avoid}.pi .grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.pi .grid-cols-5-min-content{grid-template-columns:repeat(5,min-content)}.pi .flex-row{flex-direction:row}.pi .flex-col{flex-direction:column}.pi .flex-col-reverse{flex-direction:column-reverse}.pi .flex-wrap{flex-wrap:wrap}.pi .flex-nowrap{flex-wrap:nowrap}.pi .items-start{align-items:flex-start}.pi .items-center{align-items:center}.pi .items-stretch{align-items:stretch}.pi .justify-start{justify-content:flex-start}.pi .justify-end{justify-content:flex-end}.pi .justify-center{justify-content:center}.pi .justify-between{justify-content:space-between}.pi .gap-16{gap:16px}.pi .gap-20{gap:20px}.pi .gap-8{gap:8px}.pi .gap-14{gap:14px}.pi .gap-24{gap:24px}.pi .gap-6{gap:6px}.pi .gap-30{gap:30px}.pi .gap-10{gap:10px}.pi .gap-12{gap:12px}.pi .gap-4{gap:4px}.pi .gap-18{gap:18px}.pi .gap-32{gap:32px}.pi .gap-40{gap:40px}.pi .gap-64{gap:64px}.pi .gap-36{gap:36px}.pi .gap-x-10{-moz-column-gap:10px;column-gap:10px}.pi .space-y-10>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(10px*var(--tw-space-y-reverse));margin-top:calc(10px*(1 - var(--tw-space-y-reverse)))}.pi .self-stretch{align-self:stretch}.pi .overflow-auto{overflow:auto}.pi .overflow-hidden{overflow:hidden}.pi .overflow-visible{overflow:visible}.pi .overflow-scroll{overflow:scroll}.pi .overflow-x-auto{overflow-x:auto}.pi .overflow-y-auto{overflow-y:auto}.pi .overflow-x-hidden{overflow-x:hidden}.pi .overflow-y-hidden{overflow-y:hidden}.pi .truncate{overflow:hidden;white-space:nowrap}.pi .overflow-ellipsis,.pi .text-ellipsis,.pi .truncate{text-overflow:ellipsis}.pi .whitespace-normal{white-space:normal}.pi .whitespace-nowrap{white-space:nowrap}.pi .whitespace-pre-wrap{white-space:pre-wrap}.pi .break-words{overflow-wrap:break-word}.pi .rounded{border-radius:4px}.pi .rounded-md{border-radius:6px}.pi .rounded-full{border-radius:9999px}.pi .rounded-lg{border-radius:8px}.pi .rounded-none{border-radius:0}.pi .rounded-2xl{border-radius:16px}.pi .rounded-sm{border-radius:2px}.pi .rounded-\\[16px\\]{border-radius:16px}.pi .rounded-\\[64px\\]{border-radius:64px}.pi .rounded-\\[32px\\]{border-radius:32px}.pi .rounded-3xl{border-radius:24px}.pi .rounded-xl{border-radius:12px}.pi .rounded-t{border-top-left-radius:4px;border-top-right-radius:4px}.pi .rounded-l{border-bottom-left-radius:4px;border-top-left-radius:4px}.pi .rounded-r-md{border-bottom-right-radius:6px;border-top-right-radius:6px}.pi .rounded-l-md{border-bottom-left-radius:6px;border-top-left-radius:6px}.pi .rounded-r{border-bottom-right-radius:4px;border-top-right-radius:4px}.pi .rounded-l-none{border-bottom-left-radius:0;border-top-left-radius:0}.pi .rounded-r-none{border-bottom-right-radius:0;border-top-right-radius:0}.pi .rounded-l-full{border-bottom-left-radius:9999px;border-top-left-radius:9999px}.pi .rounded-r-full{border-bottom-right-radius:9999px;border-top-right-radius:9999px}.pi .rounded-tr-none{border-top-right-radius:0}.pi .rounded-br-none{border-bottom-right-radius:0}.pi .rounded-tl-none{border-top-left-radius:0}.pi .rounded-bl-none{border-bottom-left-radius:0}.pi .border{border-width:1px}.pi .border-2{border-width:2px}.pi .border-4{border-width:4px}.pi .border-\\[3px\\]{border-width:3px}.pi .border-y{border-bottom-width:1px;border-top-width:1px}.pi .border-r{border-right-width:1px}.pi .border-l-4{border-left-width:4px}.pi .border-b{border-bottom-width:1px}.pi .border-t-4{border-top-width:4px}.pi .border-r-4{border-right-width:4px}.pi .border-b-4{border-bottom-width:4px}.pi .border-t{border-top-width:1px}.pi .border-l{border-left-width:1px}.pi .border-dotted{border-style:dotted}.pi .border-none{border-style:none}.pi .border-divider{border-color:rgb(var(--be-foreground-base)/var(--be-divider-opacity))}.pi .border-white{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity))}.pi .border-primary\\/50{border-color:rgb(var(--be-primary)/.5)}.pi .border-danger\\/50{border-color:#ef444480}.pi .border-transparent{border-color:transparent}.pi .border-primary{--tw-border-opacity:1;border-color:rgb(var(--be-primary)/var(--tw-border-opacity))}.pi .border-danger{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity))}.pi .border-chip{--tw-border-opacity:1;border-color:rgb(var(--be-background-chip)/var(--tw-border-opacity))}.pi .border-paper{--tw-border-opacity:1;border-color:rgb(var(--be-paper)/var(--tw-border-opacity))}.pi .border-background{--tw-border-opacity:1;border-color:rgb(var(--be-background)/var(--tw-border-opacity))}.pi .border-text-muted{border-color:rgb(var(--be-foreground-base)/var(--be-text-muted-opacity))}.pi .border-white\\/50{border-color:#ffffff80}.pi .border-l-primary{--tw-border-opacity:1;border-left-color:rgb(var(--be-primary)/var(--tw-border-opacity))}.pi .border-l-transparent{border-left-color:transparent}.pi .border-l-positive{--tw-border-opacity:1;border-left-color:rgb(34 197 94/var(--tw-border-opacity))}.pi .border-l-warning{--tw-border-opacity:1;border-left-color:rgb(243 164 50/var(--tw-border-opacity))}.pi .border-l-danger{--tw-border-opacity:1;border-left-color:rgb(239 68 68/var(--tw-border-opacity))}.pi .border-r-transparent{border-right-color:transparent}.pi .border-r-primary-light{--tw-border-opacity:1;border-right-color:rgb(var(--be-primary-light)/var(--tw-border-opacity))}.pi .border-b-primary{--tw-border-opacity:1;border-bottom-color:rgb(var(--be-primary)/var(--tw-border-opacity))}.pi .bg-background{--tw-bg-opacity:1;background-color:rgb(var(--be-background)/var(--tw-bg-opacity))}.pi .bg-divider{background-color:rgb(var(--be-foreground-base)/var(--be-divider-opacity))}.pi .bg-paper{--tw-bg-opacity:1;background-color:rgb(var(--be-paper)/var(--tw-bg-opacity))}.pi .bg{--tw-bg-opacity:1;background-color:rgb(var(--be-background)/var(--tw-bg-opacity))}.pi .bg-alt{--tw-bg-opacity:1;background-color:rgb(var(--be-background-alt)/var(--tw-bg-opacity))}.pi .bg-primary\\/hover{background-color:rgb(var(--be-primary)/var(--be-hover-opacity))}.pi .bg-primary{--tw-bg-opacity:1;background-color:rgb(var(--be-primary)/var(--tw-bg-opacity))}.pi .bg-positive\\/focus{background-color:rgb(34 197 94/var(--be-focus-opacity))}.pi .bg-warning\\/focus{background-color:rgb(243 164 50/var(--be-focus-opacity))}.pi .bg-danger\\/focus{background-color:rgb(239 68 68/var(--be-focus-opacity))}.pi .bg-primary\\/focus{background-color:rgb(var(--be-primary)/var(--be-focus-opacity))}.pi .bg-primary\\/5{background-color:rgb(var(--be-primary)/.05)}.pi .bg-controls{--tw-bg-opacity:1;background-color:rgb(50 50 50/var(--tw-bg-opacity))}.pi .bg-chip{--tw-bg-opacity:1;background-color:rgb(var(--be-background-chip)/var(--tw-bg-opacity))}.pi .bg-primary-light\\/20{background-color:rgb(var(--be-primary-light)/.2)}.pi .bg-primary\\/selected{background-color:rgb(var(--be-primary)/var(--be-selected-opacity))}.pi .bg-warning{--tw-bg-opacity:1;background-color:rgb(243 164 50/var(--tw-bg-opacity))}.pi .bg-transparent{background-color:transparent}.pi .bg-danger{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity))}.pi .bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.pi .bg-toast{--tw-bg-opacity:1;background-color:rgb(50 50 50/var(--tw-bg-opacity))}.pi .bg-focus{background-color:rgb(var(--be-foreground-base)/var(--be-focus-opacity))}.pi .bg-black\\/30{background-color:#0000004d}.pi .bg-primary-light{--tw-bg-opacity:1;background-color:rgb(var(--be-primary-light)/var(--tw-bg-opacity))}.pi .bg-fg-base\\/4{background-color:rgb(var(--be-foreground-base)/4%)}.pi .bg-positive{--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity))}.pi .bg-inherit{background-color:inherit}.pi .bg-background\\/70{background-color:rgb(var(--be-background)/.7)}.pi .bg-envato{--tw-bg-opacity:1;background-color:rgb(108 161 43/var(--tw-bg-opacity))}.pi .bg-disabled{background-color:rgb(var(--be-foreground-base)/var(--be-disabled-bg-opacity))}.pi .bg-disabled-fg{background-color:rgb(var(--be-foreground-base)/var(--be-disabled-fg-opacity))}.pi .bg-slider-disabled{--tw-bg-opacity:1;background-color:rgb(189 189 189/var(--tw-bg-opacity))}.pi .bg-primary-dark{--tw-bg-opacity:1;background-color:rgb(var(--be-primary-dark)/var(--tw-bg-opacity))}.pi .bg-white\\/50{background-color:#ffffff80}.pi .bg-black\\/50{background-color:#00000080}.pi .bg-primary-light\\/40{background-color:rgb(var(--be-primary-light)/.4)}.pi .bg-positive-lighter{--tw-bg-opacity:1;background-color:rgb(187 247 208/var(--tw-bg-opacity))}.pi .bg-danger-lighter{--tw-bg-opacity:1;background-color:rgb(254 202 202/var(--tw-bg-opacity))}.pi .bg-opacity-95{--tw-bg-opacity:.95}.pi .bg-no-repeat{background-repeat:no-repeat}.pi .fill-current{fill:currentColor}.pi .fill-transparent{fill:transparent}.pi .stroke-current{stroke:currentColor}.pi .object-contain{-o-object-fit:contain;object-fit:contain}.pi .object-cover{-o-object-fit:cover;object-fit:cover}.pi .p-0{padding:0}.pi .p-14{padding:14px}.pi .p-16{padding:16px}.pi .p-24{padding:24px}.pi .p-10{padding:10px}.pi .p-8{padding:8px}.pi .p-6{padding:6px}.pi .p-12{padding:12px}.pi .p-20{padding:20px}.pi .p-4{padding:4px}.pi .p-18{padding:18px}.pi .p-40{padding:40px}.pi .p-2{padding:2px}.pi .px-24{padding-left:24px;padding-right:24px}.pi .py-20{padding-bottom:20px;padding-top:20px}.pi .px-6{padding-left:6px;padding-right:6px}.pi .px-8{padding-left:8px;padding-right:8px}.pi .py-12{padding-bottom:12px;padding-top:12px}.pi .px-16{padding-left:16px;padding-right:16px}.pi .py-14{padding-bottom:14px;padding-top:14px}.pi .px-14{padding-left:14px;padding-right:14px}.pi .px-20{padding-left:20px;padding-right:20px}.pi .px-32{padding-left:32px;padding-right:32px}.pi .py-10{padding-bottom:10px;padding-top:10px}.pi .px-4{padding-left:4px;padding-right:4px}.pi .px-10{padding-left:10px;padding-right:10px}.pi .py-2{padding-bottom:2px;padding-top:2px}.pi .px-5vw{padding-left:5vw;padding-right:5vw}.pi .px-12{padding-left:12px;padding-right:12px}.pi .py-\\[9px\\]{padding-bottom:9px;padding-top:9px}.pi .px-40{padding-left:40px;padding-right:40px}.pi .py-32{padding-bottom:32px;padding-top:32px}.pi .px-28{padding-left:28px;padding-right:28px}.pi .py-56{padding-bottom:56px;padding-top:56px}.pi .py-28{padding-bottom:28px;padding-top:28px}.pi .py-90{padding-bottom:5.625rem;padding-top:5.625rem}.pi .py-4{padding-bottom:4px;padding-top:4px}.pi .px-18{padding-left:18px;padding-right:18px}.pi .px-22{padding-left:22px;padding-right:22px}.pi .px-26{padding-left:26px;padding-right:26px}.pi .py-8{padding-bottom:8px;padding-top:8px}.pi .py-96{padding-bottom:96px;padding-top:96px}.pi .py-6{padding-bottom:6px;padding-top:6px}.pi .py-3{padding-bottom:3px;padding-top:3px}.pi .py-5{padding-bottom:5px;padding-top:5px}.pi .py-40{padding-bottom:40px;padding-top:40px}.pi .pt-14{padding-top:14px}.pi .pt-24{padding-top:24px}.pi .pb-12{padding-bottom:12px}.pi .pt-26{padding-top:26px}.pi .pb-16{padding-bottom:16px}.pi .pb-24{padding-bottom:24px}.pi .pt-50{padding-top:50px}.pi .pt-20{padding-top:20px}.pi .pb-10{padding-bottom:10px}.pi .pb-4{padding-bottom:4px}.pi .pr-10{padding-right:10px}.pi .pl-10{padding-left:10px}.pi .pb-20{padding-bottom:20px}.pi .pb-30{padding-bottom:30px}.pi .pt-30{padding-top:30px}.pi .pl-8{padding-left:8px}.pi .pb-14{padding-bottom:14px}.pi .pl-14{padding-left:14px}.pi .pt-54{padding-top:3.375rem}.pi .pb-28{padding-bottom:28px}.pi .pb-48{padding-bottom:48px}.pi .pb-safe-area{padding-bottom:env(safe-area-inset-bottom)}.pi .pl-24{padding-left:24px}.pi .pr-16{padding-right:16px}.pi .pr-24{padding-right:24px}.pi .pl-16{padding-left:16px}.pi .pr-6{padding-right:6px}.pi .pb-18{padding-bottom:18px}.pi .pt-6{padding-top:6px}.pi .pt-16{padding-top:16px}.pi .pt-10{padding-top:10px}.pi .pl-12{padding-left:12px}.pi .pr-12{padding-right:12px}.pi .pb-6{padding-bottom:6px}.pi .pt-42{padding-top:42px}.pi .pb-32{padding-bottom:32px}.pi .pt-70{padding-top:70px}.pi .pt-40{padding-top:40px}.pi .pr-8{padding-right:8px}.pi .pl-46{padding-left:2.875rem}.pi .pr-46{padding-right:2.875rem}.pi .pl-6{padding-left:6px}.pi .pl-18{padding-left:18px}.pi .pr-18{padding-right:18px}.pi .text-left{text-align:left}.pi .text-center{text-align:center}.pi .text-right{text-align:right}.pi .align-top{vertical-align:top}.pi .align-middle{vertical-align:middle}.pi .text-sm{font-size:14px;line-height:20px}.pi .text-xs{font-size:12px;line-height:16px}.pi .text-xl{font-size:20px;line-height:28px}.pi .text-6xl{font-size:60px;line-height:1}.pi .text-2xl{font-size:24px;line-height:32px}.pi .text-3xl{font-size:30px;line-height:36px}.pi .text-base{font-size:16px;line-height:24px}.pi .text-lg{font-size:18px;line-height:28px}.pi .text-4xl{font-size:36px;line-height:40px}.pi .font-medium{font-weight:500}.pi .font-semibold{font-weight:600}.pi .font-light{font-weight:300}.pi .font-bold{font-weight:700}.pi .font-normal{font-weight:400}.pi .uppercase{text-transform:uppercase}.pi .capitalize{text-transform:capitalize}.pi .italic{font-style:italic}.pi .tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.pi .leading-none{line-height:1}.pi .leading-5{line-height:1.25rem}.pi .tracking-wide{letter-spacing:.025em}.pi .text,.pi .text-main{color:rgb(var(--be-foreground-base)/var(--be-text-main-opacity))}.pi .text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.pi .text-muted{color:rgb(var(--be-foreground-base)/var(--be-text-muted-opacity))}.pi .text-positive{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity))}.pi .text-danger{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity))}.pi .text-primary{--tw-text-opacity:1;color:rgb(var(--be-primary)/var(--tw-text-opacity))}.pi .\\!text{color:rgb(var(--be-foreground-base)/var(--be-text-main-opacity))!important}.pi .text-facebook{--tw-text-opacity:1;color:rgb(59 89 152/var(--tw-text-opacity))}.pi .text-twitter{--tw-text-opacity:1;color:rgb(29 161 242/var(--tw-text-opacity))}.pi .text-positive-darker{--tw-text-opacity:1;color:rgb(22 101 52/var(--tw-text-opacity))}.pi .text-disabled{color:rgb(var(--be-foreground-base)/var(--be-disabled-fg-opacity))}.pi .text-on-primary{--tw-text-opacity:1;color:rgb(var(--be-on-primary)/var(--tw-text-opacity))}.pi .text-primary-light{--tw-text-opacity:1;color:rgb(var(--be-primary-light)/var(--tw-text-opacity))}.pi .text-primary\\/40{color:rgb(var(--be-primary)/.4)}.pi .text-black\\/30{color:#0000004d}.pi .text-danger-darker{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity))}.pi .underline{text-decoration-line:underline}.pi .no-underline{text-decoration-line:none}.pi .caret-transparent{caret-color:transparent}.pi .opacity-0{opacity:0}.pi .opacity-100{opacity:1}.pi .opacity-80{opacity:.8}.pi .opacity-90{opacity:.9}.pi .shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.pi .shadow,.pi .shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.pi .shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.pi .shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color)}.pi .shadow-\\[15px_0_30px_0_rgb\\(0_0_0_\\/_18\\%\\)\\],.pi .shadow-xl{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.pi .shadow-\\[15px_0_30px_0_rgb\\(0_0_0_\\/_18\\%\\)\\]{--tw-shadow:15px 0 30px 0 rgba(0,0,0,.18);--tw-shadow-colored:15px 0 30px 0 var(--tw-shadow-color)}.pi .shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.pi .shadow-md,.pi .shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.pi .shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.pi .shadow-2xl{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.pi .outline-none{outline:2px solid transparent;outline-offset:2px}.pi .outline{outline-color:rgb(var(--be-primary-lighter)/1);outline-style:solid;outline-width:2px}.pi .ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.pi .ring-inset{--tw-ring-inset:inset}.pi .ring-offset-4{--tw-ring-offset-width:4px}.pi .blur{--tw-blur:blur(8px)}.pi .blur,.pi .grayscale{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.pi .grayscale{--tw-grayscale:grayscale(100%)}.pi .invert{--tw-invert:invert(100%)}.pi .invert,.pi .sepia{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.pi .sepia{--tw-sepia:sepia(100%)}.pi .filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.pi .transition-transform{transition-duration:.15s;transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1)}.pi .transition-shadow{transition-duration:.15s;transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1)}.pi .transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.pi .transition-opacity{transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.pi .transition-bg-color{transition-duration:.15s;transition-property:background-color;transition-timing-function:cubic-bezier(.4,0,.2,1)}.pi .transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.pi .transition-button{transition-duration:.15s;transition-property:background-color,box-shadow,border-color,color;transition-timing-function:cubic-bezier(.4,0,.2,1)}.pi .transition-width{transition-duration:.15s;transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1)}.pi .transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.pi .duration-200{transition-duration:.2s}.pi .duration-100{transition-duration:.1s}.pi .will-change-\\[width\\]{will-change:width}.pi .will-change-transform{will-change:transform}.pi .icon-2xs{font-size:.75rem}.pi .icon-xs{font-size:1rem}.pi .icon-sm{font-size:1.25rem}.pi .icon-md{font-size:1.5rem}.pi .icon-lg{font-size:2.1875rem}.pi .icon-xl{font-size:2.6875rem}.pi .col-w-1{flex:1 0 0px}.pi .col-w-2{flex:2 0 0px}.pi .col-w-3{flex:3 0 0px}.pi .no-tap-highlight{-webkit-tap-highlight-color:transparent}@media only screen and (min-device-width:768px){.pi .tiny-scrollbar{scrollbar-color:rgba(0,0,0,.2) transparent;scrollbar-width:thin}.pi .tiny-scrollbar::-webkit-scrollbar{background-color:transparent;height:6px;width:6px}.pi .tiny-scrollbar::-webkit-scrollbar-thumb{background-color:rgb(var(--be-foreground-base)/.2);border-radius:10px}.pi .tiny-scrollbar::-webkit-scrollbar-track-piece:start{background:transparent}.pi .tiny-scrollbar::-webkit-scrollbar-track-piece:end{background:transparent}}.pi .hide-scrollbar{scrollbar-width:none}.pi .hide-scrollbar::-webkit-scrollbar{background:transparent;height:0;width:0}.pi .svg-icon{fill:currentColor;display:inline-block;flex-shrink:0;transition-duration:.15s;transition-property:transform,fill;transition-timing-function:cubic-bezier(.4,0,.2,1);-webkit-user-select:none;-moz-user-select:none;user-select:none}.pi .cropzone:not(.moving) .cropzone-transition{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.pi .first-letter\\:capitalize:first-letter{text-transform:capitalize}.pi .file\\:mr-10::file-selector-button{margin-right:10px}.pi .file\\:h-24::file-selector-button{height:24px}.pi .file\\:rounded::file-selector-button{border-radius:4px}.pi .file\\:border-none::file-selector-button{border-style:none}.pi .file\\:bg-primary::file-selector-button{--tw-bg-opacity:1;background-color:rgb(var(--be-primary)/var(--tw-bg-opacity))}.pi .file\\:px-10::file-selector-button{padding-left:10px;padding-right:10px}.pi .file\\:text-sm::file-selector-button{font-size:14px;line-height:20px}.pi .file\\:font-semibold::file-selector-button{font-weight:600}.pi .file\\:text-on-primary::file-selector-button{--tw-text-opacity:1;color:rgb(var(--be-on-primary)/var(--tw-text-opacity))}.pi .before\\:absolute:before{content:var(--tw-content);position:absolute}.pi .before\\:left-0:before{content:var(--tw-content);left:0}.pi .before\\:top-1\\/2:before{content:var(--tw-content);top:50%}.pi .before\\:z-10:before{content:var(--tw-content);z-index:10}.pi .before\\:block:before{content:var(--tw-content);display:block}.pi .before\\:h-1:before{content:var(--tw-content);height:1px}.pi .before\\:h-full:before{content:var(--tw-content);height:100%}.pi .before\\:h-28:before{content:var(--tw-content);height:28px}.pi .before\\:h-22:before{content:var(--tw-content);height:22px}.pi .before\\:h-18:before{content:var(--tw-content);height:18px}.pi .before\\:h-12:before{content:var(--tw-content);height:12px}.pi .before\\:h-14:before{content:var(--tw-content);height:14px}.pi .before\\:w-full:before{content:var(--tw-content);width:100%}.pi .before\\:w-28:before{content:var(--tw-content);width:28px}.pi .before\\:w-22:before{content:var(--tw-content);width:22px}.pi .before\\:w-18:before{content:var(--tw-content);width:18px}.pi .before\\:w-12:before{content:var(--tw-content);width:12px}.pi .before\\:w-14:before{content:var(--tw-content);width:14px}.pi .before\\:-translate-y-1\\/2:before{--tw-translate-y:-50%}.pi .before\\:-translate-y-1\\/2:before,.pi .before\\:translate-x-2:before{content:var(--tw-content);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.pi .before\\:translate-x-2:before{--tw-translate-x:2px}.pi .before\\:scale-10:before{--tw-scale-x:.1;--tw-scale-y:.1;content:var(--tw-content);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.pi .before\\:rounded-full:before{border-radius:9999px;content:var(--tw-content)}.pi .before\\:rounded-3xl:before{border-radius:24px;content:var(--tw-content)}.pi .before\\:border:before{border-width:1px;content:var(--tw-content)}.pi .before\\:bg-divider:before{background-color:rgb(var(--be-foreground-base)/var(--be-divider-opacity));content:var(--tw-content)}.pi .before\\:bg-primary:before{--tw-bg-opacity:1;background-color:rgb(var(--be-primary)/var(--tw-bg-opacity));content:var(--tw-content)}.pi .before\\:bg-white:before{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));content:var(--tw-content)}.pi .before\\:opacity-0:before{content:var(--tw-content);opacity:0}.pi .before\\:transition:before{content:var(--tw-content);transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.pi .before\\:transition-transform:before{content:var(--tw-content);transition-duration:.15s;transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1)}.pi .before\\:duration-200:before{content:var(--tw-content);transition-duration:.2s}.pi .before\\:content-\\[\\\\\\\\00a0\\]:before{--tw-content:\\\\00a0;content:var(--tw-content)}.pi .after\\:pointer-events-none:after{content:var(--tw-content);pointer-events:none}.pi .after\\:absolute:after{content:var(--tw-content);position:absolute}.pi .after\\:inset-0:after{bottom:0;content:var(--tw-content);left:0;right:0;top:0}.pi .first\\:capitalize:first-child{text-transform:capitalize}.pi .checked\\:border-primary:checked{--tw-border-opacity:1;border-color:rgb(var(--be-primary)/var(--tw-border-opacity))}.pi .checked\\:border-danger:checked{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity))}.pi .checked\\:bg-primary:checked{--tw-bg-opacity:1;background-color:rgb(var(--be-primary)/var(--tw-bg-opacity))}.pi .checked\\:bg-danger:checked{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity))}.pi .checked\\:before\\:translate-x-36:checked:before{--tw-translate-x:36px}.pi .checked\\:before\\:translate-x-30:checked:before,.pi .checked\\:before\\:translate-x-36:checked:before{content:var(--tw-content);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.pi .checked\\:before\\:translate-x-30:checked:before{--tw-translate-x:30px}.pi .checked\\:before\\:translate-x-24:checked:before{--tw-translate-x:24px}.pi .checked\\:before\\:translate-x-16:checked:before,.pi .checked\\:before\\:translate-x-24:checked:before{content:var(--tw-content);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.pi .checked\\:before\\:translate-x-16:checked:before{--tw-translate-x:16px}.pi .checked\\:before\\:translate-x-20:checked:before{--tw-translate-x:20px}.pi .checked\\:before\\:scale-\\[\\.65\\]:checked:before,.pi .checked\\:before\\:translate-x-20:checked:before{content:var(--tw-content);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.pi .checked\\:before\\:scale-\\[\\.65\\]:checked:before{--tw-scale-x:.65;--tw-scale-y:.65}.pi .checked\\:before\\:border-white:checked:before{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity));content:var(--tw-content)}.pi .checked\\:before\\:opacity-100:checked:before{content:var(--tw-content);opacity:1}.pi .focus-within\\:border-primary\\/60:focus-within{border-color:rgb(var(--be-primary)/.6)}.pi .focus-within\\:ring:focus-within{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.pi .focus-within\\:ring-primary\\/focus:focus-within{--tw-ring-color:rgb(var(--be-primary)/var(--be-focus-opacity))}.pi .focus-within\\:ring-primary-light:focus-within{--tw-ring-opacity:1;--tw-ring-color:rgb(var(--be-primary-light)/var(--tw-ring-opacity))}.pi .hover\\:scale-105:hover{--tw-scale-x:1.05;--tw-scale-y:1.05}.pi .hover\\:scale-105:hover,.pi .hover\\:scale-110:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.pi .hover\\:scale-110:hover{--tw-scale-x:1.1;--tw-scale-y:1.1}.pi .hover\\:cursor-move:hover{cursor:move}.pi .hover\\:border-primary:hover{--tw-border-opacity:1;border-color:rgb(var(--be-primary)/var(--tw-border-opacity))}.pi .hover\\:border-danger:hover{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity))}.pi .hover\\:border-primary-dark:hover{--tw-border-opacity:1;border-color:rgb(var(--be-primary-dark)/var(--tw-border-opacity))}.pi .hover\\:border-danger\\/90:hover{border-color:#ef4444e6}.pi .hover\\:border-chip\\/90:hover{border-color:rgb(var(--be-background-chip)/.9)}.pi .hover\\:bg-hover:hover{background-color:rgb(var(--be-foreground-base)/var(--be-hover-opacity))}.pi .hover\\:bg-primary\\/10:hover{background-color:rgb(var(--be-primary)/.1)}.pi .hover\\:bg-white\\/hover:hover{background-color:rgb(255 255 255/var(--be-hover-opacity))}.pi .hover\\:bg-primary\\/hover:hover{background-color:rgb(var(--be-primary)/var(--be-hover-opacity))}.pi .hover\\:bg-danger\\/4:hover{background-color:#ef44440a}.pi .hover\\:bg-primary\\/4:hover{background-color:rgb(var(--be-primary)/4%)}.pi .hover\\:bg-primary-dark:hover{--tw-bg-opacity:1;background-color:rgb(var(--be-primary-dark)/var(--tw-bg-opacity))}.pi .hover\\:bg-danger\\/90:hover{background-color:#ef4444e6}.pi .hover\\:bg-chip\\/90:hover{background-color:rgb(var(--be-background-chip)/.9)}.pi .hover\\:bg-paper\\/90:hover{background-color:rgb(var(--be-paper)/.9)}.pi .hover\\:bg-primary\\/focus:hover{background-color:rgb(var(--be-primary)/var(--be-focus-opacity))}.pi .hover\\:bg-fg-base\\/15:hover{background-color:rgb(var(--be-foreground-base)/15%)}.pi .hover\\:text-primary-dark:hover{--tw-text-opacity:1;color:rgb(var(--be-primary-dark)/var(--tw-text-opacity))}.pi .hover\\:text-main:hover{color:rgb(var(--be-foreground-base)/var(--be-text-main-opacity))}.pi .hover\\:text-fg-base:hover{--tw-text-opacity:1;color:rgb(var(--be-foreground-base)/var(--tw-text-opacity))}.pi .hover\\:underline:hover{text-decoration-line:underline}.pi .hover\\:opacity-100:hover{opacity:1}.pi .hover\\:shadow-md:hover{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.pi .before\\:hover\\:bg-primary-dark:hover:before{--tw-bg-opacity:1;background-color:rgb(var(--be-primary-dark)/var(--tw-bg-opacity));content:var(--tw-content)}.pi .hover\\:after\\:bg-black\\/5:hover:after{background-color:#0000000d;content:var(--tw-content)}.pi .checked\\:hover\\:border-primary-dark:hover:checked{--tw-border-opacity:1;border-color:rgb(var(--be-primary-dark)/var(--tw-border-opacity))}.pi .focus\\:border-danger\\/60:focus{border-color:#ef444499}.pi .focus\\:border-primary\\/60:focus{border-color:rgb(var(--be-primary)/.6)}.pi .focus\\:bg-primary:focus{--tw-bg-opacity:1;background-color:rgb(var(--be-primary)/var(--tw-bg-opacity))}.pi .focus\\:text-on-primary:focus{--tw-text-opacity:1;color:rgb(var(--be-on-primary)/var(--tw-text-opacity))}.pi .focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.pi .focus\\:ring:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.pi .focus\\:ring-2:focus,.pi .focus\\:ring:focus{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.pi .focus\\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.pi .focus\\:ring-danger\\/focus:focus{--tw-ring-color:rgb(239 68 68/var(--be-focus-opacity))}.pi .focus\\:ring-primary\\/focus:focus{--tw-ring-color:rgb(var(--be-primary)/var(--be-focus-opacity))}.pi .focus\\:ring-offset-2:focus{--tw-ring-offset-width:2px}.pi .focus\\:after\\:bg-black\\/10:focus:after{background-color:#0000001a;content:var(--tw-content)}.pi .focus-visible\\:bg-primary\\/focus:focus-visible{background-color:rgb(var(--be-primary)/var(--be-focus-opacity))}.pi .focus-visible\\:bg-focus:focus-visible{background-color:rgb(var(--be-foreground-base)/var(--be-focus-opacity))}.pi .focus-visible\\:outline:focus-visible{outline-style:solid;outline-width:2px}.pi .focus-visible\\:outline-offset-2:focus-visible{outline-offset:2px}.pi .focus-visible\\:outline:focus-visible{outline-color:rgb(var(--be-primary-lighter)/1)}.pi .focus-visible\\:outline-primary-light:focus-visible{outline-color:rgb(var(--be-primary-light)/1)}.pi .focus-visible\\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.pi .focus-visible\\:ring:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.pi .disabled\\:pointer-events-none:disabled{pointer-events:none}.pi .disabled\\:cursor-default:disabled{cursor:default}.pi .disabled\\:border-disabled-bg:disabled{border-color:rgb(var(--be-foreground-base)/var(--be-disabled-bg-opacity))}.pi .disabled\\:border-transparent:disabled{border-color:transparent}.pi .disabled\\:border-disabled-fg:disabled{border-color:rgb(var(--be-foreground-base)/var(--be-disabled-fg-opacity))}.pi .disabled\\:border-r-transparent:disabled{border-right-color:transparent}.pi .disabled\\:bg-transparent:disabled{background-color:transparent}.pi .disabled\\:bg-disabled:disabled{background-color:rgb(var(--be-foreground-base)/var(--be-disabled-bg-opacity))}.pi .disabled\\:text-disabled:disabled{color:rgb(var(--be-foreground-base)/var(--be-disabled-fg-opacity))}.pi .disabled\\:shadow-none:disabled{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.pi .disabled\\:before\\:bg-disabled-fg:disabled:before{background-color:rgb(var(--be-foreground-base)/var(--be-disabled-fg-opacity));content:var(--tw-content)}.pi .dark .dark\\:bg-alt{--tw-bg-opacity:1;background-color:rgb(var(--be-background-alt)/var(--tw-bg-opacity))}.pi .dark .dark\\:bg-none{background-image:none}.pi .dark .dark\\:text-white\\/50{color:#ffffff80}.pi .dark .dark\\:opacity-5{opacity:.05}.pi .dark .dark\\:opacity-80{opacity:.8}.pi .dark .dark\\:checked\\:border-primary-dark:checked{--tw-border-opacity:1;border-color:rgb(var(--be-primary-dark)/var(--tw-border-opacity))}.pi .dark .dark\\:checked\\:bg-primary-dark:checked{--tw-bg-opacity:1;background-color:rgb(var(--be-primary-dark)/var(--tw-bg-opacity))}@media (min-width:640px){.pi .sm\\:justify-start{justify-content:flex-start}.pi .sm\\:text-sm{font-size:14px;line-height:20px}}@media (min-width:768px){.pi .md\\:invisible{visibility:hidden}.pi .md\\:my-24{margin-bottom:24px;margin-top:24px}.pi .md\\:mx-40{margin-left:40px;margin-right:40px}.pi .md\\:my-64{margin-bottom:64px;margin-top:64px}.pi .md\\:my-100{margin-bottom:6.25rem;margin-top:6.25rem}.pi .md\\:mr-0{margin-right:0}.pi .md\\:mb-0{margin-bottom:0}.pi .md\\:mr-10{margin-right:10px}.pi .md\\:mb-40{margin-bottom:40px}.pi .md\\:mb-24{margin-bottom:24px}.pi .md\\:mt-60{margin-top:60px}.pi .md\\:mb-70{margin-bottom:70px}.pi .md\\:mt-0{margin-top:0}.pi .md\\:mr-24{margin-right:24px}.pi .md\\:mr-80{margin-right:80px}.pi .md\\:block{display:block}.pi .md\\:flex{display:flex}.pi .md\\:h-0{height:0}.pi .md\\:w-min{width:-moz-min-content;width:min-content}.pi .md\\:w-320{width:320px}.pi .md\\:w-400{width:25rem}.pi .md\\:min-w-440{min-width:27.5rem}.pi .md\\:max-w-950{max-width:59.375rem}.pi .md\\:max-w-350{max-width:21.875rem}.pi .md\\:flex-row{flex-direction:row}.pi .md\\:items-start{align-items:flex-start}.pi .md\\:gap-12{gap:12px}.pi .md\\:gap-24{gap:24px}.pi .md\\:gap-80{gap:80px}.pi .md\\:gap-112{gap:112px}.pi .md\\:overflow-hidden{overflow:hidden}.pi .md\\:p-24{padding:24px}.pi .md\\:px-24{padding-left:24px;padding-right:24px}.pi .md\\:px-30{padding-left:30px;padding-right:30px}.pi .md\\:px-0{padding-left:0;padding-right:0}.pi .md\\:px-20{padding-left:20px;padding-right:20px}.pi .md\\:py-80{padding-bottom:80px;padding-top:80px}.pi .md\\:px-176{padding-left:176px;padding-right:176px}.pi .md\\:px-10vw{padding-left:10vw;padding-right:10vw}.pi .md\\:pt-128{padding-top:128px}.pi .md\\:pl-20{padding-left:20px}.pi .md\\:pb-0{padding-bottom:0}.pi .md\\:pb-54{padding-bottom:3.375rem}.pi .md\\:text-left{text-align:left}.pi .md\\:text-3xl{font-size:30px;line-height:36px}.pi .md\\:text-4xl{font-size:36px;line-height:40px}.pi .md\\:text-lg{font-size:18px;line-height:28px}.pi .md\\:text-base{font-size:16px;line-height:24px}.pi .md\\:font-medium{font-weight:500}.pi .md\\:font-normal{font-weight:400}.pi .md\\:shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}}@media (min-width:1024px){.pi .lg\\:min-w-500{min-width:31.25rem}.pi .lg\\:flex-row{flex-direction:row}.pi .lg\\:items-center{align-items:center}.pi .lg\\:px-96{padding-left:96px;padding-right:96px}.pi .lg\\:py-96{padding-bottom:96px;padding-top:96px}.pi .lg\\:pb-0{padding-bottom:0}}@media (min-width:1280px){.pi .xl\\:w-1\\/2{width:50%}.pi .xl\\:pt-96{padding-top:96px}}.pi .\\[\\&\\>\\.tree-label\\]\\:focus-visible\\:ring:focus-visible>.tree-label{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.pi .\\[\\&\\>\\.tree-label\\]\\:focus-visible\\:ring-2:focus-visible>.tree-label{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.pi .\\[\\&\\>\\.tree-label\\]\\:focus-visible\\:ring-inset:focus-visible>.tree-label{--tw-ring-inset:inset}\n';let Ff=(t=21)=>crypto.getRandomValues(new Uint8Array(t)).reduce((t,e)=>t+((e&=63)<36?e.toString(36):e<62?(e-26).toString(36).toUpperCase():e>62?"-":"_"),"");class hy{constructor(t,e){Ce(this,"timerId"),Ce(this,"createdAt",0),this.callback=t,this.remaining=e,this.resume()}pause(){clearTimeout(this.timerId),this.remaining-=Date.now()-this.createdAt}resume(){this.createdAt=Date.now(),this.timerId&&clearTimeout(this.timerId),this.timerId=setTimeout(this.callback,this.remaining)}clear(){clearTimeout(this.timerId)}}const fy=1;function dy(t){return"danger"===t?8e3:3e3}const zf=_f()(Ef((t,e)=>({toasts:[],add:(i,r)=>{var n;const o=e().toasts.length+1-1;o>0&&t(t=>{t.toasts.splice(0,o)});const a=(null==r?void 0:r.id)||Ff(6),s=(null==r?void 0:r.type)||"positive",l=null!=(n=null==r?void 0:r.duration)?n:dy(s),c={timer:l>0?new hy(()=>e().remove(a),l):null,message:i,...r,id:a,type:s,position:(null==r?void 0:r.position)||"bottom-center",duration:l},h=e().toasts.findIndex(t=>t.id===c.id);t(h>-1?t=>{t.toasts[h]=c}:t=>{t.toasts.push(c)})},remove:i=>{const r=e().toasts.filter(t=>{var e;return i!==t.id||(null==(e=t.timer)||e.clear(),!1)});t(t=>{t.toasts=r})}})));function $i(){return zf.getState()}function tn(t,e){$i().add(t,e)}tn.danger=(t,e)=>{$i().add(t,{...e,type:"danger"})},tn.positive=(t,e)=>{$i().add(t,{...e,type:"positive"})};var jf,Lc=sm;jf=Lc.createRoot,Lc.hydrateRoot;const Bf=sr({transformPagePoint:t=>t,isStatic:!1,reducedMotion:"never"}),To=sr({});function py(){return De(To).visualElement}const rn=sr(null),Mr=typeof document<"u",Jn=Mr?pi:xe,il=sr({strict:!1});function gy(t,e,i,r){const n=py(),o=De(il),a=De(rn),s=De(Bf).reducedMotion,l=de(void 0);r=r||o.renderer,!l.current&&r&&(l.current=r(t,{visualState:e,parent:n,props:i,presenceId:a?a.id:void 0,blockInitialAnimation:!!a&&!1===a.initial,reducedMotionConfig:s}));const c=l.current;return Jn(()=>{c&&c.syncRender()}),xe(()=>{c&&c.animationState&&c.animationState.animateChanges()}),Jn(()=>()=>c&&c.notifyUnmount(),[]),c}function Nf(t){return"object"==typeof t&&Object.prototype.hasOwnProperty.call(t,"current")}function my(t,e,i){return Ie(r=>{r&&t.mount&&t.mount(r),e&&(r?e.mount(r):e.unmount()),i&&("function"==typeof i?i(r):Nf(i)&&(i.current=r))},[e])}function Hi(t){return"string"==typeof t||Array.isArray(t)}function ko(t){return"object"==typeof t&&"function"==typeof t.start}const vy=["initial","animate","exit","whileHover","whileDrag","whileTap","whileFocus","whileInView"];function Eo(t){return ko(t.animate)||vy.some(e=>Hi(t[e]))}function Vf(t){return Boolean(Eo(t)||t.variants)}function by(t,e){if(Eo(t)){const{initial:e,animate:i}=t;return{initial:!1===e||Hi(e)?e:void 0,animate:Hi(i)?i:void 0}}return!1!==t.inherit?e:{}}function yy(t){const{initial:e,animate:i}=by(t,De(To));return Je(()=>({initial:e,animate:i}),[Fc(e),Fc(i)])}function Fc(t){return Array.isArray(t)?t.join(" "):t}const Et=t=>({isEnabled:e=>t.some(t=>!!e[t])}),Ui={measureLayout:Et(["layout","layoutId","drag"]),animation:Et(["animate","exit","variants","whileHover","whileTap","whileFocus","whileDrag","whileInView"]),exit:Et(["exit"]),drag:Et(["drag","dragControls"]),focus:Et(["whileFocus"]),hover:Et(["whileHover","onHoverStart","onHoverEnd"]),tap:Et(["whileTap","onTap","onTapStart","onTapCancel"]),pan:Et(["onPan","onPanStart","onPanSessionStart","onPanEnd"]),inView:Et(["whileInView","onViewportEnter","onViewportLeave"])};function Ys(t){for(const e in t)"projectionNodeConstructor"===e?Ui.projectionNodeConstructor=t[e]:Ui[e].Component=t[e]}function nl(t){const e=de(null);return null===e.current&&(e.current=t()),e.current}const wy={hasAnimatedSinceResize:!0,hasEverUpdated:!1};let xy=1;function _y(){return nl(()=>{if(wy.hasEverUpdated)return xy++})}const $f=sr({});class Sy extends ae.Component{getSnapshotBeforeUpdate(){const{visualElement:t,props:e}=this.props;return t&&t.setProps(e),null}componentDidUpdate(){}render(){return this.props.children}}const Cy=sr({}),Ty=Symbol.for("motionComponentSymbol");function ky({preloadedFeatures:t,createVisualElement:e,projectionNodeConstructor:i,useRender:r,useVisualState:n,Component:o}){t&&Ys(t);const a=et(function(a,s){const l={...De(Bf),...a,layoutId:Ey(a)},{isStatic:c}=l;let h=null;const u=yy(a),d=c?void 0:_y(),p=n(a,c);if(!c&&Mr){u.visualElement=gy(o,p,l,e);const r=De(il).strict,n=De(Cy);u.visualElement&&(h=u.visualElement.loadFeatures(l,r,t,d,i||Ui.projectionNodeConstructor,n))}return ie(Sy,{visualElement:u.visualElement,props:l,children:[h,x(To.Provider,{value:u,children:r(o,a,d,my(p,u.visualElement,s),p,c,u.visualElement)})]})});return a[Ty]=o,a}function Ey({layoutId:t}){const e=De($f).id;return e&&void 0!==t?e+"-"+t:t}function Oy(t){function e(e,i={}){return ky(t(e,i))}if(typeof Proxy>"u")return e;const i=new Map;return new Proxy(e,{get:(t,r)=>(i.has(r)||i.set(r,e(r)),i.get(r))})}const Py=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","svg","switch","symbol","text","tspan","use","view"];function ol(t){return"string"==typeof t&&!t.includes("-")&&!!(Py.indexOf(t)>-1||/[A-Z]/.test(t))}const My={},Qn=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],nn=new Set(Qn);function Hf(t,{layout:e,layoutId:i}){return nn.has(t)||t.startsWith("origin")||(e||void 0!==i)&&(!!My[t]||"opacity"===t)}const Lt=t=>!(null==t||!t.getVelocity),Ay={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},Dy=(t,e)=>Qn.indexOf(t)-Qn.indexOf(e);function Iy({transform:t,transformKeys:e},{enableHardwareAcceleration:i=!0,allowTransformNone:r=!0},n,o){let a="";e.sort(Dy);for(const i of e)a+=`${Ay[i]||i}(${t[i]}) `;return i&&!t.z&&(a+="translateZ(0)"),a=a.trim(),o?a=o(t,n?"":a):r&&n&&(a="none"),a}function Uf(t){return t.startsWith("--")}const Ry=(t,e)=>e&&"number"==typeof t?e.transform(t):t,Wf=(t,e)=>i=>Math.max(Math.min(i,e),t),Ei=t=>t%1?Number(t.toFixed(5)):t,Wi=/(-)?([\d]*\.?[\d])+/g,Xs=/(#[0-9a-f]{6}|#[0-9a-f]{3}|#(?:[0-9a-f]{2}){2,4}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))/gi,Ly=/^(#[0-9a-f]{3}|#(?:[0-9a-f]{2}){2,4}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))$/i;function on(t){return"string"==typeof t}const Ar={test:t=>"number"==typeof t,parse:parseFloat,transform:t=>t},Oi=Object.assign(Object.assign({},Ar),{transform:Wf(0,1)}),_n=Object.assign(Object.assign({},Ar),{default:1}),sn=t=>({test:e=>on(e)&&e.endsWith(t)&&1===e.split(" ").length,parse:parseFloat,transform:e=>`${e}${t}`}),Vt=sn("deg"),ri=sn("%"),be=sn("px"),Fy=sn("vh"),zy=sn("vw"),zc=Object.assign(Object.assign({},ri),{parse:t=>ri.parse(t)/100,transform:t=>ri.transform(100*t)}),sl=(t,e)=>i=>Boolean(on(i)&&Ly.test(i)&&i.startsWith(t)||e&&Object.prototype.hasOwnProperty.call(i,e)),Yf=(t,e,i)=>r=>{if(!on(r))return r;const[n,o,a,s]=r.match(Wi);return{[t]:parseFloat(n),[e]:parseFloat(o),[i]:parseFloat(a),alpha:void 0!==s?parseFloat(s):1}},xr={test:sl("hsl","hue"),parse:Yf("hue","saturation","lightness"),transform:({hue:t,saturation:e,lightness:i,alpha:r=1})=>"hsla("+Math.round(t)+", "+ri.transform(Ei(e))+", "+ri.transform(Ei(i))+", "+Ei(Oi.transform(r))+")"},jy=Wf(0,255),as=Object.assign(Object.assign({},Ar),{transform:t=>Math.round(jy(t))}),Wt={test:sl("rgb","red"),parse:Yf("red","green","blue"),transform:({red:t,green:e,blue:i,alpha:r=1})=>"rgba("+as.transform(t)+", "+as.transform(e)+", "+as.transform(i)+", "+Ei(Oi.transform(r))+")"};function By(t){let e="",i="",r="",n="";return t.length>5?(e=t.substr(1,2),i=t.substr(3,2),r=t.substr(5,2),n=t.substr(7,2)):(e=t.substr(1,1),i=t.substr(2,1),r=t.substr(3,1),n=t.substr(4,1),e+=e,i+=i,r+=r,n+=n),{red:parseInt(e,16),green:parseInt(i,16),blue:parseInt(r,16),alpha:n?parseInt(n,16)/255:1}}const Gs={test:sl("#"),parse:By,transform:Wt.transform},rt={test:t=>Wt.test(t)||Gs.test(t)||xr.test(t),parse:t=>Wt.test(t)?Wt.parse(t):xr.test(t)?xr.parse(t):Gs.parse(t),transform:t=>on(t)?t:t.hasOwnProperty("red")?Wt.transform(t):xr.transform(t)},Xf="${c}",Gf="${n}";function Ny(t){var e,i,r,n;return isNaN(t)&&on(t)&&(null!==(i=null===(e=t.match(Wi))||void 0===e?void 0:e.length)&&void 0!==i?i:0)+(null!==(n=null===(r=t.match(Xs))||void 0===r?void 0:r.length)&&void 0!==n?n:0)>0}function qf(t){"number"==typeof t&&(t=`${t}`);const e=[];let i=0;const r=t.match(Xs);r&&(i=r.length,t=t.replace(Xs,Xf),e.push(...r.map(rt.parse)));const n=t.match(Wi);return n&&(t=t.replace(Wi,Gf),e.push(...n.map(Ar.parse))),{values:e,numColors:i,tokenised:t}}function Kf(t){return qf(t).values}function Zf(t){const{values:e,numColors:i,tokenised:r}=qf(t),n=e.length;return t=>{let e=r;for(let r=0;r<n;r++)e=e.replace(r<i?Xf:Gf,r<i?rt.transform(t[r]):Ei(t[r]));return e}}const Vy=t=>"number"==typeof t?0:t;function $y(t){const e=Kf(t);return Zf(t)(e.map(Vy))}const Dr={test:Ny,parse:Kf,createTransformer:Zf,getAnimatableNone:$y},Hy=new Set(["brightness","contrast","saturate","opacity"]);function Uy(t){let[e,i]=t.slice(0,-1).split("(");if("drop-shadow"===e)return t;const[r]=i.match(Wi)||[];if(!r)return t;const n=i.replace(r,"");let o=Hy.has(e)?1:0;return r!==i&&(o*=100),e+"("+o+n+")"}const Wy=/([a-z-]*)\(.*?\)/g,qs=Object.assign(Object.assign({},Dr),{getAnimatableNone:t=>{const e=t.match(Wy);return e?e.map(Uy).join(" "):t}}),jc={...Ar,transform:Math.round},Jf={borderWidth:be,borderTopWidth:be,borderRightWidth:be,borderBottomWidth:be,borderLeftWidth:be,borderRadius:be,radius:be,borderTopLeftRadius:be,borderTopRightRadius:be,borderBottomRightRadius:be,borderBottomLeftRadius:be,width:be,maxWidth:be,height:be,maxHeight:be,size:be,top:be,right:be,bottom:be,left:be,padding:be,paddingTop:be,paddingRight:be,paddingBottom:be,paddingLeft:be,margin:be,marginTop:be,marginRight:be,marginBottom:be,marginLeft:be,rotate:Vt,rotateX:Vt,rotateY:Vt,rotateZ:Vt,scale:_n,scaleX:_n,scaleY:_n,scaleZ:_n,skew:Vt,skewX:Vt,skewY:Vt,distance:be,translateX:be,translateY:be,translateZ:be,x:be,y:be,z:be,perspective:be,transformPerspective:be,opacity:Oi,originX:zc,originY:zc,originZ:be,zIndex:jc,fillOpacity:Oi,strokeOpacity:Oi,numOctaves:jc};function al(t,e,i,r){const{style:n,vars:o,transform:a,transformKeys:s,transformOrigin:l}=t;s.length=0;let c=!1,h=!1,u=!0;for(const t in e){const i=e[t];if(Uf(t)){o[t]=i;continue}const r=Jf[t],d=Ry(i,r);if(nn.has(t)){if(c=!0,a[t]=d,s.push(t),!u)continue;i!==(r.default||0)&&(u=!1)}else t.startsWith("origin")?(h=!0,l[t]=d):n[t]=d}if(e.transform||(c||r?n.transform=Iy(t,i,u,r):n.transform&&(n.transform="none")),h){const{originX:t="50%",originY:e="50%",originZ:i=0}=l;n.transformOrigin=`${t} ${e} ${i}`}}const ll=()=>({style:{},transform:{},transformKeys:[],transformOrigin:{},vars:{}});function Qf(t,e,i){for(const r in e)!Lt(e[r])&&!Hf(r,i)&&(t[r]=e[r])}function Yy({transformTemplate:t},e,i){return Je(()=>{const r=ll();return al(r,e,{enableHardwareAcceleration:!i},t),Object.assign({},r.vars,r.style)},[e])}function Xy(t,e,i){const r={};return Qf(r,t.style||{},t),Object.assign(r,Yy(t,e,i)),t.transformValues?t.transformValues(r):r}function Gy(t,e,i){const r={},n=Xy(t,e,i);return t.drag&&!1!==t.dragListener&&(r.draggable=!1,n.userSelect=n.WebkitUserSelect=n.WebkitTouchCallout="none",n.touchAction=!0===t.drag?"none":"pan-"+("x"===t.drag?"y":"x")),r.style=n,r}const qy=["animate","exit","variants","whileHover","whileTap","whileFocus","whileDrag","whileInView"],Ky=["whileTap","onTap","onTapStart","onTapCancel"],Zy=["onPan","onPanStart","onPanSessionStart","onPanEnd"],Jy=["whileInView","onViewportEnter","onViewportLeave","viewport"],Qy=new Set(["initial","style","values","variants","transition","transformTemplate","transformValues","custom","inherit","layout","layoutId","layoutDependency","onLayoutAnimationStart","onLayoutAnimationComplete","onLayoutMeasure","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","drag","dragControls","dragListener","dragConstraints","dragDirectionLock","dragSnapToOrigin","_dragX","_dragY","dragElastic","dragMomentum","dragPropagation","dragTransition","onHoverStart","onHoverEnd","layoutScroll",...Jy,...Ky,...qy,...Zy]);function eo(t){return Qy.has(t)}let ed=t=>!eo(t);function ew(t){!t||(ed=e=>e.startsWith("on")?!eo(e):t(e))}try{ew(require("@emotion/is-prop-valid").default)}catch{}function tw(t,e,i){const r={};for(const n in t)(ed(n)||!0===i&&eo(n)||!e&&!eo(n)||t.draggable&&n.startsWith("onDrag"))&&(r[n]=t[n]);return r}function Bc(t,e,i){return"string"==typeof t?t:be.transform(e+i*t)}function rw(t,e,i){return`${Bc(e,t.x,t.width)} ${Bc(i,t.y,t.height)}`}const iw={offset:"stroke-dashoffset",array:"stroke-dasharray"},nw={offset:"strokeDashoffset",array:"strokeDasharray"};function ow(t,e,i=1,r=0,n=!0){t.pathLength=1;const o=n?iw:nw;t[o.offset]=be.transform(-r);const a=be.transform(e),s=be.transform(i);t[o.array]=`${a} ${s}`}function cl(t,{attrX:e,attrY:i,originX:r,originY:n,pathLength:o,pathSpacing:a=1,pathOffset:s=0,...l},c,h){al(t,l,c,h),t.attrs=t.style,t.style={};const{attrs:u,style:d,dimensions:p}=t;u.transform&&(p&&(d.transform=u.transform),delete u.transform),p&&(void 0!==r||void 0!==n||d.transform)&&(d.transformOrigin=rw(p,void 0!==r?r:.5,void 0!==n?n:.5)),void 0!==e&&(u.x=e),void 0!==i&&(u.y=i),void 0!==o&&ow(u,o,a,s,!1)}const td=()=>({...ll(),attrs:{}});function sw(t,e){const i=Je(()=>{const i=td();return cl(i,e,{enableHardwareAcceleration:!1},t.transformTemplate),{...i.attrs,style:{...i.style}}},[e]);if(t.style){const e={};Qf(e,t.style,t),i.style={...e,...i.style}}return i}function aw(t=!1){return(e,i,r,n,{latestValues:o},a)=>{const s=(ol(e)?sw:Gy)(i,o,a),l={...tw(i,"string"==typeof e,t),...s,ref:n};return r&&(l["data-projection-id"]=r),Ch(e,l)}}const rd=t=>t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();function id(t,{style:e,vars:i},r,n){Object.assign(t.style,e,n&&n.getProjectionStyles(r));for(const e in i)t.style.setProperty(e,i[e])}const nd=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength"]);function od(t,e,i,r){id(t,e,void 0,r);for(const i in e.attrs)t.setAttribute(nd.has(i)?i:rd(i),e.attrs[i])}function ul(t){const{style:e}=t,i={};for(const r in e)(Lt(e[r])||Hf(r,t))&&(i[r]=e[r]);return i}function sd(t){const e=ul(t);for(const i in t)Lt(t[i])&&(e["x"===i||"y"===i?"attr"+i.toUpperCase():i]=t[i]);return e}function ad(t,e,i,r={},n={}){return"function"==typeof e&&(e=e(void 0!==i?i:t.custom,r,n)),"string"==typeof e&&(e=t.variants&&t.variants[e]),"function"==typeof e&&(e=e(void 0!==i?i:t.custom,r,n)),e}const Yi=t=>Array.isArray(t),lw=t=>Boolean(t&&"object"==typeof t&&t.mix&&t.toValue),ld=t=>Yi(t)?t[t.length-1]||0:t;function cw(t){const e=Lt(t)?t.get():t;return lw(e)?e.toValue():e}function uw({scrapeMotionValuesFromProps:t,createRenderState:e,onMount:i},r,n,o){const a={latestValues:hw(r,n,o,t),renderState:e()};return i&&(a.mount=t=>i(r,t,a)),a}const cd=t=>(e,i)=>{const r=De(To),n=De(rn),o=()=>uw(t,e,r,n);return i?o():nl(o)};function hw(t,e,i,r){const n={},o=r(t);for(const t in o)n[t]=cw(o[t]);let{initial:a,animate:s}=t;const l=Eo(t),c=Vf(t);e&&c&&!l&&!1!==t.inherit&&(void 0===a&&(a=e.initial),void 0===s&&(s=e.animate));let h=!!i&&!1===i.initial;h=h||!1===a;const u=h?s:a;return u&&"boolean"!=typeof u&&!ko(u)&&(Array.isArray(u)?u:[u]).forEach(e=>{const i=ad(t,e);if(!i)return;const{transitionEnd:r,transition:o,...a}=i;for(const t in a){let e=a[t];Array.isArray(e)&&(e=e[h?e.length-1:0]),null!==e&&(n[t]=e)}for(const t in r)n[t]=r[t]}),n}const fw={useVisualState:cd({scrapeMotionValuesFromProps:sd,createRenderState:td,onMount:(t,e,{renderState:i,latestValues:r})=>{try{i.dimensions="function"==typeof e.getBBox?e.getBBox():e.getBoundingClientRect()}catch{i.dimensions={x:0,y:0,width:0,height:0}}cl(i,r,{enableHardwareAcceleration:!1},t.transformTemplate),od(e,i)}})},dw={useVisualState:cd({scrapeMotionValuesFromProps:ul,createRenderState:ll})};function pw(t,{forwardMotionProps:e=!1},i,r,n){return{...ol(t)?fw:dw,preloadedFeatures:i,useRender:aw(e),createVisualElement:r,projectionNodeConstructor:n,Component:t}}var Le;function ud(t,e,i,r={passive:!0}){return t.addEventListener(e,i,r),()=>t.removeEventListener(e,i)}function Ks(t,e,i,r){xe(()=>{const n=t.current;if(i&&n)return ud(n,e,i,r)},[t,e,i,r])}function gw({whileFocus:t,visualElement:e}){const{animationState:i}=e;Ks(e,"focus",t?()=>{i&&i.setActive(Le.Focus,!0)}:void 0),Ks(e,"blur",t?()=>{i&&i.setActive(Le.Focus,!1)}:void 0)}function mw(t){return typeof PointerEvent<"u"&&t instanceof PointerEvent?"mouse"===t.pointerType:t instanceof MouseEvent}function vw(t){return!!t.touches}function bw(t){return e=>{const i=e instanceof MouseEvent;(!i||i&&0===e.button)&&t(e)}}!function(t){t.Animate="animate",t.Hover="whileHover",t.Tap="whileTap",t.Drag="whileDrag",t.Focus="whileFocus",t.InView="whileInView",t.Exit="exit"}(Le||(Le={}));const yw={pageX:0,pageY:0};function ww(t,e="page"){const i=t.touches[0]||t.changedTouches[0]||yw;return{x:i[e+"X"],y:i[e+"Y"]}}function xw(t,e="page"){return{x:t[e+"X"],y:t[e+"Y"]}}function _w(t,e="page"){return{point:vw(t)?ww(t,e):xw(t,e)}}const hd=(t,e=!1)=>{const i=e=>t(e,_w(e));return e?bw(i):i},Sw=()=>Mr&&null===window.onpointerdown,Cw=()=>Mr&&null===window.ontouchstart,Tw=()=>Mr&&null===window.onmousedown,kw={pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointercancel:"mousecancel",pointerover:"mouseover",pointerout:"mouseout",pointerenter:"mouseenter",pointerleave:"mouseleave"},Ew={pointerdown:"touchstart",pointermove:"touchmove",pointerup:"touchend",pointercancel:"touchcancel"};function fd(t){return Sw()?t:Cw()?Ew[t]:Tw()?kw[t]:t}function Nc(t,e,i,r){return ud(t,fd(e),hd(i,"pointerdown"===e),r)}function Zs(t,e,i,r){return Ks(t,fd(e),i&&hd(i,"pointerdown"===e),r)}function dd(t){let e=null;return()=>null===e&&(e=t,()=>{e=null})}const Vc=dd("dragHorizontal"),$c=dd("dragVertical");function Ow(t){let e=!1;if("y"===t)e=$c();else if("x"===t)e=Vc();else{const t=Vc(),i=$c();t&&i?e=()=>{t(),i()}:(t&&t(),i&&i())}return e}function pd(){const t=Ow(!0);return!t||(t(),!1)}function Hc(t,e,i){return(r,n)=>{!mw(r)||pd()||(t.animationState&&t.animationState.setActive(Le.Hover,e),i&&i(r,n))}}function Pw({onHoverStart:t,onHoverEnd:e,whileHover:i,visualElement:r}){Zs(r,"pointerenter",t||i?Hc(r,!0,t):void 0,{passive:!t}),Zs(r,"pointerleave",e||i?Hc(r,!1,e):void 0,{passive:!e})}const gd=(t,e)=>!!e&&(t===e||gd(t,e.parentElement));function md(t){return xe(()=>()=>t(),[])}function vd(t,e){var i={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(i[r]=t[r]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(r=Object.getOwnPropertySymbols(t);n<r.length;n++)e.indexOf(r[n])<0&&Object.prototype.propertyIsEnumerable.call(t,r[n])&&(i[r[n]]=t[r[n]])}return i}var Mw=function(){},to=function(){};const Js=(t,e,i)=>Math.min(Math.max(i,t),e),ls=.001,Aw=.01,Uc=10,Dw=.05,Iw=1;function Rw({duration:t=800,bounce:e=.25,velocity:i=0,mass:r=1}){let n,o;Mw(t<=1e4);let a=1-e;a=Js(Dw,1,a),t=Js(Aw,10,t/1e3),a<1?(n=e=>{const r=e*a,n=r*t,o=r-i,s=Qs(e,a),l=Math.exp(-n);return ls-o/s*l},o=e=>{const r=e*a*t,o=r*i+i,s=Math.pow(a,2)*Math.pow(e,2)*t,l=Math.exp(-r),c=Qs(Math.pow(e,2),a);return(-n(e)+ls>0?-1:1)*((o-s)*l)/c}):(n=e=>Math.exp(-e*t)*((e-i)*t+1)-ls,o=e=>Math.exp(-e*t)*(t*t*(i-e)));const s=Fw(n,o,5/t);if(t*=1e3,isNaN(s))return{stiffness:100,damping:10,duration:t};{const e=Math.pow(s,2)*r;return{stiffness:e,damping:2*a*Math.sqrt(r*e),duration:t}}}const Lw=12;function Fw(t,e,i){let r=i;for(let i=1;i<Lw;i++)r-=t(r)/e(r);return r}function Qs(t,e){return t*Math.sqrt(1-e*e)}const zw=["duration","bounce"],jw=["stiffness","damping","mass"];function Wc(t,e){return e.some(e=>void 0!==t[e])}function Bw(t){let e=Object.assign({velocity:0,stiffness:100,damping:10,mass:1,isResolvedFromDuration:!1},t);if(!Wc(t,jw)&&Wc(t,zw)){const i=Rw(t);e=Object.assign(Object.assign(Object.assign({},e),i),{velocity:0,mass:1}),e.isResolvedFromDuration=!0}return e}function hl(t){var{from:e=0,to:i=1,restSpeed:r=2,restDelta:n}=t,o=vd(t,["from","to","restSpeed","restDelta"]);const a={done:!1,value:e};let{stiffness:s,damping:l,mass:c,velocity:h,duration:u,isResolvedFromDuration:d}=Bw(o),p=Yc,f=Yc;function g(){const t=h?-h/1e3:0,r=i-e,o=l/(2*Math.sqrt(s*c)),a=Math.sqrt(s/c)/1e3;if(void 0===n&&(n=Math.min(Math.abs(i-e)/100,.4)),o<1){const e=Qs(a,o);p=n=>{const s=Math.exp(-o*a*n);return i-s*((t+o*a*r)/e*Math.sin(e*n)+r*Math.cos(e*n))},f=i=>{const n=Math.exp(-o*a*i);return o*a*n*(Math.sin(e*i)*(t+o*a*r)/e+r*Math.cos(e*i))-n*(Math.cos(e*i)*(t+o*a*r)-e*r*Math.sin(e*i))}}else if(1===o)p=e=>i-Math.exp(-a*e)*(r+(t+a*r)*e);else{const e=a*Math.sqrt(o*o-1);p=n=>{const s=Math.exp(-o*a*n),l=Math.min(e*n,300);return i-s*((t+o*a*r)*Math.sinh(l)+e*r*Math.cosh(l))/e}}}return g(),{next:t=>{const e=p(t);if(d)a.done=t>=u;else{const o=1e3*f(t),s=Math.abs(o)<=r,l=Math.abs(i-e)<=n;a.done=s&&l}return a.value=a.done?i:e,a},flipTarget:()=>{h=-h,[e,i]=[i,e],g()}}}hl.needsInterpolation=(t,e)=>"string"==typeof t||"string"==typeof e;const Yc=t=>0,bd=(t,e,i)=>{const r=e-t;return 0===r?1:(i-t)/r},fl=(t,e,i)=>-i*t+i*e+t;function cs(t,e,i){return i<0&&(i+=1),i>1&&(i-=1),i<1/6?t+6*(e-t)*i:i<.5?e:i<2/3?t+(e-t)*(2/3-i)*6:t}function Xc({hue:t,saturation:e,lightness:i,alpha:r}){t/=360,i/=100;let n=0,o=0,a=0;if(e/=100){const r=i<.5?i*(1+e):i+e-i*e,s=2*i-r;n=cs(s,r,t+1/3),o=cs(s,r,t),a=cs(s,r,t-1/3)}else n=o=a=i;return{red:Math.round(255*n),green:Math.round(255*o),blue:Math.round(255*a),alpha:r}}const Nw=(t,e,i)=>{const r=t*t,n=e*e;return Math.sqrt(Math.max(0,i*(n-r)+r))},Vw=[Gs,Wt,xr],Gc=t=>Vw.find(e=>e.test(t)),yd=(t,e)=>{let i=Gc(t),r=Gc(e),n=i.parse(t),o=r.parse(e);i===xr&&(n=Xc(n),i=Wt),r===xr&&(o=Xc(o),r=Wt);const a=Object.assign({},n);return t=>{for(const e in a)"alpha"!==e&&(a[e]=Nw(n[e],o[e],t));return a.alpha=fl(n.alpha,o.alpha,t),i.transform(a)}},$w=t=>"number"==typeof t,Hw=(t,e)=>i=>e(t(i)),dl=(...t)=>t.reduce(Hw);function wd(t,e){return $w(t)?i=>fl(t,e,i):rt.test(t)?yd(t,e):_d(t,e)}const xd=(t,e)=>{const i=[...t],r=i.length,n=t.map((t,i)=>wd(t,e[i]));return t=>{for(let e=0;e<r;e++)i[e]=n[e](t);return i}},Uw=(t,e)=>{const i=Object.assign(Object.assign({},t),e),r={};for(const n in i)void 0!==t[n]&&void 0!==e[n]&&(r[n]=wd(t[n],e[n]));return t=>{for(const e in r)i[e]=r[e](t);return i}};function qc(t){const e=Dr.parse(t),i=e.length;let r=0,n=0,o=0;for(let t=0;t<i;t++)r||"number"==typeof e[t]?r++:void 0!==e[t].hue?o++:n++;return{parsed:e,numNumbers:r,numRGB:n,numHSL:o}}const _d=(t,e)=>{const i=Dr.createTransformer(e),r=qc(t),n=qc(e);return r.numHSL===n.numHSL&&r.numRGB===n.numRGB&&r.numNumbers>=n.numNumbers?dl(xd(r.parsed,n.parsed),i):i=>`${i>0?e:t}`},Ww=(t,e)=>i=>fl(t,e,i);function Yw(t){return"number"==typeof t?Ww:"string"==typeof t?rt.test(t)?yd:_d:Array.isArray(t)?xd:"object"==typeof t?Uw:void 0}function Xw(t,e,i){const r=[],n=i||Yw(t[0]),o=t.length-1;for(let i=0;i<o;i++){let o=n(t[i],t[i+1]);if(e){const t=Array.isArray(e)?e[i]:e;o=dl(t,o)}r.push(o)}return r}function Gw([t,e],[i]){return r=>i(bd(t,e,r))}function qw(t,e){const i=t.length,r=i-1;return n=>{let o=0,a=!1;if(n<=t[0]?a=!0:n>=t[r]&&(o=r-1,a=!0),!a){let e=1;for(;e<i&&!(t[e]>n||e===r);e++);o=e-1}const s=bd(t[o],t[o+1],n);return e[o](s)}}function Sd(t,e,{clamp:i=!0,ease:r,mixer:n}={}){const o=t.length;to(o===e.length),to(!r||!Array.isArray(r)||r.length===o-1),t[0]>t[o-1]&&(t=[].concat(t),e=[].concat(e),t.reverse(),e.reverse());const a=Xw(e,r,n),s=2===o?Gw(t,a):qw(t,a);return i?e=>s(Js(t[0],t[o-1],e)):s}const Oo=t=>e=>1-t(1-e),pl=t=>e=>e<=.5?t(2*e)/2:(2-t(2*(1-e)))/2,Kw=t=>e=>Math.pow(e,t),Cd=t=>e=>e*e*((t+1)*e-t),Zw=t=>{const e=Cd(t);return t=>(t*=2)<1?.5*e(t):.5*(2-Math.pow(2,-10*(t-1)))},Td=1.525,Jw=4/11,Qw=8/11,ex=.9,kd=t=>t,gl=Kw(2),tx=Oo(gl),Ed=pl(gl),Od=t=>1-Math.sin(Math.acos(t)),Pd=Oo(Od),rx=pl(Pd),ml=Cd(Td),ix=Oo(ml),nx=pl(ml),ox=Zw(Td),sx=4356/361,ax=35442/1805,lx=16061/1805,ro=t=>{if(1===t||0===t)return t;const e=t*t;return t<Jw?7.5625*e:t<Qw?9.075*e-9.9*t+3.4:t<ex?sx*e-ax*t+lx:10.8*t*t-20.52*t+10.72},cx=Oo(ro),ux=t=>t<.5?.5*(1-ro(1-2*t)):.5*ro(2*t-1)+.5;function hx(t,e){return t.map(()=>e||Ed).splice(0,t.length-1)}function fx(t){const e=t.length;return t.map((t,i)=>0!==i?i/(e-1):0)}function dx(t,e){return t.map(t=>t*e)}function zn({from:t=0,to:e=1,ease:i,offset:r,duration:n=300}){const o={done:!1,value:t},a=Array.isArray(e)?e:[t,e],s=dx(r&&r.length===a.length?r:fx(a),n);function l(){return Sd(s,a,{ease:Array.isArray(i)?i:hx(a,i)})}let c=l();return{next:t=>(o.value=c(t),o.done=t>=n,o),flipTarget:()=>{a.reverse(),c=l()}}}function px({velocity:t=0,from:e=0,power:i=.8,timeConstant:r=350,restDelta:n=.5,modifyTarget:o}){const a={done:!1,value:e};let s=i*t;const l=e+s,c=void 0===o?l:o(l);return c!==l&&(s=c-e),{next:t=>{const e=-s*Math.exp(-t/r);return a.done=!(e>n||e<-n),a.value=a.done?c:c+e,a},flipTarget:()=>{}}}const Kc={keyframes:zn,spring:hl,decay:px};function gx(t){if(Array.isArray(t.to))return zn;if(Kc[t.type])return Kc[t.type];const e=new Set(Object.keys(t));return e.has("ease")||e.has("duration")&&!e.has("dampingRatio")?zn:e.has("dampingRatio")||e.has("stiffness")||e.has("mass")||e.has("damping")||e.has("restSpeed")||e.has("restDelta")?hl:zn}const Md=1/60*1e3,mx=typeof performance<"u"?()=>performance.now():()=>Date.now(),Ad=typeof window<"u"?t=>window.requestAnimationFrame(t):t=>setTimeout(()=>t(mx()),Md);function vx(t){let e=[],i=[],r=0,n=!1,o=!1;const a=new WeakSet,s={schedule:(t,o=!1,s=!1)=>{const l=s&&n,c=l?e:i;return o&&a.add(t),-1===c.indexOf(t)&&(c.push(t),l&&n&&(r=e.length)),t},cancel:t=>{const e=i.indexOf(t);-1!==e&&i.splice(e,1),a.delete(t)},process:l=>{if(n)o=!0;else{if(n=!0,[e,i]=[i,e],i.length=0,r=e.length,r)for(let i=0;i<r;i++){const r=e[i];r(l),a.has(r)&&(s.schedule(r),t())}n=!1,o&&(o=!1,s.process(l))}}};return s}const bx=40;let ea=!0,Xi=!1,ta=!1;const ii={delta:0,timestamp:0},an=["read","update","preRender","render","postRender"],Po=an.reduce((t,e)=>(t[e]=vx(()=>Xi=!0),t),{}),fi=an.reduce((t,e)=>{const i=Po[e];return t[e]=(t,e=!1,r=!1)=>(Xi||wx(),i.schedule(t,e,r)),t},{}),ra=an.reduce((t,e)=>(t[e]=Po[e].cancel,t),{});an.reduce((t,e)=>(t[e]=()=>Po[e].process(ii),t),{});const yx=t=>Po[t].process(ii),Dd=t=>{Xi=!1,ii.delta=ea?Md:Math.max(Math.min(t-ii.timestamp,40),1),ii.timestamp=t,ta=!0,an.forEach(yx),ta=!1,Xi&&(ea=!1,Ad(Dd))},wx=()=>{Xi=!0,ea=!0,ta||Ad(Dd)},Id=()=>ii;function Rd(t,e,i=0){return t-e-i}function xx(t,e,i=0,r=!0){return r?Rd(e+-t,e,i):e-(t-e)+i}function _x(t,e,i,r){return r?t>=e+i:t<=-i}const Sx=t=>{const e=({delta:e})=>t(e);return{start:()=>fi.update(e,!0),stop:()=>ra.update(e)}};function Ld(t){var e,i,{from:r,autoplay:n=!0,driver:o=Sx,elapsed:a=0,repeat:s=0,repeatType:l="loop",repeatDelay:c=0,onPlay:h,onStop:u,onComplete:d,onRepeat:p,onUpdate:f}=t,g=vd(t,["from","autoplay","driver","elapsed","repeat","repeatType","repeatDelay","onPlay","onStop","onComplete","onRepeat","onUpdate"]);let m,v,b,{to:y}=g,x=0,w=g.duration,_=!1,S=!0;const C=gx(g);null!==(i=(e=C).needsInterpolation)&&void 0!==i&&i.call(e,r,y)&&(b=Sd([0,100],[r,y],{clamp:!1}),r=0,y=100);const O=C(Object.assign(Object.assign({},g),{from:r,to:y}));return n&&(null==h||h(),m=o(function(t){if(S||(t=-t),a+=t,!_){const t=O.next(Math.max(0,a));v=t.value,b&&(v=b(v)),_=S?t.done:a<=0}null==f||f(v),_&&(0===x&&(null!=w||(w=a)),x<s?_x(a,w,c,S)&&(x++,"reverse"===l?(S=x%2==0,a=xx(a,w,c,S)):(a=Rd(a,w,c),"mirror"===l&&O.flipTarget()),_=!1,p&&p()):(m.stop(),d&&d()))}),m.start()),{stop:()=>{null==u||u(),m.stop()}}}function Fd(t,e){return e?t*(1e3/e):0}function Cx({from:t=0,velocity:e=0,min:i,max:r,power:n=.8,timeConstant:o=750,bounceStiffness:a=500,bounceDamping:s=10,restDelta:l=1,modifyTarget:c,driver:h,onUpdate:u,onComplete:d,onStop:p}){let f;function g(t){return void 0!==i&&t<i||void 0!==r&&t>r}function m(t){return void 0===i?r:void 0===r||Math.abs(i-t)<Math.abs(r-t)?i:r}function v(t){null==f||f.stop(),f=Ld(Object.assign(Object.assign({},t),{driver:h,onUpdate:e=>{var i;null==u||u(e),null===(i=t.onUpdate)||void 0===i||i.call(t,e)},onComplete:d,onStop:p}))}function b(t){v(Object.assign({type:"spring",stiffness:a,damping:s,restDelta:l},t))}if(g(t))b({from:t,velocity:e,to:m(t)});else{let r=n*e+t;typeof c<"u"&&(r=c(r));const a=m(r),s=a===i?-1:1;let h,u;const d=t=>{h=u,u=t,e=Fd(t-h,Id().delta),(1===s&&t>a||-1===s&&t<a)&&b({from:t,to:a,velocity:e})};v({type:"decay",from:t,velocity:e,timeConstant:o,power:n,restDelta:l,modifyTarget:c,onUpdate:g(r)?d:void 0})}return{stop:()=>null==f?void 0:f.stop()}}const zd=(t,e)=>1-3*e+3*t,jd=(t,e)=>3*e-6*t,Bd=t=>3*t,io=(t,e,i)=>((zd(e,i)*t+jd(e,i))*t+Bd(e))*t,Nd=(t,e,i)=>3*zd(e,i)*t*t+2*jd(e,i)*t+Bd(e),Tx=1e-7,kx=10;function Ex(t,e,i,r,n){let o,a,s=0;do{a=e+(i-e)/2,o=io(a,r,n)-t,o>0?i=a:e=a}while(Math.abs(o)>Tx&&++s<10);return a}const Ox=8,Px=.001;function Mx(t,e,i,r){for(let n=0;n<8;++n){const n=Nd(e,i,r);if(0===n)return e;e-=(io(e,i,r)-t)/n}return e}const jn=11,Sn=.1;function Ax(t,e,i,r){if(t===e&&i===r)return kd;const n=new Float32Array(11);for(let e=0;e<11;++e)n[e]=io(e*Sn,t,i);return o=>0===o||1===o?o:io(function(e){let r=0,o=1;for(;10!==o&&n[o]<=e;++o)r+=Sn;--o;const a=r+(e-n[o])/(n[o+1]-n[o])*Sn,s=Nd(a,t,i);return s>=Px?Mx(e,a,t,i):0===s?a:Ex(e,r,r+Sn,t,i)}(o),e,r)}function Dx({onTap:t,onTapStart:e,onTapCancel:i,whileTap:r,visualElement:n}){const o=t||e||i||r,a=de(!1),s=de(null),l={passive:!(e||t||i||p)};function c(){s.current&&s.current(),s.current=null}function h(){return c(),a.current=!1,n.animationState&&n.animationState.setActive(Le.Tap,!1),!pd()}function u(e,r){!h()||(gd(n.getInstance(),e.target)?t&&t(e,r):i&&i(e,r))}function d(t,e){!h()||i&&i(t,e)}function p(t,i){c(),!a.current&&(a.current=!0,s.current=dl(Nc(window,"pointerup",u,l),Nc(window,"pointercancel",d,l)),n.animationState&&n.animationState.setActive(Le.Tap,!0),e&&e(t,i))}Zs(n,"pointerdown",o?p:void 0,l),md(c)}const Ix="production",Vd=typeof process>"u"||void 0===process.env?Ix:"production",Zc=new Set;function $d(t,e,i){t||Zc.has(e)||(console.warn(e),i&&console.warn(i),Zc.add(e))}const ia=new WeakMap,us=new WeakMap,Rx=t=>{const e=ia.get(t.target);e&&e(t)},Lx=t=>{t.forEach(Rx)};function Fx({root:t,...e}){const i=t||document;us.has(i)||us.set(i,{});const r=us.get(i),n=JSON.stringify(e);return r[n]||(r[n]=new IntersectionObserver(Lx,{root:t,...e})),r[n]}function zx(t,e,i){const r=Fx(e);return ia.set(t,i),r.observe(t),()=>{ia.delete(t),r.unobserve(t)}}function jx({visualElement:t,whileInView:e,onViewportEnter:i,onViewportLeave:r,viewport:n={}}){const o=de({hasEnteredView:!1,isInView:!1});let a=Boolean(e||i||r);n.once&&o.current.hasEnteredView&&(a=!1),(typeof IntersectionObserver>"u"?Vx:Nx)(a,o.current,t,n)}const Bx={some:0,all:1};function Nx(t,e,i,{root:r,margin:n,amount:o="some",once:a}){xe(()=>{if(!t)return;const s={root:null==r?void 0:r.current,rootMargin:n,threshold:"number"==typeof o?o:Bx[o]};return zx(i.getInstance(),s,t=>{const{isIntersecting:r}=t;if(e.isInView===r||(e.isInView=r,a&&!r&&e.hasEnteredView))return;r&&(e.hasEnteredView=!0),i.animationState&&i.animationState.setActive(Le.InView,r);const n=i.getProps(),o=r?n.onViewportEnter:n.onViewportLeave;o&&o(t)})},[t,r,n,o])}function Vx(t,e,i,{fallback:r=!0}){xe(()=>{!t||!r||("production"!==Vd&&$d(!1,"IntersectionObserver not available on this device. whileInView animations will trigger on mount."),requestAnimationFrame(()=>{e.hasEnteredView=!0;const{onViewportEnter:t}=i.getProps();t&&t(null),i.animationState&&i.animationState.setActive(Le.InView,!0)}))},[t])}const qr=t=>e=>(t(e),null),$x={inView:qr(jx),tap:qr(Dx),focus:qr(gw),hover:qr(Pw)};function Hx(){const t=De(rn);if(null===t)return[!0,null];const{isPresent:e,onExitComplete:i,register:r}=t,n=yt();return xe(()=>r(n),[]),!e&&i?[!1,()=>i&&i(n)]:[!0]}function Hd(t,e){if(!Array.isArray(e))return!1;const i=e.length;if(i!==t.length)return!1;for(let r=0;r<i;r++)if(e[r]!==t[r])return!1;return!0}const na=t=>1e3*t,Ux={linear:kd,easeIn:gl,easeInOut:Ed,easeOut:tx,circIn:Od,circInOut:rx,circOut:Pd,backIn:ml,backInOut:nx,backOut:ix,anticipate:ox,bounceIn:cx,bounceInOut:ux,bounceOut:ro},Jc=t=>{if(Array.isArray(t)){to(4===t.length);const[e,i,r,n]=t;return Ax(e,i,r,n)}return"string"==typeof t?Ux[t]:t},Wx=t=>Array.isArray(t)&&"number"!=typeof t[0],Qc=(t,e)=>"zIndex"!==t&&!!("number"==typeof e||Array.isArray(e)||"string"==typeof e&&Dr.test(e)&&!e.startsWith("url(")),dr=()=>({type:"spring",stiffness:500,damping:25,restSpeed:10}),Cn=t=>({type:"spring",stiffness:550,damping:0===t?2*Math.sqrt(550):30,restSpeed:10}),hs=()=>({type:"keyframes",ease:"linear",duration:.3}),Yx=t=>({type:"keyframes",duration:.8,values:t}),eu={x:dr,y:dr,z:dr,rotate:dr,rotateX:dr,rotateY:dr,rotateZ:dr,scaleX:Cn,scaleY:Cn,scale:Cn,opacity:hs,backgroundColor:hs,color:hs,default:Cn},Xx=(t,e)=>{let i;return i=Yi(e)?Yx:eu[t]||eu.default,{to:e,...i(e)}},Gx={...Jf,color:rt,backgroundColor:rt,outlineColor:rt,fill:rt,stroke:rt,borderColor:rt,borderTopColor:rt,borderRightColor:rt,borderBottomColor:rt,borderLeftColor:rt,filter:qs,WebkitFilter:qs},vl=t=>Gx[t];function bl(t,e){var i;let r=vl(t);return r!==qs&&(r=Dr),null===(i=r.getAnimatableNone)||void 0===i?void 0:i.call(r,e)}const qx={current:!1};function Kx({when:t,delay:e,delayChildren:i,staggerChildren:r,staggerDirection:n,repeat:o,repeatType:a,repeatDelay:s,from:l,...c}){return!!Object.keys(c).length}function Zx({ease:t,times:e,yoyo:i,flip:r,loop:n,...o}){const a={...o};return e&&(a.offset=e),o.duration&&(a.duration=na(o.duration)),o.repeatDelay&&(a.repeatDelay=na(o.repeatDelay)),t&&(a.ease=Wx(t)?t.map(Jc):Jc(t)),"tween"===o.type&&(a.type="keyframes"),(i||n||r)&&(i?a.repeatType="reverse":n?a.repeatType="loop":r&&(a.repeatType="mirror"),a.repeat=n||i||r||o.repeat),"spring"!==o.type&&(a.type="keyframes"),a}function Jx(t,e){var i,r;return null!==(r=null!==(i=(Ud(t,e)||{}).delay)&&void 0!==i?i:t.delay)&&void 0!==r?r:0}function Qx(t){return Array.isArray(t.to)&&null===t.to[0]&&(t.to=[...t.to],t.to[0]=t.from),t}function e2(t,e,i){return Array.isArray(e.to)&&void 0===t.duration&&(t.duration=.8),Qx(e),Kx(t)||(t={...t,...Xx(i,e.to)}),{...e,...Zx(t)}}function t2(t,e,i,r,n){const o=Ud(r,t)||{};let a=void 0!==o.from?o.from:e.get();const s=Qc(t,i);return"none"===a&&s&&"string"==typeof i?a=bl(t,i):tu(a)&&"string"==typeof i?a=ru(i):!Array.isArray(i)&&tu(i)&&"string"==typeof a&&(i=ru(a)),Qc(t,a)&&s&&!1!==o.type?function(){const r={from:a,to:i,velocity:e.getVelocity(),onComplete:n,onUpdate:t=>e.set(t)};return"inertia"===o.type||"decay"===o.type?Cx({...r,...o}):Ld({...e2(o,r,t),onUpdate:t=>{r.onUpdate(t),o.onUpdate&&o.onUpdate(t)},onComplete:()=>{r.onComplete(),o.onComplete&&o.onComplete()}})}:function(){const t=ld(i);return e.set(t),n(),o.onUpdate&&o.onUpdate(t),o.onComplete&&o.onComplete(),{stop:()=>{}}}}function tu(t){return 0===t||"string"==typeof t&&0===parseFloat(t)&&-1===t.indexOf(" ")}function ru(t){return"number"==typeof t?0:bl("",t)}function Ud(t,e){return t[e]||t.default||t}function r2(t,e,i,r={}){return qx.current&&(r={type:!1}),e.start(n=>{let o,a;const s=t2(t,e,i,r,n),l=Jx(r,t),c=()=>a=s();return l?o=window.setTimeout(c,na(l)):c(),()=>{clearTimeout(o),a&&a.stop()}})}const i2=t=>/^\-?\d*\.?\d+$/.test(t),n2=t=>/^0[^.\s]+$/.test(t);function o2(t,e){-1===t.indexOf(e)&&t.push(e)}function s2(t,e){const i=t.indexOf(e);i>-1&&t.splice(i,1)}class Bn{constructor(){this.subscriptions=[]}add(t){return o2(this.subscriptions,t),()=>s2(this.subscriptions,t)}notify(t,e,i){const r=this.subscriptions.length;if(r)if(1===r)this.subscriptions[0](t,e,i);else for(let n=0;n<r;n++){const r=this.subscriptions[n];r&&r(t,e,i)}}getSize(){return this.subscriptions.length}clear(){this.subscriptions.length=0}}const a2=t=>!isNaN(parseFloat(t));class l2{constructor(t){this.version="7.5.1",this.timeDelta=0,this.lastUpdated=0,this.updateSubscribers=new Bn,this.velocityUpdateSubscribers=new Bn,this.renderSubscribers=new Bn,this.canTrackVelocity=!1,this.updateAndNotify=(t,e=!0)=>{this.prev=this.current,this.current=t;const{delta:i,timestamp:r}=Id();this.lastUpdated!==r&&(this.timeDelta=i,this.lastUpdated=r,fi.postRender(this.scheduleVelocityCheck)),this.prev!==this.current&&this.updateSubscribers.notify(this.current),this.velocityUpdateSubscribers.getSize()&&this.velocityUpdateSubscribers.notify(this.getVelocity()),e&&this.renderSubscribers.notify(this.current)},this.scheduleVelocityCheck=()=>fi.postRender(this.velocityCheck),this.velocityCheck=({timestamp:t})=>{t!==this.lastUpdated&&(this.prev=this.current,this.velocityUpdateSubscribers.notify(this.getVelocity()))},this.hasAnimated=!1,this.prev=this.current=t,this.canTrackVelocity=a2(this.current)}onChange(t){return this.updateSubscribers.add(t)}clearListeners(){this.updateSubscribers.clear()}onRenderRequest(t){return t(this.get()),this.renderSubscribers.add(t)}attach(t){this.passiveEffect=t}set(t,e=!0){e&&this.passiveEffect?this.passiveEffect(t,this.updateAndNotify):this.updateAndNotify(t,e)}get(){return this.current}getPrevious(){return this.prev}getVelocity(){return this.canTrackVelocity?Fd(parseFloat(this.current)-parseFloat(this.prev),this.timeDelta):0}start(t){return this.stop(),new Promise(e=>{this.hasAnimated=!0,this.stopAnimation=t(e)}).then(()=>this.clearAnimation())}stop(){this.stopAnimation&&this.stopAnimation(),this.clearAnimation()}isAnimating(){return!!this.stopAnimation}clearAnimation(){this.stopAnimation=null}destroy(){this.updateSubscribers.clear(),this.renderSubscribers.clear(),this.stop()}}function Gi(t){return new l2(t)}const Wd=t=>e=>e.test(t),c2={test:t=>"auto"===t,parse:t=>t},Yd=[Ar,be,ri,Vt,zy,Fy,c2],xi=t=>Yd.find(Wd(t)),u2=[...Yd,rt,Dr],h2=t=>u2.find(Wd(t));function f2(t){const e={};return t.forEachValue((t,i)=>e[i]=t.get()),e}function d2(t){const e={};return t.forEachValue((t,i)=>e[i]=t.getVelocity()),e}function Mo(t,e,i){const r=t.getProps();return ad(r,e,void 0!==i?i:r.custom,f2(t),d2(t))}function p2(t,e,i){t.hasValue(e)?t.getValue(e).set(i):t.addValue(e,Gi(i))}function g2(t,e){const i=Mo(t,e);let{transitionEnd:r={},transition:n={},...o}=i?t.makeTargetAnimatable(i,!1):{};o={...o,...r};for(const e in o)p2(t,e,ld(o[e]))}function m2(t,e,i){var r,n;const o=Object.keys(e).filter(e=>!t.hasValue(e)),a=o.length;if(a)for(let s=0;s<a;s++){const a=o[s],l=e[a];let c=null;Array.isArray(l)&&(c=l[0]),null===c&&(c=null!==(n=null!==(r=i[a])&&void 0!==r?r:t.readValue(a))&&void 0!==n?n:e[a]),null!=c&&("string"==typeof c&&(i2(c)||n2(c))?c=parseFloat(c):!h2(c)&&Dr.test(l)&&(c=bl(a,l)),t.addValue(a,Gi(c)),void 0===i[a]&&(i[a]=c),t.setBaseTarget(a,c))}}function v2(t,e){return e?(e[t]||e.default||e).from:void 0}function b2(t,e,i){var r;const n={};for(const o in t){const t=v2(o,e);n[o]=void 0!==t?t:null===(r=i.getValue(o))||void 0===r?void 0:r.get()}return n}function no(t){return Boolean(Lt(t)&&t.add)}function y2(t,e,i={}){let r;if(t.notifyAnimationStart(e),Array.isArray(e)){const n=e.map(e=>oa(t,e,i));r=Promise.all(n)}else if("string"==typeof e)r=oa(t,e,i);else{const n="function"==typeof e?Mo(t,e,i.custom):e;r=Xd(t,n,i)}return r.then(()=>t.notifyAnimationComplete(e))}function oa(t,e,i={}){var r;const n=Mo(t,e,i.custom);let{transition:o=t.getDefaultTransition()||{}}=n||{};i.transitionOverride&&(o=i.transitionOverride);const a=n?()=>Xd(t,n,i):()=>Promise.resolve(),s=null!==(r=t.variantChildren)&&void 0!==r&&r.size?(r=0)=>{const{delayChildren:n=0,staggerChildren:a,staggerDirection:s}=o;return w2(t,e,n+r,a,s,i)}:()=>Promise.resolve(),{when:l}=o;if(l){const[t,e]="beforeChildren"===l?[a,s]:[s,a];return t().then(e)}return Promise.all([a(),s(i.delay)])}function Xd(t,e,{delay:i=0,transitionOverride:r,type:n}={}){var o;let{transition:a=t.getDefaultTransition(),transitionEnd:s,...l}=t.makeTargetAnimatable(e);const c=t.getValue("willChange");r&&(a=r);const h=[],u=n&&(null===(o=t.animationState)||void 0===o?void 0:o.getState()[n]);for(const e in l){const r=t.getValue(e),n=l[e];if(!r||void 0===n||u&&_2(u,e))continue;let o={delay:i,...a};t.shouldReduceMotion&&nn.has(e)&&(o={...o,type:!1,delay:0});let s=r2(e,r,n,o);no(c)&&(c.add(e),s=s.then(()=>c.remove(e))),h.push(s)}return Promise.all(h).then(()=>{s&&g2(t,s)})}function w2(t,e,i=0,r=0,n=1,o){const a=[],s=(t.variantChildren.size-1)*r,l=1===n?(t=0)=>t*r:(t=0)=>s-t*r;return Array.from(t.variantChildren).sort(x2).forEach((t,r)=>{a.push(oa(t,e,{...o,delay:i+l(r)}).then(()=>t.notifyAnimationComplete(e)))}),Promise.all(a)}function x2(t,e){return t.sortNodePosition(e)}function _2({protectedKeys:t,needsAnimating:e},i){const r=t.hasOwnProperty(i)&&!0!==e[i];return e[i]=!1,r}const yl=[Le.Animate,Le.InView,Le.Focus,Le.Hover,Le.Tap,Le.Drag,Le.Exit],S2=[...yl].reverse(),C2=yl.length;function T2(t){return e=>Promise.all(e.map(({animation:e,options:i})=>y2(t,e,i)))}function k2(t){let e=T2(t);const i=O2();let r=!0;const n=(e,i)=>{const r=Mo(t,i);if(r){const{transition:t,transitionEnd:i,...n}=r;e={...e,...n,...i}}return e};function o(o,a){var s;const l=t.getProps(),c=t.getVariantContext(!0)||{},h=[],u=new Set;let d={},p=1/0;for(let e=0;e<C2;e++){const f=S2[e],g=i[f],m=null!==(s=l[f])&&void 0!==s?s:c[f],v=Hi(m),b=f===a?g.isActive:null;!1===b&&(p=e);let y=m===c[f]&&m!==l[f]&&v;if(y&&r&&t.manuallyAnimateOnMount&&(y=!1),g.protectedKeys={...d},!g.isActive&&null===b||!m&&!g.prevProp||ko(m)||"boolean"==typeof m)continue;const x=E2(g.prevProp,m);let w=x||f===a&&g.isActive&&!y&&v||e>p&&v;const _=Array.isArray(m)?m:[m];let S=_.reduce(n,{});!1===b&&(S={});const{prevResolvedValues:C={}}=g,O={...C,...S},k=t=>{w=!0,u.delete(t),g.needsAnimating[t]=!0};for(const t in O){const e=S[t],i=C[t];d.hasOwnProperty(t)||(e!==i?Yi(e)&&Yi(i)?!Hd(e,i)||x?k(t):g.protectedKeys[t]=!0:void 0!==e?k(t):u.add(t):void 0!==e&&u.has(t)?k(t):g.protectedKeys[t]=!0)}g.prevProp=m,g.prevResolvedValues=S,g.isActive&&(d={...d,...S}),r&&t.blockInitialAnimation&&(w=!1),w&&!y&&h.push(..._.map(t=>({animation:t,options:{type:f,...o}})))}if(u.size){const e={};u.forEach(i=>{const r=t.getBaseTarget(i);void 0!==r&&(e[i]=r)}),h.push({animation:e})}let f=Boolean(h.length);return r&&!1===l.initial&&!t.manuallyAnimateOnMount&&(f=!1),r=!1,f?e(h):Promise.resolve()}return{animateChanges:o,setActive:function(e,r,n){var a;if(i[e].isActive===r)return Promise.resolve();null===(a=t.variantChildren)||void 0===a||a.forEach(t=>{var i;return null===(i=t.animationState)||void 0===i?void 0:i.setActive(e,r)}),i[e].isActive=r;const s=o(n,e);for(const t in i)i[t].protectedKeys={};return s},setAnimateFunction:function(i){e=i(t)},getState:()=>i}}function E2(t,e){return"string"==typeof e?e!==t:!!Array.isArray(e)&&!Hd(e,t)}function pr(t=!1){return{isActive:t,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function O2(){return{[Le.Animate]:pr(!0),[Le.InView]:pr(),[Le.Hover]:pr(),[Le.Tap]:pr(),[Le.Drag]:pr(),[Le.Focus]:pr(),[Le.Exit]:pr()}}const P2={animation:qr(({visualElement:t,animate:e})=>{t.animationState||(t.animationState=k2(t)),ko(e)&&xe(()=>e.subscribe(t),[e])}),exit:qr(t=>{const{custom:e,visualElement:i}=t,[r,n]=Hx(),o=De(rn);xe(()=>{i.isPresent=r;const t=i.animationState&&i.animationState.setActive(Le.Exit,!r,{custom:o&&o.custom||e});t&&!r&&t.then(n)},[r])})};function M2({top:t,left:e,right:i,bottom:r}){return{x:{min:e,max:i},y:{min:t,max:r}}}function A2(t,e){if(!e)return t;const i=e({x:t.left,y:t.top}),r=e({x:t.right,y:t.bottom});return{top:i.y,left:i.x,bottom:r.y,right:r.x}}function D2(t,e){return M2(A2(t.getBoundingClientRect(),e))}const sa={current:null},Gd={current:!1};function I2(){if(Gd.current=!0,Mr)if(window.matchMedia){const t=window.matchMedia("(prefers-reduced-motion)"),e=()=>sa.current=t.matches;t.addListener(e),e()}else sa.current=!1}const Tn=["LayoutMeasure","BeforeLayoutMeasure","LayoutUpdate","ViewportBoxUpdate","Update","Render","AnimationComplete","LayoutAnimationComplete","AnimationStart","LayoutAnimationStart","SetAxisTarget","Unmount"];function R2(){const t=Tn.map(()=>new Bn),e={},i={clearAllListeners:()=>t.forEach(t=>t.clear()),updatePropListeners:t=>{Tn.forEach(r=>{var n;const o="on"+r,a=t[o];null===(n=e[r])||void 0===n||n.call(e),a&&(e[r]=i[o](a))})}};return t.forEach((t,e)=>{i["on"+Tn[e]]=e=>t.add(e),i["notify"+Tn[e]]=(...e)=>t.notify(...e)}),i}function L2(t,e,i){const{willChange:r}=e;for(const n in e){const o=e[n],a=i[n];if(Lt(o))t.addValue(n,o),no(r)&&r.add(n);else if(Lt(a))t.addValue(n,Gi(o)),no(r)&&r.remove(n);else if(a!==o)if(t.hasValue(n)){const e=t.getValue(n);!e.hasAnimated&&e.set(o)}else{const e=t.getStaticValue(n);t.addValue(n,Gi(void 0!==e?e:o))}}for(const r in i)void 0===e[r]&&t.removeValue(r);return e}const qd=Object.keys(Ui),F2=qd.length,Kd=({treeType:t="",build:e,getBaseTarget:i,makeTargetAnimatable:r,measureViewportBox:n,render:o,readValueFromInstance:a,removeValueFromRenderState:s,sortNodePosition:l,scrapeMotionValuesFromProps:c})=>({parent:h,props:u,presenceId:d,blockInitialAnimation:p,visualState:f,reducedMotionConfig:g},m={})=>{let v=!1;const{latestValues:b,renderState:y}=f;let x;const w=R2(),_=new Map,S=new Map;let C={};const O={...b};let k;function T(){!x||!v||(E(),o(x,y,u.style,R.projection))}function E(){e(R,y,b,m,u)}function P(){w.notifyUpdate(b)}function M(t,e){const i=e.onChange(e=>{b[t]=e,u.onUpdate&&fi.update(P,!1,!0)}),r=e.onRenderRequest(R.scheduleRender);S.set(t,()=>{i(),r()})}const{willChange:A,...I}=c(u);for(const t in I){const e=I[t];void 0!==b[t]&&Lt(e)&&(e.set(b[t],!1),no(A)&&A.add(t))}if(u.values)for(const t in u.values)void 0!==b[t]&&u.values[t].set(b[t]);const j=Eo(u),D=Vf(u),R={treeType:t,current:null,depth:h?h.depth+1:0,parent:h,children:new Set,presenceId:d,shouldReduceMotion:null,variantChildren:D?new Set:void 0,isVisible:void 0,manuallyAnimateOnMount:Boolean(null==h?void 0:h.isMounted()),blockInitialAnimation:p,isMounted:()=>Boolean(x),mount(t){v=!0,x=R.current=t,R.projection&&R.projection.mount(t),D&&h&&!j&&(k=null==h?void 0:h.addVariantChild(R)),_.forEach((t,e)=>M(e,t)),Gd.current||I2(),R.shouldReduceMotion="never"!==g&&("always"===g||sa.current),null==h||h.children.add(R),R.setProps(u)},unmount(){var t;null===(t=R.projection)||void 0===t||t.unmount(),ra.update(P),ra.render(T),S.forEach(t=>t()),null==k||k(),null==h||h.children.delete(R),w.clearAllListeners(),x=void 0,v=!1},loadFeatures(t,e,i,r,n,o){const a=[];for(let e=0;e<F2;e++){const i=qd[e],{isEnabled:r,Component:n}=Ui[i];r(t)&&n&&a.push(Ch(n,{key:i,...t,visualElement:R}))}if(!R.projection&&n){R.projection=new n(r,R.getLatestValues(),h&&h.projection);const{layoutId:e,layout:i,drag:a,dragConstraints:s,layoutScroll:l}=t;R.projection.setOptions({layoutId:e,layout:i,alwaysMeasureLayout:Boolean(a)||s&&Nf(s),visualElement:R,scheduleRender:()=>R.scheduleRender(),animationType:"string"==typeof i?i:"both",initialPromotionConfig:o,layoutScroll:l})}return a},addVariantChild(t){var e;const i=R.getClosestVariantNode();if(i)return null===(e=i.variantChildren)||void 0===e||e.add(t),()=>i.variantChildren.delete(t)},sortNodePosition:e=>l&&t===e.treeType?l(R.getInstance(),e.getInstance()):0,getClosestVariantNode:()=>D?R:null==h?void 0:h.getClosestVariantNode(),getLayoutId:()=>u.layoutId,getInstance:()=>x,getStaticValue:t=>b[t],setStaticValue:(t,e)=>b[t]=e,getLatestValues:()=>b,setVisibility(t){R.isVisible!==t&&(R.isVisible=t,R.scheduleRender())},makeTargetAnimatable:(t,e=!0)=>r(R,t,u,e),measureViewportBox:()=>n(x,u),addValue(t,e){R.hasValue(t)&&R.removeValue(t),_.set(t,e),b[t]=e.get(),M(t,e)},removeValue(t){var e;_.delete(t),null===(e=S.get(t))||void 0===e||e(),S.delete(t),delete b[t],s(t,y)},hasValue:t=>_.has(t),getValue(t,e){if(u.values&&u.values[t])return u.values[t];let i=_.get(t);return void 0===i&&void 0!==e&&(i=Gi(e),R.addValue(t,i)),i},forEachValue:t=>_.forEach(t),readValue:t=>void 0!==b[t]?b[t]:a(x,t,m),setBaseTarget(t,e){O[t]=e},getBaseTarget(t){if(i){const e=i(u,t);if(void 0!==e&&!Lt(e))return e}return O[t]},...w,build:()=>(E(),y),scheduleRender(){fi.render(T,!1,!0)},syncRender:T,setProps(t){(t.transformTemplate||u.transformTemplate)&&R.scheduleRender(),u=t,w.updatePropListeners(t),C=L2(R,c(u),C)},getProps:()=>u,getVariant:t=>{var e;return null===(e=u.variants)||void 0===e?void 0:e[t]},getDefaultTransition:()=>u.transition,getTransformPagePoint:()=>u.transformPagePoint,getVariantContext(t=!1){if(t)return null==h?void 0:h.getVariantContext();if(!j){const t=(null==h?void 0:h.getVariantContext())||{};return void 0!==u.initial&&(t.initial=u.initial),t}const e={};for(let t=0;t<z2;t++){const i=Zd[t],r=u[i];(Hi(r)||!1===r)&&(e[i]=r)}return e}};return R},Zd=["initial",...yl],z2=Zd.length;function aa(t){return"string"==typeof t&&t.startsWith("var(--")}const j2=/var\((--[a-zA-Z0-9-_]+),? ?([a-zA-Z0-9 ()%#.,-]+)?\)/;function B2(t){const e=j2.exec(t);if(!e)return[,];const[,i,r]=e;return[i,r]}function la(t,e,i=1){const[r,n]=B2(t);if(!r)return;const o=window.getComputedStyle(e).getPropertyValue(r);return o?o.trim():aa(n)?la(n,e,i+1):n}function N2(t,{...e},i){const r=t.getInstance();if(!(r instanceof Element))return{target:e,transitionEnd:i};i&&(i={...i}),t.forEachValue(t=>{const e=t.get();if(!aa(e))return;const i=la(e,r);i&&t.set(i)});for(const t in e){const n=e[t];if(!aa(n))continue;const o=la(n,r);!o||(e[t]=o,i&&void 0===i[t]&&(i[t]=n))}return{target:e,transitionEnd:i}}const V2=new Set(["width","height","top","left","right","bottom","x","y"]),Jd=t=>V2.has(t),$2=t=>Object.keys(t).some(Jd),Qd=(t,e)=>{t.set(e,!1),t.set(e)},iu=t=>t===Ar||t===be;var nu;!function(t){t.width="width",t.height="height",t.left="left",t.right="right",t.top="top",t.bottom="bottom"}(nu||(nu={}));const ou=(t,e)=>parseFloat(t.split(", ")[e]),su=(t,e)=>(i,{transform:r})=>{if("none"===r||!r)return 0;const n=r.match(/^matrix3d\((.+)\)$/);if(n)return ou(n[1],e);{const e=r.match(/^matrix\((.+)\)$/);return e?ou(e[1],t):0}},H2=new Set(["x","y","z"]),U2=Qn.filter(t=>!H2.has(t));function W2(t){const e=[];return U2.forEach(i=>{const r=t.getValue(i);void 0!==r&&(e.push([i,r.get()]),r.set(i.startsWith("scale")?1:0))}),e.length&&t.syncRender(),e}const au={width:({x:t},{paddingLeft:e="0",paddingRight:i="0"})=>t.max-t.min-parseFloat(e)-parseFloat(i),height:({y:t},{paddingTop:e="0",paddingBottom:i="0"})=>t.max-t.min-parseFloat(e)-parseFloat(i),top:(t,{top:e})=>parseFloat(e),left:(t,{left:e})=>parseFloat(e),bottom:({y:t},{top:e})=>parseFloat(e)+(t.max-t.min),right:({x:t},{left:e})=>parseFloat(e)+(t.max-t.min),x:su(4,13),y:su(5,14)},Y2=(t,e,i)=>{const r=e.measureViewportBox(),n=e.getInstance(),o=getComputedStyle(n),{display:a}=o,s={};"none"===a&&e.setStaticValue("display",t.display||"block"),i.forEach(t=>{s[t]=au[t](r,o)}),e.syncRender();const l=e.measureViewportBox();return i.forEach(i=>{const r=e.getValue(i);Qd(r,s[i]),t[i]=au[i](l,o)}),t},X2=(t,e,i={},r={})=>{e={...e},r={...r};const n=Object.keys(e).filter(Jd);let o=[],a=!1;const s=[];if(n.forEach(n=>{const l=t.getValue(n);if(!t.hasValue(n))return;let c=i[n],h=xi(c);const u=e[n];let d;if(Yi(u)){const t=u.length,e=null===u[0]?1:0;c=u[e],h=xi(c);for(let i=e;i<t;i++)d?to(xi(u[i])===d):d=xi(u[i])}else d=xi(u);if(h!==d)if(iu(h)&&iu(d)){const t=l.get();"string"==typeof t&&l.set(parseFloat(t)),"string"==typeof u?e[n]=parseFloat(u):Array.isArray(u)&&d===be&&(e[n]=u.map(parseFloat))}else(null==h?void 0:h.transform)&&(null==d?void 0:d.transform)&&(0===c||0===u)?0===c?l.set(d.transform(c)):e[n]=h.transform(u):(a||(o=W2(t),a=!0),s.push(n),r[n]=void 0!==r[n]?r[n]:e[n],Qd(l,u))}),s.length){const i=s.indexOf("height")>=0?window.pageYOffset:null,n=Y2(e,t,s);return o.length&&o.forEach(([e,i])=>{t.getValue(e).set(i)}),t.syncRender(),Mr&&null!==i&&window.scrollTo({top:i}),{target:n,transitionEnd:r}}return{target:e,transitionEnd:r}};function G2(t,e,i,r){return $2(e)?X2(t,e,i,r):{target:e,transitionEnd:r}}const q2=(t,e,i,r)=>{const n=N2(t,e,r);return G2(t,e=n.target,i,r=n.transitionEnd)};function K2(t){return window.getComputedStyle(t)}const ep={treeType:"dom",readValueFromInstance(t,e){if(nn.has(e)){const t=vl(e);return t&&t.default||0}{const i=K2(t),r=(Uf(e)?i.getPropertyValue(e):i[e])||0;return"string"==typeof r?r.trim():r}},sortNodePosition:(t,e)=>2&t.compareDocumentPosition(e)?1:-1,getBaseTarget(t,e){var i;return null===(i=t.style)||void 0===i?void 0:i[e]},measureViewportBox:(t,{transformPagePoint:e})=>D2(t,e),resetTransform(t,e,i){const{transformTemplate:r}=i;e.style.transform=r?r({},""):"none",t.scheduleRender()},restoreTransform(t,e){t.style.transform=e.style.transform},removeValueFromRenderState(t,{vars:e,style:i}){delete e[t],delete i[t]},makeTargetAnimatable(t,{transition:e,transitionEnd:i,...r},{transformValues:n},o=!0){let a=b2(r,e||{},t);if(n&&(i&&(i=n(i)),r&&(r=n(r)),a&&(a=n(a))),o){m2(t,r,a);const e=q2(t,r,a,i);i=e.transitionEnd,r=e.target}return{transition:e,transitionEnd:i,...r}},scrapeMotionValuesFromProps:ul,build(t,e,i,r,n){void 0!==t.isVisible&&(e.style.visibility=t.isVisible?"visible":"hidden"),al(e,i,r,n.transformTemplate)},render:id},Z2=Kd(ep),J2=Kd({...ep,getBaseTarget:(t,e)=>t[e],readValueFromInstance(t,e){var i;return nn.has(e)?(null===(i=vl(e))||void 0===i?void 0:i.default)||0:(e=nd.has(e)?e:rd(e),t.getAttribute(e))},scrapeMotionValuesFromProps:sd,build(t,e,i,r,n){cl(e,i,r,n.transformTemplate)},render:od}),Q2=(t,e)=>ol(t)?J2(e,{enableHardwareAcceleration:!1}):Z2(e,{enableHardwareAcceleration:!0}),ot=Oy(pw);function tp(){const t=de(!1);return Jn(()=>(t.current=!0,()=>{t.current=!1}),[]),t}function e_(){const t=tp(),[e,i]=Ae(0),r=Ie(()=>{t.current&&i(e+1)},[e]);return[Ie(()=>fi.postRender(r),[r]),e]}class t_ extends Se.Component{getSnapshotBeforeUpdate(t){const e=this.props.childRef.current;if(e&&t.isPresent&&!this.props.isPresent){const t=this.props.sizeRef.current;t.height=e.offsetHeight||0,t.width=e.offsetWidth||0,t.top=e.offsetTop,t.left=e.offsetLeft}return null}componentDidUpdate(){}render(){return this.props.children}}function r_({children:t,isPresent:e}){const i=yt(),r=de(null),n=de({width:0,height:0,top:0,left:0});return im(()=>{const{width:t,height:o,top:a,left:s}=n.current;if(e||!r.current||!t||!o)return;r.current.dataset.motionPopId=i;const l=document.createElement("style");return document.head.appendChild(l),l.sheet&&l.sheet.insertRule(`\n [data-motion-pop-id="${i}"] {\n position: absolute !important;\n width: ${t}px !important;\n height: ${o}px !important;\n top: ${a}px !important;\n left: ${s}px !important;\n }\n `),()=>{document.head.removeChild(l)}},[e]),x(t_,{isPresent:e,childRef:r,sizeRef:n,children:Se.cloneElement(t,{ref:r})})}const fs=({children:t,initial:e,isPresent:i,onExitComplete:r,custom:n,presenceAffectsLayout:o,mode:a})=>{const s=nl(i_),l=yt(),c=Je(()=>({id:l,initial:e,isPresent:i,custom:n,onExitComplete:t=>{s.set(t,!0);for(const t of s.values())if(!t)return;r&&r()},register:t=>(s.set(t,!1),()=>s.delete(t))}),o?void 0:[i]);return Je(()=>{s.forEach((t,e)=>s.set(e,!1))},[i]),Se.useEffect(()=>{!i&&!s.size&&r&&r()},[i]),"popLayout"===a&&(t=x(r_,{isPresent:i,children:t})),x(rn.Provider,{value:c,children:t})};function i_(){return new Map}const Yr=t=>t.key||"";function n_(t,e){t.forEach(t=>{const i=Yr(t);e.set(i,t)})}function o_(t){const e=[];return Sr.forEach(t,t=>{tr(t)&&e.push(t)}),e}const cr=({children:t,custom:e,initial:i=!0,onExitComplete:r,exitBeforeEnter:n,presenceAffectsLayout:o=!0,mode:a="sync"})=>{n&&(a="wait",$d(!1,"Replace exitBeforeEnter with mode='wait'"));let[s]=e_();const l=De($f).forceRender;l&&(s=l);const c=tp(),h=o_(t);let u=h;const d=new Set,p=de(u),f=de(new Map).current,g=de(!0);if(Jn(()=>{g.current=!1,n_(h,f),p.current=u}),md(()=>{g.current=!0,f.clear(),d.clear()}),g.current)return x(ji,{children:u.map(t=>x(fs,{isPresent:!0,initial:!!i&&void 0,presenceAffectsLayout:o,mode:a,children:t},Yr(t)))});u=[...u];const m=p.current.map(Yr),v=h.map(Yr),b=m.length;for(let t=0;t<b;t++){const e=m[t];-1===v.indexOf(e)&&d.add(e)}return"wait"===a&&d.size&&(u=[]),d.forEach(t=>{if(-1!==v.indexOf(t))return;const i=f.get(t);if(!i)return;const n=m.indexOf(t);u.splice(n,0,x(fs,{isPresent:!1,onExitComplete:()=>{f.delete(t),d.delete(t);const e=p.current.findIndex(e=>e.key===t);if(p.current.splice(e,1),!d.size){if(p.current=h,!1===c.current)return;s(),r&&r()}},custom:e,presenceAffectsLayout:o,mode:a,children:i},Yr(i)))}),u=u.map(t=>{const e=t.key;return d.has(e)?t:x(fs,{isPresent:!0,presenceAffectsLayout:o,mode:a,children:t},Yr(t))}),"production"!==Vd&&"wait"===a&&u.length>1&&console.warn('You\'re attempting to animate multiple children within AnimatePresence, but its mode is set to "wait". This will lead to odd visual behaviour.'),x(ji,{children:d.size?u:u.map(t=>dt(t))})};function s_({children:t,features:e,strict:i=!1}){const[,r]=Ae(!ds(e)),n=de(void 0);if(!ds(e)){const{renderer:t,...i}=e;n.current=t,Ys(i)}return xe(()=>{ds(e)&&e().then(({renderer:t,...e})=>{Ys(e),n.current=t,r(!0)})},[]),x(il.Provider,{value:{renderer:n.current,strict:i},children:t})}function ds(t){return"function"==typeof t}const a_={renderer:Q2,...P2,...$x};function kr(t,e,i){let[r,n]=Ae(t||e),o=de(void 0!==t),a=o.current,s=void 0!==t,l=de(r);a!==s&&console.warn(`WARN: A component changed from ${a?"controlled":"uncontrolled"} to ${s?"controlled":"uncontrolled"}.`),o.current=s;let c=Ie((t,...e)=>{let r=(t,...e)=>{i&&(Object.is(l.current,t)||i(t,...e)),s||(l.current=t)};"function"==typeof t?(console.warn("We can not support a function callback. See Github Issues for details https://github.com/adobe/react-spectrum/issues/2320"),n((i,...n)=>{let o=t(s?l.current:i,...n);return r(o,...e),s?i:o})):(s||n(t),r(t,...e))},[s,i]);return s?l.current=t:t=r,[t,c]}function _r(t,e=-1/0,i=1/0){return Math.min(Math.max(t,e),i)}function l_(t,e,i,r){let n=(t-(isNaN(e)?0:e))%r,o=2*Math.abs(n)>=r?t+Math.sign(n)*(r-Math.abs(n)):t-n;isNaN(e)?!isNaN(i)&&o>i&&(o=Math.floor(i/r)*r):o<e?o=e:!isNaN(i)&&o>i&&(o=e+Math.floor((i-e)/r)*r);let a=r.toString(),s=a.indexOf("."),l=s>=0?a.length-s:0;if(l>0){let t=Math.pow(10,l);o=Math.round(o*t)/t}return o}function He(t,e,i=10){const r=Math.pow(i,e);return Math.round(t*r)/r}const rp={prefix:String(Math.round(1e10*Math.random())),current:0},c_=ae.createContext(rp);function u_(){let t=De(c_)!==rp,[e,i]=Ae(t);return typeof window<"u"&&t&&pi(()=>{i(!1)},[]),e}const Ft=typeof window<"u"?ae.useLayoutEffect:()=>{};let lu=new Map;function h_(t,e){if(t===e)return t;let i=lu.get(t);if(i)return i(e),e;let r=lu.get(e);return r?(r(t),t):e}function f_(...t){return(...e)=>{for(let i of t)"function"==typeof i&&i(...e)}}function vi(...t){let e={...t[0]};for(let i=1;i<t.length;i++){let r=t[i];for(let t in r){let i=e[t],n=r[t];"function"==typeof i&&"function"==typeof n&&"o"===t[0]&&"n"===t[1]&&t.charCodeAt(2)>=65&&t.charCodeAt(2)<=90?e[t]=f_(i,n):"className"!==t&&"UNSAFE_className"!==t||"string"!=typeof i||"string"!=typeof n?"id"===t&&i&&n?e.id=h_(i,n):e[t]=void 0!==n?n:i:e[t]=ue(i,n)}}return e}function cu(t){if(d_())t.focus({preventScroll:!0});else{let e=p_(t);t.focus(),g_(e)}}let kn=null;function d_(){if(null==kn){kn=!1;try{document.createElement("div").focus({get preventScroll(){return kn=!0,!0}})}catch{}}return kn}function p_(t){for(var e=t.parentNode,i=[],r=document.scrollingElement||document.documentElement;e instanceof HTMLElement&&e!==r;)(e.offsetHeight<e.scrollHeight||e.offsetWidth<e.scrollWidth)&&i.push({element:e,scrollTop:e.scrollTop,scrollLeft:e.scrollLeft}),e=e.parentNode;return r instanceof HTMLElement&&i.push({element:r,scrollTop:r.scrollTop,scrollLeft:r.scrollLeft}),i}function g_(t){for(let{element:e,scrollTop:i,scrollLeft:r}of t)e.scrollTop=i,e.scrollLeft=r}let Xr=new Map,ca=new Set;function uu(){if(typeof window>"u")return;let t=e=>{let i=Xr.get(e.target);if(i&&(i.delete(e.propertyName),0===i.size&&(e.target.removeEventListener("transitioncancel",t),Xr.delete(e.target)),0===Xr.size)){for(let t of ca)t();ca.clear()}};document.body.addEventListener("transitionrun",e=>{let i=Xr.get(e.target);i||(i=new Set,Xr.set(e.target,i),e.target.addEventListener("transitioncancel",t)),i.add(e.propertyName)}),document.body.addEventListener("transitionend",t)}function m_(t){requestAnimationFrame(()=>{0===Xr.size?t():ca.add(t)})}function wl(){let t=de(new Map),e=Ie((e,i,r,n)=>{let o=null!=n&&n.once?(...e)=>{t.current.delete(r),r(...e)}:r;t.current.set(r,{type:i,eventTarget:e,fn:o,options:n}),e.addEventListener(i,r,n)},[]),i=Ie((e,i,r,n)=>{var o;let a=(null===(o=t.current.get(r))||void 0===o?void 0:o.fn)||r;e.removeEventListener(i,a,n),t.current.delete(r)},[]),r=Ie(()=>{t.current.forEach((t,e)=>{i(t.eventTarget,t.type,e,t.options)})},[i]);return xe(()=>r,[r]),{addGlobalListener:e,removeGlobalListener:i,removeAllGlobalListeners:r}}function Ir(t){const e=de();return Ft(()=>{!t||("function"==typeof t?t(e.current):t.current=e.current)},[t]),e}typeof document<"u"&&("loading"!==document.readyState?uu():document.addEventListener("DOMContentLoaded",uu));let xt=typeof window<"u"&&window.visualViewport;function v_(){let[t,e]=Ae(()=>hu());return xe(()=>{let t=()=>{e(t=>{let e=hu();return e.width===t.width&&e.height===t.height?t:e})};return xt?xt.addEventListener("resize",t):window.addEventListener("resize",t),()=>{xt?xt.removeEventListener("resize",t):window.removeEventListener("resize",t)}},[]),t}function hu(){return{width:(null==xt?void 0:xt.width)||window.innerWidth,height:(null==xt?void 0:xt.height)||window.innerHeight}}function b_(t){var e;return typeof window<"u"&&null!=window.navigator&&t.test((null===(e=window.navigator.userAgentData)||void 0===e?void 0:e.platform)||window.navigator.platform)}function ip(){return b_(/^Mac/i)}var ve={};const y_={},w_=Object.freeze(Object.defineProperty({__proto__:null,default:y_},Symbol.toStringTag,{value:"Module"})),ps=lm(w_);!function(t){var e,i,r,n,o,a,s=s||{version:"5.2.4"};if(t.fabric=s,typeof document<"u"&&typeof window<"u")document instanceof(typeof HTMLDocument<"u"?HTMLDocument:Document)?s.document=document:s.document=document.implementation.createHTMLDocument(""),s.window=window;else{var l=new ps.JSDOM(decodeURIComponent("%3C!DOCTYPE%20html%3E%3Chtml%3E%3Chead%3E%3C%2Fhead%3E%3Cbody%3E%3C%2Fbody%3E%3C%2Fhtml%3E"),{features:{FetchExternalResources:["img"]},resources:"usable"}).window;s.document=l.document,s.jsdomImplForWrapper=ps.implForWrapper,s.nodeCanvas=ps.Canvas,s.window=l,DOMParser=s.window.DOMParser}function c(t,e){var i=t.canvas,r=e.targetCanvas,n=r.getContext("2d");n.translate(0,r.height),n.scale(1,-1);var o=i.height-r.height;n.drawImage(i,0,o,r.width,r.height,0,0,r.width,r.height)}function h(t,e){var i=e.targetCanvas.getContext("2d"),r=e.destinationWidth,n=e.destinationHeight,o=r*n*4,a=new Uint8Array(this.imageBuffer,0,o),s=new Uint8ClampedArray(this.imageBuffer,0,o);t.readPixels(0,0,r,n,t.RGBA,t.UNSIGNED_BYTE,a);var l=new ImageData(s,r,n);i.putImageData(l,0,0)}s.isTouchSupported="ontouchstart"in s.window||"ontouchstart"in s.document||s.window&&s.window.navigator&&s.window.navigator.maxTouchPoints>0,s.isLikelyNode=typeof Buffer<"u"&&typeof window>"u",s.SHARED_ATTRIBUTES=["display","transform","fill","fill-opacity","fill-rule","opacity","stroke","stroke-dasharray","stroke-linecap","stroke-dashoffset","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","id","paint-order","vector-effect","instantiated_by_use","clip-path"],s.DPI=96,s.reNum="(?:[-+]?(?:\\d+|\\d*\\.\\d+)(?:[eE][-+]?\\d+)?)",s.commaWsp="(?:\\s+,?\\s*|,\\s*)",s.rePathCommand=/([-+]?((\d+\.\d+)|((\d+)|(\.\d+)))(?:[eE][-+]?\d+)?)/gi,s.reNonWord=/[ \n\.,;!\?\-]/,s.fontPaths={},s.iMatrix=[1,0,0,1,0,0],s.svgNS="http://www.w3.org/2000/svg",s.perfLimitSizeTotal=2097152,s.maxCacheSideLimit=4096,s.minCacheSideLimit=256,s.charWidthsCache={},s.textureSize=2048,s.disableStyleCopyPaste=!1,s.enableGLFiltering=!0,s.devicePixelRatio=s.window.devicePixelRatio||s.window.webkitDevicePixelRatio||s.window.mozDevicePixelRatio||1,s.browserShadowBlurConstant=1,s.arcToSegmentsCache={},s.boundsOfCurveCache={},s.cachesBoundsOfCurve=!0,s.forceGLPutImageData=!1,s.initFilterBackend=function(){return s.enableGLFiltering&&s.isWebglSupported&&s.isWebglSupported(s.textureSize)?(console.log("max texture size: "+s.maxTextureSize),new s.WebglFilterBackend({tileSize:s.textureSize})):s.Canvas2dFilterBackend?new s.Canvas2dFilterBackend:void 0},typeof document<"u"&&typeof window<"u"&&(window.fabric=s),function(){function t(t,e){if(this.__eventListeners[t]){var i=this.__eventListeners[t];e?i[i.indexOf(e)]=!1:s.util.array.fill(i,!1)}}function e(t,e){var i=function(){e.apply(this,arguments),this.off(t,i)}.bind(this);this.on(t,i)}s.Observable={fire:function(t,e){if(!this.__eventListeners)return this;var i=this.__eventListeners[t];if(!i)return this;for(var r=0,n=i.length;r<n;r++)i[r]&&i[r].call(this,e||{});return this.__eventListeners[t]=i.filter(function(t){return!1!==t}),this},on:function(t,e){if(this.__eventListeners||(this.__eventListeners={}),1===arguments.length)for(var i in t)this.on(i,t[i]);else this.__eventListeners[t]||(this.__eventListeners[t]=[]),this.__eventListeners[t].push(e);return this},once:function(t,i){if(1===arguments.length)for(var r in t)e.call(this,r,t[r]);else e.call(this,t,i);return this},off:function(e,i){if(!this.__eventListeners)return this;if(0===arguments.length)for(e in this.__eventListeners)t.call(this,e);else if(1===arguments.length&&"object"==typeof arguments[0])for(var r in e)t.call(this,r,e[r]);else t.call(this,e,i);return this}}}(),s.Collection={_objects:[],add:function(){if(this._objects.push.apply(this._objects,arguments),this._onObjectAdded)for(var t=0,e=arguments.length;t<e;t++)this._onObjectAdded(arguments[t]);return this.renderOnAddRemove&&this.requestRenderAll(),this},insertAt:function(t,e,i){var r=this._objects;return i?r[e]=t:r.splice(e,0,t),this._onObjectAdded&&this._onObjectAdded(t),this.renderOnAddRemove&&this.requestRenderAll(),this},remove:function(){for(var t,e=this._objects,i=!1,r=0,n=arguments.length;r<n;r++)-1!==(t=e.indexOf(arguments[r]))&&(i=!0,e.splice(t,1),this._onObjectRemoved&&this._onObjectRemoved(arguments[r]));return this.renderOnAddRemove&&i&&this.requestRenderAll(),this},forEachObject:function(t,e){for(var i=this.getObjects(),r=0,n=i.length;r<n;r++)t.call(e,i[r],r,i);return this},getObjects:function(t){return typeof t>"u"?this._objects.concat():this._objects.filter(function(e){return e.type===t})},item:function(t){return this._objects[t]},isEmpty:function(){return 0===this._objects.length},size:function(){return this._objects.length},contains:function(t,e){return this._objects.indexOf(t)>-1||!!e&&this._objects.some(function(e){return"function"==typeof e.contains&&e.contains(t,!0)})},complexity:function(){return this._objects.reduce(function(t,e){return t+(e.complexity?e.complexity():0)},0)}},s.CommonMethods={_setOptions:function(t){for(var e in t)this.set(e,t[e])},_initGradient:function(t,e){t&&t.colorStops&&!(t instanceof s.Gradient)&&this.set(e,new s.Gradient(t))},_initPattern:function(t,e,i){!t||!t.source||t instanceof s.Pattern?i&&i():this.set(e,new s.Pattern(t,i))},_setObject:function(t){for(var e in t)this._set(e,t[e])},set:function(t,e){return"object"==typeof t?this._setObject(t):this._set(t,e),this},_set:function(t,e){this[t]=e},toggle:function(t){var e=this.get(t);return"boolean"==typeof e&&this.set(t,!e),this},get:function(t){return this[t]}},e=t,i=Math.sqrt,r=Math.atan2,n=Math.pow,o=Math.PI/180,a=Math.PI/2,s.util={cos:function(t){if(0===t)return 1;switch(t<0&&(t=-t),t/a){case 1:case 3:return 0;case 2:return-1}return Math.cos(t)},sin:function(t){if(0===t)return 0;var e=1;switch(t<0&&(e=-1),t/a){case 1:return e;case 2:return 0;case 3:return-e}return Math.sin(t)},removeFromArray:function(t,e){var i=t.indexOf(e);return-1!==i&&t.splice(i,1),t},getRandomInt:function(t,e){return Math.floor(Math.random()*(e-t+1))+t},degreesToRadians:function(t){return t*o},radiansToDegrees:function(t){return t/o},rotatePoint:function(t,e,i){var r=new s.Point(t.x-e.x,t.y-e.y),n=s.util.rotateVector(r,i);return new s.Point(n.x,n.y).addEquals(e)},rotateVector:function(t,e){var i=s.util.sin(e),r=s.util.cos(e);return{x:t.x*r-t.y*i,y:t.x*i+t.y*r}},createVector:function(t,e){return new s.Point(e.x-t.x,e.y-t.y)},calcAngleBetweenVectors:function(t,e){return Math.acos((t.x*e.x+t.y*e.y)/(Math.hypot(t.x,t.y)*Math.hypot(e.x,e.y)))},getHatVector:function(t){return new s.Point(t.x,t.y).multiply(1/Math.hypot(t.x,t.y))},getBisector:function(t,e,i){var r=s.util.createVector(t,e),n=s.util.createVector(t,i),o=s.util.calcAngleBetweenVectors(r,n),a=o*(0===s.util.calcAngleBetweenVectors(s.util.rotateVector(r,o),n)?1:-1)/2;return{vector:s.util.getHatVector(s.util.rotateVector(r,a)),angle:o}},projectStrokeOnPoints:function(t,e,i){var r=[],n=e.strokeWidth/2,o=e.strokeUniform?new s.Point(1/e.scaleX,1/e.scaleY):new s.Point(1,1),a=function(t){var e=n/Math.hypot(t.x,t.y);return new s.Point(t.x*e*o.x,t.y*e*o.y)};return t.length<=1||t.forEach(function(l,c){var h,u,d=new s.Point(l.x,l.y);0===c?(u=t[c+1],h=i?a(s.util.createVector(u,d)).addEquals(d):t[t.length-1]):c===t.length-1?(h=t[c-1],u=i?a(s.util.createVector(h,d)).addEquals(d):t[0]):(h=t[c-1],u=t[c+1]);var p,f,g=s.util.getBisector(d,h,u),m=g.vector,v=g.angle;if("miter"===e.strokeLineJoin&&(p=-n/Math.sin(v/2),f=new s.Point(m.x*p*o.x,m.y*p*o.y),Math.hypot(f.x,f.y)/n<=e.strokeMiterLimit))return r.push(d.add(f)),void r.push(d.subtract(f));p=-n*Math.SQRT2,f=new s.Point(m.x*p*o.x,m.y*p*o.y),r.push(d.add(f)),r.push(d.subtract(f))}),r},transformPoint:function(t,e,i){return i?new s.Point(e[0]*t.x+e[2]*t.y,e[1]*t.x+e[3]*t.y):new s.Point(e[0]*t.x+e[2]*t.y+e[4],e[1]*t.x+e[3]*t.y+e[5])},makeBoundingBoxFromPoints:function(t,e){if(e)for(var i=0;i<t.length;i++)t[i]=s.util.transformPoint(t[i],e);var r=[t[0].x,t[1].x,t[2].x,t[3].x],n=s.util.array.min(r),o=s.util.array.max(r)-n,a=[t[0].y,t[1].y,t[2].y,t[3].y],l=s.util.array.min(a);return{left:n,top:l,width:o,height:s.util.array.max(a)-l}},invertTransform:function(t){var e=1/(t[0]*t[3]-t[1]*t[2]),i=[e*t[3],-e*t[1],-e*t[2],e*t[0]],r=s.util.transformPoint({x:t[4],y:t[5]},i,!0);return i[4]=-r.x,i[5]=-r.y,i},toFixed:function(t,e){return parseFloat(Number(t).toFixed(e))},parseUnit:function(t,e){var i=/\D{0,2}$/.exec(t),r=parseFloat(t);switch(e||(e=s.Text.DEFAULT_SVG_FONT_SIZE),i[0]){case"mm":return r*s.DPI/25.4;case"cm":return r*s.DPI/2.54;case"in":return r*s.DPI;case"pt":return r*s.DPI/72;case"pc":return r*s.DPI/72*12;case"em":return r*e;default:return r}},falseFunction:function(){return!1},getKlass:function(t,e){return t=s.util.string.camelize(t.charAt(0).toUpperCase()+t.slice(1)),s.util.resolveNamespace(e)[t]},getSvgAttributes:function(t){var e=["instantiated_by_use","style","id","class"];switch(t){case"linearGradient":e=e.concat(["x1","y1","x2","y2","gradientUnits","gradientTransform"]);break;case"radialGradient":e=e.concat(["gradientUnits","gradientTransform","cx","cy","r","fx","fy","fr"]);break;case"stop":e=e.concat(["offset","stop-color","stop-opacity"])}return e},resolveNamespace:function(t){if(!t)return s;var i,r=t.split("."),n=r.length,o=e||s.window;for(i=0;i<n;++i)o=o[r[i]];return o},loadImage:function(t,e,i,r){if(t){var n=s.util.createImage(),o=function(){e&&e.call(i,n,!1),n=n.onload=n.onerror=null};n.onload=o,n.onerror=function(){s.log("Error loading "+n.src),e&&e.call(i,null,!0),n=n.onload=n.onerror=null},0!==t.indexOf("data")&&null!=r&&(n.crossOrigin=r),"data:image/svg"===t.substring(0,14)&&(n.onload=null,s.util.loadImageInDom(n,o)),n.src=t}else e&&e.call(i,t)},loadImageInDom:function(t,e){var i=s.document.createElement("div");i.style.width=i.style.height="1px",i.style.left=i.style.top="-100%",i.style.position="absolute",i.appendChild(t),s.document.querySelector("body").appendChild(i),t.onload=function(){e(),i.parentNode.removeChild(i),i=null}},enlivenObjects:function(t,e,i,r){var n=[],o=0,a=(t=t||[]).length;function l(){++o===a&&e&&e(n.filter(function(t){return t}))}a?t.forEach(function(t,e){t&&t.type?s.util.getKlass(t.type,i).fromObject(t,function(i,o){o||(n[e]=i),r&&r(t,i,o),l()}):l()}):e&&e(n)},enlivenObjectEnlivables:function(t,e,i){var r=s.Object.ENLIVEN_PROPS.filter(function(e){return!!t[e]});s.util.enlivenObjects(r.map(function(e){return t[e]}),function(t){var n={};r.forEach(function(i,r){n[i]=t[r],e&&(e[i]=t[r])}),i&&i(n)})},enlivenPatterns:function(t,e){function i(){++n===o&&e&&e(r)}var r=[],n=0,o=(t=t||[]).length;o?t.forEach(function(t,e){t&&t.source?new s.Pattern(t,function(t){r[e]=t,i()}):(r[e]=t,i())}):e&&e(r)},groupSVGElements:function(t,e,i){var r;return t&&1===t.length?(typeof i<"u"&&(t[0].sourcePath=i),t[0]):(e&&(e.width&&e.height?e.centerPoint={x:e.width/2,y:e.height/2}:(delete e.width,delete e.height)),r=new s.Group(t,e),typeof i<"u"&&(r.sourcePath=i),r)},populateWithProperties:function(t,e,i){if(i&&Array.isArray(i))for(var r=0,n=i.length;r<n;r++)i[r]in t&&(e[i[r]]=t[i[r]])},createCanvasElement:function(){return s.document.createElement("canvas")},copyCanvasElement:function(t){var e=s.util.createCanvasElement();return e.width=t.width,e.height=t.height,e.getContext("2d").drawImage(t,0,0),e},toDataURL:function(t,e,i){return t.toDataURL("image/"+e,i)},createImage:function(){return s.document.createElement("img")},multiplyTransformMatrices:function(t,e,i){return[t[0]*e[0]+t[2]*e[1],t[1]*e[0]+t[3]*e[1],t[0]*e[2]+t[2]*e[3],t[1]*e[2]+t[3]*e[3],i?0:t[0]*e[4]+t[2]*e[5]+t[4],i?0:t[1]*e[4]+t[3]*e[5]+t[5]]},qrDecompose:function(t){var e=r(t[1],t[0]),a=n(t[0],2)+n(t[1],2),s=i(a),l=(t[0]*t[3]-t[2]*t[1])/s,c=r(t[0]*t[2]+t[1]*t[3],a);return{angle:e/o,scaleX:s,scaleY:l,skewX:c/o,skewY:0,translateX:t[4],translateY:t[5]}},calcRotateMatrix:function(t){if(!t.angle)return s.iMatrix.concat();var e=s.util.degreesToRadians(t.angle),i=s.util.cos(e),r=s.util.sin(e);return[i,r,-r,i,0,0]},calcDimensionsMatrix:function(t){var e=typeof t.scaleX>"u"?1:t.scaleX,i=typeof t.scaleY>"u"?1:t.scaleY,r=[t.flipX?-e:e,0,0,t.flipY?-i:i,0,0],n=s.util.multiplyTransformMatrices,o=s.util.degreesToRadians;return t.skewX&&(r=n(r,[1,0,Math.tan(o(t.skewX)),1],!0)),t.skewY&&(r=n(r,[1,Math.tan(o(t.skewY)),0,1],!0)),r},composeMatrix:function(t){var e=[1,0,0,1,t.translateX||0,t.translateY||0],i=s.util.multiplyTransformMatrices;return t.angle&&(e=i(e,s.util.calcRotateMatrix(t))),(1!==t.scaleX||1!==t.scaleY||t.skewX||t.skewY||t.flipX||t.flipY)&&(e=i(e,s.util.calcDimensionsMatrix(t))),e},resetObjectTransform:function(t){t.scaleX=1,t.scaleY=1,t.skewX=0,t.skewY=0,t.flipX=!1,t.flipY=!1,t.rotate(0)},saveObjectTransform:function(t){return{scaleX:t.scaleX,scaleY:t.scaleY,skewX:t.skewX,skewY:t.skewY,angle:t.angle,left:t.left,flipX:t.flipX,flipY:t.flipY,top:t.top}},isTransparent:function(t,e,i,r){r>0&&(e>r?e-=r:e=0,i>r?i-=r:i=0);var n,o=!0,a=t.getImageData(e,i,2*r||1,2*r||1),s=a.data.length;for(n=3;n<s&&0!=(o=a.data[n]<=0);n+=4);return a=null,o},parsePreserveAspectRatioAttribute:function(t){var e,i="meet",r=t.split(" ");return r&&r.length&&("meet"!==(i=r.pop())&&"slice"!==i?(e=i,i="meet"):r.length&&(e=r.pop())),{meetOrSlice:i,alignX:"none"!==e?e.slice(1,4):"none",alignY:"none"!==e?e.slice(5,8):"none"}},clearFabricFontCache:function(t){(t=(t||"").toLowerCase())?s.charWidthsCache[t]&&delete s.charWidthsCache[t]:s.charWidthsCache={}},limitDimsByArea:function(t,e){var i=Math.sqrt(e*t),r=Math.floor(e/i);return{x:Math.floor(i),y:r}},capValue:function(t,e,i){return Math.max(t,Math.min(e,i))},findScaleToFit:function(t,e){return Math.min(e.width/t.width,e.height/t.height)},findScaleToCover:function(t,e){return Math.max(e.width/t.width,e.height/t.height)},matrixToSVG:function(t){return"matrix("+t.map(function(t){return s.util.toFixed(t,s.Object.NUM_FRACTION_DIGITS)}).join(" ")+")"},removeTransformFromObject:function(t,e){var i=s.util.invertTransform(e),r=s.util.multiplyTransformMatrices(i,t.calcOwnMatrix());s.util.applyTransformToObject(t,r)},addTransformToObject:function(t,e){s.util.applyTransformToObject(t,s.util.multiplyTransformMatrices(e,t.calcOwnMatrix()))},applyTransformToObject:function(t,e){var i=s.util.qrDecompose(e),r=new s.Point(i.translateX,i.translateY);t.flipX=!1,t.flipY=!1,t.set("scaleX",i.scaleX),t.set("scaleY",i.scaleY),t.skewX=i.skewX,t.skewY=i.skewY,t.angle=i.angle,t.setPositionByOrigin(r,"center","center")},sizeAfterTransform:function(t,e,i){var r=t/2,n=e/2,o=[{x:-r,y:-n},{x:r,y:-n},{x:-r,y:n},{x:r,y:n}],a=s.util.calcDimensionsMatrix(i),l=s.util.makeBoundingBoxFromPoints(o,a);return{x:l.width,y:l.height}},mergeClipPaths:function(t,e){var i=t,r=e;i.inverted&&!r.inverted&&(i=e,r=t),s.util.applyTransformToObject(r,s.util.multiplyTransformMatrices(s.util.invertTransform(i.calcTransformMatrix()),r.calcTransformMatrix()));var n=i.inverted&&r.inverted;return n&&(i.inverted=r.inverted=!1),new s.Group([i],{clipPath:r,inverted:n})},hasStyleChanged:function(t,e,i){return i=i||!1,t.fill!==e.fill||t.stroke!==e.stroke||t.strokeWidth!==e.strokeWidth||t.fontSize!==e.fontSize||t.fontFamily!==e.fontFamily||t.fontWeight!==e.fontWeight||t.fontStyle!==e.fontStyle||t.deltaY!==e.deltaY||i&&(t.overline!==e.overline||t.underline!==e.underline||t.linethrough!==e.linethrough)},stylesToArray:function(t,e){t=s.util.object.clone(t,!0);for(var i=e.split("\n"),r=-1,n={},o=[],a=0;a<i.length;a++)if(t[a])for(var l=0;l<i[a].length;l++){r++;var c=t[a][l];c&&(s.util.hasStyleChanged(n,c,!0)?o.push({start:r,end:r+1,style:c}):o[o.length-1].end++),n=c||{}}else r+=i[a].length;return o},stylesFromArray:function(t,e){if(!Array.isArray(t))return t;for(var i=e.split("\n"),r=-1,n=0,o={},a=0;a<i.length;a++)for(var s=0;s<i[a].length;s++)r++,t[n]&&t[n].start<=r&&r<t[n].end&&(o[a]=o[a]||{},o[a][s]=Object.assign({},t[n].style),r===t[n].end-1&&n++);return o}},function(){var t=Array.prototype.join,e={m:2,l:2,h:1,v:1,c:6,s:4,q:4,t:2,a:7},i={m:"l",M:"L"};function r(t,e,i,r,n,o,a,l,c,h,u){var d=s.util.cos(t),p=s.util.sin(t),f=s.util.cos(e),g=s.util.sin(e),m=i*n*f-r*o*g+a,v=r*n*f+i*o*g+l;return["C",h+c*(-i*n*p-r*o*d),u+c*(-r*n*p+i*o*d),m+c*(i*n*g+r*o*f),v+c*(r*n*g-i*o*f),m,v]}function n(t,e,i,r){var n=Math.atan2(e,t),o=Math.atan2(r,i);return o>=n?o-n:2*Math.PI-(n-o)}function o(t,e,i){for(var o=i[1],a=i[2],l=i[3],c=i[4],h=i[5],u=function(t,e,i,o,a,l,c){var h=Math.PI,u=c*h/180,d=s.util.sin(u),p=s.util.cos(u),f=0,g=0,m=-p*t*.5-d*e*.5,v=-p*e*.5+d*t*.5,b=(i=Math.abs(i))*i,y=(o=Math.abs(o))*o,x=v*v,w=m*m,_=b*y-b*x-y*w,S=0;if(_<0){var C=Math.sqrt(1-_/(b*y));i*=C,o*=C}else S=(a===l?-1:1)*Math.sqrt(_/(b*x+y*w));var O=S*i*v/o,k=-S*o*m/i,T=p*O-d*k+.5*t,E=d*O+p*k+.5*e,P=n(1,0,(m-O)/i,(v-k)/o),M=n((m-O)/i,(v-k)/o,(-m-O)/i,(-v-k)/o);0===l&&M>0?M-=2*h:1===l&&M<0&&(M+=2*h);for(var A=Math.ceil(Math.abs(M/h*2)),I=[],j=M/A,D=8/3*Math.sin(j/4)*Math.sin(j/4)/Math.sin(j/2),R=P+j,L=0;L<A;L++)I[L]=r(P,R,p,d,i,o,T,E,D,f,g),f=I[L][5],g=I[L][6],P=R,R+=j;return I}(i[6]-t,i[7]-e,o,a,c,h,l),d=0,p=u.length;d<p;d++)u[d][1]+=t,u[d][2]+=e,u[d][3]+=t,u[d][4]+=e,u[d][5]+=t,u[d][6]+=e;return u}function a(t,e,i,r){return Math.sqrt((i-t)*(i-t)+(r-e)*(r-e))}function l(t,e,i,r,n,o,a,s){return function(l){var c=function(t){return t*t*t}(l),h=function(t){return 3*t*t*(1-t)}(l),u=function(t){return 3*t*(1-t)*(1-t)}(l),d=function(t){return(1-t)*(1-t)*(1-t)}(l);return{x:a*c+n*h+i*u+t*d,y:s*c+o*h+r*u+e*d}}}function c(t,e,i,r,n,o,a,s){return function(l){var c=1-l,h=3*c*c*(i-t)+6*c*l*(n-i)+3*l*l*(a-n),u=3*c*c*(r-e)+6*c*l*(o-r)+3*l*l*(s-o);return Math.atan2(u,h)}}function h(t,e,i,r,n,o){return function(a){var s=function(t){return t*t}(a),l=function(t){return 2*t*(1-t)}(a),c=function(t){return(1-t)*(1-t)}(a);return{x:n*s+i*l+t*c,y:o*s+r*l+e*c}}}function u(t,e,i,r,n,o){return function(a){var s=1-a,l=2*s*(i-t)+2*a*(n-i),c=2*s*(r-e)+2*a*(o-r);return Math.atan2(c,l)}}function d(t,e,i){var r,n,o={x:e,y:i},s=0;for(n=1;n<=100;n+=1)r=t(n/100),s+=a(o.x,o.y,r.x,r.y),o=r;return s}function p(t){for(var e,i,r,n,o=0,s=t.length,p=0,f=0,g=0,m=0,v=[],b=0;b<s;b++){switch(r={x:p,y:f,command:(e=t[b])[0]},e[0]){case"M":r.length=0,g=p=e[1],m=f=e[2];break;case"L":r.length=a(p,f,e[1],e[2]),p=e[1],f=e[2];break;case"C":i=l(p,f,e[1],e[2],e[3],e[4],e[5],e[6]),n=c(p,f,e[1],e[2],e[3],e[4],e[5],e[6]),r.iterator=i,r.angleFinder=n,r.length=d(i,p,f),p=e[5],f=e[6];break;case"Q":i=h(p,f,e[1],e[2],e[3],e[4]),n=u(p,f,e[1],e[2],e[3],e[4]),r.iterator=i,r.angleFinder=n,r.length=d(i,p,f),p=e[3],f=e[4];break;case"Z":case"z":r.destX=g,r.destY=m,r.length=a(p,f,g,m),p=g,f=m}o+=r.length,v.push(r)}return v.push({length:o,x:p,y:f}),v}s.util.joinPath=function(t){return t.map(function(t){return t.join(" ")}).join(" ")},s.util.parsePath=function(t){var r,n,o,a,l,c=[],h=[],u=s.rePathCommand,d="[-+]?(?:\\d*\\.\\d+|\\d+\\.?)(?:[eE][-+]?\\d+)?\\s*",p="("+d+")"+s.commaWsp,f="([01])"+s.commaWsp+"?",g=new RegExp(p+"?"+p+"?"+p+f+f+p+"?("+d+")","g");if(!t||!t.match)return c;for(var m,v=0,b=(l=t.match(/[mzlhvcsqta][^mzlhvcsqta]*/gi)).length;v<b;v++){a=(r=l[v]).slice(1).trim(),h.length=0;var y=r.charAt(0);if(m=[y],"a"===y.toLowerCase())for(var x;x=g.exec(a);)for(var w=1;w<x.length;w++)h.push(x[w]);else for(;o=u.exec(a);)h.push(o[0]);w=0;for(var _=h.length;w<_;w++)n=parseFloat(h[w]),isNaN(n)||m.push(n);var S=e[y.toLowerCase()],C=i[y]||y;if(m.length-1>S)for(var O=1,k=m.length;O<k;O+=S)c.push([y].concat(m.slice(O,O+S))),y=C;else c.push(m)}return c},s.util.makePathSimpler=function(t){var e,i,r,n,a,s,l=0,c=0,h=t.length,u=0,d=0,p=[];for(i=0;i<h;++i){switch(r=!1,(e=t[i].slice(0))[0]){case"l":e[0]="L",e[1]+=l,e[2]+=c;case"L":l=e[1],c=e[2];break;case"h":e[1]+=l;case"H":e[0]="L",e[2]=c,l=e[1];break;case"v":e[1]+=c;case"V":e[0]="L",c=e[1],e[1]=l,e[2]=c;break;case"m":e[0]="M",e[1]+=l,e[2]+=c;case"M":l=e[1],c=e[2],u=e[1],d=e[2];break;case"c":e[0]="C",e[1]+=l,e[2]+=c,e[3]+=l,e[4]+=c,e[5]+=l,e[6]+=c;case"C":a=e[3],s=e[4],l=e[5],c=e[6];break;case"s":e[0]="S",e[1]+=l,e[2]+=c,e[3]+=l,e[4]+=c;case"S":"C"===n?(a=2*l-a,s=2*c-s):(a=l,s=c),l=e[3],c=e[4],e[0]="C",e[5]=e[3],e[6]=e[4],e[3]=e[1],e[4]=e[2],e[1]=a,e[2]=s,a=e[3],s=e[4];break;case"q":e[0]="Q",e[1]+=l,e[2]+=c,e[3]+=l,e[4]+=c;case"Q":a=e[1],s=e[2],l=e[3],c=e[4];break;case"t":e[0]="T",e[1]+=l,e[2]+=c;case"T":"Q"===n?(a=2*l-a,s=2*c-s):(a=l,s=c),e[0]="Q",l=e[1],c=e[2],e[1]=a,e[2]=s,e[3]=l,e[4]=c;break;case"a":e[0]="A",e[6]+=l,e[7]+=c;case"A":r=!0,p=p.concat(o(l,c,e)),l=e[6],c=e[7];break;case"z":case"Z":l=u,c=d}r||p.push(e),n=e[0]}return p},s.util.getSmoothPathFromPoints=function(t,e){var i,r=[],n=new s.Point(t[0].x,t[0].y),o=new s.Point(t[1].x,t[1].y),a=t.length,l=1,c=0,h=a>2;for(e=e||0,h&&(l=t[2].x<o.x?-1:t[2].x===o.x?0:1,c=t[2].y<o.y?-1:t[2].y===o.y?0:1),r.push(["M",n.x-l*e,n.y-c*e]),i=1;i<a;i++){if(!n.eq(o)){var u=n.midPointFrom(o);r.push(["Q",n.x,n.y,u.x,u.y])}n=t[i],i+1<t.length&&(o=t[i+1])}return h&&(l=n.x>t[i-2].x?1:n.x===t[i-2].x?0:-1,c=n.y>t[i-2].y?1:n.y===t[i-2].y?0:-1),r.push(["L",n.x+l*e,n.y+c*e]),r},s.util.getPathSegmentsInfo=p,s.util.getBoundsOfCurve=function(e,i,r,n,o,a,l,c){var h;if(s.cachesBoundsOfCurve&&(h=t.call(arguments),s.boundsOfCurveCache[h]))return s.boundsOfCurveCache[h];var u,d,p,f,g,m,v,b,y=Math.sqrt,x=Math.min,w=Math.max,_=Math.abs,S=[],C=[[],[]];d=6*e-12*r+6*o,u=-3*e+9*r-9*o+3*l,p=3*r-3*e;for(var O=0;O<2;++O)if(O>0&&(d=6*i-12*n+6*a,u=-3*i+9*n-9*a+3*c,p=3*n-3*i),_(u)<1e-12){if(_(d)<1e-12)continue;0<(f=-p/d)&&f<1&&S.push(f)}else!((v=d*d-4*p*u)<0)&&(0<(g=(-d+(b=y(v)))/(2*u))&&g<1&&S.push(g),0<(m=(-d-b)/(2*u))&&m<1&&S.push(m));for(var k,T,E,P=S.length,M=P;P--;)k=(E=1-(f=S[P]))*E*E*e+3*E*E*f*r+3*E*f*f*o+f*f*f*l,C[0][P]=k,T=E*E*E*i+3*E*E*f*n+3*E*f*f*a+f*f*f*c,C[1][P]=T;C[0][M]=e,C[1][M]=i,C[0][M+1]=l,C[1][M+1]=c;var A=[{x:x.apply(null,C[0]),y:x.apply(null,C[1])},{x:w.apply(null,C[0]),y:w.apply(null,C[1])}];return s.cachesBoundsOfCurve&&(s.boundsOfCurveCache[h]=A),A},s.util.getPointOnPath=function(t,e,i){i||(i=p(t));for(var r=0;e-i[r].length>0&&r<i.length-2;)e-=i[r].length,r++;var n,o=i[r],l=e/o.length,c=o.command,h=t[r];switch(c){case"M":return{x:o.x,y:o.y,angle:0};case"Z":case"z":return(n=new s.Point(o.x,o.y).lerp(new s.Point(o.destX,o.destY),l)).angle=Math.atan2(o.destY-o.y,o.destX-o.x),n;case"L":return(n=new s.Point(o.x,o.y).lerp(new s.Point(h[1],h[2]),l)).angle=Math.atan2(h[2]-o.y,h[1]-o.x),n;case"C":case"Q":return function(t,e){for(var i,r,n,o=0,s=0,l=t.iterator,c={x:t.x,y:t.y},h=.01,u=t.angleFinder;s<e&&h>1e-4;)i=l(o),n=o,(r=a(c.x,c.y,i.x,i.y))+s>e?(o-=h,h/=2):(c=i,o+=h,s+=r);return i.angle=u(n),i}(o,e)}},s.util.transformPath=function(t,e,i){return i&&(e=s.util.multiplyTransformMatrices(e,[1,0,0,1,-i.x,-i.y])),t.map(function(t){for(var i=t.slice(0),r={},n=1;n<t.length-1;n+=2)r.x=t[n],r.y=t[n+1],r=s.util.transformPoint(r,e),i[n]=r.x,i[n+1]=r.y;return i})}}(),function(){var t=Array.prototype.slice;function e(t,e,i){if(t&&0!==t.length){var r=t.length-1,n=e?t[r][e]:t[r];if(e)for(;r--;)i(t[r][e],n)&&(n=t[r][e]);else for(;r--;)i(t[r],n)&&(n=t[r]);return n}}s.util.array={fill:function(t,e){for(var i=t.length;i--;)t[i]=e;return t},invoke:function(e,i){for(var r=t.call(arguments,2),n=[],o=0,a=e.length;o<a;o++)n[o]=r.length?e[o][i].apply(e[o],r):e[o][i].call(e[o]);return n},min:function(t,i){return e(t,i,function(t,e){return t<e})},max:function(t,i){return e(t,i,function(t,e){return t>=e})}}}(),function(){function t(e,i,r){if(r)if(!s.isLikelyNode&&i instanceof Element)e=i;else if(i instanceof Array){e=[];for(var n=0,o=i.length;n<o;n++)e[n]=t({},i[n],r)}else if(i&&"object"==typeof i)for(var a in i)"canvas"===a||"group"===a?e[a]=null:i.hasOwnProperty(a)&&(e[a]=t({},i[a],r));else e=i;else for(var a in i)e[a]=i[a];return e}s.util.object={extend:t,clone:function(e,i){return t({},e,i)}},s.util.object.extend(s.util,s.Observable)}(),function(){function t(t,e){var i=t.charCodeAt(e);if(isNaN(i))return"";if(i<55296||i>57343)return t.charAt(e);if(55296<=i&&i<=56319){if(t.length<=e+1)throw"High surrogate without following low surrogate";var r=t.charCodeAt(e+1);if(56320>r||r>57343)throw"High surrogate without following low surrogate";return t.charAt(e)+t.charAt(e+1)}if(0===e)throw"Low surrogate without preceding high surrogate";var n=t.charCodeAt(e-1);if(55296>n||n>56319)throw"Low surrogate without preceding high surrogate";return!1}s.util.string={camelize:function(t){return t.replace(/-+(.)?/g,function(t,e){return e?e.toUpperCase():""})},capitalize:function(t,e){return t.charAt(0).toUpperCase()+(e?t.slice(1):t.slice(1).toLowerCase())},escapeXml:function(t){return t.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">")},graphemeSplit:function(e){var i,r=0,n=[];for(r=0;r<e.length;r++)!1!==(i=t(e,r))&&n.push(i);return n}}}(),function(){var t=Array.prototype.slice,e=function(){},i=function(){for(var t in{toString:1})if("toString"===t)return!1;return!0}(),r=function(t,e,r){for(var n in e)n in t.prototype&&"function"==typeof t.prototype[n]&&(e[n]+"").indexOf("callSuper")>-1?t.prototype[n]=function(t){return function(){var i=this.constructor.superclass;this.constructor.superclass=r;var n=e[t].apply(this,arguments);if(this.constructor.superclass=i,"initialize"!==t)return n}}(n):t.prototype[n]=e[n],i&&(e.toString!==Object.prototype.toString&&(t.prototype.toString=e.toString),e.valueOf!==Object.prototype.valueOf&&(t.prototype.valueOf=e.valueOf))};function n(){}function o(e){for(var i=null,r=this;r.constructor.superclass;){var n=r.constructor.superclass.prototype[e];if(r[e]!==n){i=n;break}r=r.constructor.superclass.prototype}return i?arguments.length>1?i.apply(this,t.call(arguments,1)):i.call(this):console.log("tried to callSuper "+e+", method not found in prototype chain",this)}s.util.createClass=function(){var i=null,a=t.call(arguments,0);function s(){this.initialize.apply(this,arguments)}"function"==typeof a[0]&&(i=a.shift()),s.superclass=i,s.subclasses=[],i&&(n.prototype=i.prototype,s.prototype=new n,i.subclasses.push(s));for(var l=0,c=a.length;l<c;l++)r(s,a[l],i);return s.prototype.initialize||(s.prototype.initialize=e),s.prototype.constructor=s,s.prototype.callSuper=o,s}}(),function(){var t=!!s.document.createElement("div").attachEvent,e=["touchstart","touchmove","touchend"];s.util.addListener=function(e,i,r,n){e&&e.addEventListener(i,r,!t&&n)},s.util.removeListener=function(e,i,r,n){e&&e.removeEventListener(i,r,!t&&n)},s.util.getPointer=function(t){var e=t.target,i=s.util.getScrollLeftTop(e),r=function(t){var e=t.changedTouches;return e&&e[0]?e[0]:t}(t);return{x:r.clientX+i.left,y:r.clientY+i.top}},s.util.isTouchEvent=function(t){return e.indexOf(t.type)>-1||"touch"===t.pointerType}}(),function(){var t=s.document.createElement("div"),e="string"==typeof t.style.opacity,i="string"==typeof t.style.filter,r=/alpha\s*\(\s*opacity\s*=\s*([^\)]+)\)/,n=function(t){return t};e?n=function(t,e){return t.style.opacity=e,t}:i&&(n=function(t,e){var i=t.style;return t.currentStyle&&!t.currentStyle.hasLayout&&(i.zoom=1),r.test(i.filter)?(e=e>=.9999?"":"alpha(opacity="+100*e+")",i.filter=i.filter.replace(r,e)):i.filter+=" alpha(opacity="+100*e+")",t}),s.util.setStyle=function(t,e){var i=t.style;if(!i)return t;if("string"==typeof e)return t.style.cssText+=";"+e,e.indexOf("opacity")>-1?n(t,e.match(/opacity:\s*(\d?\.?\d*)/)[1]):t;for(var r in e)if("opacity"===r)n(t,e[r]);else{var o="float"===r||"cssFloat"===r?typeof i.styleFloat>"u"?"cssFloat":"styleFloat":r;i.setProperty(o,e[r])}return t}}(),function(){var t,e,i,r,n=Array.prototype.slice,o=function(t){return n.call(t,0)};try{t=o(s.document.childNodes)instanceof Array}catch{}function a(t,e){var i=s.document.createElement(t);for(var r in e)"class"===r?i.className=e[r]:"for"===r?i.htmlFor=e[r]:i.setAttribute(r,e[r]);return i}function l(t){for(var e=0,i=0,r=s.document.documentElement,n=s.document.body||{scrollLeft:0,scrollTop:0};t&&(t.parentNode||t.host)&&((t=t.parentNode||t.host)===s.document?(e=n.scrollLeft||r.scrollLeft||0,i=n.scrollTop||r.scrollTop||0):(e+=t.scrollLeft||0,i+=t.scrollTop||0),1!==t.nodeType||"fixed"!==t.style.position););return{left:e,top:i}}t||(o=function(t){for(var e=new Array(t.length),i=t.length;i--;)e[i]=t[i];return e}),e=s.document.defaultView&&s.document.defaultView.getComputedStyle?function(t,e){var i=s.document.defaultView.getComputedStyle(t,null);return i?i[e]:void 0}:function(t,e){var i=t.style[e];return!i&&t.currentStyle&&(i=t.currentStyle[e]),i},i=s.document.documentElement.style,r="userSelect"in i?"userSelect":"MozUserSelect"in i?"MozUserSelect":"WebkitUserSelect"in i?"WebkitUserSelect":"KhtmlUserSelect"in i?"KhtmlUserSelect":"",s.util.makeElementUnselectable=function(t){return typeof t.onselectstart<"u"&&(t.onselectstart=s.util.falseFunction),r?t.style[r]="none":"string"==typeof t.unselectable&&(t.unselectable="on"),t},s.util.makeElementSelectable=function(t){return typeof t.onselectstart<"u"&&(t.onselectstart=null),r?t.style[r]="":"string"==typeof t.unselectable&&(t.unselectable=""),t},s.util.setImageSmoothing=function(t,e){t.imageSmoothingEnabled=t.imageSmoothingEnabled||t.webkitImageSmoothingEnabled||t.mozImageSmoothingEnabled||t.msImageSmoothingEnabled||t.oImageSmoothingEnabled,t.imageSmoothingEnabled=e},s.util.getById=function(t){return"string"==typeof t?s.document.getElementById(t):t},s.util.toArray=o,s.util.addClass=function(t,e){t&&-1===(" "+t.className+" ").indexOf(" "+e+" ")&&(t.className+=(t.className?" ":"")+e)},s.util.makeElement=a,s.util.wrapElement=function(t,e,i){return"string"==typeof e&&(e=a(e,i)),t.parentNode&&t.parentNode.replaceChild(e,t),e.appendChild(t),e},s.util.getScrollLeftTop=l,s.util.getElementOffset=function(t){var i,r,n=t&&t.ownerDocument,o={left:0,top:0},a={left:0,top:0},s={borderLeftWidth:"left",borderTopWidth:"top",paddingLeft:"left",paddingTop:"top"};if(!n)return a;for(var c in s)a[s[c]]+=parseInt(e(t,c),10)||0;return i=n.documentElement,typeof t.getBoundingClientRect<"u"&&(o=t.getBoundingClientRect()),r=l(t),{left:o.left+r.left-(i.clientLeft||0)+a.left,top:o.top+r.top-(i.clientTop||0)+a.top}},s.util.getNodeCanvas=function(t){var e=s.jsdomImplForWrapper(t);return e._canvas||e._image},s.util.cleanUpJsdomNode=function(t){if(s.isLikelyNode){var e=s.jsdomImplForWrapper(t);e&&(e._image=null,e._canvas=null,e._currentSrc=null,e._attributes=null,e._classList=null)}}}(),function(){function t(){}s.util.request=function(e,i){i||(i={});var r=i.method?i.method.toUpperCase():"GET",n=i.onComplete||function(){},o=new s.window.XMLHttpRequest,a=i.body||i.parameters;return o.onreadystatechange=function(){4===o.readyState&&(n(o),o.onreadystatechange=t)},"GET"===r&&(a=null,"string"==typeof i.parameters&&(e=function(t,e){return t+(/\?/.test(t)?"&":"?")+e}(e,i.parameters))),o.open(r,e,!0),("POST"===r||"PUT"===r)&&o.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),o.send(a),o}}(),s.log=console.log,s.warn=console.warn,function(){var t=s.util.object.extend,e=s.util.object.clone,i=[];function r(){return!1}function n(t,e,i,r){return-i*Math.cos(t/r*(Math.PI/2))+i+e}s.util.object.extend(i,{cancelAll:function(){var t=this.splice(0);return t.forEach(function(t){t.cancel()}),t},cancelByCanvas:function(t){if(!t)return[];var e=this.filter(function(e){return"object"==typeof e.target&&e.target.canvas===t});return e.forEach(function(t){t.cancel()}),e},cancelByTarget:function(t){var e=this.findAnimationsByTarget(t);return e.forEach(function(t){t.cancel()}),e},findAnimationIndex:function(t){return this.indexOf(this.findAnimation(t))},findAnimation:function(t){return this.find(function(e){return e.cancel===t})},findAnimationsByTarget:function(t){return t?this.filter(function(e){return e.target===t}):[]}});var o=s.window.requestAnimationFrame||s.window.webkitRequestAnimationFrame||s.window.mozRequestAnimationFrame||s.window.oRequestAnimationFrame||s.window.msRequestAnimationFrame||function(t){return s.window.setTimeout(t,1e3/60)},a=s.window.cancelAnimationFrame||s.window.clearTimeout;function l(){return o.apply(s.window,arguments)}s.util.animate=function(i){i||(i={});var o,a=!1,c=function(){var t=s.runningAnimations.indexOf(o);return t>-1&&s.runningAnimations.splice(t,1)[0]};return o=t(e(i),{cancel:function(){return a=!0,c()},currentValue:"startValue"in i?i.startValue:0,completionRate:0,durationRate:0}),s.runningAnimations.push(o),l(function(t){var e,s=t||+new Date,h=i.duration||500,u=s+h,d=i.onChange||r,p=i.abort||r,f=i.onComplete||r,g=i.easing||n,m="startValue"in i&&i.startValue.length>0,v="startValue"in i?i.startValue:0,b="endValue"in i?i.endValue:100,y=i.byValue||(m?v.map(function(t,e){return b[e]-v[e]}):b-v);i.onStart&&i.onStart(),function t(i){var r=(e=i||+new Date)>u?h:e-s,n=r/h,x=m?v.map(function(t,e){return g(r,v[e],y[e],h)}):g(r,v,y,h),w=Math.abs(m?(x[0]-v[0])/y[0]:(x-v)/y);if(o.currentValue=m?x.slice():x,o.completionRate=w,o.durationRate=n,!a){if(p(x,w,n))return void c();if(e>u)return o.currentValue=m?b.slice():b,o.completionRate=1,o.durationRate=1,d(m?b.slice():b,1,1),f(b,1,1),void c();d(x,w,n),l(t)}}(s)}),o.cancel},s.util.requestAnimFrame=l,s.util.cancelAnimFrame=function(){return a.apply(s.window,arguments)},s.runningAnimations=i}(),function(){function t(t,e,i){var r="rgba("+parseInt(t[0]+i*(e[0]-t[0]),10)+","+parseInt(t[1]+i*(e[1]-t[1]),10)+","+parseInt(t[2]+i*(e[2]-t[2]),10);return(r+=","+(t&&e?parseFloat(t[3]+i*(e[3]-t[3])):1))+")"}s.util.animateColor=function(e,i,r,n){var o=new s.Color(e).getSource(),a=new s.Color(i).getSource(),l=n.onComplete,c=n.onChange;return n=n||{},s.util.animate(s.util.object.extend(n,{duration:r||500,startValue:o,endValue:a,byValue:a,easing:function(e,i,r,o){return t(i,r,n.colorEasing?n.colorEasing(e,o):1-Math.cos(e/o*(Math.PI/2)))},onComplete:function(e,i,r){if(l)return l(t(a,a,0),i,r)},onChange:function(e,i,r){if(c){if(Array.isArray(e))return c(t(e,e,0),i,r);c(e,i,r)}}}))}}(),function(){function t(t,e,i,r){return t<Math.abs(e)?(t=e,r=i/4):r=0===e&&0===t?i/(2*Math.PI)*Math.asin(1):i/(2*Math.PI)*Math.asin(e/t),{a:t,c:e,p:i,s:r}}function e(t,e,i){return t.a*Math.pow(2,10*(e-=1))*Math.sin((e*i-t.s)*(2*Math.PI)/t.p)}function i(t,e,i,n){return i-r(n-t,0,i,n)+e}function r(t,e,i,r){return(t/=r)<1/2.75?i*(7.5625*t*t)+e:t<2/2.75?i*(7.5625*(t-=1.5/2.75)*t+.75)+e:t<2.5/2.75?i*(7.5625*(t-=2.25/2.75)*t+.9375)+e:i*(7.5625*(t-=2.625/2.75)*t+.984375)+e}s.util.ease={easeInQuad:function(t,e,i,r){return i*(t/=r)*t+e},easeOutQuad:function(t,e,i,r){return-i*(t/=r)*(t-2)+e},easeInOutQuad:function(t,e,i,r){return(t/=r/2)<1?i/2*t*t+e:-i/2*(--t*(t-2)-1)+e},easeInCubic:function(t,e,i,r){return i*(t/=r)*t*t+e},easeOutCubic:function(t,e,i,r){return i*((t=t/r-1)*t*t+1)+e},easeInOutCubic:function(t,e,i,r){return(t/=r/2)<1?i/2*t*t*t+e:i/2*((t-=2)*t*t+2)+e},easeInQuart:function(t,e,i,r){return i*(t/=r)*t*t*t+e},easeOutQuart:function(t,e,i,r){return-i*((t=t/r-1)*t*t*t-1)+e},easeInOutQuart:function(t,e,i,r){return(t/=r/2)<1?i/2*t*t*t*t+e:-i/2*((t-=2)*t*t*t-2)+e},easeInQuint:function(t,e,i,r){return i*(t/=r)*t*t*t*t+e},easeOutQuint:function(t,e,i,r){return i*((t=t/r-1)*t*t*t*t+1)+e},easeInOutQuint:function(t,e,i,r){return(t/=r/2)<1?i/2*t*t*t*t*t+e:i/2*((t-=2)*t*t*t*t+2)+e},easeInSine:function(t,e,i,r){return-i*Math.cos(t/r*(Math.PI/2))+i+e},easeOutSine:function(t,e,i,r){return i*Math.sin(t/r*(Math.PI/2))+e},easeInOutSine:function(t,e,i,r){return-i/2*(Math.cos(Math.PI*t/r)-1)+e},easeInExpo:function(t,e,i,r){return 0===t?e:i*Math.pow(2,10*(t/r-1))+e},easeOutExpo:function(t,e,i,r){return t===r?e+i:i*(1-Math.pow(2,-10*t/r))+e},easeInOutExpo:function(t,e,i,r){return 0===t?e:t===r?e+i:(t/=r/2)<1?i/2*Math.pow(2,10*(t-1))+e:i/2*(2-Math.pow(2,-10*--t))+e},easeInCirc:function(t,e,i,r){return-i*(Math.sqrt(1-(t/=r)*t)-1)+e},easeOutCirc:function(t,e,i,r){return i*Math.sqrt(1-(t=t/r-1)*t)+e},easeInOutCirc:function(t,e,i,r){return(t/=r/2)<1?-i/2*(Math.sqrt(1-t*t)-1)+e:i/2*(Math.sqrt(1-(t-=2)*t)+1)+e},easeInElastic:function(i,r,n,o){var a=0;return 0===i?r:1===(i/=o)?r+n:(a||(a=.3*o),-e(t(n,n,a,1.70158),i,o)+r)},easeOutElastic:function(e,i,r,n){var o=0;if(0===e)return i;if(1===(e/=n))return i+r;o||(o=.3*n);var a=t(r,r,o,1.70158);return a.a*Math.pow(2,-10*e)*Math.sin((e*n-a.s)*(2*Math.PI)/a.p)+a.c+i},easeInOutElastic:function(i,r,n,o){var a=0;if(0===i)return r;if(2==(i/=o/2))return r+n;a||(a=o*(.3*1.5));var s=t(n,n,a,1.70158);return i<1?-.5*e(s,i,o)+r:s.a*Math.pow(2,-10*(i-=1))*Math.sin((i*o-s.s)*(2*Math.PI)/s.p)*.5+s.c+r},easeInBack:function(t,e,i,r,n){return void 0===n&&(n=1.70158),i*(t/=r)*t*((n+1)*t-n)+e},easeOutBack:function(t,e,i,r,n){return void 0===n&&(n=1.70158),i*((t=t/r-1)*t*((n+1)*t+n)+1)+e},easeInOutBack:function(t,e,i,r,n){return void 0===n&&(n=1.70158),(t/=r/2)<1?i/2*(t*t*((1+(n*=1.525))*t-n))+e:i/2*((t-=2)*t*((1+(n*=1.525))*t+n)+2)+e},easeInBounce:i,easeOutBounce:r,easeInOutBounce:function(t,e,n,o){return t<o/2?.5*i(2*t,0,n,o)+e:.5*r(2*t-o,0,n,o)+.5*n+e}}}(),function(t){var e=t.fabric||(t.fabric={}),i=e.util.object.extend,r=e.util.object.clone,n=e.util.toFixed,o=e.util.parseUnit,a=e.util.multiplyTransformMatrices,s={cx:"left",x:"left",r:"radius",cy:"top",y:"top",display:"visible",visibility:"visible",transform:"transformMatrix","fill-opacity":"fillOpacity","fill-rule":"fillRule","font-family":"fontFamily","font-size":"fontSize","font-style":"fontStyle","font-weight":"fontWeight","letter-spacing":"charSpacing","paint-order":"paintFirst","stroke-dasharray":"strokeDashArray","stroke-dashoffset":"strokeDashOffset","stroke-linecap":"strokeLineCap","stroke-linejoin":"strokeLineJoin","stroke-miterlimit":"strokeMiterLimit","stroke-opacity":"strokeOpacity","stroke-width":"strokeWidth","text-decoration":"textDecoration","text-anchor":"textAnchor",opacity:"opacity","clip-path":"clipPath","clip-rule":"clipRule","vector-effect":"strokeUniform","image-rendering":"imageSmoothing"},l={stroke:"strokeOpacity",fill:"fillOpacity"},c="font-size",h="clip-path";function u(t){return t in s?s[t]:t}function d(t,i,r,n){var s,l=Array.isArray(i);if("fill"!==t&&"stroke"!==t||"none"!==i){if("strokeUniform"===t)return"non-scaling-stroke"===i;if("strokeDashArray"===t)i="none"===i?null:i.replace(/,/g," ").split(/\s+/).map(parseFloat);else if("transformMatrix"===t)i=r&&r.transformMatrix?a(r.transformMatrix,e.parseTransformAttribute(i)):e.parseTransformAttribute(i);else if("visible"===t)i="none"!==i&&"hidden"!==i,r&&!1===r.visible&&(i=!1);else if("opacity"===t)i=parseFloat(i),r&&typeof r.opacity<"u"&&(i*=r.opacity);else if("textAnchor"===t)i="start"===i?"left":"end"===i?"right":"center";else if("charSpacing"===t)s=o(i,n)/n*1e3;else if("paintFirst"===t){var c=i.indexOf("fill"),h=i.indexOf("stroke");i="fill",(c>-1&&h>-1&&h<c||-1===c&&h>-1)&&(i="stroke")}else{if("href"===t||"xlink:href"===t||"font"===t)return i;if("imageSmoothing"===t)return"optimizeQuality"===i;s=l?i.map(o):o(i,n)}}else i="";return!l&&isNaN(s)?i:s}function p(t){return new RegExp("^("+t.join("|")+")\\b","i")}function f(t,e){var i,r,n,o,a=[];for(n=0,o=e.length;n<o;n++)i=e[n],r=t.getElementsByTagName(i),a=a.concat(Array.prototype.slice.call(r));return a}function g(t,e){var i,r=!0;return(i=m(t,e.pop()))&&e.length&&(r=function(t,e){for(var i,r=!0;t.parentNode&&1===t.parentNode.nodeType&&e.length;)r&&(i=e.pop()),r=m(t=t.parentNode,i);return 0===e.length}(t,e)),i&&r&&0===e.length}function m(t,e){var i,r,n=t.nodeName,o=t.getAttribute("class"),a=t.getAttribute("id");if(i=new RegExp("^"+n,"i"),e=e.replace(i,""),a&&e.length&&(i=new RegExp("#"+a+"(?![a-zA-Z\\-]+)","i"),e=e.replace(i,"")),o&&e.length)for(r=(o=o.split(" ")).length;r--;)i=new RegExp("\\."+o[r]+"(?![a-zA-Z\\-]+)","i"),e=e.replace(i,"");return 0===e.length}function v(t,e){var i;if(t.getElementById&&(i=t.getElementById(e)),i)return i;var r,n,o,a=t.getElementsByTagName("*");for(n=0,o=a.length;n<o;n++)if(e===(r=a[n]).getAttribute("id"))return r}e.svgValidTagNamesRegEx=p(["path","circle","polygon","polyline","ellipse","rect","line","image","text"]),e.svgViewBoxElementsRegEx=p(["symbol","image","marker","pattern","view","svg"]),e.svgInvalidAncestorsRegEx=p(["pattern","defs","symbol","metadata","clipPath","mask","desc"]),e.svgValidParentsRegEx=p(["symbol","g","a","svg","clipPath","defs"]),e.cssRules={},e.gradientDefs={},e.clipPaths={},e.parseTransformAttribute=function(){function t(t,i,r){t[r]=Math.tan(e.util.degreesToRadians(i[0]))}var i=e.iMatrix,r=e.reNum,n=e.commaWsp,o="(?:(?:(matrix)\\s*\\(\\s*("+r+")"+n+"("+r+")"+n+"("+r+")"+n+"("+r+")"+n+"("+r+")"+n+"("+r+")\\s*\\))|(?:(translate)\\s*\\(\\s*("+r+")(?:"+n+"("+r+"))?\\s*\\))|(?:(scale)\\s*\\(\\s*("+r+")(?:"+n+"("+r+"))?\\s*\\))|(?:(rotate)\\s*\\(\\s*("+r+")(?:"+n+"("+r+")"+n+"("+r+"))?\\s*\\))|(?:(skewX)\\s*\\(\\s*("+r+")\\s*\\))|(?:(skewY)\\s*\\(\\s*("+r+")\\s*\\)))",a=new RegExp("^\\s*(?:(?:"+o+"(?:"+n+"*"+o+")*)?)\\s*$"),s=new RegExp(o,"g");return function(r){var n=i.concat(),l=[];if(!r||r&&!a.test(r))return n;r.replace(s,function(r){var a=new RegExp(o).exec(r).filter(function(t){return!!t}),s=a[1],c=a.slice(2).map(parseFloat);switch(s){case"translate":!function(t,e){t[4]=e[0],2===e.length&&(t[5]=e[1])}(n,c);break;case"rotate":c[0]=e.util.degreesToRadians(c[0]),function(t,i){var r=e.util.cos(i[0]),n=e.util.sin(i[0]),o=0,a=0;3===i.length&&(o=i[1],a=i[2]),t[0]=r,t[1]=n,t[2]=-n,t[3]=r,t[4]=o-(r*o-n*a),t[5]=a-(n*o+r*a)}(n,c);break;case"scale":!function(t,e){var i=e[0],r=2===e.length?e[1]:e[0];t[0]=i,t[3]=r}(n,c);break;case"skewX":t(n,c,2);break;case"skewY":t(n,c,1);break;case"matrix":n=c}l.push(n.concat()),n=i.concat()});for(var c=l[0];l.length>1;)l.shift(),c=e.util.multiplyTransformMatrices(c,l[0]);return c}}();var b=new RegExp("^\\s*("+e.reNum+"+)\\s*,?\\s*("+e.reNum+"+)\\s*,?\\s*("+e.reNum+"+)\\s*,?\\s*("+e.reNum+"+)\\s*$");function y(t){if(!e.svgViewBoxElementsRegEx.test(t.nodeName))return{};var i,r,n,a,s,l,c=t.getAttribute("viewBox"),h=1,u=1,d=t.getAttribute("width"),p=t.getAttribute("height"),f=t.getAttribute("x")||0,g=t.getAttribute("y")||0,m=t.getAttribute("preserveAspectRatio")||"",v=!c||!(c=c.match(b)),y=!d||!p||"100%"===d||"100%"===p,x=v&&y,w={},_="",S=0,C=0;if(w.width=0,w.height=0,w.toBeParsed=x,v&&(f||g)&&t.parentNode&&"#document"!==t.parentNode.nodeName&&(_=" translate("+o(f)+" "+o(g)+") ",s=(t.getAttribute("transform")||"")+_,t.setAttribute("transform",s),t.removeAttribute("x"),t.removeAttribute("y")),x)return w;if(v)return w.width=o(d),w.height=o(p),w;if(i=-parseFloat(c[1]),r=-parseFloat(c[2]),n=parseFloat(c[3]),a=parseFloat(c[4]),w.minX=i,w.minY=r,w.viewBoxWidth=n,w.viewBoxHeight=a,y?(w.width=n,w.height=a):(w.width=o(d),w.height=o(p),h=w.width/n,u=w.height/a),"none"!==(m=e.util.parsePreserveAspectRatioAttribute(m)).alignX&&("meet"===m.meetOrSlice&&(u=h=h>u?u:h),"slice"===m.meetOrSlice&&(u=h=h>u?h:u),S=w.width-n*h,C=w.height-a*h,"Mid"===m.alignX&&(S/=2),"Mid"===m.alignY&&(C/=2),"Min"===m.alignX&&(S=0),"Min"===m.alignY&&(C=0)),1===h&&1===u&&0===i&&0===r&&0===f&&0===g)return w;if((f||g)&&"#document"!==t.parentNode.nodeName&&(_=" translate("+o(f)+" "+o(g)+") "),s=_+" matrix("+h+" 0 0 "+u+" "+(i*h+S)+" "+(r*u+C)+") ","svg"===t.nodeName){for(l=t.ownerDocument.createElementNS(e.svgNS,"g");t.firstChild;)l.appendChild(t.firstChild);t.appendChild(l)}else(l=t).removeAttribute("x"),l.removeAttribute("y"),s=l.getAttribute("transform")+s;return l.setAttribute("transform",s),w}function x(t,e){var i="xlink:href",r=v(t,e.getAttribute(i).slice(1));if(r&&r.getAttribute(i)&&x(t,r),["gradientTransform","x1","x2","y1","y2","gradientUnits","cx","cy","r","fx","fy"].forEach(function(t){r&&!e.hasAttribute(t)&&r.hasAttribute(t)&&e.setAttribute(t,r.getAttribute(t))}),!e.children.length)for(var n=r.cloneNode(!0);n.firstChild;)e.appendChild(n.firstChild);e.removeAttribute(i)}e.parseSVGDocument=function(t,i,n,o){if(t){!function(t){for(var i=f(t,["use","svg:use"]),r=0;i.length&&r<i.length;){var n=i[r],o=n.getAttribute("xlink:href")||n.getAttribute("href");if(null===o)return;var a,s,l,c,h=o.slice(1),u=n.getAttribute("x")||0,d=n.getAttribute("y")||0,p=v(t,h).cloneNode(!0),g=(p.getAttribute("transform")||"")+" translate("+u+", "+d+")",m=i.length,b=e.svgNS;if(y(p),/^svg$/i.test(p.nodeName)){var x=p.ownerDocument.createElementNS(b,"g");for(s=0,c=(l=p.attributes).length;s<c;s++)a=l.item(s),x.setAttributeNS(b,a.nodeName,a.nodeValue);for(;p.firstChild;)x.appendChild(p.firstChild);p=x}for(s=0,c=(l=n.attributes).length;s<c;s++)"x"!==(a=l.item(s)).nodeName&&"y"!==a.nodeName&&"xlink:href"!==a.nodeName&&"href"!==a.nodeName&&("transform"===a.nodeName?g=a.nodeValue+" "+g:p.setAttribute(a.nodeName,a.nodeValue));p.setAttribute("transform",g),p.setAttribute("instantiated_by_use","1"),p.removeAttribute("id"),n.parentNode.replaceChild(p,n),i.length===m&&r++}}(t);var a,s,l=e.Object.__uid++,c=y(t),h=e.util.toArray(t.getElementsByTagName("*"));if(c.crossOrigin=o&&o.crossOrigin,c.svgUid=l,0===h.length&&e.isLikelyNode){var u=[];for(a=0,s=(h=t.selectNodes('//*[name(.)!="svg"]')).length;a<s;a++)u[a]=h[a];h=u}var d=h.filter(function(t){return y(t),e.svgValidTagNamesRegEx.test(t.nodeName.replace("svg:",""))&&!function(t,e){for(;t&&(t=t.parentNode);)if(t.nodeName&&e.test(t.nodeName.replace("svg:",""))&&!t.getAttribute("instantiated_by_use"))return!0;return!1}(t,e.svgInvalidAncestorsRegEx)});if(!d||d&&!d.length)return void(i&&i([],{}));var p={};h.filter(function(t){return"clipPath"===t.nodeName.replace("svg:","")}).forEach(function(t){var i=t.getAttribute("id");p[i]=e.util.toArray(t.getElementsByTagName("*")).filter(function(t){return e.svgValidTagNamesRegEx.test(t.nodeName.replace("svg:",""))})}),e.gradientDefs[l]=e.getGradientDefs(t),e.cssRules[l]=e.getCSSRules(t),e.clipPaths[l]=p,e.parseElements(d,function(t,r){i&&(i(t,c,r,h),delete e.gradientDefs[l],delete e.cssRules[l],delete e.clipPaths[l])},r(c),n,o)}};var w=new RegExp("(normal|italic)?\\s*(normal|small-caps)?\\s*(normal|bold|bolder|lighter|100|200|300|400|500|600|700|800|900)?\\s*("+e.reNum+"(?:px|cm|mm|em|pt|pc|in)*)(?:\\/(normal|"+e.reNum+"))?\\s+(.*)");i(e,{parseFontDeclaration:function(t,e){var i=t.match(w);if(i){var r=i[1],n=i[3],a=i[4],s=i[5],l=i[6];r&&(e.fontStyle=r),n&&(e.fontWeight=isNaN(parseFloat(n))?n:parseFloat(n)),a&&(e.fontSize=o(a)),l&&(e.fontFamily=l),s&&(e.lineHeight="normal"===s?1:s)}},getGradientDefs:function(t){var e,i=f(t,["linearGradient","radialGradient","svg:linearGradient","svg:radialGradient"]),r=0,n={};for(r=i.length;r--;)(e=i[r]).getAttribute("xlink:href")&&x(t,e),n[e.getAttribute("id")]=e;return n},parseAttributes:function(t,r,a){if(t){var s,p,f,m={};typeof a>"u"&&(a=t.getAttribute("svgUid")),t.parentNode&&e.svgValidParentsRegEx.test(t.parentNode.nodeName)&&(m=e.parseAttributes(t.parentNode,r,a));var v=r.reduce(function(e,i){return(s=t.getAttribute(i))&&(e[i]=s),e},{}),b=i(function(t,i){var r={};for(var n in e.cssRules[i])if(g(t,n.split(" ")))for(var o in e.cssRules[i][n])r[o]=e.cssRules[i][n][o];return r}(t,a),e.parseStyleAttribute(t));v=i(v,b),b[h]&&t.setAttribute(h,b[h]),p=f=m.fontSize||e.Text.DEFAULT_SVG_FONT_SIZE,v[c]&&(v[c]=p=o(v[c],f));var y,x,w={};for(var _ in v)x=d(y=u(_),v[_],m,p),w[y]=x;w&&w.font&&e.parseFontDeclaration(w.font,w);var S=i(m,w);return e.svgValidParentsRegEx.test(t.nodeName)?S:function(t){for(var i in l)if(!(typeof t[l[i]]>"u"||""===t[i])){if(typeof t[i]>"u"){if(!e.Object.prototype[i])continue;t[i]=e.Object.prototype[i]}if(0!==t[i].indexOf("url(")){var r=new e.Color(t[i]);t[i]=r.setAlpha(n(r.getAlpha()*t[l[i]],2)).toRgba()}}return t}(S)}},parseElements:function(t,i,r,n,o){new e.ElementsParser(t,i,r,n,o).parse()},parseStyleAttribute:function(t){var e={},i=t.getAttribute("style");return i&&("string"==typeof i?function(t,e){var i,r;t.replace(/;\s*$/,"").split(";").forEach(function(t){var n=t.split(":");i=n[0].trim().toLowerCase(),r=n[1].trim(),e[i]=r})}(i,e):function(t,e){var i,r;for(var n in t)typeof t[n]>"u"||(i=n.toLowerCase(),r=t[n],e[i]=r)}(i,e)),e},parsePointsAttribute:function(t){if(!t)return null;var e,i,r=[];for(e=0,i=(t=(t=t.replace(/,/g," ").trim()).split(/\s+/)).length;e<i;e+=2)r.push({x:parseFloat(t[e]),y:parseFloat(t[e+1])});return r},getCSSRules:function(t){var i,r,n=t.getElementsByTagName("style"),o={};for(i=0,r=n.length;i<r;i++){var a=n[i].textContent;""!==(a=a.replace(/\/\*[\s\S]*?\*\//g,"")).trim()&&a.split("}").filter(function(t){return t.trim()}).forEach(function(t){var n=t.split("{"),a={},s=n[1].trim().split(";").filter(function(t){return t.trim()});for(i=0,r=s.length;i<r;i++){var l=s[i].split(":"),c=l[0].trim(),h=l[1].trim();a[c]=h}(t=n[0].trim()).split(",").forEach(function(t){""!==(t=t.replace(/^svg/i,"").trim())&&(o[t]?e.util.object.extend(o[t],a):o[t]=e.util.object.clone(a))})})}return o},loadSVGFromURL:function(t,i,r,n){t=t.replace(/^\n\s*/,"").trim(),new e.util.request(t,{method:"get",onComplete:function(t){var o=t.responseXML;if(!o||!o.documentElement)return i&&i(null),!1;e.parseSVGDocument(o.documentElement,function(t,e,r,n){i&&i(t,e,r,n)},r,n)}})},loadSVGFromString:function(t,i,r,n){var o=(new e.window.DOMParser).parseFromString(t.trim(),"text/xml");e.parseSVGDocument(o.documentElement,function(t,e,r,n){i(t,e,r,n)},r,n)}})}(t),s.ElementsParser=function(t,e,i,r,n,o){this.elements=t,this.callback=e,this.options=i,this.reviver=r,this.svgUid=i&&i.svgUid||0,this.parsingOptions=n,this.regexUrl=/^url\(['"]?#([^'"]+)['"]?\)/g,this.doc=o},function(t){t.parse=function(){this.instances=new Array(this.elements.length),this.numElements=this.elements.length,this.createObjects()},t.createObjects=function(){var t=this;this.elements.forEach(function(e,i){e.setAttribute("svgUid",t.svgUid),t.createObject(e,i)})},t.findTag=function(t){return s[s.util.string.capitalize(t.tagName.replace("svg:",""))]},t.createObject=function(t,e){var i=this.findTag(t);if(i&&i.fromElement)try{i.fromElement(t,this.createCallback(e,t),this.options)}catch(t){s.log(t)}else this.checkIfDone()},t.createCallback=function(t,e){var i=this;return function(r){var n;i.resolveGradient(r,e,"fill"),i.resolveGradient(r,e,"stroke"),r instanceof s.Image&&r._originalElement&&(n=r.parsePreserveAspectRatioAttribute(e)),r._removeTransformMatrix(n),i.resolveClipPath(r,e),i.reviver&&i.reviver(e,r),i.instances[t]=r,i.checkIfDone()}},t.extractPropertyDefinition=function(t,e,i){var r=t[e],n=this.regexUrl;if(n.test(r)){n.lastIndex=0;var o=n.exec(r)[1];return n.lastIndex=0,s[i][this.svgUid][o]}},t.resolveGradient=function(t,e,i){var r=this.extractPropertyDefinition(t,i,"gradientDefs");if(r){var n=e.getAttribute(i+"-opacity"),o=s.Gradient.fromElement(r,t,n,this.options);t.set(i,o)}},t.createClipPathCallback=function(t,e){return function(t){t._removeTransformMatrix(),t.fillRule=t.clipRule,e.push(t)}},t.resolveClipPath=function(t,e){var i,r,n,o,a=this.extractPropertyDefinition(t,"clipPath","clipPaths");if(a){n=[],r=s.util.invertTransform(t.calcTransformMatrix());for(var l=a[0].parentNode,c=e;c.parentNode&&c.getAttribute("clip-path")!==t.clipPath;)c=c.parentNode;c.parentNode.appendChild(l);for(var h=0;h<a.length;h++)i=a[h],this.findTag(i).fromElement(i,this.createClipPathCallback(t,n),this.options);a=1===n.length?n[0]:new s.Group(n),o=s.util.multiplyTransformMatrices(r,a.calcTransformMatrix()),a.clipPath&&this.resolveClipPath(a,c);var u=s.util.qrDecompose(o);a.flipX=!1,a.flipY=!1,a.set("scaleX",u.scaleX),a.set("scaleY",u.scaleY),a.angle=u.angle,a.skewX=u.skewX,a.skewY=0,a.setPositionByOrigin({x:u.translateX,y:u.translateY},"center","center"),t.clipPath=a}else delete t.clipPath},t.checkIfDone=function(){0===--this.numElements&&(this.instances=this.instances.filter(function(t){return null!=t}),this.callback(this.instances,this.elements))}}(s.ElementsParser.prototype),function(t){var e=t.fabric||(t.fabric={});function i(t,e){this.x=t,this.y=e}e.Point?e.warn("fabric.Point is already defined"):(e.Point=i,i.prototype={type:"point",constructor:i,add:function(t){return new i(this.x+t.x,this.y+t.y)},addEquals:function(t){return this.x+=t.x,this.y+=t.y,this},scalarAdd:function(t){return new i(this.x+t,this.y+t)},scalarAddEquals:function(t){return this.x+=t,this.y+=t,this},subtract:function(t){return new i(this.x-t.x,this.y-t.y)},subtractEquals:function(t){return this.x-=t.x,this.y-=t.y,this},scalarSubtract:function(t){return new i(this.x-t,this.y-t)},scalarSubtractEquals:function(t){return this.x-=t,this.y-=t,this},multiply:function(t){return new i(this.x*t,this.y*t)},multiplyEquals:function(t){return this.x*=t,this.y*=t,this},divide:function(t){return new i(this.x/t,this.y/t)},divideEquals:function(t){return this.x/=t,this.y/=t,this},eq:function(t){return this.x===t.x&&this.y===t.y},lt:function(t){return this.x<t.x&&this.y<t.y},lte:function(t){return this.x<=t.x&&this.y<=t.y},gt:function(t){return this.x>t.x&&this.y>t.y},gte:function(t){return this.x>=t.x&&this.y>=t.y},lerp:function(t,e){return typeof e>"u"&&(e=.5),e=Math.max(Math.min(1,e),0),new i(this.x+(t.x-this.x)*e,this.y+(t.y-this.y)*e)},distanceFrom:function(t){var e=this.x-t.x,i=this.y-t.y;return Math.sqrt(e*e+i*i)},midPointFrom:function(t){return this.lerp(t)},min:function(t){return new i(Math.min(this.x,t.x),Math.min(this.y,t.y))},max:function(t){return new i(Math.max(this.x,t.x),Math.max(this.y,t.y))},toString:function(){return this.x+","+this.y},setXY:function(t,e){return this.x=t,this.y=e,this},setX:function(t){return this.x=t,this},setY:function(t){return this.y=t,this},setFromPoint:function(t){return this.x=t.x,this.y=t.y,this},swap:function(t){var e=this.x,i=this.y;this.x=t.x,this.y=t.y,t.x=e,t.y=i},clone:function(){return new i(this.x,this.y)}})}(t),function(t){var e=t.fabric||(t.fabric={});function i(t){this.status=t,this.points=[]}e.Intersection?e.warn("fabric.Intersection is already defined"):(e.Intersection=i,e.Intersection.prototype={constructor:i,appendPoint:function(t){return this.points.push(t),this},appendPoints:function(t){return this.points=this.points.concat(t),this}},e.Intersection.intersectLineLine=function(t,r,n,o){var a,s=(o.x-n.x)*(t.y-n.y)-(o.y-n.y)*(t.x-n.x),l=(r.x-t.x)*(t.y-n.y)-(r.y-t.y)*(t.x-n.x),c=(o.y-n.y)*(r.x-t.x)-(o.x-n.x)*(r.y-t.y);if(0!==c){var h=s/c,u=l/c;0<=h&&h<=1&&0<=u&&u<=1?(a=new i("Intersection")).appendPoint(new e.Point(t.x+h*(r.x-t.x),t.y+h*(r.y-t.y))):a=new i}else a=new i(0===s||0===l?"Coincident":"Parallel");return a},e.Intersection.intersectLinePolygon=function(t,e,r){var n,o,a,s,l=new i,c=r.length;for(s=0;s<c;s++)n=r[s],o=r[(s+1)%c],a=i.intersectLineLine(t,e,n,o),l.appendPoints(a.points);return l.points.length>0&&(l.status="Intersection"),l},e.Intersection.intersectPolygonPolygon=function(t,e){var r,n=new i,o=t.length;for(r=0;r<o;r++){var a=t[r],s=t[(r+1)%o],l=i.intersectLinePolygon(a,s,e);n.appendPoints(l.points)}return n.points.length>0&&(n.status="Intersection"),n},e.Intersection.intersectPolygonRectangle=function(t,r,n){var o=r.min(n),a=r.max(n),s=new e.Point(a.x,o.y),l=new e.Point(o.x,a.y),c=i.intersectLinePolygon(o,s,t),h=i.intersectLinePolygon(s,a,t),u=i.intersectLinePolygon(a,l,t),d=i.intersectLinePolygon(l,o,t),p=new i;return p.appendPoints(c.points),p.appendPoints(h.points),p.appendPoints(u.points),p.appendPoints(d.points),p.points.length>0&&(p.status="Intersection"),p})}(t),function(t){var e=t.fabric||(t.fabric={});function i(t){t?this._tryParsingColor(t):this.setSource([0,0,0,1])}function r(t,e,i){return i<0&&(i+=1),i>1&&(i-=1),i<1/6?t+6*(e-t)*i:i<.5?e:i<2/3?t+(e-t)*(2/3-i)*6:t}e.Color?e.warn("fabric.Color is already defined."):(e.Color=i,e.Color.prototype={_tryParsingColor:function(t){var e;t in i.colorNameMap&&(t=i.colorNameMap[t]),"transparent"===t&&(e=[255,255,255,0]),e||(e=i.sourceFromHex(t)),e||(e=i.sourceFromRgb(t)),e||(e=i.sourceFromHsl(t)),e||(e=[0,0,0,1]),e&&this.setSource(e)},_rgbToHsl:function(t,i,r){t/=255,i/=255,r/=255;var n,o,a,s=e.util.array.max([t,i,r]),l=e.util.array.min([t,i,r]);if(a=(s+l)/2,s===l)n=o=0;else{var c=s-l;switch(o=a>.5?c/(2-s-l):c/(s+l),s){case t:n=(i-r)/c+(i<r?6:0);break;case i:n=(r-t)/c+2;break;case r:n=(t-i)/c+4}n/=6}return[Math.round(360*n),Math.round(100*o),Math.round(100*a)]},getSource:function(){return this._source},setSource:function(t){this._source=t},toRgb:function(){var t=this.getSource();return"rgb("+t[0]+","+t[1]+","+t[2]+")"},toRgba:function(){var t=this.getSource();return"rgba("+t[0]+","+t[1]+","+t[2]+","+t[3]+")"},toHsl:function(){var t=this.getSource(),e=this._rgbToHsl(t[0],t[1],t[2]);return"hsl("+e[0]+","+e[1]+"%,"+e[2]+"%)"},toHsla:function(){var t=this.getSource(),e=this._rgbToHsl(t[0],t[1],t[2]);return"hsla("+e[0]+","+e[1]+"%,"+e[2]+"%,"+t[3]+")"},toHex:function(){var t,e,i,r=this.getSource();return t=1===(t=r[0].toString(16)).length?"0"+t:t,e=1===(e=r[1].toString(16)).length?"0"+e:e,i=1===(i=r[2].toString(16)).length?"0"+i:i,t.toUpperCase()+e.toUpperCase()+i.toUpperCase()},toHexa:function(){var t,e=this.getSource();return t=1===(t=(t=Math.round(255*e[3])).toString(16)).length?"0"+t:t,this.toHex()+t.toUpperCase()},getAlpha:function(){return this.getSource()[3]},setAlpha:function(t){var e=this.getSource();return e[3]=t,this.setSource(e),this},toGrayscale:function(){var t=this.getSource(),e=parseInt((.3*t[0]+.59*t[1]+.11*t[2]).toFixed(0),10),i=t[3];return this.setSource([e,e,e,i]),this},toBlackWhite:function(t){var e=this.getSource(),i=(.3*e[0]+.59*e[1]+.11*e[2]).toFixed(0),r=e[3];return t=t||127,i=Number(i)<Number(t)?0:255,this.setSource([i,i,i,r]),this},overlayWith:function(t){t instanceof i||(t=new i(t));var e,r=[],n=this.getAlpha(),o=this.getSource(),a=t.getSource();for(e=0;e<3;e++)r.push(Math.round(.5*o[e]+.5*a[e]));return r[3]=n,this.setSource(r),this}},e.Color.reRGBa=/^rgba?\(\s*(\d{1,3}(?:\.\d+)?\%?)\s*,\s*(\d{1,3}(?:\.\d+)?\%?)\s*,\s*(\d{1,3}(?:\.\d+)?\%?)\s*(?:\s*,\s*((?:\d*\.?\d+)?)\s*)?\)$/i,e.Color.reHSLa=/^hsla?\(\s*(\d{1,3})\s*,\s*(\d{1,3}\%)\s*,\s*(\d{1,3}\%)\s*(?:\s*,\s*(\d+(?:\.\d+)?)\s*)?\)$/i,e.Color.reHex=/^#?([0-9a-f]{8}|[0-9a-f]{6}|[0-9a-f]{4}|[0-9a-f]{3})$/i,e.Color.colorNameMap={aliceblue:"#F0F8FF",antiquewhite:"#FAEBD7",aqua:"#00FFFF",aquamarine:"#7FFFD4",azure:"#F0FFFF",beige:"#F5F5DC",bisque:"#FFE4C4",black:"#000000",blanchedalmond:"#FFEBCD",blue:"#0000FF",blueviolet:"#8A2BE2",brown:"#A52A2A",burlywood:"#DEB887",cadetblue:"#5F9EA0",chartreuse:"#7FFF00",chocolate:"#D2691E",coral:"#FF7F50",cornflowerblue:"#6495ED",cornsilk:"#FFF8DC",crimson:"#DC143C",cyan:"#00FFFF",darkblue:"#00008B",darkcyan:"#008B8B",darkgoldenrod:"#B8860B",darkgray:"#A9A9A9",darkgrey:"#A9A9A9",darkgreen:"#006400",darkkhaki:"#BDB76B",darkmagenta:"#8B008B",darkolivegreen:"#556B2F",darkorange:"#FF8C00",darkorchid:"#9932CC",darkred:"#8B0000",darksalmon:"#E9967A",darkseagreen:"#8FBC8F",darkslateblue:"#483D8B",darkslategray:"#2F4F4F",darkslategrey:"#2F4F4F",darkturquoise:"#00CED1",darkviolet:"#9400D3",deeppink:"#FF1493",deepskyblue:"#00BFFF",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1E90FF",firebrick:"#B22222",floralwhite:"#FFFAF0",forestgreen:"#228B22",fuchsia:"#FF00FF",gainsboro:"#DCDCDC",ghostwhite:"#F8F8FF",gold:"#FFD700",goldenrod:"#DAA520",gray:"#808080",grey:"#808080",green:"#008000",greenyellow:"#ADFF2F",honeydew:"#F0FFF0",hotpink:"#FF69B4",indianred:"#CD5C5C",indigo:"#4B0082",ivory:"#FFFFF0",khaki:"#F0E68C",lavender:"#E6E6FA",lavenderblush:"#FFF0F5",lawngreen:"#7CFC00",lemonchiffon:"#FFFACD",lightblue:"#ADD8E6",lightcoral:"#F08080",lightcyan:"#E0FFFF",lightgoldenrodyellow:"#FAFAD2",lightgray:"#D3D3D3",lightgrey:"#D3D3D3",lightgreen:"#90EE90",lightpink:"#FFB6C1",lightsalmon:"#FFA07A",lightseagreen:"#20B2AA",lightskyblue:"#87CEFA",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#B0C4DE",lightyellow:"#FFFFE0",lime:"#00FF00",limegreen:"#32CD32",linen:"#FAF0E6",magenta:"#FF00FF",maroon:"#800000",mediumaquamarine:"#66CDAA",mediumblue:"#0000CD",mediumorchid:"#BA55D3",mediumpurple:"#9370DB",mediumseagreen:"#3CB371",mediumslateblue:"#7B68EE",mediumspringgreen:"#00FA9A",mediumturquoise:"#48D1CC",mediumvioletred:"#C71585",midnightblue:"#191970",mintcream:"#F5FFFA",mistyrose:"#FFE4E1",moccasin:"#FFE4B5",navajowhite:"#FFDEAD",navy:"#000080",oldlace:"#FDF5E6",olive:"#808000",olivedrab:"#6B8E23",orange:"#FFA500",orangered:"#FF4500",orchid:"#DA70D6",palegoldenrod:"#EEE8AA",palegreen:"#98FB98",paleturquoise:"#AFEEEE",palevioletred:"#DB7093",papayawhip:"#FFEFD5",peachpuff:"#FFDAB9",peru:"#CD853F",pink:"#FFC0CB",plum:"#DDA0DD",powderblue:"#B0E0E6",purple:"#800080",rebeccapurple:"#663399",red:"#FF0000",rosybrown:"#BC8F8F",royalblue:"#4169E1",saddlebrown:"#8B4513",salmon:"#FA8072",sandybrown:"#F4A460",seagreen:"#2E8B57",seashell:"#FFF5EE",sienna:"#A0522D",silver:"#C0C0C0",skyblue:"#87CEEB",slateblue:"#6A5ACD",slategray:"#708090",slategrey:"#708090",snow:"#FFFAFA",springgreen:"#00FF7F",steelblue:"#4682B4",tan:"#D2B48C",teal:"#008080",thistle:"#D8BFD8",tomato:"#FF6347",turquoise:"#40E0D0",violet:"#EE82EE",wheat:"#F5DEB3",white:"#FFFFFF",whitesmoke:"#F5F5F5",yellow:"#FFFF00",yellowgreen:"#9ACD32"},e.Color.fromRgb=function(t){return i.fromSource(i.sourceFromRgb(t))},e.Color.sourceFromRgb=function(t){var e=t.match(i.reRGBa);if(e){var r=parseInt(e[1],10)/(/%$/.test(e[1])?100:1)*(/%$/.test(e[1])?255:1),n=parseInt(e[2],10)/(/%$/.test(e[2])?100:1)*(/%$/.test(e[2])?255:1),o=parseInt(e[3],10)/(/%$/.test(e[3])?100:1)*(/%$/.test(e[3])?255:1);return[parseInt(r,10),parseInt(n,10),parseInt(o,10),e[4]?parseFloat(e[4]):1]}},e.Color.fromRgba=i.fromRgb,e.Color.fromHsl=function(t){return i.fromSource(i.sourceFromHsl(t))},e.Color.sourceFromHsl=function(t){var e=t.match(i.reHSLa);if(e){var n,o,a,s=(parseFloat(e[1])%360+360)%360/360,l=parseFloat(e[2])/(/%$/.test(e[2])?100:1),c=parseFloat(e[3])/(/%$/.test(e[3])?100:1);if(0===l)n=o=a=c;else{var h=c<=.5?c*(l+1):c+l-c*l,u=2*c-h;n=r(u,h,s+1/3),o=r(u,h,s),a=r(u,h,s-1/3)}return[Math.round(255*n),Math.round(255*o),Math.round(255*a),e[4]?parseFloat(e[4]):1]}},e.Color.fromHsla=i.fromHsl,e.Color.fromHex=function(t){return i.fromSource(i.sourceFromHex(t))},e.Color.sourceFromHex=function(t){if(t.match(i.reHex)){var e=t.slice(t.indexOf("#")+1),r=3===e.length||4===e.length,n=8===e.length||4===e.length,o=r?e.charAt(0)+e.charAt(0):e.substring(0,2),a=r?e.charAt(1)+e.charAt(1):e.substring(2,4),s=r?e.charAt(2)+e.charAt(2):e.substring(4,6),l=n?r?e.charAt(3)+e.charAt(3):e.substring(6,8):"FF";return[parseInt(o,16),parseInt(a,16),parseInt(s,16),parseFloat((parseInt(l,16)/255).toFixed(2))]}},e.Color.fromSource=function(t){var e=new i;return e.setSource(t),e})}(t),function(t){var e=t.fabric||(t.fabric={}),i=["e","se","s","sw","w","nw","n","ne","e"],r=["ns","nesw","ew","nwse"],n={},o="left",a="top",s="right",l="bottom",c="center",h={top:l,bottom:a,left:s,right:o,center:c},u=e.util.radiansToDegrees,d=Math.sign||function(t){return(t>0)-(t<0)||+t};function p(t,e){var i=t.angle+u(Math.atan2(e.y,e.x))+360;return Math.round(i%360/45)}function f(t,i){var r=i.transform.target,n=r.canvas,o=e.util.object.clone(i);o.target=r,n&&n.fire("object:"+t,o),r.fire(t,i)}function g(t,e){var i=e.canvas,r=t[i.uniScaleKey];return i.uniformScaling&&!r||!i.uniformScaling&&r}function m(t){return t.originX===c&&t.originY===c}function v(t,e,i){var r=t.lockScalingX,n=t.lockScalingY;return!!(r&&n||!e&&(r||n)&&i||r&&"x"===e||n&&"y"===e)}function b(t,e,i,r){return{e:t,transform:e,pointer:{x:i,y:r}}}function y(t){return function(e,i,r,n){var o=i.target,a=o.getCenterPoint(),s=o.translateToOriginPoint(a,i.originX,i.originY),l=t(e,i,r,n);return o.setPositionByOrigin(s,i.originX,i.originY),l}}function x(t,e){return function(i,r,n,o){var a=e(i,r,n,o);return a&&f(t,b(i,r,n,o)),a}}function w(t,i,r,n,o){var a=t.target,s=a.controls[t.corner],l=a.canvas.getZoom(),c=a.padding/l,h=a.toLocalPoint(new e.Point(n,o),i,r);return h.x>=c&&(h.x-=c),h.x<=-c&&(h.x+=c),h.y>=c&&(h.y-=c),h.y<=c&&(h.y+=c),h.x-=s.offsetX,h.y-=s.offsetY,h}function _(t){return t.flipX!==t.flipY}function S(t,e,i,r,n){if(0!==t[e]){var o=n/t._getTransformedDimensions()[r]*t[i];t.set(i,o)}}function C(t,e,i,r){var n,c=e.target,h=c._getTransformedDimensions(0,c.skewY),d=w(e,e.originX,e.originY,i,r),p=Math.abs(2*d.x)-h.x,f=c.skewX;p<2?n=0:(n=u(Math.atan2(p/c.scaleX,h.y/c.scaleY)),e.originX===o&&e.originY===l&&(n=-n),e.originX===s&&e.originY===a&&(n=-n),_(c)&&(n=-n));var g=f!==n;if(g){var m=c._getTransformedDimensions().y;c.set("skewX",n),S(c,"skewY","scaleY","y",m)}return g}function O(t,e,i,r){var n,c=e.target,h=c._getTransformedDimensions(c.skewX,0),d=w(e,e.originX,e.originY,i,r),p=Math.abs(2*d.y)-h.y,f=c.skewY;p<2?n=0:(n=u(Math.atan2(p/c.scaleY,h.x/c.scaleX)),e.originX===o&&e.originY===l&&(n=-n),e.originX===s&&e.originY===a&&(n=-n),_(c)&&(n=-n));var g=f!==n;if(g){var m=c._getTransformedDimensions().x;c.set("skewY",n),S(c,"skewX","scaleX","x",m)}return g}function k(t,e,i,r,n){n=n||{};var o,a,s,l,c,u,p=e.target,f=p.lockScalingX,b=p.lockScalingY,y=n.by,x=g(t,p),_=v(p,y,x),S=e.gestureScale;if(_)return!1;if(S)a=e.scaleX*S,s=e.scaleY*S;else{if(o=w(e,e.originX,e.originY,i,r),c="y"!==y?d(o.x):1,u="x"!==y?d(o.y):1,e.signX||(e.signX=c),e.signY||(e.signY=u),p.lockScalingFlip&&(e.signX!==c||e.signY!==u))return!1;if(l=p._getTransformedDimensions(),x&&!y){var C=Math.abs(o.x)+Math.abs(o.y),O=e.original,k=C/(Math.abs(l.x*O.scaleX/p.scaleX)+Math.abs(l.y*O.scaleY/p.scaleY));a=O.scaleX*k,s=O.scaleY*k}else a=Math.abs(o.x*p.scaleX/l.x),s=Math.abs(o.y*p.scaleY/l.y);m(e)&&(a*=2,s*=2),e.signX!==c&&"y"!==y&&(e.originX=h[e.originX],a*=-1,e.signX=c),e.signY!==u&&"x"!==y&&(e.originY=h[e.originY],s*=-1,e.signY=u)}var T=p.scaleX,E=p.scaleY;return y?("x"===y&&p.set("scaleX",a),"y"===y&&p.set("scaleY",s)):(!f&&p.set("scaleX",a),!b&&p.set("scaleY",s)),T!==p.scaleX||E!==p.scaleY}n.scaleCursorStyleHandler=function(t,e,r){var n=g(t,r),o="";if(0!==e.x&&0===e.y?o="x":0===e.x&&0!==e.y&&(o="y"),v(r,o,n))return"not-allowed";var a=p(r,e);return i[a]+"-resize"},n.skewCursorStyleHandler=function(t,e,i){if(0!==e.x&&i.lockSkewingY||0!==e.y&&i.lockSkewingX)return"not-allowed";var n=p(i,e)%4;return r[n]+"-resize"},n.scaleSkewCursorStyleHandler=function(t,e,i){return t[i.canvas.altActionKey]?n.skewCursorStyleHandler(t,e,i):n.scaleCursorStyleHandler(t,e,i)},n.rotationWithSnapping=x("rotating",y(function(t,e,i,r){var n=e,o=n.target,a=o.translateToOriginPoint(o.getCenterPoint(),n.originX,n.originY);if(o.lockRotation)return!1;var s,l=Math.atan2(n.ey-a.y,n.ex-a.x),c=Math.atan2(r-a.y,i-a.x),h=u(c-l+n.theta);if(o.snapAngle>0){var d=o.snapAngle,p=o.snapThreshold||d,f=Math.ceil(h/d)*d,g=Math.floor(h/d)*d;Math.abs(h-g)<p?h=g:Math.abs(h-f)<p&&(h=f)}return h<0&&(h=360+h),h%=360,s=o.angle!==h,o.angle=h,s})),n.scalingEqually=x("scaling",y(function(t,e,i,r){return k(t,e,i,r)})),n.scalingX=x("scaling",y(function(t,e,i,r){return k(t,e,i,r,{by:"x"})})),n.scalingY=x("scaling",y(function(t,e,i,r){return k(t,e,i,r,{by:"y"})})),n.scalingYOrSkewingX=function(t,e,i,r){return t[e.target.canvas.altActionKey]?n.skewHandlerX(t,e,i,r):n.scalingY(t,e,i,r)},n.scalingXOrSkewingY=function(t,e,i,r){return t[e.target.canvas.altActionKey]?n.skewHandlerY(t,e,i,r):n.scalingX(t,e,i,r)},n.changeWidth=x("resizing",y(function(t,e,i,r){var n=e.target,o=w(e,e.originX,e.originY,i,r),a=n.strokeWidth/(n.strokeUniform?n.scaleX:1),s=m(e)?2:1,l=n.width,c=Math.abs(o.x*s/n.scaleX)-a;return n.set("width",Math.max(c,0)),l!==c})),n.skewHandlerX=function(t,e,i,r){var n,l=e.target,h=l.skewX,u=e.originY;return!l.lockSkewingX&&(0===h?n=w(e,c,c,i,r).x>0?o:s:(h>0&&(n=u===a?o:s),h<0&&(n=u===a?s:o),_(l)&&(n=n===o?s:o)),e.originX=n,x("skewing",y(C))(t,e,i,r))},n.skewHandlerY=function(t,e,i,r){var n,s=e.target,h=s.skewY,u=e.originX;return!s.lockSkewingY&&(0===h?n=w(e,c,c,i,r).y>0?a:l:(h>0&&(n=u===o?a:l),h<0&&(n=u===o?l:a),_(s)&&(n=n===a?l:a)),e.originY=n,x("skewing",y(O))(t,e,i,r))},n.dragHandler=function(t,e,i,r){var n=e.target,o=i-e.offsetX,a=r-e.offsetY,s=!n.get("lockMovementX")&&n.left!==o,l=!n.get("lockMovementY")&&n.top!==a;return s&&n.set("left",o),l&&n.set("top",a),(s||l)&&f("moving",b(t,e,i,r)),s||l},n.scaleOrSkewActionName=function(t,e,i){var r=t[i.canvas.altActionKey];return 0===e.x?r?"skewX":"scaleY":0===e.y?r?"skewY":"scaleX":void 0},n.rotationStyleHandler=function(t,e,i){return i.lockRotation?"not-allowed":e.cursorStyle},n.fireEvent=f,n.wrapWithFixedAnchor=y,n.wrapWithFireEvent=x,n.getLocalPoint=w,e.controlsUtils=n}(t),function(t){var e=t.fabric||(t.fabric={}),i=e.util.degreesToRadians,r=e.controlsUtils;r.renderCircleControl=function(t,e,i,r,n){r=r||{};var o,a=this.sizeX||r.cornerSize||n.cornerSize,s=this.sizeY||r.cornerSize||n.cornerSize,l=typeof r.transparentCorners<"u"?r.transparentCorners:n.transparentCorners,c=l?"stroke":"fill",h=!l&&(r.cornerStrokeColor||n.cornerStrokeColor),u=e,d=i;t.save(),t.fillStyle=r.cornerColor||n.cornerColor,t.strokeStyle=r.cornerStrokeColor||n.cornerStrokeColor,a>s?(o=a,t.scale(1,s/a),d=i*a/s):s>a?(o=s,t.scale(a/s,1),u=e*s/a):o=a,t.lineWidth=1,t.beginPath(),t.arc(u,d,o/2,0,2*Math.PI,!1),t[c](),h&&t.stroke(),t.restore()},r.renderSquareControl=function(t,e,r,n,o){n=n||{};var a=this.sizeX||n.cornerSize||o.cornerSize,s=this.sizeY||n.cornerSize||o.cornerSize,l=typeof n.transparentCorners<"u"?n.transparentCorners:o.transparentCorners,c=l?"stroke":"fill",h=!l&&(n.cornerStrokeColor||o.cornerStrokeColor),u=a/2,d=s/2;t.save(),t.fillStyle=n.cornerColor||o.cornerColor,t.strokeStyle=n.cornerStrokeColor||o.cornerStrokeColor,t.lineWidth=1,t.translate(e,r),t.rotate(i(o.angle)),t[c+"Rect"](-u,-d,a,s),h&&t.strokeRect(-u,-d,a,s),t.restore()}}(t),function(t){var e=t.fabric||(t.fabric={});e.Control=function(t){for(var e in t)this[e]=t[e]},e.Control.prototype={visible:!0,actionName:"scale",angle:0,x:0,y:0,offsetX:0,offsetY:0,sizeX:null,sizeY:null,touchSizeX:null,touchSizeY:null,cursorStyle:"crosshair",withConnection:!1,actionHandler:function(){},mouseDownHandler:function(){},mouseUpHandler:function(){},getActionHandler:function(){return this.actionHandler},getMouseDownHandler:function(){return this.mouseDownHandler},getMouseUpHandler:function(){return this.mouseUpHandler},cursorStyleHandler:function(t,e){return e.cursorStyle},getActionName:function(t,e){return e.actionName},getVisibility:function(t,e){var i=t._controlsVisibility;return i&&typeof i[e]<"u"?i[e]:this.visible},setVisibility:function(t){this.visible=t},positionHandler:function(t,i){return e.util.transformPoint({x:this.x*t.x+this.offsetX,y:this.y*t.y+this.offsetY},i)},calcCornerCoords:function(t,i,r,n,o){var a,s,l,c,h=o?this.touchSizeX:this.sizeX,u=o?this.touchSizeY:this.sizeY;if(h&&u&&h!==u){var d=Math.atan2(u,h),p=Math.sqrt(h*h+u*u)/2,f=d-e.util.degreesToRadians(t),g=Math.PI/2-d-e.util.degreesToRadians(t);a=p*e.util.cos(f),s=p*e.util.sin(f),l=p*e.util.cos(g),c=p*e.util.sin(g)}else p=.7071067812*(h&&u?h:i),f=e.util.degreesToRadians(45-t),a=l=p*e.util.cos(f),s=c=p*e.util.sin(f);return{tl:{x:r-c,y:n-l},tr:{x:r+a,y:n-s},bl:{x:r-a,y:n+s},br:{x:r+c,y:n+l}}},render:function(t,i,r,n,o){"circle"===((n=n||{}).cornerStyle||o.cornerStyle)?e.controlsUtils.renderCircleControl.call(this,t,i,r,n,o):e.controlsUtils.renderSquareControl.call(this,t,i,r,n,o)}}}(t),function(){function t(t,e){var i,r,n,o,a=t.getAttribute("style"),l=t.getAttribute("offset")||0;if(l=(l=parseFloat(l)/(/%$/.test(l)?100:1))<0?0:l>1?1:l,a){var c=a.split(/\s*;\s*/);for(""===c[c.length-1]&&c.pop(),o=c.length;o--;){var h=c[o].split(/\s*:\s*/),u=h[0].trim(),d=h[1].trim();"stop-color"===u?i=d:"stop-opacity"===u&&(n=d)}}return i||(i=t.getAttribute("stop-color")||"rgb(0,0,0)"),n||(n=t.getAttribute("stop-opacity")),r=(i=new s.Color(i)).getAlpha(),n=isNaN(parseFloat(n))?1:parseFloat(n),n*=r*e,{offset:l,color:i.toRgb(),opacity:n}}var e=s.util.object.clone;s.Gradient=s.util.createClass({offsetX:0,offsetY:0,gradientTransform:null,gradientUnits:"pixels",type:"linear",initialize:function(t){t||(t={}),t.coords||(t.coords={});var e,i=this;Object.keys(t).forEach(function(e){i[e]=t[e]}),this.id?this.id+="_"+s.Object.__uid++:this.id=s.Object.__uid++,e={x1:t.coords.x1||0,y1:t.coords.y1||0,x2:t.coords.x2||0,y2:t.coords.y2||0},"radial"===this.type&&(e.r1=t.coords.r1||0,e.r2=t.coords.r2||0),this.coords=e,this.colorStops=t.colorStops.slice()},addColorStop:function(t){for(var e in t){var i=new s.Color(t[e]);this.colorStops.push({offset:parseFloat(e),color:i.toRgb(),opacity:i.getAlpha()})}return this},toObject:function(t){var e={type:this.type,coords:this.coords,colorStops:this.colorStops,offsetX:this.offsetX,offsetY:this.offsetY,gradientUnits:this.gradientUnits,gradientTransform:this.gradientTransform?this.gradientTransform.concat():this.gradientTransform};return s.util.populateWithProperties(this,e,t),e},toSVG:function(t,i){var r,n,o,a,l=e(this.coords,!0),c=(i=i||{},e(this.colorStops,!0)),h=l.r1>l.r2,u=this.gradientTransform?this.gradientTransform.concat():s.iMatrix.concat(),d=-this.offsetX,p=-this.offsetY,f=!!i.additionalTransform,g="pixels"===this.gradientUnits?"userSpaceOnUse":"objectBoundingBox";if(c.sort(function(t,e){return t.offset-e.offset}),"objectBoundingBox"===g?(d/=t.width,p/=t.height):(d+=t.width/2,p+=t.height/2),"path"===t.type&&"percentage"!==this.gradientUnits&&(d-=t.pathOffset.x,p-=t.pathOffset.y),u[4]-=d,u[5]-=p,a='id="SVGID_'+this.id+'" gradientUnits="'+g+'"',a+=' gradientTransform="'+(f?i.additionalTransform+" ":"")+s.util.matrixToSVG(u)+'" ',"linear"===this.type?o=["<linearGradient ",a,' x1="',l.x1,'" y1="',l.y1,'" x2="',l.x2,'" y2="',l.y2,'">\n']:"radial"===this.type&&(o=["<radialGradient ",a,' cx="',h?l.x1:l.x2,'" cy="',h?l.y1:l.y2,'" r="',h?l.r1:l.r2,'" fx="',h?l.x2:l.x1,'" fy="',h?l.y2:l.y1,'">\n']),"radial"===this.type){if(h)for((c=c.concat()).reverse(),r=0,n=c.length;r<n;r++)c[r].offset=1-c[r].offset;var m=Math.min(l.r1,l.r2);if(m>0){var v=m/Math.max(l.r1,l.r2);for(r=0,n=c.length;r<n;r++)c[r].offset+=v*(1-c[r].offset)}}for(r=0,n=c.length;r<n;r++){var b=c[r];o.push("<stop ",'offset="',100*b.offset+"%",'" style="stop-color:',b.color,typeof b.opacity<"u"?";stop-opacity: "+b.opacity:";",'"/>\n')}return o.push("linear"===this.type?"</linearGradient>\n":"</radialGradient>\n"),o.join("")},toLive:function(t){var e,i,r,n=s.util.object.clone(this.coords);if(this.type){for("linear"===this.type?e=t.createLinearGradient(n.x1,n.y1,n.x2,n.y2):"radial"===this.type&&(e=t.createRadialGradient(n.x1,n.y1,n.r1,n.x2,n.y2,n.r2)),i=0,r=this.colorStops.length;i<r;i++){var o=this.colorStops[i].color,a=this.colorStops[i].opacity,l=this.colorStops[i].offset;typeof a<"u"&&(o=new s.Color(o).setAlpha(a).toRgba()),e.addColorStop(l,o)}return e}}}),s.util.object.extend(s.Gradient,{fromElement:function(e,i,r,n){var o=parseFloat(r)/(/%$/.test(r)?100:1);o=o<0?0:o>1?1:o,isNaN(o)&&(o=1);var a,l,c,h,u=e.getElementsByTagName("stop"),d="userSpaceOnUse"===e.getAttribute("gradientUnits")?"pixels":"percentage",p=e.getAttribute("gradientTransform")||"",f=[],g=0,m=0;for("linearGradient"===e.nodeName||"LINEARGRADIENT"===e.nodeName?(a="linear",l=function(t){return{x1:t.getAttribute("x1")||0,y1:t.getAttribute("y1")||0,x2:t.getAttribute("x2")||"100%",y2:t.getAttribute("y2")||0}}(e)):(a="radial",l=function(t){return{x1:t.getAttribute("fx")||t.getAttribute("cx")||"50%",y1:t.getAttribute("fy")||t.getAttribute("cy")||"50%",r1:0,x2:t.getAttribute("cx")||"50%",y2:t.getAttribute("cy")||"50%",r2:t.getAttribute("r")||"50%"}}(e)),c=u.length;c--;)f.push(t(u[c],o));return h=s.parseTransformAttribute(p),function(t,e,i,r){var n,o;Object.keys(e).forEach(function(t){"Infinity"===(n=e[t])?o=1:"-Infinity"===n?o=0:(o=parseFloat(e[t],10),"string"==typeof n&&/^(\d+\.\d+)%|(\d+)%$/.test(n)&&(o*=.01,"pixels"===r&&(("x1"===t||"x2"===t||"r2"===t)&&(o*=i.viewBoxWidth||i.width),("y1"===t||"y2"===t)&&(o*=i.viewBoxHeight||i.height)))),e[t]=o})}(0,l,n,d),"pixels"===d&&(g=-i.left,m=-i.top),new s.Gradient({id:e.getAttribute("id"),type:a,coords:l,colorStops:f,gradientUnits:d,gradientTransform:h,offsetX:g,offsetY:m})}})}(),function(){var t=s.util.toFixed;s.Pattern=s.util.createClass({repeat:"repeat",offsetX:0,offsetY:0,crossOrigin:"",patternTransform:null,initialize:function(t,e){if(t||(t={}),this.id=s.Object.__uid++,this.setOptions(t),!t.source||t.source&&"string"!=typeof t.source)e&&e(this);else{var i=this;this.source=s.util.createImage(),s.util.loadImage(t.source,function(t,r){i.source=t,e&&e(i,r)},null,this.crossOrigin)}},toObject:function(e){var i,r,n=s.Object.NUM_FRACTION_DIGITS;return"string"==typeof this.source.src?i=this.source.src:"object"==typeof this.source&&this.source.toDataURL&&(i=this.source.toDataURL()),r={type:"pattern",source:i,repeat:this.repeat,crossOrigin:this.crossOrigin,offsetX:t(this.offsetX,n),offsetY:t(this.offsetY,n),patternTransform:this.patternTransform?this.patternTransform.concat():null},s.util.populateWithProperties(this,r,e),r},toSVG:function(t){var e="function"==typeof this.source?this.source():this.source,i=e.width/t.width,r=e.height/t.height,n=this.offsetX/t.width,o=this.offsetY/t.height,a="";return("repeat-x"===this.repeat||"no-repeat"===this.repeat)&&(r=1,o&&(r+=Math.abs(o))),("repeat-y"===this.repeat||"no-repeat"===this.repeat)&&(i=1,n&&(i+=Math.abs(n))),e.src?a=e.src:e.toDataURL&&(a=e.toDataURL()),'<pattern id="SVGID_'+this.id+'" x="'+n+'" y="'+o+'" width="'+i+'" height="'+r+'">\n<image x="0" y="0" width="'+e.width+'" height="'+e.height+'" xlink:href="'+a+'"></image>\n</pattern>\n'},setOptions:function(t){for(var e in t)this[e]=t[e]},toLive:function(t){var e=this.source;return!e||typeof e.src<"u"&&(!e.complete||0===e.naturalWidth||0===e.naturalHeight)?"":t.createPattern(e,this.repeat)}})}(),function(t){var e=t.fabric||(t.fabric={}),i=e.util.toFixed;e.Shadow?e.warn("fabric.Shadow is already defined."):(e.Shadow=e.util.createClass({color:"rgb(0,0,0)",blur:0,offsetX:0,offsetY:0,affectStroke:!1,includeDefaultValues:!0,nonScaling:!1,initialize:function(t){for(var i in"string"==typeof t&&(t=this._parseShadow(t)),t)this[i]=t[i];this.id=e.Object.__uid++},_parseShadow:function(t){var i=t.trim(),r=e.Shadow.reOffsetsAndBlur.exec(i)||[];return{color:(i.replace(e.Shadow.reOffsetsAndBlur,"")||"rgb(0,0,0)").trim(),offsetX:parseFloat(r[1],10)||0,offsetY:parseFloat(r[2],10)||0,blur:parseFloat(r[3],10)||0}},toString:function(){return[this.offsetX,this.offsetY,this.blur,this.color].join("px ")},toSVG:function(t){var r=40,n=40,o=e.Object.NUM_FRACTION_DIGITS,a=e.util.rotateVector({x:this.offsetX,y:this.offsetY},e.util.degreesToRadians(-t.angle)),s=new e.Color(this.color);return t.width&&t.height&&(r=100*i((Math.abs(a.x)+this.blur)/t.width,o)+20,n=100*i((Math.abs(a.y)+this.blur)/t.height,o)+20),t.flipX&&(a.x*=-1),t.flipY&&(a.y*=-1),'<filter id="SVGID_'+this.id+'" y="-'+n+'%" height="'+(100+2*n)+'%" x="-'+r+'%" width="'+(100+2*r)+'%" >\n\t<feGaussianBlur in="SourceAlpha" stdDeviation="'+i(this.blur?this.blur/2:0,o)+'"></feGaussianBlur>\n\t<feOffset dx="'+i(a.x,o)+'" dy="'+i(a.y,o)+'" result="oBlur" ></feOffset>\n\t<feFlood flood-color="'+s.toRgb()+'" flood-opacity="'+s.getAlpha()+'"/>\n\t<feComposite in2="oBlur" operator="in" />\n\t<feMerge>\n\t\t<feMergeNode></feMergeNode>\n\t\t<feMergeNode in="SourceGraphic"></feMergeNode>\n\t</feMerge>\n</filter>\n'},toObject:function(){if(this.includeDefaultValues)return{color:this.color,blur:this.blur,offsetX:this.offsetX,offsetY:this.offsetY,affectStroke:this.affectStroke,nonScaling:this.nonScaling};var t={},i=e.Shadow.prototype;return["color","blur","offsetX","offsetY","affectStroke","nonScaling"].forEach(function(e){this[e]!==i[e]&&(t[e]=this[e])},this),t}}),e.Shadow.reOffsetsAndBlur=/(?:\s|^)(-?\d+(?:\.\d*)?(?:px)?(?:\s?|$))?(-?\d+(?:\.\d*)?(?:px)?(?:\s?|$))?(\d+(?:\.\d*)?(?:px)?)?(?:\s?|$)(?:$|\s)/)}(t),function(){if(s.StaticCanvas)s.warn("fabric.StaticCanvas is already defined.");else{var t=s.util.object.extend,e=s.util.getElementOffset,i=s.util.removeFromArray,r=s.util.toFixed,n=s.util.transformPoint,o=s.util.invertTransform,a=s.util.getNodeCanvas,l=s.util.createCanvasElement,c=new Error("Could not initialize `canvas` element");s.StaticCanvas=s.util.createClass(s.CommonMethods,{initialize:function(t,e){e||(e={}),this.renderAndResetBound=this.renderAndReset.bind(this),this.requestRenderAllBound=this.requestRenderAll.bind(this),this._initStatic(t,e)},backgroundColor:"",backgroundImage:null,overlayColor:"",overlayImage:null,includeDefaultValues:!0,stateful:!1,renderOnAddRemove:!0,controlsAboveOverlay:!1,allowTouchScrolling:!1,imageSmoothingEnabled:!0,viewportTransform:s.iMatrix.concat(),backgroundVpt:!0,overlayVpt:!0,enableRetinaScaling:!0,vptCoords:{},skipOffscreen:!0,clipPath:void 0,_initStatic:function(t,e){var i=this.requestRenderAllBound;this._objects=[],this._createLowerCanvas(t),this._initOptions(e),this.interactive||this._initRetinaScaling(),e.overlayImage&&this.setOverlayImage(e.overlayImage,i),e.backgroundImage&&this.setBackgroundImage(e.backgroundImage,i),e.backgroundColor&&this.setBackgroundColor(e.backgroundColor,i),e.overlayColor&&this.setOverlayColor(e.overlayColor,i),this.calcOffset()},_isRetinaScaling:function(){return s.devicePixelRatio>1&&this.enableRetinaScaling},getRetinaScaling:function(){return this._isRetinaScaling()?Math.max(1,s.devicePixelRatio):1},_initRetinaScaling:function(){if(this._isRetinaScaling()){var t=s.devicePixelRatio;this.__initRetinaScaling(t,this.lowerCanvasEl,this.contextContainer),this.upperCanvasEl&&this.__initRetinaScaling(t,this.upperCanvasEl,this.contextTop)}},__initRetinaScaling:function(t,e,i){e.setAttribute("width",this.width*t),e.setAttribute("height",this.height*t),i.scale(t,t)},calcOffset:function(){return this._offset=e(this.lowerCanvasEl),this},setOverlayImage:function(t,e,i){return this.__setBgOverlayImage("overlayImage",t,e,i)},setBackgroundImage:function(t,e,i){return this.__setBgOverlayImage("backgroundImage",t,e,i)},setOverlayColor:function(t,e){return this.__setBgOverlayColor("overlayColor",t,e)},setBackgroundColor:function(t,e){return this.__setBgOverlayColor("backgroundColor",t,e)},__setBgOverlayImage:function(t,e,i,r){return"string"==typeof e?s.util.loadImage(e,function(e,n){if(e){var o=new s.Image(e,r);this[t]=o,o.canvas=this}i&&i(e,n)},this,r&&r.crossOrigin):(r&&e.setOptions(r),this[t]=e,e&&(e.canvas=this),i&&i(e,!1)),this},__setBgOverlayColor:function(t,e,i){return this[t]=e,this._initGradient(e,t),this._initPattern(e,t,i),this},_createCanvasElement:function(){var t=l();if(!t||(t.style||(t.style={}),typeof t.getContext>"u"))throw c;return t},_initOptions:function(t){var e=this.lowerCanvasEl;this._setOptions(t),this.width=this.width||parseInt(e.width,10)||0,this.height=this.height||parseInt(e.height,10)||0,this.lowerCanvasEl.style&&(e.width=this.width,e.height=this.height,e.style.width=this.width+"px",e.style.height=this.height+"px",this.viewportTransform=this.viewportTransform.slice())},_createLowerCanvas:function(t){t&&t.getContext?this.lowerCanvasEl=t:this.lowerCanvasEl=s.util.getById(t)||this._createCanvasElement(),s.util.addClass(this.lowerCanvasEl,"lower-canvas"),this._originalCanvasStyle=this.lowerCanvasEl.style,this.interactive&&this._applyCanvasStyle(this.lowerCanvasEl),this.contextContainer=this.lowerCanvasEl.getContext("2d")},getWidth:function(){return this.width},getHeight:function(){return this.height},setWidth:function(t,e){return this.setDimensions({width:t},e)},setHeight:function(t,e){return this.setDimensions({height:t},e)},setDimensions:function(t,e){var i;for(var r in e=e||{},t)i=t[r],e.cssOnly||(this._setBackstoreDimension(r,t[r]),i+="px",this.hasLostContext=!0),e.backstoreOnly||this._setCssDimension(r,i);return this._isCurrentlyDrawing&&this.freeDrawingBrush&&this.freeDrawingBrush._setBrushStyles(this.contextTop),this._initRetinaScaling(),this.calcOffset(),e.cssOnly||this.requestRenderAll(),this},_setBackstoreDimension:function(t,e){return this.lowerCanvasEl[t]=e,this.upperCanvasEl&&(this.upperCanvasEl[t]=e),this.cacheCanvasEl&&(this.cacheCanvasEl[t]=e),this[t]=e,this},_setCssDimension:function(t,e){return this.lowerCanvasEl.style[t]=e,this.upperCanvasEl&&(this.upperCanvasEl.style[t]=e),this.wrapperEl&&(this.wrapperEl.style[t]=e),this},getZoom:function(){return this.viewportTransform[0]},setViewportTransform:function(t){var e,i,r,n=this._activeObject,o=this.backgroundImage,a=this.overlayImage;for(this.viewportTransform=t,i=0,r=this._objects.length;i<r;i++)(e=this._objects[i]).group||e.setCoords(!0);return n&&n.setCoords(),o&&o.setCoords(!0),a&&a.setCoords(!0),this.calcViewportBoundaries(),this.renderOnAddRemove&&this.requestRenderAll(),this},zoomToPoint:function(t,e){var i=t,r=this.viewportTransform.slice(0);t=n(t,o(this.viewportTransform)),r[0]=e,r[3]=e;var a=n(t,r);return r[4]+=i.x-a.x,r[5]+=i.y-a.y,this.setViewportTransform(r)},setZoom:function(t){return this.zoomToPoint(new s.Point(0,0),t),this},absolutePan:function(t){var e=this.viewportTransform.slice(0);return e[4]=-t.x,e[5]=-t.y,this.setViewportTransform(e)},relativePan:function(t){return this.absolutePan(new s.Point(-t.x-this.viewportTransform[4],-t.y-this.viewportTransform[5]))},getElement:function(){return this.lowerCanvasEl},_onObjectAdded:function(t){this.stateful&&t.setupState(),t._set("canvas",this),t.setCoords(),this.fire("object:added",{target:t}),t.fire("added")},_onObjectRemoved:function(t){this.fire("object:removed",{target:t}),t.fire("removed"),delete t.canvas},clearContext:function(t){return t.clearRect(0,0,this.width,this.height),this},getContext:function(){return this.contextContainer},clear:function(){return this.remove.apply(this,this.getObjects()),this.backgroundImage=null,this.overlayImage=null,this.backgroundColor="",this.overlayColor="",this._hasITextHandlers&&(this.off("mouse:up",this._mouseUpITextHandler),this._iTextInstances=null,this._hasITextHandlers=!1),this.clearContext(this.contextContainer),this.fire("canvas:cleared"),this.renderOnAddRemove&&this.requestRenderAll(),this},renderAll:function(){var t=this.contextContainer;return this.renderCanvas(t,this._objects),this},renderAndReset:function(){this.isRendering=0,this.renderAll()},requestRenderAll:function(){return this.isRendering||(this.isRendering=s.util.requestAnimFrame(this.renderAndResetBound)),this},calcViewportBoundaries:function(){var t={},e=this.width,i=this.height,r=o(this.viewportTransform);return t.tl=n({x:0,y:0},r),t.br=n({x:e,y:i},r),t.tr=new s.Point(t.br.x,t.tl.y),t.bl=new s.Point(t.tl.x,t.br.y),this.vptCoords=t,t},cancelRequestedRender:function(){this.isRendering&&(s.util.cancelAnimFrame(this.isRendering),this.isRendering=0)},renderCanvas:function(t,e){var i=this.viewportTransform,r=this.clipPath;this.cancelRequestedRender(),this.calcViewportBoundaries(),this.clearContext(t),s.util.setImageSmoothing(t,this.imageSmoothingEnabled),this.fire("before:render",{ctx:t}),this._renderBackground(t),t.save(),t.transform(i[0],i[1],i[2],i[3],i[4],i[5]),this._renderObjects(t,e),t.restore(),!this.controlsAboveOverlay&&this.interactive&&this.drawControls(t),r&&(r.canvas=this,r.shouldCache(),r._transformDone=!0,r.renderCache({forClipping:!0}),this.drawClipPathOnCanvas(t)),this._renderOverlay(t),this.controlsAboveOverlay&&this.interactive&&this.drawControls(t),this.fire("after:render",{ctx:t})},drawClipPathOnCanvas:function(t){var e=this.viewportTransform,i=this.clipPath;t.save(),t.transform(e[0],e[1],e[2],e[3],e[4],e[5]),t.globalCompositeOperation="destination-in",i.transform(t),t.scale(1/i.zoomX,1/i.zoomY),t.drawImage(i._cacheCanvas,-i.cacheTranslationX,-i.cacheTranslationY),t.restore()},_renderObjects:function(t,e){var i,r;for(i=0,r=e.length;i<r;++i)e[i]&&e[i].render(t)},_renderBackgroundOrOverlay:function(t,e){var i=this[e+"Color"],r=this[e+"Image"],n=this.viewportTransform,o=this[e+"Vpt"];if(i||r){if(i){t.save(),t.beginPath(),t.moveTo(0,0),t.lineTo(this.width,0),t.lineTo(this.width,this.height),t.lineTo(0,this.height),t.closePath(),t.fillStyle=i.toLive?i.toLive(t,this):i,o&&t.transform(n[0],n[1],n[2],n[3],n[4],n[5]),t.transform(1,0,0,1,i.offsetX||0,i.offsetY||0);var a=i.gradientTransform||i.patternTransform;a&&t.transform(a[0],a[1],a[2],a[3],a[4],a[5]),t.fill(),t.restore()}r&&(t.save(),o&&t.transform(n[0],n[1],n[2],n[3],n[4],n[5]),r.render(t),t.restore())}},_renderBackground:function(t){this._renderBackgroundOrOverlay(t,"background")},_renderOverlay:function(t){this._renderBackgroundOrOverlay(t,"overlay")},getCenter:function(){return{top:this.height/2,left:this.width/2}},getCenterPoint:function(){return new s.Point(this.width/2,this.height/2)},centerObjectH:function(t){return this._centerObject(t,new s.Point(this.getCenterPoint().x,t.getCenterPoint().y))},centerObjectV:function(t){return this._centerObject(t,new s.Point(t.getCenterPoint().x,this.getCenterPoint().y))},centerObject:function(t){var e=this.getCenterPoint();return this._centerObject(t,e)},viewportCenterObject:function(t){var e=this.getVpCenter();return this._centerObject(t,e)},viewportCenterObjectH:function(t){var e=this.getVpCenter();return this._centerObject(t,new s.Point(e.x,t.getCenterPoint().y)),this},viewportCenterObjectV:function(t){var e=this.getVpCenter();return this._centerObject(t,new s.Point(t.getCenterPoint().x,e.y))},getVpCenter:function(){var t=this.getCenterPoint(),e=o(this.viewportTransform);return n(t,e)},_centerObject:function(t,e){return t.setPositionByOrigin(e,"center","center"),t.setCoords(),this.renderOnAddRemove&&this.requestRenderAll(),this},toDatalessJSON:function(t){return this.toDatalessObject(t)},toObject:function(t){return this._toObjectMethod("toObject",t)},toDatalessObject:function(t){return this._toObjectMethod("toDatalessObject",t)},_toObjectMethod:function(e,i){var r=this.clipPath,n={version:s.version,objects:this._toObjects(e,i)};return r&&!r.excludeFromExport&&(n.clipPath=this._toObject(this.clipPath,e,i)),t(n,this.__serializeBgOverlay(e,i)),s.util.populateWithProperties(this,n,i),n},_toObjects:function(t,e){return this._objects.filter(function(t){return!t.excludeFromExport}).map(function(i){return this._toObject(i,t,e)},this)},_toObject:function(t,e,i){var r;this.includeDefaultValues||(r=t.includeDefaultValues,t.includeDefaultValues=!1);var n=t[e](i);return this.includeDefaultValues||(t.includeDefaultValues=r),n},__serializeBgOverlay:function(t,e){var i={},r=this.backgroundImage,n=this.overlayImage,o=this.backgroundColor,a=this.overlayColor;return o&&o.toObject?o.excludeFromExport||(i.background=o.toObject(e)):o&&(i.background=o),a&&a.toObject?a.excludeFromExport||(i.overlay=a.toObject(e)):a&&(i.overlay=a),r&&!r.excludeFromExport&&(i.backgroundImage=this._toObject(r,t,e)),n&&!n.excludeFromExport&&(i.overlayImage=this._toObject(n,t,e)),i},svgViewportTransformation:!0,toSVG:function(t,e){t||(t={}),t.reviver=e;var i=[];return this._setSVGPreamble(i,t),this._setSVGHeader(i,t),this.clipPath&&i.push('<g clip-path="url(#'+this.clipPath.clipPathId+')" >\n'),this._setSVGBgOverlayColor(i,"background"),this._setSVGBgOverlayImage(i,"backgroundImage",e),this._setSVGObjects(i,e),this.clipPath&&i.push("</g>\n"),this._setSVGBgOverlayColor(i,"overlay"),this._setSVGBgOverlayImage(i,"overlayImage",e),i.push("</svg>"),i.join("")},_setSVGPreamble:function(t,e){e.suppressPreamble||t.push('<?xml version="1.0" encoding="',e.encoding||"UTF-8",'" standalone="no" ?>\n','<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" ','"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">\n')},_setSVGHeader:function(t,e){var i,n=e.width||this.width,o=e.height||this.height,a='viewBox="0 0 '+this.width+" "+this.height+'" ',l=s.Object.NUM_FRACTION_DIGITS;e.viewBox?a='viewBox="'+e.viewBox.x+" "+e.viewBox.y+" "+e.viewBox.width+" "+e.viewBox.height+'" ':this.svgViewportTransformation&&(i=this.viewportTransform,a='viewBox="'+r(-i[4]/i[0],l)+" "+r(-i[5]/i[3],l)+" "+r(this.width/i[0],l)+" "+r(this.height/i[3],l)+'" '),t.push("<svg ",'xmlns="http://www.w3.org/2000/svg" ','xmlns:xlink="http://www.w3.org/1999/xlink" ','version="1.1" ','width="',n,'" ','height="',o,'" ',a,'xml:space="preserve">\n',"<desc>Created with Fabric.js ",s.version,"</desc>\n","<defs>\n",this.createSVGFontFacesMarkup(),this.createSVGRefElementsMarkup(),this.createSVGClipPathMarkup(e),"</defs>\n")},createSVGClipPathMarkup:function(t){var e=this.clipPath;return e?(e.clipPathId="CLIPPATH_"+s.Object.__uid++,'<clipPath id="'+e.clipPathId+'" >\n'+this.clipPath.toClipPathSVG(t.reviver)+"</clipPath>\n"):""},createSVGRefElementsMarkup:function(){var t=this;return["background","overlay"].map(function(e){var i=t[e+"Color"];if(i&&i.toLive){var r=t[e+"Vpt"],n=t.viewportTransform,o={width:t.width/(r?n[0]:1),height:t.height/(r?n[3]:1)};return i.toSVG(o,{additionalTransform:r?s.util.matrixToSVG(n):""})}}).join("")},createSVGFontFacesMarkup:function(){var t,e,i,r,n,o,a,l,c="",h={},u=s.fontPaths,d=[];for(this._objects.forEach(function t(e){d.push(e),e._objects&&e._objects.forEach(t)}),a=0,l=d.length;a<l;a++)if(e=(t=d[a]).fontFamily,-1!==t.type.indexOf("text")&&!h[e]&&u[e]&&(h[e]=!0,t.styles))for(n in i=t.styles)for(o in r=i[n])!h[e=r[o].fontFamily]&&u[e]&&(h[e]=!0);for(var p in h)c+=["\t\t@font-face {\n","\t\t\tfont-family: '",p,"';\n","\t\t\tsrc: url('",u[p],"');\n","\t\t}\n"].join("");return c&&(c=['\t<style type="text/css">',"<![CDATA[\n",c,"]]>","</style>\n"].join("")),c},_setSVGObjects:function(t,e){var i,r,n,o=this._objects;for(r=0,n=o.length;r<n;r++)!(i=o[r]).excludeFromExport&&this._setSVGObject(t,i,e)},_setSVGObject:function(t,e,i){t.push(e.toSVG(i))},_setSVGBgOverlayImage:function(t,e,i){this[e]&&!this[e].excludeFromExport&&this[e].toSVG&&t.push(this[e].toSVG(i))},_setSVGBgOverlayColor:function(t,e){var i=this[e+"Color"],r=this.viewportTransform,n=this.width,o=this.height;if(i)if(i.toLive){var a=i.repeat,l=s.util.invertTransform(r),c=this[e+"Vpt"]?s.util.matrixToSVG(l):"";t.push('<rect transform="'+c+" translate(",n/2,",",o/2,')"',' x="',i.offsetX-n/2,'" y="',i.offsetY-o/2,'" ','width="',"repeat-y"===a||"no-repeat"===a?i.source.width:n,'" height="',"repeat-x"===a||"no-repeat"===a?i.source.height:o,'" fill="url(#SVGID_'+i.id+')"',"></rect>\n")}else t.push('<rect x="0" y="0" width="100%" height="100%" ','fill="',i,'"',"></rect>\n")},sendToBack:function(t){if(!t)return this;var e,r,n,o=this._activeObject;if(t===o&&"activeSelection"===t.type)for(e=(n=o._objects).length;e--;)r=n[e],i(this._objects,r),this._objects.unshift(r);else i(this._objects,t),this._objects.unshift(t);return this.renderOnAddRemove&&this.requestRenderAll(),this},bringToFront:function(t){if(!t)return this;var e,r,n,o=this._activeObject;if(t===o&&"activeSelection"===t.type)for(n=o._objects,e=0;e<n.length;e++)r=n[e],i(this._objects,r),this._objects.push(r);else i(this._objects,t),this._objects.push(t);return this.renderOnAddRemove&&this.requestRenderAll(),this},sendBackwards:function(t,e){if(!t)return this;var r,n,o,a,s,l=this._activeObject,c=0;if(t===l&&"activeSelection"===t.type)for(s=l._objects,r=0;r<s.length;r++)n=s[r],(o=this._objects.indexOf(n))>0+c&&(a=o-1,i(this._objects,n),this._objects.splice(a,0,n)),c++;else 0!==(o=this._objects.indexOf(t))&&(a=this._findNewLowerIndex(t,o,e),i(this._objects,t),this._objects.splice(a,0,t));return this.renderOnAddRemove&&this.requestRenderAll(),this},_findNewLowerIndex:function(t,e,i){var r,n;if(i){for(r=e,n=e-1;n>=0;--n)if(t.intersectsWithObject(this._objects[n])||t.isContainedWithinObject(this._objects[n])||this._objects[n].isContainedWithinObject(t)){r=n;break}}else r=e-1;return r},bringForward:function(t,e){if(!t)return this;var r,n,o,a,s,l=this._activeObject,c=0;if(t===l&&"activeSelection"===t.type)for(r=(s=l._objects).length;r--;)n=s[r],(o=this._objects.indexOf(n))<this._objects.length-1-c&&(a=o+1,i(this._objects,n),this._objects.splice(a,0,n)),c++;else(o=this._objects.indexOf(t))!==this._objects.length-1&&(a=this._findNewUpperIndex(t,o,e),i(this._objects,t),this._objects.splice(a,0,t));return this.renderOnAddRemove&&this.requestRenderAll(),this},_findNewUpperIndex:function(t,e,i){var r,n,o;if(i){for(r=e,n=e+1,o=this._objects.length;n<o;++n)if(t.intersectsWithObject(this._objects[n])||t.isContainedWithinObject(this._objects[n])||this._objects[n].isContainedWithinObject(t)){r=n;break}}else r=e+1;return r},moveTo:function(t,e){return i(this._objects,t),this._objects.splice(e,0,t),this.renderOnAddRemove&&this.requestRenderAll()},dispose:function(){return this.isRendering&&(s.util.cancelAnimFrame(this.isRendering),this.isRendering=0),this.forEachObject(function(t){t.dispose&&t.dispose()}),this._objects=[],this.backgroundImage&&this.backgroundImage.dispose&&this.backgroundImage.dispose(),this.backgroundImage=null,this.overlayImage&&this.overlayImage.dispose&&this.overlayImage.dispose(),this.overlayImage=null,this._iTextInstances=null,this.contextContainer=null,this.lowerCanvasEl.classList.remove("lower-canvas"),s.util.setStyle(this.lowerCanvasEl,this._originalCanvasStyle),delete this._originalCanvasStyle,this.lowerCanvasEl.setAttribute("width",this.width),this.lowerCanvasEl.setAttribute("height",this.height),s.util.cleanUpJsdomNode(this.lowerCanvasEl),this.lowerCanvasEl=void 0,this},toString:function(){return"#<fabric.Canvas ("+this.complexity()+"): { objects: "+this._objects.length+" }>"}}),t(s.StaticCanvas.prototype,s.Observable),t(s.StaticCanvas.prototype,s.Collection),t(s.StaticCanvas.prototype,s.DataURLExporter),t(s.StaticCanvas,{EMPTY_JSON:'{"objects": [], "background": "white"}',supports:function(t){var e=l();if(!e||!e.getContext)return null;var i=e.getContext("2d");return i&&"setLineDash"===t?typeof i.setLineDash<"u":null}}),s.StaticCanvas.prototype.toJSON=s.StaticCanvas.prototype.toObject,s.isLikelyNode&&(s.StaticCanvas.prototype.createPNGStream=function(){var t=a(this.lowerCanvasEl);return t&&t.createPNGStream()},s.StaticCanvas.prototype.createJPEGStream=function(t){var e=a(this.lowerCanvasEl);return e&&e.createJPEGStream(t)})}}(),s.BaseBrush=s.util.createClass({color:"rgb(0, 0, 0)",width:1,shadow:null,strokeLineCap:"round",strokeLineJoin:"round",strokeMiterLimit:10,strokeDashArray:null,limitedToCanvasSize:!1,_setBrushStyles:function(t){t.strokeStyle=this.color,t.lineWidth=this.width,t.lineCap=this.strokeLineCap,t.miterLimit=this.strokeMiterLimit,t.lineJoin=this.strokeLineJoin,t.setLineDash(this.strokeDashArray||[])},_saveAndTransform:function(t){var e=this.canvas.viewportTransform;t.save(),t.transform(e[0],e[1],e[2],e[3],e[4],e[5])},_setShadow:function(){if(this.shadow){var t=this.canvas,e=this.shadow,i=t.contextTop,r=t.getZoom();t&&t._isRetinaScaling()&&(r*=s.devicePixelRatio),i.shadowColor=e.color,i.shadowBlur=e.blur*r,i.shadowOffsetX=e.offsetX*r,i.shadowOffsetY=e.offsetY*r}},needsFullRender:function(){return new s.Color(this.color).getAlpha()<1||!!this.shadow},_resetShadow:function(){var t=this.canvas.contextTop;t.shadowColor="",t.shadowBlur=t.shadowOffsetX=t.shadowOffsetY=0},_isOutSideCanvas:function(t){return t.x<0||t.x>this.canvas.getWidth()||t.y<0||t.y>this.canvas.getHeight()}}),s.PencilBrush=s.util.createClass(s.BaseBrush,{decimate:.4,drawStraightLine:!1,straightLineKey:"shiftKey",initialize:function(t){this.canvas=t,this._points=[]},needsFullRender:function(){return this.callSuper("needsFullRender")||this._hasStraightLine},_drawSegment:function(t,e,i){var r=e.midPointFrom(i);return t.quadraticCurveTo(e.x,e.y,r.x,r.y),r},onMouseDown:function(t,e){!this.canvas._isMainEvent(e.e)||(this.drawStraightLine=e.e[this.straightLineKey],this._prepareForDrawing(t),this._captureDrawingPath(t),this._render())},onMouseMove:function(t,e){if(this.canvas._isMainEvent(e.e)&&(this.drawStraightLine=e.e[this.straightLineKey],(!0!==this.limitedToCanvasSize||!this._isOutSideCanvas(t))&&this._captureDrawingPath(t)&&this._points.length>1))if(this.needsFullRender())this.canvas.clearContext(this.canvas.contextTop),this._render();else{var i=this._points,r=i.length,n=this.canvas.contextTop;this._saveAndTransform(n),this.oldEnd&&(n.beginPath(),n.moveTo(this.oldEnd.x,this.oldEnd.y)),this.oldEnd=this._drawSegment(n,i[r-2],i[r-1],!0),n.stroke(),n.restore()}},onMouseUp:function(t){return!this.canvas._isMainEvent(t.e)||(this.drawStraightLine=!1,this.oldEnd=void 0,this._finalizeAndAddPath(),!1)},_prepareForDrawing:function(t){var e=new s.Point(t.x,t.y);this._reset(),this._addPoint(e),this.canvas.contextTop.moveTo(e.x,e.y)},_addPoint:function(t){return!(this._points.length>1&&t.eq(this._points[this._points.length-1])||(this.drawStraightLine&&this._points.length>1&&(this._hasStraightLine=!0,this._points.pop()),this._points.push(t),0))},_reset:function(){this._points=[],this._setBrushStyles(this.canvas.contextTop),this._setShadow(),this._hasStraightLine=!1},_captureDrawingPath:function(t){var e=new s.Point(t.x,t.y);return this._addPoint(e)},_render:function(t){var e,i,r=this._points[0],n=this._points[1];if(t=t||this.canvas.contextTop,this._saveAndTransform(t),t.beginPath(),2===this._points.length&&r.x===n.x&&r.y===n.y){var o=this.width/1e3;r=new s.Point(r.x,r.y),n=new s.Point(n.x,n.y),r.x-=o,n.x+=o}for(t.moveTo(r.x,r.y),e=1,i=this._points.length;e<i;e++)this._drawSegment(t,r,n),r=this._points[e],n=this._points[e+1];t.lineTo(r.x,r.y),t.stroke(),t.restore()},convertPointsToSVGPath:function(t){var e=this.width/1e3;return s.util.getSmoothPathFromPoints(t,e)},_isEmptySVGPath:function(t){return"M 0 0 Q 0 0 0 0 L 0 0"===s.util.joinPath(t)},createPath:function(t){var e=new s.Path(t,{fill:null,stroke:this.color,strokeWidth:this.width,strokeLineCap:this.strokeLineCap,strokeMiterLimit:this.strokeMiterLimit,strokeLineJoin:this.strokeLineJoin,strokeDashArray:this.strokeDashArray});return this.shadow&&(this.shadow.affectStroke=!0,e.shadow=new s.Shadow(this.shadow)),e},decimatePoints:function(t,e){if(t.length<=2)return t;var i,r=this.canvas.getZoom(),n=Math.pow(e/r,2),o=t.length-1,a=t[0],s=[a];for(i=1;i<o-1;i++)Math.pow(a.x-t[i].x,2)+Math.pow(a.y-t[i].y,2)>=n&&(a=t[i],s.push(a));return s.push(t[o]),s},_finalizeAndAddPath:function(){this.canvas.contextTop.closePath(),this.decimate&&(this._points=this.decimatePoints(this._points,this.decimate));var t=this.convertPointsToSVGPath(this._points);if(this._isEmptySVGPath(t))this.canvas.requestRenderAll();else{var e=this.createPath(t);this.canvas.clearContext(this.canvas.contextTop),this.canvas.fire("before:path:created",{path:e}),this.canvas.add(e),this.canvas.requestRenderAll(),e.setCoords(),this._resetShadow(),this.canvas.fire("path:created",{path:e})}}}),s.CircleBrush=s.util.createClass(s.BaseBrush,{width:10,initialize:function(t){this.canvas=t,this.points=[]},drawDot:function(t){var e=this.addPoint(t),i=this.canvas.contextTop;this._saveAndTransform(i),this.dot(i,e),i.restore()},dot:function(t,e){t.fillStyle=e.fill,t.beginPath(),t.arc(e.x,e.y,e.radius,0,2*Math.PI,!1),t.closePath(),t.fill()},onMouseDown:function(t){this.points.length=0,this.canvas.clearContext(this.canvas.contextTop),this._setShadow(),this.drawDot(t)},_render:function(){var t,e,i=this.canvas.contextTop,r=this.points;for(this._saveAndTransform(i),t=0,e=r.length;t<e;t++)this.dot(i,r[t]);i.restore()},onMouseMove:function(t){!0===this.limitedToCanvasSize&&this._isOutSideCanvas(t)||(this.needsFullRender()?(this.canvas.clearContext(this.canvas.contextTop),this.addPoint(t),this._render()):this.drawDot(t))},onMouseUp:function(){var t,e,i=this.canvas.renderOnAddRemove;this.canvas.renderOnAddRemove=!1;var r=[];for(t=0,e=this.points.length;t<e;t++){var n=this.points[t],o=new s.Circle({radius:n.radius,left:n.x,top:n.y,originX:"center",originY:"center",fill:n.fill});this.shadow&&(o.shadow=new s.Shadow(this.shadow)),r.push(o)}var a=new s.Group(r);a.canvas=this.canvas,this.canvas.fire("before:path:created",{path:a}),this.canvas.add(a),this.canvas.fire("path:created",{path:a}),this.canvas.clearContext(this.canvas.contextTop),this._resetShadow(),this.canvas.renderOnAddRemove=i,this.canvas.requestRenderAll()},addPoint:function(t){var e=new s.Point(t.x,t.y),i=s.util.getRandomInt(Math.max(0,this.width-20),this.width+20)/2,r=new s.Color(this.color).setAlpha(s.util.getRandomInt(0,100)/100).toRgba();return e.radius=i,e.fill=r,this.points.push(e),e}}),s.SprayBrush=s.util.createClass(s.BaseBrush,{width:10,density:20,dotWidth:1,dotWidthVariance:1,randomOpacity:!1,optimizeOverlapping:!0,initialize:function(t){this.canvas=t,this.sprayChunks=[]},onMouseDown:function(t){this.sprayChunks.length=0,this.canvas.clearContext(this.canvas.contextTop),this._setShadow(),this.addSprayChunk(t),this.render(this.sprayChunkPoints)},onMouseMove:function(t){!0===this.limitedToCanvasSize&&this._isOutSideCanvas(t)||(this.addSprayChunk(t),this.render(this.sprayChunkPoints))},onMouseUp:function(){var t=this.canvas.renderOnAddRemove;this.canvas.renderOnAddRemove=!1;for(var e=[],i=0,r=this.sprayChunks.length;i<r;i++)for(var n=this.sprayChunks[i],o=0,a=n.length;o<a;o++){var l=new s.Rect({width:n[o].width,height:n[o].width,left:n[o].x+1,top:n[o].y+1,originX:"center",originY:"center",fill:this.color});e.push(l)}this.optimizeOverlapping&&(e=this._getOptimizedRects(e));var c=new s.Group(e);this.shadow&&c.set("shadow",new s.Shadow(this.shadow)),this.canvas.fire("before:path:created",{path:c}),this.canvas.add(c),this.canvas.fire("path:created",{path:c}),this.canvas.clearContext(this.canvas.contextTop),this._resetShadow(),this.canvas.renderOnAddRemove=t,this.canvas.requestRenderAll()},_getOptimizedRects:function(t){var e,i,r,n={};for(i=0,r=t.length;i<r;i++)n[e=t[i].left+""+t[i].top]||(n[e]=t[i]);var o=[];for(e in n)o.push(n[e]);return o},render:function(t){var e,i,r=this.canvas.contextTop;for(r.fillStyle=this.color,this._saveAndTransform(r),e=0,i=t.length;e<i;e++){var n=t[e];typeof n.opacity<"u"&&(r.globalAlpha=n.opacity),r.fillRect(n.x,n.y,n.width,n.width)}r.restore()},_render:function(){var t,e,i=this.canvas.contextTop;for(i.fillStyle=this.color,this._saveAndTransform(i),t=0,e=this.sprayChunks.length;t<e;t++)this.render(this.sprayChunks[t]);i.restore()},addSprayChunk:function(t){this.sprayChunkPoints=[];var e,i,r,n,o=this.width/2;for(n=0;n<this.density;n++){e=s.util.getRandomInt(t.x-o,t.x+o),i=s.util.getRandomInt(t.y-o,t.y+o),r=this.dotWidthVariance?s.util.getRandomInt(Math.max(1,this.dotWidth-this.dotWidthVariance),this.dotWidth+this.dotWidthVariance):this.dotWidth;var a=new s.Point(e,i);a.width=r,this.randomOpacity&&(a.opacity=s.util.getRandomInt(0,100)/100),this.sprayChunkPoints.push(a)}this.sprayChunks.push(this.sprayChunkPoints)}}),s.PatternBrush=s.util.createClass(s.PencilBrush,{getPatternSrc:function(){var t=s.util.createCanvasElement(),e=t.getContext("2d");return t.width=t.height=25,e.fillStyle=this.color,e.beginPath(),e.arc(10,10,10,0,2*Math.PI,!1),e.closePath(),e.fill(),t},getPatternSrcFunction:function(){return String(this.getPatternSrc).replace("this.color",'"'+this.color+'"')},getPattern:function(t){return t.createPattern(this.source||this.getPatternSrc(),"repeat")},_setBrushStyles:function(t){this.callSuper("_setBrushStyles",t),t.strokeStyle=this.getPattern(t)},createPath:function(t){var e=this.callSuper("createPath",t),i=e._getLeftTopCoords().scalarAdd(e.strokeWidth/2);return e.stroke=new s.Pattern({source:this.source||this.getPatternSrcFunction(),offsetX:-i.x,offsetY:-i.y}),e}}),function(){var t=s.util.getPointer,e=s.util.degreesToRadians,i=s.util.isTouchEvent;for(var r in s.Canvas=s.util.createClass(s.StaticCanvas,{initialize:function(t,e){e||(e={}),this.renderAndResetBound=this.renderAndReset.bind(this),this.requestRenderAllBound=this.requestRenderAll.bind(this),this._initStatic(t,e),this._initInteractive(),this._createCacheCanvas()},uniformScaling:!0,uniScaleKey:"shiftKey",centeredScaling:!1,centeredRotation:!1,centeredKey:"altKey",altActionKey:"shiftKey",interactive:!0,selection:!0,selectionKey:"shiftKey",altSelectionKey:null,selectionColor:"rgba(100, 100, 255, 0.3)",selectionDashArray:[],selectionBorderColor:"rgba(255, 255, 255, 0.3)",selectionLineWidth:1,selectionFullyContained:!1,hoverCursor:"move",moveCursor:"move",defaultCursor:"default",freeDrawingCursor:"crosshair",notAllowedCursor:"not-allowed",containerClass:"canvas-container",perPixelTargetFind:!1,targetFindTolerance:0,skipTargetFind:!1,isDrawingMode:!1,preserveObjectStacking:!1,snapAngle:0,snapThreshold:null,stopContextMenu:!1,fireRightClick:!1,fireMiddleClick:!1,targets:[],enablePointerEvents:!1,_hoveredTarget:null,_hoveredTargets:[],_initInteractive:function(){this._currentTransform=null,this._groupSelector=null,this._initWrapperElement(),this._createUpperCanvas(),this._initEventListeners(),this._initRetinaScaling(),this.freeDrawingBrush=s.PencilBrush&&new s.PencilBrush(this),this.calcOffset()},_chooseObjectsToRender:function(){var t,e,i,r=this.getActiveObjects();if(r.length>0&&!this.preserveObjectStacking){e=[],i=[];for(var n=0,o=this._objects.length;n<o;n++)t=this._objects[n],-1===r.indexOf(t)?e.push(t):i.push(t);r.length>1&&(this._activeObject._objects=i),e.push.apply(e,i)}else e=this._objects;return e},renderAll:function(){this.contextTopDirty&&!this._groupSelector&&!this.isDrawingMode&&(this.clearContext(this.contextTop),this.contextTopDirty=!1),this.hasLostContext&&(this.renderTopLayer(this.contextTop),this.hasLostContext=!1);var t=this.contextContainer;return this.renderCanvas(t,this._chooseObjectsToRender()),this},renderTopLayer:function(t){t.save(),this.isDrawingMode&&this._isCurrentlyDrawing&&(this.freeDrawingBrush&&this.freeDrawingBrush._render(),this.contextTopDirty=!0),this.selection&&this._groupSelector&&(this._drawSelection(t),this.contextTopDirty=!0),t.restore()},renderTop:function(){var t=this.contextTop;return this.clearContext(t),this.renderTopLayer(t),this.fire("after:render"),this},_normalizePointer:function(t,e){var i=t.calcTransformMatrix(),r=s.util.invertTransform(i),n=this.restorePointerVpt(e);return s.util.transformPoint(n,r)},isTargetTransparent:function(t,e,i){if(t.shouldCache()&&t._cacheCanvas&&t!==this._activeObject){var r=this._normalizePointer(t,{x:e,y:i}),n=Math.max(t.cacheTranslationX+r.x*t.zoomX,0),o=Math.max(t.cacheTranslationY+r.y*t.zoomY,0);return s.util.isTransparent(t._cacheContext,Math.round(n),Math.round(o),this.targetFindTolerance)}var a=this.contextCache,l=t.selectionBackgroundColor,c=this.viewportTransform;return t.selectionBackgroundColor="",this.clearContext(a),a.save(),a.transform(c[0],c[1],c[2],c[3],c[4],c[5]),t.render(a),a.restore(),t.selectionBackgroundColor=l,s.util.isTransparent(a,e,i,this.targetFindTolerance)},_isSelectionKeyPressed:function(t){return Array.isArray(this.selectionKey)?!!this.selectionKey.find(function(e){return!0===t[e]}):t[this.selectionKey]},_shouldClearSelection:function(t,e){var i=this.getActiveObjects(),r=this._activeObject;return!e||e&&r&&i.length>1&&-1===i.indexOf(e)&&r!==e&&!this._isSelectionKeyPressed(t)||e&&!e.evented||e&&!e.selectable&&r&&r!==e},_shouldCenterTransform:function(t,e,i){var r;if(t)return"scale"===e||"scaleX"===e||"scaleY"===e||"resizing"===e?r=this.centeredScaling||t.centeredScaling:"rotate"===e&&(r=this.centeredRotation||t.centeredRotation),r?!i:i},_getOriginFromCorner:function(t,e){var i={x:t.originX,y:t.originY};return"ml"===e||"tl"===e||"bl"===e?i.x="right":("mr"===e||"tr"===e||"br"===e)&&(i.x="left"),"tl"===e||"mt"===e||"tr"===e?i.y="bottom":("bl"===e||"mb"===e||"br"===e)&&(i.y="top"),i},_getActionFromCorner:function(t,e,i,r){if(!e||!t)return"drag";var n=r.controls[e];return n.getActionName(i,n,r)},_setupCurrentTransform:function(t,i,r){if(i){var n=this.getPointer(t),o=i.__corner,a=i.controls[o],l=r&&o?a.getActionHandler(t,i,a):s.controlsUtils.dragHandler,c=this._getActionFromCorner(r,o,t,i),h=this._getOriginFromCorner(i,o),u=t[this.centeredKey],d={target:i,action:c,actionHandler:l,corner:o,scaleX:i.scaleX,scaleY:i.scaleY,skewX:i.skewX,skewY:i.skewY,offsetX:n.x-i.left,offsetY:n.y-i.top,originX:h.x,originY:h.y,ex:n.x,ey:n.y,lastX:n.x,lastY:n.y,theta:e(i.angle),width:i.width*i.scaleX,shiftKey:t.shiftKey,altKey:u,original:s.util.saveObjectTransform(i)};this._shouldCenterTransform(i,c,u)&&(d.originX="center",d.originY="center"),d.original.originX=h.x,d.original.originY=h.y,this._currentTransform=d,this._beforeTransform(t)}},setCursor:function(t){this.upperCanvasEl.style.cursor=t},_drawSelection:function(t){var e=this._groupSelector,i=new s.Point(e.ex,e.ey),r=s.util.transformPoint(i,this.viewportTransform),n=new s.Point(e.ex+e.left,e.ey+e.top),o=s.util.transformPoint(n,this.viewportTransform),a=Math.min(r.x,o.x),l=Math.min(r.y,o.y),c=Math.max(r.x,o.x),h=Math.max(r.y,o.y),u=this.selectionLineWidth/2;this.selectionColor&&(t.fillStyle=this.selectionColor,t.fillRect(a,l,c-a,h-l)),this.selectionLineWidth&&this.selectionBorderColor&&(t.lineWidth=this.selectionLineWidth,t.strokeStyle=this.selectionBorderColor,a+=u,l+=u,c-=u,h-=u,s.Object.prototype._setLineDash.call(this,t,this.selectionDashArray),t.strokeRect(a,l,c-a,h-l))},findTarget:function(t,e){if(!this.skipTargetFind){var r,n,o=this.getPointer(t,!0),a=this._activeObject,s=this.getActiveObjects(),l=i(t),c=s.length>1&&!e||1===s.length;if(this.targets=[],c&&a._findTargetCorner(o,l)||s.length>1&&!e&&a===this._searchPossibleTargets([a],o))return a;if(1===s.length&&a===this._searchPossibleTargets([a],o)){if(!this.preserveObjectStacking)return a;r=a,n=this.targets,this.targets=[]}var h=this._searchPossibleTargets(this._objects,o);return t[this.altSelectionKey]&&h&&r&&h!==r&&(h=r,this.targets=n),h}},_checkTarget:function(t,e,i){if(e&&e.visible&&e.evented&&e.containsPoint(t)){if(!this.perPixelTargetFind&&!e.perPixelTargetFind||e.isEditing)return!0;if(!this.isTargetTransparent(e,i.x,i.y))return!0}},_searchPossibleTargets:function(t,e){for(var i,r,n=t.length;n--;){var o=t[n],a=o.group?this._normalizePointer(o.group,e):e;if(this._checkTarget(a,o,e)){(i=t[n]).subTargetCheck&&i instanceof s.Group&&(r=this._searchPossibleTargets(i._objects,e))&&this.targets.push(r);break}}return i},restorePointerVpt:function(t){return s.util.transformPoint(t,s.util.invertTransform(this.viewportTransform))},getPointer:function(e,i){if(this._absolutePointer&&!i)return this._absolutePointer;if(this._pointer&&i)return this._pointer;var r,n=t(e),o=this.upperCanvasEl,a=o.getBoundingClientRect(),s=a.width||0,l=a.height||0;(!s||!l)&&("top"in a&&"bottom"in a&&(l=Math.abs(a.top-a.bottom)),"right"in a&&"left"in a&&(s=Math.abs(a.right-a.left))),this.calcOffset(),n.x=n.x-this._offset.left,n.y=n.y-this._offset.top,i||(n=this.restorePointerVpt(n));var c=this.getRetinaScaling();return 1!==c&&(n.x/=c,n.y/=c),r=0===s||0===l?{width:1,height:1}:{width:o.width/s,height:o.height/l},{x:n.x*r.width,y:n.y*r.height}},_createUpperCanvas:function(){var t=this.lowerCanvasEl.className.replace(/\s*lower-canvas\s*/,""),e=this.lowerCanvasEl,i=this.upperCanvasEl;i?i.className="":(i=this._createCanvasElement(),this.upperCanvasEl=i),s.util.addClass(i,"upper-canvas "+t),this.wrapperEl.appendChild(i),this._copyCanvasStyle(e,i),this._applyCanvasStyle(i),this.contextTop=i.getContext("2d")},getTopContext:function(){return this.contextTop},_createCacheCanvas:function(){this.cacheCanvasEl=this._createCanvasElement(),this.cacheCanvasEl.setAttribute("width",this.width),this.cacheCanvasEl.setAttribute("height",this.height),this.contextCache=this.cacheCanvasEl.getContext("2d")},_initWrapperElement:function(){this.wrapperEl=s.util.wrapElement(this.lowerCanvasEl,"div",{class:this.containerClass}),s.util.setStyle(this.wrapperEl,{width:this.width+"px",height:this.height+"px",position:"relative"}),s.util.makeElementUnselectable(this.wrapperEl)},_applyCanvasStyle:function(t){var e=this.width||t.width,i=this.height||t.height;s.util.setStyle(t,{position:"absolute",width:e+"px",height:i+"px",left:0,top:0,"touch-action":this.allowTouchScrolling?"manipulation":"none","-ms-touch-action":this.allowTouchScrolling?"manipulation":"none"}),t.width=e,t.height=i,s.util.makeElementUnselectable(t)},_copyCanvasStyle:function(t,e){e.style.cssText=t.style.cssText},getSelectionContext:function(){return this.contextTop},getSelectionElement:function(){return this.upperCanvasEl},getActiveObject:function(){return this._activeObject},getActiveObjects:function(){var t=this._activeObject;return t?"activeSelection"===t.type&&t._objects?t._objects.slice(0):[t]:[]},_onObjectRemoved:function(t){t===this._activeObject&&(this.fire("before:selection:cleared",{target:t}),this._discardActiveObject(),this.fire("selection:cleared",{target:t}),t.fire("deselected")),t===this._hoveredTarget&&(this._hoveredTarget=null,this._hoveredTargets=[]),this.callSuper("_onObjectRemoved",t)},_fireSelectionEvents:function(t,e){var i=!1,r=this.getActiveObjects(),n=[],o=[];t.forEach(function(t){-1===r.indexOf(t)&&(i=!0,t.fire("deselected",{e,target:t}),o.push(t))}),r.forEach(function(r){-1===t.indexOf(r)&&(i=!0,r.fire("selected",{e,target:r}),n.push(r))}),t.length>0&&r.length>0?i&&this.fire("selection:updated",{e,selected:n,deselected:o}):r.length>0?this.fire("selection:created",{e,selected:n}):t.length>0&&this.fire("selection:cleared",{e,deselected:o})},setActiveObject:function(t,e){var i=this.getActiveObjects();return this._setActiveObject(t,e),this._fireSelectionEvents(i,e),this},_setActiveObject:function(t,e){return!(this._activeObject===t||!this._discardActiveObject(e,t)||t.onSelect({e})||(this._activeObject=t,0))},_discardActiveObject:function(t,e){var i=this._activeObject;if(i){if(i.onDeselect({e:t,object:e}))return!1;this._activeObject=null}return!0},discardActiveObject:function(t){var e=this.getActiveObjects(),i=this.getActiveObject();return e.length&&this.fire("before:selection:cleared",{target:i,e:t}),this._discardActiveObject(t),this._fireSelectionEvents(e,t),this},dispose:function(){var t=this.wrapperEl;return this.removeListeners(),t.removeChild(this.upperCanvasEl),t.removeChild(this.lowerCanvasEl),this.contextCache=null,this.contextTop=null,["upperCanvasEl","cacheCanvasEl"].forEach(function(t){s.util.cleanUpJsdomNode(this[t]),this[t]=void 0}.bind(this)),t.parentNode&&t.parentNode.replaceChild(this.lowerCanvasEl,this.wrapperEl),delete this.wrapperEl,s.StaticCanvas.prototype.dispose.call(this),this},clear:function(){return this.discardActiveObject(),this.clearContext(this.contextTop),this.callSuper("clear")},drawControls:function(t){var e=this._activeObject;e&&e._renderControls(t)},_toObject:function(t,e,i){var r=this._realizeGroupTransformOnObject(t),n=this.callSuper("_toObject",t,e,i);return this._unwindGroupTransformOnObject(t,r),n},_realizeGroupTransformOnObject:function(t){if(t.group&&"activeSelection"===t.group.type&&this._activeObject===t.group){var e={};return["angle","flipX","flipY","left","scaleX","scaleY","skewX","skewY","top"].forEach(function(i){e[i]=t[i]}),s.util.addTransformToObject(t,this._activeObject.calcOwnMatrix()),e}return null},_unwindGroupTransformOnObject:function(t,e){e&&t.set(e)},_setSVGObject:function(t,e,i){var r=this._realizeGroupTransformOnObject(e);this.callSuper("_setSVGObject",t,e,i),this._unwindGroupTransformOnObject(e,r)},setViewportTransform:function(t){this.renderOnAddRemove&&this._activeObject&&this._activeObject.isEditing&&this._activeObject.clearContextTop(),s.StaticCanvas.prototype.setViewportTransform.call(this,t)}}),s.StaticCanvas)"prototype"!==r&&(s.Canvas[r]=s.StaticCanvas[r])}(),function(){var t=s.util.addListener,e=s.util.removeListener,i={passive:!1};function r(t,e){return t.button&&t.button===e-1}s.util.object.extend(s.Canvas.prototype,{mainTouchId:null,_initEventListeners:function(){this.removeListeners(),this._bindEvents(),this.addOrRemove(t,"add")},_getEventPrefix:function(){return this.enablePointerEvents?"pointer":"mouse"},addOrRemove:function(t,e){var r=this.upperCanvasEl,n=this._getEventPrefix();t(s.window,"resize",this._onResize),t(r,n+"down",this._onMouseDown),t(r,n+"move",this._onMouseMove,i),t(r,n+"out",this._onMouseOut),t(r,n+"enter",this._onMouseEnter),t(r,"wheel",this._onMouseWheel),t(r,"contextmenu",this._onContextMenu),t(r,"dblclick",this._onDoubleClick),t(r,"dragover",this._onDragOver),t(r,"dragenter",this._onDragEnter),t(r,"dragleave",this._onDragLeave),t(r,"drop",this._onDrop),this.enablePointerEvents||t(r,"touchstart",this._onTouchStart,i),typeof eventjs<"u"&&e in eventjs&&(eventjs[e](r,"gesture",this._onGesture),eventjs[e](r,"drag",this._onDrag),eventjs[e](r,"orientation",this._onOrientationChange),eventjs[e](r,"shake",this._onShake),eventjs[e](r,"longpress",this._onLongPress))},removeListeners:function(){this.addOrRemove(e,"remove");var t=this._getEventPrefix();e(s.document,t+"up",this._onMouseUp),e(s.document,"touchend",this._onTouchEnd,i),e(s.document,t+"move",this._onMouseMove,i),e(s.document,"touchmove",this._onMouseMove,i)},_bindEvents:function(){this.eventsBound||(this._onMouseDown=this._onMouseDown.bind(this),this._onTouchStart=this._onTouchStart.bind(this),this._onMouseMove=this._onMouseMove.bind(this),this._onMouseUp=this._onMouseUp.bind(this),this._onTouchEnd=this._onTouchEnd.bind(this),this._onResize=this._onResize.bind(this),this._onGesture=this._onGesture.bind(this),this._onDrag=this._onDrag.bind(this),this._onShake=this._onShake.bind(this),this._onLongPress=this._onLongPress.bind(this),this._onOrientationChange=this._onOrientationChange.bind(this),this._onMouseWheel=this._onMouseWheel.bind(this),this._onMouseOut=this._onMouseOut.bind(this),this._onMouseEnter=this._onMouseEnter.bind(this),this._onContextMenu=this._onContextMenu.bind(this),this._onDoubleClick=this._onDoubleClick.bind(this),this._onDragOver=this._onDragOver.bind(this),this._onDragEnter=this._simpleEventHandler.bind(this,"dragenter"),this._onDragLeave=this._simpleEventHandler.bind(this,"dragleave"),this._onDrop=this._onDrop.bind(this),this.eventsBound=!0)},_onGesture:function(t,e){this.__onTransformGesture&&this.__onTransformGesture(t,e)},_onDrag:function(t,e){this.__onDrag&&this.__onDrag(t,e)},_onMouseWheel:function(t){this.__onMouseWheel(t)},_onMouseOut:function(t){var e=this._hoveredTarget;this.fire("mouse:out",{target:e,e:t}),this._hoveredTarget=null,e&&e.fire("mouseout",{e:t});var i=this;this._hoveredTargets.forEach(function(r){i.fire("mouse:out",{target:e,e:t}),r&&e.fire("mouseout",{e:t})}),this._hoveredTargets=[]},_onMouseEnter:function(t){!this._currentTransform&&!this.findTarget(t)&&(this.fire("mouse:over",{target:null,e:t}),this._hoveredTarget=null,this._hoveredTargets=[])},_onOrientationChange:function(t,e){this.__onOrientationChange&&this.__onOrientationChange(t,e)},_onShake:function(t,e){this.__onShake&&this.__onShake(t,e)},_onLongPress:function(t,e){this.__onLongPress&&this.__onLongPress(t,e)},_onDragOver:function(t){t.preventDefault();var e=this._simpleEventHandler("dragover",t);this._fireEnterLeaveEvents(e,t)},_onDrop:function(t){return this._simpleEventHandler("drop:before",t),this._simpleEventHandler("drop",t)},_onContextMenu:function(t){return this.stopContextMenu&&(t.stopPropagation(),t.preventDefault()),!1},_onDoubleClick:function(t){this._cacheTransformEventData(t),this._handleEvent(t,"dblclick"),this._resetTransformEventData(t)},getPointerId:function(t){var e=t.changedTouches;return e?e[0]&&e[0].identifier:this.enablePointerEvents?t.pointerId:-1},_isMainEvent:function(t){return!0===t.isPrimary||!1!==t.isPrimary&&("touchend"===t.type&&0===t.touches.length||!t.changedTouches||t.changedTouches[0].identifier===this.mainTouchId)},_onTouchStart:function(r){r.preventDefault(),null===this.mainTouchId&&(this.mainTouchId=this.getPointerId(r)),this.__onMouseDown(r),this._resetTransformEventData();var n=this.upperCanvasEl,o=this._getEventPrefix();t(s.document,"touchend",this._onTouchEnd,i),t(s.document,"touchmove",this._onMouseMove,i),e(n,o+"down",this._onMouseDown)},_onMouseDown:function(r){this.__onMouseDown(r),this._resetTransformEventData();var n=this.upperCanvasEl,o=this._getEventPrefix();e(n,o+"move",this._onMouseMove,i),t(s.document,o+"up",this._onMouseUp),t(s.document,o+"move",this._onMouseMove,i)},_onTouchEnd:function(r){if(!(r.touches.length>0)){this.__onMouseUp(r),this._resetTransformEventData(),this.mainTouchId=null;var n=this._getEventPrefix();e(s.document,"touchend",this._onTouchEnd,i),e(s.document,"touchmove",this._onMouseMove,i);var o=this;this._willAddMouseDown&&clearTimeout(this._willAddMouseDown),this._willAddMouseDown=setTimeout(function(){t(o.upperCanvasEl,n+"down",o._onMouseDown),o._willAddMouseDown=0},400)}},_onMouseUp:function(r){this.__onMouseUp(r),this._resetTransformEventData();var n=this.upperCanvasEl,o=this._getEventPrefix();this._isMainEvent(r)&&(e(s.document,o+"up",this._onMouseUp),e(s.document,o+"move",this._onMouseMove,i),t(n,o+"move",this._onMouseMove,i))},_onMouseMove:function(t){!this.allowTouchScrolling&&t.preventDefault&&t.preventDefault(),this.__onMouseMove(t)},_onResize:function(){this.calcOffset()},_shouldRender:function(t){var e=this._activeObject;return!!(!!e!=!!t||e&&t&&e!==t)||(e&&e.isEditing,!1)},__onMouseUp:function(t){var e,i=this._currentTransform,n=this._groupSelector,o=!1,a=!n||0===n.left&&0===n.top;if(this._cacheTransformEventData(t),e=this._target,this._handleEvent(t,"up:before"),r(t,3))this.fireRightClick&&this._handleEvent(t,"up",3,a);else{if(r(t,2))return this.fireMiddleClick&&this._handleEvent(t,"up",2,a),void this._resetTransformEventData();if(this.isDrawingMode&&this._isCurrentlyDrawing)this._onMouseUpInDrawingMode(t);else if(this._isMainEvent(t)){if(i&&(this._finalizeCurrentTransform(t),o=i.actionPerformed),!a){var l=e===this._activeObject;this._maybeGroupObjects(t),o||(o=this._shouldRender(e)||!l&&e===this._activeObject)}var c,h;if(e){if(c=e._findTargetCorner(this.getPointer(t,!0),s.util.isTouchEvent(t)),e.selectable&&e!==this._activeObject&&"up"===e.activeOn)this.setActiveObject(e,t),o=!0;else{var u=e.controls[c],d=u&&u.getMouseUpHandler(t,e,u);d&&d(t,i,(h=this.getPointer(t)).x,h.y)}e.isMoving=!1}if(i&&(i.target!==e||i.corner!==c)){var p=i.target&&i.target.controls[i.corner],f=p&&p.getMouseUpHandler(t,e,u);h=h||this.getPointer(t),f&&f(t,i,h.x,h.y)}this._setCursorFromEvent(t,e),this._handleEvent(t,"up",1,a),this._groupSelector=null,this._currentTransform=null,e&&(e.__corner=0),o?this.requestRenderAll():a||this.renderTop()}}},_simpleEventHandler:function(t,e){var i=this.findTarget(e),r=this.targets,n={e,target:i,subTargets:r};if(this.fire(t,n),i&&i.fire(t,n),!r)return i;for(var o=0;o<r.length;o++)r[o].fire(t,n);return i},_handleEvent:function(t,e,i,r){var n=this._target,o=this.targets||[],a={e:t,target:n,subTargets:o,button:i||1,isClick:r||!1,pointer:this._pointer,absolutePointer:this._absolutePointer,transform:this._currentTransform};"up"===e&&(a.currentTarget=this.findTarget(t),a.currentSubTargets=this.targets),this.fire("mouse:"+e,a),n&&n.fire("mouse"+e,a);for(var s=0;s<o.length;s++)o[s].fire("mouse"+e,a)},_finalizeCurrentTransform:function(t){var e=this._currentTransform,i=e.target,r={e:t,target:i,transform:e,action:e.action};i._scaling&&(i._scaling=!1),i.setCoords(),(e.actionPerformed||this.stateful&&i.hasStateChanged())&&this._fire("modified",r)},_onMouseDownInDrawingMode:function(t){this._isCurrentlyDrawing=!0,this.getActiveObject()&&this.discardActiveObject(t).requestRenderAll();var e=this.getPointer(t);this.freeDrawingBrush.onMouseDown(e,{e:t,pointer:e}),this._handleEvent(t,"down")},_onMouseMoveInDrawingMode:function(t){if(this._isCurrentlyDrawing){var e=this.getPointer(t);this.freeDrawingBrush.onMouseMove(e,{e:t,pointer:e})}this.setCursor(this.freeDrawingCursor),this._handleEvent(t,"move")},_onMouseUpInDrawingMode:function(t){var e=this.getPointer(t);this._isCurrentlyDrawing=this.freeDrawingBrush.onMouseUp({e:t,pointer:e}),this._handleEvent(t,"up")},__onMouseDown:function(t){this._cacheTransformEventData(t),this._handleEvent(t,"down:before");var e=this._target;if(r(t,3))this.fireRightClick&&this._handleEvent(t,"down",3);else if(r(t,2))this.fireMiddleClick&&this._handleEvent(t,"down",2);else if(this.isDrawingMode)this._onMouseDownInDrawingMode(t);else if(this._isMainEvent(t)&&!this._currentTransform){var i=this._pointer;this._previousPointer=i;var n=this._shouldRender(e),o=this._shouldGroup(t,e);if(this._shouldClearSelection(t,e)?this.discardActiveObject(t):o&&(this._handleGrouping(t,e),e=this._activeObject),this.selection&&(!e||!e.selectable&&!e.isEditing&&e!==this._activeObject)&&(this._groupSelector={ex:this._absolutePointer.x,ey:this._absolutePointer.y,top:0,left:0}),e){var a=e===this._activeObject;e.selectable&&"down"===e.activeOn&&this.setActiveObject(e,t);var l=e._findTargetCorner(this.getPointer(t,!0),s.util.isTouchEvent(t));if(e.__corner=l,e===this._activeObject&&(l||!o)){this._setupCurrentTransform(t,e,a);var c=e.controls[l],h=(i=this.getPointer(t),c&&c.getMouseDownHandler(t,e,c));h&&h(t,this._currentTransform,i.x,i.y)}}this._handleEvent(t,"down"),(n||o)&&this.requestRenderAll()}},_resetTransformEventData:function(){this._target=null,this._pointer=null,this._absolutePointer=null},_cacheTransformEventData:function(t){this._resetTransformEventData(),this._pointer=this.getPointer(t,!0),this._absolutePointer=this.restorePointerVpt(this._pointer),this._target=this._currentTransform?this._currentTransform.target:this.findTarget(t)||null},_beforeTransform:function(t){var e=this._currentTransform;this.stateful&&e.target.saveState(),this.fire("before:transform",{e:t,transform:e})},__onMouseMove:function(t){var e,i;if(this._handleEvent(t,"move:before"),this._cacheTransformEventData(t),this.isDrawingMode)this._onMouseMoveInDrawingMode(t);else if(this._isMainEvent(t)){var r=this._groupSelector;r?(i=this._absolutePointer,r.left=i.x-r.ex,r.top=i.y-r.ey,this.renderTop()):this._currentTransform?this._transformObject(t):(e=this.findTarget(t)||null,this._setCursorFromEvent(t,e),this._fireOverOutEvents(e,t)),this._handleEvent(t,"move"),this._resetTransformEventData()}},_fireOverOutEvents:function(t,e){var i=this._hoveredTarget,r=this._hoveredTargets,n=this.targets,o=Math.max(r.length,n.length);this.fireSyntheticInOutEvents(t,e,{oldTarget:i,evtOut:"mouseout",canvasEvtOut:"mouse:out",evtIn:"mouseover",canvasEvtIn:"mouse:over"});for(var a=0;a<o;a++)this.fireSyntheticInOutEvents(n[a],e,{oldTarget:r[a],evtOut:"mouseout",evtIn:"mouseover"});this._hoveredTarget=t,this._hoveredTargets=this.targets.concat()},_fireEnterLeaveEvents:function(t,e){var i=this._draggedoverTarget,r=this._hoveredTargets,n=this.targets,o=Math.max(r.length,n.length);this.fireSyntheticInOutEvents(t,e,{oldTarget:i,evtOut:"dragleave",evtIn:"dragenter"});for(var a=0;a<o;a++)this.fireSyntheticInOutEvents(n[a],e,{oldTarget:r[a],evtOut:"dragleave",evtIn:"dragenter"});this._draggedoverTarget=t},fireSyntheticInOutEvents:function(t,e,i){var r,n,o,a=i.oldTarget,s=a!==t,l=i.canvasEvtIn,c=i.canvasEvtOut;s&&(r={e,target:t,previousTarget:a},n={e,target:a,nextTarget:t}),o=t&&s,a&&s&&(c&&this.fire(c,n),a.fire(i.evtOut,n)),o&&(l&&this.fire(l,r),t.fire(i.evtIn,r))},__onMouseWheel:function(t){this._cacheTransformEventData(t),this._handleEvent(t,"wheel"),this._resetTransformEventData()},_transformObject:function(t){var e=this.getPointer(t),i=this._currentTransform;i.reset=!1,i.shiftKey=t.shiftKey,i.altKey=t[this.centeredKey],this._performTransformAction(t,i,e),i.actionPerformed&&this.requestRenderAll()},_performTransformAction:function(t,e,i){var r=i.x,n=i.y,o=e.action,a=!1,s=e.actionHandler;s&&(a=s(t,e,r,n)),"drag"===o&&a&&(e.target.isMoving=!0,this.setCursor(e.target.moveCursor||this.moveCursor)),e.actionPerformed=e.actionPerformed||a},_fire:s.controlsUtils.fireEvent,_setCursorFromEvent:function(t,e){if(!e)return this.setCursor(this.defaultCursor),!1;var i=e.hoverCursor||this.hoverCursor,r=this._activeObject&&"activeSelection"===this._activeObject.type?this._activeObject:null,n=(!r||!r.contains(e))&&e._findTargetCorner(this.getPointer(t,!0));n?this.setCursor(this.getCornerCursor(n,e,t)):(e.subTargetCheck&&this.targets.concat().reverse().map(function(t){i=t.hoverCursor||i}),this.setCursor(i))},getCornerCursor:function(t,e,i){var r=e.controls[t];return r.cursorStyleHandler(i,r,e)}})}(),function(){var t=Math.min,e=Math.max;s.util.object.extend(s.Canvas.prototype,{_shouldGroup:function(t,e){var i=this._activeObject;return i&&this._isSelectionKeyPressed(t)&&e&&e.selectable&&this.selection&&(i!==e||"activeSelection"===i.type)&&!e.onSelect({e:t})},_handleGrouping:function(t,e){var i=this._activeObject;i.__corner||e===i&&(!(e=this.findTarget(t,!0))||!e.selectable)||(i&&"activeSelection"===i.type?this._updateActiveSelection(e,t):this._createActiveSelection(e,t))},_updateActiveSelection:function(t,e){var i=this._activeObject,r=i._objects.slice(0);i.contains(t)?(i.removeWithUpdate(t),this._hoveredTarget=t,this._hoveredTargets=this.targets.concat(),1===i.size()&&this._setActiveObject(i.item(0),e)):(i.addWithUpdate(t),this._hoveredTarget=i,this._hoveredTargets=this.targets.concat()),this._fireSelectionEvents(r,e)},_createActiveSelection:function(t,e){var i=this.getActiveObjects(),r=this._createGroup(t);this._hoveredTarget=r,this._setActiveObject(r,e),this._fireSelectionEvents(i,e)},_createGroup:function(t){var e=this._objects,i=e.indexOf(this._activeObject)<e.indexOf(t)?[this._activeObject,t]:[t,this._activeObject];return this._activeObject.isEditing&&this._activeObject.exitEditing(),new s.ActiveSelection(i,{canvas:this})},_groupSelectedObjects:function(t){var e,i=this._collectObjects(t);1===i.length?this.setActiveObject(i[0],t):i.length>1&&(e=new s.ActiveSelection(i.reverse(),{canvas:this}),this.setActiveObject(e,t))},_collectObjects:function(i){for(var r,n=[],o=this._groupSelector.ex,a=this._groupSelector.ey,l=o+this._groupSelector.left,c=a+this._groupSelector.top,h=new s.Point(t(o,l),t(a,c)),u=new s.Point(e(o,l),e(a,c)),d=!this.selectionFullyContained,p=o===l&&a===c,f=this._objects.length;f--&&!((r=this._objects[f])&&r.selectable&&r.visible&&(d&&r.intersectsWithRect(h,u,!0)||r.isContainedWithinRect(h,u,!0)||d&&r.containsPoint(h,null,!0)||d&&r.containsPoint(u,null,!0))&&(n.push(r),p)););return n.length>1&&(n=n.filter(function(t){return!t.onSelect({e:i})})),n},_maybeGroupObjects:function(t){this.selection&&this._groupSelector&&this._groupSelectedObjects(t),this.setCursor(this.defaultCursor),this._groupSelector=null}})}(),s.util.object.extend(s.StaticCanvas.prototype,{toDataURL:function(t){t||(t={});var e=t.format||"png",i=t.quality||1,r=(t.multiplier||1)*(t.enableRetinaScaling?this.getRetinaScaling():1),n=this.toCanvasElement(r,t);return s.util.toDataURL(n,e,i)},toCanvasElement:function(t,e){t=t||1;var i=((e=e||{}).width||this.width)*t,r=(e.height||this.height)*t,n=this.getZoom(),o=this.width,a=this.height,l=n*t,c=this.viewportTransform,h=(c[4]-(e.left||0))*t,u=(c[5]-(e.top||0))*t,d=this.interactive,p=[l,0,0,l,h,u],f=this.enableRetinaScaling,g=s.util.createCanvasElement(),m=this.contextTop;return g.width=i,g.height=r,this.contextTop=null,this.enableRetinaScaling=!1,this.interactive=!1,this.viewportTransform=p,this.width=i,this.height=r,this.calcViewportBoundaries(),this.renderCanvas(g.getContext("2d"),this._objects),this.viewportTransform=c,this.width=o,this.height=a,this.calcViewportBoundaries(),this.interactive=d,this.enableRetinaScaling=f,this.contextTop=m,g}}),s.util.object.extend(s.StaticCanvas.prototype,{loadFromJSON:function(t,e,i){if(t){var r="string"==typeof t?JSON.parse(t):s.util.object.clone(t),n=this,o=r.clipPath,a=this.renderOnAddRemove;return this.renderOnAddRemove=!1,delete r.clipPath,this._enlivenObjects(r.objects,function(t){n.clear(),n._setBgOverlay(r,function(){o?n._enlivenObjects([o],function(i){n.clipPath=i[0],n.__setupCanvas.call(n,r,t,a,e)}):n.__setupCanvas.call(n,r,t,a,e)})},i),this}},__setupCanvas:function(t,e,i,r){var n=this;e.forEach(function(t,e){n.insertAt(t,e)}),this.renderOnAddRemove=i,delete t.objects,delete t.backgroundImage,delete t.overlayImage,delete t.background,delete t.overlay,this._setOptions(t),this.renderAll(),r&&r()},_setBgOverlay:function(t,e){var i={backgroundColor:!1,overlayColor:!1,backgroundImage:!1,overlayImage:!1};if(t.backgroundImage||t.overlayImage||t.background||t.overlay){var r=function(){i.backgroundImage&&i.overlayImage&&i.backgroundColor&&i.overlayColor&&e&&e()};this.__setBgOverlay("backgroundImage",t.backgroundImage,i,r),this.__setBgOverlay("overlayImage",t.overlayImage,i,r),this.__setBgOverlay("backgroundColor",t.background,i,r),this.__setBgOverlay("overlayColor",t.overlay,i,r)}else e&&e()},__setBgOverlay:function(t,e,i,r){var n=this;if(!e)return i[t]=!0,void(r&&r());"backgroundImage"===t||"overlayImage"===t?s.util.enlivenObjects([e],function(e){n[t]=e[0],i[t]=!0,r&&r()}):this["set"+s.util.string.capitalize(t,!0)](e,function(){i[t]=!0,r&&r()})},_enlivenObjects:function(t,e,i){t&&0!==t.length?s.util.enlivenObjects(t,function(t){e&&e(t)},null,i):e&&e([])},_toDataURL:function(t,e){this.clone(function(i){e(i.toDataURL(t))})},_toDataURLWithMultiplier:function(t,e,i){this.clone(function(r){i(r.toDataURLWithMultiplier(t,e))})},clone:function(t,e){var i=JSON.stringify(this.toJSON(e));this.cloneWithoutData(function(e){e.loadFromJSON(i,function(){t&&t(e)})})},cloneWithoutData:function(t){var e=s.util.createCanvasElement();e.width=this.width,e.height=this.height;var i=new s.Canvas(e);this.backgroundImage?(i.setBackgroundImage(this.backgroundImage.src,function(){i.renderAll(),t&&t(i)}),i.backgroundImageOpacity=this.backgroundImageOpacity,i.backgroundImageStretch=this.backgroundImageStretch):t&&t(i)}}),function(t){var e=t.fabric||(t.fabric={}),i=e.util.object.extend,r=e.util.object.clone,n=e.util.toFixed,o=e.util.string.capitalize,a=e.util.degreesToRadians,s=!e.isLikelyNode;e.Object||(e.Object=e.util.createClass(e.CommonMethods,{type:"object",originX:"left",originY:"top",top:0,left:0,width:0,height:0,scaleX:1,scaleY:1,flipX:!1,flipY:!1,opacity:1,angle:0,skewX:0,skewY:0,cornerSize:13,touchCornerSize:24,transparentCorners:!0,hoverCursor:null,moveCursor:null,padding:0,borderColor:"rgb(178,204,255)",borderDashArray:null,cornerColor:"rgb(178,204,255)",cornerStrokeColor:null,cornerStyle:"rect",cornerDashArray:null,centeredScaling:!1,centeredRotation:!0,fill:"rgb(0,0,0)",fillRule:"nonzero",globalCompositeOperation:"source-over",backgroundColor:"",selectionBackgroundColor:"",stroke:null,strokeWidth:1,strokeDashArray:null,strokeDashOffset:0,strokeLineCap:"butt",strokeLineJoin:"miter",strokeMiterLimit:4,shadow:null,borderOpacityWhenMoving:.4,borderScaleFactor:1,minScaleLimit:0,selectable:!0,evented:!0,visible:!0,hasControls:!0,hasBorders:!0,perPixelTargetFind:!1,includeDefaultValues:!0,lockMovementX:!1,lockMovementY:!1,lockRotation:!1,lockScalingX:!1,lockScalingY:!1,lockSkewingX:!1,lockSkewingY:!1,lockScalingFlip:!1,excludeFromExport:!1,objectCaching:s,statefullCache:!1,noScaleCache:!0,strokeUniform:!1,dirty:!0,__corner:0,paintFirst:"fill",activeOn:"down",stateProperties:"top left width height scaleX scaleY flipX flipY originX originY transformMatrix stroke strokeWidth strokeDashArray strokeLineCap strokeDashOffset strokeLineJoin strokeMiterLimit angle opacity fill globalCompositeOperation shadow visible backgroundColor skewX skewY fillRule paintFirst clipPath strokeUniform".split(" "),cacheProperties:"fill stroke strokeWidth strokeDashArray width height paintFirst strokeUniform strokeLineCap strokeDashOffset strokeLineJoin strokeMiterLimit backgroundColor clipPath".split(" "),colorProperties:"fill stroke backgroundColor".split(" "),clipPath:void 0,inverted:!1,absolutePositioned:!1,initialize:function(t){t&&this.setOptions(t)},_createCacheCanvas:function(){this._cacheProperties={},this._cacheCanvas=e.util.createCanvasElement(),this._cacheContext=this._cacheCanvas.getContext("2d"),this._updateCacheCanvas(),this.dirty=!0},_limitCacheSize:function(t){var i=e.perfLimitSizeTotal,r=t.width,n=t.height,o=e.maxCacheSideLimit,a=e.minCacheSideLimit;if(r<=o&&n<=o&&r*n<=i)return r<a&&(t.width=a),n<a&&(t.height=a),t;var s=r/n,l=e.util.limitDimsByArea(s,i),c=e.util.capValue,h=c(a,l.x,o),u=c(a,l.y,o);return r>h&&(t.zoomX/=r/h,t.width=h,t.capped=!0),n>u&&(t.zoomY/=n/u,t.height=u,t.capped=!0),t},_getCacheCanvasDimensions:function(){var t=this.getTotalObjectScaling(),e=this._getTransformedDimensions(0,0),i=e.x*t.scaleX/this.scaleX,r=e.y*t.scaleY/this.scaleY;return{width:i+2,height:r+2,zoomX:t.scaleX,zoomY:t.scaleY,x:i,y:r}},_updateCacheCanvas:function(){var t=this.canvas;if(this.noScaleCache&&t&&t._currentTransform){var i=t._currentTransform.target,r=t._currentTransform.action;if(this===i&&r.slice&&"scale"===r.slice(0,5))return!1}var n,o,a=this._cacheCanvas,s=this._limitCacheSize(this._getCacheCanvasDimensions()),l=e.minCacheSideLimit,c=s.width,h=s.height,u=s.zoomX,d=s.zoomY,p=c!==this.cacheWidth||h!==this.cacheHeight,f=this.zoomX!==u||this.zoomY!==d,g=p||f,m=0,v=0,b=!1;if(p){var y=this._cacheCanvas.width,x=this._cacheCanvas.height,w=c>y||h>x;b=w||(c<.9*y||h<.9*x)&&y>l&&x>l,w&&!s.capped&&(c>l||h>l)&&(m=.1*c,v=.1*h)}return this instanceof e.Text&&this.path&&(g=!0,b=!0,m+=this.getHeightOfLine(0)*this.zoomX,v+=this.getHeightOfLine(0)*this.zoomY),!!g&&(b?(a.width=Math.ceil(c+m),a.height=Math.ceil(h+v)):(this._cacheContext.setTransform(1,0,0,1,0,0),this._cacheContext.clearRect(0,0,a.width,a.height)),n=s.x/2,o=s.y/2,this.cacheTranslationX=Math.round(a.width/2-n)+n,this.cacheTranslationY=Math.round(a.height/2-o)+o,this.cacheWidth=c,this.cacheHeight=h,this._cacheContext.translate(this.cacheTranslationX,this.cacheTranslationY),this._cacheContext.scale(u,d),this.zoomX=u,this.zoomY=d,!0)},setOptions:function(t){this._setOptions(t),this._initGradient(t.fill,"fill"),this._initGradient(t.stroke,"stroke"),this._initPattern(t.fill,"fill"),this._initPattern(t.stroke,"stroke")},transform:function(t){var e=this.group&&!this.group._transformDone||this.group&&this.canvas&&t===this.canvas.contextTop,i=this.calcTransformMatrix(!e);t.transform(i[0],i[1],i[2],i[3],i[4],i[5])},toObject:function(t){var i=e.Object.NUM_FRACTION_DIGITS,r={type:this.type,version:e.version,originX:this.originX,originY:this.originY,left:n(this.left,i),top:n(this.top,i),width:n(this.width,i),height:n(this.height,i),fill:this.fill&&this.fill.toObject?this.fill.toObject():this.fill,stroke:this.stroke&&this.stroke.toObject?this.stroke.toObject():this.stroke,strokeWidth:n(this.strokeWidth,i),strokeDashArray:this.strokeDashArray?this.strokeDashArray.concat():this.strokeDashArray,strokeLineCap:this.strokeLineCap,strokeDashOffset:this.strokeDashOffset,strokeLineJoin:this.strokeLineJoin,strokeUniform:this.strokeUniform,strokeMiterLimit:n(this.strokeMiterLimit,i),scaleX:n(this.scaleX,i),scaleY:n(this.scaleY,i),angle:n(this.angle,i),flipX:this.flipX,flipY:this.flipY,opacity:n(this.opacity,i),shadow:this.shadow&&this.shadow.toObject?this.shadow.toObject():this.shadow,visible:this.visible,backgroundColor:this.backgroundColor,fillRule:this.fillRule,paintFirst:this.paintFirst,globalCompositeOperation:this.globalCompositeOperation,skewX:n(this.skewX,i),skewY:n(this.skewY,i)};return this.clipPath&&!this.clipPath.excludeFromExport&&(r.clipPath=this.clipPath.toObject(t),r.clipPath.inverted=this.clipPath.inverted,r.clipPath.absolutePositioned=this.clipPath.absolutePositioned),e.util.populateWithProperties(this,r,t),this.includeDefaultValues||(r=this._removeDefaultValues(r)),r},toDatalessObject:function(t){return this.toObject(t)},_removeDefaultValues:function(t){var i=e.util.getKlass(t.type).prototype;return i.stateProperties.forEach(function(e){"left"===e||"top"===e||(t[e]===i[e]&&delete t[e],Array.isArray(t[e])&&Array.isArray(i[e])&&0===t[e].length&&0===i[e].length&&delete t[e])}),t},toString:function(){return"#<fabric."+o(this.type)+">"},getObjectScaling:function(){if(!this.group)return{scaleX:this.scaleX,scaleY:this.scaleY};var t=e.util.qrDecompose(this.calcTransformMatrix());return{scaleX:Math.abs(t.scaleX),scaleY:Math.abs(t.scaleY)}},getTotalObjectScaling:function(){var t=this.getObjectScaling(),e=t.scaleX,i=t.scaleY;if(this.canvas){var r=this.canvas.getZoom(),n=this.canvas.getRetinaScaling();e*=r*n,i*=r*n}return{scaleX:e,scaleY:i}},getObjectOpacity:function(){var t=this.opacity;return this.group&&(t*=this.group.getObjectOpacity()),t},_set:function(t,i){var r="scaleX"===t||"scaleY"===t,n=this[t]!==i,o=!1;return r&&(i=this._constrainScale(i)),"scaleX"===t&&i<0?(this.flipX=!this.flipX,i*=-1):"scaleY"===t&&i<0?(this.flipY=!this.flipY,i*=-1):"shadow"!==t||!i||i instanceof e.Shadow?"dirty"===t&&this.group&&this.group.set("dirty",i):i=new e.Shadow(i),this[t]=i,n&&(o=this.group&&this.group.isOnACache(),this.cacheProperties.indexOf(t)>-1?(this.dirty=!0,o&&this.group.set("dirty",!0)):o&&this.stateProperties.indexOf(t)>-1&&this.group.set("dirty",!0)),this},setOnGroup:function(){},getViewportTransform:function(){return this.canvas&&this.canvas.viewportTransform?this.canvas.viewportTransform:e.iMatrix.concat()},isNotVisible:function(){return 0===this.opacity||!this.width&&!this.height&&0===this.strokeWidth||!this.visible},render:function(t){this.isNotVisible()||this.canvas&&this.canvas.skipOffscreen&&!this.group&&!this.isOnScreen()||(t.save(),this._setupCompositeOperation(t),this.drawSelectionBackground(t),this.transform(t),this._setOpacity(t),this._setShadow(t,this),this.shouldCache()?(this.renderCache(),this.drawCacheOnCanvas(t)):(this._removeCacheCanvas(),this.dirty=!1,this.drawObject(t),this.objectCaching&&this.statefullCache&&this.saveState({propertySet:"cacheProperties"})),t.restore())},renderCache:function(t){t=t||{},(!this._cacheCanvas||!this._cacheContext)&&this._createCacheCanvas(),this.isCacheDirty()&&(this.statefullCache&&this.saveState({propertySet:"cacheProperties"}),this.drawObject(this._cacheContext,t.forClipping),this.dirty=!1)},_removeCacheCanvas:function(){this._cacheCanvas=null,this._cacheContext=null,this.cacheWidth=0,this.cacheHeight=0},hasStroke:function(){return this.stroke&&"transparent"!==this.stroke&&0!==this.strokeWidth},hasFill:function(){return this.fill&&"transparent"!==this.fill},needsItsOwnCache:function(){return!!("stroke"===this.paintFirst&&this.hasFill()&&this.hasStroke()&&"object"==typeof this.shadow||this.clipPath)},shouldCache:function(){return this.ownCaching=this.needsItsOwnCache()||this.objectCaching&&(!this.group||!this.group.isOnACache()),this.ownCaching},willDrawShadow:function(){return!!this.shadow&&(0!==this.shadow.offsetX||0!==this.shadow.offsetY)},drawClipPathOnCache:function(t,i){if(t.save(),i.inverted?t.globalCompositeOperation="destination-out":t.globalCompositeOperation="destination-in",i.absolutePositioned){var r=e.util.invertTransform(this.calcTransformMatrix());t.transform(r[0],r[1],r[2],r[3],r[4],r[5])}i.transform(t),t.scale(1/i.zoomX,1/i.zoomY),t.drawImage(i._cacheCanvas,-i.cacheTranslationX,-i.cacheTranslationY),t.restore()},drawObject:function(t,e){var i=this.fill,r=this.stroke;e?(this.fill="black",this.stroke="",this._setClippingProperties(t)):this._renderBackground(t),this._render(t),this._drawClipPath(t,this.clipPath),this.fill=i,this.stroke=r},_drawClipPath:function(t,e){!e||(e.canvas=this.canvas,e.shouldCache(),e._transformDone=!0,e.renderCache({forClipping:!0}),this.drawClipPathOnCache(t,e))},drawCacheOnCanvas:function(t){t.scale(1/this.zoomX,1/this.zoomY),t.drawImage(this._cacheCanvas,-this.cacheTranslationX,-this.cacheTranslationY)},isCacheDirty:function(t){if(this.isNotVisible())return!1;if(this._cacheCanvas&&this._cacheContext&&!t&&this._updateCacheCanvas())return!0;if(this.dirty||this.clipPath&&this.clipPath.absolutePositioned||this.statefullCache&&this.hasStateChanged("cacheProperties")){if(this._cacheCanvas&&this._cacheContext&&!t){var e=this.cacheWidth/this.zoomX,i=this.cacheHeight/this.zoomY;this._cacheContext.clearRect(-e/2,-i/2,e,i)}return!0}return!1},_renderBackground:function(t){if(this.backgroundColor){var e=this._getNonTransformedDimensions();t.fillStyle=this.backgroundColor,t.fillRect(-e.x/2,-e.y/2,e.x,e.y),this._removeShadow(t)}},_setOpacity:function(t){this.group&&!this.group._transformDone?t.globalAlpha=this.getObjectOpacity():t.globalAlpha*=this.opacity},_setStrokeStyles:function(t,e){var i=e.stroke;i&&(t.lineWidth=e.strokeWidth,t.lineCap=e.strokeLineCap,t.lineDashOffset=e.strokeDashOffset,t.lineJoin=e.strokeLineJoin,t.miterLimit=e.strokeMiterLimit,i.toLive?"percentage"===i.gradientUnits||i.gradientTransform||i.patternTransform?this._applyPatternForTransformedGradient(t,i):(t.strokeStyle=i.toLive(t,this),this._applyPatternGradientTransform(t,i)):t.strokeStyle=e.stroke)},_setFillStyles:function(t,e){var i=e.fill;i&&(i.toLive?(t.fillStyle=i.toLive(t,this),this._applyPatternGradientTransform(t,e.fill)):t.fillStyle=i)},_setClippingProperties:function(t){t.globalAlpha=1,t.strokeStyle="transparent",t.fillStyle="#000000"},_setLineDash:function(t,e){!e||0===e.length||(1&e.length&&e.push.apply(e,e),t.setLineDash(e))},_renderControls:function(t,i){var r,n,o,s=this.getViewportTransform(),l=this.calcTransformMatrix();n=typeof(i=i||{}).hasBorders<"u"?i.hasBorders:this.hasBorders,o=typeof i.hasControls<"u"?i.hasControls:this.hasControls,l=e.util.multiplyTransformMatrices(s,l),r=e.util.qrDecompose(l),t.save(),t.translate(r.translateX,r.translateY),t.lineWidth=1*this.borderScaleFactor,this.group||(t.globalAlpha=this.isMoving?this.borderOpacityWhenMoving:1),this.flipX&&(r.angle-=180),t.rotate(a(this.group?r.angle:this.angle)),i.forActiveSelection||this.group?n&&this.drawBordersInGroup(t,r,i):n&&this.drawBorders(t,i),o&&this.drawControls(t,i),t.restore()},_setShadow:function(t){if(this.shadow){var i,r=this.shadow,n=this.canvas,o=n&&n.viewportTransform[0]||1,a=n&&n.viewportTransform[3]||1;i=r.nonScaling?{scaleX:1,scaleY:1}:this.getObjectScaling(),n&&n._isRetinaScaling()&&(o*=e.devicePixelRatio,a*=e.devicePixelRatio),t.shadowColor=r.color,t.shadowBlur=r.blur*e.browserShadowBlurConstant*(o+a)*(i.scaleX+i.scaleY)/4,t.shadowOffsetX=r.offsetX*o*i.scaleX,t.shadowOffsetY=r.offsetY*a*i.scaleY}},_removeShadow:function(t){!this.shadow||(t.shadowColor="",t.shadowBlur=t.shadowOffsetX=t.shadowOffsetY=0)},_applyPatternGradientTransform:function(t,e){if(!e||!e.toLive)return{offsetX:0,offsetY:0};var i=e.gradientTransform||e.patternTransform,r=-this.width/2+e.offsetX||0,n=-this.height/2+e.offsetY||0;return"percentage"===e.gradientUnits?t.transform(this.width,0,0,this.height,r,n):t.transform(1,0,0,1,r,n),i&&t.transform(i[0],i[1],i[2],i[3],i[4],i[5]),{offsetX:r,offsetY:n}},_renderPaintInOrder:function(t){"stroke"===this.paintFirst?(this._renderStroke(t),this._renderFill(t)):(this._renderFill(t),this._renderStroke(t))},_render:function(){},_renderFill:function(t){!this.fill||(t.save(),this._setFillStyles(t,this),"evenodd"===this.fillRule?t.fill("evenodd"):t.fill(),t.restore())},_renderStroke:function(t){if(this.stroke&&0!==this.strokeWidth){if(this.shadow&&!this.shadow.affectStroke&&this._removeShadow(t),t.save(),this.strokeUniform&&this.group){var e=this.getObjectScaling();t.scale(1/e.scaleX,1/e.scaleY)}else this.strokeUniform&&t.scale(1/this.scaleX,1/this.scaleY);this._setLineDash(t,this.strokeDashArray),this._setStrokeStyles(t,this),t.stroke(),t.restore()}},_applyPatternForTransformedGradient:function(t,i){var r,n=this._limitCacheSize(this._getCacheCanvasDimensions()),o=e.util.createCanvasElement(),a=this.canvas.getRetinaScaling(),s=n.x/this.scaleX/a,l=n.y/this.scaleY/a;o.width=s,o.height=l,(r=o.getContext("2d")).beginPath(),r.moveTo(0,0),r.lineTo(s,0),r.lineTo(s,l),r.lineTo(0,l),r.closePath(),r.translate(s/2,l/2),r.scale(n.zoomX/this.scaleX/a,n.zoomY/this.scaleY/a),this._applyPatternGradientTransform(r,i),r.fillStyle=i.toLive(t),r.fill(),t.translate(-this.width/2-this.strokeWidth/2,-this.height/2-this.strokeWidth/2),t.scale(a*this.scaleX/n.zoomX,a*this.scaleY/n.zoomY),t.strokeStyle=r.createPattern(o,"no-repeat")},_findCenterFromElement:function(){return{x:this.left+this.width/2,y:this.top+this.height/2}},_assignTransformMatrixProps:function(){if(this.transformMatrix){var t=e.util.qrDecompose(this.transformMatrix);this.flipX=!1,this.flipY=!1,this.set("scaleX",t.scaleX),this.set("scaleY",t.scaleY),this.angle=t.angle,this.skewX=t.skewX,this.skewY=0}},_removeTransformMatrix:function(t){var i=this._findCenterFromElement();this.transformMatrix&&(this._assignTransformMatrixProps(),i=e.util.transformPoint(i,this.transformMatrix)),this.transformMatrix=null,t&&(this.scaleX*=t.scaleX,this.scaleY*=t.scaleY,this.cropX=t.cropX,this.cropY=t.cropY,i.x+=t.offsetLeft,i.y+=t.offsetTop,this.width=t.width,this.height=t.height),this.setPositionByOrigin(i,"center","center")},clone:function(t,i){var r=this.toObject(i);this.constructor.fromObject?this.constructor.fromObject(r,t):e.Object._fromObject("Object",r,t)},cloneAsImage:function(t,i){var r=this.toCanvasElement(i);return t&&t(new e.Image(r)),this},toCanvasElement:function(t){t||(t={});var i=e.util,r=i.saveObjectTransform(this),n=this.group,o=this.shadow,a=Math.abs,s=(t.multiplier||1)*(t.enableRetinaScaling?e.devicePixelRatio:1);delete this.group,t.withoutTransform&&i.resetObjectTransform(this),t.withoutShadow&&(this.shadow=null);var l,c,h,u,d=e.util.createCanvasElement(),p=this.getBoundingRect(!0,!0),f=this.shadow,g={x:0,y:0};f&&(c=f.blur,l=f.nonScaling?{scaleX:1,scaleY:1}:this.getObjectScaling(),g.x=2*Math.round(a(f.offsetX)+c)*a(l.scaleX),g.y=2*Math.round(a(f.offsetY)+c)*a(l.scaleY)),h=p.width+g.x,u=p.height+g.y,d.width=Math.ceil(h),d.height=Math.ceil(u);var m=new e.StaticCanvas(d,{enableRetinaScaling:!1,renderOnAddRemove:!1,skipOffscreen:!1});"jpeg"===t.format&&(m.backgroundColor="#fff"),this.setPositionByOrigin(new e.Point(m.width/2,m.height/2),"center","center");var v=this.canvas;m.add(this);var b=m.toCanvasElement(s||1,t);return this.shadow=o,this.set("canvas",v),n&&(this.group=n),this.set(r).setCoords(),m._objects=[],m.dispose(),m=null,b},toDataURL:function(t){return t||(t={}),e.util.toDataURL(this.toCanvasElement(t),t.format||"png",t.quality||1)},isType:function(t){return arguments.length>1?Array.from(arguments).includes(this.type):this.type===t},complexity:function(){return 1},toJSON:function(t){return this.toObject(t)},rotate:function(t){var e=("center"!==this.originX||"center"!==this.originY)&&this.centeredRotation;return e&&this._setOriginToCenter(),this.set("angle",t),e&&this._resetOrigin(),this},centerH:function(){return this.canvas&&this.canvas.centerObjectH(this),this},viewportCenterH:function(){return this.canvas&&this.canvas.viewportCenterObjectH(this),this},centerV:function(){return this.canvas&&this.canvas.centerObjectV(this),this},viewportCenterV:function(){return this.canvas&&this.canvas.viewportCenterObjectV(this),this},center:function(){return this.canvas&&this.canvas.centerObject(this),this},viewportCenter:function(){return this.canvas&&this.canvas.viewportCenterObject(this),this},getLocalPointer:function(t,i){i=i||this.canvas.getPointer(t);var r=new e.Point(i.x,i.y),n=this._getLeftTopCoords();return this.angle&&(r=e.util.rotatePoint(r,n,a(-this.angle))),{x:r.x-n.x,y:r.y-n.y}},_setupCompositeOperation:function(t){this.globalCompositeOperation&&(t.globalCompositeOperation=this.globalCompositeOperation)},dispose:function(){e.runningAnimations&&e.runningAnimations.cancelByTarget(this)}}),e.util.createAccessors&&e.util.createAccessors(e.Object),i(e.Object.prototype,e.Observable),e.Object.NUM_FRACTION_DIGITS=2,e.Object.ENLIVEN_PROPS=["clipPath"],e.Object._fromObject=function(t,i,n,o){var a=e[t];i=r(i,!0),e.util.enlivenPatterns([i.fill,i.stroke],function(t){typeof t[0]<"u"&&(i.fill=t[0]),typeof t[1]<"u"&&(i.stroke=t[1]),e.util.enlivenObjectEnlivables(i,i,function(){var t=o?new a(i[o],i):new a(i);n&&n(t)})})},e.Object.__uid=0)}(t),function(){var t=s.util.degreesToRadians,e={left:-.5,center:0,right:.5},i={top:-.5,center:0,bottom:.5};s.util.object.extend(s.Object.prototype,{translateToGivenOrigin:function(t,r,n,o,a){var l,c,h,u=t.x,d=t.y;return"string"==typeof r?r=e[r]:r-=.5,"string"==typeof o?o=e[o]:o-=.5,"string"==typeof n?n=i[n]:n-=.5,"string"==typeof a?a=i[a]:a-=.5,c=a-n,((l=o-r)||c)&&(h=this._getTransformedDimensions(),u=t.x+l*h.x,d=t.y+c*h.y),new s.Point(u,d)},translateToCenterPoint:function(e,i,r){var n=this.translateToGivenOrigin(e,i,r,"center","center");return this.angle?s.util.rotatePoint(n,e,t(this.angle)):n},translateToOriginPoint:function(e,i,r){var n=this.translateToGivenOrigin(e,"center","center",i,r);return this.angle?s.util.rotatePoint(n,e,t(this.angle)):n},getCenterPoint:function(){var t=new s.Point(this.left,this.top);return this.translateToCenterPoint(t,this.originX,this.originY)},getPointByOrigin:function(t,e){var i=this.getCenterPoint();return this.translateToOriginPoint(i,t,e)},toLocalPoint:function(e,i,r){var n,o,a=this.getCenterPoint();return n=typeof i<"u"&&typeof r<"u"?this.translateToGivenOrigin(a,"center","center",i,r):new s.Point(this.left,this.top),o=new s.Point(e.x,e.y),this.angle&&(o=s.util.rotatePoint(o,a,-t(this.angle))),o.subtractEquals(n)},setPositionByOrigin:function(t,e,i){var r=this.translateToCenterPoint(t,e,i),n=this.translateToOriginPoint(r,this.originX,this.originY);this.set("left",n.x),this.set("top",n.y)},adjustPosition:function(i){var r,n,o=t(this.angle),a=this.getScaledWidth(),l=s.util.cos(o)*a,c=s.util.sin(o)*a;r="string"==typeof this.originX?e[this.originX]:this.originX-.5,n="string"==typeof i?e[i]:i-.5,this.left+=l*(n-r),this.top+=c*(n-r),this.setCoords(),this.originX=i},_setOriginToCenter:function(){this._originalOriginX=this.originX,this._originalOriginY=this.originY;var t=this.getCenterPoint();this.originX="center",this.originY="center",this.left=t.x,this.top=t.y},_resetOrigin:function(){var t=this.translateToOriginPoint(this.getCenterPoint(),this._originalOriginX,this._originalOriginY);this.originX=this._originalOriginX,this.originY=this._originalOriginY,this.left=t.x,this.top=t.y,this._originalOriginX=null,this._originalOriginY=null},_getLeftTopCoords:function(){return this.translateToOriginPoint(this.getCenterPoint(),"left","top")}})}(),function(){var t=s.util,e=t.degreesToRadians,i=t.multiplyTransformMatrices,r=t.transformPoint;t.object.extend(s.Object.prototype,{oCoords:null,aCoords:null,lineCoords:null,ownMatrixCache:null,matrixCache:null,controls:{},_getCoords:function(t,e){return e?t?this.calcACoords():this.calcLineCoords():((!this.aCoords||!this.lineCoords)&&this.setCoords(!0),t?this.aCoords:this.lineCoords)},getCoords:function(t,e){return function(t){return[new s.Point(t.tl.x,t.tl.y),new s.Point(t.tr.x,t.tr.y),new s.Point(t.br.x,t.br.y),new s.Point(t.bl.x,t.bl.y)]}(this._getCoords(t,e))},intersectsWithRect:function(t,e,i,r){var n=this.getCoords(i,r);return"Intersection"===s.Intersection.intersectPolygonRectangle(n,t,e).status},intersectsWithObject:function(t,e,i){return"Intersection"===s.Intersection.intersectPolygonPolygon(this.getCoords(e,i),t.getCoords(e,i)).status||t.isContainedWithinObject(this,e,i)||this.isContainedWithinObject(t,e,i)},isContainedWithinObject:function(t,e,i){for(var r=this.getCoords(e,i),n=e?t.aCoords:t.lineCoords,o=0,a=t._getImageLines(n);o<4;o++)if(!t.containsPoint(r[o],a))return!1;return!0},isContainedWithinRect:function(t,e,i,r){var n=this.getBoundingRect(i,r);return n.left>=t.x&&n.left+n.width<=e.x&&n.top>=t.y&&n.top+n.height<=e.y},containsPoint:function(t,e,i,r){var n=this._getCoords(i,r),o=(e=e||this._getImageLines(n),this._findCrossPoints(t,e));return 0!==o&&o%2==1},isOnScreen:function(t){if(!this.canvas)return!1;var e=this.canvas.vptCoords.tl,i=this.canvas.vptCoords.br;return!(!this.getCoords(!0,t).some(function(t){return t.x<=i.x&&t.x>=e.x&&t.y<=i.y&&t.y>=e.y})&&!this.intersectsWithRect(e,i,!0,t))||this._containsCenterOfCanvas(e,i,t)},_containsCenterOfCanvas:function(t,e,i){var r={x:(t.x+e.x)/2,y:(t.y+e.y)/2};return!!this.containsPoint(r,null,!0,i)},isPartiallyOnScreen:function(t){if(!this.canvas)return!1;var e=this.canvas.vptCoords.tl,i=this.canvas.vptCoords.br;return!!this.intersectsWithRect(e,i,!0,t)||this.getCoords(!0,t).every(function(t){return(t.x>=i.x||t.x<=e.x)&&(t.y>=i.y||t.y<=e.y)})&&this._containsCenterOfCanvas(e,i,t)},_getImageLines:function(t){return{topline:{o:t.tl,d:t.tr},rightline:{o:t.tr,d:t.br},bottomline:{o:t.br,d:t.bl},leftline:{o:t.bl,d:t.tl}}},_findCrossPoints:function(t,e){var i,r,n,o,a,s=0;for(var l in e)if(!((a=e[l]).o.y<t.y&&a.d.y<t.y||a.o.y>=t.y&&a.d.y>=t.y||(a.o.x===a.d.x&&a.o.x>=t.x?o=a.o.x:(i=(a.d.y-a.o.y)/(a.d.x-a.o.x),r=t.y-0*t.x,n=a.o.y-i*a.o.x,o=-(r-n)/(0-i)),o>=t.x&&(s+=1),2!==s)))break;return s},getBoundingRect:function(e,i){var r=this.getCoords(e,i);return t.makeBoundingBoxFromPoints(r)},getScaledWidth:function(){return this._getTransformedDimensions().x},getScaledHeight:function(){return this._getTransformedDimensions().y},_constrainScale:function(t){return Math.abs(t)<this.minScaleLimit?t<0?-this.minScaleLimit:this.minScaleLimit:0===t?1e-4:t},scale:function(t){return this._set("scaleX",t),this._set("scaleY",t),this.setCoords()},scaleToWidth:function(t,e){var i=this.getBoundingRect(e).width/this.getScaledWidth();return this.scale(t/this.width/i)},scaleToHeight:function(t,e){var i=this.getBoundingRect(e).height/this.getScaledHeight();return this.scale(t/this.height/i)},calcLineCoords:function(){var i=this.getViewportTransform(),n=this.padding,o=e(this.angle),a=t.cos(o)*n,s=t.sin(o)*n,l=a+s,c=a-s,h=this.calcACoords(),u={tl:r(h.tl,i),tr:r(h.tr,i),bl:r(h.bl,i),br:r(h.br,i)};return n&&(u.tl.x-=c,u.tl.y-=l,u.tr.x+=l,u.tr.y-=c,u.bl.x-=l,u.bl.y+=c,u.br.x+=c,u.br.y+=l),u},calcOCoords:function(){var t=this._calcRotateMatrix(),e=this._calcTranslateMatrix(),r=this.getViewportTransform(),n=i(r,e),o=i(n,t),a=(o=i(o,[1/r[0],0,0,1/r[3],0,0]),this._calculateCurrentDimensions()),s={};return this.forEachControl(function(t,e,i){s[e]=t.positionHandler(a,o,i)}),s},calcACoords:function(){var t=this._calcRotateMatrix(),e=this._calcTranslateMatrix(),n=i(e,t),o=this._getTransformedDimensions(),a=o.x/2,s=o.y/2;return{tl:r({x:-a,y:-s},n),tr:r({x:a,y:-s},n),bl:r({x:-a,y:s},n),br:r({x:a,y:s},n)}},setCoords:function(t){return this.aCoords=this.calcACoords(),this.lineCoords=this.group?this.aCoords:this.calcLineCoords(),t||(this.oCoords=this.calcOCoords(),this._setCornerCoords&&this._setCornerCoords()),this},_calcRotateMatrix:function(){return t.calcRotateMatrix(this)},_calcTranslateMatrix:function(){var t=this.getCenterPoint();return[1,0,0,1,t.x,t.y]},transformMatrixKey:function(t){var e="_",i="";return!t&&this.group&&(i=this.group.transformMatrixKey(t)+e),i+this.top+e+this.left+e+this.scaleX+e+this.scaleY+e+this.skewX+e+this.skewY+e+this.angle+e+this.originX+e+this.originY+e+this.width+e+this.height+e+this.strokeWidth+this.flipX+this.flipY},calcTransformMatrix:function(t){var e=this.calcOwnMatrix();if(t||!this.group)return e;var r=this.transformMatrixKey(t),n=this.matrixCache||(this.matrixCache={});return n.key===r?n.value:(this.group&&(e=i(this.group.calcTransformMatrix(!1),e)),n.key=r,n.value=e,e)},calcOwnMatrix:function(){var e=this.transformMatrixKey(!0),i=this.ownMatrixCache||(this.ownMatrixCache={});if(i.key===e)return i.value;var r=this._calcTranslateMatrix(),n={angle:this.angle,translateX:r[4],translateY:r[5],scaleX:this.scaleX,scaleY:this.scaleY,skewX:this.skewX,skewY:this.skewY,flipX:this.flipX,flipY:this.flipY};return i.key=e,i.value=t.composeMatrix(n),i.value},_getNonTransformedDimensions:function(){var t=this.strokeWidth;return{x:this.width+t,y:this.height+t}},_getTransformedDimensions:function(e,i){typeof e>"u"&&(e=this.skewX),typeof i>"u"&&(i=this.skewY);var r,n,o,a=0===e&&0===i;if(this.strokeUniform?(n=this.width,o=this.height):(n=(r=this._getNonTransformedDimensions()).x,o=r.y),a)return this._finalizeDimensions(n*this.scaleX,o*this.scaleY);var s=t.sizeAfterTransform(n,o,{scaleX:this.scaleX,scaleY:this.scaleY,skewX:e,skewY:i});return this._finalizeDimensions(s.x,s.y)},_finalizeDimensions:function(t,e){return this.strokeUniform?{x:t+this.strokeWidth,y:e+this.strokeWidth}:{x:t,y:e}},_calculateCurrentDimensions:function(){var t=this.getViewportTransform(),e=this._getTransformedDimensions();return r(e,t,!0).scalarAdd(2*this.padding)}})}(),s.util.object.extend(s.Object.prototype,{sendToBack:function(){return this.group?s.StaticCanvas.prototype.sendToBack.call(this.group,this):this.canvas&&this.canvas.sendToBack(this),this},bringToFront:function(){return this.group?s.StaticCanvas.prototype.bringToFront.call(this.group,this):this.canvas&&this.canvas.bringToFront(this),this},sendBackwards:function(t){return this.group?s.StaticCanvas.prototype.sendBackwards.call(this.group,this,t):this.canvas&&this.canvas.sendBackwards(this,t),this},bringForward:function(t){return this.group?s.StaticCanvas.prototype.bringForward.call(this.group,this,t):this.canvas&&this.canvas.bringForward(this,t),this},moveTo:function(t){return this.group&&"activeSelection"!==this.group.type?s.StaticCanvas.prototype.moveTo.call(this.group,this,t):this.canvas&&this.canvas.moveTo(this,t),this}}),function(){function t(t,e){if(e){if(e.toLive)return t+": url(#SVGID_"+e.id+"); ";var i=new s.Color(e),r=t+": "+i.toRgb()+"; ",n=i.getAlpha();return 1!==n&&(r+=t+"-opacity: "+n.toString()+"; "),r}return t+": none; "}var e=s.util.toFixed;s.util.object.extend(s.Object.prototype,{getSvgStyles:function(e){var i=this.fillRule?this.fillRule:"nonzero",r=this.strokeWidth?this.strokeWidth:"0",n=this.strokeDashArray?this.strokeDashArray.join(" "):"none",o=this.strokeDashOffset?this.strokeDashOffset:"0",a=this.strokeLineCap?this.strokeLineCap:"butt",s=this.strokeLineJoin?this.strokeLineJoin:"miter",l=this.strokeMiterLimit?this.strokeMiterLimit:"4",c=typeof this.opacity<"u"?this.opacity:"1",h=this.visible?"":" visibility: hidden;",u=e?"":this.getSvgFilter(),d=t("fill",this.fill);return[t("stroke",this.stroke),"stroke-width: ",r,"; ","stroke-dasharray: ",n,"; ","stroke-linecap: ",a,"; ","stroke-dashoffset: ",o,"; ","stroke-linejoin: ",s,"; ","stroke-miterlimit: ",l,"; ",d,"fill-rule: ",i,"; ","opacity: ",c,";",u,h].join("")},getSvgSpanStyles:function(e,i){var r="; ",n=e.fontFamily?"font-family: "+(-1===e.fontFamily.indexOf("'")&&-1===e.fontFamily.indexOf('"')?"'"+e.fontFamily+"'":e.fontFamily)+r:"",o=e.strokeWidth?"stroke-width: "+e.strokeWidth+r:"",a=e.fontSize?"font-size: "+e.fontSize+"px"+r:"",s=e.fontStyle?"font-style: "+e.fontStyle+r:"",l=e.fontWeight?"font-weight: "+e.fontWeight+r:"",c=e.fill?t("fill",e.fill):"",h=e.stroke?t("stroke",e.stroke):"",u=this.getSvgTextDecoration(e);return u&&(u="text-decoration: "+u+r),[h,o,n,a,s,l,u,c,e.deltaY?"baseline-shift: "+-e.deltaY+"; ":"",i?"white-space: pre; ":""].join("")},getSvgTextDecoration:function(t){return["overline","underline","line-through"].filter(function(e){return t[e.replace("-","")]}).join(" ")},getSvgFilter:function(){return this.shadow?"filter: url(#SVGID_"+this.shadow.id+");":""},getSvgCommons:function(){return[this.id?'id="'+this.id+'" ':"",this.clipPath?'clip-path="url(#'+this.clipPath.clipPathId+')" ':""].join("")},getSvgTransform:function(t,e){var i=t?this.calcTransformMatrix():this.calcOwnMatrix();return'transform="'+s.util.matrixToSVG(i)+(e||"")+'" '},_setSVGBg:function(t){if(this.backgroundColor){var i=s.Object.NUM_FRACTION_DIGITS;t.push("\t\t<rect ",this._getFillAttributes(this.backgroundColor),' x="',e(-this.width/2,i),'" y="',e(-this.height/2,i),'" width="',e(this.width,i),'" height="',e(this.height,i),'"></rect>\n')}},toSVG:function(t){return this._createBaseSVGMarkup(this._toSVG(t),{reviver:t})},toClipPathSVG:function(t){return"\t"+this._createBaseClipPathSVGMarkup(this._toSVG(t),{reviver:t})},_createBaseClipPathSVGMarkup:function(t,e){var i=(e=e||{}).reviver,r=e.additionalTransform||"",n=[this.getSvgTransform(!0,r),this.getSvgCommons()].join(""),o=t.indexOf("COMMON_PARTS");return t[o]=n,i?i(t.join("")):t.join("")},_createBaseSVGMarkup:function(t,e){var i,r,n=(e=e||{}).noStyle,o=e.reviver,a=n?"":'style="'+this.getSvgStyles()+'" ',l=e.withShadow?'style="'+this.getSvgFilter()+'" ':"",c=this.clipPath,h=this.strokeUniform?'vector-effect="non-scaling-stroke" ':"",u=c&&c.absolutePositioned,d=this.stroke,p=this.fill,f=this.shadow,g=[],m=t.indexOf("COMMON_PARTS"),v=e.additionalTransform;return c&&(c.clipPathId="CLIPPATH_"+s.Object.__uid++,r='<clipPath id="'+c.clipPathId+'" >\n'+c.toClipPathSVG(o)+"</clipPath>\n"),u&&g.push("<g ",l,this.getSvgCommons()," >\n"),g.push("<g ",this.getSvgTransform(!1),u?"":l+this.getSvgCommons()," >\n"),i=[a,h,n?"":this.addPaintOrder()," ",v?'transform="'+v+'" ':""].join(""),t[m]=i,p&&p.toLive&&g.push(p.toSVG(this)),d&&d.toLive&&g.push(d.toSVG(this)),f&&g.push(f.toSVG(this)),c&&g.push(r),g.push(t.join("")),g.push("</g>\n"),u&&g.push("</g>\n"),o?o(g.join("")):g.join("")},addPaintOrder:function(){return"fill"!==this.paintFirst?' paint-order="'+this.paintFirst+'" ':""}})}(),function(){var t=s.util.object.extend,e="stateProperties";function i(e,i,r){var n={};r.forEach(function(t){n[t]=e[t]}),t(e[i],n,!0)}function r(t,e,i){if(t===e)return!0;if(Array.isArray(t)){if(!Array.isArray(e)||t.length!==e.length)return!1;for(var n=0,o=t.length;n<o;n++)if(!r(t[n],e[n]))return!1;return!0}if(t&&"object"==typeof t){var a,s=Object.keys(t);if(!e||"object"!=typeof e||!i&&s.length!==Object.keys(e).length)return!1;for(n=0,o=s.length;n<o;n++)if("canvas"!==(a=s[n])&&"group"!==a&&!r(t[a],e[a]))return!1;return!0}}s.util.object.extend(s.Object.prototype,{hasStateChanged:function(t){var i="_"+(t=t||e);return Object.keys(this[i]).length<this[t].length||!r(this[i],this,!0)},saveState:function(t){var r=t&&t.propertySet||e,n="_"+r;return this[n]?(i(this,n,this[r]),t&&t.stateProperties&&i(this,n,t.stateProperties),this):this.setupState(t)},setupState:function(t){var i=(t=t||{}).propertySet||e;return t.propertySet=i,this["_"+i]={},this.saveState(t),this}})}(),function(){var t=s.util.degreesToRadians;s.util.object.extend(s.Object.prototype,{_findTargetCorner:function(t,e){if(!this.hasControls||this.group||!this.canvas||this.canvas._activeObject!==this)return!1;var i,r,n,o=t.x,a=t.y,s=Object.keys(this.oCoords),l=s.length-1;for(this.__corner=0;l>=0;l--)if(n=s[l],this.isControlVisible(n)&&(r=this._getImageLines(e?this.oCoords[n].touchCorner:this.oCoords[n].corner),0!==(i=this._findCrossPoints({x:o,y:a},r))&&i%2==1))return this.__corner=n,n;return!1},forEachControl:function(t){for(var e in this.controls)t(this.controls[e],e,this)},_setCornerCoords:function(){var t=this.oCoords;for(var e in t){var i=this.controls[e];t[e].corner=i.calcCornerCoords(this.angle,this.cornerSize,t[e].x,t[e].y,!1),t[e].touchCorner=i.calcCornerCoords(this.angle,this.touchCornerSize,t[e].x,t[e].y,!0)}},drawSelectionBackground:function(e){if(!this.selectionBackgroundColor||this.canvas&&!this.canvas.interactive||this.canvas&&this.canvas._activeObject!==this)return this;e.save();var i=this.getCenterPoint(),r=this._calculateCurrentDimensions(),n=this.canvas.viewportTransform;return e.translate(i.x,i.y),e.scale(1/n[0],1/n[3]),e.rotate(t(this.angle)),e.fillStyle=this.selectionBackgroundColor,e.fillRect(-r.x/2,-r.y/2,r.x,r.y),e.restore(),this},drawBorders:function(t,e){e=e||{};var i=this._calculateCurrentDimensions(),r=this.borderScaleFactor,n=i.x+r,o=i.y+r,a=typeof e.hasControls<"u"?e.hasControls:this.hasControls,s=!1;return t.save(),t.strokeStyle=e.borderColor||this.borderColor,this._setLineDash(t,e.borderDashArray||this.borderDashArray),t.strokeRect(-n/2,-o/2,n,o),a&&(t.beginPath(),this.forEachControl(function(e,i,r){e.withConnection&&e.getVisibility(r,i)&&(s=!0,t.moveTo(e.x*n,e.y*o),t.lineTo(e.x*n+e.offsetX,e.y*o+e.offsetY))}),s&&t.stroke()),t.restore(),this},drawBordersInGroup:function(t,e,i){i=i||{};var r=s.util.sizeAfterTransform(this.width,this.height,e),n=this.strokeWidth,o=this.strokeUniform,a=this.borderScaleFactor,l=r.x+n*(o?this.canvas.getZoom():e.scaleX)+a,c=r.y+n*(o?this.canvas.getZoom():e.scaleY)+a;return t.save(),this._setLineDash(t,i.borderDashArray||this.borderDashArray),t.strokeStyle=i.borderColor||this.borderColor,t.strokeRect(-l/2,-c/2,l,c),t.restore(),this},drawControls:function(t,e){e=e||{},t.save();var i,r,n=this.canvas.getRetinaScaling();return t.setTransform(n,0,0,n,0,0),t.strokeStyle=t.fillStyle=e.cornerColor||this.cornerColor,this.transparentCorners||(t.strokeStyle=e.cornerStrokeColor||this.cornerStrokeColor),this._setLineDash(t,e.cornerDashArray||this.cornerDashArray),this.setCoords(),this.group&&(i=this.group.calcTransformMatrix()),this.forEachControl(function(n,o,a){r=a.oCoords[o],n.getVisibility(a,o)&&(i&&(r=s.util.transformPoint(r,i)),n.render(t,r.x,r.y,e,a))}),t.restore(),this},isControlVisible:function(t){return this.controls[t]&&this.controls[t].getVisibility(this,t)},setControlVisible:function(t,e){return this._controlsVisibility||(this._controlsVisibility={}),this._controlsVisibility[t]=e,this},setControlsVisibility:function(t){for(var e in t||(t={}),t)this.setControlVisible(e,t[e]);return this},onDeselect:function(){},onSelect:function(){}})}(),s.util.object.extend(s.StaticCanvas.prototype,{FX_DURATION:500,fxCenterObjectH:function(t,e){var i=function(){},r=(e=e||{}).onComplete||i,n=e.onChange||i,o=this;return s.util.animate({target:this,startValue:t.left,endValue:this.getCenterPoint().x,duration:this.FX_DURATION,onChange:function(e){t.set("left",e),o.requestRenderAll(),n()},onComplete:function(){t.setCoords(),r()}})},fxCenterObjectV:function(t,e){var i=function(){},r=(e=e||{}).onComplete||i,n=e.onChange||i,o=this;return s.util.animate({target:this,startValue:t.top,endValue:this.getCenterPoint().y,duration:this.FX_DURATION,onChange:function(e){t.set("top",e),o.requestRenderAll(),n()},onComplete:function(){t.setCoords(),r()}})},fxRemove:function(t,e){var i=function(){},r=(e=e||{}).onComplete||i,n=e.onChange||i,o=this;return s.util.animate({target:this,startValue:t.opacity,endValue:0,duration:this.FX_DURATION,onChange:function(e){t.set("opacity",e),o.requestRenderAll(),n()},onComplete:function(){o.remove(t),r()}})}}),s.util.object.extend(s.Object.prototype,{animate:function(){if(arguments[0]&&"object"==typeof arguments[0]){var t,e,i=[],r=[];for(t in arguments[0])i.push(t);for(var n=0,o=i.length;n<o;n++)t=i[n],e=n!==o-1,r.push(this._animate(t,arguments[0][t],arguments[1],e));return r}return this._animate.apply(this,arguments)},_animate:function(t,e,i,r){var n,o=this;e=e.toString(),i=i?s.util.object.clone(i):{},~t.indexOf(".")&&(n=t.split("."));var a=o.colorProperties.indexOf(t)>-1||n&&o.colorProperties.indexOf(n[1])>-1,l=n?this.get(n[0])[n[1]]:this.get(t);"from"in i||(i.from=l),a||(e=~e.indexOf("=")?l+parseFloat(e.replace("=","")):parseFloat(e));var c={target:this,startValue:i.from,endValue:e,byValue:i.by,easing:i.easing,duration:i.duration,abort:i.abort&&function(t,e,r){return i.abort.call(o,t,e,r)},onChange:function(e,a,s){n?o[n[0]][n[1]]=e:o.set(t,e),!r&&i.onChange&&i.onChange(e,a,s)},onComplete:function(t,e,n){r||(o.setCoords(),i.onComplete&&i.onComplete(t,e,n))}};return a?s.util.animateColor(c.startValue,c.endValue,c.duration,c):s.util.animate(c)}}),function(t){var e=t.fabric||(t.fabric={}),i=e.util.object.extend,r=e.util.object.clone,n={x1:1,x2:1,y1:1,y2:1};function o(t,e){var i=t.origin,r=t.axis1,n=t.axis2,o=t.dimension,a=e.nearest,s=e.center,l=e.farthest;return function(){switch(this.get(i)){case a:return Math.min(this.get(r),this.get(n));case s:return Math.min(this.get(r),this.get(n))+.5*this.get(o);case l:return Math.max(this.get(r),this.get(n))}}}e.Line?e.warn("fabric.Line is already defined"):(e.Line=e.util.createClass(e.Object,{type:"line",x1:0,y1:0,x2:0,y2:0,cacheProperties:e.Object.prototype.cacheProperties.concat("x1","x2","y1","y2"),initialize:function(t,e){t||(t=[0,0,0,0]),this.callSuper("initialize",e),this.set("x1",t[0]),this.set("y1",t[1]),this.set("x2",t[2]),this.set("y2",t[3]),this._setWidthHeight(e)},_setWidthHeight:function(t){t||(t={}),this.width=Math.abs(this.x2-this.x1),this.height=Math.abs(this.y2-this.y1),this.left="left"in t?t.left:this._getLeftToOriginX(),this.top="top"in t?t.top:this._getTopToOriginY()},_set:function(t,e){return this.callSuper("_set",t,e),typeof n[t]<"u"&&this._setWidthHeight(),this},_getLeftToOriginX:o({origin:"originX",axis1:"x1",axis2:"x2",dimension:"width"},{nearest:"left",center:"center",farthest:"right"}),_getTopToOriginY:o({origin:"originY",axis1:"y1",axis2:"y2",dimension:"height"},{nearest:"top",center:"center",farthest:"bottom"}),_render:function(t){t.beginPath();var e=this.calcLinePoints();t.moveTo(e.x1,e.y1),t.lineTo(e.x2,e.y2),t.lineWidth=this.strokeWidth;var i=t.strokeStyle;t.strokeStyle=this.stroke||t.fillStyle,this.stroke&&this._renderStroke(t),t.strokeStyle=i},_findCenterFromElement:function(){return{x:(this.x1+this.x2)/2,y:(this.y1+this.y2)/2}},toObject:function(t){return i(this.callSuper("toObject",t),this.calcLinePoints())},_getNonTransformedDimensions:function(){var t=this.callSuper("_getNonTransformedDimensions");return"butt"===this.strokeLineCap&&(0===this.width&&(t.y-=this.strokeWidth),0===this.height&&(t.x-=this.strokeWidth)),t},calcLinePoints:function(){var t=this.x1<=this.x2?-1:1,e=this.y1<=this.y2?-1:1,i=t*this.width*.5,r=e*this.height*.5;return{x1:i,x2:t*this.width*-.5,y1:r,y2:e*this.height*-.5}},_toSVG:function(){var t=this.calcLinePoints();return["<line ","COMMON_PARTS",'x1="',t.x1,'" y1="',t.y1,'" x2="',t.x2,'" y2="',t.y2,'" />\n']}}),e.Line.ATTRIBUTE_NAMES=e.SHARED_ATTRIBUTES.concat("x1 y1 x2 y2".split(" ")),e.Line.fromElement=function(t,r,n){n=n||{};var o=e.parseAttributes(t,e.Line.ATTRIBUTE_NAMES),a=[o.x1||0,o.y1||0,o.x2||0,o.y2||0];r(new e.Line(a,i(o,n)))},e.Line.fromObject=function(t,i){var n=r(t,!0);n.points=[t.x1,t.y1,t.x2,t.y2],e.Object._fromObject("Line",n,function(t){delete t.points,i&&i(t)},"points")})}(t),function(t){var e=t.fabric||(t.fabric={}),i=e.util.degreesToRadians;e.Circle?e.warn("fabric.Circle is already defined."):(e.Circle=e.util.createClass(e.Object,{type:"circle",radius:0,startAngle:0,endAngle:360,cacheProperties:e.Object.prototype.cacheProperties.concat("radius","startAngle","endAngle"),_set:function(t,e){return this.callSuper("_set",t,e),"radius"===t&&this.setRadius(e),this},toObject:function(t){return this.callSuper("toObject",["radius","startAngle","endAngle"].concat(t))},_toSVG:function(){var t,r=(this.endAngle-this.startAngle)%360;if(0===r)t=["<circle ","COMMON_PARTS",'cx="0" cy="0" ','r="',this.radius,'" />\n'];else{var n=i(this.startAngle),o=i(this.endAngle),a=this.radius;t=['<path d="M '+e.util.cos(n)*a+" "+e.util.sin(n)*a," A "+a+" "+a," 0 ",+(r>180?"1":"0")+" 1"," "+e.util.cos(o)*a+" "+e.util.sin(o)*a,'" ',"COMMON_PARTS"," />\n"]}return t},_render:function(t){t.beginPath(),t.arc(0,0,this.radius,i(this.startAngle),i(this.endAngle),!1),this._renderPaintInOrder(t)},getRadiusX:function(){return this.get("radius")*this.get("scaleX")},getRadiusY:function(){return this.get("radius")*this.get("scaleY")},setRadius:function(t){return this.radius=t,this.set("width",2*t).set("height",2*t)}}),e.Circle.ATTRIBUTE_NAMES=e.SHARED_ATTRIBUTES.concat("cx cy r".split(" ")),e.Circle.fromElement=function(t,i){var r=e.parseAttributes(t,e.Circle.ATTRIBUTE_NAMES);if(!function(t){return"radius"in t&&t.radius>=0}(r))throw new Error("value of `r` attribute is required and can not be negative");r.left=(r.left||0)-r.radius,r.top=(r.top||0)-r.radius,i(new e.Circle(r))},e.Circle.fromObject=function(t,i){e.Object._fromObject("Circle",t,i)})}(t),function(t){var e=t.fabric||(t.fabric={});e.Triangle?e.warn("fabric.Triangle is already defined"):(e.Triangle=e.util.createClass(e.Object,{type:"triangle",width:100,height:100,_render:function(t){var e=this.width/2,i=this.height/2;t.beginPath(),t.moveTo(-e,i),t.lineTo(0,-i),t.lineTo(e,i),t.closePath(),this._renderPaintInOrder(t)},_toSVG:function(){var t=this.width/2,e=this.height/2;return["<polygon ","COMMON_PARTS",'points="',[-t+" "+e,"0 "+-e,t+" "+e].join(","),'" />']}}),e.Triangle.fromObject=function(t,i){return e.Object._fromObject("Triangle",t,i)})}(t),function(t){var e=t.fabric||(t.fabric={}),i=2*Math.PI;e.Ellipse?e.warn("fabric.Ellipse is already defined."):(e.Ellipse=e.util.createClass(e.Object,{type:"ellipse",rx:0,ry:0,cacheProperties:e.Object.prototype.cacheProperties.concat("rx","ry"),initialize:function(t){this.callSuper("initialize",t),this.set("rx",t&&t.rx||0),this.set("ry",t&&t.ry||0)},_set:function(t,e){switch(this.callSuper("_set",t,e),t){case"rx":this.rx=e,this.set("width",2*e);break;case"ry":this.ry=e,this.set("height",2*e)}return this},getRx:function(){return this.get("rx")*this.get("scaleX")},getRy:function(){return this.get("ry")*this.get("scaleY")},toObject:function(t){return this.callSuper("toObject",["rx","ry"].concat(t))},_toSVG:function(){return["<ellipse ","COMMON_PARTS",'cx="0" cy="0" ','rx="',this.rx,'" ry="',this.ry,'" />\n']},_render:function(t){t.beginPath(),t.save(),t.transform(1,0,0,this.ry/this.rx,0,0),t.arc(0,0,this.rx,0,i,!1),t.restore(),this._renderPaintInOrder(t)}}),e.Ellipse.ATTRIBUTE_NAMES=e.SHARED_ATTRIBUTES.concat("cx cy rx ry".split(" ")),e.Ellipse.fromElement=function(t,i){var r=e.parseAttributes(t,e.Ellipse.ATTRIBUTE_NAMES);r.left=(r.left||0)-r.rx,r.top=(r.top||0)-r.ry,i(new e.Ellipse(r))},e.Ellipse.fromObject=function(t,i){e.Object._fromObject("Ellipse",t,i)})}(t),function(t){var e=t.fabric||(t.fabric={}),i=e.util.object.extend;e.Rect?e.warn("fabric.Rect is already defined"):(e.Rect=e.util.createClass(e.Object,{stateProperties:e.Object.prototype.stateProperties.concat("rx","ry"),type:"rect",rx:0,ry:0,cacheProperties:e.Object.prototype.cacheProperties.concat("rx","ry"),initialize:function(t){this.callSuper("initialize",t),this._initRxRy()},_initRxRy:function(){this.rx&&!this.ry?this.ry=this.rx:this.ry&&!this.rx&&(this.rx=this.ry)},_render:function(t){var e=this.rx?Math.min(this.rx,this.width/2):0,i=this.ry?Math.min(this.ry,this.height/2):0,r=this.width,n=this.height,o=-this.width/2,a=-this.height/2,s=0!==e||0!==i,l=.4477152502;t.beginPath(),t.moveTo(o+e,a),t.lineTo(o+r-e,a),s&&t.bezierCurveTo(o+r-l*e,a,o+r,a+l*i,o+r,a+i),t.lineTo(o+r,a+n-i),s&&t.bezierCurveTo(o+r,a+n-l*i,o+r-l*e,a+n,o+r-e,a+n),t.lineTo(o+e,a+n),s&&t.bezierCurveTo(o+l*e,a+n,o,a+n-l*i,o,a+n-i),t.lineTo(o,a+i),s&&t.bezierCurveTo(o,a+l*i,o+l*e,a,o+e,a),t.closePath(),this._renderPaintInOrder(t)},toObject:function(t){return this.callSuper("toObject",["rx","ry"].concat(t))},_toSVG:function(){return["<rect ","COMMON_PARTS",'x="',-this.width/2,'" y="',-this.height/2,'" rx="',this.rx,'" ry="',this.ry,'" width="',this.width,'" height="',this.height,'" />\n']}}),e.Rect.ATTRIBUTE_NAMES=e.SHARED_ATTRIBUTES.concat("x y rx ry width height".split(" ")),e.Rect.fromElement=function(t,r,n){if(!t)return r(null);n=n||{};var o=e.parseAttributes(t,e.Rect.ATTRIBUTE_NAMES);o.left=o.left||0,o.top=o.top||0,o.height=o.height||0,o.width=o.width||0;var a=new e.Rect(i(n?e.util.object.clone(n):{},o));a.visible=a.visible&&a.width>0&&a.height>0,r(a)},e.Rect.fromObject=function(t,i){return e.Object._fromObject("Rect",t,i)})}(t),function(t){var e=t.fabric||(t.fabric={}),i=e.util.object.extend,r=e.util.array.min,n=e.util.array.max,o=e.util.toFixed,a=e.util.projectStrokeOnPoints;e.Polyline?e.warn("fabric.Polyline is already defined"):(e.Polyline=e.util.createClass(e.Object,{type:"polyline",points:null,exactBoundingBox:!1,cacheProperties:e.Object.prototype.cacheProperties.concat("points"),initialize:function(t,e){e=e||{},this.points=t||[],this.callSuper("initialize",e),this._setPositionDimensions(e)},_projectStrokeOnPoints:function(){return a(this.points,this,!0)},_setPositionDimensions:function(t){var e,i=this._calcDimensions(t),r=this.exactBoundingBox?this.strokeWidth:0;this.width=i.width-r,this.height=i.height-r,t.fromSVG||(e=this.translateToGivenOrigin({x:i.left-this.strokeWidth/2+r/2,y:i.top-this.strokeWidth/2+r/2},"left","top",this.originX,this.originY)),typeof t.left>"u"&&(this.left=t.fromSVG?i.left:e.x),typeof t.top>"u"&&(this.top=t.fromSVG?i.top:e.y),this.pathOffset={x:i.left+this.width/2+r/2,y:i.top+this.height/2+r/2}},_calcDimensions:function(){var t=this.exactBoundingBox?this._projectStrokeOnPoints():this.points,e=r(t,"x")||0,i=r(t,"y")||0;return{left:e,top:i,width:(n(t,"x")||0)-e,height:(n(t,"y")||0)-i}},toObject:function(t){return i(this.callSuper("toObject",t),{points:this.points.concat()})},_toSVG:function(){for(var t=[],i=this.pathOffset.x,r=this.pathOffset.y,n=e.Object.NUM_FRACTION_DIGITS,a=0,s=this.points.length;a<s;a++)t.push(o(this.points[a].x-i,n),",",o(this.points[a].y-r,n)," ");return["<"+this.type+" ","COMMON_PARTS",'points="',t.join(""),'" />\n']},commonRender:function(t){var e,i=this.points.length,r=this.pathOffset.x,n=this.pathOffset.y;if(!i||isNaN(this.points[i-1].y))return!1;t.beginPath(),t.moveTo(this.points[0].x-r,this.points[0].y-n);for(var o=0;o<i;o++)e=this.points[o],t.lineTo(e.x-r,e.y-n);return!0},_render:function(t){!this.commonRender(t)||this._renderPaintInOrder(t)},complexity:function(){return this.get("points").length}}),e.Polyline.ATTRIBUTE_NAMES=e.SHARED_ATTRIBUTES.concat(),e.Polyline.fromElementGenerator=function(t){return function(r,n,o){if(!r)return n(null);o||(o={});var a=e.parsePointsAttribute(r.getAttribute("points")),s=e.parseAttributes(r,e[t].ATTRIBUTE_NAMES);s.fromSVG=!0,n(new e[t](a,i(s,o)))}},e.Polyline.fromElement=e.Polyline.fromElementGenerator("Polyline"),e.Polyline.fromObject=function(t,i){return e.Object._fromObject("Polyline",t,i,"points")})}(t),function(t){var e=t.fabric||(t.fabric={}),i=e.util.projectStrokeOnPoints;e.Polygon?e.warn("fabric.Polygon is already defined"):(e.Polygon=e.util.createClass(e.Polyline,{type:"polygon",_projectStrokeOnPoints:function(){return i(this.points,this)},_render:function(t){!this.commonRender(t)||(t.closePath(),this._renderPaintInOrder(t))}}),e.Polygon.ATTRIBUTE_NAMES=e.SHARED_ATTRIBUTES.concat(),e.Polygon.fromElement=e.Polyline.fromElementGenerator("Polygon"),e.Polygon.fromObject=function(t,i){e.Object._fromObject("Polygon",t,i,"points")})}(t),function(t){var e=t.fabric||(t.fabric={}),i=e.util.array.min,r=e.util.array.max,n=e.util.object.extend,o=e.util.object.clone,a=e.util.toFixed;e.Path?e.warn("fabric.Path is already defined"):(e.Path=e.util.createClass(e.Object,{type:"path",path:null,cacheProperties:e.Object.prototype.cacheProperties.concat("path","fillRule"),stateProperties:e.Object.prototype.stateProperties.concat("path"),initialize:function(t,e){delete(e=o(e||{})).path,this.callSuper("initialize",e),this._setPath(t||[],e)},_setPath:function(t,i){this.path=e.util.makePathSimpler(Array.isArray(t)?t:e.util.parsePath(t)),e.Polyline.prototype._setPositionDimensions.call(this,i||{})},_renderPathCommands:function(t){var e,i=0,r=0,n=0,o=0,a=0,s=0,l=-this.pathOffset.x,c=-this.pathOffset.y;t.beginPath();for(var h=0,u=this.path.length;h<u;++h)switch(e=this.path[h],e[0]){case"L":n=e[1],o=e[2],t.lineTo(n+l,o+c);break;case"M":i=n=e[1],r=o=e[2],t.moveTo(n+l,o+c);break;case"C":n=e[5],o=e[6],a=e[3],s=e[4],t.bezierCurveTo(e[1]+l,e[2]+c,a+l,s+c,n+l,o+c);break;case"Q":t.quadraticCurveTo(e[1]+l,e[2]+c,e[3]+l,e[4]+c),n=e[3],o=e[4],a=e[1],s=e[2];break;case"z":case"Z":n=i,o=r,t.closePath()}},_render:function(t){this._renderPathCommands(t),this._renderPaintInOrder(t)},toString:function(){return"#<fabric.Path ("+this.complexity()+'): { "top": '+this.top+', "left": '+this.left+" }>"},toObject:function(t){return n(this.callSuper("toObject",t),{path:this.path.map(function(t){return t.slice()})})},toDatalessObject:function(t){var e=this.toObject(["sourcePath"].concat(t));return e.sourcePath&&delete e.path,e},_toSVG:function(){return["<path ","COMMON_PARTS",'d="',e.util.joinPath(this.path),'" stroke-linecap="round" ',"/>\n"]},_getOffsetTransform:function(){var t=e.Object.NUM_FRACTION_DIGITS;return" translate("+a(-this.pathOffset.x,t)+", "+a(-this.pathOffset.y,t)+")"},toClipPathSVG:function(t){var e=this._getOffsetTransform();return"\t"+this._createBaseClipPathSVGMarkup(this._toSVG(),{reviver:t,additionalTransform:e})},toSVG:function(t){var e=this._getOffsetTransform();return this._createBaseSVGMarkup(this._toSVG(),{reviver:t,additionalTransform:e})},complexity:function(){return this.path.length},_calcDimensions:function(){for(var t,n,o=[],a=[],s=0,l=0,c=0,h=0,u=0,d=this.path.length;u<d;++u){switch((t=this.path[u])[0]){case"L":c=t[1],h=t[2],n=[];break;case"M":s=c=t[1],l=h=t[2],n=[];break;case"C":n=e.util.getBoundsOfCurve(c,h,t[1],t[2],t[3],t[4],t[5],t[6]),c=t[5],h=t[6];break;case"Q":n=e.util.getBoundsOfCurve(c,h,t[1],t[2],t[1],t[2],t[3],t[4]),c=t[3],h=t[4];break;case"z":case"Z":c=s,h=l}n.forEach(function(t){o.push(t.x),a.push(t.y)}),o.push(c),a.push(h)}var p=i(o)||0,f=i(a)||0;return{left:p,top:f,width:(r(o)||0)-p,height:(r(a)||0)-f}}}),e.Path.fromObject=function(t,i){if("string"==typeof t.sourcePath){var r=t.sourcePath;e.loadSVGFromURL(r,function(r){var n=r[0];n.setOptions(t),t.clipPath?e.util.enlivenObjects([t.clipPath],function(t){n.clipPath=t[0],i&&i(n)}):i&&i(n)})}else e.Object._fromObject("Path",t,i,"path")},e.Path.ATTRIBUTE_NAMES=e.SHARED_ATTRIBUTES.concat(["d"]),e.Path.fromElement=function(t,i,r){var o=e.parseAttributes(t,e.Path.ATTRIBUTE_NAMES);o.fromSVG=!0,i(new e.Path(o.d,n(o,r)))})}(t),function(t){var e=t.fabric||(t.fabric={}),i=e.util.array.min,r=e.util.array.max;e.Group||(e.Group=e.util.createClass(e.Object,e.Collection,{type:"group",strokeWidth:0,subTargetCheck:!1,cacheProperties:[],useSetOnGroup:!1,initialize:function(t,e,i){e=e||{},this._objects=[],i&&this.callSuper("initialize",e),this._objects=t||[];for(var r=this._objects.length;r--;)this._objects[r].group=this;if(i)this._updateObjectsACoords();else{var n=e&&e.centerPoint;void 0!==e.originX&&(this.originX=e.originX),void 0!==e.originY&&(this.originY=e.originY),n||this._calcBounds(),this._updateObjectsCoords(n),delete e.centerPoint,this.callSuper("initialize",e)}this.setCoords()},_updateObjectsACoords:function(){for(var t=this._objects.length;t--;)this._objects[t].setCoords(!0)},_updateObjectsCoords:function(t){t=t||this.getCenterPoint();for(var e=this._objects.length;e--;)this._updateObjectCoords(this._objects[e],t)},_updateObjectCoords:function(t,e){var i=t.left,r=t.top;t.set({left:i-e.x,top:r-e.y}),t.group=this,t.setCoords(!0)},toString:function(){return"#<fabric.Group: ("+this.complexity()+")>"},addWithUpdate:function(t){var i=!!this.group;return this._restoreObjectsState(),e.util.resetObjectTransform(this),t&&(i&&e.util.removeTransformFromObject(t,this.group.calcTransformMatrix()),this._objects.push(t),t.group=this,t._set("canvas",this.canvas)),this._calcBounds(),this._updateObjectsCoords(),this.dirty=!0,i?this.group.addWithUpdate():this.setCoords(),this},removeWithUpdate:function(t){return this._restoreObjectsState(),e.util.resetObjectTransform(this),this.remove(t),this._calcBounds(),this._updateObjectsCoords(),this.setCoords(),this.dirty=!0,this},_onObjectAdded:function(t){this.dirty=!0,t.group=this,t._set("canvas",this.canvas)},_onObjectRemoved:function(t){this.dirty=!0,delete t.group},_set:function(t,i){var r=this._objects.length;if(this.useSetOnGroup)for(;r--;)this._objects[r].setOnGroup(t,i);if("canvas"===t)for(;r--;)this._objects[r]._set(t,i);e.Object.prototype._set.call(this,t,i)},toObject:function(t){var i=this.includeDefaultValues,r=this._objects.filter(function(t){return!t.excludeFromExport}).map(function(e){var r=e.includeDefaultValues;e.includeDefaultValues=i;var n=e.toObject(t);return e.includeDefaultValues=r,n}),n=e.Object.prototype.toObject.call(this,t);return n.objects=r,n},toDatalessObject:function(t){var i,r=this.sourcePath;if(r)i=r;else{var n=this.includeDefaultValues;i=this._objects.map(function(e){var i=e.includeDefaultValues;e.includeDefaultValues=n;var r=e.toDatalessObject(t);return e.includeDefaultValues=i,r})}var o=e.Object.prototype.toDatalessObject.call(this,t);return o.objects=i,o},render:function(t){this._transformDone=!0,this.callSuper("render",t),this._transformDone=!1},shouldCache:function(){var t=e.Object.prototype.shouldCache.call(this);if(t)for(var i=0,r=this._objects.length;i<r;i++)if(this._objects[i].willDrawShadow())return this.ownCaching=!1,!1;return t},willDrawShadow:function(){if(e.Object.prototype.willDrawShadow.call(this))return!0;for(var t=0,i=this._objects.length;t<i;t++)if(this._objects[t].willDrawShadow())return!0;return!1},isOnACache:function(){return this.ownCaching||this.group&&this.group.isOnACache()},drawObject:function(t){for(var e=0,i=this._objects.length;e<i;e++)this._objects[e].render(t);this._drawClipPath(t,this.clipPath)},isCacheDirty:function(t){if(this.callSuper("isCacheDirty",t))return!0;if(!this.statefullCache)return!1;for(var e=0,i=this._objects.length;e<i;e++)if(this._objects[e].isCacheDirty(!0)){if(this._cacheCanvas){var r=this.cacheWidth/this.zoomX,n=this.cacheHeight/this.zoomY;this._cacheContext.clearRect(-r/2,-n/2,r,n)}return!0}return!1},_restoreObjectsState:function(){var t=this.calcOwnMatrix();return this._objects.forEach(function(i){e.util.addTransformToObject(i,t),delete i.group,i.setCoords()}),this},destroy:function(){return this._objects.forEach(function(t){t.set("dirty",!0)}),this._restoreObjectsState()},dispose:function(){this.callSuper("dispose"),this.forEachObject(function(t){t.dispose&&t.dispose()}),this._objects=[]},toActiveSelection:function(){if(this.canvas){var t=this._objects,i=this.canvas;this._objects=[];var r=this.toObject();delete r.objects;var n=new e.ActiveSelection([]);return n.set(r),n.type="activeSelection",i.remove(this),t.forEach(function(t){t.group=n,t.dirty=!0,i.add(t)}),n.canvas=i,n._objects=t,i._activeObject=n,n.setCoords(),n}},ungroupOnCanvas:function(){return this._restoreObjectsState()},setObjectsCoords:function(){return this.forEachObject(function(t){t.setCoords(!0)}),this},_calcBounds:function(t){for(var e,i,r,n,o=[],a=[],s=["tr","br","bl","tl"],l=0,c=this._objects.length,h=s.length;l<c;++l){for(r=(e=this._objects[l]).calcACoords(),n=0;n<h;n++)i=s[n],o.push(r[i].x),a.push(r[i].y);e.aCoords=r}this._getBounds(o,a,t)},_getBounds:function(t,n,o){var a=new e.Point(i(t),i(n)),s=new e.Point(r(t),r(n)),l=a.y||0,c=a.x||0,h=s.x-a.x||0,u=s.y-a.y||0;this.width=h,this.height=u,o||this.setPositionByOrigin({x:c,y:l},"left","top")},_toSVG:function(t){for(var e=["<g ","COMMON_PARTS"," >\n"],i=0,r=this._objects.length;i<r;i++)e.push("\t\t",this._objects[i].toSVG(t));return e.push("</g>\n"),e},getSvgStyles:function(){var t=typeof this.opacity<"u"&&1!==this.opacity?"opacity: "+this.opacity+";":"",e=this.visible?"":" visibility: hidden;";return[t,this.getSvgFilter(),e].join("")},toClipPathSVG:function(t){for(var e=[],i=0,r=this._objects.length;i<r;i++)e.push("\t",this._objects[i].toClipPathSVG(t));return this._createBaseClipPathSVGMarkup(e,{reviver:t})}}),e.Group.fromObject=function(t,i){var r=t.objects,n=e.util.object.clone(t,!0);delete n.objects,"string"!=typeof r?e.util.enlivenObjects(r,function(r){e.util.enlivenObjectEnlivables(t,n,function(){i&&i(new e.Group(r,n,!0))})}):e.loadSVGFromURL(r,function(o){var a=e.util.groupSVGElements(o,t,r),s=n.clipPath;delete n.clipPath,a.set(n),s?e.util.enlivenObjects([s],function(t){a.clipPath=t[0],i&&i(a)}):i&&i(a)})})}(t),function(t){var e=t.fabric||(t.fabric={});e.ActiveSelection||(e.ActiveSelection=e.util.createClass(e.Group,{type:"activeSelection",initialize:function(t,i){i=i||{},this._objects=t||[];for(var r=this._objects.length;r--;)this._objects[r].group=this;i.originX&&(this.originX=i.originX),i.originY&&(this.originY=i.originY),this._calcBounds(),this._updateObjectsCoords(),e.Object.prototype.initialize.call(this,i),this.setCoords()},toGroup:function(){var t=this._objects.concat();this._objects=[];var i=e.Object.prototype.toObject.call(this),r=new e.Group([]);if(delete i.type,r.set(i),t.forEach(function(t){t.canvas.remove(t),t.group=r}),r._objects=t,!this.canvas)return r;var n=this.canvas;return n.add(r),n._activeObject=r,r.setCoords(),r},onDeselect:function(){return this.destroy(),!1},toString:function(){return"#<fabric.ActiveSelection: ("+this.complexity()+")>"},shouldCache:function(){return!1},isOnACache:function(){return!1},_renderControls:function(t,e,i){t.save(),t.globalAlpha=this.isMoving?this.borderOpacityWhenMoving:1,this.callSuper("_renderControls",t,e),typeof(i=i||{}).hasControls>"u"&&(i.hasControls=!1),i.forActiveSelection=!0;for(var r=0,n=this._objects.length;r<n;r++)this._objects[r]._renderControls(t,i);t.restore()}}),e.ActiveSelection.fromObject=function(t,i){e.util.enlivenObjects(t.objects,function(r){delete t.objects,i&&i(new e.ActiveSelection(r,t,!0))})})}(t),function(t){var e=s.util.object.extend;t.fabric||(t.fabric={}),t.fabric.Image?s.warn("fabric.Image is already defined."):(s.Image=s.util.createClass(s.Object,{type:"image",strokeWidth:0,srcFromAttribute:!1,_lastScaleX:1,_lastScaleY:1,_filterScalingX:1,_filterScalingY:1,minimumScaleTrigger:.5,stateProperties:s.Object.prototype.stateProperties.concat("cropX","cropY"),cacheProperties:s.Object.prototype.cacheProperties.concat("cropX","cropY"),cacheKey:"",cropX:0,cropY:0,imageSmoothing:!0,initialize:function(t,e){e||(e={}),this.filters=[],this.cacheKey="texture"+s.Object.__uid++,this.callSuper("initialize",e),this._initElement(t,e)},getElement:function(){return this._element||{}},setElement:function(t,e){return this.removeTexture(this.cacheKey),this.removeTexture(this.cacheKey+"_filtered"),this._element=t,this._originalElement=t,this._initConfig(e),0!==this.filters.length&&this.applyFilters(),this.resizeFilter&&this.applyResizeFilters(),this},removeTexture:function(t){var e=s.filterBackend;e&&e.evictCachesForKey&&e.evictCachesForKey(t)},dispose:function(){this.callSuper("dispose"),this.removeTexture(this.cacheKey),this.removeTexture(this.cacheKey+"_filtered"),this._cacheContext=void 0,["_originalElement","_element","_filteredEl","_cacheCanvas"].forEach(function(t){s.util.cleanUpJsdomNode(this[t]),this[t]=void 0}.bind(this))},getCrossOrigin:function(){return this._originalElement&&(this._originalElement.crossOrigin||null)},getOriginalSize:function(){var t=this.getElement();return{width:t.naturalWidth||t.width,height:t.naturalHeight||t.height}},_stroke:function(t){if(this.stroke&&0!==this.strokeWidth){var e=this.width/2,i=this.height/2;t.beginPath(),t.moveTo(-e,-i),t.lineTo(e,-i),t.lineTo(e,i),t.lineTo(-e,i),t.lineTo(-e,-i),t.closePath()}},toObject:function(t){var i=[];this.filters.forEach(function(t){t&&i.push(t.toObject())});var r=e(this.callSuper("toObject",["cropX","cropY"].concat(t)),{src:this.getSrc(),crossOrigin:this.getCrossOrigin(),filters:i});return this.resizeFilter&&(r.resizeFilter=this.resizeFilter.toObject()),r},hasCrop:function(){return this.cropX||this.cropY||this.width<this._element.width||this.height<this._element.height},_toSVG:function(){var t,e=[],i=[],r=this._element,n=-this.width/2,o=-this.height/2,a="",l="";if(!r)return[];if(this.hasCrop()){var c=s.Object.__uid++;e.push('<clipPath id="imageCrop_'+c+'">\n','\t<rect x="'+n+'" y="'+o+'" width="'+this.width+'" height="'+this.height+'" />\n',"</clipPath>\n"),a=' clip-path="url(#imageCrop_'+c+')" '}if(this.imageSmoothing||(l='" image-rendering="optimizeSpeed'),i.push("\t<image ","COMMON_PARTS",'xlink:href="',this.getSvgSrc(!0),'" x="',n-this.cropX,'" y="',o-this.cropY,'" width="',r.width||r.naturalWidth,'" height="',r.height||r.height,l,'"',a,"></image>\n"),this.stroke||this.strokeDashArray){var h=this.fill;this.fill=null,t=["\t<rect ",'x="',n,'" y="',o,'" width="',this.width,'" height="',this.height,'" style="',this.getSvgStyles(),'"/>\n'],this.fill=h}return"fill"!==this.paintFirst?e.concat(t,i):e.concat(i,t)},getSrc:function(t){var e=t?this._element:this._originalElement;return e?e.toDataURL?e.toDataURL():this.srcFromAttribute?e.getAttribute("src"):e.src:this.src||""},setSrc:function(t,e,i){return s.util.loadImage(t,function(t,r){this.setElement(t,i),this._setWidthHeight(),e&&e(this,r)},this,i&&i.crossOrigin),this},toString:function(){return'#<fabric.Image: { src: "'+this.getSrc()+'" }>'},applyResizeFilters:function(){var t=this.resizeFilter,e=this.minimumScaleTrigger,i=this.getTotalObjectScaling(),r=i.scaleX,n=i.scaleY,o=this._filteredEl||this._originalElement;if(this.group&&this.set("dirty",!0),!t||r>e&&n>e)return this._element=o,this._filterScalingX=1,this._filterScalingY=1,this._lastScaleX=r,void(this._lastScaleY=n);s.filterBackend||(s.filterBackend=s.initFilterBackend());var a=s.util.createCanvasElement(),l=this._filteredEl?this.cacheKey+"_filtered":this.cacheKey,c=o.width,h=o.height;a.width=c,a.height=h,this._element=a,this._lastScaleX=t.scaleX=r,this._lastScaleY=t.scaleY=n,s.filterBackend.applyFilters([t],o,c,h,this._element,l),this._filterScalingX=a.width/this._originalElement.width,this._filterScalingY=a.height/this._originalElement.height},applyFilters:function(t){if(t=(t=t||this.filters||[]).filter(function(t){return t&&!t.isNeutralState()}),this.set("dirty",!0),this.removeTexture(this.cacheKey+"_filtered"),0===t.length)return this._element=this._originalElement,this._filteredEl=null,this._filterScalingX=1,this._filterScalingY=1,this;var e=this._originalElement,i=e.naturalWidth||e.width,r=e.naturalHeight||e.height;if(this._element===this._originalElement){var n=s.util.createCanvasElement();n.width=i,n.height=r,this._element=n,this._filteredEl=n}else this._element=this._filteredEl,this._filteredEl.getContext("2d").clearRect(0,0,i,r),this._lastScaleX=1,this._lastScaleY=1;return s.filterBackend||(s.filterBackend=s.initFilterBackend()),s.filterBackend.applyFilters(t,this._originalElement,i,r,this._element,this.cacheKey),(this._originalElement.width!==this._element.width||this._originalElement.height!==this._element.height)&&(this._filterScalingX=this._element.width/this._originalElement.width,this._filterScalingY=this._element.height/this._originalElement.height),this},_render:function(t){s.util.setImageSmoothing(t,this.imageSmoothing),!0!==this.isMoving&&this.resizeFilter&&this._needsResize()&&this.applyResizeFilters(),this._stroke(t),this._renderPaintInOrder(t)},drawCacheOnCanvas:function(t){s.util.setImageSmoothing(t,this.imageSmoothing),s.Object.prototype.drawCacheOnCanvas.call(this,t)},shouldCache:function(){return this.needsItsOwnCache()},_renderFill:function(t){var e=this._element;if(e){var i=this._filterScalingX,r=this._filterScalingY,n=this.width,o=this.height,a=Math.min,s=Math.max,l=s(this.cropX,0),c=s(this.cropY,0),h=e.naturalWidth||e.width,u=e.naturalHeight||e.height,d=l*i,p=c*r,f=a(n*i,h-d),g=a(o*r,u-p),m=-n/2,v=-o/2,b=a(n,h/i-l),y=a(o,u/r-c);e&&t.drawImage(e,d,p,f,g,m,v,b,y)}},_needsResize:function(){var t=this.getTotalObjectScaling();return t.scaleX!==this._lastScaleX||t.scaleY!==this._lastScaleY},_resetWidthHeight:function(){this.set(this.getOriginalSize())},_initElement:function(t,e){this.setElement(s.util.getById(t),e),s.util.addClass(this.getElement(),s.Image.CSS_CANVAS)},_initConfig:function(t){t||(t={}),this.setOptions(t),this._setWidthHeight(t)},_initFilters:function(t,e){t&&t.length?s.util.enlivenObjects(t,function(t){e&&e(t)},"fabric.Image.filters"):e&&e()},_setWidthHeight:function(t){t||(t={});var e=this.getElement();this.width=t.width||e.naturalWidth||e.width||0,this.height=t.height||e.naturalHeight||e.height||0},parsePreserveAspectRatioAttribute:function(){var t,e=s.util.parsePreserveAspectRatioAttribute(this.preserveAspectRatio||""),i=this._element.width,r=this._element.height,n=1,o=1,a=0,l=0,c=0,h=0,u=this.width,d=this.height,p={width:u,height:d};return!e||"none"===e.alignX&&"none"===e.alignY?(n=u/i,o=d/r):("meet"===e.meetOrSlice&&(t=(u-i*(n=o=s.util.findScaleToFit(this._element,p)))/2,"Min"===e.alignX&&(a=-t),"Max"===e.alignX&&(a=t),t=(d-r*o)/2,"Min"===e.alignY&&(l=-t),"Max"===e.alignY&&(l=t)),"slice"===e.meetOrSlice&&(t=i-u/(n=o=s.util.findScaleToCover(this._element,p)),"Mid"===e.alignX&&(c=t/2),"Max"===e.alignX&&(c=t),t=r-d/o,"Mid"===e.alignY&&(h=t/2),"Max"===e.alignY&&(h=t),i=u/n,r=d/o)),{width:i,height:r,scaleX:n,scaleY:o,offsetLeft:a,offsetTop:l,cropX:c,cropY:h}}}),s.Image.CSS_CANVAS="canvas-img",s.Image.prototype.getSvgSrc=s.Image.prototype.getSrc,s.Image.fromObject=function(t,e){var i=s.util.object.clone(t);s.util.loadImage(i.src,function(t,r){r?e&&e(null,!0):s.Image.prototype._initFilters.call(i,i.filters,function(r){i.filters=r||[],s.Image.prototype._initFilters.call(i,[i.resizeFilter],function(r){i.resizeFilter=r[0],s.util.enlivenObjectEnlivables(i,i,function(){var r=new s.Image(t,i);e(r,!1)})})})},null,i.crossOrigin)},s.Image.fromURL=function(t,e,i){s.util.loadImage(t,function(t,r){e&&e(new s.Image(t,i),r)},null,i&&i.crossOrigin)},s.Image.ATTRIBUTE_NAMES=s.SHARED_ATTRIBUTES.concat("x y width height preserveAspectRatio xlink:href crossOrigin image-rendering".split(" ")),s.Image.fromElement=function(t,i,r){var n=s.parseAttributes(t,s.Image.ATTRIBUTE_NAMES);s.Image.fromURL(n["xlink:href"],i,e(r?s.util.object.clone(r):{},n))})}(t),s.util.object.extend(s.Object.prototype,{_getAngleValueForStraighten:function(){var t=this.angle%360;return t>0?90*Math.round((t-1)/90):90*Math.round(t/90)},straighten:function(){return this.rotate(this._getAngleValueForStraighten())},fxStraighten:function(t){var e=function(){},i=(t=t||{}).onComplete||e,r=t.onChange||e,n=this;return s.util.animate({target:this,startValue:this.get("angle"),endValue:this._getAngleValueForStraighten(),duration:this.FX_DURATION,onChange:function(t){n.rotate(t),r()},onComplete:function(){n.setCoords(),i()}})}}),s.util.object.extend(s.StaticCanvas.prototype,{straightenObject:function(t){return t.straighten(),this.requestRenderAll(),this},fxStraightenObject:function(t){return t.fxStraighten({onChange:this.requestRenderAllBound})}}),function(){function t(t,e){var i="precision "+e+" float;\nvoid main(){}",r=t.createShader(t.FRAGMENT_SHADER);return t.shaderSource(r,i),t.compileShader(r),!!t.getShaderParameter(r,t.COMPILE_STATUS)}function e(t){t&&t.tileSize&&(this.tileSize=t.tileSize),this.setupGLContext(this.tileSize,this.tileSize),this.captureGPUInfo()}s.isWebglSupported=function(e){if(s.isLikelyNode)return!1;e=e||s.WebglFilterBackend.prototype.tileSize;var i=document.createElement("canvas"),r=i.getContext("webgl")||i.getContext("experimental-webgl"),n=!1;if(r){s.maxTextureSize=r.getParameter(r.MAX_TEXTURE_SIZE),n=s.maxTextureSize>=e;for(var o=["highp","mediump","lowp"],a=0;a<3;a++)if(t(r,o[a])){s.webGlPrecision=o[a];break}}return this.isSupported=n,n},s.WebglFilterBackend=e,e.prototype={tileSize:2048,resources:{},setupGLContext:function(t,e){this.dispose(),this.createWebGLCanvas(t,e),this.aPosition=new Float32Array([0,0,0,1,1,0,1,1]),this.chooseFastestCopyGLTo2DMethod(t,e)},chooseFastestCopyGLTo2DMethod:function(t,e){var i,r=typeof window.performance<"u";try{new ImageData(1,1),i=!0}catch{i=!1}var n=typeof ArrayBuffer<"u",o=typeof Uint8ClampedArray<"u";if(r&&i&&n&&o){var a=s.util.createCanvasElement(),l=new ArrayBuffer(t*e*4);if(s.forceGLPutImageData)return this.imageBuffer=l,void(this.copyGLTo2D=h);var u,d,p={imageBuffer:l,destinationWidth:t,destinationHeight:e,targetCanvas:a};a.width=t,a.height=e,u=window.performance.now(),c.call(p,this.gl,p),d=window.performance.now()-u,u=window.performance.now(),h.call(p,this.gl,p),d>window.performance.now()-u?(this.imageBuffer=l,this.copyGLTo2D=h):this.copyGLTo2D=c}},createWebGLCanvas:function(t,e){var i=s.util.createCanvasElement();i.width=t,i.height=e;var r={alpha:!0,premultipliedAlpha:!1,depth:!1,stencil:!1,antialias:!1},n=i.getContext("webgl",r);n||(n=i.getContext("experimental-webgl",r)),n&&(n.clearColor(0,0,0,0),this.canvas=i,this.gl=n)},applyFilters:function(t,e,i,r,n,o){var a,s=this.gl;o&&(a=this.getCachedTexture(o,e));var l={originalWidth:e.width||e.originalWidth,originalHeight:e.height||e.originalHeight,sourceWidth:i,sourceHeight:r,destinationWidth:i,destinationHeight:r,context:s,sourceTexture:this.createTexture(s,i,r,!a&&e),targetTexture:this.createTexture(s,i,r),originalTexture:a||this.createTexture(s,i,r,!a&&e),passes:t.length,webgl:!0,aPosition:this.aPosition,programCache:this.programCache,pass:0,filterBackend:this,targetCanvas:n},c=s.createFramebuffer();return s.bindFramebuffer(s.FRAMEBUFFER,c),t.forEach(function(t){t&&t.applyTo(l)}),function(t){var e=t.targetCanvas,i=e.width,r=e.height,n=t.destinationWidth,o=t.destinationHeight;(i!==n||r!==o)&&(e.width=n,e.height=o)}(l),this.copyGLTo2D(s,l),s.bindTexture(s.TEXTURE_2D,null),s.deleteTexture(l.sourceTexture),s.deleteTexture(l.targetTexture),s.deleteFramebuffer(c),n.getContext("2d").setTransform(1,0,0,1,0,0),l},dispose:function(){this.canvas&&(this.canvas=null,this.gl=null),this.clearWebGLCaches()},clearWebGLCaches:function(){this.programCache={},this.textureCache={}},createTexture:function(t,e,i,r){var n=t.createTexture();return t.bindTexture(t.TEXTURE_2D,n),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.NEAREST),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.NEAREST),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),r?t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,r):t.texImage2D(t.TEXTURE_2D,0,t.RGBA,e,i,0,t.RGBA,t.UNSIGNED_BYTE,null),n},getCachedTexture:function(t,e){if(this.textureCache[t])return this.textureCache[t];var i=this.createTexture(this.gl,e.width,e.height,e);return this.textureCache[t]=i,i},evictCachesForKey:function(t){this.textureCache[t]&&(this.gl.deleteTexture(this.textureCache[t]),delete this.textureCache[t])},copyGLTo2D:c,captureGPUInfo:function(){if(this.gpuInfo)return this.gpuInfo;var t=this.gl,e={renderer:"",vendor:""};if(!t)return e;var i=t.getExtension("WEBGL_debug_renderer_info");if(i){var r=t.getParameter(i.UNMASKED_RENDERER_WEBGL),n=t.getParameter(i.UNMASKED_VENDOR_WEBGL);r&&(e.renderer=r.toLowerCase()),n&&(e.vendor=n.toLowerCase())}return this.gpuInfo=e,e}}}(),function(){var t=function(){};function e(){}s.Canvas2dFilterBackend=e,e.prototype={evictCachesForKey:t,dispose:t,clearWebGLCaches:t,resources:{},applyFilters:function(t,e,i,r,n){var o=n.getContext("2d");o.drawImage(e,0,0,i,r);var a={sourceWidth:i,sourceHeight:r,imageData:o.getImageData(0,0,i,r),originalEl:e,originalImageData:o.getImageData(0,0,i,r),canvasEl:n,ctx:o,filterBackend:this};return t.forEach(function(t){t.applyTo(a)}),(a.imageData.width!==i||a.imageData.height!==r)&&(n.width=a.imageData.width,n.height=a.imageData.height),o.putImageData(a.imageData,0,0),a}}}(),s.Image=s.Image||{},s.Image.filters=s.Image.filters||{},s.Image.filters.BaseFilter=s.util.createClass({type:"BaseFilter",vertexSource:"attribute vec2 aPosition;\nvarying vec2 vTexCoord;\nvoid main() {\nvTexCoord = aPosition;\ngl_Position = vec4(aPosition * 2.0 - 1.0, 0.0, 1.0);\n}",fragmentSource:"precision highp float;\nvarying vec2 vTexCoord;\nuniform sampler2D uTexture;\nvoid main() {\ngl_FragColor = texture2D(uTexture, vTexCoord);\n}",initialize:function(t){t&&this.setOptions(t)},setOptions:function(t){for(var e in t)this[e]=t[e]},createProgram:function(t,e,i){e=e||this.fragmentSource,i=i||this.vertexSource,"highp"!==s.webGlPrecision&&(e=e.replace(/precision highp float/g,"precision "+s.webGlPrecision+" float"));var r=t.createShader(t.VERTEX_SHADER);if(t.shaderSource(r,i),t.compileShader(r),!t.getShaderParameter(r,t.COMPILE_STATUS))throw new Error("Vertex shader compile error for "+this.type+": "+t.getShaderInfoLog(r));var n=t.createShader(t.FRAGMENT_SHADER);if(t.shaderSource(n,e),t.compileShader(n),!t.getShaderParameter(n,t.COMPILE_STATUS))throw new Error("Fragment shader compile error for "+this.type+": "+t.getShaderInfoLog(n));var o=t.createProgram();if(t.attachShader(o,r),t.attachShader(o,n),t.linkProgram(o),!t.getProgramParameter(o,t.LINK_STATUS))throw new Error('Shader link error for "${this.type}" '+t.getProgramInfoLog(o));var a=this.getAttributeLocations(t,o),l=this.getUniformLocations(t,o)||{};return l.uStepW=t.getUniformLocation(o,"uStepW"),l.uStepH=t.getUniformLocation(o,"uStepH"),{program:o,attributeLocations:a,uniformLocations:l}},getAttributeLocations:function(t,e){return{aPosition:t.getAttribLocation(e,"aPosition")}},getUniformLocations:function(){return{}},sendAttributeData:function(t,e,i){var r=e.aPosition,n=t.createBuffer();t.bindBuffer(t.ARRAY_BUFFER,n),t.enableVertexAttribArray(r),t.vertexAttribPointer(r,2,t.FLOAT,!1,0,0),t.bufferData(t.ARRAY_BUFFER,i,t.STATIC_DRAW)},_setupFrameBuffer:function(t){var e,i,r=t.context;t.passes>1?(e=t.destinationWidth,i=t.destinationHeight,(t.sourceWidth!==e||t.sourceHeight!==i)&&(r.deleteTexture(t.targetTexture),t.targetTexture=t.filterBackend.createTexture(r,e,i)),r.framebufferTexture2D(r.FRAMEBUFFER,r.COLOR_ATTACHMENT0,r.TEXTURE_2D,t.targetTexture,0)):(r.bindFramebuffer(r.FRAMEBUFFER,null),r.finish())},_swapTextures:function(t){t.passes--,t.pass++;var e=t.targetTexture;t.targetTexture=t.sourceTexture,t.sourceTexture=e},isNeutralState:function(){var t=this.mainParameter,e=s.Image.filters[this.type].prototype;if(t){if(Array.isArray(e[t])){for(var i=e[t].length;i--;)if(this[t][i]!==e[t][i])return!1;return!0}return e[t]===this[t]}return!1},applyTo:function(t){t.webgl?(this._setupFrameBuffer(t),this.applyToWebGL(t),this._swapTextures(t)):this.applyTo2d(t)},retrieveShader:function(t){return t.programCache.hasOwnProperty(this.type)||(t.programCache[this.type]=this.createProgram(t.context)),t.programCache[this.type]},applyToWebGL:function(t){var e=t.context,i=this.retrieveShader(t);0===t.pass&&t.originalTexture?e.bindTexture(e.TEXTURE_2D,t.originalTexture):e.bindTexture(e.TEXTURE_2D,t.sourceTexture),e.useProgram(i.program),this.sendAttributeData(e,i.attributeLocations,t.aPosition),e.uniform1f(i.uniformLocations.uStepW,1/t.sourceWidth),e.uniform1f(i.uniformLocations.uStepH,1/t.sourceHeight),this.sendUniformData(e,i.uniformLocations),e.viewport(0,0,t.destinationWidth,t.destinationHeight),e.drawArrays(e.TRIANGLE_STRIP,0,4)},bindAdditionalTexture:function(t,e,i){t.activeTexture(i),t.bindTexture(t.TEXTURE_2D,e),t.activeTexture(t.TEXTURE0)},unbindAdditionalTexture:function(t,e){t.activeTexture(e),t.bindTexture(t.TEXTURE_2D,null),t.activeTexture(t.TEXTURE0)},getMainParameter:function(){return this[this.mainParameter]},setMainParameter:function(t){this[this.mainParameter]=t},sendUniformData:function(){},createHelpLayer:function(t){if(!t.helpLayer){var e=document.createElement("canvas");e.width=t.sourceWidth,e.height=t.sourceHeight,t.helpLayer=e}},toObject:function(){var t={type:this.type},e=this.mainParameter;return e&&(t[e]=this[e]),t},toJSON:function(){return this.toObject()}}),s.Image.filters.BaseFilter.fromObject=function(t,e){var i=new s.Image.filters[t.type](t);return e&&e(i),i},function(t){var e=t.fabric||(t.fabric={}),i=e.Image.filters,r=e.util.createClass;i.ColorMatrix=r(i.BaseFilter,{type:"ColorMatrix",fragmentSource:"precision highp float;\nuniform sampler2D uTexture;\nvarying vec2 vTexCoord;\nuniform mat4 uColorMatrix;\nuniform vec4 uConstants;\nvoid main() {\nvec4 color = texture2D(uTexture, vTexCoord);\ncolor *= uColorMatrix;\ncolor += uConstants;\ngl_FragColor = color;\n}",matrix:[1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0],mainParameter:"matrix",colorsOnly:!0,initialize:function(t){this.callSuper("initialize",t),this.matrix=this.matrix.slice(0)},applyTo2d:function(t){var e,i,r,n,o,a=t.imageData.data,s=a.length,l=this.matrix,c=this.colorsOnly;for(o=0;o<s;o+=4)e=a[o],i=a[o+1],r=a[o+2],c?(a[o]=e*l[0]+i*l[1]+r*l[2]+255*l[4],a[o+1]=e*l[5]+i*l[6]+r*l[7]+255*l[9],a[o+2]=e*l[10]+i*l[11]+r*l[12]+255*l[14]):(n=a[o+3],a[o]=e*l[0]+i*l[1]+r*l[2]+n*l[3]+255*l[4],a[o+1]=e*l[5]+i*l[6]+r*l[7]+n*l[8]+255*l[9],a[o+2]=e*l[10]+i*l[11]+r*l[12]+n*l[13]+255*l[14],a[o+3]=e*l[15]+i*l[16]+r*l[17]+n*l[18]+255*l[19])},getUniformLocations:function(t,e){return{uColorMatrix:t.getUniformLocation(e,"uColorMatrix"),uConstants:t.getUniformLocation(e,"uConstants")}},sendUniformData:function(t,e){var i=this.matrix,r=[i[0],i[1],i[2],i[3],i[5],i[6],i[7],i[8],i[10],i[11],i[12],i[13],i[15],i[16],i[17],i[18]],n=[i[4],i[9],i[14],i[19]];t.uniformMatrix4fv(e.uColorMatrix,!1,r),t.uniform4fv(e.uConstants,n)}}),e.Image.filters.ColorMatrix.fromObject=e.Image.filters.BaseFilter.fromObject}(t),function(t){var e=t.fabric||(t.fabric={}),i=e.Image.filters,r=e.util.createClass;i.Brightness=r(i.BaseFilter,{type:"Brightness",fragmentSource:"precision highp float;\nuniform sampler2D uTexture;\nuniform float uBrightness;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 color = texture2D(uTexture, vTexCoord);\ncolor.rgb += uBrightness;\ngl_FragColor = color;\n}",brightness:0,mainParameter:"brightness",applyTo2d:function(t){if(0!==this.brightness){var e,i=t.imageData.data,r=i.length,n=Math.round(255*this.brightness);for(e=0;e<r;e+=4)i[e]=i[e]+n,i[e+1]=i[e+1]+n,i[e+2]=i[e+2]+n}},getUniformLocations:function(t,e){return{uBrightness:t.getUniformLocation(e,"uBrightness")}},sendUniformData:function(t,e){t.uniform1f(e.uBrightness,this.brightness)}}),e.Image.filters.Brightness.fromObject=e.Image.filters.BaseFilter.fromObject}(t),function(t){var e=t.fabric||(t.fabric={}),i=e.util.object.extend,r=e.Image.filters,n=e.util.createClass;r.Convolute=n(r.BaseFilter,{type:"Convolute",opaque:!1,matrix:[0,0,0,0,1,0,0,0,0],fragmentSource:{Convolute_3_1:"precision highp float;\nuniform sampler2D uTexture;\nuniform float uMatrix[9];\nuniform float uStepW;\nuniform float uStepH;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 color = vec4(0, 0, 0, 0);\nfor (float h = 0.0; h < 3.0; h+=1.0) {\nfor (float w = 0.0; w < 3.0; w+=1.0) {\nvec2 matrixPos = vec2(uStepW * (w - 1), uStepH * (h - 1));\ncolor += texture2D(uTexture, vTexCoord + matrixPos) * uMatrix[int(h * 3.0 + w)];\n}\n}\ngl_FragColor = color;\n}",Convolute_3_0:"precision highp float;\nuniform sampler2D uTexture;\nuniform float uMatrix[9];\nuniform float uStepW;\nuniform float uStepH;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 color = vec4(0, 0, 0, 1);\nfor (float h = 0.0; h < 3.0; h+=1.0) {\nfor (float w = 0.0; w < 3.0; w+=1.0) {\nvec2 matrixPos = vec2(uStepW * (w - 1.0), uStepH * (h - 1.0));\ncolor.rgb += texture2D(uTexture, vTexCoord + matrixPos).rgb * uMatrix[int(h * 3.0 + w)];\n}\n}\nfloat alpha = texture2D(uTexture, vTexCoord).a;\ngl_FragColor = color;\ngl_FragColor.a = alpha;\n}",Convolute_5_1:"precision highp float;\nuniform sampler2D uTexture;\nuniform float uMatrix[25];\nuniform float uStepW;\nuniform float uStepH;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 color = vec4(0, 0, 0, 0);\nfor (float h = 0.0; h < 5.0; h+=1.0) {\nfor (float w = 0.0; w < 5.0; w+=1.0) {\nvec2 matrixPos = vec2(uStepW * (w - 2.0), uStepH * (h - 2.0));\ncolor += texture2D(uTexture, vTexCoord + matrixPos) * uMatrix[int(h * 5.0 + w)];\n}\n}\ngl_FragColor = color;\n}",Convolute_5_0:"precision highp float;\nuniform sampler2D uTexture;\nuniform float uMatrix[25];\nuniform float uStepW;\nuniform float uStepH;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 color = vec4(0, 0, 0, 1);\nfor (float h = 0.0; h < 5.0; h+=1.0) {\nfor (float w = 0.0; w < 5.0; w+=1.0) {\nvec2 matrixPos = vec2(uStepW * (w - 2.0), uStepH * (h - 2.0));\ncolor.rgb += texture2D(uTexture, vTexCoord + matrixPos).rgb * uMatrix[int(h * 5.0 + w)];\n}\n}\nfloat alpha = texture2D(uTexture, vTexCoord).a;\ngl_FragColor = color;\ngl_FragColor.a = alpha;\n}",Convolute_7_1:"precision highp float;\nuniform sampler2D uTexture;\nuniform float uMatrix[49];\nuniform float uStepW;\nuniform float uStepH;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 color = vec4(0, 0, 0, 0);\nfor (float h = 0.0; h < 7.0; h+=1.0) {\nfor (float w = 0.0; w < 7.0; w+=1.0) {\nvec2 matrixPos = vec2(uStepW * (w - 3.0), uStepH * (h - 3.0));\ncolor += texture2D(uTexture, vTexCoord + matrixPos) * uMatrix[int(h * 7.0 + w)];\n}\n}\ngl_FragColor = color;\n}",Convolute_7_0:"precision highp float;\nuniform sampler2D uTexture;\nuniform float uMatrix[49];\nuniform float uStepW;\nuniform float uStepH;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 color = vec4(0, 0, 0, 1);\nfor (float h = 0.0; h < 7.0; h+=1.0) {\nfor (float w = 0.0; w < 7.0; w+=1.0) {\nvec2 matrixPos = vec2(uStepW * (w - 3.0), uStepH * (h - 3.0));\ncolor.rgb += texture2D(uTexture, vTexCoord + matrixPos).rgb * uMatrix[int(h * 7.0 + w)];\n}\n}\nfloat alpha = texture2D(uTexture, vTexCoord).a;\ngl_FragColor = color;\ngl_FragColor.a = alpha;\n}",Convolute_9_1:"precision highp float;\nuniform sampler2D uTexture;\nuniform float uMatrix[81];\nuniform float uStepW;\nuniform float uStepH;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 color = vec4(0, 0, 0, 0);\nfor (float h = 0.0; h < 9.0; h+=1.0) {\nfor (float w = 0.0; w < 9.0; w+=1.0) {\nvec2 matrixPos = vec2(uStepW * (w - 4.0), uStepH * (h - 4.0));\ncolor += texture2D(uTexture, vTexCoord + matrixPos) * uMatrix[int(h * 9.0 + w)];\n}\n}\ngl_FragColor = color;\n}",Convolute_9_0:"precision highp float;\nuniform sampler2D uTexture;\nuniform float uMatrix[81];\nuniform float uStepW;\nuniform float uStepH;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 color = vec4(0, 0, 0, 1);\nfor (float h = 0.0; h < 9.0; h+=1.0) {\nfor (float w = 0.0; w < 9.0; w+=1.0) {\nvec2 matrixPos = vec2(uStepW * (w - 4.0), uStepH * (h - 4.0));\ncolor.rgb += texture2D(uTexture, vTexCoord + matrixPos).rgb * uMatrix[int(h * 9.0 + w)];\n}\n}\nfloat alpha = texture2D(uTexture, vTexCoord).a;\ngl_FragColor = color;\ngl_FragColor.a = alpha;\n}"},retrieveShader:function(t){var e=Math.sqrt(this.matrix.length),i=this.type+"_"+e+"_"+(this.opaque?1:0),r=this.fragmentSource[i];return t.programCache.hasOwnProperty(i)||(t.programCache[i]=this.createProgram(t.context,r)),t.programCache[i]},applyTo2d:function(t){var e,i,r,n,o,a,s,l,c,h,u,d,p,f=t.imageData,g=f.data,m=this.matrix,v=Math.round(Math.sqrt(m.length)),b=Math.floor(v/2),y=f.width,x=f.height,w=t.ctx.createImageData(y,x),_=w.data,S=this.opaque?1:0;for(u=0;u<x;u++)for(h=0;h<y;h++){for(o=4*(u*y+h),e=0,i=0,r=0,n=0,p=0;p<v;p++)for(d=0;d<v;d++)a=h+d-b,!((s=u+p-b)<0||s>=x||a<0||a>=y)&&(l=4*(s*y+a),c=m[p*v+d],e+=g[l]*c,i+=g[l+1]*c,r+=g[l+2]*c,S||(n+=g[l+3]*c));_[o]=e,_[o+1]=i,_[o+2]=r,_[o+3]=S?g[o+3]:n}t.imageData=w},getUniformLocations:function(t,e){return{uMatrix:t.getUniformLocation(e,"uMatrix"),uOpaque:t.getUniformLocation(e,"uOpaque"),uHalfSize:t.getUniformLocation(e,"uHalfSize"),uSize:t.getUniformLocation(e,"uSize")}},sendUniformData:function(t,e){t.uniform1fv(e.uMatrix,this.matrix)},toObject:function(){return i(this.callSuper("toObject"),{opaque:this.opaque,matrix:this.matrix})}}),e.Image.filters.Convolute.fromObject=e.Image.filters.BaseFilter.fromObject}(t),function(t){var e=t.fabric||(t.fabric={}),i=e.Image.filters,r=e.util.createClass;i.Grayscale=r(i.BaseFilter,{type:"Grayscale",fragmentSource:{average:"precision highp float;\nuniform sampler2D uTexture;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 color = texture2D(uTexture, vTexCoord);\nfloat average = (color.r + color.b + color.g) / 3.0;\ngl_FragColor = vec4(average, average, average, color.a);\n}",lightness:"precision highp float;\nuniform sampler2D uTexture;\nuniform int uMode;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 col = texture2D(uTexture, vTexCoord);\nfloat average = (max(max(col.r, col.g),col.b) + min(min(col.r, col.g),col.b)) / 2.0;\ngl_FragColor = vec4(average, average, average, col.a);\n}",luminosity:"precision highp float;\nuniform sampler2D uTexture;\nuniform int uMode;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 col = texture2D(uTexture, vTexCoord);\nfloat average = 0.21 * col.r + 0.72 * col.g + 0.07 * col.b;\ngl_FragColor = vec4(average, average, average, col.a);\n}"},mode:"average",mainParameter:"mode",applyTo2d:function(t){var e,i,r=t.imageData.data,n=r.length,o=this.mode;for(e=0;e<n;e+=4)"average"===o?i=(r[e]+r[e+1]+r[e+2])/3:"lightness"===o?i=(Math.min(r[e],r[e+1],r[e+2])+Math.max(r[e],r[e+1],r[e+2]))/2:"luminosity"===o&&(i=.21*r[e]+.72*r[e+1]+.07*r[e+2]),r[e]=i,r[e+1]=i,r[e+2]=i},retrieveShader:function(t){var e=this.type+"_"+this.mode;if(!t.programCache.hasOwnProperty(e)){var i=this.fragmentSource[this.mode];t.programCache[e]=this.createProgram(t.context,i)}return t.programCache[e]},getUniformLocations:function(t,e){return{uMode:t.getUniformLocation(e,"uMode")}},sendUniformData:function(t,e){t.uniform1i(e.uMode,1)},isNeutralState:function(){return!1}}),e.Image.filters.Grayscale.fromObject=e.Image.filters.BaseFilter.fromObject}(t),function(t){var e=t.fabric||(t.fabric={}),i=e.Image.filters,r=e.util.createClass;i.Invert=r(i.BaseFilter,{type:"Invert",fragmentSource:"precision highp float;\nuniform sampler2D uTexture;\nuniform int uInvert;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 color = texture2D(uTexture, vTexCoord);\nif (uInvert == 1) {\ngl_FragColor = vec4(1.0 - color.r,1.0 -color.g,1.0 -color.b,color.a);\n} else {\ngl_FragColor = color;\n}\n}",invert:!0,mainParameter:"invert",applyTo2d:function(t){var e,i=t.imageData.data,r=i.length;for(e=0;e<r;e+=4)i[e]=255-i[e],i[e+1]=255-i[e+1],i[e+2]=255-i[e+2]},isNeutralState:function(){return!this.invert},getUniformLocations:function(t,e){return{uInvert:t.getUniformLocation(e,"uInvert")}},sendUniformData:function(t,e){t.uniform1i(e.uInvert,this.invert)}}),e.Image.filters.Invert.fromObject=e.Image.filters.BaseFilter.fromObject}(t),function(t){var e=t.fabric||(t.fabric={}),i=e.util.object.extend,r=e.Image.filters,n=e.util.createClass;r.Noise=n(r.BaseFilter,{type:"Noise",fragmentSource:"precision highp float;\nuniform sampler2D uTexture;\nuniform float uStepH;\nuniform float uNoise;\nuniform float uSeed;\nvarying vec2 vTexCoord;\nfloat rand(vec2 co, float seed, float vScale) {\nreturn fract(sin(dot(co.xy * vScale ,vec2(12.9898 , 78.233))) * 43758.5453 * (seed + 0.01) / 2.0);\n}\nvoid main() {\nvec4 color = texture2D(uTexture, vTexCoord);\ncolor.rgb += (0.5 - rand(vTexCoord, uSeed, 0.1 / uStepH)) * uNoise;\ngl_FragColor = color;\n}",mainParameter:"noise",noise:0,applyTo2d:function(t){if(0!==this.noise){var e,i,r=t.imageData.data,n=r.length,o=this.noise;for(e=0,n=r.length;e<n;e+=4)i=(.5-Math.random())*o,r[e]+=i,r[e+1]+=i,r[e+2]+=i}},getUniformLocations:function(t,e){return{uNoise:t.getUniformLocation(e,"uNoise"),uSeed:t.getUniformLocation(e,"uSeed")}},sendUniformData:function(t,e){t.uniform1f(e.uNoise,this.noise/255),t.uniform1f(e.uSeed,Math.random())},toObject:function(){return i(this.callSuper("toObject"),{noise:this.noise})}}),e.Image.filters.Noise.fromObject=e.Image.filters.BaseFilter.fromObject}(t),function(t){var e=t.fabric||(t.fabric={}),i=e.Image.filters,r=e.util.createClass;i.Pixelate=r(i.BaseFilter,{type:"Pixelate",blocksize:4,mainParameter:"blocksize",fragmentSource:"precision highp float;\nuniform sampler2D uTexture;\nuniform float uBlocksize;\nuniform float uStepW;\nuniform float uStepH;\nvarying vec2 vTexCoord;\nvoid main() {\nfloat blockW = uBlocksize * uStepW;\nfloat blockH = uBlocksize * uStepW;\nint posX = int(vTexCoord.x / blockW);\nint posY = int(vTexCoord.y / blockH);\nfloat fposX = float(posX);\nfloat fposY = float(posY);\nvec2 squareCoords = vec2(fposX * blockW, fposY * blockH);\nvec4 color = texture2D(uTexture, squareCoords);\ngl_FragColor = color;\n}",applyTo2d:function(t){var e,i,r,n,o,a,s,l,c,h,u,d=t.imageData,p=d.data,f=d.height,g=d.width;for(i=0;i<f;i+=this.blocksize)for(r=0;r<g;r+=this.blocksize)for(n=p[e=4*i*g+4*r],o=p[e+1],a=p[e+2],s=p[e+3],h=Math.min(i+this.blocksize,f),u=Math.min(r+this.blocksize,g),l=i;l<h;l++)for(c=r;c<u;c++)p[e=4*l*g+4*c]=n,p[e+1]=o,p[e+2]=a,p[e+3]=s},isNeutralState:function(){return 1===this.blocksize},getUniformLocations:function(t,e){return{uBlocksize:t.getUniformLocation(e,"uBlocksize"),uStepW:t.getUniformLocation(e,"uStepW"),uStepH:t.getUniformLocation(e,"uStepH")}},sendUniformData:function(t,e){t.uniform1f(e.uBlocksize,this.blocksize)}}),e.Image.filters.Pixelate.fromObject=e.Image.filters.BaseFilter.fromObject}(t),function(t){var e=t.fabric||(t.fabric={}),i=e.util.object.extend,r=e.Image.filters,n=e.util.createClass;r.RemoveColor=n(r.BaseFilter,{type:"RemoveColor",color:"#FFFFFF",fragmentSource:"precision highp float;\nuniform sampler2D uTexture;\nuniform vec4 uLow;\nuniform vec4 uHigh;\nvarying vec2 vTexCoord;\nvoid main() {\ngl_FragColor = texture2D(uTexture, vTexCoord);\nif(all(greaterThan(gl_FragColor.rgb,uLow.rgb)) && all(greaterThan(uHigh.rgb,gl_FragColor.rgb))) {\ngl_FragColor.a = 0.0;\n}\n}",distance:.02,useAlpha:!1,applyTo2d:function(t){var i,r,n,o,a=t.imageData.data,s=255*this.distance,l=new e.Color(this.color).getSource(),c=[l[0]-s,l[1]-s,l[2]-s],h=[l[0]+s,l[1]+s,l[2]+s];for(i=0;i<a.length;i+=4)r=a[i],n=a[i+1],o=a[i+2],r>c[0]&&n>c[1]&&o>c[2]&&r<h[0]&&n<h[1]&&o<h[2]&&(a[i+3]=0)},getUniformLocations:function(t,e){return{uLow:t.getUniformLocation(e,"uLow"),uHigh:t.getUniformLocation(e,"uHigh")}},sendUniformData:function(t,i){var r=new e.Color(this.color).getSource(),n=parseFloat(this.distance),o=[0+r[0]/255-n,0+r[1]/255-n,0+r[2]/255-n,1],a=[r[0]/255+n,r[1]/255+n,r[2]/255+n,1];t.uniform4fv(i.uLow,o),t.uniform4fv(i.uHigh,a)},toObject:function(){return i(this.callSuper("toObject"),{color:this.color,distance:this.distance})}}),e.Image.filters.RemoveColor.fromObject=e.Image.filters.BaseFilter.fromObject}(t),function(t){var e=t.fabric||(t.fabric={}),i=e.Image.filters,r=e.util.createClass,n={Brownie:[.5997,.34553,-.27082,0,.186,-.0377,.86095,.15059,0,-.1449,.24113,-.07441,.44972,0,-.02965,0,0,0,1,0],Vintage:[.62793,.32021,-.03965,0,.03784,.02578,.64411,.03259,0,.02926,.0466,-.08512,.52416,0,.02023,0,0,0,1,0],Kodachrome:[1.12855,-.39673,-.03992,0,.24991,-.16404,1.08352,-.05498,0,.09698,-.16786,-.56034,1.60148,0,.13972,0,0,0,1,0],Technicolor:[1.91252,-.85453,-.09155,0,.04624,-.30878,1.76589,-.10601,0,-.27589,-.2311,-.75018,1.84759,0,.12137,0,0,0,1,0],Polaroid:[1.438,-.062,-.062,0,0,-.122,1.378,-.122,0,0,-.016,-.016,1.483,0,0,0,0,0,1,0],Sepia:[.393,.769,.189,0,0,.349,.686,.168,0,0,.272,.534,.131,0,0,0,0,0,1,0],BlackWhite:[1.5,1.5,1.5,0,-1,1.5,1.5,1.5,0,-1,1.5,1.5,1.5,0,-1,0,0,0,1,0]};for(var o in n)i[o]=r(i.ColorMatrix,{type:o,matrix:n[o],mainParameter:!1,colorsOnly:!0}),e.Image.filters[o].fromObject=e.Image.filters.BaseFilter.fromObject}(t),function(t){var e=t.fabric,i=e.Image.filters,r=e.util.createClass;i.BlendColor=r(i.BaseFilter,{type:"BlendColor",color:"#F95C63",mode:"multiply",alpha:1,fragmentSource:{multiply:"gl_FragColor.rgb *= uColor.rgb;\n",screen:"gl_FragColor.rgb = 1.0 - (1.0 - gl_FragColor.rgb) * (1.0 - uColor.rgb);\n",add:"gl_FragColor.rgb += uColor.rgb;\n",diff:"gl_FragColor.rgb = abs(gl_FragColor.rgb - uColor.rgb);\n",subtract:"gl_FragColor.rgb -= uColor.rgb;\n",lighten:"gl_FragColor.rgb = max(gl_FragColor.rgb, uColor.rgb);\n",darken:"gl_FragColor.rgb = min(gl_FragColor.rgb, uColor.rgb);\n",exclusion:"gl_FragColor.rgb += uColor.rgb - 2.0 * (uColor.rgb * gl_FragColor.rgb);\n",overlay:"if (uColor.r < 0.5) {\ngl_FragColor.r *= 2.0 * uColor.r;\n} else {\ngl_FragColor.r = 1.0 - 2.0 * (1.0 - gl_FragColor.r) * (1.0 - uColor.r);\n}\nif (uColor.g < 0.5) {\ngl_FragColor.g *= 2.0 * uColor.g;\n} else {\ngl_FragColor.g = 1.0 - 2.0 * (1.0 - gl_FragColor.g) * (1.0 - uColor.g);\n}\nif (uColor.b < 0.5) {\ngl_FragColor.b *= 2.0 * uColor.b;\n} else {\ngl_FragColor.b = 1.0 - 2.0 * (1.0 - gl_FragColor.b) * (1.0 - uColor.b);\n}\n",tint:"gl_FragColor.rgb *= (1.0 - uColor.a);\ngl_FragColor.rgb += uColor.rgb;\n"},buildSource:function(t){return"precision highp float;\nuniform sampler2D uTexture;\nuniform vec4 uColor;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 color = texture2D(uTexture, vTexCoord);\ngl_FragColor = color;\nif (color.a > 0.0) {\n"+this.fragmentSource[t]+"}\n}"},retrieveShader:function(t){var e,i=this.type+"_"+this.mode;return t.programCache.hasOwnProperty(i)||(e=this.buildSource(this.mode),t.programCache[i]=this.createProgram(t.context,e)),t.programCache[i]},applyTo2d:function(t){var i,r,n,o,a,s,l,c=t.imageData.data,h=c.length,u=1-this.alpha;i=(l=new e.Color(this.color).getSource())[0]*this.alpha,r=l[1]*this.alpha,n=l[2]*this.alpha;for(var d=0;d<h;d+=4)switch(o=c[d],a=c[d+1],s=c[d+2],this.mode){case"multiply":c[d]=o*i/255,c[d+1]=a*r/255,c[d+2]=s*n/255;break;case"screen":c[d]=255-(255-o)*(255-i)/255,c[d+1]=255-(255-a)*(255-r)/255,c[d+2]=255-(255-s)*(255-n)/255;break;case"add":c[d]=o+i,c[d+1]=a+r,c[d+2]=s+n;break;case"diff":case"difference":c[d]=Math.abs(o-i),c[d+1]=Math.abs(a-r),c[d+2]=Math.abs(s-n);break;case"subtract":c[d]=o-i,c[d+1]=a-r,c[d+2]=s-n;break;case"darken":c[d]=Math.min(o,i),c[d+1]=Math.min(a,r),c[d+2]=Math.min(s,n);break;case"lighten":c[d]=Math.max(o,i),c[d+1]=Math.max(a,r),c[d+2]=Math.max(s,n);break;case"overlay":c[d]=i<128?2*o*i/255:255-2*(255-o)*(255-i)/255,c[d+1]=r<128?2*a*r/255:255-2*(255-a)*(255-r)/255,c[d+2]=n<128?2*s*n/255:255-2*(255-s)*(255-n)/255;break;case"exclusion":c[d]=i+o-2*i*o/255,c[d+1]=r+a-2*r*a/255,c[d+2]=n+s-2*n*s/255;break;case"tint":c[d]=i+o*u,c[d+1]=r+a*u,c[d+2]=n+s*u}},getUniformLocations:function(t,e){return{uColor:t.getUniformLocation(e,"uColor")}},sendUniformData:function(t,i){var r=new e.Color(this.color).getSource();r[0]=this.alpha*r[0]/255,r[1]=this.alpha*r[1]/255,r[2]=this.alpha*r[2]/255,r[3]=this.alpha,t.uniform4fv(i.uColor,r)},toObject:function(){return{type:this.type,color:this.color,mode:this.mode,alpha:this.alpha}}}),e.Image.filters.BlendColor.fromObject=e.Image.filters.BaseFilter.fromObject}(t),function(t){var e=t.fabric,i=e.Image.filters,r=e.util.createClass;i.BlendImage=r(i.BaseFilter,{type:"BlendImage",image:null,mode:"multiply",alpha:1,vertexSource:"attribute vec2 aPosition;\nvarying vec2 vTexCoord;\nvarying vec2 vTexCoord2;\nuniform mat3 uTransformMatrix;\nvoid main() {\nvTexCoord = aPosition;\nvTexCoord2 = (uTransformMatrix * vec3(aPosition, 1.0)).xy;\ngl_Position = vec4(aPosition * 2.0 - 1.0, 0.0, 1.0);\n}",fragmentSource:{multiply:"precision highp float;\nuniform sampler2D uTexture;\nuniform sampler2D uImage;\nuniform vec4 uColor;\nvarying vec2 vTexCoord;\nvarying vec2 vTexCoord2;\nvoid main() {\nvec4 color = texture2D(uTexture, vTexCoord);\nvec4 color2 = texture2D(uImage, vTexCoord2);\ncolor.rgba *= color2.rgba;\ngl_FragColor = color;\n}",mask:"precision highp float;\nuniform sampler2D uTexture;\nuniform sampler2D uImage;\nuniform vec4 uColor;\nvarying vec2 vTexCoord;\nvarying vec2 vTexCoord2;\nvoid main() {\nvec4 color = texture2D(uTexture, vTexCoord);\nvec4 color2 = texture2D(uImage, vTexCoord2);\ncolor.a = color2.a;\ngl_FragColor = color;\n}"},retrieveShader:function(t){var e=this.type+"_"+this.mode,i=this.fragmentSource[this.mode];return t.programCache.hasOwnProperty(e)||(t.programCache[e]=this.createProgram(t.context,i)),t.programCache[e]},applyToWebGL:function(t){var e=t.context,i=this.createTexture(t.filterBackend,this.image);this.bindAdditionalTexture(e,i,e.TEXTURE1),this.callSuper("applyToWebGL",t),this.unbindAdditionalTexture(e,e.TEXTURE1)},createTexture:function(t,e){return t.getCachedTexture(e.cacheKey,e._element)},calculateMatrix:function(){var t=this.image,e=t._element.width,i=t._element.height;return[1/t.scaleX,0,0,0,1/t.scaleY,0,-t.left/e,-t.top/i,1]},applyTo2d:function(t){var i,r,n,o,a,s,l,c,h,u,d,p=t.imageData,f=t.filterBackend.resources,g=p.data,m=g.length,v=p.width,b=p.height,y=this.image;f.blendImage||(f.blendImage=e.util.createCanvasElement()),u=(h=f.blendImage).getContext("2d"),h.width!==v||h.height!==b?(h.width=v,h.height=b):u.clearRect(0,0,v,b),u.setTransform(y.scaleX,0,0,y.scaleY,y.left,y.top),u.drawImage(y._element,0,0,v,b),d=u.getImageData(0,0,v,b).data;for(var x=0;x<m;x+=4)switch(a=g[x],s=g[x+1],l=g[x+2],c=g[x+3],i=d[x],r=d[x+1],n=d[x+2],o=d[x+3],this.mode){case"multiply":g[x]=a*i/255,g[x+1]=s*r/255,g[x+2]=l*n/255,g[x+3]=c*o/255;break;case"mask":g[x+3]=o}},getUniformLocations:function(t,e){return{uTransformMatrix:t.getUniformLocation(e,"uTransformMatrix"),uImage:t.getUniformLocation(e,"uImage")}},sendUniformData:function(t,e){var i=this.calculateMatrix();t.uniform1i(e.uImage,1),t.uniformMatrix3fv(e.uTransformMatrix,!1,i)},toObject:function(){return{type:this.type,image:this.image&&this.image.toObject(),mode:this.mode,alpha:this.alpha}}}),e.Image.filters.BlendImage.fromObject=function(t,i){e.Image.fromObject(t.image,function(r){var n=e.util.object.clone(t);n.image=r,i(new e.Image.filters.BlendImage(n))})}}(t),function(t){var e=t.fabric||(t.fabric={}),i=Math.pow,r=Math.floor,n=Math.sqrt,o=Math.abs,a=Math.round,s=Math.sin,l=Math.ceil,c=e.Image.filters,h=e.util.createClass;c.Resize=h(c.BaseFilter,{type:"Resize",resizeType:"hermite",scaleX:1,scaleY:1,lanczosLobes:3,getUniformLocations:function(t,e){return{uDelta:t.getUniformLocation(e,"uDelta"),uTaps:t.getUniformLocation(e,"uTaps")}},sendUniformData:function(t,e){t.uniform2fv(e.uDelta,this.horizontal?[1/this.width,0]:[0,1/this.height]),t.uniform1fv(e.uTaps,this.taps)},retrieveShader:function(t){var e=this.getFilterWindow(),i=this.type+"_"+e;if(!t.programCache.hasOwnProperty(i)){var r=this.generateShader(e);t.programCache[i]=this.createProgram(t.context,r)}return t.programCache[i]},getFilterWindow:function(){var t=this.tempScale;return Math.ceil(this.lanczosLobes/t)},getTaps:function(){for(var t=this.lanczosCreate(this.lanczosLobes),e=this.tempScale,i=this.getFilterWindow(),r=new Array(i),n=1;n<=i;n++)r[n-1]=t(n*e);return r},generateShader:function(t){for(var e=new Array(t),i=this.fragmentSourceTOP,r=1;r<=t;r++)e[r-1]=r+".0 * uDelta";return i+="uniform float uTaps["+t+"];\n",i+="void main() {\n",i+=" vec4 color = texture2D(uTexture, vTexCoord);\n",i+=" float sum = 1.0;\n",e.forEach(function(t,e){i+=" color += texture2D(uTexture, vTexCoord + "+t+") * uTaps["+e+"];\n",i+=" color += texture2D(uTexture, vTexCoord - "+t+") * uTaps["+e+"];\n",i+=" sum += 2.0 * uTaps["+e+"];\n"}),i+=" gl_FragColor = color / sum;\n",i+="}"},fragmentSourceTOP:"precision highp float;\nuniform sampler2D uTexture;\nuniform vec2 uDelta;\nvarying vec2 vTexCoord;\n",applyTo:function(t){t.webgl?(t.passes++,this.width=t.sourceWidth,this.horizontal=!0,this.dW=Math.round(this.width*this.scaleX),this.dH=t.sourceHeight,this.tempScale=this.dW/this.width,this.taps=this.getTaps(),t.destinationWidth=this.dW,this._setupFrameBuffer(t),this.applyToWebGL(t),this._swapTextures(t),t.sourceWidth=t.destinationWidth,this.height=t.sourceHeight,this.horizontal=!1,this.dH=Math.round(this.height*this.scaleY),this.tempScale=this.dH/this.height,this.taps=this.getTaps(),t.destinationHeight=this.dH,this._setupFrameBuffer(t),this.applyToWebGL(t),this._swapTextures(t),t.sourceHeight=t.destinationHeight):this.applyTo2d(t)},isNeutralState:function(){return 1===this.scaleX&&1===this.scaleY},lanczosCreate:function(t){return function(e){if(e>=t||e<=-t)return 0;if(e<1.1920929e-7&&e>-1.1920929e-7)return 1;var i=(e*=Math.PI)/t;return s(e)/e*s(i)/i}},applyTo2d:function(t){var e=t.imageData,i=this.scaleX,r=this.scaleY;this.rcpScaleX=1/i,this.rcpScaleY=1/r;var n,o=e.width,s=e.height,l=a(o*i),c=a(s*r);"sliceHack"===this.resizeType?n=this.sliceByTwo(t,o,s,l,c):"hermite"===this.resizeType?n=this.hermiteFastResize(t,o,s,l,c):"bilinear"===this.resizeType?n=this.bilinearFiltering(t,o,s,l,c):"lanczos"===this.resizeType&&(n=this.lanczosResize(t,o,s,l,c)),t.imageData=n},sliceByTwo:function(t,i,n,o,a){var s,l,c=t.imageData,h=.5,u=!1,d=!1,p=i*h,f=n*h,g=e.filterBackend.resources,m=0,v=0,b=i,y=0;for(g.sliceByTwo||(g.sliceByTwo=document.createElement("canvas")),((s=g.sliceByTwo).width<1.5*i||s.height<n)&&(s.width=1.5*i,s.height=n),(l=s.getContext("2d")).clearRect(0,0,1.5*i,n),l.putImageData(c,0,0),o=r(o),a=r(a);!u||!d;)i=p,n=f,o<r(p*h)?p=r(p*h):(p=o,u=!0),a<r(f*h)?f=r(f*h):(f=a,d=!0),l.drawImage(s,m,v,i,n,b,y,p,f),m=b,v=y,y+=f;return l.getImageData(m,v,o,a)},lanczosResize:function(t,e,a,s,c){var h=t.imageData.data,u=t.ctx.createImageData(s,c),d=u.data,p=this.lanczosCreate(this.lanczosLobes),f=this.rcpScaleX,g=this.rcpScaleY,m=2/this.rcpScaleX,v=2/this.rcpScaleY,b=l(f*this.lanczosLobes/2),y=l(g*this.lanczosLobes/2),x={},w={},_={};return function t(l){var S,C,O,k,T,E,P,M,A,I,j;for(w.x=(l+.5)*f,_.x=r(w.x),S=0;S<c;S++){for(w.y=(S+.5)*g,_.y=r(w.y),T=0,E=0,P=0,M=0,A=0,C=_.x-b;C<=_.x+b;C++)if(!(C<0||C>=e)){I=r(1e3*o(C-w.x)),x[I]||(x[I]={});for(var D=_.y-y;D<=_.y+y;D++)D<0||D>=a||(j=r(1e3*o(D-w.y)),x[I][j]||(x[I][j]=p(n(i(I*m,2)+i(j*v,2))/1e3)),(O=x[I][j])>0&&(T+=O,E+=O*h[k=4*(D*e+C)],P+=O*h[k+1],M+=O*h[k+2],A+=O*h[k+3]))}d[k=4*(S*s+l)]=E/T,d[k+1]=P/T,d[k+2]=M/T,d[k+3]=A/T}return++l<s?t(l):u}(0)},bilinearFiltering:function(t,e,i,n,o){var a,s,l,c,h,u,d,p,f,g=0,m=this.rcpScaleX,v=this.rcpScaleY,b=4*(e-1),y=t.imageData.data,x=t.ctx.createImageData(n,o),w=x.data;for(l=0;l<o;l++)for(c=0;c<n;c++)for(h=m*c-(a=r(m*c)),u=v*l-(s=r(v*l)),f=4*(s*e+a),d=0;d<4;d++)p=y[f+d]*(1-h)*(1-u)+y[f+4+d]*h*(1-u)+y[f+b+d]*u*(1-h)+y[f+b+4+d]*h*u,w[g++]=p;return x},hermiteFastResize:function(t,e,i,a,s){for(var c=this.rcpScaleX,h=this.rcpScaleY,u=l(c/2),d=l(h/2),p=t.imageData.data,f=t.ctx.createImageData(a,s),g=f.data,m=0;m<s;m++)for(var v=0;v<a;v++){for(var b=4*(v+m*a),y=0,x=0,w=0,_=0,S=0,C=0,O=0,k=(m+.5)*h,T=r(m*h);T<(m+1)*h;T++)for(var E=o(k-(T+.5))/d,P=(v+.5)*c,M=E*E,A=r(v*c);A<(v+1)*c;A++){var I=o(P-(A+.5))/u,j=n(M+I*I);j>1&&j<-1||(y=2*j*j*j-3*j*j+1)>0&&(O+=y*p[3+(I=4*(A+T*e))],w+=y,p[I+3]<255&&(y=y*p[I+3]/250),_+=y*p[I],S+=y*p[I+1],C+=y*p[I+2],x+=y)}g[b]=_/x,g[b+1]=S/x,g[b+2]=C/x,g[b+3]=O/w}return f},toObject:function(){return{type:this.type,scaleX:this.scaleX,scaleY:this.scaleY,resizeType:this.resizeType,lanczosLobes:this.lanczosLobes}}}),e.Image.filters.Resize.fromObject=e.Image.filters.BaseFilter.fromObject}(t),function(t){var e=t.fabric||(t.fabric={}),i=e.Image.filters,r=e.util.createClass;i.Contrast=r(i.BaseFilter,{type:"Contrast",fragmentSource:"precision highp float;\nuniform sampler2D uTexture;\nuniform float uContrast;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 color = texture2D(uTexture, vTexCoord);\nfloat contrastF = 1.015 * (uContrast + 1.0) / (1.0 * (1.015 - uContrast));\ncolor.rgb = contrastF * (color.rgb - 0.5) + 0.5;\ngl_FragColor = color;\n}",contrast:0,mainParameter:"contrast",applyTo2d:function(t){if(0!==this.contrast){var e,i=t.imageData.data,r=i.length,n=Math.floor(255*this.contrast),o=259*(n+255)/(255*(259-n));for(e=0;e<r;e+=4)i[e]=o*(i[e]-128)+128,i[e+1]=o*(i[e+1]-128)+128,i[e+2]=o*(i[e+2]-128)+128}},getUniformLocations:function(t,e){return{uContrast:t.getUniformLocation(e,"uContrast")}},sendUniformData:function(t,e){t.uniform1f(e.uContrast,this.contrast)}}),e.Image.filters.Contrast.fromObject=e.Image.filters.BaseFilter.fromObject}(t),function(t){var e=t.fabric||(t.fabric={}),i=e.Image.filters,r=e.util.createClass;i.Saturation=r(i.BaseFilter,{type:"Saturation",fragmentSource:"precision highp float;\nuniform sampler2D uTexture;\nuniform float uSaturation;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 color = texture2D(uTexture, vTexCoord);\nfloat rgMax = max(color.r, color.g);\nfloat rgbMax = max(rgMax, color.b);\ncolor.r += rgbMax != color.r ? (rgbMax - color.r) * uSaturation : 0.00;\ncolor.g += rgbMax != color.g ? (rgbMax - color.g) * uSaturation : 0.00;\ncolor.b += rgbMax != color.b ? (rgbMax - color.b) * uSaturation : 0.00;\ngl_FragColor = color;\n}",saturation:0,mainParameter:"saturation",applyTo2d:function(t){if(0!==this.saturation){var e,i,r=t.imageData.data,n=r.length,o=-this.saturation;for(e=0;e<n;e+=4)i=Math.max(r[e],r[e+1],r[e+2]),r[e]+=i!==r[e]?(i-r[e])*o:0,r[e+1]+=i!==r[e+1]?(i-r[e+1])*o:0,r[e+2]+=i!==r[e+2]?(i-r[e+2])*o:0}},getUniformLocations:function(t,e){return{uSaturation:t.getUniformLocation(e,"uSaturation")}},sendUniformData:function(t,e){t.uniform1f(e.uSaturation,-this.saturation)}}),e.Image.filters.Saturation.fromObject=e.Image.filters.BaseFilter.fromObject}(t),function(t){var e=t.fabric||(t.fabric={}),i=e.Image.filters,r=e.util.createClass;i.Vibrance=r(i.BaseFilter,{type:"Vibrance",fragmentSource:"precision highp float;\nuniform sampler2D uTexture;\nuniform float uVibrance;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 color = texture2D(uTexture, vTexCoord);\nfloat max = max(color.r, max(color.g, color.b));\nfloat avg = (color.r + color.g + color.b) / 3.0;\nfloat amt = (abs(max - avg) * 2.0) * uVibrance;\ncolor.r += max != color.r ? (max - color.r) * amt : 0.00;\ncolor.g += max != color.g ? (max - color.g) * amt : 0.00;\ncolor.b += max != color.b ? (max - color.b) * amt : 0.00;\ngl_FragColor = color;\n}",vibrance:0,mainParameter:"vibrance",applyTo2d:function(t){if(0!==this.vibrance){var e,i,r,n,o=t.imageData.data,a=o.length,s=-this.vibrance;for(e=0;e<a;e+=4)i=Math.max(o[e],o[e+1],o[e+2]),r=(o[e]+o[e+1]+o[e+2])/3,n=2*Math.abs(i-r)/255*s,o[e]+=i!==o[e]?(i-o[e])*n:0,o[e+1]+=i!==o[e+1]?(i-o[e+1])*n:0,o[e+2]+=i!==o[e+2]?(i-o[e+2])*n:0}},getUniformLocations:function(t,e){return{uVibrance:t.getUniformLocation(e,"uVibrance")}},sendUniformData:function(t,e){t.uniform1f(e.uVibrance,-this.vibrance)}}),e.Image.filters.Vibrance.fromObject=e.Image.filters.BaseFilter.fromObject}(t),function(t){var e=t.fabric||(t.fabric={}),i=e.Image.filters,r=e.util.createClass;i.Blur=r(i.BaseFilter,{type:"Blur",fragmentSource:"precision highp float;\nuniform sampler2D uTexture;\nuniform vec2 uDelta;\nvarying vec2 vTexCoord;\nconst float nSamples = 15.0;\nvec3 v3offset = vec3(12.9898, 78.233, 151.7182);\nfloat random(vec3 scale) {\nreturn fract(sin(dot(gl_FragCoord.xyz, scale)) * 43758.5453);\n}\nvoid main() {\nvec4 color = vec4(0.0);\nfloat total = 0.0;\nfloat offset = random(v3offset);\nfor (float t = -nSamples; t <= nSamples; t++) {\nfloat percent = (t + offset - 0.5) / nSamples;\nfloat weight = 1.0 - abs(percent);\ncolor += texture2D(uTexture, vTexCoord + uDelta * percent) * weight;\ntotal += weight;\n}\ngl_FragColor = color / total;\n}",blur:0,mainParameter:"blur",applyTo:function(t){t.webgl?(this.aspectRatio=t.sourceWidth/t.sourceHeight,t.passes++,this._setupFrameBuffer(t),this.horizontal=!0,this.applyToWebGL(t),this._swapTextures(t),this._setupFrameBuffer(t),this.horizontal=!1,this.applyToWebGL(t),this._swapTextures(t)):this.applyTo2d(t)},applyTo2d:function(t){t.imageData=this.simpleBlur(t)},simpleBlur:function(t){var i,r,n=t.filterBackend.resources,o=t.imageData.width,a=t.imageData.height;n.blurLayer1||(n.blurLayer1=e.util.createCanvasElement(),n.blurLayer2=e.util.createCanvasElement()),i=n.blurLayer1,r=n.blurLayer2,(i.width!==o||i.height!==a)&&(r.width=i.width=o,r.height=i.height=a);var s,l,c,h,u=i.getContext("2d"),d=r.getContext("2d"),p=15,f=.06*this.blur*.5;for(u.putImageData(t.imageData,0,0),d.clearRect(0,0,o,a),h=-p;h<=p;h++)c=f*(l=h/p)*o+(s=(Math.random()-.5)/4),d.globalAlpha=1-Math.abs(l),d.drawImage(i,c,s),u.drawImage(r,0,0),d.globalAlpha=1,d.clearRect(0,0,r.width,r.height);for(h=-p;h<=p;h++)c=f*(l=h/p)*a+(s=(Math.random()-.5)/4),d.globalAlpha=1-Math.abs(l),d.drawImage(i,s,c),u.drawImage(r,0,0),d.globalAlpha=1,d.clearRect(0,0,r.width,r.height);t.ctx.drawImage(i,0,0);var g=t.ctx.getImageData(0,0,i.width,i.height);return u.globalAlpha=1,u.clearRect(0,0,i.width,i.height),g},getUniformLocations:function(t,e){return{delta:t.getUniformLocation(e,"uDelta")}},sendUniformData:function(t,e){var i=this.chooseRightDelta();t.uniform2fv(e.delta,i)},chooseRightDelta:function(){var t,e=1,i=[0,0];return this.horizontal?this.aspectRatio>1&&(e=1/this.aspectRatio):this.aspectRatio<1&&(e=this.aspectRatio),t=e*this.blur*.12,this.horizontal?i[0]=t:i[1]=t,i}}),i.Blur.fromObject=e.Image.filters.BaseFilter.fromObject}(t),function(t){var e=t.fabric||(t.fabric={}),i=e.Image.filters,r=e.util.createClass;i.Gamma=r(i.BaseFilter,{type:"Gamma",fragmentSource:"precision highp float;\nuniform sampler2D uTexture;\nuniform vec3 uGamma;\nvarying vec2 vTexCoord;\nvoid main() {\nvec4 color = texture2D(uTexture, vTexCoord);\nvec3 correction = (1.0 / uGamma);\ncolor.r = pow(color.r, correction.r);\ncolor.g = pow(color.g, correction.g);\ncolor.b = pow(color.b, correction.b);\ngl_FragColor = color;\ngl_FragColor.rgb *= color.a;\n}",gamma:[1,1,1],mainParameter:"gamma",initialize:function(t){this.gamma=[1,1,1],i.BaseFilter.prototype.initialize.call(this,t)},applyTo2d:function(t){var e,i=t.imageData.data,r=this.gamma,n=i.length,o=1/r[0],a=1/r[1],s=1/r[2];for(this.rVals||(this.rVals=new Uint8Array(256),this.gVals=new Uint8Array(256),this.bVals=new Uint8Array(256)),e=0,n=256;e<n;e++)this.rVals[e]=255*Math.pow(e/255,o),this.gVals[e]=255*Math.pow(e/255,a),this.bVals[e]=255*Math.pow(e/255,s);for(e=0,n=i.length;e<n;e+=4)i[e]=this.rVals[i[e]],i[e+1]=this.gVals[i[e+1]],i[e+2]=this.bVals[i[e+2]]},getUniformLocations:function(t,e){return{uGamma:t.getUniformLocation(e,"uGamma")}},sendUniformData:function(t,e){t.uniform3fv(e.uGamma,this.gamma)}}),e.Image.filters.Gamma.fromObject=e.Image.filters.BaseFilter.fromObject}(t),function(t){var e=t.fabric||(t.fabric={}),i=e.Image.filters,r=e.util.createClass;i.Composed=r(i.BaseFilter,{type:"Composed",subFilters:[],initialize:function(t){this.callSuper("initialize",t),this.subFilters=this.subFilters.slice(0)},applyTo:function(t){t.passes+=this.subFilters.length-1,this.subFilters.forEach(function(e){e.applyTo(t)})},toObject:function(){return e.util.object.extend(this.callSuper("toObject"),{subFilters:this.subFilters.map(function(t){return t.toObject()})})},isNeutralState:function(){return!this.subFilters.some(function(t){return!t.isNeutralState()})}}),e.Image.filters.Composed.fromObject=function(t,i){var r=(t.subFilters||[]).map(function(t){return new e.Image.filters[t.type](t)}),n=new e.Image.filters.Composed({subFilters:r});return i&&i(n),n}}(t),function(t){var e=t.fabric||(t.fabric={}),i=e.Image.filters,r=e.util.createClass;i.HueRotation=r(i.ColorMatrix,{type:"HueRotation",rotation:0,mainParameter:"rotation",calculateMatrix:function(){var t=this.rotation*Math.PI,i=e.util.cos(t),r=e.util.sin(t),n=1/3,o=Math.sqrt(n)*r,a=1-i;this.matrix=[1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0],this.matrix[0]=i+a/3,this.matrix[1]=n*a-o,this.matrix[2]=n*a+o,this.matrix[5]=n*a+o,this.matrix[6]=i+n*a,this.matrix[7]=n*a-o,this.matrix[10]=n*a-o,this.matrix[11]=n*a+o,this.matrix[12]=i+n*a},isNeutralState:function(t){return this.calculateMatrix(),i.BaseFilter.prototype.isNeutralState.call(this,t)},applyTo:function(t){this.calculateMatrix(),i.BaseFilter.prototype.applyTo.call(this,t)}}),e.Image.filters.HueRotation.fromObject=e.Image.filters.BaseFilter.fromObject}(t),function(t){var e=t.fabric||(t.fabric={}),i=e.util.object.clone;if(e.Text)e.warn("fabric.Text is already defined");else{var r="fontFamily fontWeight fontSize text underline overline linethrough textAlign fontStyle lineHeight textBackgroundColor charSpacing styles direction path pathStartOffset pathSide pathAlign".split(" ");e.Text=e.util.createClass(e.Object,{_dimensionAffectingProps:["fontSize","fontWeight","fontFamily","fontStyle","lineHeight","text","charSpacing","textAlign","styles","path","pathStartOffset","pathSide","pathAlign"],_reNewline:/\r?\n/,_reSpacesAndTabs:/[ \t\r]/g,_reSpaceAndTab:/[ \t\r]/,_reWords:/\S+/g,type:"text",fontSize:40,fontWeight:"normal",fontFamily:"Times New Roman",underline:!1,overline:!1,linethrough:!1,textAlign:"left",fontStyle:"normal",lineHeight:1.16,superscript:{size:.6,baseline:-.35},subscript:{size:.6,baseline:.11},textBackgroundColor:"",stateProperties:e.Object.prototype.stateProperties.concat(r),cacheProperties:e.Object.prototype.cacheProperties.concat(r),stroke:null,shadow:null,path:null,pathStartOffset:0,pathSide:"left",pathAlign:"baseline",_fontSizeFraction:.222,offsets:{underline:.1,linethrough:-.315,overline:-.88},_fontSizeMult:1.13,charSpacing:0,styles:null,_measuringContext:null,deltaY:0,direction:"ltr",_styleProperties:["stroke","strokeWidth","fill","fontFamily","fontSize","fontWeight","fontStyle","underline","overline","linethrough","deltaY","textBackgroundColor"],__charBounds:[],CACHE_FONT_SIZE:400,MIN_TEXT_WIDTH:2,initialize:function(t,e){this.styles=e&&e.styles||{},this.text=t,this.__skipDimension=!0,this.callSuper("initialize",e),this.path&&this.setPathInfo(),this.__skipDimension=!1,this.initDimensions(),this.setCoords(),this.setupState({propertySet:"_dimensionAffectingProps"})},setPathInfo:function(){var t=this.path;t&&(t.segmentsInfo=e.util.getPathSegmentsInfo(t.path))},getMeasuringContext:function(){return e._measuringContext||(e._measuringContext=this.canvas&&this.canvas.contextCache||e.util.createCanvasElement().getContext("2d")),e._measuringContext},_splitText:function(){var t=this._splitTextIntoLines(this.text);return this.textLines=t.lines,this._textLines=t.graphemeLines,this._unwrappedTextLines=t._unwrappedLines,this._text=t.graphemeText,t},initDimensions:function(){this.__skipDimension||(this._splitText(),this._clearCache(),this.path?(this.width=this.path.width,this.height=this.path.height):(this.width=this.calcTextWidth()||this.cursorWidth||this.MIN_TEXT_WIDTH,this.height=this.calcTextHeight()),-1!==this.textAlign.indexOf("justify")&&this.enlargeSpaces(),this.saveState({propertySet:"_dimensionAffectingProps"}))},enlargeSpaces:function(){for(var t,e,i,r,n,o,a,s=0,l=this._textLines.length;s<l;s++)if(("justify"===this.textAlign||s!==l-1&&!this.isEndOfWrapping(s))&&(r=0,n=this._textLines[s],(e=this.getLineWidth(s))<this.width&&(a=this.textLines[s].match(this._reSpacesAndTabs)))){i=a.length,t=(this.width-e)/i;for(var c=0,h=n.length;c<=h;c++)o=this.__charBounds[s][c],this._reSpaceAndTab.test(n[c])?(o.width+=t,o.kernedWidth+=t,o.left+=r,r+=t):o.left+=r}},isEndOfWrapping:function(t){return t===this._textLines.length-1},missingNewlineOffset:function(){return 1},toString:function(){return"#<fabric.Text ("+this.complexity()+'): { "text": "'+this.text+'", "fontFamily": "'+this.fontFamily+'" }>'},_getCacheCanvasDimensions:function(){var t=this.callSuper("_getCacheCanvasDimensions"),e=this.fontSize;return t.width+=e*t.zoomX,t.height+=e*t.zoomY,t},_render:function(t){var e=this.path;e&&!e.isNotVisible()&&e._render(t),this._setTextStyles(t),this._renderTextLinesBackground(t),this._renderTextDecoration(t,"underline"),this._renderText(t),this._renderTextDecoration(t,"overline"),this._renderTextDecoration(t,"linethrough")},_renderText:function(t){"stroke"===this.paintFirst?(this._renderTextStroke(t),this._renderTextFill(t)):(this._renderTextFill(t),this._renderTextStroke(t))},_setTextStyles:function(t,e,i){if(t.textBaseline="alphabetical",this.path)switch(this.pathAlign){case"center":t.textBaseline="middle";break;case"ascender":t.textBaseline="top";break;case"descender":t.textBaseline="bottom"}t.font=this._getFontDeclaration(e,i)},calcTextWidth:function(){for(var t=this.getLineWidth(0),e=1,i=this._textLines.length;e<i;e++){var r=this.getLineWidth(e);r>t&&(t=r)}return t},_renderTextLine:function(t,e,i,r,n,o){this._renderChars(t,e,i,r,n,o)},_renderTextLinesBackground:function(t){if(this.textBackgroundColor||this.styleHas("textBackgroundColor")){for(var e,i,r,n,o,a,s,l=t.fillStyle,c=this._getLeftOffset(),h=this._getTopOffset(),u=0,d=0,p=this.path,f=0,g=this._textLines.length;f<g;f++)if(e=this.getHeightOfLine(f),this.textBackgroundColor||this.styleHas("textBackgroundColor",f)){r=this._textLines[f],i=this._getLineLeftOffset(f),d=0,u=0,n=this.getValueOfPropertyAt(f,0,"textBackgroundColor");for(var m=0,v=r.length;m<v;m++)o=this.__charBounds[f][m],a=this.getValueOfPropertyAt(f,m,"textBackgroundColor"),p?(t.save(),t.translate(o.renderLeft,o.renderTop),t.rotate(o.angle),t.fillStyle=a,a&&t.fillRect(-o.width/2,-e/this.lineHeight*(1-this._fontSizeFraction),o.width,e/this.lineHeight),t.restore()):a!==n?(s=c+i+u,"rtl"===this.direction&&(s=this.width-s-d),t.fillStyle=n,n&&t.fillRect(s,h,d,e/this.lineHeight),u=o.left,d=o.width,n=a):d+=o.kernedWidth;a&&!p&&(s=c+i+u,"rtl"===this.direction&&(s=this.width-s-d),t.fillStyle=a,t.fillRect(s,h,d,e/this.lineHeight)),h+=e}else h+=e;t.fillStyle=l,this._removeShadow(t)}},getFontCache:function(t){var i=t.fontFamily.toLowerCase();e.charWidthsCache[i]||(e.charWidthsCache[i]={});var r=e.charWidthsCache[i],n=t.fontStyle.toLowerCase()+"_"+(t.fontWeight+"").toLowerCase();return r[n]||(r[n]={}),r[n]},_measureChar:function(t,e,i,r){var n,o,a,s,l=this.getFontCache(e),c=i+t,h=this._getFontDeclaration(e)===this._getFontDeclaration(r),u=e.fontSize/this.CACHE_FONT_SIZE;if(i&&void 0!==l[i]&&(a=l[i]),void 0!==l[t]&&(s=n=l[t]),h&&void 0!==l[c]&&(s=(o=l[c])-a),void 0===n||void 0===a||void 0===o){var d=this.getMeasuringContext();this._setTextStyles(d,e,!0)}return void 0===n&&(s=n=d.measureText(t).width,l[t]=n),void 0===a&&h&&i&&(a=d.measureText(i).width,l[i]=a),h&&void 0===o&&(o=d.measureText(c).width,l[c]=o,s=o-a),{width:n*u,kernedWidth:s*u}},getHeightOfChar:function(t,e){return this.getValueOfPropertyAt(t,e,"fontSize")},measureLine:function(t){var e=this._measureLine(t);return 0!==this.charSpacing&&(e.width-=this._getWidthOfCharSpacing()),e.width<0&&(e.width=0),e},_measureLine:function(t){var i,r,n,o,a,s,l=0,c=this._textLines[t],h=new Array(c.length),u=0,d=this.path,p="right"===this.pathSide;for(this.__charBounds[t]=h,i=0;i<c.length;i++)r=c[i],o=this._getGraphemeBox(r,t,i,n),h[i]=o,l+=o.kernedWidth,n=r;if(h[i]={left:o?o.left+o.width:0,width:0,kernedWidth:0,height:this.fontSize},d){switch(s=d.segmentsInfo[d.segmentsInfo.length-1].length,(a=e.util.getPointOnPath(d.path,0,d.segmentsInfo)).x+=d.pathOffset.x,a.y+=d.pathOffset.y,this.textAlign){case"left":u=p?s-l:0;break;case"center":u=(s-l)/2;break;case"right":u=p?0:s-l}for(u+=this.pathStartOffset*(p?-1:1),i=p?c.length-1:0;p?i>=0:i<c.length;p?i--:i++)o=h[i],u>s?u%=s:u<0&&(u+=s),this._setGraphemeOnPath(u,o,a),u+=o.kernedWidth}return{width:l,numOfSpaces:0}},_setGraphemeOnPath:function(t,i,r){var n=t+i.kernedWidth/2,o=this.path,a=e.util.getPointOnPath(o.path,n,o.segmentsInfo);i.renderLeft=a.x-r.x,i.renderTop=a.y-r.y,i.angle=a.angle+("right"===this.pathSide?Math.PI:0)},_getGraphemeBox:function(t,e,i,r,n){var o,a=this.getCompleteStyleDeclaration(e,i),s=r?this.getCompleteStyleDeclaration(e,i-1):{},l=this._measureChar(t,a,r,s),c=l.kernedWidth,h=l.width;0!==this.charSpacing&&(h+=o=this._getWidthOfCharSpacing(),c+=o);var u={width:h,left:0,height:a.fontSize,kernedWidth:c,deltaY:a.deltaY};if(i>0&&!n){var d=this.__charBounds[e][i-1];u.left=d.left+d.width+l.kernedWidth-l.width}return u},getHeightOfLine:function(t){if(this.__lineHeights[t])return this.__lineHeights[t];for(var e=this._textLines[t],i=this.getHeightOfChar(t,0),r=1,n=e.length;r<n;r++)i=Math.max(this.getHeightOfChar(t,r),i);return this.__lineHeights[t]=i*this.lineHeight*this._fontSizeMult},calcTextHeight:function(){for(var t,e=0,i=0,r=this._textLines.length;i<r;i++)t=this.getHeightOfLine(i),e+=i===r-1?t/this.lineHeight:t;return e},_getLeftOffset:function(){return"ltr"===this.direction?-this.width/2:this.width/2},_getTopOffset:function(){return-this.height/2},_renderTextCommon:function(t,e){t.save();for(var i=0,r=this._getLeftOffset(),n=this._getTopOffset(),o=0,a=this._textLines.length;o<a;o++){var s=this.getHeightOfLine(o),l=s/this.lineHeight,c=this._getLineLeftOffset(o);this._renderTextLine(e,t,this._textLines[o],r+c,n+i+l,o),i+=s}t.restore()},_renderTextFill:function(t){!this.fill&&!this.styleHas("fill")||this._renderTextCommon(t,"fillText")},_renderTextStroke:function(t){(!this.stroke||0===this.strokeWidth)&&this.isEmptyStyles()||(this.shadow&&!this.shadow.affectStroke&&this._removeShadow(t),t.save(),this._setLineDash(t,this.strokeDashArray),t.beginPath(),this._renderTextCommon(t,"strokeText"),t.closePath(),t.restore())},_renderChars:function(t,i,r,n,o,a){var s,l,c,h,u,d=this.getHeightOfLine(a),p=-1!==this.textAlign.indexOf("justify"),f="",g=0,m=this.path,v=!p&&0===this.charSpacing&&this.isEmptyStyles(a)&&!m,b="ltr"===this.direction,y="ltr"===this.direction?1:-1,x=i.canvas.getAttribute("dir");if(i.save(),x!==this.direction&&(i.canvas.setAttribute("dir",b?"ltr":"rtl"),i.direction=b?"ltr":"rtl",i.textAlign=b?"left":"right"),o-=d*this._fontSizeFraction/this.lineHeight,v)return this._renderChar(t,i,a,0,r.join(""),n,o,d),void i.restore();for(var w=0,_=r.length-1;w<=_;w++)h=w===_||this.charSpacing||m,f+=r[w],c=this.__charBounds[a][w],0===g?(n+=y*(c.kernedWidth-c.width),g+=c.width):g+=c.kernedWidth,p&&!h&&this._reSpaceAndTab.test(r[w])&&(h=!0),h||(s=s||this.getCompleteStyleDeclaration(a,w),l=this.getCompleteStyleDeclaration(a,w+1),h=e.util.hasStyleChanged(s,l,!1)),h&&(m?(i.save(),i.translate(c.renderLeft,c.renderTop),i.rotate(c.angle),this._renderChar(t,i,a,w,f,-g/2,0,d),i.restore()):(u=n,this._renderChar(t,i,a,w,f,u,o,d)),f="",s=l,n+=y*g,g=0);i.restore()},_applyPatternGradientTransformText:function(t){var i,r=e.util.createCanvasElement(),n=this.width+this.strokeWidth,o=this.height+this.strokeWidth;return r.width=n,r.height=o,(i=r.getContext("2d")).beginPath(),i.moveTo(0,0),i.lineTo(n,0),i.lineTo(n,o),i.lineTo(0,o),i.closePath(),i.translate(n/2,o/2),i.fillStyle=t.toLive(i),this._applyPatternGradientTransform(i,t),i.fill(),i.createPattern(r,"no-repeat")},handleFiller:function(t,e,i){var r,n;return i.toLive?"percentage"===i.gradientUnits||i.gradientTransform||i.patternTransform?(r=-this.width/2,n=-this.height/2,t.translate(r,n),t[e]=this._applyPatternGradientTransformText(i),{offsetX:r,offsetY:n}):(t[e]=i.toLive(t,this),this._applyPatternGradientTransform(t,i)):(t[e]=i,{offsetX:0,offsetY:0})},_setStrokeStyles:function(t,e){return t.lineWidth=e.strokeWidth,t.lineCap=this.strokeLineCap,t.lineDashOffset=this.strokeDashOffset,t.lineJoin=this.strokeLineJoin,t.miterLimit=this.strokeMiterLimit,this.handleFiller(t,"strokeStyle",e.stroke)},_setFillStyles:function(t,e){return this.handleFiller(t,"fillStyle",e.fill)},_renderChar:function(t,e,i,r,n,o,a){var s,l,c=this._getStyleDeclaration(i,r),h=this.getCompleteStyleDeclaration(i,r),u="fillText"===t&&h.fill,d="strokeText"===t&&h.stroke&&h.strokeWidth;!d&&!u||(e.save(),u&&(s=this._setFillStyles(e,h)),d&&(l=this._setStrokeStyles(e,h)),e.font=this._getFontDeclaration(h),c&&c.textBackgroundColor&&this._removeShadow(e),c&&c.deltaY&&(a+=c.deltaY),u&&e.fillText(n,o-s.offsetX,a-s.offsetY),d&&e.strokeText(n,o-l.offsetX,a-l.offsetY),e.restore())},setSuperscript:function(t,e){return this._setScript(t,e,this.superscript)},setSubscript:function(t,e){return this._setScript(t,e,this.subscript)},_setScript:function(t,e,i){var r=this.get2DCursorLocation(t,!0),n=this.getValueOfPropertyAt(r.lineIndex,r.charIndex,"fontSize"),o=this.getValueOfPropertyAt(r.lineIndex,r.charIndex,"deltaY"),a={fontSize:n*i.size,deltaY:o+n*i.baseline};return this.setSelectionStyles(a,t,e),this},_getLineLeftOffset:function(t){var e=this.getLineWidth(t),i=this.width-e,r=this.textAlign,n=this.direction,o=0,a=this.isEndOfWrapping(t);return"justify"===r||"justify-center"===r&&!a||"justify-right"===r&&!a||"justify-left"===r&&!a?0:("center"===r&&(o=i/2),"right"===r&&(o=i),"justify-center"===r&&(o=i/2),"justify-right"===r&&(o=i),"rtl"===n&&(o-=i),o)},_clearCache:function(){this.__lineWidths=[],this.__lineHeights=[],this.__charBounds=[]},_shouldClearDimensionCache:function(){var t=this._forceClearCache;return t||(t=this.hasStateChanged("_dimensionAffectingProps")),t&&(this.dirty=!0,this._forceClearCache=!1),t},getLineWidth:function(t){if(void 0!==this.__lineWidths[t])return this.__lineWidths[t];var e=this.measureLine(t).width;return this.__lineWidths[t]=e,e},_getWidthOfCharSpacing:function(){return 0!==this.charSpacing?this.fontSize*this.charSpacing/1e3:0},getValueOfPropertyAt:function(t,e,i){var r=this._getStyleDeclaration(t,e);return r&&typeof r[i]<"u"?r[i]:this[i]},_renderTextDecoration:function(t,e){if(this[e]||this.styleHas(e)){for(var i,r,n,o,a,s,l,c,h,u,d,p,f,g,m,v,b=this._getLeftOffset(),y=this._getTopOffset(),x=this.path,w=this._getWidthOfCharSpacing(),_=this.offsets[e],S=0,C=this._textLines.length;S<C;S++)if(i=this.getHeightOfLine(S),this[e]||this.styleHas(e,S)){l=this._textLines[S],g=i/this.lineHeight,o=this._getLineLeftOffset(S),u=0,d=0,c=this.getValueOfPropertyAt(S,0,e),v=this.getValueOfPropertyAt(S,0,"fill"),h=y+g*(1-this._fontSizeFraction),r=this.getHeightOfChar(S,0),a=this.getValueOfPropertyAt(S,0,"deltaY");for(var O=0,k=l.length;O<k;O++)if(p=this.__charBounds[S][O],f=this.getValueOfPropertyAt(S,O,e),m=this.getValueOfPropertyAt(S,O,"fill"),n=this.getHeightOfChar(S,O),s=this.getValueOfPropertyAt(S,O,"deltaY"),x&&f&&m)t.save(),t.fillStyle=v,t.translate(p.renderLeft,p.renderTop),t.rotate(p.angle),t.fillRect(-p.kernedWidth/2,_*n+s,p.kernedWidth,this.fontSize/15),t.restore();else if((f!==c||m!==v||n!==r||s!==a)&&d>0){var T=b+o+u;"rtl"===this.direction&&(T=this.width-T-d),c&&v&&(t.fillStyle=v,t.fillRect(T,h+_*r+a,d,this.fontSize/15)),u=p.left,d=p.width,c=f,v=m,r=n,a=s}else d+=p.kernedWidth;T=b+o+u,"rtl"===this.direction&&(T=this.width-T-d),t.fillStyle=m,f&&m&&t.fillRect(T,h+_*r+a,d-w,this.fontSize/15),y+=i}else y+=i;this._removeShadow(t)}},_getFontDeclaration:function(t,i){var r=t||this,n=this.fontFamily,o=e.Text.genericFonts.indexOf(n.toLowerCase())>-1,a=void 0===n||n.indexOf("'")>-1||n.indexOf(",")>-1||n.indexOf('"')>-1||o?r.fontFamily:'"'+r.fontFamily+'"';return[e.isLikelyNode?r.fontWeight:r.fontStyle,e.isLikelyNode?r.fontStyle:r.fontWeight,i?this.CACHE_FONT_SIZE+"px":r.fontSize+"px",a].join(" ")},render:function(t){!this.visible||this.canvas&&this.canvas.skipOffscreen&&!this.group&&!this.isOnScreen()||(this._shouldClearDimensionCache()&&this.initDimensions(),this.callSuper("render",t))},_splitTextIntoLines:function(t){for(var i=t.split(this._reNewline),r=new Array(i.length),n=["\n"],o=[],a=0;a<i.length;a++)r[a]=e.util.string.graphemeSplit(i[a]),o=o.concat(r[a],n);return o.pop(),{_unwrappedLines:r,lines:i,graphemeText:o,graphemeLines:r}},toObject:function(t){var i=r.concat(t),n=this.callSuper("toObject",i);return n.styles=e.util.stylesToArray(this.styles,this.text),n.path&&(n.path=this.path.toObject()),n},set:function(t,e){this.callSuper("set",t,e);var i=!1,r=!1;if("object"==typeof t)for(var n in t)"path"===n&&this.setPathInfo(),i=i||-1!==this._dimensionAffectingProps.indexOf(n),r=r||"path"===n;else i=-1!==this._dimensionAffectingProps.indexOf(t),r="path"===t;return r&&this.setPathInfo(),i&&(this.initDimensions(),this.setCoords()),this},complexity:function(){return 1}}),e.Text.ATTRIBUTE_NAMES=e.SHARED_ATTRIBUTES.concat("x y dx dy font-family font-style font-weight font-size letter-spacing text-decoration text-anchor".split(" ")),e.Text.DEFAULT_SVG_FONT_SIZE=16,e.Text.fromElement=function(t,r,n){if(!t)return r(null);var o=e.parseAttributes(t,e.Text.ATTRIBUTE_NAMES),a=o.textAnchor||"left";if((n=e.util.object.extend(n?i(n):{},o)).top=n.top||0,n.left=n.left||0,o.textDecoration){var s=o.textDecoration;-1!==s.indexOf("underline")&&(n.underline=!0),-1!==s.indexOf("overline")&&(n.overline=!0),-1!==s.indexOf("line-through")&&(n.linethrough=!0),delete n.textDecoration}"dx"in o&&(n.left+=o.dx),"dy"in o&&(n.top+=o.dy),"fontSize"in n||(n.fontSize=e.Text.DEFAULT_SVG_FONT_SIZE);var l="";"textContent"in t?l=t.textContent:"firstChild"in t&&null!==t.firstChild&&"data"in t.firstChild&&null!==t.firstChild.data&&(l=t.firstChild.data),l=l.replace(/^\s+|\s+$|\n+/g,"").replace(/\s+/g," ");var c=n.strokeWidth;n.strokeWidth=0;var h=new e.Text(l,n),u=h.getScaledHeight()/h.height,d=((h.height+h.strokeWidth)*h.lineHeight-h.height)*u,p=h.getScaledHeight()+d,f=0;"center"===a&&(f=h.getScaledWidth()/2),"right"===a&&(f=h.getScaledWidth()),h.set({left:h.left-f,top:h.top-(p-h.fontSize*(.07+h._fontSizeFraction))/h.lineHeight,strokeWidth:typeof c<"u"?c:1}),r(h)},e.Text.fromObject=function(t,r){var n=i(t),o=t.path;return delete n.path,e.Object._fromObject("Text",n,function(i){i.styles=e.util.stylesFromArray(t.styles,t.text),o?e.Object._fromObject("Path",o,function(t){i.set("path",t),r(i)},"path"):r(i)},"text")},e.Text.genericFonts=["sans-serif","serif","cursive","fantasy","monospace"],e.util.createAccessors&&e.util.createAccessors(e.Text)}}(t),s.util.object.extend(s.Text.prototype,{isEmptyStyles:function(t){if(!this.styles||typeof t<"u"&&!this.styles[t])return!0;var e=typeof t>"u"?this.styles:{line:this.styles[t]};for(var i in e)for(var r in e[i])for(var n in e[i][r])return!1;return!0},styleHas:function(t,e){if(!this.styles||!t||""===t||typeof e<"u"&&!this.styles[e])return!1;var i=typeof e>"u"?this.styles:{0:this.styles[e]};for(var r in i)for(var n in i[r])if(typeof i[r][n][t]<"u")return!0;return!1},cleanStyle:function(t){if(!this.styles||!t||""===t)return!1;var e,i,r=this.styles,n=0,o=!0,a=0;for(var s in r){for(var l in e=0,r[s]){var c;n++,(c=r[s][l]).hasOwnProperty(t)?(i?c[t]!==i&&(o=!1):i=c[t],c[t]===this[t]&&delete c[t]):o=!1,0!==Object.keys(c).length?e++:delete r[s][l]}0===e&&delete r[s]}for(var h=0;h<this._textLines.length;h++)a+=this._textLines[h].length;o&&n===a&&(this[t]=i,this.removeStyle(t))},removeStyle:function(t){if(this.styles&&t&&""!==t){var e,i,r,n=this.styles;for(i in n){for(r in e=n[i])delete e[r][t],0===Object.keys(e[r]).length&&delete e[r];0===Object.keys(e).length&&delete n[i]}}},_extendStyles:function(t,e){var i=this.get2DCursorLocation(t);this._getLineStyle(i.lineIndex)||this._setLineStyle(i.lineIndex),this._getStyleDeclaration(i.lineIndex,i.charIndex)||this._setStyleDeclaration(i.lineIndex,i.charIndex,{}),s.util.object.extend(this._getStyleDeclaration(i.lineIndex,i.charIndex),e)},get2DCursorLocation:function(t,e){typeof t>"u"&&(t=this.selectionStart);for(var i=e?this._unwrappedTextLines:this._textLines,r=i.length,n=0;n<r;n++){if(t<=i[n].length)return{lineIndex:n,charIndex:t};t-=i[n].length+this.missingNewlineOffset(n)}return{lineIndex:n-1,charIndex:i[n-1].length<t?i[n-1].length:t}},getSelectionStyles:function(t,e,i){typeof t>"u"&&(t=this.selectionStart||0),typeof e>"u"&&(e=this.selectionEnd||t);for(var r=[],n=t;n<e;n++)r.push(this.getStyleAtPosition(n,i));return r},getStyleAtPosition:function(t,e){var i=this.get2DCursorLocation(t);return(e?this.getCompleteStyleDeclaration(i.lineIndex,i.charIndex):this._getStyleDeclaration(i.lineIndex,i.charIndex))||{}},setSelectionStyles:function(t,e,i){typeof e>"u"&&(e=this.selectionStart||0),typeof i>"u"&&(i=this.selectionEnd||e);for(var r=e;r<i;r++)this._extendStyles(r,t);return this._forceClearCache=!0,this},_getStyleDeclaration:function(t,e){var i=this.styles&&this.styles[t];return i?i[e]:null},getCompleteStyleDeclaration:function(t,e){for(var i,r=this._getStyleDeclaration(t,e)||{},n={},o=0;o<this._styleProperties.length;o++)n[i=this._styleProperties[o]]=typeof r[i]>"u"?this[i]:r[i];return n},_setStyleDeclaration:function(t,e,i){this.styles[t][e]=i},_deleteStyleDeclaration:function(t,e){delete this.styles[t][e]},_getLineStyle:function(t){return!!this.styles[t]},_setLineStyle:function(t){this.styles[t]={}},_deleteLineStyle:function(t){delete this.styles[t]}}),function(){function t(t){t.textDecoration&&(t.textDecoration.indexOf("underline")>-1&&(t.underline=!0),t.textDecoration.indexOf("line-through")>-1&&(t.linethrough=!0),t.textDecoration.indexOf("overline")>-1&&(t.overline=!0),delete t.textDecoration)}s.IText=s.util.createClass(s.Text,s.Observable,{type:"i-text",selectionStart:0,selectionEnd:0,selectionColor:"rgba(17,119,255,0.3)",isEditing:!1,editable:!0,editingBorderColor:"rgba(102,153,255,0.25)",cursorWidth:2,cursorColor:"",cursorDelay:1e3,cursorDuration:600,caching:!0,hiddenTextareaContainer:null,_reSpace:/\s|\n/,_currentCursorOpacity:0,_selectionDirection:null,_abortCursorAnimation:!1,__widthOfSpace:[],inCompositionMode:!1,initialize:function(t,e){this.callSuper("initialize",t,e),this.initBehavior()},setSelectionStart:function(t){t=Math.max(t,0),this._updateAndFire("selectionStart",t)},setSelectionEnd:function(t){t=Math.min(t,this.text.length),this._updateAndFire("selectionEnd",t)},_updateAndFire:function(t,e){this[t]!==e&&(this._fireSelectionChanged(),this[t]=e),this._updateTextarea()},_fireSelectionChanged:function(){this.fire("selection:changed"),this.canvas&&this.canvas.fire("text:selection:changed",{target:this})},initDimensions:function(){this.isEditing&&this.initDelayedCursor(),this.clearContextTop(),this.callSuper("initDimensions")},render:function(t){this.clearContextTop(),this.callSuper("render",t),this.cursorOffsetCache={},this.renderCursorOrSelection()},_render:function(t){this.callSuper("_render",t)},clearContextTop:function(t){if(this.isEditing&&this.canvas&&this.canvas.contextTop){var e=this.canvas.contextTop,i=this.canvas.viewportTransform;e.save(),e.transform(i[0],i[1],i[2],i[3],i[4],i[5]),this.transform(e),this._clearTextArea(e),t||e.restore()}},renderCursorOrSelection:function(){if(this.isEditing&&this.canvas&&this.canvas.contextTop){var t=this._getCursorBoundaries(),e=this.canvas.contextTop;this.clearContextTop(!0),this.selectionStart===this.selectionEnd?this.renderCursor(t,e):this.renderSelection(t,e),e.restore()}},_clearTextArea:function(t){var e=this.width+4,i=this.height+4;t.clearRect(-e/2,-i/2,e,i)},_getCursorBoundaries:function(t){typeof t>"u"&&(t=this.selectionStart);var e=this._getLeftOffset(),i=this._getTopOffset(),r=this._getCursorBoundariesOffsets(t);return{left:e,top:i,leftOffset:r.left,topOffset:r.top}},_getCursorBoundariesOffsets:function(t){if(this.cursorOffsetCache&&"top"in this.cursorOffsetCache)return this.cursorOffsetCache;var e,i,r,n,o=0,a=0,s=this.get2DCursorLocation(t);r=s.charIndex,i=s.lineIndex;for(var l=0;l<i;l++)o+=this.getHeightOfLine(l);e=this._getLineLeftOffset(i);var c=this.__charBounds[i][r];return c&&(a=c.left),0!==this.charSpacing&&r===this._textLines[i].length&&(a-=this._getWidthOfCharSpacing()),n={top:o,left:e+(a>0?a:0)},"rtl"===this.direction&&(n.left*=-1),this.cursorOffsetCache=n,this.cursorOffsetCache},renderCursor:function(t,e){var i=this.get2DCursorLocation(),r=i.lineIndex,n=i.charIndex>0?i.charIndex-1:0,o=this.getValueOfPropertyAt(r,n,"fontSize"),a=this.scaleX*this.canvas.getZoom(),s=this.cursorWidth/a,l=t.topOffset,c=this.getValueOfPropertyAt(r,n,"deltaY");l+=(1-this._fontSizeFraction)*this.getHeightOfLine(r)/this.lineHeight-o*(1-this._fontSizeFraction),this.inCompositionMode&&this.renderSelection(t,e),e.fillStyle=this.cursorColor||this.getValueOfPropertyAt(r,n,"fill"),e.globalAlpha=this.__isMousedown?1:this._currentCursorOpacity,e.fillRect(t.left+t.leftOffset-s/2,l+t.top+c,s,o)},renderSelection:function(t,e){for(var i=this.inCompositionMode?this.hiddenTextarea.selectionStart:this.selectionStart,r=this.inCompositionMode?this.hiddenTextarea.selectionEnd:this.selectionEnd,n=-1!==this.textAlign.indexOf("justify"),o=this.get2DCursorLocation(i),a=this.get2DCursorLocation(r),s=o.lineIndex,l=a.lineIndex,c=o.charIndex<0?0:o.charIndex,h=a.charIndex<0?0:a.charIndex,u=s;u<=l;u++){var d,p=this._getLineLeftOffset(u)||0,f=this.getHeightOfLine(u),g=0,m=0;if(u===s&&(g=this.__charBounds[s][c].left),u>=s&&u<l)m=n&&!this.isEndOfWrapping(u)?this.width:this.getLineWidth(u)||5;else if(u===l)if(0===h)m=this.__charBounds[l][h].left;else{var v=this._getWidthOfCharSpacing();m=this.__charBounds[l][h-1].left+this.__charBounds[l][h-1].width-v}d=f,(this.lineHeight<1||u===l&&this.lineHeight>1)&&(f/=this.lineHeight);var b=t.left+p+g,y=m-g,x=f,w=0;this.inCompositionMode?(e.fillStyle=this.compositionColor||"black",x=1,w=f):e.fillStyle=this.selectionColor,"rtl"===this.direction&&(b=this.width-b-y),e.fillRect(b,t.top+t.topOffset+w,y,x),t.topOffset+=d}},getCurrentCharFontSize:function(){var t=this._getCurrentCharIndex();return this.getValueOfPropertyAt(t.l,t.c,"fontSize")},getCurrentCharColor:function(){var t=this._getCurrentCharIndex();return this.getValueOfPropertyAt(t.l,t.c,"fill")},_getCurrentCharIndex:function(){var t=this.get2DCursorLocation(this.selectionStart,!0),e=t.charIndex>0?t.charIndex-1:0;return{l:t.lineIndex,c:e}}}),s.IText.fromObject=function(e,i){var r=s.util.stylesFromArray(e.styles,e.text),n=Object.assign({},e,{styles:r});if(t(n),n.styles)for(var o in n.styles)for(var a in n.styles[o])t(n.styles[o][a]);s.Object._fromObject("IText",n,i,"text")}}(),function(){var t=s.util.object.clone;s.util.object.extend(s.IText.prototype,{initBehavior:function(){this.initAddedHandler(),this.initRemovedHandler(),this.initCursorSelectionHandlers(),this.initDoubleClickSimulation(),this.mouseMoveHandler=this.mouseMoveHandler.bind(this)},onDeselect:function(){this.isEditing&&this.exitEditing(),this.selected=!1},initAddedHandler:function(){var t=this;this.on("added",function(){var e=t.canvas;e&&(e._hasITextHandlers||(e._hasITextHandlers=!0,t._initCanvasHandlers(e)),e._iTextInstances=e._iTextInstances||[],e._iTextInstances.push(t))})},initRemovedHandler:function(){var t=this;this.on("removed",function(){var e=t.canvas;e&&(e._iTextInstances=e._iTextInstances||[],s.util.removeFromArray(e._iTextInstances,t),0===e._iTextInstances.length&&(e._hasITextHandlers=!1,t._removeCanvasHandlers(e)))})},_initCanvasHandlers:function(t){t._mouseUpITextHandler=function(){t._iTextInstances&&t._iTextInstances.forEach(function(t){t.__isMousedown=!1})},t.on("mouse:up",t._mouseUpITextHandler)},_removeCanvasHandlers:function(t){t.off("mouse:up",t._mouseUpITextHandler)},_tick:function(){this._currentTickState=this._animateCursor(this,1,this.cursorDuration,"_onTickComplete")},_animateCursor:function(t,e,i,r){var n;return n={isAborted:!1,abort:function(){this.isAborted=!0}},t.animate("_currentCursorOpacity",e,{duration:i,onComplete:function(){n.isAborted||t[r]()},onChange:function(){t.canvas&&t.selectionStart===t.selectionEnd&&t.renderCursorOrSelection()},abort:function(){return n.isAborted}}),n},_onTickComplete:function(){var t=this;this._cursorTimeout1&&clearTimeout(this._cursorTimeout1),this._cursorTimeout1=setTimeout(function(){t._currentTickCompleteState=t._animateCursor(t,0,this.cursorDuration/2,"_tick")},100)},initDelayedCursor:function(t){var e=this,i=t?0:this.cursorDelay;this.abortCursorAnimation(),this._currentCursorOpacity=1,this._cursorTimeout2=setTimeout(function(){e._tick()},i)},abortCursorAnimation:function(){var t=this._currentTickState||this._currentTickCompleteState,e=this.canvas;this._currentTickState&&this._currentTickState.abort(),this._currentTickCompleteState&&this._currentTickCompleteState.abort(),clearTimeout(this._cursorTimeout1),clearTimeout(this._cursorTimeout2),this._currentCursorOpacity=0,t&&e&&e.clearContext(e.contextTop||e.contextContainer)},selectAll:function(){return this.selectionStart=0,this.selectionEnd=this._text.length,this._fireSelectionChanged(),this._updateTextarea(),this},getSelectedText:function(){return this._text.slice(this.selectionStart,this.selectionEnd).join("")},findWordBoundaryLeft:function(t){var e=0,i=t-1;if(this._reSpace.test(this._text[i]))for(;this._reSpace.test(this._text[i]);)e++,i--;for(;/\S/.test(this._text[i])&&i>-1;)e++,i--;return t-e},findWordBoundaryRight:function(t){var e=0,i=t;if(this._reSpace.test(this._text[i]))for(;this._reSpace.test(this._text[i]);)e++,i++;for(;/\S/.test(this._text[i])&&i<this._text.length;)e++,i++;return t+e},findLineBoundaryLeft:function(t){for(var e=0,i=t-1;!/\n/.test(this._text[i])&&i>-1;)e++,i--;return t-e},findLineBoundaryRight:function(t){for(var e=0,i=t;!/\n/.test(this._text[i])&&i<this._text.length;)e++,i++;return t+e},searchWordBoundary:function(t,e){for(var i=this._text,r=this._reSpace.test(i[t])?t-1:t,n=i[r],o=s.reNonWord;!o.test(n)&&r>0&&r<i.length;)n=i[r+=e];return o.test(n)&&(r+=1===e?0:1),r},selectWord:function(t){t=t||this.selectionStart;var e=this.searchWordBoundary(t,-1),i=this.searchWordBoundary(t,1);this.selectionStart=e,this.selectionEnd=i,this._fireSelectionChanged(),this._updateTextarea(),this.renderCursorOrSelection()},selectLine:function(t){t=t||this.selectionStart;var e=this.findLineBoundaryLeft(t),i=this.findLineBoundaryRight(t);return this.selectionStart=e,this.selectionEnd=i,this._fireSelectionChanged(),this._updateTextarea(),this},enterEditing:function(t){if(!this.isEditing&&this.editable)return this.canvas&&(this.canvas.calcOffset(),this.exitEditingOnOthers(this.canvas)),this.isEditing=!0,this.initHiddenTextarea(t),this.hiddenTextarea.focus(),this.hiddenTextarea.value=this.text,this._updateTextarea(),this._saveEditingProps(),this._setEditingProps(),this._textBeforeEdit=this.text,this._tick(),this.fire("editing:entered"),this._fireSelectionChanged(),this.canvas?(this.canvas.fire("text:editing:entered",{target:this}),this.initMouseMoveHandler(),this.canvas.requestRenderAll(),this):this},exitEditingOnOthers:function(t){t._iTextInstances&&t._iTextInstances.forEach(function(t){t.selected=!1,t.isEditing&&t.exitEditing()})},initMouseMoveHandler:function(){this.canvas.on("mouse:move",this.mouseMoveHandler)},mouseMoveHandler:function(t){if(this.__isMousedown&&this.isEditing){document.activeElement!==this.hiddenTextarea&&this.hiddenTextarea.focus();var e=this.getSelectionStartFromPointer(t.e),i=this.selectionStart,r=this.selectionEnd;(e!==this.__selectionStartOnMouseDown||i===r)&&(i===e||r===e)||(e>this.__selectionStartOnMouseDown?(this.selectionStart=this.__selectionStartOnMouseDown,this.selectionEnd=e):(this.selectionStart=e,this.selectionEnd=this.__selectionStartOnMouseDown),(this.selectionStart!==i||this.selectionEnd!==r)&&(this.restartCursorIfNeeded(),this._fireSelectionChanged(),this._updateTextarea(),this.renderCursorOrSelection()))}},_setEditingProps:function(){this.hoverCursor="text",this.canvas&&(this.canvas.defaultCursor=this.canvas.moveCursor="text"),this.borderColor=this.editingBorderColor,this.hasControls=this.selectable=!1,this.lockMovementX=this.lockMovementY=!0},fromStringToGraphemeSelection:function(t,e,i){var r=i.slice(0,t),n=s.util.string.graphemeSplit(r).length;if(t===e)return{selectionStart:n,selectionEnd:n};var o=i.slice(t,e);return{selectionStart:n,selectionEnd:n+s.util.string.graphemeSplit(o).length}},fromGraphemeToStringSelection:function(t,e,i){var r=i.slice(0,t).join("").length;return t===e?{selectionStart:r,selectionEnd:r}:{selectionStart:r,selectionEnd:r+i.slice(t,e).join("").length}},_updateTextarea:function(){if(this.cursorOffsetCache={},this.hiddenTextarea){if(!this.inCompositionMode){var t=this.fromGraphemeToStringSelection(this.selectionStart,this.selectionEnd,this._text);this.hiddenTextarea.selectionStart=t.selectionStart,this.hiddenTextarea.selectionEnd=t.selectionEnd}this.updateTextareaPosition()}},updateFromTextArea:function(){if(this.hiddenTextarea){this.cursorOffsetCache={},this.text=this.hiddenTextarea.value,this._shouldClearDimensionCache()&&(this.initDimensions(),this.setCoords());var t=this.fromStringToGraphemeSelection(this.hiddenTextarea.selectionStart,this.hiddenTextarea.selectionEnd,this.hiddenTextarea.value);this.selectionEnd=this.selectionStart=t.selectionEnd,this.inCompositionMode||(this.selectionStart=t.selectionStart),this.updateTextareaPosition()}},updateTextareaPosition:function(){if(this.selectionStart===this.selectionEnd){var t=this._calcTextareaPosition();this.hiddenTextarea.style.left=t.left,this.hiddenTextarea.style.top=t.top}},_calcTextareaPosition:function(){if(!this.canvas)return{x:1,y:1};var t=this.inCompositionMode?this.compositionStart:this.selectionStart,e=this._getCursorBoundaries(t),i=this.get2DCursorLocation(t),r=i.lineIndex,n=i.charIndex,o=this.getValueOfPropertyAt(r,n,"fontSize")*this.lineHeight,a=e.leftOffset,l=this.calcTransformMatrix(),c={x:e.left+a,y:e.top+e.topOffset+o},h=this.canvas.getRetinaScaling(),u=this.canvas.upperCanvasEl,d=u.width/h,p=u.height/h,f=d-o,g=p-o,m=u.clientWidth/d,v=u.clientHeight/p;return c=s.util.transformPoint(c,l),(c=s.util.transformPoint(c,this.canvas.viewportTransform)).x*=m,c.y*=v,c.x<0&&(c.x=0),c.x>f&&(c.x=f),c.y<0&&(c.y=0),c.y>g&&(c.y=g),c.x+=this.canvas._offset.left,c.y+=this.canvas._offset.top,{left:c.x+"px",top:c.y+"px",fontSize:o+"px",charHeight:o}},_saveEditingProps:function(){this._savedProps={hasControls:this.hasControls,borderColor:this.borderColor,lockMovementX:this.lockMovementX,lockMovementY:this.lockMovementY,hoverCursor:this.hoverCursor,selectable:this.selectable,defaultCursor:this.canvas&&this.canvas.defaultCursor,moveCursor:this.canvas&&this.canvas.moveCursor}},_restoreEditingProps:function(){!this._savedProps||(this.hoverCursor=this._savedProps.hoverCursor,this.hasControls=this._savedProps.hasControls,this.borderColor=this._savedProps.borderColor,this.selectable=this._savedProps.selectable,this.lockMovementX=this._savedProps.lockMovementX,this.lockMovementY=this._savedProps.lockMovementY,this.canvas&&(this.canvas.defaultCursor=this._savedProps.defaultCursor,this.canvas.moveCursor=this._savedProps.moveCursor))},exitEditing:function(){var t=this._textBeforeEdit!==this.text,e=this.hiddenTextarea;return this.selected=!1,this.isEditing=!1,this.selectionEnd=this.selectionStart,e&&(e.blur&&e.blur(),e.parentNode&&e.parentNode.removeChild(e)),this.hiddenTextarea=null,this.abortCursorAnimation(),this._restoreEditingProps(),this._currentCursorOpacity=0,this._shouldClearDimensionCache()&&(this.initDimensions(),this.setCoords()),this.fire("editing:exited"),t&&this.fire("modified"),this.canvas&&(this.canvas.off("mouse:move",this.mouseMoveHandler),this.canvas.fire("text:editing:exited",{target:this}),t&&this.canvas.fire("object:modified",{target:this})),this},_removeExtraneousStyles:function(){for(var t in this.styles)this._textLines[t]||delete this.styles[t]},removeStyleFromTo:function(t,e){var i,r,n=this.get2DCursorLocation(t,!0),o=this.get2DCursorLocation(e,!0),a=n.lineIndex,s=n.charIndex,l=o.lineIndex,c=o.charIndex;if(a!==l){if(this.styles[a])for(i=s;i<this._unwrappedTextLines[a].length;i++)delete this.styles[a][i];if(this.styles[l])for(i=c;i<this._unwrappedTextLines[l].length;i++)(r=this.styles[l][i])&&(this.styles[a]||(this.styles[a]={}),this.styles[a][s+i-c]=r);for(i=a+1;i<=l;i++)delete this.styles[i];this.shiftLineStyles(l,a-l)}else if(this.styles[a]){r=this.styles[a];var h,u,d=c-s;for(i=s;i<c;i++)delete r[i];for(u in this.styles[a])(h=parseInt(u,10))>=c&&(r[h-d]=r[u],delete r[u])}},shiftLineStyles:function(e,i){var r=t(this.styles);for(var n in this.styles){var o=parseInt(n,10);o>e&&(this.styles[o+i]=r[o],r[o-i]||delete this.styles[o])}},restartCursorIfNeeded:function(){(!this._currentTickState||this._currentTickState.isAborted||!this._currentTickCompleteState||this._currentTickCompleteState.isAborted)&&this.initDelayedCursor()},insertNewlineStyleObject:function(e,i,r,n){var o,a={},s=!1,l=this._unwrappedTextLines[e].length===i;for(var c in r||(r=1),this.shiftLineStyles(e,r),this.styles[e]&&(o=this.styles[e][0===i?i:i-1]),this.styles[e]){var h=parseInt(c,10);h>=i&&(s=!0,a[h-i]=this.styles[e][c],l&&0===i||delete this.styles[e][c])}var u=!1;for(s&&!l&&(this.styles[e+r]=a,u=!0),u&&r--;r>0;)n&&n[r-1]?this.styles[e+r]={0:t(n[r-1])}:o?this.styles[e+r]={0:t(o)}:delete this.styles[e+r],r--;this._forceClearCache=!0},insertCharStyleObject:function(e,i,r,n){this.styles||(this.styles={});var o=this.styles[e],a=o?t(o):{};for(var s in r||(r=1),a){var l=parseInt(s,10);l>=i&&(o[l+r]=a[l],a[l-r]||delete o[l])}if(this._forceClearCache=!0,n)for(;r--;)!Object.keys(n[r]).length||(this.styles[e]||(this.styles[e]={}),this.styles[e][i+r]=t(n[r]));else if(o)for(var c=o[i?i-1:1];c&&r--;)this.styles[e][i+r]=t(c)},insertNewStyleBlock:function(t,e,i){for(var r=this.get2DCursorLocation(e,!0),n=[0],o=0,a=0;a<t.length;a++)"\n"===t[a]?n[++o]=0:n[o]++;for(n[0]>0&&(this.insertCharStyleObject(r.lineIndex,r.charIndex,n[0],i),i=i&&i.slice(n[0]+1)),o&&this.insertNewlineStyleObject(r.lineIndex,r.charIndex+n[0],o),a=1;a<o;a++)n[a]>0?this.insertCharStyleObject(r.lineIndex+a,0,n[a],i):i&&this.styles[r.lineIndex+a]&&i[0]&&(this.styles[r.lineIndex+a][0]=i[0]),i=i&&i.slice(n[a]+1);n[a]>0&&this.insertCharStyleObject(r.lineIndex+a,0,n[a],i)},setSelectionStartEndWithShift:function(t,e,i){i<=t?(e===t?this._selectionDirection="left":"right"===this._selectionDirection&&(this._selectionDirection="left",this.selectionEnd=t),this.selectionStart=i):i>t&&i<e?"right"===this._selectionDirection?this.selectionEnd=i:this.selectionStart=i:(e===t?this._selectionDirection="right":"left"===this._selectionDirection&&(this._selectionDirection="right",this.selectionStart=e),this.selectionEnd=i)},setSelectionInBoundaries:function(){var t=this.text.length;this.selectionStart>t?this.selectionStart=t:this.selectionStart<0&&(this.selectionStart=0),this.selectionEnd>t?this.selectionEnd=t:this.selectionEnd<0&&(this.selectionEnd=0)}})}(),s.util.object.extend(s.IText.prototype,{initDoubleClickSimulation:function(){this.__lastClickTime=+new Date,this.__lastLastClickTime=+new Date,this.__lastPointer={},this.on("mousedown",this.onMouseDown)},onMouseDown:function(t){if(this.canvas){this.__newClickTime=+new Date;var e=t.pointer;this.isTripleClick(e)&&(this.fire("tripleclick",t),this._stopEvent(t.e)),this.__lastLastClickTime=this.__lastClickTime,this.__lastClickTime=this.__newClickTime,this.__lastPointer=e,this.__lastIsEditing=this.isEditing,this.__lastSelected=this.selected}},isTripleClick:function(t){return this.__newClickTime-this.__lastClickTime<500&&this.__lastClickTime-this.__lastLastClickTime<500&&this.__lastPointer.x===t.x&&this.__lastPointer.y===t.y},_stopEvent:function(t){t.preventDefault&&t.preventDefault(),t.stopPropagation&&t.stopPropagation()},initCursorSelectionHandlers:function(){this.initMousedownHandler(),this.initMouseupHandler(),this.initClicks()},doubleClickHandler:function(t){!this.isEditing||this.selectWord(this.getSelectionStartFromPointer(t.e))},tripleClickHandler:function(t){!this.isEditing||this.selectLine(this.getSelectionStartFromPointer(t.e))},initClicks:function(){this.on("mousedblclick",this.doubleClickHandler),this.on("tripleclick",this.tripleClickHandler)},_mouseDownHandler:function(t){!this.canvas||!this.editable||t.e.button&&1!==t.e.button||(this.__isMousedown=!0,this.selected&&(this.inCompositionMode=!1,this.setCursorByClick(t.e)),this.isEditing&&(this.__selectionStartOnMouseDown=this.selectionStart,this.selectionStart===this.selectionEnd&&this.abortCursorAnimation(),this.renderCursorOrSelection()))},_mouseDownHandlerBefore:function(t){!this.canvas||!this.editable||t.e.button&&1!==t.e.button||(this.selected=this===this.canvas._activeObject)},initMousedownHandler:function(){this.on("mousedown",this._mouseDownHandler),this.on("mousedown:before",this._mouseDownHandlerBefore)},initMouseupHandler:function(){this.on("mouseup",this.mouseUpHandler)},mouseUpHandler:function(t){if(this.__isMousedown=!1,!(!this.editable||this.group||t.transform&&t.transform.actionPerformed||t.e.button&&1!==t.e.button)){if(this.canvas){var e=this.canvas._activeObject;if(e&&e!==this)return}this.__lastSelected&&!this.__corner?(this.selected=!1,this.__lastSelected=!1,this.enterEditing(t.e),this.selectionStart===this.selectionEnd?this.initDelayedCursor(!0):this.renderCursorOrSelection()):this.selected=!0}},setCursorByClick:function(t){var e=this.getSelectionStartFromPointer(t),i=this.selectionStart,r=this.selectionEnd;t.shiftKey?this.setSelectionStartEndWithShift(i,r,e):(this.selectionStart=e,this.selectionEnd=e),this.isEditing&&(this._fireSelectionChanged(),this._updateTextarea())},getSelectionStartFromPointer:function(t){for(var e,i=this.getLocalPointer(t),r=0,n=0,o=0,a=0,s=0,l=0,c=this._textLines.length;l<c&&o<=i.y;l++)o+=this.getHeightOfLine(l)*this.scaleY,s=l,l>0&&(a+=this._textLines[l-1].length+this.missingNewlineOffset(l-1));n=this._getLineLeftOffset(s)*this.scaleX,e=this._textLines[s],"rtl"===this.direction&&(i.x=this.width*this.scaleX-i.x+n);for(var h=0,u=e.length;h<u&&(r=n,(n+=this.__charBounds[s][h].kernedWidth*this.scaleX)<=i.x);h++)a++;return this._getNewSelectionStartFromOffset(i,r,n,a,u)},_getNewSelectionStartFromOffset:function(t,e,i,r,n){var o=t.x-e,a=i-t.x,s=r+(a>o||a<0?0:1);return this.flipX&&(s=n-s),s>this._text.length&&(s=this._text.length),s}}),s.util.object.extend(s.IText.prototype,{initHiddenTextarea:function(){this.hiddenTextarea=s.document.createElement("textarea"),this.hiddenTextarea.setAttribute("autocapitalize","off"),this.hiddenTextarea.setAttribute("autocorrect","off"),this.hiddenTextarea.setAttribute("autocomplete","off"),this.hiddenTextarea.setAttribute("spellcheck","false"),this.hiddenTextarea.setAttribute("data-fabric-hiddentextarea",""),this.hiddenTextarea.setAttribute("wrap","off");var t=this._calcTextareaPosition();this.hiddenTextarea.style.cssText="position: absolute; top: "+t.top+"; left: "+t.left+"; z-index: -999; opacity: 0; width: 1px; height: 1px; font-size: 1px; paddingーtop: "+t.fontSize+";",this.hiddenTextareaContainer?this.hiddenTextareaContainer.appendChild(this.hiddenTextarea):s.document.body.appendChild(this.hiddenTextarea),s.util.addListener(this.hiddenTextarea,"keydown",this.onKeyDown.bind(this)),s.util.addListener(this.hiddenTextarea,"keyup",this.onKeyUp.bind(this)),s.util.addListener(this.hiddenTextarea,"input",this.onInput.bind(this)),s.util.addListener(this.hiddenTextarea,"copy",this.copy.bind(this)),s.util.addListener(this.hiddenTextarea,"cut",this.copy.bind(this)),s.util.addListener(this.hiddenTextarea,"paste",this.paste.bind(this)),s.util.addListener(this.hiddenTextarea,"compositionstart",this.onCompositionStart.bind(this)),s.util.addListener(this.hiddenTextarea,"compositionupdate",this.onCompositionUpdate.bind(this)),s.util.addListener(this.hiddenTextarea,"compositionend",this.onCompositionEnd.bind(this)),!this._clickHandlerInitialized&&this.canvas&&(s.util.addListener(this.canvas.upperCanvasEl,"click",this.onClick.bind(this)),this._clickHandlerInitialized=!0)},keysMap:{9:"exitEditing",27:"exitEditing",33:"moveCursorUp",34:"moveCursorDown",35:"moveCursorRight",36:"moveCursorLeft",37:"moveCursorLeft",38:"moveCursorUp",39:"moveCursorRight",40:"moveCursorDown"},keysMapRtl:{9:"exitEditing",27:"exitEditing",33:"moveCursorUp",34:"moveCursorDown",35:"moveCursorLeft",36:"moveCursorRight",37:"moveCursorRight",38:"moveCursorUp",39:"moveCursorLeft",40:"moveCursorDown"},ctrlKeysMapUp:{67:"copy",88:"cut"},ctrlKeysMapDown:{65:"selectAll"},onClick:function(){this.hiddenTextarea&&this.hiddenTextarea.focus()},onKeyDown:function(t){if(this.isEditing){var e="rtl"===this.direction?this.keysMapRtl:this.keysMap;if(t.keyCode in e)this[e[t.keyCode]](t);else{if(!(t.keyCode in this.ctrlKeysMapDown)||!t.ctrlKey&&!t.metaKey)return;this[this.ctrlKeysMapDown[t.keyCode]](t)}t.stopImmediatePropagation(),t.preventDefault(),t.keyCode>=33&&t.keyCode<=40?(this.inCompositionMode=!1,this.clearContextTop(),this.renderCursorOrSelection()):this.canvas&&this.canvas.requestRenderAll()}},onKeyUp:function(t){!this.isEditing||this._copyDone||this.inCompositionMode?this._copyDone=!1:t.keyCode in this.ctrlKeysMapUp&&(t.ctrlKey||t.metaKey)&&(this[this.ctrlKeysMapUp[t.keyCode]](t),t.stopImmediatePropagation(),t.preventDefault(),this.canvas&&this.canvas.requestRenderAll())},onInput:function(t){var e=this.fromPaste;if(this.fromPaste=!1,t&&t.stopPropagation(),this.isEditing){var i,r,n,o,a,l=this._splitTextIntoLines(this.hiddenTextarea.value).graphemeText,c=this._text.length,h=l.length,u=h-c,d=this.selectionStart,p=this.selectionEnd,f=d!==p;if(""===this.hiddenTextarea.value)return this.styles={},this.updateFromTextArea(),this.fire("changed"),void(this.canvas&&(this.canvas.fire("text:changed",{target:this}),this.canvas.requestRenderAll()));var g=this.fromStringToGraphemeSelection(this.hiddenTextarea.selectionStart,this.hiddenTextarea.selectionEnd,this.hiddenTextarea.value),m=d>g.selectionStart;f?(i=this._text.slice(d,p),u+=p-d):h<c&&(i=m?this._text.slice(p+u,p):this._text.slice(d,d-u)),r=l.slice(g.selectionEnd-u,g.selectionEnd),i&&i.length&&(r.length&&(n=this.getSelectionStyles(d,d+1,!1),n=r.map(function(){return n[0]})),f?(o=d,a=p):m?(o=p-i.length,a=p):(o=p,a=p+i.length),this.removeStyleFromTo(o,a)),r.length&&(e&&r.join("")===s.copiedText&&!s.disableStyleCopyPaste&&(n=s.copiedTextStyle),this.insertNewStyleBlock(r,d,n)),this.updateFromTextArea(),this.fire("changed"),this.canvas&&(this.canvas.fire("text:changed",{target:this}),this.canvas.requestRenderAll())}},onCompositionStart:function(){this.inCompositionMode=!0},onCompositionEnd:function(){this.inCompositionMode=!1},onCompositionUpdate:function(t){this.compositionStart=t.target.selectionStart,this.compositionEnd=t.target.selectionEnd,this.updateTextareaPosition()},copy:function(){this.selectionStart!==this.selectionEnd&&(s.copiedText=this.getSelectedText(),s.disableStyleCopyPaste?s.copiedTextStyle=null:s.copiedTextStyle=this.getSelectionStyles(this.selectionStart,this.selectionEnd,!0),this._copyDone=!0)},paste:function(){this.fromPaste=!0},_getClipboardData:function(t){return t&&t.clipboardData||s.window.clipboardData},_getWidthBeforeCursor:function(t,e){var i,r=this._getLineLeftOffset(t);return e>0&&(r+=(i=this.__charBounds[t][e-1]).left+i.width),r},getDownCursorOffset:function(t,e){var i=this._getSelectionForOffset(t,e),r=this.get2DCursorLocation(i),n=r.lineIndex;if(n===this._textLines.length-1||t.metaKey||34===t.keyCode)return this._text.length-i;var o=r.charIndex,a=this._getWidthBeforeCursor(n,o),s=this._getIndexOnLine(n+1,a);return this._textLines[n].slice(o).length+s+1+this.missingNewlineOffset(n)},_getSelectionForOffset:function(t,e){return t.shiftKey&&this.selectionStart!==this.selectionEnd&&e?this.selectionEnd:this.selectionStart},getUpCursorOffset:function(t,e){var i=this._getSelectionForOffset(t,e),r=this.get2DCursorLocation(i),n=r.lineIndex;if(0===n||t.metaKey||33===t.keyCode)return-i;var o=r.charIndex,a=this._getWidthBeforeCursor(n,o),s=this._getIndexOnLine(n-1,a),l=this._textLines[n].slice(0,o),c=this.missingNewlineOffset(n-1);return-this._textLines[n-1].length+s-l.length+(1-c)},_getIndexOnLine:function(t,e){for(var i,r,n=this._textLines[t],o=this._getLineLeftOffset(t),a=0,s=0,l=n.length;s<l;s++)if((o+=i=this.__charBounds[t][s].width)>e){r=!0;var c=o-i,h=o,u=Math.abs(c-e);a=Math.abs(h-e)<u?s:s-1;break}return r||(a=n.length-1),a},moveCursorDown:function(t){this.selectionStart>=this._text.length&&this.selectionEnd>=this._text.length||this._moveCursorUpOrDown("Down",t)},moveCursorUp:function(t){0===this.selectionStart&&0===this.selectionEnd||this._moveCursorUpOrDown("Up",t)},_moveCursorUpOrDown:function(t,e){var i=this["get"+t+"CursorOffset"](e,"right"===this._selectionDirection);e.shiftKey?this.moveCursorWithShift(i):this.moveCursorWithoutShift(i),0!==i&&(this.setSelectionInBoundaries(),this.abortCursorAnimation(),this._currentCursorOpacity=1,this.initDelayedCursor(),this._fireSelectionChanged(),this._updateTextarea())},moveCursorWithShift:function(t){var e="left"===this._selectionDirection?this.selectionStart+t:this.selectionEnd+t;return this.setSelectionStartEndWithShift(this.selectionStart,this.selectionEnd,e),0!==t},moveCursorWithoutShift:function(t){return t<0?(this.selectionStart+=t,this.selectionEnd=this.selectionStart):(this.selectionEnd+=t,this.selectionStart=this.selectionEnd),0!==t},moveCursorLeft:function(t){0===this.selectionStart&&0===this.selectionEnd||this._moveCursorLeftOrRight("Left",t)},_move:function(t,e,i){var r;if(t.altKey)r=this["findWordBoundary"+i](this[e]);else{if(!t.metaKey&&35!==t.keyCode&&36!==t.keyCode)return this[e]+="Left"===i?-1:1,!0;r=this["findLineBoundary"+i](this[e])}if(typeof r<"u"&&this[e]!==r)return this[e]=r,!0},_moveLeft:function(t,e){return this._move(t,e,"Left")},_moveRight:function(t,e){return this._move(t,e,"Right")},moveCursorLeftWithoutShift:function(t){var e=!0;return this._selectionDirection="left",this.selectionEnd===this.selectionStart&&0!==this.selectionStart&&(e=this._moveLeft(t,"selectionStart")),this.selectionEnd=this.selectionStart,e},moveCursorLeftWithShift:function(t){return"right"===this._selectionDirection&&this.selectionStart!==this.selectionEnd?this._moveLeft(t,"selectionEnd"):0!==this.selectionStart?(this._selectionDirection="left",this._moveLeft(t,"selectionStart")):void 0},moveCursorRight:function(t){this.selectionStart>=this._text.length&&this.selectionEnd>=this._text.length||this._moveCursorLeftOrRight("Right",t)},_moveCursorLeftOrRight:function(t,e){var i="moveCursor"+t+"With";this._currentCursorOpacity=1,e.shiftKey?i+="Shift":i+="outShift",this[i](e)&&(this.abortCursorAnimation(),this.initDelayedCursor(),this._fireSelectionChanged(),this._updateTextarea())},moveCursorRightWithShift:function(t){return"left"===this._selectionDirection&&this.selectionStart!==this.selectionEnd?this._moveRight(t,"selectionStart"):this.selectionEnd!==this._text.length?(this._selectionDirection="right",this._moveRight(t,"selectionEnd")):void 0},moveCursorRightWithoutShift:function(t){var e=!0;return this._selectionDirection="right",this.selectionStart===this.selectionEnd?(e=this._moveRight(t,"selectionStart"),this.selectionEnd=this.selectionStart):this.selectionStart=this.selectionEnd,e},removeChars:function(t,e){typeof e>"u"&&(e=t+1),this.removeStyleFromTo(t,e),this._text.splice(t,e-t),this.text=this._text.join(""),this.set("dirty",!0),this._shouldClearDimensionCache()&&(this.initDimensions(),this.setCoords()),this._removeExtraneousStyles()},insertChars:function(t,e,i,r){typeof r>"u"&&(r=i),r>i&&this.removeStyleFromTo(i,r);var n=s.util.string.graphemeSplit(t);this.insertNewStyleBlock(n,i,e),this._text=[].concat(this._text.slice(0,i),n,this._text.slice(r)),this.text=this._text.join(""),this.set("dirty",!0),this._shouldClearDimensionCache()&&(this.initDimensions(),this.setCoords()),this._removeExtraneousStyles()}}),function(){var t=s.util.toFixed,e=/ +/g;s.util.object.extend(s.Text.prototype,{_toSVG:function(){var t=this._getSVGLeftTopOffsets(),e=this._getSVGTextAndBg(t.textTop,t.textLeft);return this._wrapSVGTextAndBg(e)},toSVG:function(t){return this._createBaseSVGMarkup(this._toSVG(),{reviver:t,noStyle:!0,withShadow:!0})},_getSVGLeftTopOffsets:function(){return{textLeft:-this.width/2,textTop:-this.height/2,lineTop:this.getHeightOfLine(0)}},_wrapSVGTextAndBg:function(t){var e=this.getSvgTextDecoration(this);return[t.textBgRects.join(""),'\t\t<text xml:space="preserve" ',this.fontFamily?'font-family="'+this.fontFamily.replace(/"/g,"'")+'" ':"",this.fontSize?'font-size="'+this.fontSize+'" ':"",this.fontStyle?'font-style="'+this.fontStyle+'" ':"",this.fontWeight?'font-weight="'+this.fontWeight+'" ':"",e?'text-decoration="'+e+'" ':"",'style="',this.getSvgStyles(!0),'"',this.addPaintOrder()," >",t.textSpans.join(""),"</text>\n"]},_getSVGTextAndBg:function(t,e){var i,r=[],n=[],o=t;this._setSVGBg(n);for(var a=0,s=this._textLines.length;a<s;a++)i=this._getLineLeftOffset(a),(this.textBackgroundColor||this.styleHas("textBackgroundColor",a))&&this._setSVGTextLineBg(n,a,e+i,o),this._setSVGTextLineText(r,a,e+i,o),o+=this.getHeightOfLine(a);return{textSpans:r,textBgRects:n}},_createTextCharSpan:function(i,r,n,o){var a=i!==i.trim()||i.match(e),l=this.getSvgSpanStyles(r,a),c=l?'style="'+l+'"':"",h=r.deltaY,u="",d=s.Object.NUM_FRACTION_DIGITS;return h&&(u=' dy="'+t(h,d)+'" '),['<tspan x="',t(n,d),'" y="',t(o,d),'" ',u,c,">",s.util.string.escapeXml(i),"</tspan>"].join("")},_setSVGTextLineText:function(t,e,i,r){var n,o,a,l,c,h=this.getHeightOfLine(e),u=-1!==this.textAlign.indexOf("justify"),d="",p=0,f=this._textLines[e];r+=h*(1-this._fontSizeFraction)/this.lineHeight;for(var g=0,m=f.length-1;g<=m;g++)c=g===m||this.charSpacing,d+=f[g],a=this.__charBounds[e][g],0===p?(i+=a.kernedWidth-a.width,p+=a.width):p+=a.kernedWidth,u&&!c&&this._reSpaceAndTab.test(f[g])&&(c=!0),c||(n=n||this.getCompleteStyleDeclaration(e,g),o=this.getCompleteStyleDeclaration(e,g+1),c=s.util.hasStyleChanged(n,o,!0)),c&&(l=this._getStyleDeclaration(e,g)||{},t.push(this._createTextCharSpan(d,l,i,r)),d="",n=o,i+=p,p=0)},_pushTextBgRect:function(e,i,r,n,o,a){var l=s.Object.NUM_FRACTION_DIGITS;e.push("\t\t<rect ",this._getFillAttributes(i),' x="',t(r,l),'" y="',t(n,l),'" width="',t(o,l),'" height="',t(a,l),'"></rect>\n')},_setSVGTextLineBg:function(t,e,i,r){for(var n,o,a=this._textLines[e],s=this.getHeightOfLine(e)/this.lineHeight,l=0,c=0,h=this.getValueOfPropertyAt(e,0,"textBackgroundColor"),u=0,d=a.length;u<d;u++)n=this.__charBounds[e][u],(o=this.getValueOfPropertyAt(e,u,"textBackgroundColor"))!==h?(h&&this._pushTextBgRect(t,h,i+c,r,l,s),c=n.left,l=n.width,h=o):l+=n.kernedWidth;o&&this._pushTextBgRect(t,o,i+c,r,l,s)},_getFillAttributes:function(t){var e=t&&"string"==typeof t?new s.Color(t):"";return e&&e.getSource()&&1!==e.getAlpha()?'opacity="'+e.getAlpha()+'" fill="'+e.setAlpha(1).toRgb()+'"':'fill="'+t+'"'},_getSVGLineTopOffset:function(t){for(var e,i=0,r=0;r<t;r++)i+=this.getHeightOfLine(r);return e=this.getHeightOfLine(r),{lineTop:i,offset:(this._fontSizeMult-this._fontSizeFraction)*e/(this.lineHeight*this._fontSizeMult)}},getSvgStyles:function(t){return s.Object.prototype.getSvgStyles.call(this,t)+" white-space: pre;"}})}(),function(t){var e=t.fabric||(t.fabric={});e.Textbox=e.util.createClass(e.IText,e.Observable,{type:"textbox",minWidth:20,dynamicMinWidth:2,__cachedLines:null,lockScalingFlip:!0,noScaleCache:!1,_dimensionAffectingProps:e.Text.prototype._dimensionAffectingProps.concat("width"),_wordJoiners:/[ \t\r]/,splitByGrapheme:!1,initDimensions:function(){this.__skipDimension||(this.isEditing&&this.initDelayedCursor(),this.clearContextTop(),this._clearCache(),this.dynamicMinWidth=0,this._styleMap=this._generateStyleMap(this._splitText()),this.dynamicMinWidth>this.width&&this._set("width",this.dynamicMinWidth),-1!==this.textAlign.indexOf("justify")&&this.enlargeSpaces(),this.height=this.calcTextHeight(),this.saveState({propertySet:"_dimensionAffectingProps"}))},_generateStyleMap:function(t){for(var e=0,i=0,r=0,n={},o=0;o<t.graphemeLines.length;o++)"\n"===t.graphemeText[r]&&o>0?(i=0,r++,e++):!this.splitByGrapheme&&this._reSpaceAndTab.test(t.graphemeText[r])&&o>0&&(i++,r++),n[o]={line:e,offset:i},r+=t.graphemeLines[o].length,i+=t.graphemeLines[o].length;return n},styleHas:function(t,i){if(this._styleMap&&!this.isWrapping){var r=this._styleMap[i];r&&(i=r.line)}return e.Text.prototype.styleHas.call(this,t,i)},isEmptyStyles:function(t){if(!this.styles)return!0;var e,i,r=0,n=!1,o=this._styleMap[t],a=this._styleMap[t+1];for(var s in o&&(t=o.line,r=o.offset),a&&(n=a.line===t,e=a.offset),i=typeof t>"u"?this.styles:{line:this.styles[t]})for(var l in i[s])if(l>=r&&(!n||l<e))for(var c in i[s][l])return!1;return!0},_getStyleDeclaration:function(t,e){if(this._styleMap&&!this.isWrapping){var i=this._styleMap[t];if(!i)return null;t=i.line,e=i.offset+e}return this.callSuper("_getStyleDeclaration",t,e)},_setStyleDeclaration:function(t,e,i){var r=this._styleMap[t];t=r.line,e=r.offset+e,this.styles[t][e]=i},_deleteStyleDeclaration:function(t,e){var i=this._styleMap[t];t=i.line,e=i.offset+e,delete this.styles[t][e]},_getLineStyle:function(t){var e=this._styleMap[t];return!!this.styles[e.line]},_setLineStyle:function(t){var e=this._styleMap[t];this.styles[e.line]={}},_wrapText:function(t,e){var i,r=[];for(this.isWrapping=!0,i=0;i<t.length;i++)r=r.concat(this._wrapLine(t[i],i,e));return this.isWrapping=!1,r},_measureWord:function(t,e,i){var r,n=0;i=i||0;for(var o=0,a=t.length;o<a;o++)n+=this._getGraphemeBox(t[o],e,o+i,r,!0).kernedWidth,r=t[o];return n},_wrapLine:function(t,i,r,n){var o=0,a=this.splitByGrapheme,s=[],l=[],c=a?e.util.string.graphemeSplit(t):t.split(this._wordJoiners),h="",u=0,d=a?"":" ",p=0,f=0,g=0,m=!0,v=this._getWidthOfCharSpacing();n=n||0,0===c.length&&c.push([]),r-=n;for(var b=0;b<c.length;b++)h=a?c[b]:e.util.string.graphemeSplit(c[b]),p=this._measureWord(h,i,u),u+=h.length,(o+=f+p-v)>r&&!m?(s.push(l),l=[],o=p,m=!0):o+=v,!m&&!a&&l.push(d),l=l.concat(h),f=a?0:this._measureWord([d],i,u),u++,m=!1,p>g&&(g=p);return b&&s.push(l),g+n>this.dynamicMinWidth&&(this.dynamicMinWidth=g-v+n),s},isEndOfWrapping:function(t){return!this._styleMap[t+1]||this._styleMap[t+1].line!==this._styleMap[t].line},missingNewlineOffset:function(t){return this.splitByGrapheme?this.isEndOfWrapping(t)?1:0:1},_splitTextIntoLines:function(t){for(var i=e.Text.prototype._splitTextIntoLines.call(this,t),r=this._wrapText(i.lines,this.width),n=new Array(r.length),o=0;o<r.length;o++)n[o]=r[o].join("");return i.lines=n,i.graphemeLines=r,i},getMinWidth:function(){return Math.max(this.minWidth,this.dynamicMinWidth)},_removeExtraneousStyles:function(){var t={};for(var e in this._styleMap)this._textLines[e]&&(t[this._styleMap[e].line]=1);for(var e in this.styles)t[e]||delete this.styles[e]},toObject:function(t){return this.callSuper("toObject",["minWidth","splitByGrapheme"].concat(t))}}),e.Textbox.fromObject=function(t,i){var r=e.util.stylesFromArray(t.styles,t.text),n=Object.assign({},t,{styles:r});return e.Object._fromObject("Textbox",n,i,"text")}}(t),function(){var t=s.controlsUtils,e=t.scaleSkewCursorStyleHandler,i=t.scaleCursorStyleHandler,r=t.scalingEqually,n=t.scalingYOrSkewingX,o=t.scalingXOrSkewingY,a=t.scaleOrSkewActionName,l=s.Object.prototype.controls;if(l.ml=new s.Control({x:-.5,y:0,cursorStyleHandler:e,actionHandler:o,getActionName:a}),l.mr=new s.Control({x:.5,y:0,cursorStyleHandler:e,actionHandler:o,getActionName:a}),l.mb=new s.Control({x:0,y:.5,cursorStyleHandler:e,actionHandler:n,getActionName:a}),l.mt=new s.Control({x:0,y:-.5,cursorStyleHandler:e,actionHandler:n,getActionName:a}),l.tl=new s.Control({x:-.5,y:-.5,cursorStyleHandler:i,actionHandler:r}),l.tr=new s.Control({x:.5,y:-.5,cursorStyleHandler:i,actionHandler:r}),l.bl=new s.Control({x:-.5,y:.5,cursorStyleHandler:i,actionHandler:r}),l.br=new s.Control({x:.5,y:.5,cursorStyleHandler:i,actionHandler:r}),l.mtr=new s.Control({x:0,y:-.5,actionHandler:t.rotationWithSnapping,cursorStyleHandler:t.rotationStyleHandler,offsetY:-40,withConnection:!0,actionName:"rotate"}),s.Textbox){var c=s.Textbox.prototype.controls={};c.mtr=l.mtr,c.tr=l.tr,c.br=l.br,c.tl=l.tl,c.bl=l.bl,c.mt=l.mt,c.mb=l.mb,c.mr=new s.Control({x:.5,y:0,actionHandler:t.changeWidth,cursorStyleHandler:e,actionName:"resizing"}),c.ml=new s.Control({x:-.5,y:0,actionHandler:t.changeWidth,cursorStyleHandler:e,actionName:"resizing"})}}()}(ve);const np={lockScalingFlip:!0,originY:"center",originX:"center",lockMovementX:!0,lockMovementY:!0,borderColor:"transparent"};function xl(t=36){let e="";for(let i=0;i<t;i+=1)e+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".charAt(Math.floor(62*Math.random()));return e}function x_(t){var e;const i=new ve.fabric.Canvas(t,{width:1,height:1});i.preserveObjectStacking=!0,i.selection=!1,i.renderOnAddRemove=!1;const r=O().config.textureSize;r&&(ve.fabric.textureSize=r);const n={...null==(e=O().config.objectDefaults)?void 0:e.global,...np};Object.keys(n).forEach(t=>{ve.fabric.Object.prototype[t]=n[t]}),i.on("object:added",t=>{var e,i;t.target&&(null==(i=null==(e=t.target)?void 0:e.data)||!i.id)&&(t.target.data||(t.target.data={}),t.target.data.id=xl(10))});const o=ve.fabric.Object.prototype.controls;return Object.keys(o).forEach(t=>{delete o[t]}),i}let _l=null;function di(t){_l=t}class __{constructor(){Ce(this,"maxZoom",2),Ce(this,"minZoom",1),Ce(this,"step",.05),this.allowUserZoom&&this.bindMouseWheel(),oe.subscribe(t=>t.stageSize,()=>{setTimeout(()=>{this.fitToScreen()},1)})}get allowUserZoom(){var t,e,i,r;return null==(r=null==(i=null==(e=null==(t=O().config)?void 0:t.tools)?void 0:e.zoom)?void 0:i.allowUserZoom)||r}get currentZoom(){return O().zoom}zoomIn(t=this.step){this.set(this.currentZoom+t)}canZoomIn(t=this.step){return this.currentZoom+t<=this.maxZoom}canZoomOut(t=this.step){return this.currentZoom-t>=this.minZoom}zoomOut(t=this.step){this.set(this.currentZoom-t)}set(t,e=!0){if(t<this.minZoom||t>this.maxZoom)return;const i=Ts.round(O().original.width*t,0),r=Ts.round(O().original.height*t,0);he().setZoom(t),e&&he().setDimensions({width:i,height:r}),O().setZoom(t)}fitToScreen(){var t,e;if(null==(e=null==(t=O().config.tools)?void 0:t.zoom)||!e.fitImageToScreen)return;const{width:i,height:r}=O().stageSize,n=Math.max(r,1),o=Math.max(i,1);if(O().original.height>n||O().original.width>o){const t=Math.min(n/O().original.height,o/O().original.width);this.minZoom=Math.min(t,1)}else this.minZoom=1;this.set(this.minZoom)}bindMouseWheel(){he().on("mouse:wheel",t=>{t.e.preventDefault(),t.e.stopPropagation(),null==_l&&(t.e.deltaY<0?this.zoomIn():this.zoomOut())})}}function op(t){return new Promise(e=>{ve.fabric.util.loadImage(t,t=>e(new ve.fabric.Image(t)),null,O().config.crossOrigin?"anonymous":void 0)})}class S_{constructor(){Ce(this,"minWidth",50),Ce(this,"minHeight",50)}resize(t,e,{applyZoom:i=!1,resizeHelper:r=!0}={}){const n=O().zoom;he().setWidth(t*(i?n:1)),he().setHeight(e*(i?n:1)),O().setOriginal(t,e),r&&I().transform.resetStraightenAnchor()}async addMainImage(t,e="mainImage"){var i,r;O().toggleLoading(e);const n=await op(t);if(n)return this.clear(),n.set(Pr),n.name=Ne.MainImage,he().add(n),this.resize(n.width,n.height),n.center(),n.setCoords(),I().zoom.fitToScreen(),O().toggleLoading(!1),null==(r=(i=O().config).onMainImageLoaded)||r.call(i,n),n}openNew(t,e,i){return t=Math.max(this.minWidth,t),e=Math.max(this.minHeight,e),this.clear(),this.resize(t,e),he().backgroundColor=i,I().zoom.fitToScreen(),O().toggleLoading("newCanvas"),requestAnimationFrame(()=>{O().toggleLoading(!1)}),Promise.resolve({width:t,height:e})}getMainImage(){return he().getObjects().find(t=>t.name===Ne.MainImage)}render(){he().requestRenderAll()}async loadInitialContent(){var t,e;const i=O().config.image,r=O().config.blankCanvasSize,n=O().config.state;if(i&&i.endsWith("json")){const t=await Co(i);await I().import.loadState(t)}else i&&i.startsWith('{"canvas')?await I().import.loadState(i):i?await this.addMainImage(i):n?await I().import.loadState(n):r&&await this.openNew(r.width,r.height);return rl()&&(null==(e=null==(t=O().config.ui)?void 0:t.openImageDialog)?void 0:e.show)&&O().togglePanel("newImage",!0),new Promise(t=>{setTimeout(()=>{I().history.addInitial(),t()},10)})}clear(){he().clear(),I().frame.remove(),I().transform.resetStraightenAnchor()}}function C_(t){return t.name===Ne.Sticker&&"forEachObject"in t}const T_=["fontSize","fontFamily","left","top","width","height","scaleX","scaleY","flipX","flipY","angle","src","strokeWidth"];function sp(t={}){he().fire("object:modified",k_(t))}function k_(t){return{values:t,sizeOrPositionChanged:E_(t)}}function E_(t){return Object.keys(t).some(t=>T_.includes(t))}function O_(){O().fabric.on("selection:created",t=>{var e;(null==(e=t.selected)?void 0:e[0])&&!fu(t)&&gs(t.selected[0])}),O().fabric.on("selection:updated",t=>{var e;fu(t)||gs(null==(e=t.selected)?void 0:e[0])}),O().fabric.on("selection:cleared",()=>{gs()})}function fu(t){var e,i;const[r]=Lf(null==(e=t.selected)?void 0:e[0]),n=r===O().activeTool;return!(!O().dirty||null!=(i=t.selected)&&i[0]&&n||(t.deselected&&I().objects.select(t.deselected[0]),0))}function gs(t){(null==t?void 0:t.data.id)!==O().objects.active.id&&(O().objects.setActive(null!=t?t:null),O().activeTool!==Pe.DRAW&&tl())}class P_{constructor(){this.syncObjects(),O_(),O().fabric.on("text:editing:entered",()=>{O().objects.setIsEditingText(!0)}),O().fabric.on("text:editing:exited",()=>{O().objects.setIsEditingText(!1)}),O().fabric.on("object:added",()=>{this.syncObjects()}),O().fabric.on("object:removed",()=>{this.syncObjects()})}getAll(){return he().getObjects().filter(t=>{var e;return!(null!=(e=null==t?void 0:t.data)&&e.pixieInternal)})}get(t){return this.getAll().find(e=>e.name===t)}getById(t){return this.getAll().find(e=>e.data.id===t)}isActive(t){var e;const i="string"==typeof t?t:t.data.id;return(null==(e=O().objects.active)?void 0:e.id)===i}getActive(){return he().getActiveObject()}has(t){return this.getAll().findIndex(e=>e.name===t)>-1}select(t){const e="string"==typeof t?this.getById(t):t;!e||(he().setActiveObject(e),he().requestRenderAll())}deselectActive(){he().discardActiveObject(),he().requestRenderAll()}setValues(t,e){if(!(e=e||this.getActive()))return;let i=!1;C_(e)&&t.fill!==e.fill&&e.forEachObject(e=>e.set("fill",t.fill)),lr(e)?((t.fontFamily!==e.fontFamily||t.fontSize!==e.fontSize)&&(i=!0),e.selectionStart!==e.selectionEnd?e.setSelectionStyles(t):e.set(t)):e.set(t),i?setTimeout(()=>{he().requestRenderAll()},50):he().requestRenderAll(),O().objects.setActive(e),sp(t)}move(t,e=1,i){(i=i||this.getActive())&&("up"===t?this.setValues({top:i.top-e}):"down"===t?this.setValues({top:i.top+e}):"left"===t?this.setValues({left:i.left-e}):"right"===t&&this.setValues({left:i.left+e}),I().canvas.render())}bringToFront(t){(t=t||this.getActive())&&(t.bringToFront(),I().canvas.render())}sendToBack(t){(t=t||this.getActive())&&(t.sendToBack(),I().canvas.render())}flipHorizontally(t){(t=t||this.getActive())&&(this.setValues({flipX:!t.flipX}),I().canvas.render())}duplicate(t){const e=t||this.getActive();!e||(this.deselectActive(),e.clone(t=>{t.set({left:e.left+40,top:e.top+40,data:{...e.data,id:xl(10)},name:e.name}),he().add(t),this.select(t),I().canvas.render()}))}delete(t){(t=t||this.getActive())&&(this.deselectActive(),he().remove(t),he().requestRenderAll(),I().history.addHistoryItem({name:"deletedObject"}))}syncObjects(){const t=this.getAll().map(t=>{var e;return{name:t.name,selectable:null!=(e=t.selectable)&&e,id:t.data.id}});oe.setState({objects:{...O().objects,all:t}})}}const M_={frame:null,fonts:[]};function du(t){return t.state||(t.state=Zn()),{...t.state||Zn(),name:t.name,id:xl(15)}}const ap=15;class A_{constructor(){Ce(this,"minWidth",250)}add(t,e={}){var i,r,n;if(!(t=t||(null==(r=null==(i=O().config.tools)?void 0:i.text)?void 0:r.defaultText)))return;const o={...null==(n=O().config.objectDefaults)?void 0:n.text,...e,name:Ne.Text,padding:15,editingBorderColor:Xa.fill},a=new ve.fabric.IText(t,o);he().add(a),this.autoPositionText(a),I().objects.select(a)}autoPositionText(t){const e=he().getWidth(),i=he().getHeight(),r=Math.min(he().getWidth(),this.minWidth);t.scaleToWidth(Math.max(e/3,r)),t.getScaledHeight()>i&&t.scaleToHeight(i-t.getScaledHeight()-20),t.viewportCenter(),he().getObjects("i-text").forEach(e=>{if(e!==t&&e.intersectsWithObject(t)){const i=e.top-t.top+e.getScaledHeight();let r=t.top+i;r>O().original.height-e.getScaledHeight()&&(r=0),t.set("top",r),t.setCoords()}})}selectOrAddText(t,e={}){if(O().objects.active.isText)return!1;const i=I().objects.getAll().find(t=>lr(t));return i?(I().objects.select(i),!1):(this.add(t,e),!0)}}function lp(t,e){const i=t.map(async t=>{const i=Array.from(document.fonts.values()).find(e=>e.family===t.family);if(i)return i.loaded;const r=new FontFace(t.family,`url(${e?e(t.src):t.src})`,t.descriptors);return document.fonts.add(r),r.load()});return Promise.all(i)}function D_(t){return!!t&&/^[a-zA-Z][a-zA-Z\d+\-.]*?:/.test(t)}function ct(t){return t?D_(t)?t:`${O().config.baseUrl?`${O().config.baseUrl}/`:""}${t}`:""}class I_{async undo(){if(this.canUndo()){const t=O().history.items[O().history.pointer-1];await this.load(t)}}async redo(){if(this.canRedo()){const t=O().history.items[O().history.pointer+1];await this.load(t)}}canUndo(){return O().history.canUndo}canRedo(){return O().history.canRedo}reload(){return this.load(O().history.items[O().history.pointer])}replaceCurrent(){const t=O().history.items[O().history.pointer];[...O().history.items][O().history.pointer]=du({name:t.name,state:t})}addHistoryItem(t){const e=du(t),i=[...O().history.items.slice(0,O().history.pointer+1),e];O().history.update(i.length-1,i)}load(t){return t={...t,editor:t.editor||M_},new Promise(e=>{lp(R_(t.canvas.objects),ct).finally(()=>{he().loadFromJSON(t.canvas,()=>{I().zoom.set(1),t.canvasWidth&&t.canvasHeight&&I().canvas.resize(t.canvasWidth,t.canvasHeight,{resizeHelper:!1,applyZoom:!1}),I().frame.remove(),t.editor.frame&&I().frame.add(t.editor.frame.name,t.editor.frame.sizePercent),I().objects.syncObjects(),I().objects.getAll().forEach(t=>{if(!t.data.pixieInternal&&"left"===t.originX&&"top"===t.originY){const e=t.getPointByOrigin("center","center");t.set("left",e.x),t.set("top",e.y)}t.set({...np}),"i-text"===t.type&&(t.padding=15)}),I().canvas.render(),he().calcOffset(),I().zoom.fitToScreen(),O().history.updatePointerById(t.id),I().transform.resetStraightenAnchor(),e()})})})}addInitial(t){!O().history.items.find(t=>"initial"===t.name)&&(t||!rl())&&this.addHistoryItem({name:"initial",state:t})}}function R_(t){const e=[];return t.forEach(t=>{var i,r,n;if(!lr(t))return;const o=null==(n=null==(r=null==(i=O().config.tools)?void 0:i.text)?void 0:r.items)?void 0:n.find(e=>e.family===t.fontFamily);o&&e.push(o)}),e}class L_{canMerge(){return I().objects.getAll().filter(t=>t.name!==Ne.MainImage).length>0}async apply(){O().toggleLoading("merge");const t=I().export.getDataUrl();t&&await I().canvas.addMainImage(t,"merge")}}const En=[{name:"grayscale"},{name:"blackWhite",fabricType:"blackwhite"},{name:"sharpen",uses:"Convolute",matrix:[0,-1,0,-1,5,-1,0,-1,0]},{name:"invert"},{name:"vintage"},{name:"polaroid"},{name:"kodachrome"},{name:"technicolor"},{name:"brownie"},{name:"sepia"},{name:"removeColor",fabricType:"removecolor",options:{distance:{type:"slider",current:.1,min:0,max:1,step:.01},color:{current:"#fff",type:"colorPicker"}}},{name:"brightness",options:{brightness:{type:"slider",current:.1,min:-1,max:1,step:.1}}},{name:"gamma",options:{red:{type:"slider",current:.1,min:.2,max:2.2,step:.003921},green:{type:"slider",current:.1,min:.2,max:2.2,step:.003921},blue:{type:"slider",current:.1,min:.2,max:2.2,step:.003921}},apply:t=>{t.gamma=[t.red,t.green,t.blue]}},{name:"noise",options:{noise:{type:"slider",current:40,min:1,max:600}}},{name:"pixelate",options:{blocksize:{type:"slider",min:1,max:40,current:6}}},{name:"blur",uses:"Convolute",matrix:[1/9,1/9,1/9,1/9,1/9,1/9,1/9,1/9,1/9]},{name:"emboss",uses:"Convolute",matrix:[1,1,1,1,.7,-1,-1,-1,-1]},{name:"blendColor",fabricType:"blendcolor",options:{alpha:{type:"slider",current:.5,min:.1,max:1,step:.1},mode:{current:"add",type:"select",available:[{key:"add"},{key:"multiply"},{key:"subtract"},{key:"diff"},{key:"screen"},{key:"lighten"},{key:"darken"}]},color:{type:"colorPicker",current:"#FF4081"}}}],F_={grayscale:ce("grayscale"),blackWhite:ce("Black & White"),sharpen:ce("Sharpen"),invert:ce("Invert"),vintage:ce("Vintage"),polaroid:ce("Polaroid"),kodachrome:ce("Kodachrome"),technicolor:ce("Technicolor"),brownie:ce("Brownie"),sepia:ce("Sepia"),removeColor:ce("Remove Color"),brightness:ce("Brightness"),gamma:ce("Gamma"),noise:ce("Noise"),pixelate:ce("Pixelate"),blur:ce("Blur"),emboss:ce("Emboss"),blendColor:ce("Blend Color")},ms={distance:ce("distance"),color:ce("color"),brightness:ce("brightness"),red:ce("red"),green:ce("green"),blue:ce("blue"),noise:ce("noise"),blocksize:ce("blocksize"),mode:ce("mode"),alpha:ce("alpha")};function On(t){return t&&t.charAt(0).toUpperCase()+t.slice(1)}class z_{constructor(){oe.subscribe(t=>t.history.pointer,()=>{this.syncState()})}apply(t){O().filter.select(t,this.hasOptions(t));const e=this.getByName(t);if(this.isApplied(e.name))return void this.remove(e.name);const i=this.create(e);this.getImages().forEach(t=>{var e;null==(e=t.filters)||e.push(i),t.applyFilters()}),this.syncState(),I().canvas.render()}remove(t){O().filter.deselect(t);const e=this.getByName(t);this.getImages().forEach(t=>{var i;const r=this.findFilterIndex(e.name,t.filters);null==(i=t.filters)||i.splice(r,1),t.applyFilters()}),this.syncState(),I().canvas.render()}getAll(){return En}getByName(t){return En.find(e=>e.name===t)}isApplied(t){const e=I().canvas.getMainImage();return!!e&&this.findFilterIndex(t,e.filters)>-1}applyValue(t,e,i){const r=this.getByName(t);this.getImages().forEach(t=>{const n=(t.filters||[]).find(t=>t.type.toLowerCase()===r.name.toLowerCase());!n||(n[e]=i,r.apply&&r.apply(n,e,i),t.applyFilters())}),I().canvas.render()}addCustom(t,e,i,r){const n=ve.fabric.Image.filters;n[On(t)]=ve.fabric.util.createClass(n.BaseFilter,e),n[On(t)].fromObject=n.BaseFilter.fromObject,En.push({name:t,options:i,initialConfig:r})}create(t){const e=t.initialConfig||{};let i;return t.uses?(e.matrix=t.matrix,i=new(ve.fabric.Image.filters[On(t.uses)])(e)):(Object.entries(t.options||{}).forEach(([t,i])=>{e[t]=i.current}),i=new(ve.fabric.Image.filters[On(t.name)])(e)),i.name=t.name,i}hasOptions(t){return!!this.getByName(t).options}findFilterIndex(t,e){if(null==e||!e.length)return-1;const i=this.getByName(t);return e.findIndex(t=>this.configMatchesFabricFilter(i,t))}syncState(){var t;const e=[];((null==(t=this.getImages()[0])?void 0:t.filters)||[]).forEach(t=>{const i=this.getByFabricFilter(t);i&&e.push(i.name)}),oe.setState({filter:{...O().filter,applied:e}})}getByFabricFilter(t){return En.find(e=>this.configMatchesFabricFilter(e,t))}configMatchesFabricFilter(t,e){const i=e.type.toLowerCase().replace(" ","");return i===t.fabricType||i===t.name||"convolute"===i&&this.matrixAreEqual(t.matrix,e.matrix)}matrixAreEqual(t,e){if(!t||!e||t.length!==e.length)return!1;for(let i=t.length;i--;)if(t[i]!==e[i])return!1;return!0}getImages(){return I().objects.getAll().filter(t=>t.name===Ne.Image||Ne.MainImage)}}function j_(t){return t.width<pu(t.usePercentages)&&(t.width=pu(t.usePercentages),t.maintainAspect&&(t.height=oo(t.width,t.usePercentages))),t.width>gu(t.usePercentages)&&(t.width=gu(t.usePercentages),t.maintainAspect&&(t.height=oo(t.width,t.usePercentages))),t.height<mu(t.usePercentages)&&(t.height=mu(t.usePercentages),t.maintainAspect&&(t.width=ua(t.height,t.usePercentages))),t.height>vu(t.usePercentages)&&(t.height=vu(t.usePercentages),t.maintainAspect&&(t.width=ua(t.height,t.usePercentages))),t}function pu(t){var e,i;const r=(null==(i=null==(e=O().config.tools)?void 0:e.resize)?void 0:i.minWidth)||50;return t?Math.ceil(100*r/O().original.width):r}function gu(t){var e,i;const r=(null==(i=null==(e=O().config.tools)?void 0:e.resize)?void 0:i.maxWidth)||2400;return t?Math.ceil(100*r/O().original.width):r}function mu(t){var e,i;const r=(null==(i=null==(e=O().config.tools)?void 0:e.resize)?void 0:i.minHeight)||50;return t?Math.ceil(100*r/O().original.height):r}function vu(t){var e,i;const r=(null==(i=null==(e=O().config.tools)?void 0:e.resize)?void 0:i.maxHeight)||2400;return t?Math.ceil(100*r/O().original.height):r}function ua(t,e){if(e)return t;const i=O().original.height/t;return Math.floor(O().original.width/i)}function oo(t,e){if(e)return t;const i=O().original.width/t;return Math.floor(O().original.height/i)}class B_{apply(t){const{width:e,height:i,usePercentages:r}=j_(t),n=Math.ceil(O().original.width),o=Math.ceil(O().original.height),a=Math.ceil(e),s=Math.ceil(i);let l,c;r?(l=e/100,c=i/100):(l=e/O().original.width,c=i/O().original.height),(n!==a||o!==s)&&this.resize(l,c)}resize(t,e){I().zoom.set(1,!1);const i=Math.round(O().original.height*e),r=Math.round(O().original.width*t);I().canvas.resize(r,i,{applyZoom:!1,resizeHelper:!0}),I().objects.getAll().forEach(i=>{const r=i.scaleX||1,n=i.scaleY||1,o=i.left||0,a=i.top||0,s=r*t,l=n*e,c=o*t,h=a*e;i.scaleX=s,i.scaleY=l,i.left=c,i.top=h,i.setCoords()}),I().zoom.fitToScreen(),he().requestRenderAll()}}function N_(t,e){null!==e.innerZone&&(V_(t,e),$_(t,e),H_(t,e))}function V_(t,e){e.innerZone.style.width=`${t.width}px`,e.innerZone.style.height=`${t.height}px`,e.innerZone.style.transform=`translate(${t.left}px, ${t.top}px)`}function $_(t,e){const i=O().canvasSize.width,r=O().canvasSize.height;e.maskTop.style.height=`${t.top}px`,e.maskTop.style.width=`${i}px`,e.maskLeft.style.top=`${t.top}px`,e.maskLeft.style.height=`${t.height}px`,e.maskLeft.style.width=`${t.left}px`;const n=t.left+t.width;e.maskRight.style.left=`${n}px`,e.maskRight.style.top=`${t.top}px`,e.maskRight.style.height=`${t.height}px`,e.maskRight.style.width=i-n+"px",e.maskBottom.style.height=r-(t.top+t.height)+"px",e.maskBottom.style.width=`${i}px`}function H_(t,e){const i=(t.width-2)/3;e.lineVer1.style.height=`${t.height}px`,e.lineVer1.style.transform=`translate(${i}px, 0)`,e.lineVer2.style.height=`${t.height}px`,e.lineVer2.style.transform=`translate(${2*i}px, 0)`;const r=(t.height-2)/3;e.lineHor1.style.width=`${t.width}px`,e.lineHor1.style.transform=`translate(0, ${r}px)`,e.lineHor2.style.width=`${t.width}px`,e.lineHor2.style.transform=`translate(0, ${2*r}px)`}function Sl(t,e,i){let r=e,n=i;return t&&(i*t>e?n=e/t:r=i*t),{width:Math.floor(r),height:Math.floor(n)}}function Cl(t){if(!t)return null;const e=t.split(":");return parseInt(e[0])/parseInt(e[1])}function U_(t,e=null){const i={width:t.width,height:t.height,top:0,left:0,angle:0};if(e){const t=Sl(e,i.width,i.height);i.width=t.width,i.height=t.height}return i.left=(t.width-i.width)/2,i.top=(t.height-i.height)/2,i}class W_{constructor(){Ce(this,"refs",null)}apply(t){var e;const i=null==(e=I().frame.active.config)?void 0:e.name,r=I().frame.active.currentSizeInPercent;return I().frame.active.hide(),I().merge.apply().then(()=>{I().canvas.resize(Math.round(t.width),Math.round(t.height),{applyZoom:!0,resizeHelper:!0});const e=I().canvas.getMainImage();e.cropX=Math.round(t.left),e.cropY=Math.round(t.top),e.width=Math.round(t.width),e.height=Math.round(t.height),e.viewportCenter(),i&&I().frame.add(i,r),I().zoom.fitToScreen(),I().canvas.render()})}drawZone(t){var e;null!=(e=this.refs)&&e.current&&(O().crop.setCropzoneRect(t),N_(t,this.refs.current))}resetCropzone(t){const e=O().canvasSize,i=Cl(t);if(!e)return;O().crop.setAspectRatio(t);const r=U_(e,i);this.drawZone(r)}registerRefs(t){this.refs=t}}class Y_{getShapeByName(t){var e,i;const r=null==(i=null==(e=O().config.tools)?void 0:e.shapes)?void 0:i.items;return(null==r?void 0:r.find(e=>e.name===t))||null}addBasicShape(t){var e;const i=this.getShapeByName(t);if(!i)return null;const{width:r,height:n,...o}=(null==(e=O().config.objectDefaults)?void 0:e.shape)||{},a={...o,...i.options};let s;if("circle"===i.name)s=new ve.fabric.Circle({...a,radius:100});else if("ellipse"===i.name)s=new ve.fabric.Ellipse({...a,rx:100,ry:50});else if("Path"===i.type)s=new ve.fabric.Path(a.path,{displayName:i.name,...a});else{const t=i.type;s=new ve.fabric[t]({...a,width:150,height:150})}return this.addAndPositionShape(s,Ne.Shape,{width:r,height:n}),s}addSticker(t,e){var i,r,n;const o=null==(n=null==(r=null==(i=O().config.tools)?void 0:i.stickers)?void 0:r.items)?void 0:n.find(e=>e.name===t);if(!o)return Promise.resolve();if("svg"===o.type){const t=ha(o,e);return this.addSvgSticker(t)}return this.addRegularSticker(o,e)}addRegularSticker(t,e){return new Promise(i=>{ve.fabric.util.loadImage(ha(t,e),t=>{var e;const{width:r,height:n,...o}=(null==(e=O().config.objectDefaults)?void 0:e.sticker)||{},a=new ve.fabric.Image(t,o);this.addAndPositionShape(a,Ne.Sticker,{width:r,height:n}),i()})})}addSvgSticker(t,e=Ne.Sticker){return new Promise(i=>{ve.fabric.loadSVGFromURL(t,(t,r)=>{var n;const{width:o,height:a,...s}=(null==(n=O().config.objectDefaults)?void 0:n.sticker)||{},l=ve.fabric.util.groupSVGElements(t,r);l.set(s),this.addAndPositionShape(l,e,{width:o,height:a}),i()})})}addAndPositionShape(t,e,{width:i}){t.name=e,t.scaleX=1,t.scaleY=1,he().add(t);const r=i||O().original.width*O().zoom/4;t.scaleToWidth(Math.min(150,r)),t.viewportCenter(),t.setCoords(),I().canvas.render(),he().setActiveObject(t)}}function ha(t,e){return ct(`images/stickers/${t.name}/${e}.${t.type}`)}class X_{constructor(t){Ce(this,"patternCache",[]),this.activeFrame=t}fillParts(t){this.patternCache.forEach(e=>{this.fillPartWithPattern(e,t)})}fillPartWithPattern(t,e){if(!this.activeFrame.parts)return;t.canvas=new ve.fabric.StaticCanvas(null),t.canvas.add(t.img);const i=new ve.fabric.Pattern({source:t.canvas.getElement(),repeat:"repeat"===e?"repeat":"no-repeat"});this.activeFrame.parts[t.name]&&this.activeFrame.parts[t.name].set("fill",i)}scale(t){if(!this.activeFrame.config||!this.patternCache)return;const e=this.activeFrame.config.mode;t/=he().getRetinaScaling(),this.patternCache.forEach(i=>{!this.activeFrame.parts||("top"===i.name||"bottom"===i.name?"stretch"===e?(this.scalePatternToWidth(i.img,this.activeFrame.parts.top.getScaledWidth()),this.scalePatternToHeight(i.img,t)):i.img.scaleToHeight(t):"left"===i.name||"right"===i.name?"stretch"===e?(this.scalePatternToWidth(i.img,t),this.scalePatternToHeight(i.img,this.activeFrame.parts.left.getScaledHeight())):i.img.scaleToWidth(t):"stretch"===e?(this.scalePatternToWidth(i.img,t),this.scalePatternToHeight(i.img,t)):i.img.scaleToWidth(t),i.canvas.setDimensions({width:i.img.getScaledWidth(),height:i.img.getScaledHeight()}))}),I().canvas.render()}scalePatternToWidth(t,e){if(!t.width)return;const i=t.getBoundingRect().width/t.getScaledWidth();t.set("scaleX",e/t.width/i),t.setCoords()}scalePatternToHeight(t,e){if(!t.height)return;const i=t.getBoundingRect().height/t.getScaledHeight();t.set("scaleY",e/t.height/i),t.setCoords()}load(t){const e=this.activeFrame.getPartNames().map(e=>new Promise(i=>{const r={...Pr,originX:"left",originY:"top"};O().config.crossOrigin&&(r.crossOrigin="anonymous"),ve.fabric.Image.fromURL(this.getPartUrl(t,e),t=>{i({name:e,img:t})},r)}));return Promise.all(e).then(e=>{this.patternCache=e,this.fillParts(t.mode)})}getPartUrl(t,e){return ct(`images/frames/${t.name}/${e}.png`)}}class G_{constructor(t,e){this.activeFrame=t,this.patterns=e}get defaultColor(){var t,e;return null==(e=null==(t=O().config.objectDefaults)?void 0:t.global)?void 0:e.fill}build(t,e){this.createParts(t),this.resize(e),this.activeFrame.config=t,"basic"!==t.mode?this.patterns.load(t).then(()=>{this.patterns.scale(e),I().canvas.render()}):I().canvas.render()}createParts(t){const e={};this.activeFrame.getPartNames().forEach(i=>{const r="basic"===t.mode?this.defaultColor:void 0;e[i]=new ve.fabric.Rect({...Pr,fill:r,originX:"left",originY:"top",name:`frame.rect.${i}`,objectCaching:!1,data:{pixieInternal:!0}}),he().add(e[i])}),this.activeFrame.parts=e}resize(t){const e=O().original.width,i=O().original.height,r=this.activeFrame,n=t;!r.parts||(r.parts.topLeft.set({width:n,height:n}),r.parts.topRight.set({left:e-r.parts.topLeft.getScaledWidth(),width:n,height:n}),r.parts.top.set({left:r.parts.topLeft.getScaledWidth()-1,width:e-r.parts.topLeft.getScaledWidth()-r.parts.topRight.getScaledWidth()+3,height:n}),r.parts.bottomLeft.set({top:i-r.parts.topLeft.getScaledHeight(),width:n,height:n}),r.parts.left.set({top:r.parts.topLeft.getScaledHeight()-1,width:n,height:i-r.parts.topLeft.getScaledHeight()-r.parts.bottomLeft.getScaledHeight()+3}),r.parts.bottomRight.set({left:e-r.parts.bottomLeft.getScaledWidth(),top:i-r.parts.topRight.getScaledWidth(),width:n,height:n}),r.parts.bottom.set({left:r.parts.top.left,top:i-r.parts.top.getScaledHeight(),width:r.parts.top.getScaledWidth(),height:n}),r.parts.right.set({left:e-r.parts.left.getScaledWidth(),top:r.parts.left.top,width:r.parts.left.width,height:r.parts.left.getScaledHeight()}))}}class q_{constructor(){Ce(this,"corners",["topLeft","topRight","bottomLeft","bottomRight"]),Ce(this,"sides",["top","right","bottom","left"]),Ce(this,"parts",null),Ce(this,"config",null),Ce(this,"currentSizeInPercent",100)}getPartNames(){return[...this.corners,...this.sides]}hide(){!this.parts||(Object.values(this.parts).forEach(t=>t.set({visible:!1})),I().canvas.render())}show(){!this.parts||(Object.values(this.parts).forEach(t=>t.set({visible:!0})),I().canvas.render())}remove(){!this.parts||(this.config=null,Object.values(this.parts).forEach(t=>{he().remove(t)}),this.parts=null,I().canvas.render())}is(t){return!!this.config&&this.config.name===t.name}changeColor(t){var e;"basic"!==(null==(e=this.config)?void 0:e.mode)||!this.parts||(Object.values(this.parts).forEach(e=>{e.set("fill",t)}),I().canvas.render())}getMinSize(){var t,e;return null!=(e=null==(t=this.config)?void 0:t.size.min)?e:1}getMaxSize(){var t,e;return null!=(e=null==(t=this.config)?void 0:t.size.max)?e:35}}class K_{constructor(){Ce(this,"patterns"),Ce(this,"builder"),Ce(this,"active"),this.active=new q_,this.patterns=new X_(this.active),this.builder=new G_(this.active,this.patterns),he().on("object:added",()=>{Object.values(this.active.parts||[]).forEach(t=>t.moveTo(98))})}add(t,e){const i=this.getByName(t);if(!i||this.active.is(i))return;this.active.remove(),this.active.currentSizeInPercent=null!=e?e:i.size.default;const r=this.calcFrameSizeInPixels(this.active.currentSizeInPercent);this.builder.build(i,r),O().frame.select(i)}resize(t){if(!this.active.parts||!this.active.config)return;t?this.active.currentSizeInPercent=t:t=this.active.currentSizeInPercent;const e=this.calcFrameSizeInPixels(t);this.builder.resize(e),this.patterns.scale(e),I().canvas.render()}changeColor(t){this.active.changeColor(t)}remove(){this.active.remove(),O().frame.deselect()}getByName(t){var e,i;const r=null==(i=null==(e=O().config.tools)?void 0:e.frame)?void 0:i.items;if(r)return r.find(e=>e.name===t)}getActiveFrameConfig(){return this.active.config}calcFrameSizeInPixels(t){const e=Math.min(O().original.width,O().original.height);return Math.ceil(t/100*e)}}const Z_=t=>{const e=new ve.fabric.PatternBrush(t);return e.getPatternSrc=function(){const t=ve.fabric.document.createElement("canvas");t.width=10,t.height=10;const e=t.getContext("2d");return e.strokeStyle=this.color,e.lineWidth=5,e.beginPath(),e.moveTo(0,5),e.lineTo(10,5),e.closePath(),e.stroke(),t},e},J_=t=>{const e=new ve.fabric.PatternBrush(t);return e.getPatternSrc=function(){const t=document.createElement("canvas");t.width=10,t.height=10;const e=t.getContext("2d");return e.strokeStyle=this.color,e.lineWidth=5,e.beginPath(),e.moveTo(5,0),e.lineTo(5,10),e.closePath(),e.stroke(),t},e},Q_=t=>{const e=new ve.fabric.PatternBrush(t);return e.getPatternSrc=function(){const t=this.width/2,e=document.createElement("canvas"),i=new ve.fabric.Rect({width:t,height:t,angle:45,fill:this.color}),r=i.getBoundingRect().width;e.width=r+5,e.height=r+5,i.set({left:r/2,top:r/2});const n=e.getContext("2d");return i.render(n),e},e},eS=t=>{const e=new ve.fabric.PatternBrush(t);return e.getPatternSrc=function(){const t=document.createElement("canvas");t.width=12,t.height=12;const e=t.getContext("2d");return e.fillStyle=this.color,e.fillRect(0,0,10,10),t},e};var _h,Sh;class tS{constructor(){Ce(this,"customBrushes",{VLineBrush:Z_,HLineBrush:J_,DiamondBrush:Q_,SquareBrush:eS}),Ce(this,"currentBrush",{type:"PencilBrush",color:null==(Sh=null==(_h=O().config.objectDefaults)?void 0:_h.global)?void 0:Sh.fill,width:ff[1]}),Ce(this,"onPathCreated",t=>{t.path.name=Ne.Drawing,t.path.set(rS()),O().setDirty(!0)})}enable(){he().on("path:created",this.onPathCreated),he().isDrawingMode=!0,this.setBrushType(this.currentBrush.type),this.setBrushSize(this.currentBrush.width)}disable(){he().off("path:created",this.onPathCreated),he().isDrawingMode=!1}getBrushType(){return this.currentBrush.type}setBrushType(t){this.currentBrush.type=t,he().freeDrawingBrush=t in ve.fabric?new ve.fabric[t](he()):this.customBrushes[t](he()),this.applyBrushStyles()}applyBrushStyles(){Object.keys(this.currentBrush).forEach(t=>{he().freeDrawingBrush[t]=this.currentBrush[t]});const t=he().freeDrawingBrush;t.getPatternSrc&&(t.source=t.getPatternSrc.call(t))}setBrushSize(t){this.currentBrush.width=t,this.applyBrushStyles()}getBrushSize(){return this.currentBrush.width}setBrushColor(t){this.currentBrush.color=t,this.applyBrushStyles()}getBrushColor(){return this.currentBrush.color}}function rS(){const t={...Pr};return delete t.strokeWidth,t}function cp(t){var e;return(null==(e=/(?:\.([^.]+))?$/.exec(t))?void 0:e[1])||""}function iS(t){const e={md:"text/markdown",markdown:"text/markdown",mp4:"video/mp4",mp3:"audio/mp3",svg:"image/svg+xml",jpg:"image/jpeg",png:"image/png",gif:"image/gif",yaml:"text/yaml",yml:"text/yaml"},i=t.name?cp(t.name):null;return t.type?t.type:i&&i in e?e[i]:"application/octet-stream"}let nS=0;function oS(){return nS}class qi{constructor(t,e){Ce(this,"id"),Ce(this,"fingerprint"),Ce(this,"name"),Ce(this,"relativePath",""),Ce(this,"size"),Ce(this,"mime",""),Ce(this,"extension",""),Ce(this,"native"),Ce(this,"lastModified"),Ce(this,"cachedData"),this.id=Ff(),this.name=t.name,this.size=t.size,this.mime=iS(t),this.lastModified=t.lastModified,this.extension=cp(t.name)||"bin",this.native=t,(e=(e=e||t.webkitRelativePath||"").replace(/^\/+/g,""))&&e.split("/").length>1&&(this.relativePath=e),this.fingerprint=sS({name:this.name,size:this.size,mime:this.mime,lastModified:this.lastModified})}get data(){return new Promise(t=>{this.cachedData&&t(this.cachedData);const e=new FileReader;e.addEventListener("load",()=>{this.cachedData=e.result,t(this.cachedData)}),"json"===this.extension?e.readAsText(this.native):e.readAsDataURL(this.native)})}}function sS({name:t,mime:e,size:i,relativePath:r,lastModified:n}){let o="be";return"string"==typeof t&&(o+=`-${bu(t.toLowerCase())}`),e&&(o+=`-${e}`),"string"==typeof r&&(o+=`-${bu(r.toLowerCase())}`),void 0!==i&&(o+=`-${i}`),void 0!==n&&(o+=`-${n}`),o+=`${oS()}`,`${o}-v1`}function aS(t){return t.charCodeAt(0).toString(32)}function bu(t){let e="";return t.replace(/[^A-Z0-9]/gi,t=>(e+=`-${aS(t)}`,"/"))+e}function lS(t={}){var e;const i=document.querySelector("#hidden-file-upload-input");i&&i.remove();const r=document.createElement("input");return r.type="file",r.multiple=null!=(e=t.multiple)&&e,r.classList.add("hidden"),r.style.display="none",r.style.visibility="hidden",r.id="hidden-file-upload-input",r.accept=cS(t),t.directory&&(r.webkitdirectory=!0),document.body.appendChild(r),r}function cS({extensions:t=[],types:e=[]}){const i=[];return null!=t&&t.length&&(t=t.map(t=>t.startsWith(".")?t:`.${t}`),i.push(t.join(","))),null!=e&&e.length&&i.push(e.join(",")),i.join(",")}function uS(t={}){return new Promise(e=>{const i=lS(t);i.onchange=t=>{const r=t.target.files;if(!r)return e([]);const n=Array.from(r).filter(t=>".DS_Store"!==t.name).map(t=>new qi(t));e(n),i.remove()},document.body.appendChild(i),i.click()})}async function hS(t,e=!0){const i=await op(t);if(i)return new Promise(t=>{i.name=Ne.Image,i.opacity=0;const r=O().original.width,n=O().original.height;if(e&&(i.width>=r||i.height>=n)){const t=r-.1*r,e=n-.1*n,o=1/Math.min(e/i.getScaledHeight(),t/i.getScaledWidth());i.scaleX*=1/o,i.scaleY*=1/o}O().fabric.add(i),O().fabric.setActiveObject(i),i.viewportCenter(),i.setCoords(),O().fabric.requestRenderAll(),I().zoom.fitToScreen(),i.animate("opacity","1",{duration:425,onChange:()=>{O().fabric.requestRenderAll()},onComplete:()=>{t(i)}})})}var Tl=(t=>(t.image="image/*",t.audio="audio/*",t.json="application/json",t.video="video/mp4,video/mpeg,video/x-m4v,video/*",t))(Tl||{});function fS(t){if(null==t||Number.isNaN(t))return"";const e=t<0,i=["B","KB","MB","GB","TB","PB","EB","ZB","YB"];if(e&&(t=-t),t<1)return(e?"-":"")+t+" B";const r=Math.min(Math.floor(Math.log(t)/Math.log(1024)),i.length-1);t=Number(t/Math.pow(1024,r));const n=i[r];return t>=10||t%1==0?`${(e?"-":"")+t.toFixed(0)} ${n}`:`${(e?"-":"")+t.toFixed(1)} ${n}`}function up(t,e){this.text=t=t||"",this.hasWild=~t.indexOf("*"),this.separator=e,this.parts=t.split(e)}up.prototype.match=function(t){var e,i,r=!0,n=this.parts,o=n.length;if("string"==typeof t||t instanceof String)if(this.hasWild||this.text==t){for(i=(t||"").split(this.separator),e=0;r&&e<o;e++)"*"!==n[e]&&(r=e<i.length&&n[e]===i[e]);r=r&&i}else r=!1;else if("function"==typeof t.splice)for(r=[],e=t.length;e--;)this.match(t[e])&&(r[r.length]=t[e]);else if("object"==typeof t)for(var a in r={},t)this.match(a)&&(r[a]=t[a]);return r};var dS=function(t,e,i){var r=new up(t,i||/[\/\.]/);return typeof e<"u"?r.match(e):r},pS=dS,gS=/[\/\+\.]/,mS=function(t,e){function i(e){var i=pS(e,t,gS);return i&&i.length>=2}return e?i(e.split(";")[0]):i};function vS(t,e){if(!e)return;const{maxFileSize:i,allowedFileTypes:r,blockedFileTypes:n}=e;return i&&null!=t.size&&t.size>i?ce("`:file` exceeds maximum allowed size of :size",{values:{file:t.name,size:fS(i)}}):null!=r&&r.length&&!yu(t,r)||null!=n&&n.length&&yu(t,n)?ce("This file type is not allowed"):void 0}function yu(t,e){return e.some(e=>e.includes("/")?!!t.mime&&mS(t.mime.replace(/;.*?$/,""),e):!(!e.replace(".","")||!t.extension)&&t.extension.toLowerCase()===e.toLowerCase())}function bS(t,e){if(null==t)return 0;switch(e){case"KB":return 1024*t;case"MB":return 1048576*t;case"GB":return t*1024**3;case"TB":return t*1024**4;case"PB":return t*1024**5;default:return t}}class yS{async uploadAndAddImage(){const t=await this.openUploadWindow();await this.openUploadedFile(t)}async uploadAndReplaceMainImage(){const t=await this.openUploadWindow();t&&await this.openBackgroundImage(t)}async uploadAndOpenStateFile(){const t=await this.openUploadWindow(xS);t&&await this.loadState(await t.data)}async openUploadedFile(t){var e,i,r;if(!t)return;const n=await t.data;switch(t.extension){case"json":await this.loadState(n);break;case"svg":await I().shape.addSvgSticker(n,Ne.Image),I().history.addHistoryItem({name:"overlayImage"});break;default:await hS(n,null==(r=null==(i=null==(e=O().config.tools)?void 0:e.import)?void 0:i.fitOverlayToScreen)||r),I().history.addHistoryItem({name:"overlayImage"})}}async loadState(t){let e;O().toggleLoading("state"),await Ws(),e="string"==typeof t?t.endsWith(".json")?await Co(t):JSON.parse(t):t,await I().history.addInitial(e),await I().history.reload(),O().toggleLoading(!1)}async openUploadWindow(t){var e,i;t=t||wS();const r=(await uS(t))[0];return this.fileIsValid(r)?(null==(i=(e=O().config).onFileOpen)||i.call(e,r),r):null}async openBackgroundImage(t){let e;await Ws(),e=t instanceof HTMLImageElement?t.src:t instanceof qi?await t.data:t;const i=await I().canvas.addMainImage(e);return await I().history.addInitial(),i}fileIsValid(t){var e,i,r,n,o,a;const s=vS(t,{maxFileSize:null!=(r=null==(i=null==(e=O().config.tools)?void 0:e.import)?void 0:i.maxFileSize)?r:bS(10,"MB"),allowedFileTypes:[...null!=(a=null==(o=null==(n=O().config.tools)?void 0:n.import)?void 0:o.validImgExtensions)?a:[],"json"]});return!s||(tn.danger(s),!1)}}function wS(){var t,e;const i=null==(e=null==(t=O().config.tools)?void 0:t.import)?void 0:e.validImgExtensions;return i?{extensions:i}:{types:[Tl.image]}}const xS={types:[".json",Tl.json]};class _S{constructor(){Ce(this,"watermark",null),Ce(this,"lineStyle",{stroke:"rgba(255,255,255,0.3)",strokeWidth:5,strokeLineCap:"round",strokeLineJoin:"round"})}add(t){this.createGroup(),this.addText(t),this.addLines(),he().add(this.watermark),I().canvas.render()}remove(){!this.watermark||(he().remove(this.watermark),this.watermark=null,I().canvas.render())}createGroup(){this.watermark=new ve.fabric.Group(void 0,{...Pr,width:O().original.width,height:O().original.height,excludeFromExport:!0,top:0,left:0,originX:"left",originY:"top"})}addText(t){var e;const i=new ve.fabric.Text(t,{fill:"rgba(255,255,255,0.3)",strokeWidth:2,stroke:"rgba(255,255,255,0.4)",originX:"center",originY:"center",fontWeight:600,fontSize:150,fontFamily:"Courier New"});i.scaleToWidth(O().original.width/2),null==(e=this.watermark)||e.add(i)}addLines(){var t;if(!this.watermark)return;const e=null==(t=this.watermark)?void 0:t.getObjects("text")[0],i=O().original.width/2,r=O().original.height/2,n=100,o=e.width/4,a=new ve.fabric.Line(void 0,this.lineStyle),s=new ve.fabric.Line(void 0,this.lineStyle),l=new ve.fabric.Line(void 0,this.lineStyle),c=new ve.fabric.Line(void 0,this.lineStyle);this.watermark.add(a,s,l,c),a.set({x1:o,y1:-n,x2:i,y2:-r}),s.set({x1:o,y1:n,x2:i,y2:r}),l.set({x1:-o,y1:-n,x2:-i,y2:-r}),c.set({x1:-o,y1:n,x2:-i,y2:r})}}var hp={exports:{}};function SS(t,e,i){e=e||"",i=i||512;const r=atob(t),n=[];for(let t=0;t<r.length;t+=i){const e=r.slice(t,t+i),o=new Array(e.length);for(let t=0;t<e.length;t++)o[t]=e.charCodeAt(t);const a=new Uint8Array(o);n.push(a)}return new Blob(n,{type:e})}!function(t){!function(){function e(t,e,i){var r=new XMLHttpRequest;r.open("GET",t),r.responseType="blob",r.onload=function(){a(r.response,e,i)},r.onerror=function(){console.error("could not download file")},r.send()}function i(t){var e=new XMLHttpRequest;e.open("HEAD",t,!1);try{e.send()}catch{}return 200<=e.status&&299>=e.status}function r(t){try{t.dispatchEvent(new MouseEvent("click"))}catch{var e=document.createEvent("MouseEvents");e.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),t.dispatchEvent(e)}}var n="object"==typeof window&&window.window===window?window:"object"==typeof self&&self.self===self?self:"object"==typeof Hr&&Hr.global===Hr?Hr:void 0,o=n.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),a=n.saveAs||("object"!=typeof window||window!==n?function(){}:"download"in HTMLAnchorElement.prototype&&!o?function(t,o,a){var s=n.URL||n.webkitURL,l=document.createElement("a");o=o||t.name||"download",l.download=o,l.rel="noopener","string"==typeof t?(l.href=t,l.origin===location.origin?r(l):i(l.href)?e(t,o,a):r(l,l.target="_blank")):(l.href=s.createObjectURL(t),setTimeout(function(){s.revokeObjectURL(l.href)},4e4),setTimeout(function(){r(l)},0))}:"msSaveOrOpenBlob"in navigator?function(t,n,o){if(n=n||t.name||"download","string"!=typeof t)navigator.msSaveOrOpenBlob(function(t,e){return typeof e>"u"?e={autoBom:!1}:"object"!=typeof e&&(console.warn("Deprecated: Expected third argument to be a object"),e={autoBom:!e}),e.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(t.type)?new Blob(["\ufeff",t],{type:t.type}):t}(t,o),n);else if(i(t))e(t,n,o);else{var a=document.createElement("a");a.href=t,a.target="_blank",setTimeout(function(){r(a)})}}:function(t,i,r,a){if((a=a||open("","_blank"))&&(a.document.title=a.document.body.innerText="downloading..."),"string"==typeof t)return e(t,i,r);var s="application/octet-stream"===t.type,l=/constructor/i.test(n.HTMLElement)||n.safari,c=/CriOS\/[\d]+/.test(navigator.userAgent);if((c||s&&l||o)&&typeof FileReader<"u"){var h=new FileReader;h.onloadend=function(){var t=h.result;t=c?t:t.replace(/^data:[^;]*;/,"data:attachment/file;"),a?a.location.href=t:location=t,a=null},h.readAsDataURL(t)}else{var u=n.URL||n.webkitURL,d=u.createObjectURL(t);a?a.location=d:location.href=d,a=null,setTimeout(function(){u.revokeObjectURL(d)},4e4)}});n.saveAs=a.saveAs=a,t.exports=a}()}(hp);class CS{save(t,e,i){var r,n,o;const a=null==(r=O().config.tools)?void 0:r.export;t=t||(null==a?void 0:a.defaultName),e=this.getFormat(e),i=this.getQuality(i);const s=`${t}.${e}`;this.applyWaterMark();const l="json"===e?this.getJsonState():this.getDataUrl(e,i);if(I().watermark.remove(),l)if(O().config.saveUrl)fetch(O().config.saveUrl,{method:"POST",body:JSON.stringify({data:l,filename:s,format:e})});else if(O().config.onSave)null==(o=(n=O().config).onSave)||o.call(n,l,s,e);else{const t=this.getCanvasBlob(e,l);hp.exports.saveAs(t,s)}}getDataUrl(t,e){this.prepareCanvas();try{return"svg"===t?he().toSVG():he().toDataURL({format:this.getFormat(t),quality:this.getQuality(e),multiplier:Math.max(O().original.width/he().width,O().original.height/he().height)})}catch(t){t.message.toLowerCase().includes("tainted")&&tn.danger(ce("Could not export canvas with external image."))}return null}getCanvasBlob(t,e){if("json"===t)return new Blob([e],{type:"application/json"});if("svg"===t)return new Blob([e],{type:"image/svg+xml"});const i=`image/${t}`;return SS(e=e.replace(/data:image\/([a-z]*)?;base64,/,""),i)}getJsonState(){return JSON.stringify(Zn())}prepareCanvas(){he().discardActiveObject()}applyWaterMark(){const t=O().config.watermarkText;t&&I().watermark.add(t)}getFormat(t){var e;const i=null==(e=O().config.tools)?void 0:e.export;return"jpg"===(t=t||(null==i?void 0:i.defaultFormat)||"png")&&(t="jpeg"),t}getQuality(t){var e;const i=null==(e=O().config.tools)?void 0:e.export;return t||(null==i?void 0:i.defaultQuality)||.8}}class TS{constructor(){Ce(this,"previewRect",null)}async apply(t){this.previewRect||this.showPreview(),this.updatePreview(t),he().remove(this.previewRect),he().clipPath=this.previewRect;const e=I().export.getDataUrl();e&&I().canvas.clear(),this.hidePreview(),e&&await I().canvas.addMainImage(e),he().clipPath=void 0}getPreviewRadius(){var t;return(null==(t=this.previewRect)?void 0:t.rx)||0}updatePreview(t){!this.previewRect||(this.previewRect.set({rx:t,ry:t}),I().canvas.render())}showPreview(){this.previewRect=new ve.fabric.Rect({width:O().original.width,height:O().original.height,rx:50,ry:50,objectCaching:!1,fill:"transparent",name:"round.rect",data:{pixieInternal:!0},stroke:"rgba(255,255,255,0.8)",strokeWidth:3,strokeDashArray:[4,4],selectable:!1,evented:!1}),he().add(this.previewRect),this.previewRect.moveTo(99),this.previewRect.viewportCenter(),I().canvas.render()}hidePreview(){!this.previewRect||(he().remove(this.previewRect),I().canvas.render(),this.previewRect=null)}}class kS{get straightenAnchor(){return he().getObjects().find(t=>t.name===Ne.StraightenAnchor)}rotateLeft(){this.rotateFixed(-90)}rotateRight(){this.rotateFixed(90)}straighten(t){this.storeObjectsRelationToHelper(),I().objects.deselectActive();const e=(this.straightenAnchor.data.rotateAngle||0)+t,i=this.getImageScale(e,this.straightenAnchor);this.straightenAnchor.angle=e,this.straightenAnchor.scaleX=i,this.straightenAnchor.scaleY=i,this.straightenAnchor.data.straightenAngle=t,this.transformObjectsBasedOnHelper()}flip(t){const e="horizontal"===t?"flipY":"flipX";I().objects.getAll().forEach(t=>{t[e]=!t[e]}),I().canvas.render()}rotateFixed(t){I().zoom.set(1,!1),I().objects.deselectActive();const e=this.straightenAnchor.data.rotateAngle||0;t=90*Math.round(t/90);const i=e+(this.straightenAnchor.data.straightenAngle||0)+t;I().canvas.resize(O().original.height,O().original.width,{applyZoom:!1,resizeHelper:!1}),this.storeObjectsRelationToHelper(),this.straightenAnchor.rotate(i),this.straightenAnchor.data.rotateAngle=e+t,this.straightenAnchor.center(),this.transformObjectsBasedOnHelper(),I().frame.resize(I().frame.active.currentSizeInPercent),requestAnimationFrame(()=>{I().zoom.fitToScreen()})}getImageScale(t,e){t=ve.fabric.util.degreesToRadians(t);const i=O().original.width/2,r=O().original.height/2,n=e.width/2,o=e.height/2,a=Math.sqrt(i**2+r**2),s=Math.asin(r/a);let l=(t%(2*Math.PI)+4*Math.PI)%(2*Math.PI);l>Math.PI&&(l-=Math.PI),l>Math.PI/2&&l<=Math.PI&&(l=Math.PI/2-(l-Math.PI/2));const c=Math.PI/2-s-Math.abs(l),h=Math.abs(s-Math.abs(l)),u=Math.cos(c)*a,d=Math.cos(h)*a;return Math.max(d/n,u/o)}storeObjectsRelationToHelper(){I().objects.getAll().forEach(t=>{if(t!==this.straightenAnchor){const e=ve.fabric.util.multiplyTransformMatrices(ve.fabric.util.invertTransform(this.straightenAnchor.calcTransformMatrix()),t.calcTransformMatrix());t.data={...t.data,relationToCanvas:e}}})}transformObjectsBasedOnHelper(){I().objects.getAll().forEach(t=>{if(t.data.relationToCanvas){const e=ve.fabric.util.multiplyTransformMatrices(this.straightenAnchor.calcTransformMatrix(),t.data.relationToCanvas),i=ve.fabric.util.qrDecompose(e);t.set({flipX:!1,flipY:!1}),t.setPositionByOrigin({x:i.translateX,y:i.translateY},"center","center"),t.set(i),t.setCoords(),t.data.relationToCanvas=null}})}resetStraightenAnchor(){const t=this.straightenAnchor;t&&he().remove(t);const e=new ve.fabric.Rect({...Pr,name:Ne.StraightenAnchor,visible:!1,width:O().original.width,height:O().original.height,data:{pixieInternal:!0,straightenAngle:0,rotateAngle:0}});he().add(e),e.viewportCenter()}}function ES(t){const e=x_(t);O().editor.fabric=e,oe.setState({fabric:e}),O().editor.tools={canvas:new S_,objects:new P_,zoom:new __,history:new I_,filter:new z_,resize:new B_,crop:new W_,merge:new L_,shape:new Y_,frame:new K_,text:new A_,draw:new tS,transform:new kS,import:new yS,watermark:new _S,export:new CS,corners:new TS}}function wu(t,e){const i=new ResizeObserver(t=>{const i=t[0].contentRect;e({width:i.width,height:i.height})});return t.current&&i.observe(t.current),()=>{t.current&&i.unobserve(t.current)}}function xu(t){const e=t.getBoundingClientRect();return{top:e.top,right:e.right,bottom:e.bottom,left:e.left,width:e.width,height:e.height}}const fp="flex flex-shrink-0 items-center justify-between px-12 py-[9px] w-full h-[54px]",dp={initial:{opacity:0},animate:{opacity:1},exit:{opacity:0,position:"absolute"},transition:{type:"tween",duration:.15}};function kl(t,{padding:e,equalWidth:i,variant:r}={}){switch(t){case"xs":return"link"===r?"text-xs":`text-xs h-30 ${i?"w-30":e||"px-14"}`;case"sm":return"link"===r?"text-sm":`text-sm h-36 ${i?"w-36":e||"px-18"}`;case"md":return"link"===r?"text-base":`text-base h-42 ${i?"w-42":e||"px-22"}`;case"lg":return"link"===r?"text-lg":`text-base h-50 ${i?"w-50":e||"px-26"}`;case"xl":return"link"===r?"text-xl":`text-lg h-60 ${i?"w-60":e||"px-32"}`;default:return t||""}}function OS(t){switch(t){case"xs":return"icon-xs";case"sm":case"md":return"icon-sm";case"lg":return"icon-lg";case"xl":return"icon-xl";default:return""}}function PS(t){const{variant:e}=t,i={...t,border:t.border||"border"};let r=[];return"outline"===e?r=MS(i):"text"===e?r=AS(i):"flat"===e||"raised"===e?r=IS(i):"link"===e&&(r=DS(i)),[...r,"raised"===e&&"shadow-md",e&&"align-middle whitespace-nowrap inline-flex items-center transition-button duration-200","select-none appearance-none no-underline outline-none disabled:pointer-events-none disabled:cursor-default"]}function MS({color:t,border:e}){const i="disabled:text-disabled disabled:bg-transparent disabled:border-disabled-bg";switch(t){case"primary":return[`text-primary bg-transparent ${e} border-primary/50`,"hover:bg-primary/hover hover:border-primary",i];case"danger":return[`text-danger bg-transparent ${e} border-danger/50`,"hover:bg-danger/4 hover:border-danger",i];case"paper":return[`text bg-paper ${e}`,"hover:bg-hover",i];default:return[`bg-transparent ${e}`,"hover:bg-hover",i]}}function AS({color:t}){const e="disabled:text-disabled disabled:bg-transparent";switch(t){case"primary":return["text-primary bg-transparent border-transparent","hover:bg-primary/4",e];case"danger":return["text-danger bg-transparent border-transparent","hover:bg-danger/4",e];default:return["bg-transparent border-transparent","hover:bg-hover",e]}}function DS({color:t}){switch(t){case"primary":return["text-primary","hover:underline","disabled:text-disabled"];case"danger":return["text-danger","hover:underline","disabled:text-disabled"];default:return["text-main","hover:underline","disabled:text-disabled"]}}function IS({color:t,border:e}){const i="disabled:text-disabled disabled:bg-disabled disabled:border-transparent disabled:shadow-none";switch(t){case"primary":return[`text-on-primary bg-primary ${e} border-primary`,"hover:bg-primary-dark hover:border-primary-dark",i];case"danger":return[`text-white bg-danger ${e} border-danger`,"hover:bg-danger/90 hover:border-danger/90",i];case"chip":return[`text-main bg-chip ${e} border-chip`,"hover:bg-chip/90 hover:border-chip/90",i];case"paper":return[`text-main bg-paper ${e} border-paper`,"hover:bg-paper/90 hover:bg-paper-90",i];default:return[`bg ${e} border-background`,"hover:bg-hover",i]}}function Mt(t){if(t)return e=>{e.currentTarget.contains(e.target)&&t(e)}}const Bt=et((t,e)=>{const{children:i,color:r=null,variant:n,radius:o,justify:a="justify-center",className:s,href:l,form:c,border:h,elementType:u,to:d,replace:p,end:f,type:g="button",onClick:m,onPointerDown:v,onPointerUp:b,onKeyDown:y,...w}=t,_=u||(l?"a":"button"),S="a"===_;return x(_,{ref:e,form:S?void 0:c,href:l,to:d,type:S?void 0:g,replace:p,end:f,onPointerDown:Mt(v),onPointerUp:Mt(b),onClick:Mt(m),onKeyDown:Mt(y),className:ue("focus-visible:ring",PS({variant:n,color:r,border:h}),o,a,s),...w,children:i})}),Qe=ae.forwardRef(({children:t,startIcon:e,endIcon:i,size:r="sm",className:n,equalWidth:o=!1,radius:a="rounded",variant:s="text",...l},c)=>{const h=ue("font-semibold",kl(r,{equalWidth:o,variant:s}),n);return ie(Bt,{className:h,ref:c,radius:a,variant:s,...l,children:[e&&x(_u,{position:"start",icon:e,size:r}),t,i&&x(_u,{position:"end",icon:i,size:r})]})});function _u({icon:t,position:e,size:i}){const r=ue("m-auto",{"-ml-4 mr-8":"start"===e,"-mr-4 ml-8":"end"===e},t.props.className);return ae.cloneElement(t,{className:r,size:i})}var pp={exports:{}};!function(t){(function(){var e=Object.assign;function i(t,i){i||(i={});var r,n,o=i.vargs||function(t){var e=t+"",i=e.indexOf("...");return i>=0&&(i<e.indexOf(")")||e.indexOf("arguments")>=0)}(t),a=Object.create(null),s=[],l=[],c=new WeakMap,h=i.maxAge>0&&i.maxAge<1/0?function(t,e,r){return setTimeout(function(){if(r)return e.splice(t,1),void r.splice(t,1);e instanceof WeakMap?e.delete(t):delete e[t]},i.maxAge)}:0,u=i.equals?i.equals:function(t,e){return t===e},d=i.maxArgs,p=i.serializer;return 1!==t.length||i.equals||o?r=function(){var e,i=d||arguments.length;for(e=s.length-1;e>=0;e--)if(d||s[e].length===i)for(var r=i-1;r>=0&&u(s[e][r],arguments[r]);r--)if(0===r)return l[e];return e=s.length-(e+1),!h||h(e,l,s),l[e]=t.apply(this,s[e]=arguments)}.bind(this):(r=function(e){var i,r=typeof e;if(!p&&("object"===r&&e||"function"===r))return c.get(e)||(!h||h(e,c),c.set(e,i=t.call(this,e)),i);var n="number"===r||"boolean"===r||null==e?e:"string"===r?JSON.stringify(e):p(e);return a[n]||(!h||h(n,a),a[n]=t.call(this,e))}.bind(this),n=1),r.clear=function(){c=new WeakMap,a=Object.create(null),s=[],l=[]},r.keys=function(){return n?null:s.slice()},r.values=function(){return n?null:l.slice()},r.keyValues=function(){return n?{primitives:e({},a),objects:c}:null},r}"function"!=typeof e&&(e=function(){var t=arguments,e=arguments[0];if(null==e)throw new TypeError("Cannot convert undefined or null to object");e=Object(e);for(var i=1;i<t.length;i++)if(t[i]&&"object"==typeof t[i])for(var r in t[i])e[r]=t[i][r];return e}),t.exports=i,typeof window<"u"&&(window.nanomemoize=i)}).call(Hr)}(pp);const ln=pp.exports;function RS({children:t,label:e,index:i}){const r=yt();return ie("div",{role:"group",className:ue(0!==i&&"border-t my-4"),"aria-labelledby":e?`be-select-${r}`:void 0,children:[e&&x("div",{className:"block uppercase text-muted text-xs px-16 py-10",role:"presentation",id:`be-select-${r}`,"aria-hidden":"true",children:e}),t]})}const LS=ln(({maxItems:t,children:e,items:i,inputValue:r})=>{let n=zS({children:e,items:i}),o=FS({collection:n,inputValue:r});return t&&(n=new Map([...n.entries()].slice(0,t)),o=new Map([...o.entries()].slice(0,t))),{collection:n,filteredCollection:o}}),FS=ln(({collection:t,inputValue:e})=>{let i=new Map;const r=e?`${e}`.toLowerCase().trim():"";if(r){let e=0;t.forEach((t,n)=>{(t.item?JSON.stringify(t.item):t.textLabel).toLowerCase().trim().includes(r)&&i.set(n,{...t,index:e++})})}else i=t;return i}),zS=ln(({children:t,items:e})=>{let i;i=e&&"function"==typeof t?e.map(e=>t(e)):t;const r=new Map;let n=0;const o=(t,i,o,a)=>{const s=n++,l=i?null==e?void 0:e[o].items[a]:null==e?void 0:e[s];r.set(t.props.value,{index:s,element:t,textLabel:jS(t),item:l,section:i,isDisabled:t.props.isDisabled,value:t.props.value})};return Sr.forEach(i,(t,e)=>{!tr(t)||(t.type===RS?Sr.forEach(t.props.children,(i,r)=>{o(i,t,e,r)}):o(t))}),r});function jS(t){var e;const i=t.props.children;return t.props.textLabel?t.props.textLabel:i&&(null==(e=i.props)?void 0:e.defaultMessage)?i.props.defaultMessage[0].value:`${i}`||""}function bi(t){return t.split("-")[0]}function cn(t){return t.split("-")[1]}function un(t){return["top","bottom"].includes(bi(t))?"x":"y"}function El(t){return"y"===t?"height":"width"}function Su(t,e,i){let{reference:r,floating:n}=t;const o=r.x+r.width/2-n.width/2,a=r.y+r.height/2-n.height/2,s=un(e),l=El(s),c=r[l]/2-n[l]/2,h="x"===s;let u;switch(bi(e)){case"top":u={x:o,y:r.y-n.height};break;case"bottom":u={x:o,y:r.y+r.height};break;case"right":u={x:r.x+r.width,y:a};break;case"left":u={x:r.x-n.width,y:a};break;default:u={x:r.x,y:r.y}}switch(cn(e)){case"start":u[s]-=c*(i&&h?-1:1);break;case"end":u[s]+=c*(i&&h?-1:1)}return u}const BS=async(t,e,i)=>{const{placement:r="bottom",strategy:n="absolute",middleware:o=[],platform:a}=i,s=await(null==a.isRTL?void 0:a.isRTL(e));let l=await a.getElementRects({reference:t,floating:e,strategy:n}),{x:c,y:h}=Su(l,r,s),u=r,d={},p=0;for(let i=0;i<o.length;i++){const{name:f,fn:g}=o[i],{x:m,y:v,data:b,reset:y}=await g({x:c,y:h,initialPlacement:r,placement:u,strategy:n,middlewareData:d,rects:l,platform:a,elements:{reference:t,floating:e}});c=null!=m?m:c,h=null!=v?v:h,d={...d,[f]:{...d[f],...b}},y&&p<=50&&(p++,"object"==typeof y&&(y.placement&&(u=y.placement),y.rects&&(l=!0===y.rects?await a.getElementRects({reference:t,floating:e,strategy:n}):y.rects),({x:c,y:h}=Su(l,u,s))),i=-1)}return{x:c,y:h,placement:u,strategy:n,middlewareData:d}};function NS(t){return{top:0,right:0,bottom:0,left:0,...t}}function gp(t){return"number"!=typeof t?NS(t):{top:t,right:t,bottom:t,left:t}}function so(t){return{...t,top:t.y,left:t.x,right:t.x+t.width,bottom:t.y+t.height}}async function Ol(t,e){var i;void 0===e&&(e={});const{x:r,y:n,platform:o,rects:a,elements:s,strategy:l}=t,{boundary:c="clippingAncestors",rootBoundary:h="viewport",elementContext:u="floating",altBoundary:d=!1,padding:p=0}=e,f=gp(p),g=s[d?"floating"===u?"reference":"floating":u],m=so(await o.getClippingRect({element:null==(i=await(null==o.isElement?void 0:o.isElement(g)))||i?g:g.contextElement||await(null==o.getDocumentElement?void 0:o.getDocumentElement(s.floating)),boundary:c,rootBoundary:h,strategy:l})),v=so(o.convertOffsetParentRelativeRectToViewportRelativeRect?await o.convertOffsetParentRelativeRectToViewportRelativeRect({rect:"floating"===u?{...a.floating,x:r,y:n}:a.reference,offsetParent:await(null==o.getOffsetParent?void 0:o.getOffsetParent(s.floating)),strategy:l}):a[u]);return{top:m.top-v.top+f.top,bottom:v.bottom-m.bottom+f.bottom,left:m.left-v.left+f.left,right:v.right-m.right+f.right}}const VS=Math.min,yr=Math.max;function fa(t,e,i){return yr(t,VS(e,i))}const Cu=t=>({name:"arrow",options:t,async fn(e){const{element:i,padding:r=0}=null!=t?t:{},{x:n,y:o,placement:a,rects:s,platform:l}=e;if(null==i)return{};const c=gp(r),h={x:n,y:o},u=un(a),d=cn(a),p=El(u),f=await l.getDimensions(i),g="y"===u?"top":"left",m="y"===u?"bottom":"right",v=s.reference[p]+s.reference[u]-h[u]-s.floating[p],b=h[u]-s.reference[u],y=await(null==l.getOffsetParent?void 0:l.getOffsetParent(i));let x=y?"y"===u?y.clientHeight||0:y.clientWidth||0:0;0===x&&(x=s.floating[p]);const w=v/2-b/2,_=c[g],S=x-f[p]-c[m],C=x/2-f[p]/2+w,O=fa(_,C,S),k=("start"===d?c[g]:c[m])>0&&C!==O&&s.reference[p]<=s.floating[p]?C<_?_-C:S-C:0;return{[u]:h[u]-k,data:{[u]:O,centerOffset:C-O}}}}),$S={left:"right",right:"left",bottom:"top",top:"bottom"};function ao(t){return t.replace(/left|right|bottom|top/g,t=>$S[t])}function HS(t,e,i){void 0===i&&(i=!1);const r=cn(t),n=un(t),o=El(n);let a="x"===n?r===(i?"end":"start")?"right":"left":"start"===r?"bottom":"top";return e.reference[o]>e.floating[o]&&(a=ao(a)),{main:a,cross:ao(a)}}const US={start:"end",end:"start"};function Tu(t){return t.replace(/start|end/g,t=>US[t])}function WS(t){const e=ao(t);return[Tu(t),e,Tu(e)]}const YS=function(t){return void 0===t&&(t={}),{name:"flip",options:t,async fn(e){var i;const{placement:r,middlewareData:n,rects:o,initialPlacement:a,platform:s,elements:l}=e,{mainAxis:c=!0,crossAxis:h=!0,fallbackPlacements:u,fallbackStrategy:d="bestFit",flipAlignment:p=!0,...f}=t,g=bi(r),m=[a,...u||(g!==a&&p?WS(a):[ao(a)])],v=await Ol(e,f),b=[];let y=(null==(i=n.flip)?void 0:i.overflows)||[];if(c&&b.push(v[g]),h){const{main:t,cross:e}=HS(r,o,await(null==s.isRTL?void 0:s.isRTL(l.floating)));b.push(v[t],v[e])}if(y=[...y,{placement:r,overflows:b}],!b.every(t=>t<=0)){var x,w;const t=(null!=(x=null==(w=n.flip)?void 0:w.index)?x:0)+1,e=m[t];if(e)return{data:{index:t,overflows:y},reset:{placement:e}};let i="bottom";switch(d){case"bestFit":{var _;const t=null==(_=y.map(t=>[t,t.overflows.filter(t=>t>0).reduce((t,e)=>t+e,0)]).sort((t,e)=>t[1]-e[1])[0])?void 0:_[0].placement;t&&(i=t);break}case"initialPlacement":i=a}if(r!==i)return{reset:{placement:i}}}return{}}}};async function XS(t,e){const{placement:i,platform:r,elements:n}=t,o=await(null==r.isRTL?void 0:r.isRTL(n.floating)),a=bi(i),s=cn(i),l="x"===un(i),c=["left","top"].includes(a)?-1:1,h=o&&l?-1:1,u="function"==typeof e?e(t):e;let{mainAxis:d,crossAxis:p,alignmentAxis:f}="number"==typeof u?{mainAxis:u,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...u};return s&&"number"==typeof f&&(p="end"===s?-1*f:f),l?{x:p*h,y:d*c}:{x:d*c,y:p*h}}const GS=function(t){return void 0===t&&(t=0),{name:"offset",options:t,async fn(e){const{x:i,y:r}=e,n=await XS(e,t);return{x:i+n.x,y:r+n.y,data:n}}}};function qS(t){return"x"===t?"y":"x"}const KS=function(t){return void 0===t&&(t={}),{name:"shift",options:t,async fn(e){const{x:i,y:r,placement:n}=e,{mainAxis:o=!0,crossAxis:a=!1,limiter:s={fn:t=>{let{x:e,y:i}=t;return{x:e,y:i}}},...l}=t,c={x:i,y:r},h=await Ol(e,l),u=un(bi(n)),d=qS(u);let p=c[u],f=c[d];if(o){const t="y"===u?"bottom":"right";p=fa(p+h["y"===u?"top":"left"],p,p-h[t])}if(a){const t="y"===d?"bottom":"right";f=fa(f+h["y"===d?"top":"left"],f,f-h[t])}const g=s.fn({...e,[u]:p,[d]:f});return{...g,data:{x:g.x-i,y:g.y-r}}}}},ZS=function(t){return void 0===t&&(t={}),{name:"size",options:t,async fn(e){const{placement:i,rects:r,platform:n,elements:o}=e,{apply:a=()=>{},...s}=t,l=await Ol(e,s),c=bi(i),h=cn(i);let u,d;"top"===c||"bottom"===c?(u=c,d=h===(await(null==n.isRTL?void 0:n.isRTL(o.floating))?"start":"end")?"left":"right"):(d=c,u="end"===h?"top":"bottom");const p=yr(l.left,0),f=yr(l.right,0),g=yr(l.top,0),m=yr(l.bottom,0),v={availableHeight:r.floating.height-(["left","right"].includes(i)?2*(0!==g||0!==m?g+m:yr(l.top,l.bottom)):l[u]),availableWidth:r.floating.width-(["top","bottom"].includes(i)?2*(0!==p||0!==f?p+f:yr(l.left,l.right)):l[d])};await a({...e,...v});const b=await n.getDimensions(o.floating);return r.floating.width!==b.width||r.floating.height!==b.height?{reset:{rects:!0}}:{}}}};function mp(t){return t&&t.document&&t.location&&t.alert&&t.setInterval}function Nt(t){if(null==t)return window;if(!mp(t)){const e=t.ownerDocument;return e&&e.defaultView||window}return t}function ir(t){return Nt(t).getComputedStyle(t)}function zt(t){return mp(t)?"":t?(t.nodeName||"").toLowerCase():""}function vp(){const t=navigator.userAgentData;return null!=t&&t.brands?t.brands.map(t=>t.brand+"/"+t.version).join(" "):navigator.userAgent}function kt(t){return t instanceof Nt(t).HTMLElement}function nr(t){return t instanceof Nt(t).Element}function JS(t){return t instanceof Nt(t).Node}function lo(t){return!(typeof ShadowRoot>"u")&&(t instanceof Nt(t).ShadowRoot||t instanceof ShadowRoot)}function Ao(t){const{overflow:e,overflowX:i,overflowY:r}=ir(t);return/auto|scroll|overlay|hidden/.test(e+r+i)}function QS(t){return["table","td","th"].includes(zt(t))}function bp(t){const e=/firefox/i.test(vp()),i=ir(t);return"none"!==i.transform||"none"!==i.perspective||"paint"===i.contain||["transform","perspective"].includes(i.willChange)||e&&"filter"===i.willChange||e&&!!i.filter&&"none"!==i.filter}function yp(){return!/^((?!chrome|android).)*safari/i.test(vp())}const ku=Math.min,Pi=Math.max,co=Math.round;function jt(t,e,i){var r,n,o,a;void 0===e&&(e=!1),void 0===i&&(i=!1);const s=t.getBoundingClientRect();let l=1,c=1;e&&kt(t)&&(l=t.offsetWidth>0&&co(s.width)/t.offsetWidth||1,c=t.offsetHeight>0&&co(s.height)/t.offsetHeight||1);const h=nr(t)?Nt(t):window,u=!yp()&&i,d=(s.left+(u&&null!=(r=null==(n=h.visualViewport)?void 0:n.offsetLeft)?r:0))/l,p=(s.top+(u&&null!=(o=null==(a=h.visualViewport)?void 0:a.offsetTop)?o:0))/c,f=s.width/l,g=s.height/c;return{width:f,height:g,top:p,right:d+f,bottom:p+g,left:d,x:d,y:p}}function ur(t){return((JS(t)?t.ownerDocument:t.document)||window.document).documentElement}function Do(t){return nr(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function wp(t){return jt(ur(t)).left+Do(t).scrollLeft}function eC(t){const e=jt(t);return co(e.width)!==t.offsetWidth||co(e.height)!==t.offsetHeight}function tC(t,e,i){const r=kt(e),n=ur(e),o=jt(t,r&&eC(e),"fixed"===i);let a={scrollLeft:0,scrollTop:0};const s={x:0,y:0};if(r||!r&&"fixed"!==i)if(("body"!==zt(e)||Ao(n))&&(a=Do(e)),kt(e)){const t=jt(e,!0);s.x=t.x+e.clientLeft,s.y=t.y+e.clientTop}else n&&(s.x=wp(n));return{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}function xp(t){return"html"===zt(t)?t:t.assignedSlot||t.parentNode||(lo(t)?t.host:null)||ur(t)}function Eu(t){return kt(t)&&"fixed"!==ir(t).position?t.offsetParent:null}function rC(t){let e=xp(t);for(lo(e)&&(e=e.host);kt(e)&&!["html","body"].includes(zt(e));){if(bp(e))return e;{const t=e.parentNode;e=lo(t)?t.host:t}}return null}function da(t){const e=Nt(t);let i=Eu(t);for(;i&&QS(i)&&"static"===ir(i).position;)i=Eu(i);return i&&("html"===zt(i)||"body"===zt(i)&&"static"===ir(i).position&&!bp(i))?e:i||rC(t)||e}function Ou(t){if(kt(t))return{width:t.offsetWidth,height:t.offsetHeight};const e=jt(t);return{width:e.width,height:e.height}}function iC(t){let{rect:e,offsetParent:i,strategy:r}=t;const n=kt(i),o=ur(i);if(i===o)return e;let a={scrollLeft:0,scrollTop:0};const s={x:0,y:0};if((n||!n&&"fixed"!==r)&&(("body"!==zt(i)||Ao(o))&&(a=Do(i)),kt(i))){const t=jt(i,!0);s.x=t.x+i.clientLeft,s.y=t.y+i.clientTop}return{...e,x:e.x-a.scrollLeft+s.x,y:e.y-a.scrollTop+s.y}}function nC(t,e){const i=Nt(t),r=ur(t),n=i.visualViewport;let o=r.clientWidth,a=r.clientHeight,s=0,l=0;if(n){o=n.width,a=n.height;const t=yp();(t||!t&&"fixed"===e)&&(s=n.offsetLeft,l=n.offsetTop)}return{width:o,height:a,x:s,y:l}}function oC(t){var e;const i=ur(t),r=Do(t),n=null==(e=t.ownerDocument)?void 0:e.body,o=Pi(i.scrollWidth,i.clientWidth,n?n.scrollWidth:0,n?n.clientWidth:0),a=Pi(i.scrollHeight,i.clientHeight,n?n.scrollHeight:0,n?n.clientHeight:0);let s=-r.scrollLeft+wp(t);const l=-r.scrollTop;return"rtl"===ir(n||i).direction&&(s+=Pi(i.clientWidth,n?n.clientWidth:0)-o),{width:o,height:a,x:s,y:l}}function _p(t){const e=xp(t);return["html","body","#document"].includes(zt(e))?t.ownerDocument.body:kt(e)&&Ao(e)?e:_p(e)}function uo(t,e){var i;void 0===e&&(e=[]);const r=_p(t),n=r===(null==(i=t.ownerDocument)?void 0:i.body),o=Nt(r),a=n?[o].concat(o.visualViewport||[],Ao(r)?r:[]):r,s=e.concat(a);return n?s:s.concat(uo(a))}function sC(t,e){const i=null==e.getRootNode?void 0:e.getRootNode();if(t.contains(e))return!0;if(i&&lo(i)){let i=e;do{if(i&&t===i)return!0;i=i.parentNode||i.host}while(i)}return!1}function aC(t,e){const i=jt(t,!1,"fixed"===e),r=i.top+t.clientTop,n=i.left+t.clientLeft;return{top:r,left:n,x:n,y:r,right:n+t.clientWidth,bottom:r+t.clientHeight,width:t.clientWidth,height:t.clientHeight}}function Pu(t,e,i){return"viewport"===e?so(nC(t,i)):nr(e)?aC(e,i):so(oC(ur(t)))}function lC(t){const e=uo(t),i=["absolute","fixed"].includes(ir(t).position)&&kt(t)?da(t):t;return nr(i)?e.filter(t=>nr(t)&&sC(t,i)&&"body"!==zt(t)):[]}function cC(t){let{element:e,boundary:i,rootBoundary:r,strategy:n}=t;const o=[..."clippingAncestors"===i?lC(e):[].concat(i),r],a=o[0],s=o.reduce((t,i)=>{const r=Pu(e,i,n);return t.top=Pi(r.top,t.top),t.right=ku(r.right,t.right),t.bottom=ku(r.bottom,t.bottom),t.left=Pi(r.left,t.left),t},Pu(e,a,n));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}}const uC={getClippingRect:cC,convertOffsetParentRelativeRectToViewportRelativeRect:iC,isElement:nr,getDimensions:Ou,getOffsetParent:da,getDocumentElement:ur,getElementRects:t=>{let{reference:e,floating:i,strategy:r}=t;return{reference:tC(e,da(i),r),floating:{...Ou(i),x:0,y:0}}},getClientRects:t=>Array.from(t.getClientRects()),isRTL:t=>"rtl"===ir(t).direction};function hC(t,e,i,r){void 0===r&&(r={});const{ancestorScroll:n=!0,ancestorResize:o=!0,elementResize:a=!0,animationFrame:s=!1}=r,l=n&&!s,c=o&&!s,h=l||c?[...nr(t)?uo(t):[],...uo(e)]:[];h.forEach(t=>{l&&t.addEventListener("scroll",i,{passive:!0}),c&&t.addEventListener("resize",i)});let u=null;if(a){let r=!0;u=new ResizeObserver(()=>{r||i(),r=!1}),nr(t)&&!s&&u.observe(t),u.observe(e)}let d,p=s?jt(t):null;return s&&function e(){const r=jt(t);p&&(r.x!==p.x||r.y!==p.y||r.width!==p.width||r.height!==p.height)&&i(),p=r,d=requestAnimationFrame(e)}(),i(),()=>{var t;h.forEach(t=>{l&&t.removeEventListener("scroll",i),c&&t.removeEventListener("resize",i)}),null==(t=u)||t.disconnect(),u=null,s&&cancelAnimationFrame(d)}}const fC=(t,e,i)=>BS(t,e,{platform:uC,...i});var pa=typeof document<"u"?pi:xe;function ho(t,e){if(t===e)return!0;if(typeof t!=typeof e)return!1;if("function"==typeof t&&t.toString()===e.toString())return!0;let i,r,n;if(t&&e&&"object"==typeof t){if(Array.isArray(t)){if(i=t.length,i!=e.length)return!1;for(r=i;0!==r--;)if(!ho(t[r],e[r]))return!1;return!0}if(n=Object.keys(t),i=n.length,i!==Object.keys(e).length)return!1;for(r=i;0!==r--;)if(!Object.prototype.hasOwnProperty.call(e,n[r]))return!1;for(r=i;0!==r--;){const i=n[r];if(!("_owner"===i&&t.$$typeof||ho(t[i],e[i])))return!1}return!0}return t!=t&&e!=e}function dC(t){const e=Se.useRef(t);return pa(()=>{e.current=t}),e}function pC(t){let{middleware:e,placement:i="bottom",strategy:r="absolute",whileElementsMounted:n}=void 0===t?{}:t;const[o,a]=Se.useState({x:null,y:null,strategy:r,placement:i,middlewareData:{}}),[s,l]=Se.useState(e);ho(null==s?void 0:s.map(t=>{let{name:e,options:i}=t;return{name:e,options:i}}),null==e?void 0:e.map(t=>{let{name:e,options:i}=t;return{name:e,options:i}}))||l(e);const c=Se.useRef(null),h=Se.useRef(null),u=Se.useRef(null),d=Se.useRef(o),p=dC(n),f=Se.useCallback(()=>{!c.current||!h.current||fC(c.current,h.current,{middleware:s,placement:i,strategy:r}).then(t=>{g.current&&!ho(d.current,t)&&(d.current=t,om.flushSync(()=>{a(t)}))})},[s,i,r]);pa(()=>{g.current&&f()},[f]);const g=Se.useRef(!1);pa(()=>(g.current=!0,()=>{g.current=!1}),[]);const m=Se.useCallback(()=>{if("function"==typeof u.current&&(u.current(),u.current=null),c.current&&h.current)if(p.current){const t=p.current(c.current,h.current,f);u.current=t}else f()},[f,p]),v=Se.useCallback(t=>{c.current=t,m()},[m]),b=Se.useCallback(t=>{h.current=t,m()},[m]),y=Se.useMemo(()=>({reference:c,floating:h}),[]);return Se.useMemo(()=>({...o,update:f,refs:y,reference:v,floating:b}),[o,f,y,v,b])}const gC=t=>{const{element:e,padding:i}=t;return{name:"arrow",options:t,fn:t=>function(t){return Object.prototype.hasOwnProperty.call(t,"current")}(e)?null!=e.current?Cu({element:e.current,padding:i}).fn(t):{}:e?Cu({element:e,padding:i}).fn(t):{}}};function mC(t){return e=>{t.forEach(t=>{"function"==typeof t?t(e):null!=t&&(t.current=e)})}}function Sp({floatingWidth:t,ref:e,disablePositioning:i=!1,placement:r="bottom",offset:n=2,showArrow:o=!1}){const a=de(null),s={placement:r};i||(s.whileElementsMounted=hC,s.middleware=[GS(n),YS({padding:16}),KS({padding:16}),ZS({apply({rects:e,availableHeight:i,availableWidth:r,elements:n}){"matchTrigger"===t&&Object.assign(n.floating.style,{width:`${e.reference.width}px`,maxWidth:`${r}`,maxHeight:`${Math.min(i,420)}px`})},padding:16})],o&&s.middleware.push(gC({element:a})));const l=pC(s),c=Je(()=>mC([e,l.reference]),[l.reference,e]),{x:h,y:u}=l.middlewareData.arrow||{},d={top:"bottom",right:"left",bottom:"top",left:"right"}[l.placement.split("-")[0]],p={left:h,top:u,right:"",bottom:"",[d]:"-4px"};return{...l,reference:c,arrowRef:a,arrowStyle:p}}function Cp(t,e){const{children:i,items:r,role:n="listbox",virtualFocus:o,loopFocus:a=!1,onItemSelected:s,clearInputOnItemSelection:l,floatingWidth:c="matchTrigger",floatingMinWidth:h,offset:u,placement:d,showCheckmark:p,showEmptyMessage:f,maxItems:g,isAsync:m}=t,v=t.selectionMode||"none",b=`${yt()}-listbox`,[y,x]=kr(t.inputValue,t.defaultInputValue||"",t.onInputValueChange),[w,_]=Ae("all"),S=LS({children:i,items:r,inputValue:y,maxItems:g}),C="all"===w?S.collection:S.filteredCollection,O=de([]),k=Je(()=>[...C.values()].map(t=>t.isDisabled?null:t.textLabel),[C]),{selectedValues:T,selectValues:E}=bC(t),[P,M]=kr(t.isOpen,t.defaultIsOpen,t.onOpenChange),[A,I]=Ae(null),j=Sp({floatingWidth:c,ref:e,placement:d,offset:u}),{refs:D,floating:R,strategy:L,x:z,y:F}=j,N="none"===v?void 0:C.get(T[0]),B="none"===v||null==N?void 0:N.index,V=Ie((t,e)=>{var i,r;const n=[...C.values()],s=!n.find(t=>!t.isDisabled),l=C.size-1;null==e||!C.size||e>l||e<0||s?I(null):(e=vC(n,e,a,t),I(e),o?null==(i=O.current[e])||i.scrollIntoView({block:"nearest"}):null==(r=O.current[e])||r.focus())},[C,o,a]);return{handleItemSelection:t=>{if("none"!==v)E(t);else{const t=D.reference.current;t&&"focus"in t&&t.focus()}o&&x(l?"":`${t}`),M(!1),I(null),null==s||s(t)},onInputChange:Ie(t=>{x(t.target.value),m||_(t.target.value.trim()?"filtered":"all"),t.target.value?M(!0):E("")},[x,M,_,E,m]),loopFocus:a,floatingWidth:c,floatingMinWidth:h,showCheckmark:p,collection:C,virtualFocus:o,focusItem:V,showEmptyMessage:f,refs:D,reference:j.reference,floating:R,positionStyle:{position:L,top:null!=F?F:"",left:null!=z?z:""},listContent:k,listItemsRef:O,listboxId:b,role:n,state:{activeIndex:A,setActiveIndex:I,selectedIndex:B,setSelectedIndex:t=>{if("none"!==v){const e=[...C.values()][t];e&&E(e.value)}},selectionMode:v,selectedValues:T,selectValues:E,inputValue:y,setInputValue:x,isOpen:P,setIsOpen:M,setActiveCollection:_}}}function vC(t,e,i,r){var n;const o=t.length-1;for(;null!=(n=t[e])&&n.isDisabled;)if("increment"===r){if(++e>=o){if(!i)return e-1;e=0}}else if(--e<0){if(!i)return e+1;e=o}return e}function bC(t){const{selectionMode:e,allowEmptySelection:i}=t,r="single"===e||"multiple"===e,[n,o]=kr(r?t.selectedValue:void 0,r?t.defaultSelectedValue:void 0,r?t.onSelectionChange:void 0),a=Je(()=>null==n||""===n?[]:Array.isArray(n)?n:[n],[n]),s=Ie(t=>{const r=Array.isArray(t)?t:[t];"single"===e?o(r[0]):r.forEach(t=>{const e=a.indexOf(t);-1===e?(a.push(t),o([...a])):(a.length>1||i)&&(a.splice(e,1),o([...a]))})},[i,a,e,o]);return{selectedValues:a,selectValues:s}}const Tp=sr(null);function kp(){return De(Tp)}const ga=me(x("path",{d:"M9 16.17 4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41L9 16.17z"}),"CheckOutlined"),yC=ae.forwardRef((t,e)=>{let{startIcon:i,capitalizeFirst:r,children:n,description:o,endIcon:a,endSection:s,isDisabled:l,isActive:c,isSelected:h,showCheckmark:u,...d}=t;!i&&u&&(i=x(ga,{size:"sm",className:ue("text-primary",!h&&"invisible")}));const p=ue("icon-sm rounded overflow-hidden flex-shrink-0",!l&&"text-muted");return ie("div",{...d,"aria-disabled":l,className:wC(t),ref:e,children:[i&&x("div",{className:p,children:i}),ie("div",{className:ue("mr-auto",r&&"first-letter:capitalize"),children:[n,o&&x("div",{className:ue("text-xs mt-4 whitespace-normal",l?"text-disabled":"text-muted"),children:o})]}),(a||s)&&x("div",{className:a?p:"text-muted",children:a||s})]})});function wC({className:t,isSelected:e,isActive:i,isDisabled:r,showCheckmark:n}){let o="";return o=r?"text-disabled pointer-events-none":e?i?"bg-primary/focus":"bg-primary/selected hover:bg-primary/focus":i?"hover:bg-fg-base/15 bg-focus":"hover:bg-hover",ue("w-full select-none outline-none cursor-pointer","py-8 text-sm truncate flex items-center gap-10 text-main",n?"px-8":"px-20",o,t)}function Io({children:t,value:e,startIcon:i,endIcon:r,endSection:n,description:o,capitalizeFirst:a,textLabel:s,isDisabled:l,onSelected:c,onClick:h,...u}){var d;const{collection:p,showCheckmark:f,virtualFocus:g,listboxId:m,role:v,listItemsRef:b,handleItemSelection:y,state:{selectedValues:w,activeIndex:_,setActiveIndex:S}}=kp(),C=w.includes(e),O=null==(d=p.get(e))?void 0:d.index,k=_===O;return null==O?null:x(yC,{...u,onFocus:()=>{g||S(O)},onPointerEnter:t=>{S(O),g||t.currentTarget.focus()},onPointerDown:t=>{g&&t.preventDefault()},onKeyDown:t=>{("Enter"===t.key||" "===t.key)&&(t.preventDefault(),y(e),null==c||c())},onClick:t=>{y(e),null==c||c(),null==h||h(t)},ref:t=>b.current[O]=t,id:`${m}-${O}`,role:"menu"===v?"menuitem":"option",tabIndex:g?void 0:k&&!l?-1:0,"aria-selected":k&&C,showCheckmark:f,isDisabled:l,isActive:k,isSelected:C,startIcon:i,description:o,endIcon:r,endSection:n,capitalizeFirst:a,children:t})}const xC=768;function _C(){return!(u_()||typeof window>"u")&&window.screen.width<=xC}const Pl={initial:{opacity:0,y:5},animate:{opacity:1,y:0},exit:{opacity:0,y:5},transition:{type:"tween",duration:.125}};function Ml(){const{width:t,height:e}=v_();return{"--be-viewport-height":`${e}px`,"--be-viewport-width":`${t}px`}}function SC(t){return!(0!==t.mozInputSource||!t.isTrusted)||0===t.detail&&!t.pointerType}class CC{isDefaultPrevented(){return this.nativeEvent.defaultPrevented}preventDefault(){this.defaultPrevented=!0,this.nativeEvent.preventDefault()}stopPropagation(){this.nativeEvent.stopPropagation(),this.isPropagationStopped=()=>!0}isPropagationStopped(){return!1}persist(){}constructor(t,e){this.nativeEvent=e,this.target=e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget,this.bubbles=e.bubbles,this.cancelable=e.cancelable,this.defaultPrevented=e.defaultPrevented,this.eventPhase=e.eventPhase,this.isTrusted=e.isTrusted,this.timeStamp=e.timeStamp,this.type=t}}function TC(t){let e=de({isFocused:!1,onBlur:t,observer:null});return e.current.onBlur=t,Ft(()=>{const t=e.current;return()=>{t.observer&&(t.observer.disconnect(),t.observer=null)}},[]),Ie(t=>{if(t.target instanceof HTMLButtonElement||t.target instanceof HTMLInputElement||t.target instanceof HTMLTextAreaElement||t.target instanceof HTMLSelectElement){e.current.isFocused=!0;let i=t.target,r=t=>{var r,n;e.current.isFocused=!1,i.disabled&&(null===(n=(r=e.current).onBlur)||void 0===n||n.call(r,new CC("blur",t))),e.current.observer&&(e.current.observer.disconnect(),e.current.observer=null)};i.addEventListener("focusout",r,{once:!0}),e.current.observer=new MutationObserver(()=>{e.current.isFocused&&i.disabled&&(e.current.observer.disconnect(),i.dispatchEvent(new FocusEvent("blur")),i.dispatchEvent(new FocusEvent("focusout",{bubbles:!0})))}),e.current.observer.observe(i,{attributes:!0,attributeFilter:["disabled"]})}},[])}const kC=ae.createContext(null);kC.displayName="PressResponderContext";let hn=null,EC=new Set,Mu=!1,Er=!1,ma=!1;function Al(t,e){for(let i of EC)i(t,e)}function OC(t){return!(t.metaKey||!ip()&&t.altKey||t.ctrlKey||"Control"===t.key||"Shift"===t.key||"Meta"===t.key)}function Au(t){Er=!0,OC(t)&&(hn="keyboard",Al("keyboard",t))}function Nr(t){hn="pointer",("mousedown"===t.type||"pointerdown"===t.type)&&(Er=!0,Al("pointer",t))}function PC(t){SC(t)&&(Er=!0,hn="virtual")}function MC(t){t.target===window||t.target===document||(!Er&&!ma&&(hn="virtual",Al("virtual",t)),Er=!1,ma=!1)}function AC(){Er=!1,ma=!0}function Du(){if(typeof window>"u"||Mu)return;let t=HTMLElement.prototype.focus;HTMLElement.prototype.focus=function(){Er=!0,t.apply(this,arguments)},document.addEventListener("keydown",Au,!0),document.addEventListener("keyup",Au,!0),document.addEventListener("click",PC,!0),window.addEventListener("focus",MC,!0),window.addEventListener("blur",AC,!1),typeof PointerEvent<"u"?(document.addEventListener("pointerdown",Nr,!0),document.addEventListener("pointermove",Nr,!0),document.addEventListener("pointerup",Nr,!0)):(document.addEventListener("mousedown",Nr,!0),document.addEventListener("mousemove",Nr,!0),document.addEventListener("mouseup",Nr,!0)),Mu=!0}function DC(){return hn}function IC(t){let{isDisabled:e,onBlurWithin:i,onFocusWithin:r,onFocusWithinChange:n}=t,o=de({isFocusWithin:!1}),a=Ie(t=>{o.current.isFocusWithin&&!t.currentTarget.contains(t.relatedTarget)&&(o.current.isFocusWithin=!1,i&&i(t),n&&n(!1))},[i,n,o]),s=TC(a),l=Ie(t=>{o.current.isFocusWithin||(r&&r(t),n&&n(!0),o.current.isFocusWithin=!0,s(t))},[r,n,s]);return e?{focusWithinProps:{onFocus:null,onBlur:null}}:{focusWithinProps:{onFocus:l,onBlur:a}}}function RC(t){let{ref:e,onInteractOutside:i,isDisabled:r,onInteractOutsideStart:n}=t,o=de({isPointerDown:!1,ignoreEmulatedMouseEvents:!1,onInteractOutside:i,onInteractOutsideStart:n}).current;o.onInteractOutside=i,o.onInteractOutsideStart=n,xe(()=>{if(r)return;let t=t=>{Pn(t,e)&&o.onInteractOutside&&(o.onInteractOutsideStart&&o.onInteractOutsideStart(t),o.isPointerDown=!0)};if(typeof PointerEvent<"u"){let i=t=>{o.isPointerDown&&o.onInteractOutside&&Pn(t,e)&&(o.isPointerDown=!1,o.onInteractOutside(t))};return document.addEventListener("pointerdown",t,!0),document.addEventListener("pointerup",i,!0),()=>{document.removeEventListener("pointerdown",t,!0),document.removeEventListener("pointerup",i,!0)}}{let i=t=>{o.ignoreEmulatedMouseEvents?o.ignoreEmulatedMouseEvents=!1:o.isPointerDown&&o.onInteractOutside&&Pn(t,e)&&(o.isPointerDown=!1,o.onInteractOutside(t))},r=t=>{o.ignoreEmulatedMouseEvents=!0,o.onInteractOutside&&o.isPointerDown&&Pn(t,e)&&(o.isPointerDown=!1,o.onInteractOutside(t))};return document.addEventListener("mousedown",t,!0),document.addEventListener("mouseup",i,!0),document.addEventListener("touchstart",t,!0),document.addEventListener("touchend",r,!0),()=>{document.removeEventListener("mousedown",t,!0),document.removeEventListener("mouseup",i,!0),document.removeEventListener("touchstart",t,!0),document.removeEventListener("touchend",r,!0)}}},[e,o,r])}function Pn(t,e){if(t.button>0)return!1;if(t.target){const e=t.target.ownerDocument;if(!e||!e.documentElement.contains(t.target))return!1}return e.current&&!e.current.contains(t.target)}function LC(t){if("virtual"===DC()){let e=document.activeElement;m_(()=>{document.activeElement===e&&document.contains(t)&&cu(t)})}else cu(t)}function FC(t){if(!(t instanceof HTMLElement||t instanceof SVGElement))return!1;let{display:e,visibility:i}=t.style,r="none"!==e&&"hidden"!==i&&"collapse"!==i;if(r){const{getComputedStyle:e}=t.ownerDocument.defaultView;let{display:i,visibility:n}=e(t);r="none"!==i&&"hidden"!==n&&"collapse"!==n}return r}function zC(t,e){return!t.hasAttribute("hidden")&&("DETAILS"!==t.nodeName||!e||"SUMMARY"===e.nodeName||t.hasAttribute("open"))}function Ep(t,e){return"#comment"!==t.nodeName&&FC(t)&&zC(t,e)&&(!t.parentElement||Ep(t.parentElement,t))}typeof document<"u"&&("loading"!==document.readyState?Du():document.addEventListener("DOMContentLoaded",Du));const va=ae.createContext(null);let it=null,ni=new Map;function Ro(t){let{children:e,contain:i,restoreFocus:r,autoFocus:n}=t,o=de(),a=de(),s=de([]),l=De(va),c=null==l?void 0:l.scopeRef;Ft(()=>{let t=o.current.nextSibling,e=[];for(;t&&t!==a.current;)e.push(t),t=t.nextSibling;s.current=e},[e,c]),Ft(()=>(ni.set(s,c),()=>{(s===it||Lo(s,it))&&(!c||ni.has(c))&&(it=c),ni.delete(s)}),[s,c]),$C(s,i),WC(s,r,i),UC(s,n);let h=BC(s);return ae.createElement(va.Provider,{value:{scopeRef:s,focusManager:h}},ae.createElement("span",{"data-focus-scope-start":!0,hidden:!0,ref:o}),e,ae.createElement("span",{"data-focus-scope-end":!0,hidden:!0,ref:a}))}function jC(){var t;return null===(t=De(va))||void 0===t?void 0:t.focusManager}function BC(t){return{focusNext(e={}){let i=t.current,{from:r,tabbable:n,wrap:o,accept:a}=e,s=r||document.activeElement,l=i[0].previousElementSibling,c=Yt(Kr(i),{tabbable:n,accept:a},i);c.currentNode=vt(s,i)?s:l;let h=c.nextNode();return!h&&o&&(c.currentNode=l,h=c.nextNode()),h&&At(h,!0),h},focusPrevious(e={}){let i=t.current,{from:r,tabbable:n,wrap:o,accept:a}=e,s=r||document.activeElement,l=i[i.length-1].nextElementSibling,c=Yt(Kr(i),{tabbable:n,accept:a},i);c.currentNode=vt(s,i)?s:l;let h=c.previousNode();return!h&&o&&(c.currentNode=l,h=c.previousNode()),h&&At(h,!0),h},focusFirst(e={}){let i=t.current,{tabbable:r,accept:n}=e,o=Yt(Kr(i),{tabbable:r,accept:n},i);o.currentNode=i[0].previousElementSibling;let a=o.nextNode();return a&&At(a,!0),a},focusLast(e={}){let i=t.current,{tabbable:r,accept:n}=e,o=Yt(Kr(i),{tabbable:r,accept:n},i);o.currentNode=i[i.length-1].nextElementSibling;let a=o.previousNode();return a&&At(a,!0),a}}}const Dl=["input:not([disabled]):not([type=hidden])","select:not([disabled])","textarea:not([disabled])","button:not([disabled])","a[href]","area[href]","summary","iframe","object","embed","audio[controls]","video[controls]","[contenteditable]"],NC=Dl.join(":not([hidden]),")+",[tabindex]:not([disabled]):not([hidden])";Dl.push('[tabindex]:not([tabindex="-1"]):not([disabled])');const VC=Dl.join(':not([hidden]):not([tabindex="-1"]),');function Kr(t){return t[0].parentElement}function $C(t,e){let i=de(),r=de(null);Ft(()=>{let n=t.current;if(!e)return void(r.current&&(cancelAnimationFrame(r.current),r.current=null));let o=e=>{if("Tab"!==e.key||e.altKey||e.ctrlKey||e.metaKey||t!==it)return;let i=document.activeElement,r=t.current;if(!vt(i,r))return;let n=Yt(Kr(r),{tabbable:!0},r);n.currentNode=i;let o=e.shiftKey?n.previousNode():n.nextNode();o||(n.currentNode=e.shiftKey?r[r.length-1].nextElementSibling:r[0].previousElementSibling,o=e.shiftKey?n.previousNode():n.nextNode()),e.preventDefault(),o&&At(o,!0)},a=e=>{!it||Lo(it,t)?(it=t,i.current=e.target):t!==it||Iu(e.target,t)?t===it&&(i.current=e.target):i.current?i.current.focus():it&&Op(it.current)},s=e=>{r.current=requestAnimationFrame(()=>{t===it&&!Iu(document.activeElement,t)&&(it=t,i.current=e.target,i.current.focus())})};return document.addEventListener("keydown",o,!1),document.addEventListener("focusin",a,!1),n.forEach(t=>t.addEventListener("focusin",a,!1)),n.forEach(t=>t.addEventListener("focusout",s,!1)),()=>{document.removeEventListener("keydown",o,!1),document.removeEventListener("focusin",a,!1),n.forEach(t=>t.removeEventListener("focusin",a,!1)),n.forEach(t=>t.removeEventListener("focusout",s,!1))}},[t,e]),xe(()=>()=>{r.current&&cancelAnimationFrame(r.current)},[r])}function HC(t){for(let e of ni.keys())if(vt(t,e.current))return!0;return!1}function vt(t,e){return e.some(e=>e.contains(t))}function Iu(t,e){for(let i of ni.keys())if((i===e||Lo(e,i))&&vt(t,i.current))return!0;return!1}function Lo(t,e){let i=ni.get(e);return!!i&&(i===t||Lo(t,i))}function At(t,e=!1){if(null==t||e){if(null!=t)try{t.focus()}catch{}}else try{LC(t)}catch{}}function Op(t){let e=t[0].previousElementSibling,i=Yt(Kr(t),{tabbable:!0},t);i.currentNode=e,At(i.nextNode())}function UC(t,e){const i=ae.useRef(e);xe(()=>{i.current&&(it=t,vt(document.activeElement,it.current)||Op(t.current)),i.current=!1},[])}function WC(t,e,i){const r=de(typeof document<"u"?document.activeElement:null);Ft(()=>{let n=r.current;if(!e)return;let o=e=>{if("Tab"!==e.key||e.altKey||e.ctrlKey||e.metaKey)return;let i=document.activeElement;if(!vt(i,t.current))return;let r=Yt(document.body,{tabbable:!0});r.currentNode=i;let o=e.shiftKey?r.previousNode():r.nextNode();if((!document.body.contains(n)||n===document.body)&&(n=null),(!o||!vt(o,t.current))&&n){r.currentNode=n;do{o=e.shiftKey?r.previousNode():r.nextNode()}while(vt(o,t.current));e.preventDefault(),e.stopPropagation(),o?At(o,!0):HC(n)?At(n,!0):i.blur()}};return i||document.addEventListener("keydown",o,!0),()=>{i||document.removeEventListener("keydown",o,!0),e&&n&&vt(document.activeElement,t.current)&&requestAnimationFrame(()=>{document.body.contains(n)&&document.activeElement===document.body&&At(n)})}},[t,e,i])}function Yt(t,e,i){let r=null!=e&&e.tabbable?VC:NC,n=document.createTreeWalker(t,NodeFilter.SHOW_ELEMENT,{acceptNode(t){var n;return null!=e&&null!==(n=e.from)&&void 0!==n&&n.contains(t)?NodeFilter.FILTER_REJECT:!t.matches(r)||!Ep(t)||i&&!vt(t,i)||null!=e&&e.accept&&!e.accept(t)?NodeFilter.FILTER_SKIP:NodeFilter.FILTER_ACCEPT}});return null!=e&&e.from&&(n.currentNode=e.from),n}class YC{getStringForLocale(t,e){let i=this.strings[e];i||(i=XC(e,this.strings,this.defaultLocale),this.strings[e]=i);let r=i[t];if(!r)throw new Error(`Could not find intl message ${t} in ${e} locale`);return r}constructor(t,e="en-US"){this.strings={...t},this.defaultLocale=e}}function XC(t,e,i="en-US"){if(e[t])return e[t];let r=GC(t);if(e[r])return e[r];for(let t in e)if(t.startsWith(r+"-"))return e[t];return e[i]}function GC(t){return Intl.Locale?new Intl.Locale(t).language:t.split("-")[0]}let vs=new Map,ba=!1;try{ba="exceptZero"===new Intl.NumberFormat("de-DE",{signDisplay:"exceptZero"}).resolvedOptions().signDisplay}catch{}let fo=!1;try{fo="unit"===new Intl.NumberFormat("de-DE",{style:"unit",unit:"degree"}).resolvedOptions().style}catch{}const Pp={degree:{narrow:{default:"°","ja-JP":" 度","zh-TW":"度","sl-SI":" °"}}};class Fo{format(t){let e="";if(e=ba||null==this.options.signDisplay?this.numberFormatter.format(t):KC(this.numberFormatter,this.options.signDisplay,t),"unit"===this.options.style&&!fo){var i;let{unit:t,unitDisplay:r="short",locale:n}=this.resolvedOptions(),o=null===(i=Pp[t])||void 0===i?void 0:i[r];e+=o[n]||o.default}return e}formatToParts(t){return this.numberFormatter.formatToParts(t)}formatRange(t,e){if("function"==typeof this.numberFormatter.formatRange)return this.numberFormatter.formatRange(t,e);if(e<t)throw new RangeError("End date must be >= start date");return`${this.format(t)} – ${this.format(e)}`}formatRangeToParts(t,e){if("function"==typeof this.numberFormatter.formatRangeToParts)return this.numberFormatter.formatRangeToParts(t,e);if(e<t)throw new RangeError("End date must be >= start date");let i=this.numberFormatter.formatToParts(t),r=this.numberFormatter.formatToParts(e);return[...i.map(t=>({...t,source:"startRange"})),{type:"literal",value:" – ",source:"shared"},...r.map(t=>({...t,source:"endRange"}))]}resolvedOptions(){let t=this.numberFormatter.resolvedOptions();return!ba&&null!=this.options.signDisplay&&(t={...t,signDisplay:this.options.signDisplay}),!fo&&"unit"===this.options.style&&(t={...t,style:"unit",unit:this.options.unit,unitDisplay:this.options.unitDisplay}),t}constructor(t,e={}){this.numberFormatter=qC(t,e),this.options=e}}function qC(t,e={}){let{numberingSystem:i}=e;if(i&&-1===t.indexOf("-u-nu-")&&(t=`${t}-u-nu-${i}`),"unit"===e.style&&!fo){var r;let{unit:t,unitDisplay:i="short"}=e;if(!t)throw new Error('unit option must be provided with style: "unit"');if(null===(r=Pp[t])||void 0===r||!r[i])throw new Error(`Unsupported unit ${t} with unitDisplay = ${i}`);e={...e,style:"decimal"}}let n=t+(e?Object.entries(e).sort((t,e)=>t[0]<e[0]?-1:1).join():"");if(vs.has(n))return vs.get(n);let o=new Intl.NumberFormat(t,e);return vs.set(n,o),o}function KC(t,e,i){if("auto"===e)return t.format(i);if("never"===e)return t.format(Math.abs(i));{let r=!1;if("always"===e?r=i>0||Object.is(i,0):"exceptZero"===e&&(Object.is(i,-0)||Object.is(i,0)?i=Math.abs(i):r=i>0),r){let e=t.format(-i),r=t.format(i),n=e.replace(r,"").replace(/\u200e|\u061C/,"");return 1!==[...n].length&&console.warn("@react-aria/i18n polyfill for NumberFormat signDisplay: Unsupported case"),e.replace(r,"!!!").replace(n,"+").replace("!!!",r)}return t.format(i)}}const Ot=[];function ZC(t,e){let{onClose:i,shouldCloseOnBlur:r,isOpen:n,isDismissable:o=!1,isKeyboardDismissDisabled:a=!1,shouldCloseOnInteractOutside:s}=t;xe(()=>(n&&Ot.push(e),()=>{let t=Ot.indexOf(e);t>=0&&Ot.splice(t,1)}),[n,e]);let l=()=>{Ot[Ot.length-1]===e&&i&&i()};RC({ref:e,onInteractOutside:o?t=>{(!s||s(t.target))&&(Ot[Ot.length-1]===e&&(t.stopPropagation(),t.preventDefault()),l())}:null,onInteractOutsideStart:t=>{(!s||s(t.target))&&Ot[Ot.length-1]===e&&(t.stopPropagation(),t.preventDefault())}});let{focusWithinProps:c}=IC({isDisabled:!r,onBlurWithin:t=>{(!s||s(t.relatedTarget))&&i()}});return{overlayProps:{onKeyDown:t=>{"Escape"===t.key&&!a&&(t.stopPropagation(),t.preventDefault(),l())},...c},underlayProps:{onPointerDown:t=>{t.target===t.currentTarget&&t.preventDefault()}}}}const Nn=et(({children:t,style:e,autoFocus:i=!1,restoreFocus:r=!0,isDismissable:n,isOpen:o,onClose:a,triggerRef:s,arrowRef:l,arrowStyle:c},h)=>{const u=Ml(),d=Ir(h),{overlayProps:p}=ZC({isDismissable:n,isOpen:o,onClose:a,shouldCloseOnInteractOutside:t=>{var e,i;return!s.current||!(null!=(i=(e=s.current).contains)&&i.call(e,t))}},d);return xe(()=>{if(!o)return;const t=t=>{const e=t.target;if(s.current){if(!(s.current instanceof Node))return void a();(!(e instanceof Node)||e.contains(s.current))&&a()}};return requestAnimationFrame(()=>{window.addEventListener("scroll",t,!0)}),()=>{window.removeEventListener("scroll",t,!0)}},[o,a,s]),x(ot.div,{className:"z-popover isolate",role:"presentation",ref:d,style:vi(u,e),...Pl,...p,children:x(Ro,{restoreFocus:r,autoFocus:i,contain:!1,children:t})})}),JC={initial:{opacity:0},animate:{opacity:1},exit:{opacity:0}};function Il({position:t="absolute",className:e,isTransparent:i=!1,disableInitialTransition:r,...n}){return x(ot.div,{...n,className:ue(e,!i&&"bg-black/30","w-full h-full inset-0 z-10",t),"aria-hidden":!0,initial:r?void 0:{opacity:0},animate:{opacity:1},exit:{opacity:0},...JC,transition:{duration:.3}})}const Mp=et(({children:t,autoFocus:e=!1,restoreFocus:i=!0,isDismissable:r,isOpen:n,onClose:o},a)=>{const s=Ml(),l=Ir(a);return ie("div",{className:"isolate z-tray fixed inset-0",style:s,children:[x(Il,{onClick:()=>{r&&o()}},"tray-underlay"),x(ot.div,{ref:l,className:"absolute bottom-0 left-0 right-0 w-full z-20 rounded-t overflow-hidden max-w-375 max-h-tray mx-auto pb-safe-area",role:"presentation",initial:{opacity:0,y:"100%"},animate:{opacity:1,y:0},exit:{opacity:0,y:"100%"},transition:{type:"tween",duration:.2},children:x(Ro,{restoreFocus:i,autoFocus:e,contain:!0,children:t})})]})});function ya(t,e){if(t===e)return!0;if(!t||!e)return!1;const i=Object.keys(t),r=Object.keys(e),n=i.length;if(r.length!==n)return!1;for(let r=0;r<n;r++){const n=i[r];if(t[n]!==e[n]||!Object.prototype.hasOwnProperty.call(e,n))return!1}return!0}const Ap=sr(null);function QC(){return De(Ap)}function zo(){const{data:{i18n:t}}=QC();return{locale:t,localeCode:(null==t?void 0:t.language)||"en",lines:null==t?void 0:t.lines}}function Dp(t,{message:e,values:i}){const r=e.match(/\[(.+?)]/),n=null==i?void 0:i.count;if(r&&r[1]&&!Number.isNaN(n)){const[i,o]=r,a=o.split("|");if(!a.length)return e;const s=eT(t).select(n);let l=a.find(t=>t.startsWith(s));l||(l=a[0]);const c=l.substring(l.indexOf(" ")+1);return e.replace(i,c)}return e}const eT=ln(t=>new Intl.PluralRules(t)),we=nm(t=>{const{message:e,values:i}=t,{lines:r,localeCode:n}=zo();let o=(null==r?void 0:r[e])||e;if(!i)return x(Gt,{children:o});o=Dp(n,{message:o,values:i});const a=[],s=[];if(Object.entries(i).forEach(([t,e])=>{"function"==typeof e?s.push(t):tr(e)?a.push(t):null!=e&&(o=o.replace(`:${t}`,`${e}`))}),s.length||a.length){const t=[];if(s.length){const e=s.join("");t.push(`(<[${e}]>.+?<\\/[${e}]>)`)}if(a.length){const e=a.join("|");t.push(`(:(?:${e}))`)}const e=new RegExp(t.join("|"),"gm"),r=o.split(e).filter(Boolean).map((t,e)=>{if(t.startsWith("<")&&t.endsWith(">")){const r=t.match(/<([a-z]+)>(.+?)<\/([a-z]+)>/);if(r){const[,t,n]=r,o=null==i?void 0:i[t];if("function"==typeof o){const t=o(n);return dt(t,{key:e})}}}if(t.startsWith(":")){const r=t.replace(":",""),n=null==i?void 0:i[r];if(tr(n))return dt(n,{key:e})}return t});return x(Gt,{children:r})}return x(Gt,{children:o})},tT);function tT(t,e){const{values:i,...r}=t,{values:n,...o}=e;return ya(n,i)&&ya(r,o)}function Ip({listbox:t,children:e,isLoading:i,mobileOverlay:r=Mp,...n}){const o=_C(),{floatingWidth:a,floatingMinWidth:s="min-w-180",collection:l,showEmptyMessage:c,state:{isOpen:h,setIsOpen:u},positionStyle:d,floating:p,refs:f}=t,g=o?r:Nn,m=ue("py-4 text-base sm:text-sm outline-none bg-paper shadow-xl border max-h-inherit overflow-x-auto",g===Nn&&"rounded",g===Nn&&"auto"===a?`max-w-288 ${s}`:""),v=Je(()=>{let t=0;const e=[];return[...l.values()].reduce((i,r)=>{if(r.section){if(!e.includes(r.section)){const n=dt(r.section,{key:r.section.key||t,index:t});i.push(n),e.push(r.section),t++}}else i.push(dt(r.element,{key:r.element.key||r.element.props.value}));return i},[])},[l]);return ie(Tp.Provider,{value:t,children:[e,Ct&&Th(x(cr,{children:h&&(v.length>0||c)&&x(g,{triggerRef:f.reference,restoreFocus:!0,isOpen:h,onClose:()=>{u(!1)},isDismissable:!0,style:d,ref:p,children:x(rT,{isLoading:i,className:m,...n,children:v})})}),Ct)]})}function rT({className:t,children:e,isLoading:i,...r}){const{role:n,listboxId:o,virtualFocus:a,focusItem:s,state:{activeIndex:l,setActiveIndex:c}}=kp(),h=de(!0),u=de(null);return xe(()=>()=>c(null),[c]),xe(()=>{h.current&&(null!=l||a?null!=l&&requestAnimationFrame(()=>{s("increment",l)}):requestAnimationFrame(()=>{var t;null==(t=u.current)||t.focus({preventScroll:!0})})),h.current=!1},[l,s,a]),x("div",{tabIndex:-1,role:n,id:o,className:t,ref:u,...r,children:e.length?e:x(iT,{isLoading:i})})}function iT({isLoading:t}){return x("div",{className:"italic px-8 py-4 text-sm text-muted",children:x(we,t?{message:"Loading..."}:{message:"There are no items matching your query"})})}function Rp({state:{isOpen:t,setIsOpen:e,selectedIndex:i,activeIndex:r},loopFocus:n,collection:o,focusItem:a}){return{handleTriggerKeyDown:r=>{if(!t&&r.currentTarget.contains(r.target)){if("ArrowDown"===r.key)return r.preventDefault(),e(!0),a("increment",null!=i?i:0),!0;if("ArrowUp"===r.key)return r.preventDefault(),e(!0),a("decrement",null!=i?i:o.size-1),!0;if("Enter"===r.key||"Space"===r.key)return r.preventDefault(),e(!0),a("increment",null!=i?i:0),!0}},handleListboxKeyboardNavigation:i=>{const s=Math.max(0,o.size-1);if(t&&i.currentTarget.contains(i.target))switch(i.key){case"ArrowDown":return i.preventDefault(),null==r?a("increment",0):r>=s?n&&a("increment",0):a("increment",r+1),!0;case"ArrowUp":return i.preventDefault(),null==r?a("decrement",s):r<=0?n&&a("decrement",s):a("decrement",r-1),!0;case"Home":return i.preventDefault(),a("increment",0),!0;case"End":return i.preventDefault(),a("decrement",s),!0;case"Tab":return e(!1),!0}}}}const bs=new Map;function nT(t){const{localeCode:e}=zo(),i=e+(t?Object.entries(t).sort((t,e)=>t[0]<e[0]?-1:1).join():"");if(bs.has(i))return bs.get(i);const r=new Intl.Collator(e,t);return bs.set(i,r),r}function Lp(){const t=nT({usage:"search",sensitivity:"base"}),e=de({search:"",timeout:void 0}).current,i=(i,r)=>{let n=null!=r?r:0;for(;null!=n;){const r=i[n],o=null==r?void 0:r.slice(0,e.search.length);if(o&&0===t.compare(o,e.search))return n;if(!(n<i.length-1))return null;n++}return null};return{findMatchingItem:(t,r,n=0)=>{const o=oT(t.key);if(!o||t.ctrlKey||t.metaKey)return null;" "===o&&e.search.trim().length>0&&(t.preventDefault(),t.stopPropagation()),e.search+=o;let a=i(r,n);return null==a&&(a=i(r,0)),clearTimeout(e.timeout),e.timeout=setTimeout(()=>{e.search=""},500),null!=a?a:null}}}function oT(t){return 1!==t.length&&/^[A-Z]/i.test(t)?"":t}function sT(t,{noSSR:e}={noSSR:!0}){const i=typeof window<"u"&&"function"==typeof window.matchMedia,[r,n]=Ae(e?()=>!!i&&window.matchMedia(t).matches:null);return xe(()=>{if(!i)return;const r=window.matchMedia(t),o=()=>{n(r.matches)};return r.addEventListener("change",o),e||o(),()=>{r.removeEventListener("change",o)}},[i,t,e]),typeof window>"u"?null:r}function jo(t){return sT("(max-width: 768px)",t)}const aT=et((t,e)=>{const{children:[i,r],floatingWidth:n="auto"}=t,o=yt(),a=jo(),s=Cp({...t,floatingWidth:a?n:"auto",role:"menu",loopFocus:!0,children:r.props.children},e),{state:{isOpen:l,setIsOpen:c,activeIndex:h},listboxId:u,focusItem:d,listContent:p,reference:f}=s,{handleTriggerKeyDown:g,handleListboxKeyboardNavigation:m}=Rp(s),{findMatchingItem:v}=Lp();return x(Ip,{listbox:s,"aria-labelledby":o,onKeyDownCapture:t=>{if(!l)return;const e=v(t,p,h);e&&d("increment",e)},onKeyDown:m,children:dt(i,{id:o,"aria-expanded":l?"true":"false","aria-haspopup":"menu","aria-controls":l?u:void 0,ref:f,onKeyDown:g,onClick:Mt(t=>{var e,r;null==(r=null==(e=i.props)?void 0:e.onClick)||r.call(e,t),c(!l)})})})});function lT({children:t}){return t}function cT({item:t,button:e}){return ie(aT,{children:[e,x(lT,{children:(t.menuItems||[]).map(t=>x(Io,{value:t.label,onSelected:()=>{t.action(O().editor)},children:t.label},t.label))})]})}const Me=et(({children:t,size:e="md",iconSize:i=e||"md",variant:r="text",radius:n="rounded-full",className:o,padding:a,equalWidth:s=!0,...l},c)=>{const h=ue(kl(e,{padding:a,equalWidth:s,variant:r}),o);return x(Bt,{...l,ref:c,radius:n,variant:r,className:h,children:ae.cloneElement(t,{size:i})})});function uT({icon:t,className:e,size:i}){let r;return r=ae.isValidElement(t)?ae.cloneElement(t,{className:"svg-iconEl"}):"string"==typeof t?x("img",{className:"w-font h-font",src:t,alt:""}):Array.isArray(t)?ae.createElement(db(t),{size:i}):ae.createElement(t,{size:i}),x("span",{className:ue(e,"leading-none"),children:r})}const Rl=ae.memo(uT);function wa({value:t}){return t?"string"==typeof t?x(Gt,{children:t}):x(we,{...t}):null}function hT({item:t}){const e=t.label?x(dT,{item:t}):x(fT,{item:t});return t.menuItems?x(cT,{item:t,button:e}):ae.cloneElement(e,{onClick:()=>{var e;null==(e=t.action)||e.call(t,O().editor)}})}const fT=et(({item:t,...e},i)=>x(Me,{ref:i,radius:"rounded-full",size:"sm",...e,children:x(Rl,{icon:t.icon})})),dT=et(({item:t,...e},i)=>x(Qe,{ref:i,radius:"rounded-full",size:"xs",color:t.buttonColor||"primary",variant:t.buttonVariant||"flat",startIcon:t.icon&&x(Rl,{icon:t.icon}),...e,children:x(wa,{value:t.label})}));function Bo({children:t,color:e,variant:i,radius:r,size:n,className:o,value:a,onChange:s,multiple:l,disabled:c}){const h=ae.Children.map(t,(o,h)=>{if(ae.isValidElement(o)){const u=(t=>void 0!==a&&(l?a.includes(t):t===a))(o.props.value),d=u?"primary":e;return ae.cloneElement(o,{color:u?"primary":e,variant:i,size:n,radius:null,disabled:o.props.disabled||c,...o.props,onClick:t=>{o.props.onClick&&o.props.onClick(t),s&&(l?null==s||s((t=>{const e=[...a],i=a.indexOf(t);return i>-1?e.splice(i,1):e.push(t),e})(o.props.value)):null==s||s(o.props.value))},className:ue(o.props.className,u?"z-20":"z-10",pT(h,t,r,d))})}});return x("div",{className:ue(r,"inline-flex isolate",o),children:h})}function pT(t,e,i,r){return 0===t?ue(i,"rounded-tr-none rounded-br-none",!r&&"border-r-transparent disabled:border-r-transparent"):t===e.length-1?ue(i,"rounded-tl-none rounded-bl-none -ml-1"):ue("rounded-none -ml-1",!r&&"border-r-transparent disabled:border-r-transparent")}const gT=me(x("path",{d:"M12.5 8c-2.65 0-5.05.99-6.9 2.6L2 7v9h9l-3.62-3.62c1.39-1.16 3.16-1.88 5.12-1.88 3.54 0 6.55 2.31 7.6 5.5l2.37-.78C21.08 11.03 17.15 8 12.5 8z"}),"UndoOutlined"),mT=me(x("path",{d:"M18.4 10.6C16.55 8.99 14.15 8 11.5 8c-4.65 0-8.58 3.03-9.96 7.22L3.9 16c1.05-3.19 4.05-5.5 7.6-5.5 1.95 0 3.73.72 5.12 1.88L13 16h9V7l-3.6 3.6z"}),"RedoOutlined");function vT(){const t=oe(t=>t.history.canUndo),e=oe(t=>t.history.canRedo);return ie(Bo,{variant:"outline",children:[x(Me,{equalWidth:!1,size:"xs",padding:"pl-12 pr-10",radius:"rounded-full",disabled:!t,onClick:()=>{I().history.undo()},children:x(gT,{})}),x(Me,{equalWidth:!1,padding:"pl-10 pr-12",size:"xs",radius:"rounded-full",disabled:!e,onClick:()=>{I().history.redo()},children:x(mT,{})})]})}const bT=me(x("path",{d:"M19 13H5v-2h14v2z"}),"RemoveOutlined"),yT=me(x("path",{d:"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"}),"AddOutlined");function wT(){var t,e,i;const r=oe(t=>t.zoom)||1;return null==(t=oe(t=>{var e,i;return null==(i=null==(e=t.config.tools)?void 0:e.zoom)?void 0:i.allowUserZoom}))||t?ie("div",{className:"flex items-center select-none",children:[x(Me,{size:"sm",disabled:!(null!=(e=I().zoom)&&e.canZoomOut()),onClick:()=>{I().zoom.zoomOut(I().zoom.step)},children:x(bT,{})}),ie("div",{className:"w-[4ch] text-sm text-center",children:[Math.round(100*r),"%"]}),x(Me,{size:"sm",disabled:!(null!=(i=I().zoom)&&i.canZoomIn()),onClick:()=>{I().zoom.zoomIn(I().zoom.step)},children:x(yT,{})})]}):null}function ys({item:t}){switch(t.type){case"undoWidget":return x(vT,{});case"zoomWidget":return x(wT,{});case"button":return x(hT,{item:t});case"image":return x("img",{className:"h-30 object-cover",src:ct(t.src),alt:""});default:return null}}const or=me(x("path",{d:"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z"}),"CloseOutlined");function No(){var t;let e=oe(t=>{var e;return(null==(e=t.config.ui)?void 0:e.mode)===Ya.OVERLAY});const{width:i}=oe(t=>t.stageSize),r=i<=700;return r&&(null==(t=O().config.ui)?void 0:t.forceOverlayModeOnMobile)&&(e=!0),{isModal:e,isMobile:r}}function xT(){var t;const{isModal:e,isMobile:i}=No(),r=null==(t=oe(t=>{var e;return null==(e=t.config.ui)?void 0:e.allowEditorClose}))||t,n=oe(t=>{var e,i;return null==(i=null==(e=t.config.ui)?void 0:e.menubar)?void 0:i.items}),{left:o,center:a,right:s}=Je(()=>_T(n||[],i),[n,i]),l=e&&i&&r&&x(Me,{size:"sm",className:"ml-10",onClick:()=>{O().editor.close()},children:x(or,{})});return ie(ot.div,{className:fp,...dp,children:[x("div",{className:"mr-auto flex items-center gap-8",children:o.map((t,e)=>x(ys,{item:t},e))}),x("div",{className:"flex items-center gap-10",children:a.map((t,e)=>x(ys,{item:t},e))}),x("div",{className:"ml-auto flex items-center gap-8",children:s.map((t,e)=>x(ys,{item:t},e))}),l]})}function _T(t,e){const i={left:[],center:[],right:[]};(t||[]).filter(t=>!e&&!t.mobileOnly||e&&!t.desktopOnly).forEach(t=>{var e,r,n;"left"===t.align?i.left.push({...t,position:null!=(e=t.position)?e:1}):"right"===t.align?i.right.push({...t,position:null!=(r=t.position)?r:1}):i.center.push({...t,position:null!=(n=t.position)?n:1})});const r=Object.entries(i).map(([t,e])=>[t,e.sort((t,e)=>{var i,r;return(null!=(i=t.position)?i:0)-(null!=(r=e.position)?r:0)})]);return Object.fromEntries(r)}function ST(){const t=oe(t=>{var e;return null==(e=t.crop.zoneRect)?void 0:e.width})||1,e=oe(t=>{var e;return null==(e=t.crop.zoneRect)?void 0:e.height})||1;return x("div",{className:"text-sm",children:`${t}x${e}`})}function CT(){const t=oe(t=>t.activeTool);return ie(ot.div,{className:fp,...dp,children:[x(TT,{}),kT(t),x(ET,{})]})}function TT(){const{isMobile:t}=No(),e=oe(t=>t.dirty);return t?x(Me,{size:"sm",onClick:()=>{O().cancelChanges()},children:x(or,{})}):x(Qe,{variant:"outline",size:"xs",startIcon:x(or,{}),radius:"rounded-full",onClick:()=>{O().cancelChanges()},children:x(we,e?{message:"Cancel"}:{message:"Close"})})}function kT(t){var e,i,r;const n=x("div",{className:"capitalize text-sm",children:t});return t!==Pe.CROP||null!=(r=null==(i=null==(e=O().config.tools)?void 0:e.crop)?void 0:i.allowCustomRatio)&&!r?n:x(ST,{})}function ET(){const{isMobile:t}=No(),e=oe(t=>t.dirty);return t?x(Me,{size:"sm",disabled:!e,onClick:()=>{O().applyChanges()},children:x(ga,{})}):x(Qe,{variant:"flat",color:"primary",size:"xs",disabled:!e,startIcon:x(ga,{}),radius:"rounded-full",onClick:()=>{O().applyChanges()},children:x(we,{message:"Apply"})})}function Ru(){const t=oe(t=>t.activeTool);return x(cr,{initial:!1,children:t?x(CT,{},"activeToolbar"):x(xT,{},"mainToolbar")})}const OT={newCanvas:ce("Loading Canvas"),mainImage:ce("Loading Image"),state:ce("Loading State"),merge:ce("Processing Image")};function PT(){const[t,e]=Ae(!1);return xe(()=>{oe.subscribe(t=>t.loading,t=>{t&&e(t)})},[]),x(cr,{children:t&&x(ot.div,{initial:{y:"60%",opacity:0},animate:{y:0,opacity:1},exit:{y:"-60%",opacity:0},transition:{type:"tween",duration:.3},onAnimationComplete:()=>{setTimeout(()=>{e(!1)},400)},className:"absolute z-loading-indicator inset-0 m-auto p-6 w-144 h-32 text-center text-sm bg-paper rounded-full shadow-lg",children:x(we,{...OT[t]})})})}function MT(t,e,i){return Math.max(e,Math.min(t,i))}const We={toVector:(t,e)=>(void 0===t&&(t=e),Array.isArray(t)?t:[t,t]),add:(t,e)=>[t[0]+e[0],t[1]+e[1]],sub:(t,e)=>[t[0]-e[0],t[1]-e[1]],addTo(t,e){t[0]+=e[0],t[1]+=e[1]},subTo(t,e){t[0]-=e[0],t[1]-=e[1]}};function Lu(t,e,i){return 0===e||Math.abs(e)===1/0?Math.pow(t,5*i):t*e*i/(e+i*t)}function Fu(t,e,i,r=.15){return 0===r?MT(t,e,i):t<e?-Lu(e-t,i-e,r)+e:t>i?+Lu(t-i,i-e,r)+i:t}function AT(t,[e,i],[r,n]){const[[o,a],[s,l]]=t;return[Fu(e,o,a,r),Fu(i,s,l,n)]}function qe(t,e,i){return e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}function zu(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,r)}return i}function ze(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?zu(Object(i),!0).forEach(function(e){qe(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):zu(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}const Fp={pointer:{start:"down",change:"move",end:"up"},mouse:{start:"down",change:"move",end:"up"},touch:{start:"start",change:"move",end:"end"},gesture:{start:"start",change:"change",end:"end"}};function ju(t){return t?t[0].toUpperCase()+t.slice(1):""}const DT=["enter","leave"];function IT(t=!1,e){return t&&!DT.includes(e)}function RT(t,e="",i=!1){const r=Fp[t],n=r&&r[e]||e;return"on"+ju(t)+ju(n)+(IT(i,n)?"Capture":"")}const LT=["gotpointercapture","lostpointercapture"];function FT(t){let e=t.substring(2).toLowerCase();const i=!!~e.indexOf("passive");i&&(e=e.replace("passive",""));const r=LT.includes(e)?"capturecapture":"capture",n=!!~e.indexOf(r);return n&&(e=e.replace("capture","")),{device:e,capture:n,passive:i}}function zT(t,e=""){const i=Fp[t];return t+(i&&i[e]||e)}function Vo(t){return"touches"in t}function zp(t){return Vo(t)?"touch":"pointerType"in t?t.pointerType:"mouse"}function jT(t){return Array.from(t.touches).filter(e=>{var i,r;return e.target===t.currentTarget||(null===(i=t.currentTarget)||void 0===i||null===(r=i.contains)||void 0===r?void 0:r.call(i,e.target))})}function BT(t){return"touchend"===t.type||"touchcancel"===t.type?t.changedTouches:t.targetTouches}function jp(t){return Vo(t)?BT(t)[0]:t}function xa(t,e){const i=e.clientX-t.clientX,r=e.clientY-t.clientY,n=(e.clientX+t.clientX)/2,o=(e.clientY+t.clientY)/2,a=Math.hypot(i,r);return{angle:-180*Math.atan2(i,r)/Math.PI,distance:a,origin:[n,o]}}function NT(t){return jT(t).map(t=>t.identifier)}function Bu(t,e){const[i,r]=Array.from(t.touches).filter(t=>e.includes(t.identifier));return xa(i,r)}function ws(t){const e=jp(t);return Vo(t)?e.identifier:e.pointerId}function Nu(t){const e=jp(t);return[e.clientX,e.clientY]}const Vu=40,$u=800;function VT(t){let{deltaX:e,deltaY:i,deltaMode:r}=t;return 1===r?(e*=40,i*=40):2===r&&(e*=$u,i*=$u),[e,i]}function $T(t){const e={};if("buttons"in t&&(e.buttons=t.buttons),"shiftKey"in t){const{shiftKey:i,altKey:r,metaKey:n,ctrlKey:o}=t;Object.assign(e,{shiftKey:i,altKey:r,metaKey:n,ctrlKey:o})}return e}function po(t,...e){return"function"==typeof t?t(...e):t}function HT(){}function UT(...t){return 0===t.length?HT:1===t.length?t[0]:function(){let e;for(const i of t)e=i.apply(this,arguments)||e;return e}}function Hu(t,e){return Object.assign({},e,t||{})}const WT=32;class Bp{constructor(t,e,i){this.ctrl=t,this.args=e,this.key=i,this.state||(this.state={},this.computeValues([0,0]),this.computeInitial(),this.init&&this.init(),this.reset())}get state(){return this.ctrl.state[this.key]}set state(t){this.ctrl.state[this.key]=t}get shared(){return this.ctrl.state.shared}get eventStore(){return this.ctrl.gestureEventStores[this.key]}get timeoutStore(){return this.ctrl.gestureTimeoutStores[this.key]}get config(){return this.ctrl.config[this.key]}get sharedConfig(){return this.ctrl.config.shared}get handler(){return this.ctrl.handlers[this.key]}reset(){const{state:t,shared:e,ingKey:i,args:r}=this;e[i]=t._active=t.active=t._blocked=t._force=!1,t._step=[!1,!1],t.intentional=!1,t._movement=[0,0],t._distance=[0,0],t._direction=[0,0],t._delta=[0,0],t._bounds=[[-1/0,1/0],[-1/0,1/0]],t.args=r,t.axis=void 0,t.memo=void 0,t.elapsedTime=0,t.direction=[0,0],t.distance=[0,0],t.overflow=[0,0],t._movementBound=[!1,!1],t.velocity=[0,0],t.movement=[0,0],t.delta=[0,0],t.timeStamp=0}start(t){const e=this.state,i=this.config;e._active||(this.reset(),this.computeInitial(),e._active=!0,e.target=t.target,e.currentTarget=t.currentTarget,e.lastOffset=i.from?po(i.from,e):e.offset,e.offset=e.lastOffset),e.startTime=e.timeStamp=t.timeStamp}computeValues(t){const e=this.state;e._values=t,e.values=this.config.transform(t)}computeInitial(){const t=this.state;t._initial=t._values,t.initial=t.values}compute(t){const{state:e,config:i,shared:r}=this;e.args=this.args;let n=0;if(t&&(e.event=t,i.preventDefault&&t.cancelable&&e.event.preventDefault(),e.type=t.type,r.touches=this.ctrl.pointerIds.size||this.ctrl.touchIds.size,r.locked=!!document.pointerLockElement,Object.assign(r,$T(t)),r.down=r.pressed=r.buttons%2==1||r.touches>0,n=t.timeStamp-e.timeStamp,e.timeStamp=t.timeStamp,e.elapsedTime=e.timeStamp-e.startTime),e._active){const t=e._delta.map(Math.abs);We.addTo(e._distance,t)}this.axisIntent&&this.axisIntent(t);const[o,a]=e._movement,[s,l]=i.threshold,{_step:c,values:h}=e;if(i.hasCustomTransform?(!1===c[0]&&(c[0]=Math.abs(o)>=s&&h[0]),!1===c[1]&&(c[1]=Math.abs(a)>=l&&h[1])):(!1===c[0]&&(c[0]=Math.abs(o)>=s&&Math.sign(o)*s),!1===c[1]&&(c[1]=Math.abs(a)>=l&&Math.sign(a)*l)),e.intentional=!1!==c[0]||!1!==c[1],!e.intentional)return;const u=[0,0];if(i.hasCustomTransform){const[t,e]=h;u[0]=!1!==c[0]?t-c[0]:0,u[1]=!1!==c[1]?e-c[1]:0}else u[0]=!1!==c[0]?o-c[0]:0,u[1]=!1!==c[1]?a-c[1]:0;this.restrictToAxis&&!e._blocked&&this.restrictToAxis(u);const d=e.offset,p=e._active&&!e._blocked||e.active;p&&(e.first=e._active&&!e.active,e.last=!e._active&&e.active,e.active=r[this.ingKey]=e._active,t&&(e.first&&("bounds"in i&&(e._bounds=po(i.bounds,e)),this.setup&&this.setup()),e.movement=u,this.computeOffset()));const[f,g]=e.offset,[[m,v],[b,y]]=e._bounds;e.overflow=[f<m?-1:f>v?1:0,g<b?-1:g>y?1:0],e._movementBound[0]=!!e.overflow[0]&&(!1===e._movementBound[0]?e._movement[0]:e._movementBound[0]),e._movementBound[1]=!!e.overflow[1]&&(!1===e._movementBound[1]?e._movement[1]:e._movementBound[1]);const x=e._active&&i.rubberband||[0,0];if(e.offset=AT(e._bounds,e.offset,x),e.delta=We.sub(e.offset,d),this.computeMovement(),p&&(!e.last||n>32)){e.delta=We.sub(e.offset,d);const t=e.delta.map(Math.abs);We.addTo(e.distance,t),e.direction=e.delta.map(Math.sign),e._direction=e._delta.map(Math.sign),!e.first&&n>0&&(e.velocity=[t[0]/n,t[1]/n])}}emit(){const t=this.state,e=this.shared,i=this.config;if(t._active||this.clean(),(t._blocked||!t.intentional)&&!t._force&&!i.triggerAllEvents)return;const r=this.handler(ze(ze(ze({},e),t),{},{[this.aliasKey]:t.values}));void 0!==r&&(t.memo=r)}clean(){this.eventStore.clean(),this.timeoutStore.clean()}}function YT([t,e],i){const r=Math.abs(t),n=Math.abs(e);return r>n&&r>i?"x":n>r&&n>i?"y":void 0}class XT extends Bp{constructor(...t){super(...t),qe(this,"aliasKey","xy")}reset(){super.reset(),this.state.axis=void 0}init(){this.state.offset=[0,0],this.state.lastOffset=[0,0]}computeOffset(){this.state.offset=We.add(this.state.lastOffset,this.state.movement)}computeMovement(){this.state.movement=We.sub(this.state.offset,this.state.lastOffset)}axisIntent(t){const e=this.state,i=this.config;if(!e.axis&&t){const r="object"==typeof i.axisThreshold?i.axisThreshold[zp(t)]:i.axisThreshold;e.axis=YT(e._movement,r)}e._blocked=(i.lockDirection||!!i.axis)&&!e.axis||!!i.axis&&i.axis!==e.axis}restrictToAxis(t){if(this.config.axis||this.config.lockDirection)switch(this.state.axis){case"x":t[1]=0;break;case"y":t[0]=0}}}const GT=t=>t,Uu=.15,Np={enabled:(t=!0)=>t,eventOptions:(t,e,i)=>ze(ze({},i.shared.eventOptions),t),preventDefault:(t=!1)=>t,triggerAllEvents:(t=!1)=>t,rubberband(t=0){switch(t){case!0:return[Uu,Uu];case!1:return[0,0];default:return We.toVector(t)}},from:t=>"function"==typeof t?t:null!=t?We.toVector(t):void 0,transform(t,e,i){const r=t||i.shared.transform;return this.hasCustomTransform=!!r,r||GT},threshold:t=>We.toVector(t,0)},qT=0,fn=ze(ze({},Np),{},{axis(t,e,{axis:i}){if(this.lockDirection="lock"===i,!this.lockDirection)return i},axisThreshold:(t=0)=>t,bounds(t={}){if("function"==typeof t)return e=>fn.bounds(t(e));if("current"in t)return()=>t.current;if("function"==typeof HTMLElement&&t instanceof HTMLElement)return t;const{left:e=-1/0,right:i=1/0,top:r=-1/0,bottom:n=1/0}=t;return[[e,i],[r,n]]}}),Mn=10,Wu={ArrowRight:(t=1)=>[10*t,0],ArrowLeft:(t=1)=>[-10*t,0],ArrowUp:(t=1)=>[0,-10*t],ArrowDown:(t=1)=>[0,10*t]};class KT extends XT{constructor(...t){super(...t),qe(this,"ingKey","dragging")}reset(){super.reset();const t=this.state;t._pointerId=void 0,t._pointerActive=!1,t._keyboardActive=!1,t._preventScroll=!1,t._delayed=!1,t.swipe=[0,0],t.tap=!1,t.canceled=!1,t.cancel=this.cancel.bind(this)}setup(){const t=this.state;if(t._bounds instanceof HTMLElement){const e=t._bounds.getBoundingClientRect(),i=t.currentTarget.getBoundingClientRect(),r={left:e.left-i.left+t.offset[0],right:e.right-i.right+t.offset[0],top:e.top-i.top+t.offset[1],bottom:e.bottom-i.bottom+t.offset[1]};t._bounds=fn.bounds(r)}}cancel(){const t=this.state;t.canceled||(t.canceled=!0,t._active=!1,setTimeout(()=>{this.compute(),this.emit()},0))}setActive(){this.state._active=this.state._pointerActive||this.state._keyboardActive}clean(){this.pointerClean(),this.state._pointerActive=!1,this.state._keyboardActive=!1,super.clean()}pointerDown(t){const e=this.config,i=this.state;if(null!=t.buttons&&(Array.isArray(e.pointerButtons)?!e.pointerButtons.includes(t.buttons):-1!==e.pointerButtons&&e.pointerButtons!==t.buttons))return;const r=this.ctrl.setEventIds(t);e.pointerCapture&&t.target.setPointerCapture(t.pointerId),!(r&&r.size>1&&i._pointerActive)&&(this.start(t),this.setupPointer(t),i._pointerId=ws(t),i._pointerActive=!0,this.computeValues(Nu(t)),this.computeInitial(),e.preventScrollAxis&&"mouse"!==zp(t)?(i._active=!1,this.setupScrollPrevention(t)):e.delay>0?(this.setupDelayTrigger(t),e.triggerAllEvents&&(this.compute(t),this.emit())):this.startPointerDrag(t))}startPointerDrag(t){const e=this.state;e._active=!0,e._preventScroll=!0,e._delayed=!1,this.compute(t),this.emit()}pointerMove(t){const e=this.state,i=this.config;if(!e._pointerActive||e.type===t.type&&t.timeStamp===e.timeStamp)return;const r=ws(t);if(void 0!==e._pointerId&&r!==e._pointerId)return;const n=Nu(t);return document.pointerLockElement===t.target?e._delta=[t.movementX,t.movementY]:(e._delta=We.sub(n,e._values),this.computeValues(n)),We.addTo(e._movement,e._delta),this.compute(t),e._delayed&&e.intentional?(this.timeoutStore.remove("dragDelay"),e.active=!1,void this.startPointerDrag(t)):i.preventScrollAxis&&!e._preventScroll?e.axis?e.axis===i.preventScrollAxis||"xy"===i.preventScrollAxis?(e._active=!1,void this.clean()):(this.timeoutStore.remove("startPointerDrag"),void this.startPointerDrag(t)):void 0:void this.emit()}pointerUp(t){this.ctrl.setEventIds(t);try{this.config.pointerCapture&&t.target.hasPointerCapture(t.pointerId)&&t.target.releasePointerCapture(t.pointerId)}catch{}const e=this.state,i=this.config;if(!e._active||!e._pointerActive)return;const r=ws(t);if(void 0!==e._pointerId&&r!==e._pointerId)return;this.state._pointerActive=!1,this.setActive(),this.compute(t);const[n,o]=e._distance;if(e.tap=n<=i.tapsThreshold&&o<=i.tapsThreshold,e.tap&&i.filterTaps)e._force=!0;else{const[t,r]=e.direction,[n,o]=e.velocity,[a,s]=e.movement,[l,c]=i.swipe.velocity,[h,u]=i.swipe.distance,d=i.swipe.duration;e.elapsedTime<d&&(Math.abs(n)>l&&Math.abs(a)>h&&(e.swipe[0]=t),Math.abs(o)>c&&Math.abs(s)>u&&(e.swipe[1]=r))}this.emit()}pointerClick(t){!this.state.tap&&t.detail>0&&(t.preventDefault(),t.stopPropagation())}setupPointer(t){const e=this.config,i=e.device;e.pointerLock&&t.currentTarget.requestPointerLock(),e.pointerCapture||(this.eventStore.add(this.sharedConfig.window,i,"change",this.pointerMove.bind(this)),this.eventStore.add(this.sharedConfig.window,i,"end",this.pointerUp.bind(this)),this.eventStore.add(this.sharedConfig.window,i,"cancel",this.pointerUp.bind(this)))}pointerClean(){this.config.pointerLock&&document.pointerLockElement===this.state.currentTarget&&document.exitPointerLock()}preventScroll(t){this.state._preventScroll&&t.cancelable&&t.preventDefault()}setupScrollPrevention(t){this.state._preventScroll=!1,ZT(t);const e=this.eventStore.add(this.sharedConfig.window,"touch","change",this.preventScroll.bind(this),{passive:!1});this.eventStore.add(this.sharedConfig.window,"touch","end",e),this.eventStore.add(this.sharedConfig.window,"touch","cancel",e),this.timeoutStore.add("startPointerDrag",this.startPointerDrag.bind(this),this.config.preventScrollDelay,t)}setupDelayTrigger(t){this.state._delayed=!0,this.timeoutStore.add("dragDelay",()=>{this.state._step=[0,0],this.startPointerDrag(t)},this.config.delay)}keyDown(t){const e=Wu[t.key];if(e){const i=this.state,r=t.shiftKey?10:t.altKey?.1:1;this.start(t),i._delta=e(r),i._keyboardActive=!0,We.addTo(i._movement,i._delta),this.compute(t),this.emit()}}keyUp(t){t.key in Wu&&(this.state._keyboardActive=!1,this.setActive(),this.compute(t),this.emit())}bind(t){const e=this.config.device;t(e,"start",this.pointerDown.bind(this)),this.config.pointerCapture&&(t(e,"change",this.pointerMove.bind(this)),t(e,"end",this.pointerUp.bind(this)),t(e,"cancel",this.pointerUp.bind(this)),t("lostPointerCapture","",this.pointerUp.bind(this))),this.config.keys&&(t("key","down",this.keyDown.bind(this)),t("key","up",this.keyUp.bind(this))),this.config.filterTaps&&t("click","",this.pointerClick.bind(this),{capture:!0,passive:!1})}}function ZT(t){"persist"in t&&"function"==typeof t.persist&&t.persist()}const dn=typeof window<"u"&&window.document&&window.document.createElement;function JT(){return dn&&"ontouchstart"in window}function Yu(){return JT()||dn&&window.navigator.maxTouchPoints>1}function QT(){return dn&&"onpointerdown"in window}function e5(){return dn&&"exitPointerLock"in window.document}function t5(){try{return"constructor"in GestureEvent}catch{return!1}}const ft={isBrowser:dn,gesture:t5(),touch:Yu(),touchscreen:Yu(),pointer:QT(),pointerLock:e5()},r5=250,i5=180,n5=.5,o5=50,s5=250,Xu={mouse:0,touch:0,pen:8},a5=ze(ze({},fn),{},{device(t,e,{pointer:{touch:i=!1,lock:r=!1,mouse:n=!1}={}}){return this.pointerLock=r&&ft.pointerLock,ft.touch&&i?"touch":this.pointerLock?"mouse":ft.pointer&&!n?"pointer":ft.touch?"touch":"mouse"},preventScrollAxis(t,e,{preventScroll:i}){if(this.preventScrollDelay="number"==typeof i?i:i||void 0===i&&t?r5:void 0,ft.touchscreen&&!1!==i)return t||(void 0!==i?"y":void 0)},pointerCapture(t,e,{pointer:{capture:i=!0,buttons:r=1}={}}){return this.pointerButtons=r,!this.pointerLock&&"pointer"===this.device&&i},keys:(t=!0)=>t,threshold(t,e,{filterTaps:i=!1,tapsThreshold:r=3,axis:n}){const o=We.toVector(t,i?r:n?1:0);return this.filterTaps=i,this.tapsThreshold=r,o},swipe({velocity:t=n5,distance:e=50,duration:i=s5}={}){return{velocity:this.transform(We.toVector(t)),distance:this.transform(We.toVector(e)),duration:i}},delay(t=0){switch(t){case!0:return i5;case!1:return 0;default:return t}},axisThreshold:t=>t?ze(ze({},Xu),t):Xu}),l5=30,c5=100;class u5 extends Bp{constructor(...t){super(...t),qe(this,"ingKey","pinching"),qe(this,"aliasKey","da")}init(){this.state.offset=[1,0],this.state.lastOffset=[1,0],this.state._pointerEvents=new Map}reset(){super.reset();const t=this.state;t._touchIds=[],t.canceled=!1,t.cancel=this.cancel.bind(this),t.turns=0}computeOffset(){const{type:t,movement:e,lastOffset:i}=this.state;this.state.offset="wheel"===t?We.add(e,i):[(1+e[0])*i[0],e[1]+i[1]]}computeMovement(){const{offset:t,lastOffset:e}=this.state;this.state.movement=[t[0]/e[0],t[1]-e[1]]}axisIntent(){const t=this.state,[e,i]=t._movement;if(!t.axis){const r=30*Math.abs(e)-Math.abs(i);r<0?t.axis="angle":r>0&&(t.axis="scale")}}restrictToAxis(t){this.config.lockDirection&&("scale"===this.state.axis?t[1]=0:"angle"===this.state.axis&&(t[0]=0))}cancel(){const t=this.state;t.canceled||setTimeout(()=>{t.canceled=!0,t._active=!1,this.compute(),this.emit()},0)}touchStart(t){this.ctrl.setEventIds(t);const e=this.state,i=this.ctrl.touchIds;if(e._active&&e._touchIds.every(t=>i.has(t))||i.size<2)return;this.start(t),e._touchIds=Array.from(i).slice(0,2);const r=Bu(t,e._touchIds);this.pinchStart(t,r)}pointerStart(t){if(null!=t.buttons&&t.buttons%2!=1)return;this.ctrl.setEventIds(t),t.target.setPointerCapture(t.pointerId);const e=this.state,i=e._pointerEvents,r=this.ctrl.pointerIds;if(e._active&&Array.from(i.keys()).every(t=>r.has(t))||(i.size<2&&i.set(t.pointerId,t),e._pointerEvents.size<2))return;this.start(t);const n=xa(...Array.from(i.values()));this.pinchStart(t,n)}pinchStart(t,e){this.state.origin=e.origin,this.computeValues([e.distance,e.angle]),this.computeInitial(),this.compute(t),this.emit()}touchMove(t){if(!this.state._active)return;const e=Bu(t,this.state._touchIds);this.pinchMove(t,e)}pointerMove(t){const e=this.state._pointerEvents;if(e.has(t.pointerId)&&e.set(t.pointerId,t),!this.state._active)return;const i=xa(...Array.from(e.values()));this.pinchMove(t,i)}pinchMove(t,e){const i=this.state,r=i._values[1],n=e.angle-r;let o=0;Math.abs(n)>270&&(o+=Math.sign(n)),this.computeValues([e.distance,e.angle-360*o]),i.origin=e.origin,i.turns=o,i._movement=[i._values[0]/i._initial[0]-1,i._values[1]-i._initial[1]],this.compute(t),this.emit()}touchEnd(t){this.ctrl.setEventIds(t),this.state._active&&this.state._touchIds.some(t=>!this.ctrl.touchIds.has(t))&&(this.state._active=!1,this.compute(t),this.emit())}pointerEnd(t){const e=this.state;this.ctrl.setEventIds(t);try{t.target.releasePointerCapture(t.pointerId)}catch{}e._pointerEvents.has(t.pointerId)&&e._pointerEvents.delete(t.pointerId),e._active&&e._pointerEvents.size<2&&(e._active=!1,this.compute(t),this.emit())}gestureStart(t){t.cancelable&&t.preventDefault();const e=this.state;e._active||(this.start(t),this.computeValues([t.scale,t.rotation]),e.origin=[t.clientX,t.clientY],this.compute(t),this.emit())}gestureMove(t){if(t.cancelable&&t.preventDefault(),!this.state._active)return;const e=this.state;this.computeValues([t.scale,t.rotation]),e.origin=[t.clientX,t.clientY];const i=e._movement;e._movement=[t.scale-1,t.rotation],e._delta=We.sub(e._movement,i),this.compute(t),this.emit()}gestureEnd(t){!this.state._active||(this.state._active=!1,this.compute(t),this.emit())}wheel(t){const e=this.config.modifierKey;e&&!t[e]||(this.state._active?this.wheelChange(t):this.wheelStart(t),this.timeoutStore.add("wheelEnd",this.wheelEnd.bind(this)))}wheelStart(t){this.start(t),this.wheelChange(t)}wheelChange(t){"uv"in t||t.cancelable&&t.preventDefault();const e=this.state;e._delta=[-VT(t)[1]/c5*e.offset[0],0],We.addTo(e._movement,e._delta),this.state.origin=[t.clientX,t.clientY],this.compute(t),this.emit()}wheelEnd(){!this.state._active||(this.state._active=!1,this.compute(),this.emit())}bind(t){const e=this.config.device;e&&(t(e,"start",this[e+"Start"].bind(this)),t(e,"change",this[e+"Move"].bind(this)),t(e,"end",this[e+"End"].bind(this)),t(e,"cancel",this[e+"End"].bind(this))),t("wheel","",this.wheel.bind(this),{passive:!1})}}const h5=ze(ze({},Np),{},{device(t,e,{shared:i,pointer:{touch:r=!1}={}}){if(i.target&&!ft.touch&&ft.gesture)return"gesture";if(ft.touch&&r)return"touch";if(ft.touchscreen){if(ft.pointer)return"pointer";if(ft.touch)return"touch"}},bounds(t,e,{scaleBounds:i={},angleBounds:r={}}){const n=t=>{const e=Hu(po(i,t),{min:-1/0,max:1/0});return[e.min,e.max]},o=t=>{const e=Hu(po(r,t),{min:-1/0,max:1/0});return[e.min,e.max]};return"function"!=typeof i&&"function"!=typeof r?[n(),o()]:t=>[n(t),o(t)]},threshold(t,e,i){return this.lockDirection="lock"===i.axis,We.toVector(t,this.lockDirection?[.1,3]:0)},modifierKey:t=>void 0===t?"ctrlKey":t});ze(ze({},fn),{},{mouseOnly:(t=!0)=>t}),ze(ze({},fn),{},{mouseOnly:(t=!0)=>t});const Ll=new Map,_a=new Map;function f5(t){Ll.set(t.key,t.engine),_a.set(t.key,t.resolver)}const d5={key:"drag",engine:KT,resolver:a5},p5={key:"pinch",engine:u5,resolver:h5};function g5(t,e){if(null==t)return{};var i,r,n={},o=Object.keys(t);for(r=0;r<o.length;r++)i=o[r],!(e.indexOf(i)>=0)&&(n[i]=t[i]);return n}function m5(t,e){if(null==t)return{};var i,r,n=g5(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(r=0;r<o.length;r++)i=o[r],!(e.indexOf(i)>=0)&&(!Object.prototype.propertyIsEnumerable.call(t,i)||(n[i]=t[i]))}return n}const v5={target(t){if(t)return()=>"current"in t?t.current:t},enabled:(t=!0)=>t,window:(t=(ft.isBrowser?window:void 0))=>t,eventOptions:({passive:t=!0,capture:e=!1}={})=>({passive:t,capture:e}),transform:t=>t},b5=["target","eventOptions","window","enabled","transform"];function Vn(t={},e){const i={};for(const[r,n]of Object.entries(e))switch(typeof n){case"function":i[r]=n.call(i,t[r],r,t);break;case"object":i[r]=Vn(t[r],n);break;case"boolean":n&&(i[r]=t[r])}return i}function y5(t,e,i={}){const r=t,{target:n,eventOptions:o,window:a,enabled:s,transform:l}=r,c=m5(r,b5);if(i.shared=Vn({target:n,eventOptions:o,window:a,enabled:s,transform:l},v5),e){const t=_a.get(e);i[e]=Vn(ze({shared:i.shared},c),t)}else for(const t in c){const e=_a.get(t);e&&(i[t]=Vn(ze({shared:i.shared},c[t]),e))}return i}class Vp{constructor(t,e){qe(this,"_listeners",new Set),this._ctrl=t,this._gestureKey=e}add(t,e,i,r,n){const o=this._listeners,a=zT(e,i),s=ze(ze({},this._gestureKey?this._ctrl.config[this._gestureKey].eventOptions:{}),n);t.addEventListener(a,r,s);const l=()=>{t.removeEventListener(a,r,s),o.delete(l)};return o.add(l),l}clean(){this._listeners.forEach(t=>t()),this._listeners.clear()}}class w5{constructor(){qe(this,"_timeouts",new Map)}add(t,e,i=140,...r){this.remove(t),this._timeouts.set(t,window.setTimeout(e,i,...r))}remove(t){const e=this._timeouts.get(t);e&&window.clearTimeout(e)}clean(){this._timeouts.forEach(t=>{window.clearTimeout(t)}),this._timeouts.clear()}}class x5{constructor(t){qe(this,"gestures",new Set),qe(this,"_targetEventStore",new Vp(this)),qe(this,"gestureEventStores",{}),qe(this,"gestureTimeoutStores",{}),qe(this,"handlers",{}),qe(this,"config",{}),qe(this,"pointerIds",new Set),qe(this,"touchIds",new Set),qe(this,"state",{shared:{shiftKey:!1,metaKey:!1,ctrlKey:!1,altKey:!1}}),_5(this,t)}setEventIds(t){return Vo(t)?(this.touchIds=new Set(NT(t)),this.touchIds):"pointerId"in t?("pointerup"===t.type||"pointercancel"===t.type?this.pointerIds.delete(t.pointerId):"pointerdown"===t.type&&this.pointerIds.add(t.pointerId),this.pointerIds):void 0}applyHandlers(t,e){this.handlers=t,this.nativeHandlers=e}applyConfig(t,e){this.config=y5(t,e,this.config)}clean(){this._targetEventStore.clean();for(const t of this.gestures)this.gestureEventStores[t].clean(),this.gestureTimeoutStores[t].clean()}effect(){return this.config.shared.target&&this.bind(),()=>this._targetEventStore.clean()}bind(...t){const e=this.config.shared,i={};let r;if(!e.target||(r=e.target(),r)){if(e.enabled){for(const e of this.gestures){const n=this.config[e],o=Gu(i,n.eventOptions,!!r);n.enabled&&new(Ll.get(e))(this,t,e).bind(o)}const n=Gu(i,e.eventOptions,!!r);for(const e in this.nativeHandlers)n(e,"",i=>this.nativeHandlers[e](ze(ze({},this.state.shared),{},{event:i,args:t})),void 0,!0)}for(const t in i)i[t]=UT(...i[t]);if(!r)return i;for(const t in i){const{device:e,capture:n,passive:o}=FT(t);this._targetEventStore.add(r,e,"",i[t],{capture:n,passive:o})}}}}function Vr(t,e){t.gestures.add(e),t.gestureEventStores[e]=new Vp(t,e),t.gestureTimeoutStores[e]=new w5}function _5(t,e){e.drag&&Vr(t,"drag"),e.wheel&&Vr(t,"wheel"),e.scroll&&Vr(t,"scroll"),e.move&&Vr(t,"move"),e.pinch&&Vr(t,"pinch"),e.hover&&Vr(t,"hover")}const Gu=(t,e,i)=>(r,n,o,a={},s=!1)=>{var l,c;const h=null!==(l=a.capture)&&void 0!==l?l:e.capture,u=null!==(c=a.passive)&&void 0!==c?c:e.passive;let d=s?r:RT(r,n,h);i&&u&&(d+="Passive"),t[d]=t[d]||[],t[d].push(o)},S5=/^on(Drag|Wheel|Scroll|Move|Pinch|Hover)/;function C5(t){const e={},i={},r=new Set;for(let n in t)S5.test(n)?(r.add(RegExp.lastMatch),i[n]=t[n]):e[n]=t[n];return[i,e,r]}function $r(t,e,i,r,n,o){if(!t.has(i)||!Ll.has(r))return;const a=i+"Start",s=i+"End";n[r]=t=>{let r;return t.first&&a in e&&e[a](t),i in e&&(r=e[i](t)),t.last&&s in e&&e[s](t),r},o[r]=o[r]||{}}function T5(t,e){const[i,r,n]=C5(t),o={};return $r(n,i,"onDrag","drag",o,e),$r(n,i,"onWheel","wheel",o,e),$r(n,i,"onScroll","scroll",o,e),$r(n,i,"onPinch","pinch",o,e),$r(n,i,"onMove","move",o,e),$r(n,i,"onHover","hover",o,e),{handlers:o,config:e,nativeHandlers:r}}function k5(t,e={},i,r){const n=ae.useMemo(()=>new x5(t),[]);if(n.applyHandlers(t,r),n.applyConfig(e,i),ae.useEffect(n.effect.bind(n)),ae.useEffect(()=>n.clean.bind(n),[]),void 0===e.target)return n.bind.bind(n)}function E5(t){return t.forEach(f5),function(t,e){const{handlers:i,nativeHandlers:r,config:n}=T5(t,e||{});return k5(i,n,void 0,r)}}function Dt({e:t,rect:e,deltaX:i,deltaY:r}){return{rect:e,x:t.clientX,y:t.clientY,deltaX:null!=i?i:0,deltaY:null!=r?r:0,nativeEvent:t}}function $o({onMoveStart:t,onMove:e,onMoveEnd:i,minimumMovement:r=0,preventDefault:n,stopPropagation:o=!0,onPress:a,onLongPress:s,...l}){const c=de({lastPosition:{x:0,y:0},started:!1,longPressTriggered:!1}).current,{addGlobalListener:h,removeGlobalListener:u}=wl(),d=i=>{if(i.pointerId===c.id){const n=i.clientX-c.lastPosition.x,o=i.clientY-c.lastPosition.y;(Math.abs(n)>=r||Math.abs(o)>=r)&&!c.started&&(e=>{!c.el||!1===(null==t?void 0:t(e,c.el))||(c.originalTouchAction=c.el.style.touchAction,c.el.style.touchAction="none",c.originalUserSelect=document.documentElement.style.userSelect,document.documentElement.style.userSelect="none",c.started=!0)})(i),c.started&&(null==e||e(i,n,o),c.lastPosition={x:i.clientX,y:i.clientY})}},p=t=>{var e;if(t.pointerId===c.id){c.longPressTimer&&clearTimeout(c.longPressTimer);const r=c.longPressTriggered;c.longPressTriggered=!1,c.started&&(null==i||i(t)),c.el&&("pointercancel"!==t.type&&(null==(e=l.onPointerUp)||e.call(l,t,c.el),t.target&&c.el.contains(t.target)&&(r?null==s||s(t,c.el):null==a||a(t,c.el))),document.documentElement.style.userSelect=c.originalUserSelect||"",c.el.style.touchAction=c.originalTouchAction||""),c.id=void 0,c.started=!1,u(window,"pointermove",d,!1),u(window,"pointerup",p,!1),u(window,"pointercancel",p,!1)}};return{domProps:{onPointerDown:Mt(i=>{var r;if(0===i.button&&null==c.id){if(c.started=!1,!1===(null==(r=l.onPointerDown)?void 0:r.call(l,i)))return;o&&i.stopPropagation(),n&&i.preventDefault(),c.id=i.pointerId,c.el=i.currentTarget,c.lastPosition={x:i.clientX,y:i.clientY},s&&(c.longPressTimer=setTimeout(()=>{s(i,c.el),c.longPressTriggered=!0},400)),(t||e)&&h(window,"pointermove",d,!1),h(window,"pointerup",p,!1),h(window,"pointercancel",p,!1)}})}}}function O5(t,e){const i={...t};i.left=Math.max(0,i.left);const r=i.left-t.left;r>0&&(i.width-=r),i.top=Math.max(0,i.top);const n=i.top-t.top;return n>0&&(i.height-=n),i.width=Math.min(i.width,e.width-i.left),i.height=Math.min(i.height,e.height-i.top),i}function Ki(t){return{left:t.left,top:t.top,width:t.width,height:t.height}}var lt=(t=>(t.topLeft="topLeft",t.topRight="topRight",t.bottomLeft="bottomLeft",t.bottomRight="bottomRight",t))(lt||{});let Ee={};const qu=(t={})=>{di(null),Ee=t};function $p({aspectRatio:t,boundaryRef:e,boundaryRect:i,restrictWithinBoundary:r=!0,minWidth:n=50,minHeight:o=50,...a}){const s={onMoveStart:(t,r)=>{var n;const o=t.target;if(!o.dataset.resizeHandle||(qu({currentRect:Ki(r.getBoundingClientRect()),resizeDir:o.dataset.resizeHandle}),!Ee.currentRect))return!1;di("resize"),i?Ee.boundaryRect=i:null!=e&&e.current&&(Ee.boundaryRect=Ki(e.current.getBoundingClientRect())),Ee.currentRect&&Ee.boundaryRect&&(Ee.currentRect.left-=Ee.boundaryRect.left,Ee.currentRect.top-=Ee.boundaryRect.top),Ee.initialAspectRatio=Ee.currentRect.width/Ee.currentRect.height,null==(n=a.onResizeStart)||n.call(a,Dt({rect:Ee.currentRect,e:t}))},onMove:(e,i,r)=>{var s;if(!Ee.resizeDir||!Ee.currentRect)return;const l="initial"===t?Ee.initialAspectRatio:t,c=P5(Ee.currentRect,i,r,l),h=M5(c,n,o,l);null==(s=a.onResize)||s.call(a,Dt({rect:h,e,deltaX:i,deltaY:r})),Ee.currentRect=c},onMoveEnd:t=>{var e;Ee.currentRect&&(null==(e=a.onResizeEnd)||e.call(a,Dt({rect:Ee.currentRect,e:t}))),qu()}},{domProps:l}=$o(s);return{resizeProps:l}}function P5(t,e,i,r){const n={...t},o={...t};return"topRight"===Ee.resizeDir?(o.width=Math.floor(o.width+e),o.height=r?Math.floor(o.width/r):Math.floor(o.height-i),o.top=Math.floor(o.top+(n.height-o.height))):"bottomRight"===Ee.resizeDir?(o.width=Math.floor(o.width+e),o.height=r?Math.floor(o.width/r):Math.floor(o.height+i)):"topLeft"===Ee.resizeDir?(o.width=Math.floor(o.width-e),o.height=r?Math.floor(o.width/r):Math.floor(o.height-i),o.left=Math.floor(o.left+(n.width-o.width)),o.top=Math.floor(o.top+(n.height-o.height))):"bottomLeft"===Ee.resizeDir&&(o.width=Math.floor(o.width-e),o.height=r?Math.floor(o.width/r):Math.floor(o.height+i),o.left=Math.floor(o.left+e)),o}function M5(t,e,i,r){const n="bottomLeft"===Ee.resizeDir||"topLeft"===Ee.resizeDir,o="topRight"===Ee.resizeDir||"topLeft"===Ee.resizeDir;let a={...t};a.width=Math.max(e,t.width),a.height=Math.max(i,t.height);const s=a.width-t.width;n&&s>0&&(a.left-=s);const l=a.height-t.height;if(o&&l>0&&(a.top-=l),Ee.boundaryRect&&(a=O5(a,Ee.boundaryRect)),r){const t=a.width,e=a.height,i=Sl(r,a.width,a.height);a.width=i.width,a.height=i.height,o&&(a.top+=e-a.height),n&&(a.left+=t-a.width)}return a}function Xt({position:t,inset:e=!1}){const i=A5(t,e);return x("div",{"data-resize-handle":t,className:`border-white absolute w-20 h-20 ${i}`})}function A5(t,e){const i=e?"left-0":"-left-5",r=e?"top-0":"-top-5",n=e?"bottom-0":"-bottom-5",o=e?"right-0":"-right-5";switch(t){case lt.topLeft:return`${i} ${r} border-l-4 border-t-4 cursor-nwse-resize`;case lt.topRight:return`${o} ${r} border-r-4 border-t-4 cursor-nesw-resize`;case lt.bottomRight:return`${o} ${n} border-r-4 border-b-4 cursor-se-resize`;case lt.bottomLeft:return`${i} ${n} border-l-4 border-b-4 cursor-sw-resize`;default:return""}}var Si=(t=>(t.top="maskTop",t.right="maskRight",t.bottom="maskBottom",t.left="maskLeft",t))(Si||{});function An({position:t,refs:e}){const i=D5(t);return x("div",{className:`cropzone-transition bg-black/50 bottom absolute ${i}`,ref:i=>e.current[t]=i})}function D5(t){switch(t){case"maskTop":return"left-0 top-0";case"maskBottom":return"bottom-0 left-0";default:return""}}function Dn({name:t,refs:e}){const i=ue("cropzone-transition pointer-events-none absolute left-0 top-0 bg-white/50",t.startsWith("lineHor")?"h-px":"w-px");return x("div",{className:i,ref:i=>{e.current[t]=i}})}function go(t,e,i){return Math.min(Math.max(t,e),i)}let Be={};function Hp({boundaryRef:t,boundaryRect:e,minimumMovement:i,restrictWithinBoundary:r=!0,...n}){const o={minimumMovement:i,onMoveStart:(i,r)=>{var o;if(_l)return!1;Be={currentRect:Ki(r.getBoundingClientRect())},di("move"),e?Be.boundaryRect=e:null!=t&&t.current&&(Be.boundaryRect=Ki(t.current.getBoundingClientRect())),Be.currentRect&&Be.boundaryRect&&(Be.currentRect.left-=Be.boundaryRect.left,Be.currentRect.top-=Be.boundaryRect.top),null==(o=n.onMoveStart)||o.call(n,Dt({rect:Be.currentRect,e:i}))},onMove:(t,e,i)=>{var o;if(!Be.currentRect)return;const a={...Be.currentRect,left:Be.currentRect.left+e,top:Be.currentRect.top+i},s={...a};Be.boundaryRect&&r&&(s.left=go(a.left,0,Be.boundaryRect.width-a.width),s.top=go(a.top,0,Be.boundaryRect.height-a.height)),null==(o=n.onMove)||o.call(n,Dt({rect:s,e:t,deltaX:e,deltaY:i})),Be.currentRect=a},onMoveEnd:t=>{var e;!Be.currentRect||(null==(e=n.onMoveEnd)||e.call(n,Dt({rect:Be.currentRect,e:t})),di(null),Be={})}},{domProps:a}=$o(o);return{moveProps:a}}function I5(){const t=de({}),[e,i]=Ae(!0),r=oe(t=>t.canvasSize),n=oe(t=>{var e,i;return null==(i=null==(e=t.config.tools)?void 0:e.crop)?void 0:i.cropzone}),o=oe(t=>{var e,i;return null==(i=null==(e=t.config.tools)?void 0:e.crop)?void 0:i.defaultRatio})||null,a=oe(t=>t.crop.selectedAspectRatio)||null,{moveProps:s}=Hp({boundaryRect:r,onMoveStart:()=>i(!0),onMove:t=>I().crop.drawZone(t.rect),onMoveEnd:()=>i(!1)}),{resizeProps:l}=$p({boundaryRect:r,minHeight:50,minWidth:50,aspectRatio:Cl(a),onResizeStart:()=>i(!0),onResize:t=>I().crop.drawZone(t.rect),onResizeEnd:()=>i(!1)});pi(()=>{I().crop.registerRefs(t),I().crop.resetCropzone(o)},[o,r]);const c=ue("cropzone absolute z-cropzone isolate left-0 top-0 w-full h-full overflow-hidden",e&&"moving");return ie("div",{className:c,onPointerDown:t=>{t.stopPropagation(),t.preventDefault()},children:[ie("div",{className:"cropzone-transition border-white/50 absolute z-10 left-0 top-0 border",...vi(l,s),ref:e=>t.current.innerZone=e,children:[!(null!=n&&n.hideTopLeft)&&x(Xt,{position:lt.topLeft,inset:!0}),!(null!=n&&n.hideTopRight)&&x(Xt,{position:lt.topRight,inset:!0}),!(null!=n&&n.hideBottomLeft)&&x(Xt,{position:lt.bottomLeft,inset:!0}),!(null!=n&&n.hideBottomRight)&&x(Xt,{position:lt.bottomRight,inset:!0}),x(Dn,{name:"lineVer1",refs:t}),x(Dn,{name:"lineVer2",refs:t}),x(Dn,{name:"lineHor1",refs:t}),x(Dn,{name:"lineHor2",refs:t})]}),x(An,{refs:t,position:Si.top}),x(An,{refs:t,position:Si.left}),x(An,{refs:t,position:Si.right}),x(An,{refs:t,position:Si.bottom})]})}const R5=me(x("path",{d:"M 7 2 C 6.448 2 6 2.448 6 3 C 6 3.552 6.448 4 7 4 L 20 4 L 20 17 C 20 17.552 20.448 18 21 18 C 21.552 18 22 17.552 22 17 L 22 4 C 22 2.895 21.105 2 20 2 L 7 2 z M 4 6 C 2.895 6 2 6.895 2 8 L 2 20 C 2 21.105 2.895 22 4 22 L 16 22 C 17.105 22 18 21.105 18 20 L 18 8 C 18 6.895 17.105 6 16 6 L 4 6 z M 10 10 C 10.552 10 11 10.448 11 11 L 11 13 L 13 13 C 13.552 13 14 13.448 14 14 C 14 14.552 13.552 15 13 15 L 11 15 L 11 17 C 11 17.552 10.552 18 10 18 C 9.448 18 9 17.552 9 17 L 9 15 L 7 15 C 6.448 15 6 14.552 6 14 C 6 13.448 6.448 13 7 13 L 9 13 L 9 11 C 9 10.448 9.448 10 10 10 z"})),L5=me(x("path",{d:"M 11 3 L 2 21 L 11 21 L 11 3 z M 13 3 L 13 21 L 22 21 L 13 3 z M 9 11.472656 L 9 19 L 5.2363281 19 L 9 11.472656 z"})),F5=me(x("path",{d:"M 16.476562 2.4511719 C 16.392047 2.4657656 16.308531 2.5061719 16.238281 2.5761719 L 14.130859 4.6835938 C 13.956859 4.8575938 13.956859 5.1394531 14.130859 5.3144531 L 16.238281 7.4238281 C 16.519281 7.7048281 17 7.5054219 17 7.1074219 L 17 6 L 20 6 L 20 9 A 1.0001 1.0001 0 1 0 22 9 L 22 6 C 22 4.9069372 21.093063 4 20 4 L 17 4 L 17 2.8925781 C 17 2.5940781 16.730109 2.4073906 16.476562 2.4511719 z M 4 5 C 2.9069372 5 2 5.9069372 2 7 L 2 14 C 2 15.093063 2.9069372 16 4 16 L 7 16 L 7 19 C 7 20.105 7.895 21 9 21 L 16 21 C 17.105 21 18 20.105 18 19 L 18 12 C 18 10.895 17.105 10 16 10 L 13 10 L 13 7 C 13 5.9069372 12.093063 5 11 5 L 4 5 z M 4 7 L 11 7 L 11 14 L 4 14 L 4 7 z"})),z5=me(x("path",{d:"M 10 2 L 9 3 L 3 3 L 3 5 L 21 5 L 21 3 L 15 3 L 14 2 L 10 2 z M 4.3652344 7 L 5.8925781 20.263672 C 6.0245781 21.253672 6.877 22 7.875 22 L 16.123047 22 C 17.121047 22 17.974422 21.254859 18.107422 20.255859 L 19.634766 7 L 4.3652344 7 z"})),j5={width:120,height:30},B5=[{name:"Duplicate",icon:R5,onClick:()=>{I().objects.duplicate()}},{name:"Flip",icon:L5,onClick:()=>{I().objects.flipHorizontally()}},{name:"Bring to front",icon:F5,onClick:()=>{I().objects.bringToFront()}},{name:"Delete",icon:z5,onClick:()=>{I().objects.delete()}}],N5=ae.forwardRef((t,e)=>{const i=oe(t=>t.objects.active.isMoving)?"opacity-0":"opacity-100";return x("div",{ref:e,className:`${i} absolute z-obj-box left-0 top-0 flex items-center text-white bg-controls rounded shadow transition-opacity overflow-hidden`,children:B5.map(t=>{const e=t.icon;return x(Me,{size:"sm",className:"w-30 h-30 hover:bg-white/hover",radius:"rounded-none",onClick:t.onClick,children:x(e,{})},t.name)})})});function V5(t,e){if(!e)return;const i=t.angle||0,r=i>168&&i<188?-30:-15,n=O().canvasSize,o=O().stageSize,a=j5,s=n.top-o.top,l=n.left-o.left,c=o.width-(l+n.width),h=o.height-(s+n.height),u=-s,d=-(n.left-o.left),p=n.width-a.width+c,f=n.height-a.height+h,g=t.getBoundingRect();let m=g.top-a.height+r,v=g.left+g.width/2-a.width/2;m=Math.min(f,Math.max(u,m)),v=Math.min(p,Math.max(d,v)),e.style.transform=`translate(${v}px, ${m}px) rotate(0deg)`}function $5(t){const e=I().objects.getActive();if(!e||!t.rect.angle)return;const i=ve.fabric.util.radiansToDegrees(t.rect.angle);i!==e.angle&&I().objects.setValues({angle:i})}function H5(t){const e=t.rect.width/2,i=t.rect.height/2;I().objects.setValues({left:(t.rect.left+e)/O().zoom,top:(t.rect.top+i)/O().zoom})}function U5(t){const e=I().objects.getActive();if(!e)return;const i={};lr(e)?(t.deltaX>0||e.getScaledHeight()>=20&&e.getScaledWidth()>=20)&&(i.fontSize=(e.fontSize||1)+t.deltaX):(e.width&&(i.scaleX=t.rect.width/O().zoom/e.width),e.height&&(i.scaleY=t.rect.height/O().zoom/e.height)),I().objects.setValues(i)}function Ku(t,e){var i,r,n;const o=I().objects.getActive();if(!o||!t.current)return;const a=t.current,s=ve.fabric.util.degreesToRadians(null!=(i=o.angle)?i:0);let l=Math.round(o.getScaledWidth()*O().zoom),c=Math.round(o.getScaledHeight()*O().zoom),h=Math.round((null!=(r=o.left)?r:0)*O().zoom),u=Math.round((null!=(n=o.top)?n:0)*O().zoom);const d="center"===o.originX?l/2:0,p="center"===o.originY?c/2:0;o.padding&&(l+=2*o.padding,c+=2*o.padding,h-=o.padding,u-=o.padding),a.style.width=`${l}px`,a.style.height=`${c}px`,a.style.transform=`translate(${h-d}px, ${u-p}px) rotate(${s}rad)`,I().canvas.render(),V5(o,e.current)}function W5(){var t;const e=I().objects.getActive();lr(e)&&(e.enterEditing(),null==(t=e.hiddenTextarea)||t.focus())}function Y5(){return x("div",{className:"absolute -bottom-20 left-1/2 w-2 h-20 bg-white cursor-default -translate-x-1/2",children:x("div",{"data-rotate-handle":!0,className:"w-18 h-18 absolute -bottom-10 -left-8 bg-white rounded-full cursor-move"})})}let _t={};function X5(t){const e={onMoveStart:(e,i)=>{var r,n;if(!e.target.dataset.rotateHandle)return!1;const o=Ki(i.getBoundingClientRect());if(!o)return!1;const a=null==(r=i.style.transform.match(/rotate\((.+?)\)/))?void 0:r[1],[s="0"]=a?a.split(","):[];Ju({currentRect:o,centerX:o.left+o.width/2,centerY:o.top+o.height/2,startAngle:parseFloat(s)}),di("rotate"),_t.startAngle=Zu(e),null==(n=t.onRotateStart)||n.call(t,Dt({rect:o,e}))},onMove:(e,i,r)=>{var n;if(!_t.currentRect)return;const o={..._t.currentRect};o.angle=Zu(e),o.left+=i,o.top+=r,null==(n=t.onRotate)||n.call(t,Dt({rect:o,e,deltaX:i,deltaY:r})),_t.currentRect=o},onMoveEnd:e=>{var i;_t.currentRect&&(null==(i=t.onRotateEnd)||i.call(t,Dt({rect:_t.currentRect,e}))),Ju()}},{domProps:i}=$o(e);return{rotateProps:i}}function Zu(t){const e=_t.centerX||0,i=_t.centerY||0;return Math.atan2(i-t.pageY,e-t.pageX)-(_t.startAngle||0)}const Ju=(t={})=>{di(null),_t=t};function G5(){const t=de(null),e=de(null),i=oe(t=>t.objects.active.id),r=oe(t=>t.objects.isEditingText),n=oe(t=>t.zoom),o=q5(),a=de(null),s=Ie(()=>{a.current?(clearTimeout(a.current),a.current=null,W5()):a.current=setTimeout(()=>{a.current=null},300)},[]);let{moveProps:l}=Hp({boundaryRef:O().canvasRef,restrictWithinBoundary:!1,onMoveEnd:()=>{O().objects.setActiveIsMoving(!1)},onMove:t=>{O().objects.setActiveIsMoving(!0),H5(t)}});o.lockMovement&&(l={});const{resizeProps:c}=$p({minWidth:50,minHeight:50,aspectRatio:o.unlockAspectRatio?null:"initial",boundaryRef:O().canvasRef,restrictWithinBoundary:!1,onResizeEnd:()=>{O().objects.setActiveIsMoving(!1)},onResize:t=>{O().objects.setActiveIsMoving(!0),U5(t)}}),{rotateProps:h}=X5({boundaryRef:O().canvasRef,onRotateEnd:()=>{O().objects.setActiveIsMoving(!1)},onRotate:t=>{O().objects.setActiveIsMoving(!0),$5(t)}});return xe(()=>{!he()||O().editor.on("object:modified",i=>{i.sizeOrPositionChanged&&Ku(t,e)})},[]),xe(()=>{Ku(t,e)},[i,n,r]),ie("div",{className:i&&!r?"block":"hidden",children:[ie("div",{ref:t,...vi(h,c,l),onClick:s,className:"absolute z-obj-box border-2 border-white shadow-md cursor-move",children:[!o.hideTopLeft&&x(Xt,{position:lt.topLeft}),!o.hideTopRight&&x(Xt,{position:lt.topRight}),!o.hideBottomLeft&&x(Xt,{position:lt.bottomLeft}),!o.hideBottomRight&&x(Xt,{position:lt.bottomRight}),!o.hideRotatingPoint&&x(Y5,{})]}),x(N5,{ref:e})]})}function q5(){const t=I().objects.getActive();if(!t||!t.name)return{};const e=O().config.objectControls||{},i=t.name;return{...e.global,...e[i]}}function K5(){const t=oe(t=>t.activeTool===Pe.CROP),e=oe(t=>t.objects.active.id);return ie("div",{children:[t&&x(I5,{}),e&&x(G5,{})]})}const Z5=E5([d5,p5]),J5=ae.forwardRef((t,e)=>{const[i,r]=Ae(!1);return xe(()=>oe.subscribe(t=>t.loading,t=>{r(!t)}),[]),x(Q5,{children:ie(ot.div,{initial:{opacity:0},variants:{visible:{opacity:1,transition:{duration:.35,delay:.5}},hidden:{opacity:0,transition:{duration:0}}},animate:i?"visible":"hidden",className:"relative m-auto",style:{backgroundImage:`url(${ct("images/empty-canvas-bg.png")})`},children:[x(K5,{}),x("canvas",{ref:e})]})})});function Q5({children:t}){const e=de(null),i=Z5({onPinch:t=>{if(!I().zoom.allowUserZoom||!Qu(t))return t.cancel();1===t.direction[0]?I().zoom.zoomIn(.01):I().zoom.zoomOut(.01),t.event.stopPropagation(),t.event.preventDefault()},onDrag:t=>{if(t.pinching||!Qu(t))return t.cancel();e.current.scrollLeft-=t.delta[0],e.current.scrollTop-=t.delta[1]}});return x("div",{ref:e,className:"flex items-center justify-center w-full h-full overflow-hidden touch-none",...i(),children:t})}function Qu(t){return!(he().findTarget(t.event,!1)||he().isDrawingMode)}function Fl({actionBtn:t,children:e,className:i}){return ie("div",{className:ue(i,"flex gap-16 items-center h-full"),children:[t&&x("div",{className:"flex-shrink-0",children:t}),x("div",{className:"w-full flex-auto",children:e}),t&&x("div",{className:"w-96"})]})}function yi(){return(yi=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var i=arguments[e];for(var r in i)Object.prototype.hasOwnProperty.call(i,r)&&(t[r]=i[r])}return t}).apply(this,arguments)}function Ho(t,e){if(null==t)return{};var i,r,n={},o=Object.keys(t);for(r=0;r<o.length;r++)e.indexOf(i=o[r])>=0||(n[i]=t[i]);return n}function Zi(t){var e=de(t),i=de(function(t){e.current&&e.current(t)});return e.current=t,i.current}var Ji=function(t,e,i){return void 0===e&&(e=0),void 0===i&&(i=1),t>i?i:t<e?e:t},Mi=function(t){return"touches"in t},Sa=function(t){return t&&t.ownerDocument.defaultView||self},eh=function(t,e,i){var r=t.getBoundingClientRect(),n=Mi(e)?function(t,e){for(var i=0;i<t.length;i++)if(t[i].identifier===e)return t[i];return t[0]}(e.touches,i):e;return{left:Ji((n.pageX-(r.left+Sa(t).pageXOffset))/r.width),top:Ji((n.pageY-(r.top+Sa(t).pageYOffset))/r.height)}},th=function(t){!Mi(t)&&t.preventDefault()},Up=ae.memo(function(t){var e=t.onMove,i=t.onKey,r=Ho(t,["onMove","onKey"]),n=de(null),o=Zi(e),a=Zi(i),s=de(null),l=de(!1),c=Je(function(){var t=function(t){th(t),(Mi(t)?t.touches.length>0:t.buttons>0)&&n.current?o(eh(n.current,t,s.current)):i(!1)},e=function(){return i(!1)};function i(i){var r=l.current,o=Sa(n.current),a=i?o.addEventListener:o.removeEventListener;a(r?"touchmove":"mousemove",t),a(r?"touchend":"mouseup",e)}return[function(t){var e,r=t.nativeEvent,a=n.current;if(a&&(th(r),e=r,(!l.current||Mi(e))&&a)){if(Mi(r)){l.current=!0;var c=r.changedTouches||[];c.length&&(s.current=c[0].identifier)}a.focus(),o(eh(a,r,s.current)),i(!0)}},function(t){var e=t.which||t.keyCode;e<37||e>40||(t.preventDefault(),a({left:39===e?.05:37===e?-.05:0,top:40===e?.05:38===e?-.05:0}))},i]},[a,o]),h=c[0],u=c[1],d=c[2];return xe(function(){return d},[d]),x("div",{...yi({},r,{onTouchStart:h,onMouseDown:h,className:"react-colorful__interactive",ref:n,onKeyDown:u,tabIndex:0,role:"slider"})})}),zl=function(t){return t.filter(Boolean).join(" ")},Wp=function(t){var e=t.color,i=t.left,r=t.top,n=void 0===r?.5:r,o=zl(["react-colorful__pointer",t.className]);return x("div",{className:o,style:{top:100*n+"%",left:100*i+"%"},children:x("div",{className:"react-colorful__pointer-fill",style:{backgroundColor:e}})})},Ge=function(t,e,i){return void 0===e&&(e=0),void 0===i&&(i=Math.pow(10,e)),Math.round(i*t)/i},ek=function(t){return ok(Ca(t))},Ca=function(t){return"#"===t[0]&&(t=t.substring(1)),t.length<6?{r:parseInt(t[0]+t[0],16),g:parseInt(t[1]+t[1],16),b:parseInt(t[2]+t[2],16),a:4===t.length?Ge(parseInt(t[3]+t[3],16)/255,2):1}:{r:parseInt(t.substring(0,2),16),g:parseInt(t.substring(2,4),16),b:parseInt(t.substring(4,6),16),a:8===t.length?Ge(parseInt(t.substring(6,8),16)/255,2):1}},tk=function(t){return nk(ik(t))},rk=function(t){var e=t.s,i=t.v,r=t.a,n=(200-e)*i/100;return{h:Ge(t.h),s:Ge(n>0&&n<200?e*i/100/(n<=100?n:200-n)*100:0),l:Ge(n/2),a:Ge(r,2)}},Ta=function(t){var e=rk(t);return"hsl("+e.h+", "+e.s+"%, "+e.l+"%)"},ik=function(t){var e=t.h,i=t.s,r=t.v,n=t.a;e=e/360*6,i/=100,r/=100;var o=Math.floor(e),a=r*(1-i),s=r*(1-(e-o)*i),l=r*(1-(1-e+o)*i),c=o%6;return{r:Ge(255*[r,s,a,a,l,r][c]),g:Ge(255*[l,r,r,s,a,a][c]),b:Ge(255*[a,a,l,r,r,s][c]),a:Ge(n,2)}},In=function(t){var e=t.toString(16);return e.length<2?"0"+e:e},nk=function(t){var e=t.r,i=t.g,r=t.b,n=t.a,o=n<1?In(Ge(255*n)):"";return"#"+In(e)+In(i)+In(r)+o},ok=function(t){var e=t.r,i=t.g,r=t.b,n=t.a,o=Math.max(e,i,r),a=o-Math.min(e,i,r),s=a?o===e?(i-r)/a:o===i?2+(r-e)/a:4+(e-i)/a:0;return{h:Ge(60*(s<0?s+6:s)),s:Ge(o?a/o*100:0),v:Ge(o/255*100),a:n}},sk=ae.memo(function(t){var e=t.hue,i=t.onChange,r=zl(["react-colorful__hue",t.className]);return ae.createElement("div",{className:r},ae.createElement(Up,{onMove:function(t){i({h:360*t.left})},onKey:function(t){i({h:Ji(e+360*t.left,0,360)})},"aria-label":"Hue","aria-valuenow":Ge(e),"aria-valuemax":"360","aria-valuemin":"0"},ae.createElement(Wp,{className:"react-colorful__hue-pointer",left:e/360,color:Ta({h:e,s:100,v:100,a:1})})))}),ak=ae.memo(function(t){var e=t.hsva,i=t.onChange,r={backgroundColor:Ta({h:e.h,s:100,v:100,a:1})};return ae.createElement("div",{className:"react-colorful__saturation",style:r},ae.createElement(Up,{onMove:function(t){i({s:100*t.left,v:100-100*t.top})},onKey:function(t){i({s:Ji(e.s+100*t.left,0,100),v:Ji(e.v-100*t.top,0,100)})},"aria-label":"Color","aria-valuetext":"Saturation "+Ge(e.s)+"%, Brightness "+Ge(e.v)+"%"},ae.createElement(Wp,{className:"react-colorful__saturation-pointer",top:1-e.v/100,left:e.s/100,color:Ta(e)})))}),Yp=function(t,e){if(t===e)return!0;for(var i in t)if(t[i]!==e[i])return!1;return!0},lk=function(t,e){return t.toLowerCase()===e.toLowerCase()||Yp(Ca(t),Ca(e))};function ck(t,e,i){var r=Zi(i),n=Ae(function(){return t.toHsva(e)}),o=n[0],a=n[1],s=de({color:e,hsva:o});xe(function(){if(!t.equal(e,s.current.color)){var i=t.toHsva(e);s.current={hsva:i,color:e},a(i)}},[e,t]),xe(function(){var e;Yp(o,s.current.hsva)||t.equal(e=t.fromHsva(o),s.current.color)||(s.current={hsva:o,color:e},r(e))},[o,t,r]);var l=Ie(function(t){a(function(e){return Object.assign({},e,t)})},[]);return[o,l]}var uk=typeof window<"u"?pi:xe,hk=function(){return typeof __webpack_nonce__<"u"?__webpack_nonce__:void 0},rh=new Map,fk=function(t){uk(function(){var e=t.current?t.current.ownerDocument:document;if(void 0!==e&&!rh.has(e)){var i=e.createElement("style");i.innerHTML='.react-colorful{position:relative;display:flex;flex-direction:column;width:200px;height:200px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.react-colorful__saturation{position:relative;flex-grow:1;border-color:transparent;border-bottom:12px solid #000;border-radius:8px 8px 0 0;background-image:linear-gradient(0deg,#000,transparent),linear-gradient(90deg,#fff,hsla(0,0%,100%,0))}.react-colorful__alpha-gradient,.react-colorful__pointer-fill{content:"";position:absolute;left:0;top:0;right:0;bottom:0;pointer-events:none;border-radius:inherit}.react-colorful__alpha-gradient,.react-colorful__saturation{box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)}.react-colorful__alpha,.react-colorful__hue{position:relative;height:24px}.react-colorful__hue{background:linear-gradient(90deg,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red)}.react-colorful__last-control{border-radius:0 0 8px 8px}.react-colorful__interactive{position:absolute;left:0;top:0;right:0;bottom:0;border-radius:inherit;outline:none;touch-action:none}.react-colorful__pointer{position:absolute;z-index:1;box-sizing:border-box;width:28px;height:28px;transform:translate(-50%,-50%);background-color:#fff;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2)}.react-colorful__interactive:focus .react-colorful__pointer{transform:translate(-50%,-50%) scale(1.1)}.react-colorful__alpha,.react-colorful__alpha-pointer{background-color:#fff;background-image:url(\'data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill-opacity=".05"><path d="M8 0h8v8H8zM0 8h8v8H0z"/></svg>\')}.react-colorful__saturation-pointer{z-index:3}.react-colorful__hue-pointer{z-index:2}',rh.set(e,i);var r=hk();r&&i.setAttribute("nonce",r),e.head.appendChild(i)}},[])},dk=function(t){var e=t.className,i=t.colorModel,r=t.color,n=void 0===r?i.defaultColor:r,o=t.onChange,a=Ho(t,["className","colorModel","color","onChange"]),s=de(null);fk(s);var l=ck(i,n,o),c=l[0],h=l[1],u=zl(["react-colorful",e]);return ie("div",{...yi({},a,{ref:s,className:u}),children:[x(ak,{hsva:c,onChange:h}),x(sk,{hue:c.h,onChange:h,className:"react-colorful__last-control"})]})},pk={defaultColor:"000",toHsva:ek,fromHsva:function(t){return tk({h:t.h,s:t.s,v:t.v,a:1})},equal:lk},gk=function(t){return x(dk,{...yi({},t,{colorModel:pk})})},mk=/^#?([0-9A-F]{3,8})$/i,vk=function(t){var e=t.color,i=void 0===e?"":e,r=t.onChange,n=t.onBlur,o=t.escape,a=t.validate,s=t.format,l=t.process,c=Ho(t,["color","onChange","onBlur","escape","validate","format","process"]),h=Ae(function(){return o(i)}),u=h[0],d=h[1],p=Zi(r),f=Zi(n),g=Ie(function(t){var e=o(t.target.value);d(e),a(e)&&p(l?l(e):e)},[o,l,a,p]),m=Ie(function(t){a(t.target.value)||d(o(i)),f(t)},[i,o,a,f]);return xe(function(){d(o(i))},[i,o]),x("input",{...yi({},c,{value:s?s(u):u,spellCheck:"false",onChange:g,onBlur:m})})},ih=function(t){return"#"+t},bk=function(t){var e=t.prefixed,i=t.alpha,r=Ho(t,["prefixed","alpha"]),n=Ie(function(t){return t.replace(/([^0-9A-F]+)/gi,"").substring(0,i?8:6)},[i]),o=Ie(function(t){return e=t,r=i,3===(o=(n=mk.exec(e))?n[1].length:0)||6===o||!!r&&4===o||!!r&&8===o;var e,r,n,o},[i]);return ae.createElement(vk,yi({},r,{escape:n,format:e?ih:void 0,process:ih,validate:o}))};function yk(t){return t&&t.__esModule?t.default:t}var Xp={},Gp={},qp={},Kp={},Zp={},Jp={},Qp={},eg={},tg={},rg={},ig={},ng={},og={},sg={},ag={},lg={},cg={},ug={},hg={},fg={},dg={},pg={},gg={},mg={},vg={},bg={},yg={},wg={},xg={},_g={},Sg={},Cg={},Tg={},kg={},Eg={};const wk=new YC(yk(Xp={"ar-AE":Gp={alpha:"ألفا",blue:"أزرق",brightness:"السطوع",green:"أخضر",hue:"درجة اللون",lightness:"الإضاءة",red:"أحمر",saturation:"التشبع"},"bg-BG":qp={alpha:"Алфа",blue:"Синьо",brightness:"Яркост",green:"Зелено",hue:"Оттенък",lightness:"Лекота",red:"Червено",saturation:"Наситеност"},"cs-CZ":Kp={alpha:"Alfa",blue:"Modrá",brightness:"Jas",green:"Zelená",hue:"Odstín",lightness:"Světlost",red:"Červená",saturation:"Sytost"},"da-DK":Zp={alpha:"Alfa",blue:"Blå",brightness:"Lysstyrke",green:"Grøn",hue:"Tone",lightness:"Lyshed",red:"Rød",saturation:"Farvemætning"},"de-DE":Jp={alpha:"Alpha",blue:"Blau",brightness:"Helligkeit",green:"Grün",hue:"Farbton",lightness:"Leuchtkraft",red:"Rot",saturation:"Sättigung"},"el-GR":Qp={alpha:"Άλφα",blue:"Μπλε",brightness:"Φωτεινότητα",green:"Πράσινο",hue:"Τόνος",lightness:"Φωτεινότητα",red:"Κόκκινο",saturation:"Κορεσμός"},"en-US":eg={hue:"Hue",saturation:"Saturation",lightness:"Lightness",brightness:"Brightness",red:"Red",green:"Green",blue:"Blue",alpha:"Alpha"},"es-ES":tg={alpha:"Alpha",blue:"Azul",brightness:"Brillo",green:"Verde",hue:"Tono",lightness:"Luminosidad",red:"Rojo",saturation:"Saturación"},"et-EE":rg={alpha:"Alfa",blue:"Sinine",brightness:"Heledus",green:"Roheline",hue:"Värv",lightness:"Valgus",red:"Punane",saturation:"Küllastus"},"fi-FI":ig={alpha:"Alpha",blue:"Sininen",brightness:"Kirkkaus",green:"Vihreä",hue:"Sävy",lightness:"Valomäärä",red:"Punainen",saturation:"Värikylläisyys"},"fr-FR":ng={alpha:"Alpha",blue:"Bleu",brightness:"Luminosité",green:"Vert",hue:"Teinte",lightness:"Luminosité",red:"Rouge",saturation:"Saturation"},"he-IL":og={alpha:"אלפא",blue:"כחול",brightness:"בהירות",green:"ירוק",hue:"גוון",lightness:"כמות אור",red:"אדום",saturation:"רוויה"},"hr-HR":sg={alpha:"Alfa",blue:"Plava",brightness:"Svjetlina",green:"Zelena",hue:"Nijansa",lightness:"Osvijetljenost",red:"Crvena",saturation:"Zasićenost"},"hu-HU":ag={alpha:"Alfa",blue:"Kék",brightness:"Fényesség",green:"Zöld",hue:"Színárnyalat",lightness:"Világosság",red:"Piros",saturation:"Telítettség"},"it-IT":lg={alpha:"Alfa",blue:"Blu",brightness:"Luminosità",green:"Verde",hue:"Tonalità",lightness:"Luminosità",red:"Rosso",saturation:"Saturazione"},"ja-JP":cg={alpha:"アルファ",blue:"青",brightness:"明るさ",green:"緑",hue:"色相",lightness:"明度",red:"赤",saturation:"彩度"},"ko-KR":ug={alpha:"알파",blue:"파랑",brightness:"명도",green:"초록",hue:"색조",lightness:"밝기",red:"빨강",saturation:"채도"},"lt-LT":hg={alpha:"Alfa",blue:"Mėlyna",brightness:"Ryškumas",green:"Žalia",hue:"Atspalvis",lightness:"Šviesumas",red:"Raudona",saturation:"Įsotinimas"},"lv-LV":fg={alpha:"Alfa",blue:"Zila",brightness:"Spilgtums",green:"Zaļa",hue:"Nokrāsa",lightness:"Gaišums",red:"Sarkana",saturation:"Piesātinājums"},"nb-NO":dg={alpha:"Alfa",blue:"Blå",brightness:"Lysstyrke",green:"Grønn",hue:"Fargetone",lightness:"Lyshet",red:"Rød",saturation:"Metning"},"nl-NL":pg={alpha:"Alfa",blue:"Blauw",brightness:"Helderheid",green:"Groen",hue:"Kleurtoon",lightness:"Lichtsterkte",red:"Rood",saturation:"Verzadiging"},"pl-PL":gg={alpha:"Alfa",blue:"Niebieski",brightness:"Jasność",green:"Zielony",hue:"Odcień",lightness:"Jaskrawość",red:"Czerwony",saturation:"Nasycenie"},"pt-BR":mg={alpha:"Alfa",blue:"Azul",brightness:"Brilho",green:"Verde",hue:"Matiz",lightness:"Luminosidade",red:"Vermelho",saturation:"Saturação"},"pt-PT":vg={alpha:"Alfa",blue:"Azul",brightness:"Luminosidade",green:"Verde",hue:"Tonalidade",lightness:"Claridade",red:"Vermelho",saturation:"Saturação"},"ro-RO":bg={alpha:"Alfa",blue:"Albastru",brightness:"Luminozitate",green:"Verde",hue:"Nuanță",lightness:"Luminozitate",red:"Roșu",saturation:"Saturație"},"ru-RU":yg={alpha:"Альфа",blue:"Синий",brightness:"Яркость",green:"Зеленый",hue:"Оттенок",lightness:"Освещенность",red:"Красный",saturation:"Насыщенность"},"sk-SK":wg={alpha:"Alfa",blue:"Modrá",brightness:"Jas",green:"Zelená",hue:"Odtieň",lightness:"Svetlosť",red:"Červená",saturation:"Sýtosť"},"sl-SI":xg={alpha:"Alfa",blue:"Modra",brightness:"Svetlost",green:"Zelena",hue:"Barva",lightness:"Lahkost",red:"Rdeča",saturation:"Nasičenost"},"sr-SP":_g={alpha:"Alfa",blue:"Plava",brightness:"Osvetljenost",green:"Zelena",hue:"Nijansa",lightness:"Osvetljenje",red:"Crvena",saturation:"Zasićenje"},"sv-SE":Sg={alpha:"Alfa",blue:"Blått",brightness:"Ljusstyrka",green:"Grönt",hue:"Nyans",lightness:"Ljushet",red:"Rött",saturation:"Mättnad"},"tr-TR":Cg={alpha:"Alfa",blue:"Mavi",brightness:"Parlaklık",green:"Yeşil",hue:"Ton",lightness:"Canlılık",red:"Kırmızı",saturation:"Doygunluk"},"uk-UA":Tg={alpha:"Альфа",blue:"Синій",brightness:"Яскравість",green:"Зелений",hue:"Тон",lightness:"Освітленість",red:"Червоний",saturation:"Насиченість"},"zh-CN":kg={alpha:"Alpha",blue:"蓝色",brightness:"亮度",green:"绿色",hue:"色相",lightness:"明亮度",red:"红色",saturation:"饱和度"},"zh-TW":Eg={alpha:"Alpha",blue:"藍色",brightness:"亮度",green:"綠色",hue:"色相",lightness:"明亮",red:"紅色",saturation:"飽和度"}}));function pn(t){let e=Jt.parse(t)||Qt.parse(t)||er.parse(t);if(e)return e;throw new Error("Invalid color value: "+t)}class jl{toHexInt(){return this.toFormat("rgb").toHexInt()}getChannelValue(t){if(t in this)return this[t];throw new Error("Unsupported color channel: "+t)}withChannelValue(t,e){if(t in this){let i=this.clone();return i[t]=e,i}throw new Error("Unsupported color channel: "+t)}getChannelName(t,e){return wk.getStringForLocale(t,e)}getColorSpaceAxes(t){let{xChannel:e,yChannel:i}=t,r=e||this.getColorChannels().find(t=>t!==i),n=i||this.getColorChannels().find(t=>t!==r),o=this.getColorChannels().find(t=>t!==r&&t!==n);return{xChannel:r,yChannel:n,zChannel:o}}}class Jt extends jl{static parse(t){let e=[];if(/^#[\da-f]+$/i.test(t)&&[4,5,7,9].includes(t.length)){const i=(t.length<6?t.replace(/[^#]/gi,"$&$&"):t).slice(1).split("");for(;i.length>0;)e.push(parseInt(i.splice(0,2).join(""),16));e[3]=void 0!==e[3]?e[3]/255:void 0}const i=t.match(/^rgba?\((.*)\)$/);var r;return null!=i&&i[1]&&(e=i[1].split(",").map(t=>Number(t.trim())),e=e.map((t,e)=>_r(t,0,e<3?255:1))),e.length<3?void 0:new Jt(e[0],e[1],e[2],null!==(r=e[3])&&void 0!==r?r:1)}toString(t){switch(t){case"hex":return"#"+(this.red.toString(16).padStart(2,"0")+this.green.toString(16).padStart(2,"0")+this.blue.toString(16).padStart(2,"0")).toUpperCase();case"hexa":return"#"+(this.red.toString(16).padStart(2,"0")+this.green.toString(16).padStart(2,"0")+this.blue.toString(16).padStart(2,"0")+Math.round(255*this.alpha).toString(16).padStart(2,"0")).toUpperCase();case"rgb":return`rgb(${this.red}, ${this.green}, ${this.blue})`;case"css":case"rgba":return`rgba(${this.red}, ${this.green}, ${this.blue}, ${this.alpha})`;default:return this.toFormat(t).toString(t)}}toFormat(t){switch(t){case"hex":case"hexa":case"rgb":case"rgba":return this;case"hsb":case"hsba":return this.toHSB();case"hsl":case"hsla":return this.toHSL();default:throw new Error("Unsupported color conversion: rgb -> "+t)}}toHexInt(){return this.red<<16|this.green<<8|this.blue}toHSB(){const t=this.red/255,e=this.green/255,i=this.blue/255,r=Math.min(t,e,i),n=Math.max(t,e,i),o=n-r,a=0===n?0:o/n;let s=0;if(0!==o){switch(n){case t:s=(e-i)/o+(e<i?6:0);break;case e:s=(i-t)/o+2;break;case i:s=(t-e)/o+4}s/=6}return new Qt(He(360*s,2),He(100*a,2),He(100*n,2),this.alpha)}toHSL(){const t=this.red/255,e=this.green/255,i=this.blue/255,r=Math.min(t,e,i),n=Math.max(t,e,i),o=(n+r)/2,a=n-r;let s,l;if(0===a)s=l=0;else{switch(l=a/(o<.5?n+r:2-n-r),n){case t:s=(e-i)/a+(e<i?6:0);break;case e:s=(i-t)/a+2;break;case i:s=(t-e)/a+4}s/=6}return new er(He(360*s,2),He(100*l,2),He(100*o,2),this.alpha)}clone(){return new Jt(this.red,this.green,this.blue,this.alpha)}getChannelRange(t){switch(t){case"red":case"green":case"blue":return{minValue:0,maxValue:255,step:1,pageSize:17};case"alpha":return{minValue:0,maxValue:1,step:.01,pageSize:.1};default:throw new Error("Unknown color channel: "+t)}}formatChannelValue(t,e){let i,r=this.getChannelValue(t);switch(t){case"red":case"green":case"blue":i={style:"decimal"};break;case"alpha":i={style:"percent"};break;default:throw new Error("Unknown color channel: "+t)}return new Fo(e,i).format(r)}getColorSpace(){return"rgb"}getColorChannels(){return Jt.colorChannels}constructor(t,e,i,r){super(),this.red=t,this.green=e,this.blue=i,this.alpha=r}}Jt.colorChannels=["red","green","blue"];const xk=/hsb\(([-+]?\d+(?:.\d+)?\s*,\s*[-+]?\d+(?:.\d+)?%\s*,\s*[-+]?\d+(?:.\d+)?%)\)|hsba\(([-+]?\d+(?:.\d+)?\s*,\s*[-+]?\d+(?:.\d+)?%\s*,\s*[-+]?\d+(?:.\d+)?%\s*,\s*[-+]?\d(.\d+)?)\)/;class Qt extends jl{static parse(t){let e;if(e=t.match(xk)){var i;const[t,r,n,o]=(null!==(i=e[1])&&void 0!==i?i:e[2]).split(",").map(t=>Number(t.trim().replace("%","")));return new Qt(Og(t,360),_r(r,0,100),_r(n,0,100),_r(null!=o?o:1,0,1))}}toString(t){switch(t){case"css":return this.toHSL().toString("css");case"hex":return this.toRGB().toString("hex");case"hexa":return this.toRGB().toString("hexa");case"hsb":return`hsb(${this.hue}, ${He(this.saturation,2)}%, ${He(this.brightness,2)}%)`;case"hsba":return`hsba(${this.hue}, ${He(this.saturation,2)}%, ${He(this.brightness,2)}%, ${this.alpha})`;default:return this.toFormat(t).toString(t)}}toFormat(t){switch(t){case"hsb":case"hsba":return this;case"hsl":case"hsla":return this.toHSL();case"rgb":case"rgba":return this.toRGB();default:throw new Error("Unsupported color conversion: hsb -> "+t)}}toHSL(){let t=this.saturation/100,e=this.brightness/100,i=e*(1-t/2);return t=0===i||1===i?0:(e-i)/Math.min(i,1-i),new er(He(this.hue,2),He(100*t,2),He(100*i,2),this.alpha)}toRGB(){let t=this.hue,e=this.saturation/100,i=this.brightness/100,r=(r,n=(r+t/60)%6)=>i-e*i*Math.max(Math.min(n,4-n,1),0);return new Jt(Math.round(255*r(5)),Math.round(255*r(3)),Math.round(255*r(1)),this.alpha)}clone(){return new Qt(this.hue,this.saturation,this.brightness,this.alpha)}getChannelRange(t){switch(t){case"hue":return{minValue:0,maxValue:360,step:1,pageSize:15};case"saturation":case"brightness":return{minValue:0,maxValue:100,step:1,pageSize:10};case"alpha":return{minValue:0,maxValue:1,step:.01,pageSize:.1};default:throw new Error("Unknown color channel: "+t)}}formatChannelValue(t,e){let i,r=this.getChannelValue(t);switch(t){case"hue":i={style:"unit",unit:"degree",unitDisplay:"narrow"};break;case"saturation":case"brightness":i={style:"percent"},r/=100;break;case"alpha":i={style:"percent"};break;default:throw new Error("Unknown color channel: "+t)}return new Fo(e,i).format(r)}getColorSpace(){return"hsb"}getColorChannels(){return Qt.colorChannels}constructor(t,e,i,r){super(),this.hue=t,this.saturation=e,this.brightness=i,this.alpha=r}}Qt.colorChannels=["hue","saturation","brightness"];const _k=/hsl\(([-+]?\d+(?:.\d+)?\s*,\s*[-+]?\d+(?:.\d+)?%\s*,\s*[-+]?\d+(?:.\d+)?%)\)|hsla\(([-+]?\d+(?:.\d+)?\s*,\s*[-+]?\d+(?:.\d+)?%\s*,\s*[-+]?\d+(?:.\d+)?%\s*,\s*[-+]?\d(.\d+)?)\)/;function Og(t,e){return(t%e+e)%e}class er extends jl{static parse(t){let e;if(e=t.match(_k)){var i;const[t,r,n,o]=(null!==(i=e[1])&&void 0!==i?i:e[2]).split(",").map(t=>Number(t.trim().replace("%","")));return new er(Og(t,360),_r(r,0,100),_r(n,0,100),_r(null!=o?o:1,0,1))}}toString(t){switch(t){case"hex":return this.toRGB().toString("hex");case"hexa":return this.toRGB().toString("hexa");case"hsl":return`hsl(${this.hue}, ${He(this.saturation,2)}%, ${He(this.lightness,2)}%)`;case"css":case"hsla":return`hsla(${this.hue}, ${He(this.saturation,2)}%, ${He(this.lightness,2)}%, ${this.alpha})`;default:return this.toFormat(t).toString(t)}}toFormat(t){switch(t){case"hsl":case"hsla":return this;case"hsb":case"hsba":return this.toHSB();case"rgb":case"rgba":return this.toRGB();default:throw new Error("Unsupported color conversion: hsl -> "+t)}}toHSB(){let t=this.saturation/100,e=this.lightness/100,i=e+t*Math.min(e,1-e);return t=0===i?0:2*(1-e/i),new Qt(He(this.hue,2),He(100*t,2),He(100*i,2),this.alpha)}toRGB(){let t=this.hue,e=this.saturation/100,i=this.lightness/100,r=e*Math.min(i,1-i),n=(e,n=(e+t/30)%12)=>i-r*Math.max(Math.min(n-3,9-n,1),-1);return new Jt(Math.round(255*n(0)),Math.round(255*n(8)),Math.round(255*n(4)),this.alpha)}clone(){return new er(this.hue,this.saturation,this.lightness,this.alpha)}getChannelRange(t){switch(t){case"hue":return{minValue:0,maxValue:360,step:1,pageSize:15};case"saturation":case"lightness":return{minValue:0,maxValue:100,step:1,pageSize:10};case"alpha":return{minValue:0,maxValue:1,step:.01,pageSize:.1};default:throw new Error("Unknown color channel: "+t)}}formatChannelValue(t,e){let i,r=this.getChannelValue(t);switch(t){case"hue":i={style:"unit",unit:"degree",unitDisplay:"narrow"};break;case"saturation":case"lightness":i={style:"percent"},r/=100;break;case"alpha":i={style:"percent"};break;default:throw new Error("Unknown color channel: "+t)}return new Fo(e,i).format(r)}getColorSpace(){return"hsl"}getColorChannels(){return er.colorChannels}constructor(t,e,i,r){super(),this.hue=t,this.saturation=e,this.lightness=i,this.alpha=r}}er.colorChannels=["hue","saturation","lightness"],pn("#ffffff"),pn("hsl(0, 100%, 50%)");const Sk=pn("#000000"),Ck=pn("#FFFFFF");function Tk({onChange:t,value:e,colors:i}){const r=i.map(i=>{const r=e===i;return x(Bt,{onClick:()=>{null==t||t(i)},className:ue("relative block flex-shrink-0 w-26 h-26 border rounded",r&&"shadow-md"),style:{backgroundColor:i},children:r&&x("span",{className:"absolute inset-0 m-auto rounded-full w-8 h-8 bg-white"})},i)});return x("div",{className:"flex gap-6",children:r})}function Rr(t={}){const{size:e="md",startAdornment:i,endAdornment:r,startAppend:n,endAppend:o,className:a,labelPosition:s,labelDisplay:l="block",inputClassName:c,inputWrapperClassName:h,unstyled:u,invalid:d,disabled:p,background:f="transparent",flexibleHeight:g}={...t};if(u)return{label:"",input:c||"",wrapper:a||"",inputWrapper:h||"",adornment:"",append:{size:"",radius:""},size:{font:"",height:""},description:"",error:""};const m=kk({size:t.size,flexibleHeight:g}),v=n||o,b=d?"border-danger":"border-divider",y=d?"focus:ring-danger/focus focus:border-danger/60":"focus:ring-primary/focus focus:border-primary/60";return{label:ue(l,"first-letter:capitalize text-left",p&&"text-disabled",m.font,"side"===s?"mr-16":"mb-4"),input:ue("block text-left relative w-full appearance-none transition-shadow text","transparent"===f&&"bg-transparent","bg-alt"===f&&"bg-alt","bg-paper"===f&&"bg-paper",!v&&"rounded",n&&"rounded-r rounded-l-none",o&&"rounded-l rounded-r-none",!v&&`${b} border`,n&&`${b} border-y border-r`,o&&`${b} border-y border-l`,!p&&`focus:ring ${y} focus:outline-none shadow-sm`,p&&"text-disabled cursor-not-allowed",c,m.font,m.height,i?"pl-46":"pl-12",r?"pr-46":"pr-12"),adornment:OS(e),append:{size:kl(e),radius:n?"rounded-l":"rounded-r"},wrapper:ue(a,m.font,{"flex items-center":"side"===s}),inputWrapper:ue("relative",h,v&&"flex items-stretch"),size:m,description:"text-muted pt-10 text-xs",error:"text-danger pt-10 text-xs"}}function kk({size:t,flexibleHeight:e}){switch(t){case"xs":return{font:"text-xs",height:e?"min-h-30":"h-30"};case"sm":return{font:"text-sm",height:e?"min-h-36":"h-36"};case"lg":return{font:"text-lg",height:e?"min-h-50":"h-50"};case"xl":return{font:"text-xl",height:e?"min-h-60":"h-60"};default:return{font:"text-sm",height:e?"min-h-42":"h-42"}}}Sk.toHexInt(),Ck.toHexInt();const Ek=["rgb(0,0,0)","rgb(255, 255, 255)","rgb(242, 38, 19)","rgb(249, 105, 14)","rgb(253, 227, 167)","rgb(4, 147, 114)","rgb(30, 139, 195)","rgb(142, 68, 173)"];function Ok({defaultValue:t,onChange:e,colorPresets:i,showInput:r}){const[n,o]=Ae(t),a=i||Ek,s=Rr({size:"sm"});return ie("div",{children:[x(gk,{className:"!w-auto",color:n,onChange:t=>{null==e||e(t),o(t)}}),ie("div",{className:"py-20 px-12",children:[a&&x(Tk,{colors:a,onChange:t=>{if(t){const i=pn(t).toString("hex");null==e||e(i),o(i)}},value:n}),r&&x("div",{className:"pt-20",children:x(bk,{autoComplete:"off",role:"textbox",autoCorrect:"off",spellCheck:"false",required:!0,"aria-label":"Hex color",prefixed:!0,className:s.input,color:n,onChange:t=>{null==e||e(t),o(t)}})})]})]})}const Uo=ae.createContext(null);function Pg(){return De(Uo)}function Lr(){const{lines:t,localeCode:e}=zo();return{trans:Ie(i=>Pk({...i,lines:t,localeCode:e}),[t,e])}}const Pk=ln(t=>{let{lines:e,message:i,values:r,localeCode:n}=t;return i=(null==e?void 0:e[i])||i,r&&(i=Dp(n,t),Object.entries(r).forEach(([t,e])=>{i=i.replace(`:${t}`,`${e}`)})),i},{equals:ya,callTimeout:0});function Mk({onDismiss:t}){const{trans:e}=Lr();return x("button",{className:"sr-only","aria-label":e(ce("Dismiss")),tabIndex:-1,onClick:()=>{t&&t()}})}function Wo(t){const{type:e="modal",dialogProps:i,...r}=De(Uo),{children:n,className:o,size:a="md",background:s,radius:l="rounded",maxWidth:c="max-w-dialog",...h}=t;let u=null;("popover"===e||"tray"===e)&&(u=x(Mk,{onDismiss:r.close}));const d="fullscreenTakeover"===a||"tray"===e,p=ue("mx-auto pointer-events-auto outline-none flex flex-col overflow-hidden",s||"bg-paper","tray"!==e&&Ak(a),"tray"===e&&"rounded-t","fullscreenTakeover"!==a&&"shadow-2xl border max-h-dialog",!d&&`${l} ${c}`,o);return ie("div",{...vi({role:"dialog",tabIndex:-1},i,h),style:{"--be-dialog-padding":"24px"},"aria-modal":!0,className:p,children:[Sr.toArray(n).map(t=>{var e;return tr(t)?dt(t,{size:null!=(e=t.props.size)?e:a}):t}),u]})}function Ak(t){switch(t){case"xs":return"w-320";case"sm":return"w-384";case"md":return"w-440";case"lg":return"w-620";case"xl":return"w-780";case"2xl":return"w-850";case"fullscreenTakeover":return"w-full h-full";default:return t}}const Bl=me(x("path",{d:"M7.41 8.59 12 13.17l4.59-4.58L18 10l-6 6-6-6 1.41-1.41z"}),"KeyboardArrowDownOutlined"),Dk=et(({children:t,autoFocus:e=!1,restoreFocus:i=!0,isDismissable:r=!0,isOpen:n=!1,onClose:o},a)=>{const s=Ml(),l=Ir(a);return ie("div",{className:"isolate z-modal fixed inset-0",style:s,children:[x(Il,{onClick:()=>{r&&o()}},"modal-underlay"),x(ot.div,{ref:l,className:"absolute inset-0 w-full h-full z-20 flex items-center justify-center pointer-events-none",role:"presentation",initial:{opacity:0,scale:.7},animate:{opacity:1,scale:1},exit:{opacity:0,scale:1},children:x(Ro,{restoreFocus:i,autoFocus:e,contain:!0,children:t})})]})});function Yo(t){let{children:e,type:i,disableInitialTransition:r,onClose:n,isDismissable:o=!0,triggerRef:a,moveFocusToDialog:s=!0,returnFocusToTrigger:l=!0}=t;const[c,h]=kr(t.isOpen,t.defaultIsOpen,t.onOpenChange),{dialogTrigger:u,dialog:d}=Ik(e);jo()&&"popover"===i&&(i="modal");const{x:p,y:f,reference:g,floating:m,strategy:v,refs:b}=Sp({...t,disablePositioning:"modal"===i}),y="popover"===i?{position:v,top:null!=f?f:"",left:null!=p?p:""}:{},w=yt(),_=`${w}-label`,S=`${w}-description`,C=`${w}-form`,O=Ie(t=>{null==n||n(t),h(!1)},[n,h]);Ft(()=>{(null==a?void 0:a.current)&&b.reference.current!==a.current&&g(a.current)},[g,a,b]);const k=Je(()=>({"aria-labelledby":_,"aria-describedby":S}),[_,S]);let T;T="modal"===i?Dk:"tray"===i?Mp:Nn;const E=Je(()=>({dialogProps:k,type:i,labelId:_,descriptionId:S,isDismissable:o,close:O,formId:C}),[O,S,k,C,_,i,o]);return ie(Gt,{children:[u&&dt(u,{onClick:Mt(t=>{t.stopPropagation(),h(!c)}),ref:a?null:g,...u.props}),Ct&&Th(x(cr,{initial:!r,children:c&&x(Uo.Provider,{value:E,children:x(T,{ref:m,triggerRef:b.reference,style:y,restoreFocus:l,autoFocus:s,isOpen:c,onClose:O,isDismissable:o,children:d})})}),Ct)]})}function Ik(t){const e=ae.Children.toArray(t);return e&&2===e.length?{dialogTrigger:e[0],dialog:e[1]}:{dialog:e[0]}}function Fr(t){const{label:e,className:i,value:r,onChange:n,size:o}=t,a=oe(t=>{var e,i;return null==(i=null==(e=t.config.ui)?void 0:e.colorPresets)?void 0:i.items})||[],s=Rr({size:o}),[l,c]=Ae(r),[h,u]=Ae(!1);return ie("div",{className:ue(i,"w-max"),children:[e&&x("span",{className:s.label,children:e}),ie(Yo,{type:"popover",isOpen:h,onOpenChange:u,children:[ie(Bt,{className:ue(s.input,"inline-flex items-center"),"aria-label":t["aria-label"],children:[x("span",{className:"block flex-shrink-0 mr-5 border rounded h-2/4 aspect-square",style:{backgroundColor:l}}),x(Rk,{isActive:h,className:s.adornment})]}),x(Wo,{size:"auto",children:x(Ok,{onChange:t=>{c(t),null==n||n(t)},defaultValue:l,colorPresets:a})})]})]})}function Rk({isActive:t,className:e}){return x(Bl,{size:"sm",className:`transition-transform ml-auto flex-shrink-0 ${t?"rotate-180":"rotate-0"} ${e}`})}function Lk(t){const{size:e="md",inline:i,label:r,showValueLabel:n=!!r,className:o,slider:a,children:s}=t,{domProps:l,trackRef:c,getThumbPercent:h,getThumbValueLabel:u,labelId:d,groupId:p,thumbIds:f,isDisabled:g,numberFormatter:m,minValue:v,maxValue:b,step:y,values:w,getValueLabel:_}=a;let S="",C=Math.max([...m.format(v)].length,[...m.format(b)].length,[...m.format(y)].length);_?S=_(w[0]):1===w.length?S=u(0):2===w.length&&(S=`${u(0)} – ${u(1)}`,C=3+2*Math.max(C,[...m.format(v)].length,[...m.format(b)].length));const O=Rr({size:e,disabled:g,labelDisplay:"flex"}),k=ue("w-full flex-shrink-0 touch-none",o,{"flex items-center":i});return ie("div",{className:k,role:"group",id:p,children:[ie("div",{className:ue(O.label,"select-none"),children:[r&&x("label",{onClick:()=>{var t;null==(t=document.getElementById(f[0]))||t.focus()},id:d,htmlFor:p,children:r}),n&&x("output",{htmlFor:f[0],className:"ml-auto text-right","aria-live":"off",style:C?{width:`${C}ch`,minWidth:`${C}ch`}:void 0,children:S})]}),ie("div",{ref:c,className:"h-30 relative",...l,role:"presentation",children:[x("div",{className:"absolute inset-0 m-auto h-4 rounded "+(g?"bg-disabled":"bg-primary-light")}),x("div",{className:"absolute inset-0 my-auto h-4 rounded "+(g?"bg-disabled-fg":"bg-primary"),style:{width:100*h(0)+"%"}}),s]})]})}function Fk(t={}){const{localeCode:e}=zo();return Je(()=>new Fo(e,t),[e,t])}function Mg({minValue:t=0,maxValue:e=100,isDisabled:i=!1,step:r=1,formatOptions:n,onChangeEnd:o,label:a,getValueLabel:s,...l}){var c;const h=Fk(n),{addGlobalListener:u,removeGlobalListener:d}=wl(),p=de(null),[f,g]=kr(l.value?l.value:void 0,null!=(c=l.defaultValue)?c:[t],l.onChange),m=de(null);m.current=f;const[v,b]=Ae(new Array(f.length).fill(!1)),y=de(null);y.current=v;const x=e=>0===e?t:f[e-1],w=t=>t===f.length-1?e:f[t+1],_=(t,e)=>{!i&&P(t)&&m.current&&(e=l_(e,x(t),w(t),r),m.current=nh(m.current,t,e),g(m.current))},S=(t,e)=>{var r;if(i||!P(t))return;const n=null==(r=y.current)?void 0:r[t];y.current=nh(y.current||[],t,e),b(y.current),o&&n&&!y.current.some(Boolean)&&o(m.current||[])},[C,O]=Ae(void 0),k=i=>(i=>(i-t)/(e-t))(m.current[i]),T=i=>go((e=>Math.round((e-t)/r)*r+t)(i*(e-t)+t),t,e),E=de(new Array(f.length).fill(!0)),P=t=>E.current[t],M=de(null),A=de(void 0),I=de(null),{domProps:j}=$o({onPointerDown:t=>{if(("mouse"!==t.pointerType||!(0!==t.button||t.altKey||t.ctrlKey||t.metaKey))&&p.current&&!i&&f.every((t,e)=>!v[e])){const e=p.current.offsetWidth,i=p.current.getBoundingClientRect().left,r=(t.clientX-i)/e,n=T(r);let o;const a=f.findIndex(t=>n-t<0);if(0===a)o=a;else if(-1===a)o=f.length-1;else{const t=f[a-1],e=f[a];o=Math.abs(t-n)<Math.abs(e-n)?a-1:a}o>=0&&P(o)?(t.preventDefault(),M.current=o,O(o),A.current=t.pointerId,S(M.current,!0),_(o,n),u(window,"pointerup",D,!1)):M.current=null}},onMoveStart(){I.current=null},onMove(t,e){var i;const r=(null==(i=p.current)?void 0:i.offsetWidth)||0;if(null==I.current&&(I.current=k(M.current||0)*r),I.current+=e,null!=M.current&&p.current){const t=go(I.current/r,0,1);((t,e)=>{_(t,T(e))})(M.current,t)}},onMoveEnd(){null!=M.current&&(S(M.current,!1),M.current=null)}}),D=t=>{t.pointerId===A.current&&(null!=M.current&&(S(M.current,!1),M.current=null),d(window,"pointerup",D,!1))},R=yt(),L=a?`${R}-label`:void 0,z=`${R}-group`,F=[...Array(f.length)].map((t,e)=>`${R}-thumb-${e}`);return{domProps:j,trackRef:p,isDisabled:i,step:r,values:f,minValue:t,maxValue:e,focusedThumb:C,labelId:L,groupId:z,thumbIds:F,numberFormatter:h,getThumbPercent:k,getThumbMinValue:x,getThumbMaxValue:w,getThumbValueLabel:t=>function(t){return h.format(t)}(f[t]),isThumbDragging:t=>{var e;return(null==(e=y.current)?void 0:e[t])||!1},setThumbValue:_,updateDraggedThumbs:S,setThumbEditable:(t,e)=>{E.current[t]=e},setFocusedThumb:O,getValueLabel:s}}function nh(t,e,i){return t[e]===i?t:[...t.slice(0,e),i,...t.slice(e+1)]}function zk({index:t,slider:e,isDisabled:i,ariaLabel:r,inputRef:n,onBlur:o}){const a=Ir(n),{addGlobalListener:s,removeGlobalListener:l}=wl(),{step:c,values:h,focusedThumb:u,labelId:d,thumbIds:p,isDisabled:f,getThumbPercent:g,getThumbMinValue:m,getThumbMaxValue:v,getThumbValueLabel:b,setThumbValue:y,updateDraggedThumbs:w,isThumbDragging:_,setThumbEditable:S,setFocusedThumb:C}=e,O=h[t];S(t,!i);const k=i||f,T=Ie(()=>{a.current&&a.current.focus({preventScroll:!0})},[a]),E=u===t;xe(()=>{E&&T()},[E,T]);const P=de(void 0),M=e=>{e.pointerId===P.current&&(T(),w(t,!1),l(window,"pointerup",M,!1))},A=ue("outline-none rounded-full w-18 h-18 top-1/2 -translate-y-1/2 -translate-x-1/2 absolute inset-0 transition-button duration-200",!k&&"focus-within:ring focus-within:ring-primary-light shadow-md",jk({isDisabled:k,isDragging:_(t)}));return x("div",{role:"presentation",className:A,style:{left:`${Math.max(100*g(t),0)}%`},onPointerDown:e=>{0!==e.button||e.altKey||e.ctrlKey||e.metaKey||(T(),P.current=e.pointerId,w(t,!0),s(window,"pointerup",M,!1))},children:x("input",{id:p[t],onKeyDown:Mt(()=>{w(t,!0)}),onKeyUp:Mt(()=>{w(t,!1)}),ref:a,tabIndex:k?void 0:0,min:m(t),max:v(t),step:c,value:O,disabled:k,"aria-label":r,"aria-labelledby":d,"aria-orientation":"horizontal","aria-valuetext":b(t),onFocus:()=>{C(t)},onBlur:e=>{C(void 0),w(t,!1),null==o||o(e)},onChange:e=>{y(t,parseFloat(e.target.value))},type:"range",className:"sr-only"})})}function jk({isDisabled:t,isDragging:e}){return t?"bg-slider-disabled cursor-default":ue("hover:bg-primary-dark",e?"bg-primary-dark":"bg-primary")}var Bk=t=>"checkbox"===t.type,Nk=t=>t instanceof Date,Ag=t=>null==t;const Vk=t=>"object"==typeof t;var Xo=t=>!Ag(t)&&!Array.isArray(t)&&Vk(t)&&!Nk(t),$k=t=>Xo(t)&&t.target?Bk(t.target)?t.target.checked:t.target.value:t,Hk=t=>t.substring(0,t.search(/\.\d+(\.|$)/))||t,Uk=(t,e)=>t.has(Hk(e)),Wk=t=>Array.isArray(t)?t.filter(Boolean):[],Ai=t=>void 0===t,pt=(t,e,i)=>{if(!e||!Xo(t))return i;const r=Wk(e.split(/[,[\].]+?/)).reduce((t,e)=>Ag(t)?t:t[e],t);return Ai(r)||r===t?Ai(t[e])?i:t[e]:r};const oh={BLUR:"blur",FOCUS_OUT:"focusout",CHANGE:"change"},ka={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},Yk=ae.createContext(null),Nl=()=>ae.useContext(Yk);var Xk=(t,e,i,r=!0)=>{const n={};for(const o in t)Object.defineProperty(n,o,{get:()=>{const n=o;return e[n]!==ka.all&&(e[n]=!r||ka.all),i&&(i[n]=!0),t[n]}});return n},Gk=t=>Xo(t)&&!Object.keys(t).length,qk=(t,e,i)=>{const{name:r,...n}=t;return Gk(n)||Object.keys(n).length>=Object.keys(e).length||Object.keys(n).find(t=>e[t]===(!i||ka.all))},Kk=t=>Array.isArray(t)?t:[t],Dg=(t,e,i)=>i&&e?t===e:!t||!e||t===e||Kk(t).some(t=>t&&(t.startsWith(e)||e.startsWith(t)));function Ig(t){const e=ae.useRef(t);e.current=t,ae.useEffect(()=>{const i=!t.disabled&&e.current.subject.subscribe({next:e.current.callback});return()=>{var t;(t=i)&&t.unsubscribe()}},[t.disabled])}function Zk(t){const e=Nl(),{control:i=e.control,disabled:r,name:n,exact:o}=t||{},[a,s]=ae.useState(i._formState),l=ae.useRef({isDirty:!1,dirtyFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1}),c=ae.useRef(n),h=ae.useRef(!0);return c.current=n,Ig({disabled:r,callback:ae.useCallback(t=>h.current&&Dg(c.current,t.name,o)&&qk(t,l.current)&&s({...i._formState,...t}),[i,o]),subject:i._subjects.state}),ae.useEffect(()=>(h.current=!0,()=>{h.current=!1}),[]),Xk(a,i._proxyFormState,l.current,!1)}var Jk=t=>"string"==typeof t,Qk=(t,e,i,r)=>{const n=Array.isArray(t);return Jk(t)?(r&&e.watch.add(t),pt(i,t)):n?t.map(t=>(r&&e.watch.add(t),pt(i,t))):(r&&(e.watchAll=!0),i)},eE=t=>"function"==typeof t,tE=t=>{for(const e in t)if(eE(t[e]))return!0;return!1};function rE(t){const e=Nl(),{control:i=e.control,name:r,defaultValue:n,disabled:o,exact:a}=t||{},s=ae.useRef(r);s.current=r;const l=ae.useCallback(t=>{if(Dg(s.current,t.name,a)){const e=Qk(s.current,i._names,t.values||i._formValues);h(Ai(s.current)||Xo(e)&&!tE(e)?{...e}:Array.isArray(e)?[...e]:Ai(e)?n:e)}},[i,a,n]);Ig({disabled:o,subject:i._subjects.watch,callback:l});const[c,h]=ae.useState(Ai(n)?i._getWatch(r):n);return ae.useEffect(()=>{i._removeUnmounted()}),c}function iE(t){const e=Nl(),{name:i,control:r=e.control,shouldUnregister:n}=t,o=Uk(r._names.array,i),a=rE({control:r,name:i,defaultValue:pt(r._formValues,i,pt(r._defaultValues,i,t.defaultValue)),exact:!0}),s=Zk({control:r,name:i}),l=ae.useRef(r.register(i,{...t.rules,value:a}));return ae.useEffect(()=>{const t=(t,e)=>{const i=pt(r._fields,t);i&&(i._f.mount=e)};return t(i,!0),()=>{const e=r._options.shouldUnregister||n;(o?e&&!r._stateFlags.action:e)?r.unregister(i):t(i,!1)}},[i,r,o,n]),{field:{name:i,value:a,onChange:ae.useCallback(t=>{l.current.onChange({target:{value:$k(t),name:i},type:oh.CHANGE})},[i]),onBlur:ae.useCallback(()=>{l.current.onBlur({target:{value:pt(r._formValues,i),name:i},type:oh.BLUR})},[i,r]),ref:ae.useCallback(t=>{const e=pt(r._fields,i);t&&e&&t.focus&&(e._f.ref={focus:()=>t.focus(),select:()=>t.select(),setCustomValidity:e=>t.setCustomValidity(e),reportValidity:()=>t.reportValidity()})},[i,r._fields])},formState:s,fieldState:Object.defineProperties({},{invalid:{enumerable:!0,get:()=>!!pt(s.errors,i)},isDirty:{enumerable:!0,get:()=>!!pt(s.dirtyFields,i)},isTouched:{enumerable:!0,get:()=>!!pt(s.touchedFields,i)},error:{enumerable:!0,get:()=>pt(s.errors,i)}})}}function zr({inputRef:t,onBlur:e,...i}){const{onChange:r,onChangeEnd:n,value:o,defaultValue:a,...s}=i,l={...s,value:null!=o?[o]:void 0,defaultValue:null!=a?[a]:void 0,onChange:t=>{null==r||r(t[0])},onChangeEnd:t=>{null==n||n(t[0])}},c=Mg(l);return x(Lk,{...l,slider:c,children:x(zk,{index:0,slider:c,inputRef:t,onBlur:e})})}function Ea({children:t,direction:e,className:i}){return t?x("div",{className:ue("absolute h-full min-w-42 flex items-center justify-center top-0 text-muted z-10","start"===e?"left-0":"right-0",i),children:t}):null}const Rg=ae.forwardRef((t,e)=>{const{children:i,description:r,errorMessage:n,descriptionProps:o={},errorMessageProps:a={},startAdornment:s,endAdornment:l,startAppend:c,endAppend:h,fieldClassNames:u,disabled:d,wrapperProps:p}=t;return ie("div",{className:u.wrapper,ref:e,...p,children:[x(nE,{...t}),ie("div",{className:u.inputWrapper,children:[x(Ea,{direction:"start",className:u.adornment,children:s}),c&&x(sh,{style:u.append,disabled:d,children:c}),i,h&&x(sh,{style:u.append,disabled:d,children:h}),x(Ea,{direction:"end",className:u.adornment,children:l})]}),r&&!n&&x("div",{className:u.description,...o,children:r}),n&&x("div",{className:u.error,...a,children:n})]})});function nE({labelElementType:t,fieldClassNames:e,labelProps:i,label:r,labelSuffix:n,required:o}){if(!r)return null;const a=ie(t||"label",{className:e.label,...i,children:[r,o&&x("span",{className:"text-danger",children:" *"})]});return n?ie("div",{className:"flex items-center gap-14 w-full",children:[a,x("div",{className:"ml-auto mb-4 text-muted text-xs",children:n})]}):a}function sh({children:t,style:e,disabled:i}){return ae.cloneElement(t,{...t.props,disabled:t.props.disabled||i,...e})}function Vl({autoFocus:t,autoSelectText:e},i){const r=de(t);xe(()=>{var t;r.current&&i.current&&(null==(t=i.current)||t.focus(),e&&"input"===i.current.nodeName.toLowerCase()&&requestAnimationFrame(()=>{i.current.select()})),r.current=!1},[i,e])}function Lg(t){const{focusRef:e,labelElementType:i="label",label:r,labelSuffix:n,autoFocus:o,autoSelectText:a,labelPosition:s,size:l,errorMessage:c,description:h,flexibleHeight:u,startAdornment:d,endAdornment:p,startAppend:f,endAppend:g,className:m,inputClassName:v,inputWrapperClassName:b,unstyled:y,background:x,invalid:w,disabled:_,id:S,...C}=t;Vl(t,e);const O=yt(),k=S||O,T={id:`${k}-label`,htmlFor:"label"===i?k:void 0},E={id:`${k}-description`},P={id:`${k}-error`},M={"aria-label":t.label||t["aria-label"]||!t.placeholder?t["aria-label"]:t.placeholder,"aria-invalid":w||void 0,id:k,disabled:_,...C},A=[];r&&A.push(T.id),M["aria-labelledby"]&&A.push(M["aria-labelledby"]),M["aria-labelledby"]=A.length?A.join(" "):void 0;const I=[];return h&&I.push(E.id),c&&I.push(P.id),M["aria-describedby"]&&I.push(M["aria-describedby"]),M["aria-describedby"]=I.length?I.join(" "):void 0,{fieldProps:{errorMessageProps:P,descriptionProps:E,labelProps:T,disabled:_,label:r,labelSuffix:n,autoFocus:o,autoSelectText:a,labelPosition:s,size:l,errorMessage:c,description:h,flexibleHeight:u,startAdornment:d,endAdornment:p,startAppend:f,endAppend:g,className:m,inputClassName:v,inputWrapperClassName:b,unstyled:y,background:x,invalid:w},inputProps:M}}const $l=ae.forwardRef((t,e)=>{const{hideCaret:i,placeholder:r=x(we,{message:"Select an option..."}),selectedValue:n,onItemSelected:o,onOpenChange:a,onInputValueChange:s,onSelectionChange:l,selectionMode:c,minWidth:h="min-w-128",children:u,...d}=t,p=jo(),f=Cp({...t,floatingWidth:p?"auto":"matchTrigger",selectionMode:"single",role:"listbox"},e),{state:{selectedValues:g,isOpen:m,setIsOpen:v,activeIndex:b,setSelectedIndex:y},focusItem:w,listboxId:_,reference:S,refs:C,listContent:O}=f,{fieldProps:k,inputProps:T}=Lg({...d,focusRef:C.reference}),E=f.collection.get(g[0]),P=E?ie("span",{className:"flex items-center gap-10",children:[E.element.props.startIcon,E.element.props.children]}):x("span",{className:"italic",children:r}),M=Rr({...t,endAdornment:!0}),{handleTriggerKeyDown:A,handleListboxKeyboardNavigation:I}=Rp(f),{findMatchingItem:j}=Lp();return x(Ip,{listbox:f,onKeyDownCapture:t=>{if(!m)return;const e=j(t,O,b);null!=e&&w("increment",e)},onKeyDown:I,children:x(Rg,{fieldClassNames:M,...k,children:ie("button",{...T,type:"button","aria-expanded":m?"true":"false","aria-haspopup":"listbox","aria-controls":m?_:void 0,ref:S,onKeyDown:A,onKeyDownCapture:t=>{if(m)return;const e=j(t,O,b);null!=e&&y(e)},disabled:d.disabled,onClick:()=>{v(!m)},className:ue(M.input,!k.unstyled&&h),children:[P,!i&&x(Ea,{direction:"end",children:x(Bl,{className:M.adornment})})]})})})});function oE(){const t=oe(t=>t.filter.selected);if(!t)return null;const e=I().filter.getByName(t).options,i=(e,i)=>{var r;null==(r=I().filter)||r.applyValue(t,e,i),O().setDirty(!0)},r=I().canvas.getMainImage().filters,n=I().filter.findFilterIndex(t,r),o=null==r?void 0:r[n];if(e){const t=Object.entries(e).map(([t,e])=>{let r;const n=o?o[t]:e.current;return"slider"===e.type?r=x(zr,{label:x(we,{...ms[t]}),minValue:e.min,maxValue:e.max,step:e.step,defaultValue:n,formatOptions:{style:"percent"},size:"sm",onChange:e=>{i(t,e)}}):"colorPicker"===e.type?r=x(Fr,{label:x(we,{...ms[t]}),size:"sm",className:"w-full",value:n,onChange:e=>{i(t,e)}}):"select"===e.type&&(r=x($l,{selectionMode:"single",size:"sm",label:x(we,{...ms[t]}),defaultValue:n,onSelectionChange:e=>{i(t,e)},children:e.available.map(t=>x(Io,{value:t.key,children:x("span",{className:"capitalize",children:t.key})},t.key))})),x("div",{className:"pb-10",children:r},t)});return x(Fl,{children:x("div",{className:"max-w-240 pt-10 mx-auto",children:t})})}return null}function sE(){const t=oe(t=>t.frame.active),e="basic"===(null==t?void 0:t.mode),i=Ie(t=>`${t}%`,[]);return x(Fl,{className:"pb-18 pt-6",children:ie("div",{className:"max-w-288 m-auto",children:[e&&x(Fr,{className:"w-full mb-20",size:"sm",label:x(we,{message:"Color"}),value:I().frame.builder.defaultColor,onChange:t=>{I().frame.active.changeColor(t)}}),x(zr,{size:"sm",label:x(we,{message:"Size"}),step:1,minValue:I().frame.active.getMinSize(),maxValue:I().frame.active.getMaxSize(),defaultValue:I().frame.active.currentSizeInPercent,getValueLabel:i,onChange:t=>{I().frame.resize(t)}})]})})}const gn=ae.createContext(null);function aE(){const{tabsRef:t,selectedTab:e}=De(gn),[i,r]=Ae({width:void 0,transform:void 0,className:void 0});return Ft(()=>{if(null!=e&&t.current){const i=t.current[e];r(t=>({width:`${i.offsetWidth}px`,transform:`translateX(${i.offsetLeft}px)`,className:void 0===t.width?"":"transition-all"}))}},[r,e,t]),x("div",{className:ue("absolute bottom-0 left-0 h-2 bg-primary",i.className),role:"presentation",style:{width:i.width,transform:i.transform}})}function lE({children:t,center:e}){const i=Sr.toArray(t);return x(Ro,{children:ie("div",{className:"flex relative max-w-full overflow-auto border-b",role:"tablist","aria-orientation":"horizontal",children:[i.map((t,r)=>tr(t)?dt(t,{index:r,className:ue(t.props.className,e&&0===r&&"ml-auto",e&&r===i.length-1&&"mr-auto")}):null),x(aE,{})]})})}function cE(t){const{size:e="md",children:i,className:r,isLazy:n}=t,o=de([]),a=yt(),[s,l]=kr(t.selectedTab,t.defaultSelectedTab||0,t.onTabChange),c=Je(()=>({selectedTab:s,setSelectedTab:l,tabsRef:o,size:e,isLazy:n,id:a}),[s,a,n,l,e]);return x(gn.Provider,{value:c,children:x("div",{className:ue(r,"max-w-full overflow-hidden"),children:i})})}const uE=me(x("path",{d:"M12 17c3.31 0 6-2.69 6-6V3h-2.5v8c0 1.93-1.57 3.5-3.5 3.5S8.5 12.93 8.5 11V3H6v8c0 3.31 2.69 6 6 6zm-7 2v2h14v-2H5z"}),"FormatUnderlinedOutlined"),hE=me(x("path",{d:"M10 19h4v-3h-4v3zM5 4v3h5v3h4V7h5V4H5zM3 14h18v-2H3v2z"}),"FormatStrikethroughOutlined"),fE=me(x("path",{d:"M10 4v3h2.21l-3.42 8H6v3h8v-3h-2.21l3.42-8H18V4h-8z"}),"FormatItalicOutlined"),dE=me(x("path",{d:"M3 21h18v-2H3v2zm6-4h12v-2H9v2zm-6-4h18v-2H3v2zm6-4h12V7H9v2zM3 3v2h18V3H3z"}),"FormatAlignRightOutlined"),pE=me(x("path",{d:"M15 15H3v2h12v-2zm0-8H3v2h12V7zM3 13h18v-2H3v2zm0 8h18v-2H3v2zM3 3v2h18V3H3z"}),"FormatAlignLeftOutlined"),gE=me(x("path",{d:"M7 15v2h10v-2H7zm-4 6h18v-2H3v2zm0-8h18v-2H3v2zm4-6v2h10V7H7zM3 3v2h18V3H3z"}),"FormatAlignCenterOutlined"),Or=et(({inputElementType:t="input",flexibleHeight:e,inputRef:i,...r},n)=>{const o=Ir(i),{fieldProps:a,inputProps:s}=Lg({...r,focusRef:o}),l="textarea"===t,c=l?"textarea":"input",h=Rr({...r,flexibleHeight:e||"textarea"===t});return"textarea"===t&&!r.unstyled&&(h.input=`${h.input} py-12`),x(Rg,{ref:n,fieldClassNames:h,...a,children:x(c,{ref:o,...s,rows:l?s.rows||4:void 0,className:h.input})})});function mE(){return ie("div",{className:"flex gap-20 justify-center",children:[x(vE,{}),x(bE,{}),x(yE,{})]})}function vE(){var t;const e=null!=(t=oe(t=>t.objects.active.editableProps.fontSize))?t:40,{trans:i}=Lr();return x(Or,{type:"number",size:"xs","aria-label":i({message:"Font Size"}),min:1,max:300,className:"w-64 flex-shrink-0",value:e,onChange:t=>{I().objects.setValues({fontSize:t.target.valueAsNumber}),O().setDirty(!0)}})}function bE(){const t=oe(t=>t.objects.active.editableProps.fontStyle),e=oe(t=>t.objects.active.editableProps.underline),i=oe(t=>t.objects.active.editableProps.linethrough),[r,n]=Ae([t,e&&"underline",i&&"linethrough"]);return ie(Bo,{size:"xs",variant:"outline",radius:"rounded",value:r,multiple:!0,onChange:t=>{n(t),I().objects.setValues({underline:t.includes("underline"),linethrough:t.includes("linethrough"),fontStyle:t.includes("italic")?"italic":""}),O().setDirty(!0)},children:[x(Me,{value:"underline",children:x(uE,{})}),x(Me,{value:"linethrough",children:x(hE,{})}),x(Me,{value:"italic",children:x(fE,{})})]})}function yE(){const t=oe(t=>t.objects.active.editableProps.textAlign);return ie(Bo,{size:"xs",variant:"outline",radius:"rounded",value:t,onChange:t=>{I().objects.setValues({textAlign:t}),O().setDirty(!0)},children:[x(Me,{value:"left",children:x(pE,{})}),x(Me,{value:"center",children:x(gE,{})}),x(Me,{value:"right",children:x(dE,{})})]})}function wE({children:t,className:e}){const{selectedTab:i,isLazy:r}=De(gn),n=Sr.toArray(t);let o;return o=r?dt(n[i],{index:i}):n.map((t,e)=>{if(tr(t)){const r=e===i;return dt(t,{index:e,"aria-hidden":!r,className:r?t.props.className:ue(t.props.className,"hidden")})}return null}),x("div",{className:e,children:o})}function gr({className:t,children:e,index:i,...r}){const{id:n}=De(gn),[o,a]=Ae(0),s=de(null);return Ft(()=>{if(null!=s&&s.current){const t=()=>{const t=Yt(s.current,{tabbable:!0});a(t.nextNode()?void 0:0)};t();const e=new MutationObserver(t);return e.observe(s.current,{subtree:!0,childList:!0,attributes:!0,attributeFilter:["tabIndex","disabled"]}),()=>{e.disconnect()}}},[s]),x("div",{tabIndex:o,ref:s,id:`${n}-${i}-tabpanel`,"aria-labelledby":`${n}-${i}-tab`,className:ue(t,"focus-visible:outline-primary-light"),role:"tabpanel",...r,children:e})}ae.forwardRef(({name:t,...e},i)=>{const{field:{onChange:r,onBlur:n,value:o="",ref:a},fieldState:{invalid:s,error:l}}=iE({name:t}),c={onChange:r,onBlur:n,value:null==o?"":o,invalid:s,errorMessage:null==l?void 0:l.message,inputRef:a};return x(Or,{ref:i,...vi(c,e)})});const ah=[{type:"linear",coords:{x1:-80,y1:0,x2:80,y2:0},colorStops:[{color:"#ffe47b",offset:0},{color:"rgb(111,154,211)",offset:1}]},{type:"linear",coords:{x1:0,y1:-120,x2:0,y2:120},colorStops:[{color:"#ff4040",offset:0},{color:"#e6399b",offset:1}]},{type:"linear",coords:{x1:-90,y1:-90,x2:90,y2:90},colorStops:[{offset:0,color:"rgb(166,111,213)"},{offset:.5,color:"rgba(106, 72, 215, 0.5)"},{offset:1,color:"#200772"}]},{type:"radial",coords:{r1:100,r2:10,x1:0,y1:0,x2:0,y2:0},colorStops:[{offset:0,color:"#FF4F4F"},{offset:1,color:"rgb(255, 239, 64)"}]},{type:"radial",coords:{r1:100,r2:10,x1:0,y1:0,x2:20,y2:20},colorStops:[{offset:0,color:"#ffe47b"},{offset:.5,color:"rgb(111,154,211)"},{offset:1,color:"rgb(166,111,213)"}]},{type:"radial",coords:{r1:50,r2:80,x1:45,y1:45,x2:52,y2:50},colorStops:[{offset:0,color:"rgb(155, 237, 0)"},{offset:1,color:"rgba(0, 164, 128,0.4)"}]},{type:"linear",coords:{x1:-90,y1:-90,x2:90,y2:90},colorStops:[{offset:0,color:"#9ecb2d"},{offset:.5,color:"#72aa00"},{offset:1,color:"#bfd255"}]},{type:"radial",coords:{r1:100,r2:50,x1:30,y1:0,x2:0,y2:0},colorStops:[{offset:0,color:"#aebcbf"},{offset:1,color:"#0a0809"}]},{type:"linear",coords:{x1:-80,y1:0,x2:80,y2:0},colorStops:[{offset:0,color:"#ffffff"},{offset:1,color:"#f6f6f6"}]},{type:"linear",coords:{x1:0,y1:-120,x2:0,y2:120},colorStops:[{offset:0,color:"#fefcea"},{offset:1,color:"#f1da36"}]},{type:"linear",coords:{x1:-90,y1:-90,x2:90,y2:90},colorStops:[{offset:0,color:"rgb(166,111,213)"},{offset:.5,color:"rgba(106, 72, 215, 0.5)"},{offset:1,color:"#ff1a00"}]},{type:"linear",coords:{x1:0,y1:-120,x2:0,y2:120},colorStops:[{offset:0,color:"#b7deed"},{offset:1,color:"#21b4e2"}]},{type:"linear",coords:{x1:-80,y1:100,x2:80,y2:-100},colorStops:[{offset:0,color:"#ffe47b"},{offset:1,color:"rgb(111,154,211)"}]}],xE=me(x("path",{d:"M19.51 3.08 3.08 19.51c.09.34.27.65.51.9.25.24.56.42.9.51L20.93 4.49c-.19-.69-.73-1.23-1.42-1.41zM11.88 3 3 11.88v2.83L14.71 3h-2.83zM5 3c-1.1 0-2 .9-2 2v2l4-4H5zm14 18c.55 0 1.05-.22 1.41-.59.37-.36.59-.86.59-1.41v-2l-4 4h2zm-9.71 0h2.83L21 12.12V9.29L9.29 21z"}),"TextureOutlined"),_E=me(x("path",{d:"M11 9h2v2h-2V9zm-2 2h2v2H9v-2zm4 0h2v2h-2v-2zm2-2h2v2h-2V9zM7 9h2v2H7V9zm12-6H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 18H7v-2h2v2zm4 0h-2v-2h2v2zm4 0h-2v-2h2v2zm2-7h-2v2h2v2h-2v-2h-2v2h-2v-2h-2v2H9v-2H7v2H5v-2h2v-2H5V5h14v6z"}),"GradientOutlined"),SE=me(x("path",{d:"M18 20H4V6h9V4H4c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2v-9h-2v9zm-7.79-3.17-1.96-2.36L5.5 18h11l-3.54-4.71zM20 4V1h-2v3h-3c.01.01 0 2 0 2h3v2.99c.01.01 2 0 2 0V6h3V4h-3z"}),"AddPhotoAlternateOutlined");function lh({property:t}){const{trans:e}=Lr(),i=oe(e=>e.objects.active.editableProps[t]);return ie("div",{className:"flex items-center justify-center gap-14",children:[x(Fr,{className:"flex-shrink-0",size:"xs","aria-label":e({message:"Color"}),value:"string"==typeof i?i:Xa.fill,onChange:e=>{I().objects.setValues({[t]:e}),O().setDirty(!0)}}),x(ch,{type:"gradient",property:t}),x(ch,{type:"texture",property:t})]})}function ch({type:t,property:e}){return x(Gt,{children:ie(Yo,{type:"popover",children:[x(Qe,{className:"flex-shrink-0",id:`${t}-panel-trigger`,variant:"outline",size:"xs",startIcon:x("texture"===t?xE:_E,{}),endIcon:x(Bl,{}),children:x("span",{className:"capitalize",children:x(we,"gradient"===t?{message:"Gradient"}:{message:"Texture"})})}),x(Wo,{size:"auto",children:x("div",{className:"grid gap-8 grid-cols-5-min-content p-10 bg-paper rounded shadow-md",children:x(CE,{property:e,type:t})})})]})})}function CE({type:t,property:e}){const{close:i}=Pg(),r=Array.from(Array("gradient"===t?ah.length:28).keys()),n="w-56 h-56 bg border shadow-sm hover:scale-110",o=r.map(r=>{const o=ct(`images/${t}s/${r}.png`);return x(Bt,{radius:"rounded",className:n,style:{backgroundImage:`url(${o})`},"aria-label":`Select ${t} #${r}`,onClick:async()=>{i();const n="gradient"===t?new ve.fabric.Gradient(ah[r]):await Fg(o);I().objects.setValues({[e]:n}),O().setDirty(!0)}},r)});return"texture"===t&&o.unshift(x(TE,{property:e,className:n},"upload-btn")),x(Gt,{children:o})}function TE({className:t,property:e}){const{close:i}=Pg();return x(Bt,{radius:"rounded",className:t,"aria-label":"Upload an image",onClick:async()=>{const t=await I().import.openUploadWindow();if(i(),t){const i=await Fg(await t.data);I().objects.setValues({[e]:i})}},children:x(SE,{className:"icon-md"})})}function Fg(t){return new Promise(e=>{ve.fabric.util.loadImage(t,t=>{const i=new ve.fabric.Pattern({source:t,repeat:"repeat"});e(i)})})}function kE(){const t=oe(t=>t.objects.active.editableProps.opacity);return x(zr,{className:"max-w-240 w-full mx-auto","aria-label":"Opacity",value:t,minValue:.1,step:.1,maxValue:1,onChange:t=>{I().objects.setValues({opacity:t}),O().setDirty(!0)}})}function EE(){const{trans:t}=Lr(),e=oe(t=>t.objects.active.editableProps.stroke),i=oe(t=>t.objects.active.editableProps.strokeWidth);return ie("div",{className:"flex items-center gap-40",children:[x(Fr,{className:"ml-auto flex-shrink-0",size:"xs",value:e,"aria-label":t({message:"Outline Color"}),onChange:t=>{I().objects.setValues({stroke:t}),O().setDirty(!0)}}),x(zr,{"aria-label":"Outline Width",className:"max-w-240 mr-auto flex-shrink-0",value:i,onChange:t=>{I().objects.setValues({strokeWidth:t}),O().setDirty(!0)}})]})}const OE=me(x("path",{d:"M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-4.86 8.86-3 3.87L9 13.14 6 17h12l-3.86-5.14z"}),"ImageOutlined");function PE(){return x("div",{children:x(Qe,{type:"button",variant:"outline",size:"xs",startIcon:x(OE,{}),radius:"rounded-full",onClick:async()=>{const t=await I().import.openUploadWindow();if(t){const e=I().objects.getActive();if(e&&"setSrc"in e){const i=await t.data;e.setSrc(i,()=>{sp({src:i}),I().canvas.render()})}}},children:x(we,{message:"Replace Image"})})})}const zg={color:"rgba(0, 0, 0, 0.6)",blur:3,offsetX:-1,offsetY:0};function ME(){const{trans:t}=Lr(),e=oe(t=>t.objects.active.editableProps.shadow)||zg;return ie("div",{className:"flex items-center gap-40",children:[x(Fr,{className:"ml-auto flex-shrink-0",value:e.color,size:"xs","aria-label":t({message:"Shadow Color"}),onChange:t=>{I().objects.setValues({shadow:uh({color:t})}),O().setDirty(!0)}}),x(zr,{"aria-label":"Shadow Blur",className:"max-w-240 mr-auto flex-shrink-0",defaultValue:e.blur,onChange:t=>{I().objects.setValues({shadow:uh({blur:t})}),O().setDirty(!0)}})]})}function uh(t){var e;const i=null==(e=I().objects.getActive())?void 0:e.shadow;return i?(Object.entries(t).forEach(([t,e])=>{i[t]=e}),i):new ve.fabric.Shadow({...zg,...t})}function mr({index:t,className:e,isDisabled:i,children:r}){const{selectedTab:n,setSelectedTab:o,tabsRef:a,size:s,id:l}=De(gn),c=t===n,h=jC(),u=ue("tracking-wide overflow-hidden capitalize text-sm flex-shrink-0 flex items-center justify-center outline-none transition-colors","focus-visible:ring focus-visible:ring-2 ring-inset rounded",AE({isDisabled:i,isSelected:c}),e,{"px-18 h-48":!s||"md"===s,"px-12 h-32":"sm"===s,"cursor-pointer":!i});return x("button",{disabled:i,id:`${l}-${t}-tab`,"aria-controls":`${l}-${t}-tabpanel`,type:"button",role:"tab","aria-selected":c,tabIndex:i?void 0:c?0:-1,onKeyDown:t=>{switch(t.key){case"ArrowLeft":h.focusPrevious();break;case"ArrowRight":h.focusNext();break;case"Home":h.focusFirst();break;case"End":h.focusLast()}},onClick:()=>{o(t)},className:u,ref:e=>{a.current&&e&&(a.current[t]=e)},children:r})}function AE({isDisabled:t,isSelected:e}){return t?"text-disabled cursor-default":e?"text-primary":"text-muted hover:text-main"}function jg(){const t=oe(t=>t.objects.active);return ie(cE,{size:"sm",className:"pb-18 pt-6",children:[ie(lE,{center:!0,children:[t.isText&&x(mr,{children:x(we,{message:"Font"})}),!t.isImage&&x(mr,{children:x(we,{message:"Color"})}),!t.isImage&&x(mr,{children:x(we,{message:"Background"})}),t.isImage&&x(mr,{children:x(we,{message:"Image"})}),x(mr,{children:x(we,{message:"Opacity"})}),x(mr,{children:x(we,{message:"Outline"})}),x(mr,{children:x(we,{message:"Shadow"})})]}),ie(wE,{className:"pt-16 h-50",children:[t.isText&&x(gr,{children:x(mE,{})},"font"),!t.isImage&&x(gr,{children:x(lh,{property:"fill"})}),!t.isImage&&x(gr,{children:x(lh,{property:"backgroundColor"})}),t.isImage&&x(gr,{children:x(PE,{})}),x(gr,{children:x(kE,{})}),x(gr,{children:x(EE,{})}),x(gr,{children:x(ME,{})})]})]})}function DE(){const t=!jo()&&x(Qe,{size:"sm",color:"primary",variant:"outline",onClick:()=>{I().text.add(),O().setDirty(!0)},children:x(we,{message:"New Text"})});return x(Fl,{actionBtn:t,children:x(jg,{})})}function IE(){const t=RE(oe(t=>t.activeToolOverlay),oe(t=>t.objects.active.id));return x("div",{className:"relative z-tool-overlay text-sm",children:x(cr,{children:t&&x(ot.div,{initial:{y:0,opacity:0},animate:{y:"-100%",opacity:1},exit:{y:0,opacity:0},transition:{type:"tween",duration:.15},className:"absolute inset-x-0 gap-16 px-5vw bg bg-opacity-95 border-t",children:t},"tool-controls-overlay")})})}function RE(t,e){switch(t){case mt.Filter:return x(oE,{});case mt.Frame:return x(sE,{});case mt.Text:return e&&x(DE,{});case mt.ActiveObject:return e&&x(jg,{});default:return null}}const Oa=me(x("path",{d:"M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm3.59-13L12 10.59 8.41 7 7 8.41 10.59 12 7 15.59 8.41 17 12 13.41 15.59 17 17 15.59 13.41 12 17 8.41z"}),"CancelOutlined");function LE({filter:t}){const e=oe(e=>e.filter.applied.includes(t)),i=I().filter.hasOptions(t),r=ue("block flex-shrink-0 rounded",{"text-primary border-primary":e}),n=F_[t],o=ie(ji,{children:[ie("div",{className:"relative",children:[x(FE,{filter:t}),e&&x(zE,{filter:t,hasOptions:i})]}),x("div",{className:"mt-4 text-center text-xs capitalize",children:n?x(we,{...n}):t})]});return e&&i?x("div",{className:r,children:o}):x(Bt,{className:r,onClick:()=>{e?I().filter.remove(t):I().filter.apply(t)},children:o})}function FE({filter:t}){const e=ue("m-auto w-96 h-56 border rounded object-cover",{shadow:oe(e=>e.filter.selected===t)});return x("img",{src:ct(`images/filter/${t}.jpg`),className:e,alt:""})}function zE({filter:t,hasOptions:e}){return ie("div",{className:"flex items-center justify-center bg-background/70 absolute inset-0 border-2 border-primary rounded",children:[e?x(Me,{color:"primary",size:"md",onClick:()=>{I().filter.remove(t)},children:x(Oa,{})}):x(Oa,{className:"svg-icon icon-md"}),e&&x(jE,{filter:t,hasOptions:e})]})}function jE({filter:t,hasOptions:e}){return x(Me,{color:"primary",size:"md",onClick:()=>{O().activeToolOverlay===mt.Filter&&O().filter.selected===t?O().setActiveTool(O().activeTool,null):O().filter.select(t,e)},children:x(gf,{})})}const jr=et(({children:t,className:e,gap:i},r)=>{const n=ae.Children.map(t,(e,i)=>ae.isValidElement(e)?ae.cloneElement(e,{isFirst:0===i,isLast:ae.Children.count(t)===i+1}):e);return x("div",{ref:r,className:`tiny-scrollbar pb-4 overflow-x-auto relative flex items-center ${i||"gap-10"} ${e}`,children:n})});function It({isFirst:t,isLast:e,children:i,className:r}){const n=ue(r,"flex-shrink-0",{"ml-auto":t,"mr-auto":e});return x("div",{className:n,children:i})}function BE(){const t=oe(t=>{var e,i;return null==(i=null==(e=t.config.tools)?void 0:e.filter)?void 0:i.items})||[];xe(()=>{I().filter.syncState()},[]);const e=t.map(t=>x(It,{children:x(LE,{filter:t})},t));return x(jr,{children:e})}const NE=me(x("path",{d:"M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zM9 6c0-1.66 1.34-3 3-3s3 1.34 3 3v2H9V6zm9 14H6V10h12v10zm-6-3c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z"}),"LockOutlined"),VE=me(x("path",{d:"M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6h2c0-1.66 1.34-3 3-3s3 1.34 3 3v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm0 12H6V10h12v10zm-6-3c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z"}),"LockOpenOutlined"),$E=me(x("path",{d:"M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z"}),"CheckBoxOutlineBlankOutlined"),HE=me(x("path",{d:"M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"}),"CheckBox"),hh=me(x("path",{d:"M19,3H5C3.9,3,3,3.9,3,5v14c0,1.1,0.9,2,2,2h14c1.1,0,2-0.9,2-2V5C21,3.9,20.1,3,19,3z M17,13H7v-2h10V13z"}),"CheckBox"),UE=et((t,e)=>{const{size:i="md",children:r,className:n,icon:o,checkedIcon:a,disabled:s,isIndeterminate:l,errorMessage:c,invalid:h,orientation:u="horizontal",onChange:d,autoFocus:p,required:f,value:g}=t,m=Rr({...t,label:r}),v=o||$E,b=a||(l?hh:HE),y=Ir(e);Vl({autoFocus:p},y),xe(()=>{y.current&&(y.current.indeterminate=l||!1)});const[w,_]=kr(t.checked,t.defaultChecked||!1),S=Ie(t=>{null==d||d(t),_(t.target.checked)},[d,_]),C=ue("select-none",n,h&&"text-danger",!h&&s&&"text-disabled");let O,k=h?"text-danger":null;return l?(O=hh,k=k||"text-primary"):w?(O=b,k=k||"text-primary"):(O=v,k=k||"text-muted"),ie("div",{children:[x("label",{className:C,children:ie("div",{className:ue("relative flex items-center","vertical"===u&&"flex-col flex-col-reverse"),children:[x("input",{className:"focus-visible:ring ring-inset transition-shadow outline-none absolute left-0 top-0 w-24 h-24 rounded appearance-none",type:"checkbox","aria-checked":l?"mixed":w,"aria-invalid":h||void 0,onChange:S,ref:y,required:f,disabled:s,value:g}),x(O,{size:i,className:ue("pointer-events-none",s?"text-disabled":k)}),r&&x("div",{className:ue("first-letter:capitalize",m.size.font,"vertical"===u?"mb-6":"ml-6"),children:r})]})}),c&&x("div",{className:m.error,children:c})]})});function WE(){const{trans:t}=Lr(),{minWidth:e=50,minHeight:i=50,maxHeight:r=2400,maxWidth:n=2400}=oe(t=>{var e;return null==(e=t.config.tools)?void 0:e.resize})||{},o=oe(t=>t.original),a=oe(t=>t.resize.formValue);return xe(()=>{O().resize.setFormValue({...o})},[o]),xe(()=>{O().setDirty(!0)},[]),ie("form",{className:"flex items-center justify-center gap-16 w-full",onSubmit:t=>{t.preventDefault(),O().applyChanges()},children:[x(Or,{type:"number",min:e,max:n,size:"sm",className:"w-full max-w-112",label:"Width",value:a.width,onChange:t=>{(t=>{const e={...a,width:t};a.maintainAspect&&(e.height=oo(t,a.usePercentages)),O().resize.setFormValue(e)})(t.target.valueAsNumber)}}),x("div",{className:"mt-24",children:x(UE,{size:"md",checked:a.maintainAspect,onChange:t=>{(t=>{const e={...a,maintainAspect:t};t&&(e.height=oo(e.width,e.usePercentages)),O().resize.setFormValue(e)})(!a.maintainAspect)},"aria-label":t({message:"Maintain aspect ratio"}),checkedIcon:NE,icon:VE})}),x(Or,{type:"number",min:i,max:r,size:"sm",className:"w-full max-w-112",label:"Height",value:a.height,onChange:t=>{(t=>{const e={...a,height:t};t&&a.maintainAspect&&(e.width=ua(t,a.usePercentages)),O().resize.setFormValue(e)})(t.target.valueAsNumber)}}),x("button",{type:"submit",className:"hidden",children:x(we,{message:"Resize"})})]})}function YE(){var t;const e=oe(t=>{var e,i;return null==(i=null==(e=t.config.tools)?void 0:e.crop)?void 0:i.presets})||[],i=oe(t=>t.crop.selectedAspectRatio),r=null==(t=oe(t=>{var e,i;return null==(i=null==(e=t.config.tools)?void 0:e.crop)?void 0:i.allowCustomRatio}))||t,n=e.filter(t=>t.ratio||!t.ratio&&r).map(t=>x(It,{children:ie(Bt,{onClick:()=>I().crop.resetCropzone(t.ratio),className:"flex flex-col items-center justify-between cursor-pointer h-56",children:[x(XE,{preset:t,selectedRatio:i}),x(GE,{preset:t,selectedRatio:i})]})},t.ratio||t.name));return x(jr,{gap:"gap-18",children:n})}function XE({preset:t,selectedRatio:e}){let i=40,r=30;if(t.ratio){const e=Cl(t.ratio);({width:i,height:r}=Sl(e,i,r))}const n=ue("border-2",{"border-dotted":null===t.ratio,"border-primary":e===t.ratio});return x("div",{style:{width:`${i}px`,height:`${r}px`},className:n})}function GE({preset:t,selectedRatio:e}){const i=ue("mt-4 text-center text-xs",{"text-primary":e===t.ratio});return x("div",{className:i,children:t.name||t.ratio})}const fh=me(x("path",{d:"M15 21h2v-2h-2v2zm4-12h2V7h-2v2zM3 5v14c0 1.1.9 2 2 2h4v-2H5V5h4V3H5c-1.1 0-2 .9-2 2zm16-2v2h2c0-1.1-.9-2-2-2zm-8 20h2V1h-2v22zm8-6h2v-2h-2v2zM15 5h2V3h-2v2zm4 8h2v-2h-2v2zm0 8c1.1 0 2-.9 2-2h-2v2z"}),"FlipOutlined");function qE(){return ie("div",{children:[x(Me,{size:"sm",onClick:()=>{I().transform.flip("vertical"),O().setDirty(!0)},children:x(fh,{})}),x(Me,{size:"sm",onClick:()=>{I().transform.flip("horizontal"),O().setDirty(!0)},children:x(fh,{className:"rotate-90"})})]})}const KE=me(x("path",{d:"M7.11 8.53 5.7 7.11C4.8 8.27 4.24 9.61 4.07 11h2.02c.14-.87.49-1.72 1.02-2.47zM6.09 13H4.07c.17 1.39.72 2.73 1.62 3.89l1.41-1.42c-.52-.75-.87-1.59-1.01-2.47zm1.01 5.32c1.16.9 2.51 1.44 3.9 1.61V17.9c-.87-.15-1.71-.49-2.46-1.03L7.1 18.32zM13 4.07V1L8.45 5.55 13 10V6.09c2.84.48 5 2.94 5 5.91s-2.16 5.43-5 5.91v2.02c3.95-.49 7-3.85 7-7.93s-3.05-7.44-7-7.93z"}),"RotateLeftOutlined"),ZE=me(x("path",{d:"M15.55 5.55 11 1v3.07C7.06 4.56 4 7.92 4 12s3.05 7.44 7 7.93v-2.02c-2.84-.48-5-2.94-5-5.91s2.16-5.43 5-5.91V10l4.55-4.45zM19.93 11c-.17-1.39-.72-2.73-1.62-3.89l-1.42 1.42c.54.75.88 1.6 1.02 2.47h2.02zM13 17.9v2.02c1.39-.17 2.74-.71 3.9-1.61l-1.44-1.44c-.75.54-1.59.89-2.46 1.03zm3.89-2.42 1.42 1.41c.9-1.16 1.45-2.5 1.62-3.89h-2.02c-.14.87-.48 1.72-1.02 2.48z"}),"RotateRightOutlined");function JE(){return ie("div",{children:[x(Me,{size:"sm",onClick:()=>{I().transform.rotateLeft(),O().setDirty(!0)},children:x(KE,{})}),x(Me,{size:"sm",onClick:()=>{I().transform.rotateRight(),O().setDirty(!0)},children:x(ZE,{})})]})}function QE(){return ie("div",{className:"flex items-center justify-center gap-16",children:[x(qE,{}),x(eO,{}),x(JE,{})]})}function eO(){const t=de(null),{domProps:e,groupId:i,thumbIds:r,trackRef:n,getThumbValueLabel:o}=Mg({minValue:-45,maxValue:45,step:1,defaultValue:[O().crop.straightenAngle],onChange:e=>{const i=e[0];I().transform.straighten(i),O().crop.setTransformAngle(i),O().setDirty(!0),t.current.style.transform=`translateX(${i}px)`}});return x("div",{id:i,role:"group",className:"flex-auto flex-shrink-0 max-w-320 touch-none isolate",children:ie("div",{...e,ref:n,className:"h-36 relative",children:[ie("output",{htmlFor:r[0],"aria-live":"off",className:"absolute left-1/2 top-1/2 w-40 text-center bg -translate-x-1/2 -translate-y-1/2 z-10",children:[o(0),"°"]}),x(tO,{ref:t})]})})}const tO=ae.forwardRef((t,e)=>{const i=[...Array(80).keys()],r=i.map(t=>x("circle",{cx:2+10*t,cy:"20",r:t%5?.75:2},t));return x("div",{className:"relative h-full cursor-pointer overflow-hidden",children:x("svg",{ref:e,style:{width:10*i.length},className:"absolute -left-80 h-full fill-current",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",children:r})})});function rO(){return xe(()=>(O().setDirty(!0),I().frame.active.hide(),()=>{I().frame.active.show()}),[]),ie("div",{className:"pb-16",children:[x("div",{className:"mb-10",children:x(QE,{})}),x(YE,{})]})}const iO=me(x("path",{d:"M 16 6 C 12.484375 6 9.273438 7.070313 6.90625 8.84375 C 4.539063 10.617188 3 13.15625 3 16 C 3 18.84375 4.539063 21.382813 6.90625 23.15625 C 9.273438 24.929688 12.484375 26 16 26 C 19.515625 26 22.726563 24.929688 25.09375 23.15625 C 27.460938 21.382813 29 18.84375 29 16 C 29 13.15625 27.460938 10.617188 25.09375 8.84375 C 22.726563 7.070313 19.515625 6 16 6 Z M 16 8 C 19.109375 8 21.898438 8.957031 23.875 10.4375 C 25.851563 11.917969 27 13.875 27 16 C 27 18.125 25.851563 20.082031 23.875 21.5625 C 21.898438 23.042969 19.109375 24 16 24 C 12.890625 24 10.101563 23.042969 8.125 21.5625 C 6.148438 20.082031 5 18.125 5 16 C 5 13.875 6.148438 11.917969 8.125 10.4375 C 10.101563 8.957031 12.890625 8 16 8 Z "})),nO=me(x("path",{d:"M 16 4 C 9.382813 4 4 9.382813 4 16 C 4 22.617188 9.382813 28 16 28 C 22.617188 28 28 22.617188 28 16 C 28 9.382813 22.617188 4 16 4 Z M 16 6 C 21.535156 6 26 10.464844 26 16 C 26 21.535156 21.535156 26 16 26 C 10.464844 26 6 21.535156 6 16 C 6 10.464844 10.464844 6 16 6 Z "})),oO=me(x("path",{d:"M 3 6 L 3 26 L 29 26 L 29 6 Z M 5 8 L 27 8 L 27 24 L 5 24 Z "})),sO=me(x("path",{d:"M 16 4.90625 L 15.125 6.40625 L 4.71875 24.5 L 3.875 26 L 28.125 26 L 27.28125 24.5 L 16.875 6.40625 Z M 16 8.9375 L 24.65625 24 L 7.34375 24 Z "}));function aO(){const t=(oe(t=>{var e,i;return null==(i=null==(e=t.config.tools)?void 0:e.shapes)?void 0:i.items})||[]).map(t=>x(It,{children:x(Me,{variant:"outline",radius:"rounded-2xl",size:"xl",onClick:()=>{I().shape.addBasicShape(t.name),O().setDirty(!0)},children:x(lO,{shape:t})})},t.name));return x(jr,{children:t})}function lO({shape:t}){var e;return"Path"===t.type?x("svg",{className:"m-auto w-36 h-36",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 -100 512 700",children:x("path",{className:"fill-transparent stroke-current",d:null==(e=t.options)?void 0:e.path,strokeWidth:25})}):ae.cloneElement(cO[t.name],{className:"w-30 h-30"})}const cO={circle:x(nO,{viewBox:"0 0 32 32"}),square:x(oO,{viewBox:"0 0 32 32"}),triangle:x(sO,{viewBox:"0 0 32 32"}),ellipse:x(iO,{viewBox:"0 0 32 32"})};function Rn(t,e,i){let r,n=[];return()=>{let o;i.key&&null!=i.debug&&i.debug()&&(o=Date.now());const a=t();if(a.length===n.length&&!a.some((t,e)=>n[e]!==t))return r;let s;if(n=a,i.key&&null!=i.debug&&i.debug()&&(s=Date.now()),r=e(...a),null==i||null==i.onChange||i.onChange(r),i.key&&null!=i.debug&&i.debug()){const t=Math.round(100*(Date.now()-o))/100,e=Math.round(100*(Date.now()-s))/100,r=e/16,n=(t,e)=>{for(t=String(t);t.length<e;)t=" "+t;return t};console.info("%c⏱ "+n(e,5)+" /"+n(t,5)+" ms","\n font-size: .6rem;\n font-weight: bold;\n color: hsl("+Math.max(0,Math.min(120-120*r,120))+"deg 100% 31%);",null==i?void 0:i.key)}return r}}const uO=t=>t,hO=t=>{const e=Math.max(t.startIndex-t.overscan,0),i=Math.min(t.endIndex+t.overscan,t.count-1),r=[];for(let t=e;t<=i;t++)r.push(t);return r},fO=(t,e)=>{const i=new ResizeObserver(t=>{var i,r;e({width:null==(i=t[0])?void 0:i.contentRect.width,height:null==(r=t[0])?void 0:r.contentRect.height})});if(t.scrollElement)return e(t.scrollElement.getBoundingClientRect()),i.observe(t.scrollElement),()=>{i.unobserve(t.scrollElement)}},dh={element:["scrollLeft","scrollTop"],window:["scrollX","scrollY"]},dO=t=>(e,i)=>{if(!e.scrollElement)return;const r=dh[t][0],n=dh[t][1];let o=e.scrollElement[r],a=e.scrollElement[n];const s=()=>{i(e.scrollElement[e.options.horizontal?r:n])};s();const l=t=>{const i=t.currentTarget,l=i[r],c=i[n];(e.options.horizontal?o-l:a-c)&&s(),o=l,a=c};return e.scrollElement.addEventListener("scroll",l,{capture:!1,passive:!0}),()=>{e.scrollElement.removeEventListener("scroll",l)}},pO=dO("element"),gO=(t,e)=>t.getBoundingClientRect()[e.options.horizontal?"width":"height"],mO=(t,e,i)=>{var r;null==(r=i.scrollElement)||null==r.scrollTo||r.scrollTo({[i.options.horizontal?"left":"top"]:t,behavior:e?"smooth":void 0})};class vO{constructor(t){var e=this;this.unsubs=[],this.scrollElement=null,this.measurementsCache=[],this.itemMeasurementsCache={},this.pendingMeasuredCacheIndexes=[],this.measureElementCache={},this.range={startIndex:0,endIndex:0},this.setOptions=t=>{Object.entries(t).forEach(e=>{let[i,r]=e;typeof r>"u"&&delete t[i]}),this.options={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:uO,rangeExtractor:hO,enableSmoothScroll:!0,onChange:()=>{},measureElement:gO,initialRect:{width:0,height:0},...t}},this.notify=()=>{var t,e;null==(t=(e=this.options).onChange)||t.call(e,this)},this.cleanup=()=>{this.unsubs.filter(Boolean).forEach(t=>t()),this.unsubs=[],this.scrollElement=null},this._didMount=()=>()=>{this.cleanup()},this._willUpdate=()=>{const t=this.options.getScrollElement();this.scrollElement!==t&&(this.cleanup(),this.scrollElement=t,this._scrollToOffset(this.scrollOffset,!1),this.unsubs.push(this.options.observeElementRect(this,t=>{this.scrollRect=t,this.calculateRange()})),this.unsubs.push(this.options.observeElementOffset(this,t=>{this.scrollOffset=t,this.calculateRange()})))},this.getSize=()=>this.scrollRect[this.options.horizontal?"width":"height"],this.getMeasurements=Rn(()=>[this.options.count,this.options.paddingStart,this.options.getItemKey,this.itemMeasurementsCache],(t,e,i,r)=>{const n=this.pendingMeasuredCacheIndexes.length>0?Math.min(...this.pendingMeasuredCacheIndexes):0;this.pendingMeasuredCacheIndexes=[];const o=this.measurementsCache.slice(0,n);for(let a=n;a<t;a++){const t=i(a),n=r[t],s=o[a-1]?o[a-1].end:e,l="number"==typeof n?n:this.options.estimateSize(a),c=s+l;o[a]={index:a,start:s,size:l,end:c,key:t}}return this.measurementsCache=o,o},{key:!1,debug:()=>this.options.debug}),this.calculateRange=Rn(()=>[this.getMeasurements(),this.getSize(),this.scrollOffset],(t,e,i)=>{const r=yO({measurements:t,outerSize:e,scrollOffset:i});return(r.startIndex!==this.range.startIndex||r.endIndex!==this.range.endIndex)&&(this.range=r,this.notify()),this.range},{key:!1,debug:()=>this.options.debug}),this.getIndexes=Rn(()=>[this.options.rangeExtractor,this.range,this.options.overscan,this.options.count],(t,e,i,r)=>t({...e,overscan:i,count:r}),{key:!1,debug:()=>this.options.debug}),this.getVirtualItems=Rn(()=>[this.getIndexes(),this.getMeasurements(),this.options.measureElement],(t,e,i)=>{const r=t=>e=>{var r;const n=this.measurementsCache[t];if(!e)return;const o=i(e,this),a=null!=(r=this.itemMeasurementsCache[n.key])?r:n.size;o!==a&&(n.start<this.scrollOffset&&(this.destinationOffset||this._scrollToOffset(this.scrollOffset+(o-a),!1)),this.pendingMeasuredCacheIndexes.push(t),this.itemMeasurementsCache={...this.itemMeasurementsCache,[n.key]:o},this.notify())},n=[],o={};for(let i=0,s=t.length;i<s;i++){var a;const s=t[i],l={...e[s],measureElement:o[s]=null!=(a=this.measureElementCache[s])?a:r(s)};n.push(l)}return this.measureElementCache=o,n},{key:!1,debug:()=>this.options.debug}),this.scrollToOffset=function(t,i){let{align:r="start",smoothScroll:n=e.options.enableSmoothScroll}=void 0===i?{}:i;const o=e.scrollOffset,a=e.getSize();"auto"===r&&(r=t<=o?"start":t>=o+a?"end":"start"),"start"===r?e._scrollToOffset(t,n):"end"===r?e._scrollToOffset(t-a,n):"center"===r&&e._scrollToOffset(t-a/2,n)},this.scrollToIndex=function(t,i){let{align:r="auto",smoothScroll:n=e.options.enableSmoothScroll,...o}=void 0===i?{}:i;const a=e.getMeasurements(),s=e.scrollOffset,l=e.getSize(),{count:c}=e.options,h=a[Math.max(0,Math.min(t,c-1))];if(!h)return;if("auto"===r)if(h.end>=s+l-e.options.scrollPaddingEnd)r="end";else{if(!(h.start<=s+e.options.scrollPaddingStart))return;r="start"}const u="end"===r?h.end+e.options.scrollPaddingEnd:h.start-e.options.scrollPaddingStart;e.scrollToOffset(u,{align:r,smoothScroll:n,...o})},this.getTotalSize=()=>{var t;return((null==(t=this.getMeasurements()[this.options.count-1])?void 0:t.end)||this.options.paddingStart)+this.options.paddingEnd},this._scrollToOffset=(t,e)=>{let i;clearTimeout(this.scrollCheckFrame),this.destinationOffset=t,this.options.scrollToFn(t,e,this);const r=()=>{let t=this.scrollOffset;this.scrollCheckFrame=i=setTimeout(()=>{if(this.scrollCheckFrame===i){if(this.scrollOffset===t)return void(this.destinationOffset=void 0);t=this.scrollOffset,r()}},100)};r()},this.measure=()=>{this.itemMeasurementsCache={},this.notify()},this.setOptions(t),this.scrollRect=this.options.initialRect,this.scrollOffset=this.options.initialOffset,this.calculateRange()}}const bO=(t,e,i,r)=>{for(;t<=e;){const n=(t+e)/2|0,o=i(n);if(o<r)t=n+1;else{if(!(o>r))return n;e=n-1}}return t>0?t-1:0};function yO(t){let{measurements:e,outerSize:i,scrollOffset:r}=t;const n=e.length-1,o=bO(0,n,t=>e[t].start,r);let a=o;for(;a<n&&e[a].end<r+i;)a++;return{startIndex:o,endIndex:a}}const wO=typeof window<"u"?Se.useLayoutEffect:Se.useEffect;function xO(t){const e=Se.useReducer(()=>({}),{})[1],i={...t,onChange:i=>{e(),null==t.onChange||t.onChange(i)}},[r]=Se.useState(()=>new vO(i));return r.setOptions(i),Se.useEffect(()=>r._didMount(),[]),wO(()=>r._willUpdate()),r}function _O(t){return xO({observeElementRect:fO,observeElementOffset:pO,scrollToFn:mO,...t})}function Bg(){const t=oe(t=>{var e;return null==(e=t.config.ui)?void 0:e.activeTheme});return oe(e=>{var i;return((null==(i=e.config.ui)?void 0:i.themes)||[]).find(e=>e.name===t)})}function SO({category:t}){const e=Bg(),i=t.name,r=t.list?t.list:Array.from(Array(t.items).keys()),n=de(null),o=_O({horizontal:!0,count:r.length,getScrollElement:()=>n.current,estimateSize:Ie(()=>52,[]),overscan:5});return xe(()=>{o.scrollToIndex(0)},[i]),x(Gt,{children:x("div",{ref:n,className:"tiny-scrollbar overflow-x-auto overflow-y-hidden",style:{height:"52px"},children:x("div",{className:"h-full relative mx-auto",style:{width:`${o.getTotalSize()}px`},children:o.getVirtualItems().map(i=>{const n=`${r[i.index]}`;return x("div",{className:"absolute top-0 left-0 h-full",style:{width:`${i.size}px`,transform:`translateX(${i.start}px)`},children:x(Qe,{variant:"outline",radius:"rounded-xl",size:"md",equalWidth:!0,onClick:async()=>{await I().shape.addSticker(t.name,n),O().setDirty(!0)},children:x("img",{className:ue("m-auto m-auto w-28 h-28",t.invertPreview&&(null==e?void 0:e.isDark)&&"invert"),src:ha(t,n),alt:n})})},i.index)})})})})}function CO(){const t=oe(t=>{var e,i;return null==(i=null==(e=t.config.tools)?void 0:e.stickers)?void 0:i.items})||[],[e,i]=Ae(t[0]),r=t.map(t=>{const i=e===t,r=cb[t.name];return x(Qe,{size:"xs",color:i?"primary":null,value:t,children:x("span",{className:"capitalize",children:r?x(we,{...r}):t.name})},t.name)});return ie("div",{className:"h-92",children:[x(Bo,{value:e,onChange:t=>i(t),className:"mb-10 w-full justify-center",variant:"outline",radius:"rounded-full",children:r}),e&&x(SO,{category:e})]})}function TO(){const t=oe(t=>{var e,i;return null==(i=null==(e=t.config.tools)?void 0:e.frame)?void 0:i.items})||[],e=oe(t=>t.frame.active);xe(()=>{O().frame.active&&O().frame.showOptionsPanel()},[]);const i=t.map(t=>{const i=ct(`images/frames/${t.name}/thumbnail.png`),r=(null==e?void 0:e.name)===t.name;return x(It,{children:ie("button",{type:"button",className:"border-2 overflow-hidden relative rounded border cursor-pointer "+(r?"border-primary":""),onClick:()=>{O().setDirty(!0),r?I().frame.remove():I().frame.add(t.name)},children:[r&&x(kO,{}),x("img",{draggable:"false",className:"w-64 h-64",src:i,alt:t.name})]})},t.name)});return x(jr,{children:i})}function kO(){return x("span",{className:"bg-background/70 absolute inset-0 text-primary",children:x(Oa,{className:"svg-icon icon-md absolute inset-0 block m-auto"})})}function EO(){const t=oe(t=>{var e,i;return null==(i=null==(e=t.config.tools)?void 0:e.text)?void 0:i.items});xe(()=>{t&&lp(t,ct).catch(()=>{})},[t]),xe(()=>{I().text.selectOrAddText()&&O().setDirty(!0)},[]);const e=(t||[]).map(t=>x(It,{children:x(OO,{fontConfig:t})},t.family));return x(jr,{className:"pt-6",children:e})}function OO({fontConfig:t}){var e;const i=oe(t=>t.objects.active.editableProps.fontFamily),r=ue("block px-6 w-110 h-68 text-sm bg border rounded-2xl",{"border-primary":i===t.family,"text-primary":i===t.family});return x("button",{type:"button",className:r,style:{fontFamily:t.family,fontWeight:(null==(e=t.descriptors)?void 0:e.weight)||"normal"},onClick:async()=>{I().text.selectOrAddText(),O().setDirty(!0),I().objects.setValues({fontFamily:t.family})},children:t.family})}function PO(){return xe(()=>(I().draw.enable(),()=>{I().draw.disable()}),[]),ie(jr,{gap:"gap-16",className:"justify-center",children:[x(It,{children:x(Fr,{size:"sm",label:x(we,{message:"Brush Color"}),value:I().draw.currentBrush.color,onChange:t=>{I().draw.setBrushColor(t)}})}),x(It,{children:x(AO,{})}),x(It,{children:x(MO,{})})]})}function MO(){const t=oe(t=>{var e,i;return null==(i=null==(e=t.config.tools)?void 0:e.draw)?void 0:i.brushSizes})||[],[e,i]=Ae(I().draw.currentBrush.width);return x($l,{selectionMode:"single",selectedValue:e,onSelectionChange:t=>{i(t),I().draw.setBrushSize(t)},size:"sm",label:"Brush Size",children:t.map(t=>x(Io,{value:t,children:ie("div",{className:"flex items-center",children:[x("div",{className:"flex-shrink-0 mr-8 border-[3px] rounded-full",style:{width:`${t}px`,height:`${t}px`}}),t]})},t))})}function AO(){const t=oe(t=>{var e,i;return null==(i=null==(e=t.config.tools)?void 0:e.draw)?void 0:i.brushTypes})||[],e=Bg(),[i,r]=Ae(I().draw.currentBrush.type);return x($l,{selectionMode:"single",selectedValue:i,onSelectionChange:t=>{r(t),I().draw.setBrushType(t)},size:"sm",label:"Brush Type",children:t.map(t=>x(Io,{value:t,children:ie("div",{className:"flex items-center",children:[x("img",{className:"flex-shrink-0 mr-8 w-24 h-24",src:DO(t,null==e?void 0:e.isDark),alt:""}),t]})},t))})}function DO(t,e=!1){return ct(`images/brushes/${e?"white":"black"}/${t.replace("Brush","").toLowerCase()}.png`)}function IO(){const{trans:t}=Lr(),e=oe(t=>t.corners.radius);return xe(()=>(O().setDirty(!0),I().corners.showPreview(),()=>I().corners.hidePreview()),[]),x("div",{className:"max-w-320 mx-auto",children:x(zr,{minValue:1,maxValue:300,label:t({message:"Radius"}),getValueLabel:t=>`${t}px`,onChange:t=>{I().corners.updatePreview(t),O().corners.setRadius(t)},value:e})})}const Ng={initial:{y:"130%",opacity:0},animate:{y:0,opacity:1},exit:{y:"130%",opacity:0,left:0,position:"absolute",overflowY:"hidden"},transition:{type:"tween",duration:.15}};function RO({activeTool:t}){const e=LO(t);return x(ot.div,{className:"relative h-full w-full text-sm bg select-none overflow-hidden",...Ng,children:e})}function LO(t){switch(t){case Pe.FILTER:return x(BE,{});case Pe.RESIZE:return x(WE,{});case Pe.CROP:return x(rO,{});case Pe.DRAW:return x(PO,{});case Pe.TEXT:return x(EO,{});case Pe.SHAPES:return x(aO,{});case Pe.STICKERS:return x(CO,{});case Pe.FRAME:return x(TO,{});case Pe.CORNERS:return x(IO,{});default:return null}}function ph({className:t}){const e=oe(t=>t.activeTool);return x("nav",{className:ue("z-navbar min-h-86 flex-shrink-0 px-16 relative overflow-hidden",t),children:x(cr,{initial:!1,children:e?x(RO,{activeTool:e},"tool-controls"):x(FO,{},"nav-items")})})}function FO(){const t=oe(t=>{var e,i;return null==(i=null==(e=t.config.ui)?void 0:e.nav)?void 0:i.items})||[];return x(ot.div,{className:"w-full h-full",...Ng,children:x(jr,{children:t.map(t=>x(It,{children:x(zO,{item:t})},t.name))})})}function zO({item:t}){const e=Eb[t.name];return ie(Bt,{variant:"outline",color:"paper",className:"flex-col flex-shrink-0 w-68 h-68",radius:"rounded-2xl",onClick:()=>{"string"==typeof t.action?tl(t.action):"function"==typeof t.action&&t.action(O().editor)},children:[x("div",{className:"mb-1",children:x(Rl,{className:"icon-md",icon:t.icon})}),x("div",{className:"mt-6 text-xs capitalize max-w-[90%] overflow-hidden overflow-ellipsis",children:e?x(we,{...e}):t.name})]})}function jO(){const t=oe(t=>t.history.items),e=oe(t=>t.history.pointer);return ie(ot.div,{...Pl,className:"absolute bottom-20 right-20 w-224 max-w-[calc(100%-40px)] max-h-[calc(100%-40px)] bg-paper shadow-xl border focus:outline-none rounded overflow-hidden",children:[ie("div",{className:"px-10 py-2 mb-4 font-medium text-sm border-b flex items-center",children:[x(we,{message:"History"}),x(Me,{size:"xs",className:"ml-auto flex-shrink-0",onClick:()=>{O().togglePanel("history",!1)},children:x(or,{})})]}),x("div",{className:"p-10",children:t.map(i=>{const r=i.id===t[e].id,n=$t[i.name],o=n.icon&&ae.createElement(n.icon,{className:"icon-sm"});return x(Qe,{onClick:()=>{r||I().history.load(i)},variant:"outline",color:r?"primary":null,size:"sm",className:ue("w-full mb-8",r&&"pointer-events-none"),justify:"justify-start",startIcon:o,children:x(we,{...n.name})},i.id)})})]})}function BO(t){const{children:e,className:i,color:r,onDismiss:n,leftAdornment:o,rightAdornment:a,hideDismissButton:s=!1,size:l,showDivider:c}=t,{labelId:h,isDismissable:u,close:d}=De(Uo);return ie("div",{className:ue(i,"flex items-center justify-between gap-10 flex-shrink-0",c&&"border-b",NO(t),r||"text-main"),children:[o,x("h3",{id:h,className:ue(i,"xs"===l?"text-xs":"text-sm","font-semibold leading-5 opacity-90"),children:e}),a,u&&!s&&x(Me,{"aria-label":"Dismiss",onClick:()=>{n?n():d()},size:"xs"===l?"xs":"sm",className:ue("text-muted ml-auto",a&&"sr-only"),children:x(or,{})})]})}function NO({size:t,padding:e}){if(e)return e;switch(t){case"xs":return"px-14 py-4";case"sm":return"px-18 py-4";default:return"px-24 py-6"}}const Vg=et((t,e)=>{const{children:i,className:r}=t;return x("div",{ref:e,className:ue(r,VO(t),"overflow-y-auto overflow-x-hidden text-sm"),children:i})});function VO({size:t,padding:e}){if(e)return e;switch(t){case"xs":return"p-14";case"sm":return"p-18";default:return"px-24 py-20"}}function $O(){const t=oe(t=>t.openPanels.newImage);return x(Yo,{isOpen:t,disableInitialTransition:!0,type:"modal",isDismissable:!1,children:x(HO,{})})}function HO(){const[t,e]=Ae("default");return ie(Wo,{className:"text-center max-w-max",size:"auto",children:[x(BO,{padding:"px-24 pt-24 pb-12",showDivider:!1,children:x(we,{message:"Open a photo or design to get started"})}),x(Vg,{children:x("default"===t?UO:YO,{setActivePanel:e})})]})}function UO({setActivePanel:t}){return ie(ji,{children:[x(Qe,{className:"mr-20",size:"sm",variant:"raised",color:"primary",onClick:()=>{I().import.uploadAndReplaceMainImage()},children:x(we,{message:"Open Photo"})}),x(Qe,{variant:"outline",size:"sm",color:"primary",onClick:()=>{t("newCanvas")},children:x(we,{message:"Create New"})}),x(WO,{})]})}function WO(){const t=oe(t=>{var e,i;return null==(i=null==(e=t.config.ui)?void 0:e.openImageDialog)?void 0:i.sampleImages});return null!=t&&t.length?ie(ji,{children:[ie("div",{className:"relative py-20",children:[x("hr",{className:"absolute h-1 border-none bg-divider w-full top inset-0 m-auto"}),x("span",{className:"text-sm bg-paper px-6 relative",children:x(we,{message:"or use sample"})})]}),x("ul",{className:"flex items-center gap-16",children:t.map(t=>x("li",{className:"shrink-0",children:x("button",{type:"button",onClick:async()=>{"function"==typeof t.action?t.action():t.url.endsWith(".json")?(await Co(ct(t.url)),O().togglePanel("newImage",!1)):(await I().import.openBackgroundImage(ct(t.url)),O().togglePanel("newImage",!1))},children:x("img",{className:"w-80 h-80 rounded overflow-hidden transition-shadow hover:shadow-md",src:ct(t.thumbnail),alt:""})})},t.url||t.thumbnail))})]}):null}function YO({setActivePanel:t}){const[e,i]=Ae({width:800,height:600,bgColor:"transparent"});return ie("form",{onSubmit:t=>{t.preventDefault();const{width:i,height:r,bgColor:n}=e;i&&r&&(O().setConfig({blankCanvasSize:{width:i,height:r}}),I().canvas.openNew(i,r,n),O().togglePanel("newImage",!1),I().history.addInitial())},children:[x(Or,{type:"number",label:x(we,{message:"Width"}),value:e.width,min:1,required:!0,className:"mb-16",onChange:t=>{i({...e,width:t.target.valueAsNumber})}}),x(Or,{type:"number",label:x(we,{message:"Height"}),value:e.height,min:1,required:!0,className:"mb-16",onChange:t=>{i({...e,height:t.target.valueAsNumber})}}),x(Fr,{onChange:t=>{i({...e,bgColor:t})},className:"mb-16",value:e.bgColor,label:x(we,{message:"Background color"})}),ie("div",{className:"text-right",children:[x(Qe,{size:"sm",variant:"text",className:"mr-10",onClick:()=>{t("default")},children:x(we,{message:"Cancel"})}),x(Qe,{size:"sm",type:"submit",variant:"raised",color:"primary",children:x(we,{message:"Create"})})]})]})}const XO=et((t,e)=>{const i=Rr(t),{label:r,children:n,size:o,className:a,orientation:s="horizontal",disabled:l,required:c,invalid:h,errorMessage:u,description:d}=t,p=yt(),f=t.name||p;return ie("fieldset",{"aria-describedby":d?`${p}-description`:void 0,ref:e,className:ue("text-left",a),children:[r&&x("legend",{className:i.label,children:r}),x("div",{className:ue("flex","vertical"===s?"flex-col gap-10":"flex-row gap-16"),children:Sr.map(n,t=>{if(tr(t))return dt(t,{name:f,size:o,invalid:t.props.invalid||h||void 0,disabled:t.props.disabled||l,required:t.props.required||c})})}),d&&!u&&x("div",{className:i.description,id:`${p}-description`,children:d}),u&&x("div",{className:i.error,children:u})]})}),xs=et((t,e)=>{const{children:i,autoFocus:r,size:n,invalid:o,isFirst:a,...s}=t,l=Ir(e);Vl({autoFocus:r},l);const c=GO(n);return ie("label",{className:ue("inline-flex gap-8 select-none items-center whitespace-nowrap align-middle",c.label,t.disabled&&"text-disabled pointer-events-none",t.invalid&&"text-danger"),children:[x("input",{type:"radio",className:ue("focus-visible:ring outline-none","rounded-full transition-button border-2 appearance-none","border-text-muted disabled:border-disabled-fg checked:border-primary checked:hover:border-primary-dark","before:bg-primary disabled:before:bg-disabled-fg before:hover:bg-primary-dark","before:h-full before:w-full before:block before:rounded-full before:scale-10 before:opacity-0 before:transition before:duration-200","checked:before:scale-[.65] checked:before:opacity-100",c.circle),ref:l,...s}),i&&x("span",{children:i})]})});function GO(t){switch(t){case"xs":return{circle:"h-12 w-12",label:"text-xs"};case"sm":return{circle:"h-16 w-16",label:"text-sm"};case"lg":return{circle:"h-24 w-24",label:"text-lg"};default:return{circle:"h-20 w-20",label:"text-base"}}}function qO(){const t=oe(t=>t.openPanels.export);return x(Yo,{isOpen:t,onOpenChange:t=>{t||O().togglePanel("export",!1)},type:"modal",children:x(KO,{})})}function KO(){const[t,e]=Ae(()=>{var t,e,i,r,n,o;return{filename:(null==(e=null==(t=O().config.tools)?void 0:t.export)?void 0:e.defaultName)||"image",format:(null==(r=null==(i=O().config.tools)?void 0:i.export)?void 0:r.defaultFormat)||"jpeg",quality:(null==(o=null==(n=O().config.tools)?void 0:n.export)?void 0:o.defaultQuality)||.8}});return x(Wo,{className:"text-center max-w-max",size:"auto",children:x(Vg,{children:ie("form",{onSubmit:e=>{e.preventDefault(),I().export.save(t.filename,t.format,t.quality),O().togglePanel("export",!1)},children:[x(Or,{required:!0,size:"sm",label:x(we,{message:"Save As"}),value:t.filename,onChange:i=>{e({...t,filename:i.target.value})}}),ie(XO,{size:"sm",className:"my-20","aria-label":"Image format",children:[x(xs,{value:"jpeg",checked:"jpeg"===t.format,onChange:i=>{e({...t,format:i.target.value})},children:"JPEG"}),x(xs,{value:"png",checked:"png"===t.format,onChange:i=>{e({...t,format:i.target.value})},children:"PNG"}),x(xs,{value:"json",checked:"json"===t.format,onChange:i=>{e({...t,format:i.target.value})},children:"JSON"})]}),x(zr,{size:"sm",minValue:.1,step:.1,maxValue:1,value:t.quality,onChange:i=>{e({...t,quality:i})},formatOptions:{style:"percent"},label:x(we,{message:"Quality"})}),x(Qe,{variant:"raised",color:"primary",type:"submit",className:"mt-20 w-full",size:"sm",children:x(we,{message:"Save"})})]})})})}function ZO(){const t=oe(t=>t.objects.all),e=oe(t=>t.objects.active.id);return ie(ot.div,{...Pl,className:"absolute bottom-20 right-20 w-224 max-w-[calc(100%-40px)] max-h-[calc(100%-40px)] bg-paper shadow-xl border focus:outline-none rounded overflow-hidden",children:[ie("div",{className:"px-10 py-2 mb-4 font-medium text-sm border-b flex items-center",children:[x(we,{message:"Objects"}),x(Me,{size:"xs",className:"ml-auto flex-shrink-0",onClick:()=>{O().togglePanel("objects",!1)},children:x(or,{})})]}),x("div",{className:"p-8",children:t.map(t=>{const i=t.id===e,r=t.name,n=P1[r],o=n.icon&&ae.createElement(n.icon,{className:"icon-sm"});return x(Qe,{onClick:()=>{i||!t.selectable||I().objects.select(t.id)},variant:"outline",color:i?"primary":null,size:"sm",className:ue("w-full mb-8",(i||!t.selectable)&&"pointer-events-none"),justify:"justify-start",startIcon:o,children:x(we,{...n.name})},t.id)})})]})}function JO(){const t=oe(t=>t.openPanels.history),e=oe(t=>t.openPanels.objects);return ie("div",{className:"z-modal",children:[ie(cr,{children:[t&&x(jO,{},"historyPanel"),e&&x(ZO,{},"objListPanel")]}),x($O,{}),x(qO,{})]})}function Pa(){return Pa=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var i=arguments[e];for(var r in i)Object.prototype.hasOwnProperty.call(i,r)&&(t[r]=i[r])}return t},Pa.apply(this,arguments)}var gh,vh;function mh(t){let{pathname:e="/",search:i="",hash:r=""}=t;return i&&"?"!==i&&(e+="?"===i.charAt(0)?i:"?"+i),r&&"#"!==r&&(e+="#"===r.charAt(0)?r:"#"+r),e}function $g(t){let e={};if(t){let i=t.indexOf("#");i>=0&&(e.hash=t.substr(i),t=t.substr(0,i));let r=t.indexOf("?");r>=0&&(e.search=t.substr(r),t=t.substr(0,r)),t&&(e.pathname=t)}return e}function Hl(t,e){if(!1===t||null===t||typeof t>"u")throw new Error(e)}function QO(t,e){void 0===e&&(e="/");let{pathname:i,search:r="",hash:n=""}="string"==typeof t?$g(t):t;return{pathname:i?i.startsWith("/")?i:eP(i,e):e,search:tP(r),hash:rP(n)}}function eP(t,e){let i=e.replace(/\/+$/,"").split("/");return t.split("/").forEach(t=>{".."===t?i.length>1&&i.pop():"."!==t&&i.push(t)}),i.length>1?i.join("/"):"/"}function Hg(t,e,i,r){void 0===r&&(r=!1);let n,o="string"==typeof t?$g(t):Pa({},t),a=""===t||""===o.pathname,s=a?"/":o.pathname;if(r||null==s)n=i;else{let t=e.length-1;if(s.startsWith("..")){let e=s.split("/");for(;".."===e[0];)e.shift(),t-=1;o.pathname=e.join("/")}n=t>=0?e[t]:"/"}let l=QO(o,n),c=s&&"/"!==s&&s.endsWith("/"),h=(a||"."===s)&&i.endsWith("/");return!l.pathname.endsWith("/")&&(c||h)&&(l.pathname+="/"),l}!function(t){t.Pop="POP",t.Push="PUSH",t.Replace="REPLACE"}(gh||(gh={})),function(t){t.data="data",t.deferred="deferred",t.redirect="redirect",t.error="error"}(vh||(vh={}));const Ug=t=>t.join("/").replace(/\/\/+/g,"/"),tP=t=>t&&"?"!==t?t.startsWith("?")?t:"?"+t:"",rP=t=>t&&"#"!==t?t.startsWith("#")?t:"#"+t:"";function iP(t,e){return t===e&&(0!==t||1/t==1/e)||t!=t&&e!=e}const nP="function"==typeof Object.is?Object.is:iP,{useState:oP,useEffect:sP,useLayoutEffect:aP,useDebugValue:lP}=Se;function cP(t,e,i){const r=e(),[{inst:n},o]=oP({inst:{value:r,getSnapshot:e}});return aP(()=>{n.value=r,n.getSnapshot=e,_s(n)&&o({inst:n})},[t,r,e]),sP(()=>(_s(n)&&o({inst:n}),t(()=>{_s(n)&&o({inst:n})})),[t]),lP(r),r}function _s(t){const e=t.getSnapshot,i=t.value;try{const t=e();return!nP(i,t)}catch{return!0}}function uP(t,e,i){return e()}const hP=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",fP=!hP,dP=fP?uP:cP;"useSyncExternalStore"in Se&&Se.useSyncExternalStore;const Wg=Se.createContext(null),Yg=Se.createContext(null),Xg=Se.createContext({outlet:null,matches:[]});function pP(t,e){let{relative:i}=void 0===e?{}:e;Ul()||Hl(!1);let{basename:r,navigator:n}=Se.useContext(Wg),{hash:o,pathname:a,search:s}=qg(t,{relative:i}),l=a;return"/"!==r&&(l="/"===a?r:Ug([r,a])),n.createHref({pathname:l,search:s,hash:o})}function Ul(){return null!=Se.useContext(Yg)}function Wl(){return Ul()||Hl(!1),Se.useContext(Yg).location}function Gg(t){return t.filter((e,i)=>0===i||!e.route.index&&e.pathnameBase!==t[i-1].pathnameBase)}function gP(){Ul()||Hl(!1);let{basename:t,navigator:e}=Se.useContext(Wg),{matches:i}=Se.useContext(Xg),{pathname:r}=Wl(),n=JSON.stringify(Gg(i).map(t=>t.pathnameBase)),o=Se.useRef(!1);return Se.useEffect(()=>{o.current=!0}),Se.useCallback(function(i,a){if(void 0===a&&(a={}),!o.current)return;if("number"==typeof i)return void e.go(i);let s=Hg(i,JSON.parse(n),r,"path"===a.relative);"/"!==t&&(s.pathname="/"===s.pathname?t:Ug([t,s.pathname])),(a.replace?e.replace:e.push)(s,a.state,a)},[t,e,n,r])}function qg(t,e){let{relative:i}=void 0===e?{}:e,{matches:r}=Se.useContext(Xg),{pathname:n}=Wl(),o=JSON.stringify(Gg(r).map(t=>t.pathnameBase));return Se.useMemo(()=>Hg(t,JSON.parse(o),n,"path"===i),[t,o,n,i])}var bh,yh;function mP(t,e){if(null==t)return{};var i,r,n={},o=Object.keys(t);for(r=0;r<o.length;r++)i=o[r],!(e.indexOf(i)>=0)&&(n[i]=t[i]);return n}function vP(t){return!!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)}function bP(t,e){return!(0!==t.button||e&&"_self"!==e||vP(t))}!function(t){t.UseLoaderData="useLoaderData",t.UseActionData="useActionData",t.UseRouteError="useRouteError",t.UseNavigation="useNavigation",t.UseRouteLoaderData="useRouteLoaderData",t.UseMatches="useMatches",t.UseRevalidator="useRevalidator"}(bh||(bh={})),function(t){t[t.pending=0]="pending",t[t.success=1]="success",t[t.error=2]="error"}(yh||(yh={})),new Promise(()=>{});const yP=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset"],wP=Se.forwardRef(function(t,e){let{onClick:i,relative:r,reloadDocument:n,replace:o,state:a,target:s,to:l,preventScrollReset:c}=t,h=mP(t,yP),u=pP(l,{relative:r}),d=xP(l,{replace:o,state:a,target:s,preventScrollReset:c,relative:r});return x("a",{...h,href:u,onClick:n?i:function(t){i&&i(t),t.defaultPrevented||d(t)},ref:e,target:s})});function xP(t,e){let{target:i,replace:r,state:n,preventScrollReset:o,relative:a}=void 0===e?{}:e,s=gP(),l=Wl(),c=qg(t,{relative:a});return Se.useCallback(e=>{if(bP(e,i)){e.preventDefault();let i=void 0!==r?r:mh(l)===mh(c);s(t,{replace:i,state:n,preventScrollReset:o,relative:a})}},[l,s,c,r,n,i,t,o,a])}const _P=me(x("path",{d:"M11 15h2v2h-2v-2zm0-8h2v6h-2V7zm.99-5C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"}),"ErrorOutlineOutlined"),SP=me(x("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm4.59-12.42L10 14.17l-2.59-2.58L6 13l4 4 8-8z"}),"CheckCircleOutlined");function CP(){const t=zf(t=>t.toasts);return x("div",{className:"relative pointer-events-none",children:x(cr,{initial:!1,children:t.map(t=>x("div",{"data-toast":!0,className:ue("fixed mx-auto p-20 z-toast","bottom-center"===t.position?"left-0 right-0 bottom-0":"right-0 bottom-0"),children:ie(ot.div,{initial:{opacity:0,y:50,scale:.3},animate:{opacity:1,y:0,scale:1},exit:{opacity:0,scale:.5,transition:{duration:.2}},className:ue("flex items-center gap-10 min-w-288 max-w-500 shadow-lg w-min rounded-lg pl-16 pr-6 py-6 text-sm pointer-events-auto max-h-100 bg-paper text-main bg-paper border mx-auto"),onPointerEnter:()=>{var e;return null==(e=t.timer)?void 0:e.pause()},onPointerLeave:()=>{var e;return null==(e=t.timer)?void 0:e.resume()},role:"alert","aria-live":"danger"===t.type?"assertive":"polite",children:["danger"===t.type&&x(_P,{className:"text-danger flex-shrink-0",size:"md"}),"positive"===t.type&&x(SP,{className:"text-positive flex-shrink-0",size:"md"}),x("div",{className:"overflow-hidden overflow-ellipsis w-max mr-auto",children:x(wa,{value:t.message})}),t.action&&x(Qe,{variant:"text",color:"primary",size:"sm",className:"flex-shrink-0",onFocus:()=>{var e;return null==(e=t.timer)?void 0:e.pause()},onBlur:()=>{var e;return null==(e=t.timer)?void 0:e.resume()},onClick:()=>$i().remove(t.id),elementType:wP,to:t.action.action,children:x(wa,{value:t.action.label})}),x(Me,{onFocus:()=>{var e;return null==(e=t.timer)?void 0:e.pause()},onBlur:()=>{var e;return null==(e=t.timer)?void 0:e.resume()},type:"button",className:"flex-shrink-0",onClick:()=>{$i().remove(t.id)},size:"sm",children:x(or,{})})]})},t.id))})})}function TP(t){return ip()?t.metaKey:t.ctrlKey}function kP(t){switch(t.key){case"z":TP(t)&&(t.preventDefault(),t.stopPropagation(),t.shiftKey?I().history.redo():I().history.undo());break;case"ArrowUp":t.preventDefault(),t.stopPropagation(),I().objects.move("up");break;case"ArrowRight":t.preventDefault(),t.stopPropagation(),I().objects.move("right");break;case"ArrowDown":t.preventDefault(),t.stopPropagation(),I().objects.move("down");break;case"ArrowLeft":t.preventDefault(),t.stopPropagation(),I().objects.move("left");break;case"Delete":t.preventDefault(),t.stopPropagation(),I().objects.delete()}}const EP=new Map,Ss=new Map,wh={status:"inactive"};async function*OP(t){for(const e of t.items)if("file"===e.kind)if("function"==typeof e.webkitGetAsEntry){const t=e.webkitGetAsEntry();if(!t)continue;if(t.isFile){if(".DS_Store"===t.name)continue;yield new qi(e.getAsFile(),t.fullPath)}else t.isDirectory&&(yield*Kg(t))}else{const t=e.getAsFile();if(!t||".DS_Store"===t.name)continue;yield new qi(t,e.fullPath)}}async function*Kg(t){const e=t.createReader();let i;do{i=await new Promise((t,i)=>{e.readEntries(t,i)});for(const t of i)if(t.isFile){if(".DS_Store"===t.name)continue;const e=await PP(t);yield new qi(e,t.fullPath)}else t.isDirectory&&(yield*Kg(t))}while(i.length>0)}function PP(t){return new Promise((e,i)=>t.file(e,i))}async function MP(t){const e=[];for await(const i of t)e.push(i);return e}const AP=400;function DP({id:t,disabled:e,ref:i,...r}){const n=de({dragOverElements:new Set,dropActivateTimer:void 0}).current,o=de(r);o.current=r,pi(()=>(Ss.set(t,{...Ss.get(t),disabled:e,id:t,ref:i}),()=>{Ss.delete(t)}),[t,o,e,i]);const a=t=>{var e;const r=o.current;return!(!(null==t?void 0:t.type)||i.current===(null==(e=t.ref)?void 0:e.current)||!r.types.includes(t.type)||r.acceptsDrop&&!r.acceptsDrop(t))},s=t=>{var e,i;const r=Ln(t);r&&(null==(i=(e=o.current).onDragLeave)||i.call(e,r))};return{droppableProps:e?{}:{onDragOver:t=>{t.preventDefault(),t.stopPropagation()},onDragEnter:t=>{var e,i;if(t.stopPropagation(),n.dragOverElements.add(t.target),n.dragOverElements.size>1)return;const r=Ln(t);r&&a(r)&&(null==(i=(e=o.current).onDragEnter)||i.call(e,r),clearTimeout(n.dropActivateTimer),"function"==typeof o.current.onDropActivate&&(n.dropActivateTimer=setTimeout(()=>{var t,e;r&&(null==(e=(t=o.current).onDropActivate)||e.call(t,r))},AP)))},onDragLeave:t=>{t.stopPropagation(),n.dragOverElements.delete(t.target);for(const e of n.dragOverElements)t.currentTarget.contains(e)||n.dragOverElements.delete(e);if(n.dragOverElements.size>0)return;const e=Ln(t);e&&a(e)&&(s(t),clearTimeout(n.dropActivateTimer))},onDrop:async t=>{var e,i,r,l;t.preventDefault(),t.stopPropagation(),n.dragOverElements.clear(),s(t),clearTimeout(n.dropActivateTimer);const c=Ln(t);c&&(null==(i=(e=o.current).onDragLeave)||i.call(e,c),a(c)&&(null==(l=(r=o.current).onDrop)||l.call(r,c)))}}}}function Ln(t){return null!=wh.dragTargetId?EP.get(wh.dragTargetId):t.dataTransfer.types.includes("Files")?{type:"nativeFile",el:null,ref:null,getData:()=>MP(OP(t.dataTransfer))}:void 0}function IP({children:t}){const e=oe(t=>t.bootstrapData),i=Je(()=>({data:e,setBootstrapData:()=>{},mergeBootstrapData:()=>{},invalidateBootstrapData:()=>{}}),[e]);return x(Ap.Provider,{value:i,children:t})}function RP(){var t,e,i,r;const n=null==(t=oe(t=>{var e;return null==(e=t.config.ui)?void 0:e.visible}))||t,o=null!=(e=oe(t=>{var e,i;return null==(i=null==(e=t.config.ui)?void 0:e.nav)?void 0:i.position}))?e:"bottom",a=null!=(i=oe(t=>{var e,i;return null==(i=null==(e=t.config.ui)?void 0:e.menubar)?void 0:i.position}))?i:"top",s=null==(r=oe(t=>{var e;return null==(e=t.config.ui)?void 0:e.allowEditorClose}))||r,l=de(null),c=de(null),{isModal:h,isMobile:u}=No(),d=Ie(async t=>{var e,i,r;if(O().activeTool||O().dirty||"nativeFile"!==t.type)return;const n=await t.getData();!I().import.fileIsValid(n[0])||(null!=(r=null==(i=null==(e=O().config.tools)?void 0:e.import)?void 0:i.openDroppedImageAsBackground)&&r?await I().import.openBackgroundImage(n[0]):await I().import.openUploadedFile(n[0]))},[]),{droppableProps:p}=DP({id:"pixie-root",ref:c,types:["nativeFile"],onDrop:d});xe(()=>{var t,e;O().fabric||(oe.setState({canvasRef:l}),ES(l.current),null!=(t=O().config.ui)&&t.defaultTool&&O().setActiveTool(null==(e=O().config.ui)?void 0:e.defaultTool,null),I().canvas.loadInitialContent().then(()=>{var t,e;null==(e=(t=O().config).onLoad)||e.call(t,O().editor)}));const i=wu(c,()=>{O().setStageSize(xu(c.current))}),r=wu(l,()=>{O().setCanvasSize(xu(l.current))});return()=>{i(),r()}},[c]);const f=ue("pixie-root flex flex-col overflow-hidden bg-background text-main no-tap-highlight w-full h-full",{relative:!h,"fixed inset-0 w-full h-full z-20":h,"shadow-lg border rounded-md m-auto max-h-[calc(100vh-90px)] max-w-[calc(100vw-90px)]":h&&!u});return x(s_,{features:a_,strict:!0,children:ie(IP,{children:[h&&n&&!u&&s&&x(Me,{className:"z-20 fixed right-2 top-2 text-white",size:"lg",onClick:()=>{O().editor.close()},children:x(or,{})}),h&&n&&x(Il,{position:"fixed",disableInitialTransition:!0}),ie(ot.div,{initial:!1,variants:{visible:{opacity:1,scale:1,display:"flex"},hidden:{opacity:0,transitionEnd:{display:"none"}}},animate:n?"visible":"hidden",className:f,children:["top"===a&&x(Ru,{}),"top"===o&&x(ph,{className:"pt-14"}),ie("main",{className:"relative flex-auto my-20 overflow-hidden outline-none",tabIndex:-1,...vi(p,{onKeyDownCapture:kP}),ref:c,children:[x(PT,{}),x(J5,{ref:l})]}),x(IE,{}),"bottom"===o&&x(ph,{}),"bottom"===a&&x(Ru,{}),x(JO,{}),x(CP,{})]})]})})}Ts.enableBoundaryChecking(!1);const Yl=class{constructor(t){if(Ce(this,"tools",{}),Ce(this,"fabric",null),t.sentryDsn&&Q0({dsn:t.sentryDsn}),_m(uy),!t.selector)throw new Error('Pixie required "selector" option.');const e=document.querySelector(t.selector);e&&(e.classList.add("pi"),ay(e),this.setConfig(t),oe.setState({editor:this}),jf(e).render(x(ae.StrictMode,{children:x(RP,{})})))}get state(){return O()}get defaultConfig(){return Yl.defaultConfig}open(t={}){var e;null!=(e=O().config.ui)&&e.visible||(this.setConfig(Eh(t,{ui:{visible:!0}})),requestAnimationFrame(()=>{var t,e,i,r;I().zoom.fitToScreen(),I().history.addInitial(),rl()&&(null==(e=null==(t=O().config.ui)?void 0:t.openImageDialog)?void 0:e.show)&&this.togglePanel("newImage",!0),null==(r=(i=O().config).onOpen)||r.call(i)}))}close(){var t,e,i;null==(t=O().config.ui)||!t.visible||(this.setConfig({ui:{visible:!1}}),null==(i=(e=O().config).onClose)||i.call(e))}setConfig(t){O().setConfig(t)}uploadAndAddImage(){return I().import.uploadAndAddImage()}uploadAndReplaceMainImage(){return I().import.uploadAndReplaceMainImage()}uploadAndOpenStateFile(){return I().import.uploadAndOpenStateFile()}newCanvas(t,e,i){return I().canvas.openNew(t,e,i)}getState(t){return JSON.stringify(Zn(t))}setState(t){return I().import.loadState(t)}async setStateFromUrl(t){const e=await Co(t);return I().import.loadState(e)}openTool(t){tl(t)}applyChanges(){O().applyChanges()}cancelChanges(){O().cancelChanges()}async resetEditor(t){await Ws(t),await I().canvas.loadInitialContent()}togglePanel(t,e){"objects"===t&&O().togglePanel("history",!1),"history"===t&&O().togglePanel("objects",!1),O().togglePanel(t,e)}on(t,e){var i;null==(i=this.fabric)||i.on(t,e)}isDirty(){return O().dirty}get(t){return this.tools[t]}notify(t){return tn(t)}static init(t){return new Promise(e=>{const i=t.onLoad;t.onLoad=t=>{null==i||i(t),e(t)},new this(t)})}};let Fn=Yl;Ce(Fn,"defaultConfig",vf),Ce(Fn,"version",Vb);export{Fn as Pixie};
|