@versa_ai/vmml-editor 1.0.48 → 1.0.50

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.
@@ -1,5 +1,5 @@
1
1
 
2
- > @versa_ai/vmml-editor@1.0.48 build D:\code\work\vmml-player\packages\editor
2
+ > @versa_ai/vmml-editor@1.0.50 build D:\code\work\vmml-player\packages\editor
3
3
  > tsup
4
4
 
5
5
  CLI Building entry: src/index.tsx
@@ -124,12 +124,12 @@ More info and automated migrator: https://sass-lang.com/d/slash-div [35
124
124
 
125
125
 
126
126
  DTS Build start
127
- ESM dist\index.mjs 115.85 KB
128
- ESM dist\index.mjs.map 225.42 KB
129
- ESM ⚡️ Build success in 914ms
130
- CJS dist\index.js 117.63 KB
131
- CJS dist\index.js.map 225.71 KB
132
- CJS ⚡️ Build success in 915ms
133
- DTS ⚡️ Build success in 1983ms
127
+ CJS dist\index.js 121.84 KB
128
+ CJS dist\index.js.map 233.86 KB
129
+ CJS ⚡️ Build success in 878ms
130
+ ESM dist\index.mjs 119.97 KB
131
+ ESM dist\index.mjs.map 233.56 KB
132
+ ESM ⚡️ Build success in 878ms
133
+ DTS ⚡️ Build success in 2585ms
134
134
  DTS dist\index.d.ts 158.00 B
135
135
  DTS dist\index.d.mts 158.00 B
package/dist/index.js CHANGED
@@ -86,7 +86,6 @@ var css = `@charset "UTF-8";
86
86
  position: relative;
87
87
  display: flex;
88
88
  justify-content: center;
89
- border-radius: 3.2vw;
90
89
  overflow: hidden;
91
90
  }
92
91
  .editor .main .vessel {
@@ -313,7 +312,7 @@ var css = `@charset "UTF-8";
313
312
  width: 60px !important;
314
313
  }
315
314
  }
316
- /*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiRDpcXGNvZGVcXHdvcmtcXHZtbWwtcGxheWVyXFxwYWNrYWdlc1xcZWRpdG9yXFxzcmNcXGFzc2V0c1xcY3NzIiwic291cmNlcyI6WyJpbmRleC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNFO0VBQ0E7O0FBQ0E7RUFDRTtFQUNBOztBQUdKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDRTtFQUNBOztBQUVGO0VBQ0U7O0FBR0o7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0U7O0FBR0Y7RUFDRTtFQUVBOztBQUdGO0VBRUU7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNFO0VBQ0E7O0FBS0o7RUFDSTtFQUNBO0VBR0E7RUFDQTs7QUFFSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0U7O0FBR0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNFO0VBQ0E7O0FBQ0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFRjtFQUNFO0VBQ0E7RUFDQTs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtSO0VBQ0U7RUFDQTs7QUFHSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDRTtFQUNBO0VBQ0E7O0FBR0o7RUFDRTs7QUFJRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDRTtFQUNBOztBQUNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFLTjtFQUNFOztBQUdGO0VBQ0U7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDRTs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0U7O0FBRUY7RUFDRTtFQUNBOztBQUVGO0VBQ0U7O0FBR0o7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNFO0VBQ0E7RUFDQTs7QUFDQTtFQUNFO0VBQ0E7RUFDQTs7O0FBUVY7RUFFSTtJQUNFO0lBQ0E7O0VBRUY7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBOztFQUNBO0lBQ0U7O0VBR0E7SUFDRTtJQUNBO0lBQ0E7SUFDQTs7RUFHSjtJQUNFOztFQUNBO0lBQ0U7O0VBQ0E7SUFDRTtJQUNBO0lBQ0E7O0VBQ0E7SUFDRTtJQUNBO0lBQ0E7O0VBRUY7SUFDRTtJQUNBOztFQUVGO0lBQ0U7SUFDQTtJQUNBOztFQUVGO0lBQ0U7SUFDQTtJQUNBOztFQUtSO0lBQ0UiLCJzb3VyY2VzQ29udGVudCI6WyIuZWRpdG9ye1xyXG4gIGJhY2tncm91bmQ6ICMwMDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgLnBhZGRpbmctYm94IHtcclxuICAgIGZsZXg6IDE7XHJcbiAgfVxyXG4gIC8vIOmhtumDqFxyXG4gICY+LmhlYWRlcntcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBoZWlnaHQ6IDExLjQ2N3Z3O1xyXG4gICAgcGFkZGluZy1sZWZ0OiA0LjR2dztcclxuICAgIHBhZGRpbmctcmlnaHQ6IDMuMnZ3O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICY+LmNsb3Nle1xyXG4gICAgICB3aWR0aDogNHZ3O1xyXG4gICAgICBoZWlnaHQ6IDR2dztcclxuICAgICAgaW1ne1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJj4uaGlzdG9yeS1vcGVyYXRle1xyXG4gICAgICBoZWlnaHQ6IDcuMnZ3O1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgdG9wOiA1MCU7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XHJcbiAgICAgIGltZ3tcclxuICAgICAgICB3aWR0aDogNC42Njd2dztcclxuICAgICAgICBoZWlnaHQ6IDUuMDY3dnc7XHJcbiAgICAgIH1cclxuICAgICAgJj5pbWc6bGFzdC1jaGlsZHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogOHZ3O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmPi5uZXh0LWJ1dHRvbntcclxuICAgICAgd2lkdGg6IDE2dnc7XHJcbiAgICAgIGhlaWdodDogNy4ydnc7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiA3LjJ2dztcclxuICAgICAgYmFja2dyb3VuZDogIzE2NzdGRjtcclxuICAgICAgYm9yZGVyLXJhZGl1czogNi41MzN2dztcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBmb250LXNpemU6IDMuMnZ3O1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgIH1cclxuICB9XHJcbiAgLnRleHQtc3R5bGV7XHJcbiAgICBmaWx0ZXI6Ymx1cigxMHB4KVxyXG4gIH1cclxuXHJcbiAgLmVkaXRvci12ZXNzZWwge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICAvLyBwYWRkaW5nLXRvcDogMy4ydnc7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgfVxyXG4gIC8vcGxheWVy5LiO55S75biDXHJcbiAgLm1haW57XHJcbiAgICAvLyB3aWR0aDogODEuNDY3dnc7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIC8vIGhlaWdodDogMTQ0Ljh2dztcclxuICAgIG1hcmdpbjogYXV0bztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDMuMnZ3O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIC52ZXNzZWwge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgfVxyXG5cclxuICAuY29udHJvbHMtYm94IHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBoZWlnaHQ6IDEydnc7XHJcbiAgICAgIC8vIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgLy8gYm90dG9tOiAwO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMy4ydnc7XHJcbiAgfVxyXG4gIC5wbGF5ZXItY29udHJvbHMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHBhZGRpbmc6IDAgMi4xM3Z3O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCggMTgwZGVnLCByZ2JhKDAsMCwwLDApIDAlLCByZ2JhKDAsMCwwLDAuNikgMTAwJSk7XHJcbiAgICAubXItMTYge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDIuMTN2dztcclxuICAgIH1cclxuICAgIC5wbGF5ZXItY29udHJvbHMtdG9nZ2xlIHtcclxuICAgICAgPmltZyB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDQuOHZ3O1xyXG4gICAgICAgIGhlaWdodDogNC44dnc7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAucGxheWVyLWNvbnRyb2xzLXNlZWtiYXIge1xyXG4gICAgICBmbGV4OiAxO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIC5zZWVrYmFyLWNvbnRhaW5lciB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgICAgIHRvdWNoLWFjdGlvbjogbm9uZTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgLnNlZWtiYXItYmFja2dyb3VuZCB7XHJcbiAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxuICAgICAgICAgIGhlaWdodDogMS42dnc7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDF2dztcclxuICAgICAgICAgIC5zZWVrYmFyLWZpbGwge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxdnc7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAuc2Vla2Jhci1saW5lIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxdnc7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAuc2Vla2Jhci1zaWduIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwcHg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC02cHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAuc2Vla2Jhci1jaXJsZSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAtMC44dnc7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzLjJ2dztcclxuICAgICAgICAgICAgaGVpZ2h0OiAzLjJ2dztcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZWVlZWVlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnBsYXllci1jb250cm9scy10aW1lIHtcclxuICAgICAgd2lkdGg6IDEwdnc7XHJcbiAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgfVxyXG4gIH1cclxuICAucGxheS1idG4ge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYm90dG9tOiA0dnc7XHJcbiAgICBsZWZ0OiAzdnc7XHJcbiAgICB3aWR0aDogNC44dnc7XHJcbiAgICBoZWlnaHQ6IDQuOHZ3O1xyXG4gICAgaW1nIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5vcGFjaXR5LTA2IHtcclxuICAgIG9wYWNpdHk6IDAuNjtcclxuICB9XHJcblxyXG4gIC8v5bqV6YOoXHJcbiAgLmZvb3RlcntcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBhZGRpbmc6IDAgMjAuMzMzdncgMTAuOTMzdnc7XHJcbiAgICAmPmRpdntcclxuICAgICAgd2lkdGg6IDMwJTtcclxuICAgICAgbWFyZ2luOiAwIDE1JTtcclxuICAgICAgaW1ne1xyXG4gICAgICAgIHdpZHRoOiA2LjR2dztcclxuICAgICAgICBoZWlnaHQ6IDYuNHZ3O1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG1hcmdpbjogYXV0bztcclxuICAgICAgfVxyXG4gICAgICBwe1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMy4ydnc7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMS44Njd2dztcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5ub3Qtc2hvdy10ZXh0e1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XHJcbiAgfVxyXG5cclxuICAuZWRpdG9yLXZpZGVvLW1lbnUge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgLy8gaGVpZ2h0OiAzOC4xM3ZoO1xyXG4gICAgaGVpZ2h0OiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMUUxRTFFO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOHB4IDhweCAwIDA7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDsgIFxyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICBoZWlnaHQ6IDM4LjEzdmg7XHJcbiAgICB9XHJcbiAgICAuZWRpdG9yLXZpZGVvLW1lbnUtaGVhZGVyIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgcGFkZGluZzogMS42dncgMS42dncgMDtcclxuICAgICAgaGVpZ2h0OiA0Ljgxdmg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiA0Ljgxdmg7XHJcbiAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNDApO1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBvdmVyZmxvdy14OiBhdXRvO1xyXG4gICAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTsgLyog6ZqQ6JeP5rua5Yqo5p2hICovXHJcbiAgICAgIH1cclxuICAgICAgPmRpdiB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDMuMnZ3O1xyXG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgIH1cclxuICAgICAgLmFjdGl2ZSB7XHJcbiAgICAgICAgY29sb3I6ICNGRkZGRkY7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5lZGl0b3ItdmlkZW8tbWVudS1pdG1lcyB7XHJcbiAgICAgIHBhZGRpbmc6IDAgMy4zM3Z3O1xyXG4gICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSA0LjgxdmggLSAxLjZ2dyk7XHJcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XHJcbiAgICAgIHJvdy1nYXA6IDMuMnZ3O1xyXG4gICAgICBjb2x1bW4tZ2FwOiAyLjZ2dztcclxuICAgICAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgICAgID5kaXYge1xyXG4gICAgICAgIHdpZHRoOiAyMS4zM3Z3O1xyXG4gICAgICAgIGhlaWdodDogMjEuMzN2dztcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWUxZTFlO1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzUwcHgpIHtcclxuICAuZWRpdG9yIHtcclxuICAgIC5jb250cm9scy1ib3gge1xyXG4gICAgICBoZWlnaHQ6IDIwJSAhaW1wb3J0YW50O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAzLjJ2dztcclxuICAgIH1cclxuICAgIC5wbGF5ZXItY29udHJvbHMge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBwYWRkaW5nOiAwIDElO1xyXG4gICAgICAubXItMTYge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMi4xM3Z3O1xyXG4gICAgICB9XHJcbiAgICAgIC5wbGF5ZXItY29udHJvbHMtdG9nZ2xlIHtcclxuICAgICAgICA+aW1nIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgd2lkdGg6IDMwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgIGhlaWdodDogMzBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAucGxheWVyLWNvbnRyb2xzLXNlZWtiYXIge1xyXG4gICAgICAgIGZsZXg6IDE7XHJcbiAgICAgICAgLnNlZWtiYXItY29udGFpbmVyIHtcclxuICAgICAgICAgIGhlaWdodDogMnB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAuc2Vla2Jhci1iYWNrZ3JvdW5kIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiA4cHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDF2dztcclxuICAgICAgICAgICAgLnNlZWtiYXItZmlsbCB7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgaGVpZ2h0OiA4cHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxdnc7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnNlZWtiYXItbGluZSB7XHJcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDF2dztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc2Vla2Jhci1zaWduIHtcclxuICAgICAgICAgICAgICB3aWR0aDogMTBweDtcclxuICAgICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5zZWVrYmFyLWNpcmxlIHtcclxuICAgICAgICAgICAgICB0b3A6IC01cHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICB3aWR0aDogMjBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgIGhlaWdodDogMjBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5wbGF5ZXItY29udHJvbHMtdGltZSB7XHJcbiAgICAgICAgd2lkdGg6IDYwcHggIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuIl19 */`;
315
+ /*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiRDpcXGNvZGVcXHdvcmtcXHZtbWwtcGxheWVyXFxwYWNrYWdlc1xcZWRpdG9yXFxzcmNcXGFzc2V0c1xcY3NzIiwic291cmNlcyI6WyJpbmRleC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNFO0VBQ0E7O0FBQ0E7RUFDRTtFQUNBOztBQUdKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDRTtFQUNBOztBQUVGO0VBQ0U7O0FBR0o7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0U7O0FBR0Y7RUFDRTtFQUVBOztBQUdGO0VBRUU7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7O0FBQ0E7RUFDRTtFQUNBOztBQUtKO0VBQ0k7RUFDQTtFQUdBO0VBQ0E7O0FBRUo7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNFOztBQUdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDRTtFQUNBOztBQUNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFLUjtFQUNFO0VBQ0E7O0FBR0o7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0U7RUFDQTtFQUNBOztBQUdKO0VBQ0U7O0FBSUY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0U7RUFDQTs7QUFDQTtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBS047RUFDRTs7QUFHRjtFQUNFO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0U7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNFOztBQUVGO0VBQ0U7RUFDQTs7QUFFRjtFQUNFOztBQUdKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBQ0E7RUFDRTtFQUNBO0VBQ0E7O0FBQ0E7RUFDRTtFQUNBO0VBQ0E7OztBQVFWO0VBRUk7SUFDRTtJQUNBOztFQUVGO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTs7RUFDQTtJQUNFOztFQUdBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7O0VBR0o7SUFDRTs7RUFDQTtJQUNFOztFQUNBO0lBQ0U7SUFDQTtJQUNBOztFQUNBO0lBQ0U7SUFDQTtJQUNBOztFQUVGO0lBQ0U7SUFDQTs7RUFFRjtJQUNFO0lBQ0E7SUFDQTs7RUFFRjtJQUNFO0lBQ0E7SUFDQTs7RUFLUjtJQUNFIiwic291cmNlc0NvbnRlbnQiOlsiLmVkaXRvcntcclxuICBiYWNrZ3JvdW5kOiAjMDAwO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gIC5wYWRkaW5nLWJveCB7XHJcbiAgICBmbGV4OiAxO1xyXG4gIH1cclxuICAvLyDpobbpg6hcclxuICAmPi5oZWFkZXJ7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgaGVpZ2h0OiAxMS40Njd2dztcclxuICAgIHBhZGRpbmctbGVmdDogNC40dnc7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAzLjJ2dztcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAmPi5jbG9zZXtcclxuICAgICAgd2lkdGg6IDR2dztcclxuICAgICAgaGVpZ2h0OiA0dnc7XHJcbiAgICAgIGltZ3tcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICY+Lmhpc3Rvcnktb3BlcmF0ZXtcclxuICAgICAgaGVpZ2h0OiA3LjJ2dztcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgIHRvcDogNTAlO1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xyXG4gICAgICBpbWd7XHJcbiAgICAgICAgd2lkdGg6IDQuNjY3dnc7XHJcbiAgICAgICAgaGVpZ2h0OiA1LjA2N3Z3O1xyXG4gICAgICB9XHJcbiAgICAgICY+aW1nOmxhc3QtY2hpbGR7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDh2dztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJj4ubmV4dC1idXR0b257XHJcbiAgICAgIHdpZHRoOiAxNnZ3O1xyXG4gICAgICBoZWlnaHQ6IDcuMnZ3O1xyXG4gICAgICBsaW5lLWhlaWdodDogNy4ydnc7XHJcbiAgICAgIGJhY2tncm91bmQ6ICMxNjc3RkY7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDYuNTMzdnc7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgZm9udC1zaXplOiAzLjJ2dztcclxuICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC50ZXh0LXN0eWxle1xyXG4gICAgZmlsdGVyOmJsdXIoMTBweClcclxuICB9XHJcblxyXG4gIC5lZGl0b3ItdmVzc2VsIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgLy8gcGFkZGluZy10b3A6IDMuMnZ3O1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gIH1cclxuICAvL3BsYXllcuS4jueUu+W4g1xyXG4gIC5tYWlue1xyXG4gICAgLy8gd2lkdGg6IDgxLjQ2N3Z3O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAvLyBoZWlnaHQ6IDE0NC44dnc7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAvLyBib3JkZXItcmFkaXVzOiAzLjJ2dztcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAudmVzc2VsIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxuICAgIFxyXG4gIH1cclxuXHJcbiAgLmNvbnRyb2xzLWJveCB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgaGVpZ2h0OiAxMnZ3O1xyXG4gICAgICAvLyBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIC8vIGJvdHRvbTogMDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDMuMnZ3O1xyXG4gIH1cclxuICAucGxheWVyLWNvbnRyb2xzIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiAwIDIuMTN2dztcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoIDE4MGRlZywgcmdiYSgwLDAsMCwwKSAwJSwgcmdiYSgwLDAsMCwwLjYpIDEwMCUpO1xyXG4gICAgLm1yLTE2IHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAyLjEzdnc7XHJcbiAgICB9XHJcbiAgICAucGxheWVyLWNvbnRyb2xzLXRvZ2dsZSB7XHJcbiAgICAgID5pbWcge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiA0Ljh2dztcclxuICAgICAgICBoZWlnaHQ6IDQuOHZ3O1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnBsYXllci1jb250cm9scy1zZWVrYmFyIHtcclxuICAgICAgZmxleDogMTtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAuc2Vla2Jhci1jb250YWluZXIge1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxuICAgICAgICB0b3VjaC1hY3Rpb246IG5vbmU7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIC5zZWVrYmFyLWJhY2tncm91bmQge1xyXG4gICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAgICAgICBoZWlnaHQ6IDEuNnZ3O1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAxdnc7XHJcbiAgICAgICAgICAuc2Vla2Jhci1maWxsIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMXZ3O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgLnNlZWtiYXItbGluZSB7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMXZ3O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWVlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgLnNlZWtiYXItc2lnbiB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMHB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtNnB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgLnNlZWtiYXItY2lybGUge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogLTAuOHZ3O1xyXG4gICAgICAgICAgICB3aWR0aDogMy4ydnc7XHJcbiAgICAgICAgICAgIGhlaWdodDogMy4ydnc7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogI2VlZWVlZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5wbGF5ZXItY29udHJvbHMtdGltZSB7XHJcbiAgICAgIHdpZHRoOiAxMHZ3O1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgIH1cclxuICB9XHJcbiAgLnBsYXktYnRuIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGJvdHRvbTogNHZ3O1xyXG4gICAgbGVmdDogM3Z3O1xyXG4gICAgd2lkdGg6IDQuOHZ3O1xyXG4gICAgaGVpZ2h0OiA0Ljh2dztcclxuICAgIGltZyB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG4gIH1cclxuICAub3BhY2l0eS0wNiB7XHJcbiAgICBvcGFjaXR5OiAwLjY7XHJcbiAgfVxyXG5cclxuICAvL+W6lemDqFxyXG4gIC5mb290ZXJ7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiAwIDIwLjMzM3Z3IDEwLjkzM3Z3O1xyXG4gICAgJj5kaXZ7XHJcbiAgICAgIHdpZHRoOiAzMCU7XHJcbiAgICAgIG1hcmdpbjogMCAxNSU7XHJcbiAgICAgIGltZ3tcclxuICAgICAgICB3aWR0aDogNi40dnc7XHJcbiAgICAgICAgaGVpZ2h0OiA2LjR2dztcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW46IGF1dG87XHJcbiAgICAgIH1cclxuICAgICAgcHtcclxuICAgICAgICBmb250LXNpemU6IDMuMnZ3O1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEuODY3dnc7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubm90LXNob3ctdGV4dHtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xyXG4gIH1cclxuXHJcbiAgLmVkaXRvci12aWRlby1tZW51IHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIC8vIGhlaWdodDogMzguMTN2aDtcclxuICAgIGhlaWdodDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZDogIzFFMUUxRTtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDhweCA4cHggMCAwO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7ICBcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgaGVpZ2h0OiAzOC4xM3ZoO1xyXG4gICAgfVxyXG4gICAgLmVkaXRvci12aWRlby1tZW51LWhlYWRlciB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIHBhZGRpbmc6IDEuNnZ3IDEuNnZ3IDA7XHJcbiAgICAgIGhlaWdodDogNC44MXZoO1xyXG4gICAgICBsaW5lLWhlaWdodDogNC44MXZoO1xyXG4gICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQwKTtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgb3ZlcmZsb3cteDogYXV0bztcclxuICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IC8qIOmakOiXj+a7muWKqOadoSAqL1xyXG4gICAgICB9XHJcbiAgICAgID5kaXYge1xyXG4gICAgICAgIG1hcmdpbjogMCAzLjJ2dztcclxuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICB9XHJcbiAgICAgIC5hY3RpdmUge1xyXG4gICAgICAgIGNvbG9yOiAjRkZGRkZGO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuZWRpdG9yLXZpZGVvLW1lbnUtaXRtZXMge1xyXG4gICAgICBwYWRkaW5nOiAwIDMuMzN2dztcclxuICAgICAgbWF4LWhlaWdodDogY2FsYygxMDAlIC0gNC44MXZoIC0gMS42dncpO1xyXG4gICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xyXG4gICAgICByb3ctZ2FwOiAzLjJ2dztcclxuICAgICAgY29sdW1uLWdhcDogMi42dnc7XHJcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgICA+ZGl2IHtcclxuICAgICAgICB3aWR0aDogMjEuMzN2dztcclxuICAgICAgICBoZWlnaHQ6IDIxLjMzdnc7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzFlMWUxZTtcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1MHB4KSB7XHJcbiAgLmVkaXRvciB7XHJcbiAgICAuY29udHJvbHMtYm94IHtcclxuICAgICAgaGVpZ2h0OiAyMCUgIWltcG9ydGFudDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMy4ydnc7XHJcbiAgICB9XHJcbiAgICAucGxheWVyLWNvbnRyb2xzIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgcGFkZGluZzogMCAxJTtcclxuICAgICAgLm1yLTE2IHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIuMTN2dztcclxuICAgICAgfVxyXG4gICAgICAucGxheWVyLWNvbnRyb2xzLXRvZ2dsZSB7XHJcbiAgICAgICAgPmltZyB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIHdpZHRoOiAzMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBoZWlnaHQ6IDMwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLnBsYXllci1jb250cm9scy1zZWVrYmFyIHtcclxuICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgIC5zZWVrYmFyLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICBoZWlnaHQ6IDJweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgLnNlZWtiYXItYmFja2dyb3VuZCB7XHJcbiAgICAgICAgICAgIGhlaWdodDogOHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxdnc7XHJcbiAgICAgICAgICAgIC5zZWVrYmFyLWZpbGwge1xyXG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgIGhlaWdodDogOHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMXZ3O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5zZWVrYmFyLWxpbmUge1xyXG4gICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxdnc7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnNlZWtiYXItc2lnbiB7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDEwcHg7XHJcbiAgICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTZweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc2Vla2Jhci1jaXJsZSB7XHJcbiAgICAgICAgICAgICAgdG9wOiAtNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDIwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAucGxheWVyLWNvbnRyb2xzLXRpbWUge1xyXG4gICAgICAgIHdpZHRoOiA2MHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiJdfQ== */`;
317
316
  document.head.appendChild(document.createElement("style")).appendChild(document.createTextNode(css));
318
317
 
319
318
  // src/utils/const.ts
@@ -428,7 +427,7 @@ var SeekBar = ({ player, vmmlRef, frame, durationInFrames, intoEdit, setDragStat
428
427
  ] }) });
429
428
  };
430
429
  var SeekBar_default = SeekBar;
431
- var Controls = ({ player, vmmlRef, frame, fps, durationInFrames, intoEdit, isPlaying, setDragState, onControlsClick, signList }) => {
430
+ var Controls = ({ player, vmmlRef, frame, fps, durationInFrames, intoEdit, isPlaying, setDragState, onControlsClick, signList, backgroundColor }) => {
432
431
  const onClickToggle = (e) => {
433
432
  if (isPlaying) {
434
433
  intoEdit();
@@ -436,7 +435,7 @@ var Controls = ({ player, vmmlRef, frame, fps, durationInFrames, intoEdit, isPla
436
435
  onControlsClick();
437
436
  }
438
437
  };
439
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "player-controls", children: [
438
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "player-controls", style: { backgroundColor }, children: [
440
439
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "player-controls-toggle mr-16 opacity-06", onClick: onClickToggle, children: isPlaying ? /* @__PURE__ */ jsxRuntime.jsx("img", { src: pauseIcon, alt: "\u6682\u505C" }) : /* @__PURE__ */ jsxRuntime.jsx("img", { src: playIcon, alt: "\u64AD\u653E" }) }),
441
440
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "player-controls-time opacity-06", children: vmmlUtils.formatTime(frame / fps) }),
442
441
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "player-controls-seekbar mr-16", children: /* @__PURE__ */ jsxRuntime.jsx(SeekBar_default, { player, vmmlRef, frame, durationInFrames, intoEdit, setDragState, signList }) }),
@@ -1056,6 +1055,7 @@ var EditorCanvas = react.forwardRef(
1056
1055
  const canvas = new fabric.fabric.Canvas("canvas", {
1057
1056
  width: canvasSize.width,
1058
1057
  height: canvasSize.height,
1058
+ uniScaleKey: "",
1059
1059
  selection: false
1060
1060
  // 画布框选
1061
1061
  });
@@ -1240,6 +1240,7 @@ var EditorCanvas = react.forwardRef(
1240
1240
  }
1241
1241
  };
1242
1242
  const createEditObjes = async (canvas, time) => {
1243
+ setCanvasScale(vmml);
1243
1244
  const promises = editClips.map((clip) => {
1244
1245
  if (clip.videoClip) {
1245
1246
  return createImageFromClip(clip);
@@ -1370,11 +1371,11 @@ var EditorCanvas = react.forwardRef(
1370
1371
  lines.forEach((line, idx) => {
1371
1372
  const y = -groupHeight / 2 + lineHeight / 2 + idx * lineHeight;
1372
1373
  let originX = textBasicInfo.textAlign;
1373
- let left = paddingX;
1374
+ let left = -groupWidth / 2 + paddingX;
1374
1375
  if (originX === "center") {
1375
- left = groupWidth / 2;
1376
+ left = 0;
1376
1377
  } else if (originX === "right") {
1377
- left = groupWidth - paddingX;
1378
+ left = groupWidth / 2 - paddingX;
1378
1379
  }
1379
1380
  const strokeText = new fabric.fabric.Text(line || " ", {
1380
1381
  fontFamily,
@@ -1386,7 +1387,6 @@ var EditorCanvas = react.forwardRef(
1386
1387
  originY: "center",
1387
1388
  left,
1388
1389
  top: y,
1389
- textAlign: "left",
1390
1390
  objectCaching: false
1391
1391
  });
1392
1392
  const fillText = new fabric.fabric.Text(line || " ", {
@@ -1399,7 +1399,6 @@ var EditorCanvas = react.forwardRef(
1399
1399
  strokeWidth: 0,
1400
1400
  left,
1401
1401
  top: y,
1402
- textAlign: "left",
1403
1402
  objectCaching: false
1404
1403
  });
1405
1404
  if (letterSpace) {
@@ -1413,7 +1412,7 @@ var EditorCanvas = react.forwardRef(
1413
1412
  height: groupHeight + paddingY * 2,
1414
1413
  // padddingY: 6.5
1415
1414
  fill: bgColor,
1416
- originX: "left",
1415
+ originX: "center",
1417
1416
  originY: "center",
1418
1417
  rx: round,
1419
1418
  ry: round
@@ -1423,6 +1422,17 @@ var EditorCanvas = react.forwardRef(
1423
1422
  fontFamily
1424
1423
  };
1425
1424
  };
1425
+ const getOrigin = (posParam, fontSize) => {
1426
+ const scaleX = posParam.scaleX * fontSize / 22 / widthScaleRef.current;
1427
+ const scaleY = posParam.scaleY * fontSize / 22 / heightScaleRef.current;
1428
+ const left = canvasSize.width * posParam.centerX;
1429
+ const top = canvasSize.height * posParam.centerY;
1430
+ return { scaleX, scaleY, top, left };
1431
+ };
1432
+ const setCanvasScale = (vmml2) => {
1433
+ heightScaleRef.current = vmml2.template.dimension.height / canvasSize.height;
1434
+ widthScaleRef.current = vmml2.template.dimension.width / canvasSize.width;
1435
+ };
1426
1436
  const createTextFromClipCanvas = async (clip, fc2) => {
1427
1437
  return new Promise(async (resolve) => {
1428
1438
  const canvas = fc || fc2;
@@ -1430,10 +1440,7 @@ var EditorCanvas = react.forwardRef(
1430
1440
  const { width, height } = vmml.template.dimension;
1431
1441
  const fontSize = vmmlUtils.getFontSize(width, height);
1432
1442
  const { textContent, backgroundColor, textColor, posParam, fontAssetUrl, alignType, strokeColor, strokeWidth, letterSpacing } = clip.textClip;
1433
- const scaleX = posParam.scaleX * fontSize / 22 / widthScaleRef.current;
1434
- const scaleY = posParam.scaleY * fontSize / 22 / heightScaleRef.current;
1435
- const left = canvasSize.width * posParam.centerX;
1436
- const top = canvasSize.height * posParam.centerY;
1443
+ const { left, top, scaleX, scaleY } = getOrigin(posParam, fontSize);
1437
1444
  const bgColor = backgroundColor ? vmmlUtils.argbToRgba(backgroundColor) : "transparent";
1438
1445
  const strokeW = strokeColor && strokeWidth ? strokeWidth * 30 * 1.5 / fontSize : 0;
1439
1446
  const stColor = strokeColor ? vmmlUtils.argbToRgba(strokeColor) : "transparent";
@@ -1571,42 +1578,69 @@ var EditorCanvas = react.forwardRef(
1571
1578
  resolve(true);
1572
1579
  });
1573
1580
  };
1574
- const updateText = async ({ id, textContent, bgColor, textColor, textBasicInfo, fontAssetUrl }) => {
1581
+ const updateText = async ({ id, textContent, bgColor, textColor, strokeColor, letterSpacing, strokeWidth, textBasicInfo, fontAssetUrl, posParam = null, alignType }) => {
1575
1582
  var _a;
1583
+ const { width, height } = vmml.template.dimension;
1584
+ const fontSize = vmmlUtils.getFontSize(width, height);
1576
1585
  const target = fc.getObjects().find((item) => {
1577
1586
  var _a2;
1578
1587
  return ((_a2 = item.clipData) == null ? void 0 : _a2.id) === id;
1579
1588
  });
1580
- const center = target.getCenterPoint();
1581
- const originClip = (_a = target.clipData) == null ? void 0 : _a.originClip;
1589
+ const originClip = ((_a = target == null ? void 0 : target.clipData) == null ? void 0 : _a.originClip) ?? null;
1582
1590
  if (originClip && (target == null ? void 0 : target.type) === "group") {
1591
+ const center = target.getCenterPoint();
1583
1592
  const objects = target.getObjects();
1584
1593
  const strokeText = objects[1];
1585
1594
  target._objects.length = 0;
1586
- const { objects: textObjects } = await createTextObjs({ strokeW: strokeText.strokeWidth, stColor: "", fontAssetUrl, letterSpace: strokeText.charSpacing, bgColor, textContent, textBasicInfo, textColor });
1595
+ const stColor = strokeColor ?? "";
1596
+ const strokeW = strokeColor && strokeWidth ? strokeWidth * 30 * 1.5 / fontSize : strokeText.strokeWidth;
1597
+ const letterSpace = letterSpacing ? letterSpacing * 22 / fontSize * 45 : strokeText.charSpacing;
1598
+ const { objects: textObjects, fontFamily } = await createTextObjs({ strokeW: strokeW ?? 0, stColor, fontAssetUrl, letterSpace: letterSpace ?? 0, bgColor, textContent, textBasicInfo, textColor });
1599
+ let top = target.top;
1600
+ let left = target.left;
1601
+ let scaleX = target.scaleX;
1602
+ let scaleY = target.scaleY;
1603
+ if (posParam) {
1604
+ const obj = getOrigin(posParam, fontSize);
1605
+ ({ left, top, scaleX, scaleY } = obj);
1606
+ }
1587
1607
  textObjects.forEach((obj) => {
1588
1608
  target.addWithUpdate(obj);
1589
1609
  });
1610
+ const inFrame = vmmlUtils.getFrames(originClip.inPoint, 30);
1611
+ const durationFrame = vmmlUtils.getFrames(originClip.duration, 30);
1590
1612
  target.set({
1591
- visible: true,
1613
+ visible: frame >= inFrame && frame < inFrame + durationFrame,
1592
1614
  clipData: {
1593
1615
  ...target.clipData,
1594
1616
  textBasicInfo,
1595
1617
  textColor,
1596
1618
  text: textContent,
1597
1619
  bgColor,
1620
+ fontAssetUrl,
1621
+ fontFamily,
1598
1622
  isAiError: false
1599
1623
  }
1600
1624
  });
1601
- target._calcBounds();
1602
- target._updateObjectsCoords();
1603
1625
  target.setPositionByOrigin(center, "center", "center");
1626
+ target.set({
1627
+ visible: frame >= inFrame && frame < inFrame + durationFrame,
1628
+ top,
1629
+ left,
1630
+ scaleY,
1631
+ scaleX
1632
+ });
1604
1633
  originClip.textClip = {
1605
1634
  ...originClip.textClip,
1606
1635
  textContent,
1636
+ letterSpacing: letterSpacing ?? 0,
1637
+ strokeWidth: strokeWidth ?? 0,
1638
+ alignType: alignType ?? (originClip == null ? void 0 : originClip.alignType) ?? 0,
1639
+ posParam: posParam ?? originClip.posParam,
1607
1640
  backgroundColor: bgColor,
1608
1641
  textColor,
1609
- strokeColor: ""
1642
+ fontAssetUrl,
1643
+ strokeColor: stColor
1610
1644
  };
1611
1645
  target.setCoords();
1612
1646
  fc == null ? void 0 : fc.requestRenderAll();
@@ -2482,6 +2516,8 @@ var EditorFn = ({
2482
2516
  pauseWhenBuffering = false,
2483
2517
  isBatchModify = false,
2484
2518
  textWarapCenter = false,
2519
+ backgroundColor = "#000",
2520
+ existenceBorderRadio = true,
2485
2521
  hideConfig = { hideDelete: false, hideEdit: false, hideMute: false, hideVolume: false }
2486
2522
  // { hideDelete: false, hideEdit: false, hideMute: false, hideVolume: false }
2487
2523
  }, ref) => {
@@ -2512,9 +2548,9 @@ var EditorFn = ({
2512
2548
  const vmmlConverterRef = react.useRef(null);
2513
2549
  const [initFcObjs, setInitFcObjs] = react.useState([]);
2514
2550
  const [editClips, setEditClips] = react.useState([]);
2515
- const [refreshEdit, setRefreshEdit] = react.useState(0);
2516
2551
  const vmmlFlag = react.useRef(false);
2517
2552
  const needPlay = react.useRef(true);
2553
+ const needFreshEdit = react.useRef(true);
2518
2554
  const setVmml = () => {
2519
2555
  const { current } = vmmlPlayerRef;
2520
2556
  if (!current) return;
@@ -2773,7 +2809,7 @@ var EditorFn = ({
2773
2809
  }
2774
2810
  }, [canvasSize, vmmlState]);
2775
2811
  react.useEffect(() => {
2776
- if (editableArray.length && (vmmlState == null ? void 0 : vmmlState.template)) {
2812
+ if (editableArray.length && (vmmlState == null ? void 0 : vmmlState.template) && needFreshEdit.current) {
2777
2813
  initCanEditClips(vmmlState.template.tracks);
2778
2814
  }
2779
2815
  }, [editableArray, vmmlState]);
@@ -2838,12 +2874,58 @@ var EditorFn = ({
2838
2874
  if (!isSame) {
2839
2875
  const currentV = cloneDeep__default.default(convertedVmml);
2840
2876
  (_e = (_d = canvasCurrent == null ? void 0 : canvasCurrent.getCanvasCtx()) == null ? void 0 : _d.clear) == null ? void 0 : _e.call(_d);
2877
+ needFreshEdit.current = true;
2841
2878
  setVmmlState(currentV);
2842
2879
  setDurationInFrames(vmmlUtils.getFrames(((_f = currentV == null ? void 0 : currentV.template) == null ? void 0 : _f.duration) || 1, fps));
2843
2880
  }
2844
2881
  playerCurrent.setVmml(convertedVmml, currentFrame);
2845
2882
  if (isSame) (_g = canvasCurrent == null ? void 0 : canvasCurrent.checkObjectInPoint) == null ? void 0 : _g.call(canvasCurrent, currentFrame);
2846
2883
  };
2884
+ const updateEditorTextClips = (v, checkFrame) => {
2885
+ var _a2, _b, _c, _d, _e, _f;
2886
+ const { current: playerCurrent } = vmmlPlayerRef;
2887
+ const { current: canvasCurrent } = canvasRef;
2888
+ if (!playerCurrent) return;
2889
+ const playing = ((_b = (_a2 = playerCurrent == null ? void 0 : playerCurrent.playerRef) == null ? void 0 : _a2.isPlaying) == null ? void 0 : _b.call(_a2)) ?? false;
2890
+ if (!playing) needPlay.current = false;
2891
+ const currentFrame = checkFrame ?? (((_c = player == null ? void 0 : player.getCurrentFrame) == null ? void 0 : _c.call(player)) ?? frame ?? pauseFrame);
2892
+ setFrame(currentFrame);
2893
+ const convertedVmml = v;
2894
+ const currentV = cloneDeep__default.default(convertedVmml);
2895
+ needFreshEdit.current = false;
2896
+ setVmmlState(currentV);
2897
+ const tracks = (_e = (_d = currentV == null ? void 0 : currentV.template) == null ? void 0 : _d.tracks) == null ? void 0 : _e.filter((track) => track.type === 2);
2898
+ tracks == null ? void 0 : tracks.forEach((track) => {
2899
+ var _a3;
2900
+ (_a3 = track == null ? void 0 : track.clips) == null ? void 0 : _a3.forEach((clip) => {
2901
+ const { textClip = null } = clip;
2902
+ if (textClip) {
2903
+ const { textContent, backgroundColor: backgroundColor2, textColor, fontAssetUrl, alignType, letterSpacing, strokeWidth, strokeColor, posParam } = textClip;
2904
+ const textFill = vmmlUtils.argbToRgba(textColor || "#ffffffff");
2905
+ const textBasicInfo = {
2906
+ isBack: backgroundColor2 ? true : false,
2907
+ colorValue: textFill,
2908
+ colorName: "custom",
2909
+ textAlign: alignType === 1 ? "center" : alignType === 2 ? "right" : "left"
2910
+ };
2911
+ canvasCurrent == null ? void 0 : canvasCurrent.updateText({
2912
+ id: clip.id,
2913
+ textContent,
2914
+ letterSpacing,
2915
+ strokeWidth,
2916
+ strokeColor: vmmlUtils.argbToRgba(strokeColor),
2917
+ bgColor: vmmlUtils.argbToRgba(backgroundColor2),
2918
+ textColor: vmmlUtils.argbToRgba(textColor),
2919
+ fontAssetUrl,
2920
+ textBasicInfo,
2921
+ posParam
2922
+ });
2923
+ }
2924
+ });
2925
+ });
2926
+ playerCurrent.setVmml(convertedVmml, currentFrame);
2927
+ (_f = canvasCurrent == null ? void 0 : canvasCurrent.checkObjectInPoint) == null ? void 0 : _f.call(canvasCurrent, currentFrame);
2928
+ };
2847
2929
  const getCurrentFrame = () => {
2848
2930
  if (!player) return 0;
2849
2931
  return player.getCurrentFrame();
@@ -2874,7 +2956,9 @@ var EditorFn = ({
2874
2956
  // 完成按钮事件
2875
2957
  editorSeekTo,
2876
2958
  // editor的seek事件 入参:frame
2877
- updateEditor
2959
+ updateEditor,
2960
+ // 更新editor 入参:vmml, frame
2961
+ updateEditorTextClips
2878
2962
  // 更新editor 入参:vmml, frame
2879
2963
  }),
2880
2964
  [vmmlState, player]
@@ -2906,9 +2990,10 @@ var EditorFn = ({
2906
2990
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "vessel", onClick: onClickMain, children: /* @__PURE__ */ jsxRuntime.jsx(
2907
2991
  vmmlPlayer.VmmlPlayer,
2908
2992
  {
2993
+ backgroundColor,
2909
2994
  ref: vmmlPlayerRef,
2910
2995
  vmml: vmmlState,
2911
- existenceBorderRadio: true,
2996
+ existenceBorderRadio,
2912
2997
  moveToBeginningWhenEnded: true,
2913
2998
  muted: true,
2914
2999
  fps,
@@ -2944,6 +3029,7 @@ var EditorFn = ({
2944
3029
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "controls-box", children: /* @__PURE__ */ jsxRuntime.jsx(
2945
3030
  Controls_default,
2946
3031
  {
3032
+ backgroundColor,
2947
3033
  player,
2948
3034
  vmmlRef: vmmlPlayerRef,
2949
3035
  fps,