@versa_ai/vmml-editor 1.0.9 → 1.0.11

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/dist/index.js CHANGED
@@ -254,12 +254,17 @@ var css = `@charset "UTF-8";
254
254
  height: 100%;
255
255
  object-fit: contain;
256
256
  }
257
- /*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiRDpcXHByb2plY3RzXFx2bW1sLXBsYXllclxccGFja2FnZXNcXGVkaXRvclxcc3JjXFxhc3NldHNcXGNzcyIsInNvdXJjZXMiOlsiaW5kZXguc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNFO0VBQ0E7O0FBQ0E7RUFDRTtFQUNBOztBQUdKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDRTtFQUNBOztBQUVGO0VBQ0U7O0FBR0o7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDRTtFQUNBOztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0U7O0FBR0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNFO0VBQ0E7O0FBQ0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFRjtFQUNFO0VBQ0E7RUFDQTs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtSO0VBQ0U7RUFDQTs7QUFHSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDRTtFQUNBO0VBQ0E7O0FBR0o7RUFDRTs7QUFLSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDRTtFQUNBOztBQUNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFLTjtFQUNFOztBQUdGO0VBQ0U7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDRTs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0U7O0FBRUY7RUFDRTtFQUNBOztBQUVGO0VBQ0U7O0FBR0o7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNFO0VBQ0E7RUFDQTs7QUFDQTtFQUNFO0VBQ0E7RUFDQSIsInNvdXJjZXNDb250ZW50IjpbIi5lZGl0b3J7XHJcbiAgYmFja2dyb3VuZDogIzAwMDtcclxuICB3aWR0aDogMTAwJTtcclxuICBtaW4taGVpZ2h0OiAxMDB2aDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAucGFkZGluZy1ib3gge1xyXG4gICAgZmxleDogMTtcclxuICB9XHJcbiAgLy8g6aG26YOoXHJcbiAgJj4uaGVhZGVye1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGhlaWdodDogMTEuNDY3dnc7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDQuNHZ3O1xyXG4gICAgcGFkZGluZy1yaWdodDogMy4ydnc7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgJj4uY2xvc2V7XHJcbiAgICAgIHdpZHRoOiA0dnc7XHJcbiAgICAgIGhlaWdodDogNHZ3O1xyXG4gICAgICBpbWd7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmPi5oaXN0b3J5LW9wZXJhdGV7XHJcbiAgICAgIGhlaWdodDogNy4ydnc7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgbGVmdDogNTAlO1xyXG4gICAgICB0b3A6IDUwJTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcclxuICAgICAgaW1ne1xyXG4gICAgICAgIHdpZHRoOiA0LjY2N3Z3O1xyXG4gICAgICAgIGhlaWdodDogNS4wNjd2dztcclxuICAgICAgfVxyXG4gICAgICAmPmltZzpsYXN0LWNoaWxke1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA4dnc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICY+Lm5leHQtYnV0dG9ue1xyXG4gICAgICB3aWR0aDogMTZ2dztcclxuICAgICAgaGVpZ2h0OiA3LjJ2dztcclxuICAgICAgbGluZS1oZWlnaHQ6IDcuMnZ3O1xyXG4gICAgICBiYWNrZ3JvdW5kOiAjMTY3N0ZGO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiA2LjUzM3Z3O1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIGZvbnQtc2l6ZTogMy4ydnc7XHJcbiAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgfVxyXG4gIH1cclxuICAudGV4dC1zdHlsZXtcclxuICAgIGZpbHRlcjpibHVyKDEwcHgpXHJcbiAgfVxyXG5cclxuICAuZWRpdG9yLXZlc3NlbCB7XHJcbiAgICBwYWRkaW5nLXRvcDogMy4ydnc7XHJcbiAgfVxyXG4gIC8vcGxheWVy5LiO55S75biDXHJcbiAgLm1haW57XHJcbiAgICB3aWR0aDogODEuNDY3dnc7XHJcbiAgICBoZWlnaHQ6IDE0NC44dnc7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBib3JkZXItcmFkaXVzOiAzLjJ2dztcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAudmVzc2VsIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxuICAgIC5jb250cm9scy1ib3gge1xyXG4gICAgICBoZWlnaHQ6IDEydnc7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgYm90dG9tOiAwO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMy4ydnc7XHJcbiAgICB9XHJcbiAgICAucGxheWVyLWNvbnRyb2xzIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgcGFkZGluZzogMCAyLjEzdnc7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCggMTgwZGVnLCByZ2JhKDAsMCwwLDApIDAlLCByZ2JhKDAsMCwwLDAuNikgMTAwJSk7XHJcbiAgICAgIC5tci0xNiB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyLjEzdnc7XHJcbiAgICAgIH1cclxuICAgICAgLnBsYXllci1jb250cm9scy10b2dnbGUge1xyXG4gICAgICAgID5pbWcge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICB3aWR0aDogNC44dnc7XHJcbiAgICAgICAgICBoZWlnaHQ6IDQuOHZ3O1xyXG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAucGxheWVyLWNvbnRyb2xzLXNlZWtiYXIge1xyXG4gICAgICAgIGZsZXg6IDE7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIC5zZWVrYmFyLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxuICAgICAgICAgIHRvdWNoLWFjdGlvbjogbm9uZTtcclxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAuc2Vla2Jhci1iYWNrZ3JvdW5kIHtcclxuICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMS42dnc7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDF2dztcclxuICAgICAgICAgICAgLnNlZWtiYXItZmlsbCB7XHJcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxdnc7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnNlZWtiYXItbGluZSB7XHJcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDF2dztcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5zZWVrYmFyLXNpZ24ge1xyXG4gICAgICAgICAgICAgIHdpZHRoOiAxMHB4O1xyXG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5zZWVrYmFyLWNpcmxlIHtcclxuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgdG9wOiAtMC44dnc7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDMuMnZ3O1xyXG4gICAgICAgICAgICAgIGhlaWdodDogMy4ydnc7XHJcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNlZWVlZWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLnBsYXllci1jb250cm9scy10aW1lIHtcclxuICAgICAgICB3aWR0aDogMTB2dztcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnBsYXktYnRuIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBib3R0b206IDR2dztcclxuICAgICAgbGVmdDogM3Z3O1xyXG4gICAgICB3aWR0aDogNC44dnc7XHJcbiAgICAgIGhlaWdodDogNC44dnc7XHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAub3BhY2l0eS0wNiB7XHJcbiAgICAgIG9wYWNpdHk6IDAuNjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8v5bqV6YOoXHJcbiAgLmZvb3RlcntcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBhZGRpbmc6IDAgMjAuMzMzdncgMTAuOTMzdnc7XHJcbiAgICAmPmRpdntcclxuICAgICAgd2lkdGg6IDMwJTtcclxuICAgICAgbWFyZ2luOiAwIDE1JTtcclxuICAgICAgaW1ne1xyXG4gICAgICAgIHdpZHRoOiA2LjR2dztcclxuICAgICAgICBoZWlnaHQ6IDYuNHZ3O1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG1hcmdpbjogYXV0bztcclxuICAgICAgfVxyXG4gICAgICBwe1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMy4ydnc7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMS44Njd2dztcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5ub3Qtc2hvdy10ZXh0e1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XHJcbiAgfVxyXG5cclxuICAuZWRpdG9yLXZpZGVvLW1lbnUge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgLy8gaGVpZ2h0OiAzOC4xM3ZoO1xyXG4gICAgaGVpZ2h0OiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMUUxRTFFO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOHB4IDhweCAwIDA7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDsgIFxyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICBoZWlnaHQ6IDM4LjEzdmg7XHJcbiAgICB9XHJcbiAgICAuZWRpdG9yLXZpZGVvLW1lbnUtaGVhZGVyIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgcGFkZGluZzogMS42dncgMS42dncgMDtcclxuICAgICAgaGVpZ2h0OiA0Ljgxdmg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiA0Ljgxdmg7XHJcbiAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNDApO1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBvdmVyZmxvdy14OiBhdXRvO1xyXG4gICAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTsgLyog6ZqQ6JeP5rua5Yqo5p2hICovXHJcbiAgICAgIH1cclxuICAgICAgPmRpdiB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDMuMnZ3O1xyXG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgIH1cclxuICAgICAgLmFjdGl2ZSB7XHJcbiAgICAgICAgY29sb3I6ICNGRkZGRkY7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5lZGl0b3ItdmlkZW8tbWVudS1pdG1lcyB7XHJcbiAgICAgIHBhZGRpbmc6IDAgMy4zM3Z3O1xyXG4gICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSA0LjgxdmggLSAxLjZ2dyk7XHJcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XHJcbiAgICAgIHJvdy1nYXA6IDMuMnZ3O1xyXG4gICAgICBjb2x1bW4tZ2FwOiAyLjZ2dztcclxuICAgICAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgICAgID5kaXYge1xyXG4gICAgICAgIHdpZHRoOiAyMS4zM3Z3O1xyXG4gICAgICAgIGhlaWdodDogMjEuMzN2dztcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWUxZTFlO1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG4iXX0= */`;
257
+ /*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiRDpcXGNvZGVcXHdvcmtcXHZtbWwtcGxheWVyXFxwYWNrYWdlc1xcZWRpdG9yXFxzcmNcXGFzc2V0c1xcY3NzIiwic291cmNlcyI6WyJpbmRleC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0U7RUFDQTs7QUFDQTtFQUNFO0VBQ0E7O0FBR0o7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNFO0VBQ0E7O0FBRUY7RUFDRTs7QUFHSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNFO0VBQ0E7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDRTs7QUFHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0U7RUFDQTs7QUFDQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVGO0VBQ0U7RUFDQTtFQUNBOztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS1I7RUFDRTtFQUNBOztBQUdKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNFO0VBQ0E7RUFDQTs7QUFHSjtFQUNFOztBQUtKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNFO0VBQ0E7O0FBQ0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUtOO0VBQ0U7O0FBR0Y7RUFDRTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNFOztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDRTs7QUFFRjtFQUNFO0VBQ0E7O0FBRUY7RUFDRTs7QUFHSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0U7RUFDQTtFQUNBOztBQUNBO0VBQ0U7RUFDQTtFQUNBIiwic291cmNlc0NvbnRlbnQiOlsiLmVkaXRvcntcclxuICBiYWNrZ3JvdW5kOiAjMDAwO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gIC5wYWRkaW5nLWJveCB7XHJcbiAgICBmbGV4OiAxO1xyXG4gIH1cclxuICAvLyDpobbpg6hcclxuICAmPi5oZWFkZXJ7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgaGVpZ2h0OiAxMS40Njd2dztcclxuICAgIHBhZGRpbmctbGVmdDogNC40dnc7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAzLjJ2dztcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAmPi5jbG9zZXtcclxuICAgICAgd2lkdGg6IDR2dztcclxuICAgICAgaGVpZ2h0OiA0dnc7XHJcbiAgICAgIGltZ3tcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICY+Lmhpc3Rvcnktb3BlcmF0ZXtcclxuICAgICAgaGVpZ2h0OiA3LjJ2dztcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgIHRvcDogNTAlO1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xyXG4gICAgICBpbWd7XHJcbiAgICAgICAgd2lkdGg6IDQuNjY3dnc7XHJcbiAgICAgICAgaGVpZ2h0OiA1LjA2N3Z3O1xyXG4gICAgICB9XHJcbiAgICAgICY+aW1nOmxhc3QtY2hpbGR7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDh2dztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJj4ubmV4dC1idXR0b257XHJcbiAgICAgIHdpZHRoOiAxNnZ3O1xyXG4gICAgICBoZWlnaHQ6IDcuMnZ3O1xyXG4gICAgICBsaW5lLWhlaWdodDogNy4ydnc7XHJcbiAgICAgIGJhY2tncm91bmQ6ICMxNjc3RkY7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDYuNTMzdnc7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgZm9udC1zaXplOiAzLjJ2dztcclxuICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC50ZXh0LXN0eWxle1xyXG4gICAgZmlsdGVyOmJsdXIoMTBweClcclxuICB9XHJcblxyXG4gIC5lZGl0b3ItdmVzc2VsIHtcclxuICAgIHBhZGRpbmctdG9wOiAzLjJ2dztcclxuICB9XHJcbiAgLy9wbGF5ZXLkuI7nlLvluINcclxuICAubWFpbntcclxuICAgIHdpZHRoOiA4MS40Njd2dztcclxuICAgIGhlaWdodDogMTQ0Ljh2dztcclxuICAgIG1hcmdpbjogYXV0bztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDMuMnZ3O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIC52ZXNzZWwge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgfVxyXG4gICAgLmNvbnRyb2xzLWJveCB7XHJcbiAgICAgIGhlaWdodDogMTJ2dztcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBib3R0b206IDA7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAzLjJ2dztcclxuICAgIH1cclxuICAgIC5wbGF5ZXItY29udHJvbHMge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBwYWRkaW5nOiAwIDIuMTN2dztcclxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KCAxODBkZWcsIHJnYmEoMCwwLDAsMCkgMCUsIHJnYmEoMCwwLDAsMC42KSAxMDAlKTtcclxuICAgICAgLm1yLTE2IHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIuMTN2dztcclxuICAgICAgfVxyXG4gICAgICAucGxheWVyLWNvbnRyb2xzLXRvZ2dsZSB7XHJcbiAgICAgICAgPmltZyB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIHdpZHRoOiA0Ljh2dztcclxuICAgICAgICAgIGhlaWdodDogNC44dnc7XHJcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5wbGF5ZXItY29udHJvbHMtc2Vla2JhciB7XHJcbiAgICAgICAgZmxleDogMTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgLnNlZWtiYXItY29udGFpbmVyIHtcclxuICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgICAgICAgdG91Y2gtYWN0aW9uOiBub25lO1xyXG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgIC5zZWVrYmFyLWJhY2tncm91bmQge1xyXG4gICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxLjZ2dztcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMXZ3O1xyXG4gICAgICAgICAgICAuc2Vla2Jhci1maWxsIHtcclxuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDF2dztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc2Vla2Jhci1saW5lIHtcclxuICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMXZ3O1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnNlZWtiYXItc2lnbiB7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDEwcHg7XHJcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IC02cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnNlZWtiYXItY2lybGUge1xyXG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICB0b3A6IC0wLjh2dztcclxuICAgICAgICAgICAgICB3aWR0aDogMy4ydnc7XHJcbiAgICAgICAgICAgICAgaGVpZ2h0OiAzLjJ2dztcclxuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2VlZWVlZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAucGxheWVyLWNvbnRyb2xzLXRpbWUge1xyXG4gICAgICAgIHdpZHRoOiAxMHZ3O1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAucGxheS1idG4ge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGJvdHRvbTogNHZ3O1xyXG4gICAgICBsZWZ0OiAzdnc7XHJcbiAgICAgIHdpZHRoOiA0Ljh2dztcclxuICAgICAgaGVpZ2h0OiA0Ljh2dztcclxuICAgICAgaW1nIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5vcGFjaXR5LTA2IHtcclxuICAgICAgb3BhY2l0eTogMC42O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy/lupXpg6hcclxuICAuZm9vdGVye1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgcGFkZGluZzogMCAyMC4zMzN2dyAxMC45MzN2dztcclxuICAgICY+ZGl2e1xyXG4gICAgICB3aWR0aDogMzAlO1xyXG4gICAgICBtYXJnaW46IDAgMTUlO1xyXG4gICAgICBpbWd7XHJcbiAgICAgICAgd2lkdGg6IDYuNHZ3O1xyXG4gICAgICAgIGhlaWdodDogNi40dnc7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgICB9XHJcbiAgICAgIHB7XHJcbiAgICAgICAgZm9udC1zaXplOiAzLjJ2dztcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxLjg2N3Z3O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm5vdC1zaG93LXRleHR7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcclxuICB9XHJcblxyXG4gIC5lZGl0b3ItdmlkZW8tbWVudSB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAvLyBoZWlnaHQ6IDM4LjEzdmg7XHJcbiAgICBoZWlnaHQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJhY2tncm91bmQ6ICMxRTFFMUU7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBib3JkZXItcmFkaXVzOiA4cHggOHB4IDAgMDtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0OyAgXHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgIGhlaWdodDogMzguMTN2aDtcclxuICAgIH1cclxuICAgIC5lZGl0b3ItdmlkZW8tbWVudS1oZWFkZXIge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBwYWRkaW5nOiAxLjZ2dyAxLjZ2dyAwO1xyXG4gICAgICBoZWlnaHQ6IDQuODF2aDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDQuODF2aDtcclxuICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40MCk7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIG92ZXJmbG93LXg6IGF1dG87XHJcbiAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lOyAvKiDpmpDol4/mu5rliqjmnaEgKi9cclxuICAgICAgfVxyXG4gICAgICA+ZGl2IHtcclxuICAgICAgICBtYXJnaW46IDAgMy4ydnc7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgfVxyXG4gICAgICAuYWN0aXZlIHtcclxuICAgICAgICBjb2xvcjogI0ZGRkZGRjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmVkaXRvci12aWRlby1tZW51LWl0bWVzIHtcclxuICAgICAgcGFkZGluZzogMCAzLjMzdnc7XHJcbiAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtIDQuODF2aCAtIDEuNnZ3KTtcclxuICAgICAgZGlzcGxheTogZ3JpZDtcclxuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcclxuICAgICAgcm93LWdhcDogMy4ydnc7XHJcbiAgICAgIGNvbHVtbi1nYXA6IDIuNnZ3O1xyXG4gICAgICBvdmVyZmxvdzogYXV0bztcclxuICAgICAgPmRpdiB7XHJcbiAgICAgICAgd2lkdGg6IDIxLjMzdnc7XHJcbiAgICAgICAgaGVpZ2h0OiAyMS4zM3Z3O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxZTFlMWU7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcbiJdfQ== */`;
258
258
  document.head.appendChild(document.createElement("style")).appendChild(document.createTextNode(css));
259
259
 
260
260
  // src/utils/const.ts
261
+ var closeIcon = "https://mass.alipay.com/finmedia_versaassets/uri/file/as/c5dc68e4-2db5-4ea6-ada6-191bb9128a4c.png";
262
+ var wordIcon = "https://mass.alipay.com/finmedia_versaassets/uri/file/as/6ba37577-5fef-4722-9a61-f7ab5e5790ad.png";
263
+ var emotionIcon = "https://mass.alipay.com/finmedia_versaassets/uri/file/as/a6bb2684-4f26-481a-81dd-90500c1f7544.png";
261
264
  var playIcon = "https://mass.alipay.com/finmedia_versaassets/uri/file/as/9c6d947f-071a-4875-9546-fd0dce371928.png";
262
265
  var pauseIcon = "https://mass.alipay.com/finmedia_versaassets/uri/file/as/65076da8-c1e4-42a9-90af-839a2e42ace7.png";
266
+ var iconText2 = "https://mass.alipay.com/finmedia_versaassets/uri/file/as/f50a1be1-512b-49f5-8be5-61b85c7cbb66.png";
267
+ var iconText1 = "https://mass.alipay.com/finmedia_versaassets/uri/file/as/f9071de5-48d0-42ca-8b9a-13ae19ed48e3.png";
263
268
  var signIcon = "https://mass.alipay.com/finmedia_versaassets/uri/file/as/bcbd9a71-ec40-4c4d-ba03-29c2bec2bf89.png";
264
269
  var getFrameFromX = (clientX, durationInFrames, width) => {
265
270
  const pos = clientX;
@@ -1474,7 +1479,7 @@ var css2 = `.page-loader {
1474
1479
  transform: skew(-45deg) translateX(200%);
1475
1480
  }
1476
1481
  }
1477
- /*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiRDpcXHByb2plY3RzXFx2bW1sLXBsYXllclxccGFja2FnZXNcXGVkaXRvclxcc3JjXFxhc3NldHNcXGNzcyIsInNvdXJjZXMiOlsibG9hZGluZy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0U7RUFDQTtFQUNBO0VBT0E7RUFDQTs7O0FBSUo7RUFDRTtJQUNFIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbi5wYWdlLWxvYWRlciB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMDtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIHotaW5kZXg6IDEwMDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIC5saWdodCB7XHJcbiAgICB3aWR0aDogNzUlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLFxyXG4gICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCksXHJcbiAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSxcclxuICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyksXHJcbiAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSxcclxuICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMCksXHJcbiAgICAgICk7XHJcbiAgICB0cmFuc2Zvcm06IHNrZXcoLTQ1ZGVnKSB0cmFuc2xhdGVYKC00MDAlKTtcclxuICAgIGFuaW1hdGlvbjogYW5pbWF0ZV9saWdodCAxcyBpbmZpbml0ZTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgYW5pbWF0ZV9saWdodCB7XHJcbiAgMTAwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHNrZXcoLTQ1ZGVnKSB0cmFuc2xhdGVYKDIwMCUpO1xyXG4gIH1cclxufSJdfQ== */`;
1482
+ /*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiRDpcXGNvZGVcXHdvcmtcXHZtbWwtcGxheWVyXFxwYWNrYWdlc1xcZWRpdG9yXFxzcmNcXGFzc2V0c1xcY3NzIiwic291cmNlcyI6WyJsb2FkaW5nLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDRTtFQUNBO0VBQ0E7RUFPQTtFQUNBOzs7QUFJSjtFQUNFO0lBQ0UiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuLnBhZ2UtbG9hZGVyIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgei1pbmRleDogMTAwO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgLmxpZ2h0IHtcclxuICAgIHdpZHRoOiA3NSU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsXHJcbiAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSxcclxuICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpLFxyXG4gICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKSxcclxuICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpLFxyXG4gICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wKSxcclxuICAgICAgKTtcclxuICAgIHRyYW5zZm9ybTogc2tldygtNDVkZWcpIHRyYW5zbGF0ZVgoLTQwMCUpO1xyXG4gICAgYW5pbWF0aW9uOiBhbmltYXRlX2xpZ2h0IDFzIGluZmluaXRlO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBhbmltYXRlX2xpZ2h0IHtcclxuICAxMDAlIHtcclxuICAgIHRyYW5zZm9ybTogc2tldygtNDVkZWcpIHRyYW5zbGF0ZVgoMjAwJSk7XHJcbiAgfVxyXG59Il19 */`;
1478
1483
  document.head.appendChild(document.createElement("style")).appendChild(document.createTextNode(css2));
1479
1484
  var Loaidng = ({ show }) => {
1480
1485
  const styles = {
@@ -1508,7 +1513,7 @@ var css3 = `.container {
1508
1513
  text-align: right;
1509
1514
  font-style: normal;
1510
1515
  }
1511
- /*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiRDpcXHByb2plY3RzXFx2bW1sLXBsYXllclxccGFja2FnZXNcXGVkaXRvclxcc3JjXFxhc3NldHNcXGNzcyIsInNvdXJjZXMiOlsibWF4VGV4dExheWVyLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBUUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSIsInNvdXJjZXNDb250ZW50IjpbIiR2bV9iYXNlOiA3NTA7XHJcblxyXG5AZnVuY3Rpb24gdm0oJHB4KSB7XHJcblxyXG4gICAgQHJldHVybiAoJHB4IC8gNzUwKSAqIDEwMHZ3O1xyXG5cclxufVxyXG5cclxuLmNvbnRhaW5lcntcclxuICB3aWR0aDogMTAwdnc7XHJcbiAgaGVpZ2h0OiAxMDB2aDtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgbGVmdDogMDtcclxuICB0b3A6IDA7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAubWFpbl90ZXh0e1xyXG4gICAgYmFja2dyb3VuZDogIzAwMDAwMDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XHJcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNDBweCk7XHJcbiAgICBwYWRkaW5nOiB2bSgyNCk7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgZm9udC1zaXplOiB2bSgzMCk7XHJcbiAgICBjb2xvcjogI0ZGRkZGRjtcclxuICAgIGxpbmUtaGVpZ2h0OiB2bSg0Mik7XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICB9XHJcbn0iXX0= */`;
1516
+ /*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiRDpcXGNvZGVcXHdvcmtcXHZtbWwtcGxheWVyXFxwYWNrYWdlc1xcZWRpdG9yXFxzcmNcXGFzc2V0c1xcY3NzIiwic291cmNlcyI6WyJtYXhUZXh0TGF5ZXIuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFRQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBIiwic291cmNlc0NvbnRlbnQiOlsiJHZtX2Jhc2U6IDc1MDtcclxuXHJcbkBmdW5jdGlvbiB2bSgkcHgpIHtcclxuXHJcbiAgICBAcmV0dXJuICgkcHggLyA3NTApICogMTAwdnc7XHJcblxyXG59XHJcblxyXG4uY29udGFpbmVye1xyXG4gIHdpZHRoOiAxMDB2dztcclxuICBoZWlnaHQ6IDEwMHZoO1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICBsZWZ0OiAwO1xyXG4gIHRvcDogMDtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIC5tYWluX3RleHR7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcclxuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig0MHB4KTtcclxuICAgIHBhZGRpbmc6IHZtKDI0KTtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICBmb250LXNpemU6IHZtKDMwKTtcclxuICAgIGNvbG9yOiAjRkZGRkZGO1xyXG4gICAgbGluZS1oZWlnaHQ6IHZtKDQyKTtcclxuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIH1cclxufSJdfQ== */`;
1512
1517
  document.head.appendChild(document.createElement("style")).appendChild(document.createTextNode(css3));
1513
1518
  var MaxTextLayer = ({
1514
1519
  show = false,
@@ -1526,6 +1531,681 @@ var MaxTextLayer = ({
1526
1531
  return show && /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "container", onClick: textLayerHide, children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: "main_text", children: text }) }) });
1527
1532
  };
1528
1533
  var MaxTextLayer_default = MaxTextLayer;
1534
+
1535
+ // src/assets/css/editorTextMenu.scss
1536
+ var css4 = `@charset "UTF-8";
1537
+ .overlay {
1538
+ position: fixed;
1539
+ top: 0;
1540
+ left: 0;
1541
+ width: 100%;
1542
+ height: 100%;
1543
+ background-color: rgba(0, 0, 0, 0.5);
1544
+ display: flex;
1545
+ justify-content: center;
1546
+ align-items: center;
1547
+ color: white;
1548
+ font-size: 24px;
1549
+ overflow: hidden;
1550
+ }
1551
+ .overlay > .text-header {
1552
+ width: 100%;
1553
+ display: flex;
1554
+ justify-content: space-between;
1555
+ align-items: center;
1556
+ height: 11.467vw;
1557
+ padding-left: 4.4vw;
1558
+ padding-right: 3.2vw;
1559
+ box-sizing: border-box;
1560
+ position: fixed;
1561
+ top: 0;
1562
+ transition: all 0.01s;
1563
+ z-index: 16;
1564
+ }
1565
+ .overlay > .text-header > .close {
1566
+ width: 5.0666666667vw;
1567
+ height: 5.0666666667vw;
1568
+ }
1569
+ .overlay > .text-header > .close img {
1570
+ width: 100%;
1571
+ height: 100%;
1572
+ }
1573
+ .overlay > .text-header > .history-operate {
1574
+ height: 7.2vw;
1575
+ display: none;
1576
+ align-items: center;
1577
+ position: absolute;
1578
+ left: 50%;
1579
+ top: 50%;
1580
+ transform: translate(-50%, -50%);
1581
+ }
1582
+ .overlay > .text-header > .history-operate img {
1583
+ width: 4.667vw;
1584
+ height: 5.067vw;
1585
+ }
1586
+ .overlay > .text-header > .history-operate > img:last-child {
1587
+ margin-left: 8vw;
1588
+ }
1589
+ .overlay > .text-header > .next-button {
1590
+ display: flex;
1591
+ justify-content: center;
1592
+ align-items: center;
1593
+ width: 16vw;
1594
+ height: 7.2vw;
1595
+ line-height: 7.2vw;
1596
+ background: #1677FF;
1597
+ border-radius: 6.533vw;
1598
+ text-align: center;
1599
+ font-size: 3.2vw;
1600
+ color: #fff;
1601
+ border: 0;
1602
+ }
1603
+ .overlay .cover {
1604
+ position: fixed;
1605
+ bottom: 8vw;
1606
+ width: 100%;
1607
+ height: 10.6666666667vw;
1608
+ z-index: 999;
1609
+ transition: all 0.1s;
1610
+ }
1611
+ .overlay .text-input, .overlay .mappingarea {
1612
+ font-family: PingFangSC, PingFang SC;
1613
+ border: none;
1614
+ font-size: 22px;
1615
+ /* \u53D6\u6D88\u5916\u8FB9\u6846 */
1616
+ outline: none;
1617
+ background-color: rgba(0, 0, 0, 0);
1618
+ line-height: 30px;
1619
+ }
1620
+ .overlay .text-input::-webkit-scrollbar, .overlay .mappingarea::-webkit-scrollbar {
1621
+ display: none;
1622
+ }
1623
+ .overlay .text-input, .overlay .mappingarea {
1624
+ -ms-overflow-style: none; /* IE and Edge */
1625
+ scrollbar-width: none; /* Firefox */
1626
+ transition: all 0.1s;
1627
+ }
1628
+ .overlay .text-input {
1629
+ padding-top: 1.0666666667vw;
1630
+ padding-bottom: 1.0666666667vw;
1631
+ padding-left: 1.6vw;
1632
+ padding-right: 1.3333333333vw;
1633
+ z-index: 10;
1634
+ width: 84vw;
1635
+ caret-color: #1677ff;
1636
+ position: absolute;
1637
+ top: 30%;
1638
+ left: 5%;
1639
+ height: 200px;
1640
+ word-break: break-all;
1641
+ }
1642
+ .overlay .mappingarea {
1643
+ padding-top: 1.0666666667vw;
1644
+ padding-bottom: 1.0666666667vw;
1645
+ padding-left: 1.6vw;
1646
+ padding-right: 1.3333333333vw;
1647
+ border-radius: 1.3333333333vw;
1648
+ border: 0;
1649
+ position: fixed;
1650
+ top: 30%;
1651
+ left: 5%;
1652
+ height: fit-content;
1653
+ max-height: 200px;
1654
+ color: transparent;
1655
+ overflow-y: scroll;
1656
+ z-index: 9;
1657
+ display: flex;
1658
+ flex-flow: column nowrap;
1659
+ box-sizing: content-box;
1660
+ }
1661
+ .overlay .mappingarea .mappingarea_span {
1662
+ font-size: 22px;
1663
+ max-width: 84vw;
1664
+ white-space: pre-wrap;
1665
+ word-break: break-all;
1666
+ }
1667
+ /*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiRDpcXGNvZGVcXHdvcmtcXHZtbWwtcGxheWVyXFxwYWNrYWdlc1xcZWRpdG9yXFxzcmNcXGFzc2V0c1xcY3NzIiwic291cmNlcyI6WyJlZGl0b3JUZXh0TWVudS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFPQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNFO0VBQ0E7O0FBRUE7RUFDRTtFQUNBOztBQUlKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFFRTtFQUNBO0VBRUE7QUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFOztBQVpKO0VBY0U7RUFDQTtFQUNBOztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNFO0VBQ0E7RUFDQTtFQUNBIiwic291cmNlc0NvbnRlbnQiOlsiJHZtX2Jhc2U6IDc1MDtcclxuXHJcbkBmdW5jdGlvbiB2bSgkcHgpIHtcclxuXHJcbiAgICBAcmV0dXJuICgkcHggLyA3NTApICogMTAwdnc7XHJcblxyXG59XHJcbi5vdmVybGF5IHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcclxuICAvLyBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XHJcbiAgLy8gLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGNvbG9yOiB3aGl0ZTtcclxuICBmb250LXNpemU6IDI0cHg7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAvLyDpobbpg6hcclxuICAmPi50ZXh0LWhlYWRlciB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgaGVpZ2h0OiAxMS40Njd2dztcclxuICAgIHBhZGRpbmctbGVmdDogNC40dnc7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAzLjJ2dztcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4wMXM7XHJcbiAgICB6LWluZGV4OjE2O1xyXG4gICAgJj4uY2xvc2Uge1xyXG4gICAgICB3aWR0aDogdm0oMzgpO1xyXG4gICAgICBoZWlnaHQ6IHZtKDM4KTtcclxuXHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJj4uaGlzdG9yeS1vcGVyYXRlIHtcclxuICAgICAgaGVpZ2h0OiA3LjJ2dztcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgIHRvcDogNTAlO1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuXHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgd2lkdGg6IDQuNjY3dnc7XHJcbiAgICAgICAgaGVpZ2h0OiA1LjA2N3Z3O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmPmltZzpsYXN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogOHZ3O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJj4ubmV4dC1idXR0b24ge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgd2lkdGg6IDE2dnc7XHJcbiAgICAgIGhlaWdodDogNy4ydnc7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiA3LjJ2dztcclxuICAgICAgYmFja2dyb3VuZDogIzE2NzdGRjtcclxuICAgICAgYm9yZGVyLXJhZGl1czogNi41MzN2dztcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBmb250LXNpemU6IDMuMnZ3O1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgYm9yZGVyOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNvdmVyIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIGJvdHRvbTogdm0oNjApO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6dm0oODApO1xyXG4gICAgei1pbmRleDogOTk5O1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMXM7XHJcbiAgfVxyXG5cclxuICAudGV4dC1pbnB1dCwubWFwcGluZ2FyZWF7XHJcbiAgICAvLyBmb250LWZhbWlseTo7XHJcbiAgICBmb250LWZhbWlseTogUGluZ0ZhbmdTQywgUGluZ0ZhbmcgU0M7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAvLyBmb250LXdlaWdodDogNjAwO1xyXG4gICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgLyog5Y+W5raI5aSW6L655qGGICovXHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcclxuICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xyXG4gICAgLy8g6ZqQ6JeP5rua5Yqo5p2h77yM5L2G5LuN54S25L+d5oyB5rua5Yqo5Yqf6IO9XHJcbiAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7IFxyXG4gICAgICBkaXNwbGF5OiBub25lOyBcclxuICAgIH1cclxuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTsgIC8qIElFIGFuZCBFZGdlICovXHJcbiAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7ICAvKiBGaXJlZm94ICovXHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xcztcclxuICB9XHJcbiAgLnRleHQtaW5wdXR7XHJcbiAgICBwYWRkaW5nLXRvcDogdm0oOCk7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogdm0oOCk7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IHZtKDEyKTtcclxuICAgIHBhZGRpbmctcmlnaHQ6IHZtKDEwKTtcclxuICAgIHotaW5kZXg6IDEwO1xyXG4gICAgd2lkdGg6IDg0dnc7XHJcbiAgICBjYXJldC1jb2xvcjogIzE2NzdGRkZGO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAzMCU7XHJcbiAgICBsZWZ0OiA1JTtcclxuICAgIGhlaWdodDogMjAwcHg7XHJcbiAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XHJcbiAgICAvLyBwYWRkaW5nOiB2bSgxOCk7XHJcbiAgfVxyXG4gIC5tYXBwaW5nYXJlYXtcclxuICAgIHBhZGRpbmctdG9wOiB2bSg4KTtcclxuICAgIHBhZGRpbmctYm90dG9tOiB2bSg4KTtcclxuICAgIHBhZGRpbmctbGVmdDogdm0oMTIpO1xyXG4gICAgcGFkZGluZy1yaWdodDogdm0oMTApO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdm0oMTApO1xyXG4gICAgYm9yZGVyOjA7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDMwJTtcclxuICAgIGxlZnQ6IDUlO1xyXG4gICAgaGVpZ2h0OiBmaXQtY29udGVudDtcclxuICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xyXG4gICAgY29sb3I6IHRyYW5zcGFyZW50OyAvL+iuvue9ruminOiJsumAj+aYju+8jOS/neivgeiDjOaZr+minOiJslxyXG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xyXG4gICAgei1pbmRleDogOTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XHJcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcclxuICAgIC5tYXBwaW5nYXJlYV9zcGFue1xyXG4gICAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICAgIG1heC13aWR0aDogODR2dztcclxuICAgICAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xyXG4gICAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XHJcbiAgICB9XHJcbiAgfVxyXG59Il19 */`;
1668
+ document.head.appendChild(document.createElement("style")).appendChild(document.createTextNode(css4));
1669
+ var checkIPhoneSeries = () => {
1670
+ const screenWidth = window.screen.width;
1671
+ const screenHeight = window.screen.height;
1672
+ if (screenWidth === 320 && screenHeight === 480) {
1673
+ return "iPhone 4 or 4S";
1674
+ } else if (screenWidth === 375 && screenHeight === 667) {
1675
+ return "iPhone 6/7/8";
1676
+ } else if (screenWidth === 414 && screenHeight === 736) {
1677
+ return "iPhone 6/7/8 Plus";
1678
+ } else if (screenWidth === 375 && screenHeight === 812) {
1679
+ return "iPhone X/XS";
1680
+ } else if (screenWidth === 414 && screenHeight === 896) {
1681
+ return "iPhone XR/11";
1682
+ } else if (screenWidth === 414 && screenHeight === 844) {
1683
+ return "iPhone 12 mini";
1684
+ } else if (screenWidth === 414 && screenHeight === 915) {
1685
+ return "iPhone 13 Pro Max/12 Pro Max";
1686
+ } else if (screenWidth === 390 && screenHeight === 844) {
1687
+ return "iPhone 13 mini";
1688
+ } else {
1689
+ return "Unknown iPhone model";
1690
+ }
1691
+ };
1692
+ var iPhoneAdapter = (series) => {
1693
+ const seriesArr = ["iPhone 6/7/8 Plus", "iPhone 6/7/8"];
1694
+ return seriesArr.includes(series);
1695
+ };
1696
+ var watchKeyBoard = (callback) => {
1697
+ const focusInHandler = (e) => {
1698
+ callback(true);
1699
+ stopMove();
1700
+ };
1701
+ const focusOutHandler = (e) => {
1702
+ callback(false);
1703
+ };
1704
+ document.body.addEventListener("focusin", focusInHandler);
1705
+ document.body.addEventListener("focusout", focusOutHandler);
1706
+ return () => {
1707
+ document.body.removeEventListener("focusin", focusInHandler);
1708
+ document.body.removeEventListener("focusout", focusOutHandler);
1709
+ };
1710
+ };
1711
+ var stopMove = () => {
1712
+ const dom = document.getElementsByClassName("overlay")[0];
1713
+ const element = document.querySelector(".mappingarea");
1714
+ const stopScroll = (e) => {
1715
+ var _a, _b, _c;
1716
+ const lastTouchPositionX = 0;
1717
+ const lastTouchPositionY = 0;
1718
+ const currentTouchPositionX = e.touches[0].clientX;
1719
+ const currentTouchPositionY = e.touches[0].clientY;
1720
+ const deltaX = currentTouchPositionX - lastTouchPositionX;
1721
+ const deltaY = currentTouchPositionY - lastTouchPositionY;
1722
+ if (["text-header", "overlay", "text_bg_change"].includes((_a = e.target) == null ? void 0 : _a.className)) {
1723
+ e.preventDefault();
1724
+ }
1725
+ if (element) {
1726
+ const willOverflow = element.scrollHeight > element.clientHeight;
1727
+ if (willOverflow) {
1728
+ return;
1729
+ } else if (((_b = e.target) == null ? void 0 : _b.className.split(" ").includes("color-item")) || ((_c = e.target) == null ? void 0 : _c.className) === "text_color_change") {
1730
+ if (deltaX < 0 || deltaX > 0) {
1731
+ return;
1732
+ } else {
1733
+ e.preventDefault();
1734
+ }
1735
+ } else {
1736
+ if (Math.abs(deltaY) > Math.abs(deltaX)) {
1737
+ e.preventDefault();
1738
+ }
1739
+ }
1740
+ }
1741
+ e.preventDefault();
1742
+ };
1743
+ if (dom) {
1744
+ dom.addEventListener("touchmove", stopScroll);
1745
+ }
1746
+ };
1747
+ var onKeyBoardAction = (status, headerRef, textareaRef, coverRef, mappingareaRef, aimTop) => {
1748
+ if (vmmlUtils.isIOS()) {
1749
+ forIos(status, headerRef, textareaRef, coverRef);
1750
+ }
1751
+ };
1752
+ var forIos = (status, headerRef, textareaRef, coverRef, mappingareaRef) => {
1753
+ const series = checkIPhoneSeries();
1754
+ const isIPhoneAdapt = iPhoneAdapter(series);
1755
+ if (status) {
1756
+ const totalHeight = document.documentElement.clientHeight || document.body.clientHeight;
1757
+ const keyBoardHeight = totalHeight * 0.25;
1758
+ if (coverRef && textareaRef) {
1759
+ const textareaRefPos = textareaRef.getBoundingClientRect();
1760
+ const { height } = textareaRefPos;
1761
+ if (isIPhoneAdapt) {
1762
+ coverRef.style.bottom = `${keyBoardHeight + 50}px`;
1763
+ } else {
1764
+ coverRef.style.transform = `translateY(${-(height + 10)}px)`;
1765
+ }
1766
+ }
1767
+ } else {
1768
+ if (coverRef) {
1769
+ if (isIPhoneAdapt) {
1770
+ coverRef.style.bottom = `8vw`;
1771
+ } else {
1772
+ coverRef.style.transform = `translateY(0px)`;
1773
+ }
1774
+ }
1775
+ }
1776
+ };
1777
+
1778
+ // src/assets/css/colorSelector.scss
1779
+ var css5 = `@charset "UTF-8";
1780
+ .color-selector {
1781
+ width: 100%;
1782
+ height: 100%;
1783
+ display: flex;
1784
+ flex-flow: row nowrap;
1785
+ align-items: center;
1786
+ padding-right: 2.6666666667vw;
1787
+ }
1788
+ .color-selector .text_bg_change {
1789
+ width: 6.4vw;
1790
+ height: 6.4vw;
1791
+ flex: 0 0 auto;
1792
+ text-align: center;
1793
+ line-height: 6.4vw;
1794
+ padding: 0 4.8vw;
1795
+ margin-right: 4vw;
1796
+ border-right: 2px solid rgba(255, 255, 255, 0.4); /* \u8BBE\u7F6E\u5DE6\u8FB9\u6846\u7684\u5BBD\u5EA6\u3001\u6837\u5F0F\u548C\u989C\u8272 */
1797
+ }
1798
+ .color-selector .text_color_change {
1799
+ flex: 1 1 auto;
1800
+ display: flex;
1801
+ flex-flow: row nowrap;
1802
+ overflow-x: auto;
1803
+ white-space: nowrap;
1804
+ height: 100%;
1805
+ padding-right: 1.3333333333vw;
1806
+ align-items: center;
1807
+ }
1808
+ .color-selector .text_color_change > * {
1809
+ flex-shrink: 0;
1810
+ }
1811
+ .color-selector .text_color_change .color-item {
1812
+ width: 6.4vw;
1813
+ height: 6.4vw;
1814
+ border-radius: 50%;
1815
+ margin: 0 2vw;
1816
+ box-sizing: border-box;
1817
+ }
1818
+ .color-selector .text_color_change .black-border {
1819
+ border: 0.2666666667vw solid #333333;
1820
+ }
1821
+ .color-selector .text_color_change .current {
1822
+ box-shadow: 0 0 0 0.8vw #1677FF;
1823
+ }
1824
+ .color-selector .text_color_change::-webkit-scrollbar {
1825
+ display: none;
1826
+ }
1827
+ .color-selector .text_color_change {
1828
+ -ms-overflow-style: none; /* IE and Edge */
1829
+ scrollbar-width: none; /* Firefox */
1830
+ }
1831
+ /*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiRDpcXGNvZGVcXHdvcmtcXHZtbWwtcGxheWVyXFxwYWNrYWdlc1xcZWRpdG9yXFxzcmNcXGFzc2V0c1xcY3NzIiwic291cmNlcyI6WyJjb2xvclNlbGVjdG9yLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQVFBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDRTs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUY7RUFDRTs7QUFFRjtFQUVFOztBQUdGO0VBQ0k7O0FBNUJOO0VBOEJFO0VBQ0EiLCJzb3VyY2VzQ29udGVudCI6WyIkdm1fYmFzZTogNzUwO1xyXG5cclxuQGZ1bmN0aW9uIHZtKCRweCkge1xyXG5cclxuICAgIEByZXR1cm4gKCRweCAvIDc1MCkgKiAxMDB2dztcclxuXHJcbn1cclxuXHJcbi5jb2xvci1zZWxlY3RvcntcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBwYWRkaW5nLXJpZ2h0OiB2bSgyMCk7XHJcbiAgLnRleHRfYmdfY2hhbmdle1xyXG4gICAgd2lkdGg6IHZtKDQ4KTtcclxuICAgIGhlaWdodDogdm0oNDgpO1xyXG4gICAgZmxleDogMCAwIGF1dG87XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBsaW5lLWhlaWdodDogdm0oNDgpO1xyXG4gICAgcGFkZGluZzowIHZtKDM2KTtcclxuICAgIG1hcmdpbi1yaWdodDogdm0oMzApO1xyXG4gICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgI0ZGRkZGRjY2OyAvKiDorr7nva7lt6bovrnmoYbnmoTlrr3luqbjgIHmoLflvI/lkozpopzoibIgKi9cclxuICB9XHJcbiAgLnRleHRfY29sb3JfY2hhbmdle1xyXG4gICAgZmxleDogMSAxIGF1dG87XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xyXG4gICAgb3ZlcmZsb3cteDogYXV0bzsgLy8g5YWB6K645qiq5ZCR5rua5YqoXHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyDnoa7kv53mlofmnKzkuI3kvJrmjaLooYxcclxuICAgIGhlaWdodDoxMDAlO1xyXG4gICAgcGFkZGluZy1yaWdodDogdm0oMTApO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICYgPiAqIHtcclxuICAgICAgZmxleC1zaHJpbms6IDA7IC8vIOmYsuatouWtkOWFg+e0oOe8qeWwj1xyXG4gICAgfVxyXG4gICAgLmNvbG9yLWl0ZW17XHJcbiAgICAgIHdpZHRoOiB2bSg0OCk7XHJcbiAgICAgIGhlaWdodDp2bSg0OCk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgbWFyZ2luOiAwIHZtKDE1KTtcclxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIH1cclxuICAgIC5ibGFjay1ib3JkZXJ7XHJcbiAgICAgIGJvcmRlcjp2bSgyKSBzb2xpZCAjMzMzMzMzRkZcclxuICAgIH1cclxuICAgIC5jdXJyZW50e1xyXG4gICAgICAvLyBib3JkZXI6IHZtKDYpIHNvbGlkICMxNjc3RkY7XHJcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIHZtKDYpICMxNjc3RkY7XHJcbiAgICB9XHJcbiAgICAvLyDpmpDol4/mu5rliqjmnaHvvIzkvYbku43nhLbkv53mjIHmu5rliqjlip/og71cclxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHsgXHJcbiAgICAgICAgZGlzcGxheTogbm9uZTsgXHJcbiAgICB9XHJcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7ICAvKiBJRSBhbmQgRWRnZSAqL1xyXG4gICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOyAgLyogRmlyZWZveCAqL1xyXG4gIH1cclxufSJdfQ== */`;
1832
+ document.head.appendChild(document.createElement("style")).appendChild(document.createTextNode(css5));
1833
+ var colorList = [
1834
+ { colorName: "white", colorValue: "rgb(255,255,255)" },
1835
+ { colorName: "black", colorValue: "rgb(0,0,0)" },
1836
+ { colorName: "gray", colorValue: "rgb(153,153,153)" },
1837
+ { colorName: "red", colorValue: "rgb(248,82,81)" },
1838
+ { colorName: "orange", colorValue: "rgb(250,158,60)" },
1839
+ { colorName: "yellow", colorValue: "rgb(255,196,0)" },
1840
+ { colorName: "lightGreen", colorValue: "rgb(145,212,0)" },
1841
+ { colorName: "green", colorValue: "rgb(0,181,212)" },
1842
+ { colorName: "lightBlue", colorValue: "rgb(0,183,244)" },
1843
+ { colorName: "blue", colorValue: "rgb(23,120,255)" },
1844
+ { colorName: "purple", colorValue: "rgb(82,95,255)" }
1845
+ ];
1846
+ var ColorSelector = react.forwardRef(({ onColorChange, onBackGroundChange }, ref) => {
1847
+ const [currentColorItem, setCurrentColorItem] = react.useState(colorList.find((color) => color.colorName === "red"));
1848
+ const [currentBack, setCurrentBgColor] = react.useState(null);
1849
+ const [isSetBack, setIsSetBack] = react.useState(false);
1850
+ const setColorClass = (item) => {
1851
+ const { colorName } = currentColorItem;
1852
+ const classes = [
1853
+ item.colorName === "black" && "black-border",
1854
+ item.colorName === colorName && "current",
1855
+ "color-item"
1856
+ ].filter(Boolean).join(" ");
1857
+ return classes;
1858
+ };
1859
+ const handleColorClick = (item) => {
1860
+ setCurrentColorItem(item);
1861
+ onColorChange(item);
1862
+ };
1863
+ const handleChangeBackGround = () => {
1864
+ const setBgStatus = new Promise((resolve, reject) => {
1865
+ setIsSetBack(!isSetBack);
1866
+ resolve();
1867
+ });
1868
+ setBgStatus.then(() => {
1869
+ onBackGroundChange(currentColorItem);
1870
+ });
1871
+ };
1872
+ const getBackState = () => {
1873
+ return isSetBack;
1874
+ };
1875
+ react.useImperativeHandle(ref, () => ({
1876
+ getBackState,
1877
+ setIsSetBack,
1878
+ setCurrentColorItem
1879
+ }));
1880
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "color-selector", children: [
1881
+ /* @__PURE__ */ jsxRuntime.jsx(
1882
+ "div",
1883
+ {
1884
+ className: "text_bg_change",
1885
+ onClick: () => {
1886
+ handleChangeBackGround();
1887
+ },
1888
+ children: /* @__PURE__ */ jsxRuntime.jsx("img", { alt: "", src: isSetBack ? iconText2 : iconText1, style: { width: "100%", height: "100%" } })
1889
+ }
1890
+ ),
1891
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text_color_change", children: colorList.map((item) => {
1892
+ return /* @__PURE__ */ jsxRuntime.jsx(
1893
+ "div",
1894
+ {
1895
+ className: setColorClass(item),
1896
+ style: { backgroundColor: item.colorValue },
1897
+ onClick: () => {
1898
+ handleColorClick(item);
1899
+ }
1900
+ },
1901
+ item.colorName
1902
+ );
1903
+ }) })
1904
+ ] });
1905
+ });
1906
+ var ColorSelector_default = ColorSelector;
1907
+ var formatText = (text, maxLengthBase = 40) => {
1908
+ var _a;
1909
+ const newlineRegex = /(\r\n|\r|\n)/g;
1910
+ const matches = ((_a = text.match(newlineRegex)) == null ? void 0 : _a.length) || 0;
1911
+ const maxLength = maxLengthBase + matches;
1912
+ let trimmedText = text.substring(0, maxLength);
1913
+ if (text.length - matches === maxLengthBase) {
1914
+ trimmedText = trimmedText.replace(/(\r\n|\r|\n)+$/g, "");
1915
+ }
1916
+ return trimmedText;
1917
+ };
1918
+ var TextMenu = react.forwardRef(({ createText, textClose, textInfo, showTextButtons }, ref) => {
1919
+ const formRef = react.useRef(null);
1920
+ const headerRef = react.useRef(null);
1921
+ const textareaRef = react.useRef(null);
1922
+ const coverRef = react.useRef(null);
1923
+ const mappingarea = react.useRef(null);
1924
+ const [textContent, setTextContent] = react.useState("");
1925
+ const [bgColor, setBgColor] = react.useState("transparent");
1926
+ const [textColor, setTextColor] = react.useState("rgb(248,82,81)");
1927
+ const [textPos, setTextPos] = react.useState({ left: 0, top: 0, angle: 0, scaleX: 0.75, scaleY: 0.75, zoomX: 0, zoomY: 0 });
1928
+ const [textBasicInfo, setTextBasicInfo] = react.useState({
1929
+ colorName: "red",
1930
+ colorValue: "rgb(248,82,81)",
1931
+ isBack: false,
1932
+ textAlign: "left"
1933
+ });
1934
+ const colorSelectorRef = react.useRef(null);
1935
+ const [textContentOnShow, setTextContentOnShow] = react.useState([]);
1936
+ const [scrollYValue, setScrollYValue] = react.useState(() => {
1937
+ return Number.parseInt(localStorage.getItem("scrollYValue")) || null;
1938
+ });
1939
+ const scrollYValueRef = react.useRef(scrollYValue);
1940
+ react.useEffect(() => {
1941
+ const callback = (status) => {
1942
+ if (scrollYValueRef.current === null) {
1943
+ setTimeout(() => {
1944
+ const newScrollYValue = window.scrollY;
1945
+ setScrollYValue(newScrollYValue);
1946
+ scrollYValueRef.current = newScrollYValue;
1947
+ localStorage.setItem("scrollYValue", newScrollYValue.toString());
1948
+ }, 150);
1949
+ }
1950
+ setTimeout(() => {
1951
+ onKeyBoardAction(
1952
+ status,
1953
+ headerRef.current,
1954
+ textareaRef.current,
1955
+ coverRef.current,
1956
+ mappingarea.current
1957
+ );
1958
+ }, 200);
1959
+ };
1960
+ const removeListeners = watchKeyBoard(callback);
1961
+ return () => {
1962
+ removeListeners();
1963
+ };
1964
+ }, []);
1965
+ react.useEffect(() => {
1966
+ const syncScroll = () => {
1967
+ if (textareaRef.current && mappingarea.current) {
1968
+ const scrollPosition = textareaRef.current.scrollTop;
1969
+ mappingarea.current.scrollTop = scrollPosition;
1970
+ }
1971
+ };
1972
+ if (textareaRef.current) {
1973
+ textareaRef.current.addEventListener("scroll", syncScroll);
1974
+ textareaRef.current.addEventListener("input", syncScroll);
1975
+ }
1976
+ return () => {
1977
+ if (textareaRef.current) {
1978
+ textareaRef.current.removeEventListener("scroll", syncScroll);
1979
+ textareaRef.current.removeEventListener("input", syncScroll);
1980
+ }
1981
+ };
1982
+ }, []);
1983
+ react.useEffect(() => {
1984
+ let lines = [];
1985
+ if (textContent.includes("\r")) {
1986
+ lines = textContent.split("\r");
1987
+ } else {
1988
+ lines = textContent.split("\n");
1989
+ }
1990
+ setTextContentOnShow(lines);
1991
+ }, [textContent]);
1992
+ react.useEffect(() => {
1993
+ if (Object.keys(textInfo).length > 0) {
1994
+ setText(textInfo);
1995
+ } else {
1996
+ resetInfo();
1997
+ }
1998
+ }, [textInfo]);
1999
+ react.useEffect(() => {
2000
+ if (!vmmlUtils.isIOS()) {
2001
+ if (mappingarea.current && textareaRef.current) {
2002
+ textareaRef.current.style.position = "static";
2003
+ mappingarea.current.style.maxHeight = textareaRef.current.style.height = "50vh";
2004
+ mappingarea.current.style.maxWidth = getComputedStyle(textareaRef.current).width;
2005
+ textareaRef.current.focus();
2006
+ }
2007
+ } else {
2008
+ if (textareaRef.current) {
2009
+ textareaRef.current.focus();
2010
+ }
2011
+ }
2012
+ }, []);
2013
+ const handleOnChange = (e) => {
2014
+ const inputValue = e.target.value;
2015
+ setTextContent(formatText(inputValue));
2016
+ };
2017
+ const handleSubmit = (e) => {
2018
+ if (showTextButtons) {
2019
+ e.preventDefault();
2020
+ }
2021
+ if (formRef.current) {
2022
+ const formData = new FormData(formRef.current);
2023
+ const formJson = Object.fromEntries(formData.entries());
2024
+ const { input_content } = formJson;
2025
+ renderText(input_content);
2026
+ }
2027
+ };
2028
+ const handleChangeColor = (item) => {
2029
+ setColor(item);
2030
+ };
2031
+ const onBackGroundChange = (currentColorItem) => {
2032
+ setColor(currentColorItem);
2033
+ };
2034
+ const setColor = (colorItem) => {
2035
+ if (textareaRef.current) {
2036
+ textareaRef.current.focus();
2037
+ }
2038
+ const { current } = colorSelectorRef;
2039
+ const { colorName, colorValue } = colorItem;
2040
+ const isBack = current ? current.getBackState() : false;
2041
+ const textBasic = {
2042
+ colorName,
2043
+ colorValue,
2044
+ isBack,
2045
+ textAlign: textBasicInfo.textAlign
2046
+ };
2047
+ setTextBasicInfo(textBasic);
2048
+ if (!isBack) {
2049
+ setBgColor("transparent");
2050
+ setTextColor(colorValue);
2051
+ } else {
2052
+ setBgColor(colorValue);
2053
+ colorName === "white" || colorValue === "rgba(255, 255, 255, 1)" ? setTextColor("#000") : setTextColor("#fff");
2054
+ }
2055
+ };
2056
+ const setText = (textInfo2) => {
2057
+ const { bgColor: bgColor2, text, textColor: textColor2, left, top, angle, scaleX, scaleY, zoomX, zoomY, textBasicInfo: textBasicInfo2, width, height } = textInfo2;
2058
+ const { isBack, colorName, colorValue } = textBasicInfo2;
2059
+ const fillColor = text === "\u8BF7\u8F93\u5165\u6587\u6848" && textColor2 === "rgba(0, 0, 0, 0)" ? "rgba(255, 255, 255, 1)" : textColor2;
2060
+ setBgColor(bgColor2);
2061
+ setTextColor(fillColor);
2062
+ setTextContent(text);
2063
+ setTextBasicInfo(textBasicInfo2);
2064
+ setTextPos({ left, top, angle, scaleX, scaleY, zoomX, zoomY, width, height });
2065
+ const { current } = colorSelectorRef;
2066
+ if (!current) return;
2067
+ current.setIsSetBack(isBack);
2068
+ current.setCurrentColorItem({ colorName, colorValue });
2069
+ };
2070
+ const resetInfo = () => {
2071
+ setBgColor("transparent");
2072
+ setTextColor("rgb(248,82,81)");
2073
+ setTextContent("");
2074
+ setTextPos({ left: 0, top: 0, angle: 0, scaleX: 0.75, scaleY: 0.75, zoomX: 0, zoomY: 0 });
2075
+ };
2076
+ const close = () => {
2077
+ textClose(textInfo.id);
2078
+ };
2079
+ const renderText = (input_content) => {
2080
+ const { current } = mappingarea;
2081
+ if (current) {
2082
+ const computedStyle = window.getComputedStyle(current);
2083
+ const { width, height } = computedStyle;
2084
+ setTextPos(
2085
+ Object.assign(textPos, { width: Number(width.split("px")[0]), height: Number(height.split("px")[0]) })
2086
+ );
2087
+ }
2088
+ if (input_content && input_content.trim() !== "") {
2089
+ const { id, fontFamily, fontAssetUrl } = textInfo;
2090
+ createText({ textContent: input_content, bgColor, textColor, position: textPos, textBasicInfo, id, fontFamily, fontAssetUrl });
2091
+ } else {
2092
+ textClose(textInfo.id);
2093
+ }
2094
+ };
2095
+ react.useImperativeHandle(ref, () => ({
2096
+ setText,
2097
+ close,
2098
+ handleSubmit
2099
+ }));
2100
+ return /* @__PURE__ */ jsxRuntime.jsx("form", { method: "post", onSubmit: handleSubmit, ref: formRef, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "overlay", children: [
2101
+ showTextButtons && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "text-header", ref: headerRef, children: [
2102
+ /* @__PURE__ */ jsxRuntime.jsx("div", { onClick: () => close(), className: "close", children: /* @__PURE__ */ jsxRuntime.jsx("img", { crossOrigin: "anonymous", src: closeIcon, alt: "close" }) }),
2103
+ /* @__PURE__ */ jsxRuntime.jsx("button", { type: "submit", className: "next-button", children: "\u5B8C\u6210" })
2104
+ ] }),
2105
+ !vmmlUtils.isIOS() && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "edit_container", style: {
2106
+ width: "100%",
2107
+ position: "relative",
2108
+ paddingLeft: "4.4vw",
2109
+ paddingRight: "3.2vw",
2110
+ display: "flex"
2111
+ }, children: [
2112
+ /* @__PURE__ */ jsxRuntime.jsx(
2113
+ "textarea",
2114
+ {
2115
+ ref: textareaRef,
2116
+ cols: 20,
2117
+ wrap: "hard",
2118
+ name: "input_content",
2119
+ className: "text-input",
2120
+ value: textContent,
2121
+ onChange: handleOnChange,
2122
+ style: { color: textColor, width: "94%", fontFamily: textInfo.fontFamily }
2123
+ }
2124
+ ),
2125
+ /* @__PURE__ */ jsxRuntime.jsx(
2126
+ "div",
2127
+ {
2128
+ className: "mappingarea",
2129
+ ref: mappingarea,
2130
+ contentEditable: true,
2131
+ suppressContentEditableWarning: true,
2132
+ style: {
2133
+ background: bgColor,
2134
+ position: "absolute",
2135
+ top: "0",
2136
+ zIndex: "-1",
2137
+ left: "4.4vw"
2138
+ },
2139
+ children: textContentOnShow.map((text, index) => {
2140
+ return /* @__PURE__ */ jsxRuntime.jsx("span", { className: "mappingarea_span", style: { maxWidth: "100%" }, children: text ? text : " " }, index);
2141
+ })
2142
+ }
2143
+ )
2144
+ ] }),
2145
+ vmmlUtils.isIOS() && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
2146
+ /* @__PURE__ */ jsxRuntime.jsx(
2147
+ "textarea",
2148
+ {
2149
+ ref: textareaRef,
2150
+ cols: 20,
2151
+ wrap: "hard",
2152
+ name: "input_content",
2153
+ className: "text-input",
2154
+ value: textContent,
2155
+ onChange: handleOnChange,
2156
+ style: { color: textColor, fontFamily: textInfo.fontFamily }
2157
+ }
2158
+ ),
2159
+ /* @__PURE__ */ jsxRuntime.jsx(
2160
+ "div",
2161
+ {
2162
+ className: "mappingarea",
2163
+ ref: mappingarea,
2164
+ contentEditable: true,
2165
+ suppressContentEditableWarning: true,
2166
+ style: { background: bgColor },
2167
+ children: textContentOnShow.map((text, index) => {
2168
+ return /* @__PURE__ */ jsxRuntime.jsx("span", { className: "mappingarea_span", children: text ? text : " " }, index);
2169
+ })
2170
+ }
2171
+ )
2172
+ ] }),
2173
+ /* @__PURE__ */ jsxRuntime.jsx("div", { ref: coverRef, className: "cover", children: /* @__PURE__ */ jsxRuntime.jsx(
2174
+ ColorSelector_default,
2175
+ {
2176
+ ref: colorSelectorRef,
2177
+ onColorChange: handleChangeColor,
2178
+ onBackGroundChange
2179
+ }
2180
+ ) })
2181
+ ] }) });
2182
+ });
2183
+ var TextMenu_default = TextMenu;
2184
+ var VideoMenu = ({ createImage, videoMenus, menuState }) => {
2185
+ const [active, setActive] = react.useState();
2186
+ const [menus, setMenus] = react.useState([]);
2187
+ const [items, setItems] = react.useState([]);
2188
+ const onClickClass = ({ id, emojiList }) => {
2189
+ setActive(id);
2190
+ setItems(emojiList);
2191
+ };
2192
+ const onClickItem = ({ emojiId, fileUrl }) => {
2193
+ if (menuState === "video") {
2194
+ createImage(fileUrl, emojiId);
2195
+ }
2196
+ };
2197
+ react.useEffect(() => {
2198
+ setMenus(videoMenus);
2199
+ if (videoMenus.length) {
2200
+ onClickClass(videoMenus[0]);
2201
+ }
2202
+ }, [videoMenus]);
2203
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `editor-video-menu ${menuState === "video" ? "active" : ""}`, children: [
2204
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "editor-video-menu-header", children: menus.map((item) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: active === item.id ? "active" : "", onClick: () => onClickClass(item), children: item.classifyType }, item.id)) }),
2205
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "editor-video-menu-itmes", children: items.map((item) => /* @__PURE__ */ jsxRuntime.jsx("div", { onClick: () => onClickItem(item), children: /* @__PURE__ */ jsxRuntime.jsx("img", { loading: "lazy", src: item.fileUrl.thumbnailUrl, alt: "\u7D20\u6750" }) }, item.emojiId)) })
2206
+ ] });
2207
+ };
2208
+ var VideoMenu_default = VideoMenu;
1529
2209
  var historyClass = new HistoryClass();
1530
2210
  var EditorFn = ({
1531
2211
  vmml,
@@ -1627,6 +2307,39 @@ var EditorFn = ({
1627
2307
  setPreviewState(true);
1628
2308
  }
1629
2309
  };
2310
+ const onClickMenu = (type) => {
2311
+ if (type === "text" && checkTextNum()) return;
2312
+ if (type === "video" && checkVideoNum()) return;
2313
+ if (previewState) {
2314
+ intoEdit();
2315
+ }
2316
+ setTextInfo({});
2317
+ setMenuState(type);
2318
+ };
2319
+ const checkTextNum = () => {
2320
+ const { current } = canvasRef;
2321
+ if (current) {
2322
+ const textNums = current.getfObjectNums("\u6587\u5B57");
2323
+ if (textNums >= maxText) {
2324
+ setTips(`\u6700\u591A\u6DFB\u52A0${maxText}\u4E2A\u6587\u5B57`);
2325
+ setIsShowMaxTextLayer(true);
2326
+ return true;
2327
+ }
2328
+ }
2329
+ return false;
2330
+ };
2331
+ const checkVideoNum = () => {
2332
+ const { current } = canvasRef;
2333
+ if (current) {
2334
+ const videoNum = current.getfObjectNums("\u8868\u60C5\u5305");
2335
+ if (videoNum >= maxVideo) {
2336
+ setTips(`\u6700\u591A\u6DFB\u52A0${maxVideo}\u4E2A\u8868\u60C5\u5305`);
2337
+ setIsShowMaxTextLayer(true);
2338
+ return true;
2339
+ }
2340
+ }
2341
+ return false;
2342
+ };
1630
2343
  const getfcObject = () => {
1631
2344
  const { current } = canvasRef;
1632
2345
  if (current) {
@@ -1658,6 +2371,23 @@ var EditorFn = ({
1658
2371
  current.updateImage(id, base64);
1659
2372
  }
1660
2373
  };
2374
+ const createImage = async (file, emojiId) => {
2375
+ const { current } = canvasRef;
2376
+ if (current && !checkVideoNum()) {
2377
+ const fObj = await current.createImage(file, emojiId);
2378
+ vmmlConverterRef.current.addVideoClip(fObj);
2379
+ setMenuState("");
2380
+ setPreviewState(true);
2381
+ }
2382
+ };
2383
+ const createText = async (data) => {
2384
+ const { current } = canvasRef;
2385
+ if (current) {
2386
+ const server = data.id ? "updateText" : "createText";
2387
+ await current[server](data);
2388
+ setMenuState("");
2389
+ }
2390
+ };
1661
2391
  const onVideoChange = (clipData) => {
1662
2392
  const index = videoList.current.findIndex((item) => item.id === clipData.id);
1663
2393
  if (index > -1) {
@@ -1671,6 +2401,11 @@ var EditorFn = ({
1671
2401
  const { current } = canvasRef;
1672
2402
  return current.getActions().length;
1673
2403
  };
2404
+ const textClose = (id) => {
2405
+ const { current } = canvasRef;
2406
+ id && current.changeObjectVisible(id);
2407
+ setMenuState("");
2408
+ };
1674
2409
  const intoTextEdit = (textInfo2) => {
1675
2410
  setMenuState("text");
1676
2411
  setTextInfo(textInfo2);
@@ -1834,7 +2569,7 @@ var EditorFn = ({
1834
2569
  textMenuRef.current.handleSubmit();
1835
2570
  }
1836
2571
  };
1837
- react.useMemo(() => {
2572
+ const menuStyles = react.useMemo(() => {
1838
2573
  if (loading) {
1839
2574
  return {
1840
2575
  opacity: 0.4,
@@ -1858,7 +2593,6 @@ var EditorFn = ({
1858
2593
  muted: true,
1859
2594
  fps,
1860
2595
  onPlayerReady,
1861
- editableArray,
1862
2596
  premountFor: 40,
1863
2597
  pauseWhenBuffering,
1864
2598
  filterIds
@@ -1897,7 +2631,37 @@ var EditorFn = ({
1897
2631
  ) }),
1898
2632
  /* @__PURE__ */ jsxRuntime.jsx(Loading_default, { show: loading })
1899
2633
  ] }) }),
1900
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "padding-box" })
2634
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "padding-box" }),
2635
+ /* @__PURE__ */ jsxRuntime.jsxs("section", { style: menuStyles, className: `footer ${menuState === "text" ? "text-style" : ""}`, children: [
2636
+ maxText > 0 && /* @__PURE__ */ jsxRuntime.jsxs(
2637
+ "div",
2638
+ {
2639
+ onClick: () => onClickMenu("text"),
2640
+ "data-aspm-click": "c375146.d480849",
2641
+ "data-aspm-expo": true,
2642
+ "data-aspm-param": `Template_Id=${templateId}^Strategy_Id=${strategyId}`,
2643
+ children: [
2644
+ /* @__PURE__ */ jsxRuntime.jsx("img", { src: wordIcon, alt: "word" }),
2645
+ /* @__PURE__ */ jsxRuntime.jsx("p", { children: "\u6587\u5B57" })
2646
+ ]
2647
+ }
2648
+ ),
2649
+ maxVideo > 0 && /* @__PURE__ */ jsxRuntime.jsxs(
2650
+ "div",
2651
+ {
2652
+ onClick: () => onClickMenu("video"),
2653
+ "data-aspm-click": "c375146.d480850",
2654
+ "data-aspm-expo": true,
2655
+ "data-aspm-param": `Template_Id=${templateId}^Strategy_Id=${strategyId}`,
2656
+ children: [
2657
+ /* @__PURE__ */ jsxRuntime.jsx("img", { src: emotionIcon, alt: "emotion" }),
2658
+ /* @__PURE__ */ jsxRuntime.jsx("p", { children: "\u8868\u60C5\u5305" })
2659
+ ]
2660
+ }
2661
+ )
2662
+ ] }),
2663
+ maxVideo > 0 && /* @__PURE__ */ jsxRuntime.jsx(VideoMenu_default, { menuState, createImage, videoMenus }),
2664
+ menuState === "text" && /* @__PURE__ */ jsxRuntime.jsx(TextMenu_default, { ref: textMenuRef, createText, textClose, textInfo, showTextButtons })
1901
2665
  ] }),
1902
2666
  /* @__PURE__ */ jsxRuntime.jsx(MaxTextLayer_default, { textLayerHide: () => setIsShowMaxTextLayer(false), show: isShowMaxTextLayer, text: tips })
1903
2667
  ] });