@pie-element/hotspot 12.0.1 → 12.0.2-next.20261007001636
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/browser/{ReactKonva-Cvi7aWC1.js → ReactKonva-C6M-zmL7.js} +785 -785
- package/dist/browser/ReactKonva-C6M-zmL7.js.map +1 -0
- package/dist/browser/author/index.js +1 -1
- package/dist/browser/delivery/index.js +1 -1
- package/dist/browser/editor-runtime/{ReactKonva-CDWkbpw6.js → ReactKonva-C2jXgLIO.js} +785 -785
- package/dist/browser/editor-runtime/ReactKonva-C2jXgLIO.js.map +1 -0
- package/dist/browser/editor-runtime/author/index.js +1 -1
- package/dist/browser/editor-runtime/delivery/index.js +1 -1
- package/dist/index.iife.js +5 -5
- package/package.json +12 -12
- package/dist/browser/ReactKonva-Cvi7aWC1.js.map +0 -1
- package/dist/browser/editor-runtime/ReactKonva-CDWkbpw6.js.map +0 -1
package/dist/index.iife.js
CHANGED
|
@@ -180,8 +180,8 @@ To suppress this warning, you need to explicitly provide the \`palette.${t}Chann
|
|
|
180
180
|
animation: ${Hm} 1.4s linear infinite;
|
|
181
181
|
`,Gm=typeof Um==`string`?null:ni`
|
|
182
182
|
animation: ${Um} 1.4s ease-in-out infinite;
|
|
183
|
-
`,Km=e=>{let{classes:t,variant:n,color:r,disableShrink:i}=e;return xs({root:[`root`,n,`color${od(r)}`],svg:[`svg`],track:[`track`],circle:[`circle`,`circle${od(n)}`,i&&`circleDisableShrink`]},Bm,t)},qm=W(`span`,{name:`MuiCircularProgress`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[n.variant],t[`color${od(n.color)}`]]}})(ku(({theme:e})=>({display:`inline-block`,variants:[{props:{variant:`determinate`},style:{transition:e.transitions.create(`transform`)}},{props:{variant:`indeterminate`},style:Wm||{animation:`${Hm} 1.4s linear infinite`}},...Object.entries(e.palette).filter(zm()).map(([t])=>({props:{color:t},style:{color:(e.vars||e).palette[t].main}}))]}))),Jm=W(`svg`,{name:`MuiCircularProgress`,slot:`Svg`})({display:`block`}),Ym=W(`circle`,{name:`MuiCircularProgress`,slot:`Circle`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.circle,t[`circle${od(n.variant)}`],n.disableShrink&&t.circleDisableShrink]}})(ku(({theme:e})=>({stroke:`currentColor`,variants:[{props:{variant:`determinate`},style:{transition:e.transitions.create(`stroke-dashoffset`)}},{props:{variant:`indeterminate`},style:{strokeDasharray:`80px, 200px`,strokeDashoffset:0}},{props:({ownerState:e})=>e.variant===`indeterminate`&&!e.disableShrink,style:Gm||{animation:`${Um} 1.4s ease-in-out infinite`}}]}))),Xm=W(`circle`,{name:`MuiCircularProgress`,slot:`Track`})(ku(({theme:e})=>({stroke:`currentColor`,opacity:(e.vars||e).palette.action.activatedOpacity}))),Zm=F.forwardRef(function(e,t){let n=rl({props:e,name:`MuiCircularProgress`}),{className:r,color:i=`primary`,disableShrink:a=!1,enableTrackSlot:o=!1,size:s=40,style:c,thickness:l=3.6,value:u=0,variant:d=`indeterminate`,...f}=n,p={...n,color:i,disableShrink:a,size:s,thickness:l,value:u,variant:d,enableTrackSlot:o},m=Km(p),h={},g={},_={};if(d===`determinate`){let e=2*Math.PI*((Vm-l)/2);h.strokeDasharray=e.toFixed(3),_[`aria-valuenow`]=Math.round(u),h.strokeDashoffset=`${((100-u)/100*e).toFixed(3)}px`,g.transform=`rotate(-90deg)`}return(0,I.jsx)(qm,{className:R(m.root,r),style:{width:s,height:s,...g,...c},ownerState:p,ref:t,role:`progressbar`,..._,...f,children:(0,I.jsxs)(Jm,{className:m.svg,ownerState:p,viewBox:`${Vm/2} ${Vm/2} ${Vm} ${Vm}`,children:[o?(0,I.jsx)(Xm,{className:m.track,ownerState:p,cx:Vm,cy:Vm,r:(Vm-l)/2,fill:`none`,strokeWidth:l,"aria-hidden":`true`}):null,(0,I.jsx)(Ym,{className:m.circle,style:h,ownerState:p,cx:Vm,cy:Vm,r:(Vm-l)/2,fill:`none`,strokeWidth:l})]})})});function Qm(e){return to(`MuiButton`,e)}var $m=no(`MuiButton`,`root.text.textInherit.textPrimary.textSecondary.textSuccess.textError.textInfo.textWarning.outlined.outlinedInherit.outlinedPrimary.outlinedSecondary.outlinedSuccess.outlinedError.outlinedInfo.outlinedWarning.contained.containedInherit.containedPrimary.containedSecondary.containedSuccess.containedError.containedInfo.containedWarning.disableElevation.focusVisible.disabled.colorInherit.colorPrimary.colorSecondary.colorSuccess.colorError.colorInfo.colorWarning.textSizeSmall.textSizeMedium.textSizeLarge.outlinedSizeSmall.outlinedSizeMedium.outlinedSizeLarge.containedSizeSmall.containedSizeMedium.containedSizeLarge.sizeMedium.sizeSmall.sizeLarge.fullWidth.startIcon.endIcon.icon.iconSizeSmall.iconSizeMedium.iconSizeLarge.loading.loadingWrapper.loadingIconPlaceholder.loadingIndicator.loadingPositionCenter.loadingPositionStart.loadingPositionEnd`.split(`.`)),eh=F.createContext({}),th=F.createContext(void 0),nh=e=>{let{color:t,disableElevation:n,fullWidth:r,size:i,variant:a,loading:o,loadingPosition:s,classes:c}=e,l=xs({root:[`root`,o&&`loading`,a,`${a}${od(t)}`,`size${od(i)}`,`${a}Size${od(i)}`,`color${od(t)}`,n&&`disableElevation`,r&&`fullWidth`,o&&`loadingPosition${od(s)}`],startIcon:[`icon`,`startIcon`,`iconSize${od(i)}`],endIcon:[`icon`,`endIcon`,`iconSize${od(i)}`],loadingIndicator:[`loadingIndicator`],loadingWrapper:[`loadingWrapper`]},Qm,c);return{...c,...l}},rh=[{props:{size:`small`},style:{"& > *:nth-of-type(1)":{fontSize:18}}},{props:{size:`medium`},style:{"& > *:nth-of-type(1)":{fontSize:20}}},{props:{size:`large`},style:{"& > *:nth-of-type(1)":{fontSize:22}}}],ih=W(Fm,{shouldForwardProp:e=>Pc(e)||e===`classes`,name:`MuiButton`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[n.variant],t[`${n.variant}${od(n.color)}`],t[`size${od(n.size)}`],t[`${n.variant}Size${od(n.size)}`],n.color===`inherit`&&t.colorInherit,n.disableElevation&&t.disableElevation,n.fullWidth&&t.fullWidth,n.loading&&t.loading]}})(ku(({theme:e})=>{let t=e.palette.mode===`light`?e.palette.grey[300]:e.palette.grey[800],n=e.palette.mode===`light`?e.palette.grey.A100:e.palette.grey[700];return{...e.typography.button,minWidth:64,padding:`6px 16px`,border:0,borderRadius:(e.vars||e).shape.borderRadius,transition:e.transitions.create([`background-color`,`box-shadow`,`border-color`,`color`],{duration:e.transitions.duration.short}),"&:hover":{textDecoration:`none`},[`&.${$m.disabled}`]:{color:(e.vars||e).palette.action.disabled},variants:[{props:({ownerState:e})=>e.startIcon||e.loading&&e.loadingPosition===`start`,style:{"&::before":{content:`"\\200b"`,width:0,overflow:`hidden`}}},{props:{variant:`contained`},style:{color:`var(--variant-containedColor)`,backgroundColor:`var(--variant-containedBg)`,boxShadow:(e.vars||e).shadows[2],"&:hover":{boxShadow:(e.vars||e).shadows[4],"@media (hover: none)":{boxShadow:(e.vars||e).shadows[2]}},"&:active":{boxShadow:(e.vars||e).shadows[8]},[`&.${$m.focusVisible}`]:{boxShadow:(e.vars||e).shadows[6]},[`&.${$m.disabled}`]:{color:(e.vars||e).palette.action.disabled,boxShadow:(e.vars||e).shadows[0],backgroundColor:(e.vars||e).palette.action.disabledBackground}}},{props:{variant:`outlined`},style:{padding:`5px 15px`,border:`1px solid currentColor`,borderColor:`var(--variant-outlinedBorder, currentColor)`,backgroundColor:`var(--variant-outlinedBg)`,color:`var(--variant-outlinedColor)`,[`&.${$m.disabled}`]:{border:`1px solid ${(e.vars||e).palette.action.disabledBackground}`}}},{props:{variant:`text`},style:{padding:`6px 8px`,color:`var(--variant-textColor)`,backgroundColor:`var(--variant-textBg)`}},...Object.entries(e.palette).filter(zm()).map(([t])=>({props:{color:t},style:{"--variant-textColor":(e.vars||e).palette[t].main,"--variant-outlinedColor":(e.vars||e).palette[t].main,"--variant-outlinedBorder":e.alpha((e.vars||e).palette[t].main,.5),"--variant-containedColor":(e.vars||e).palette[t].contrastText,"--variant-containedBg":(e.vars||e).palette[t].main,"@media (hover: hover)":{"&:hover":{"--variant-containedBg":(e.vars||e).palette[t].dark,"--variant-textBg":e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.hoverOpacity),"--variant-outlinedBorder":(e.vars||e).palette[t].main,"--variant-outlinedBg":e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.hoverOpacity)}}}})),{props:{color:`inherit`},style:{color:`inherit`,borderColor:`currentColor`,"--variant-containedBg":e.vars?e.vars.palette.Button.inheritContainedBg:t,"@media (hover: hover)":{"&:hover":{"--variant-containedBg":e.vars?e.vars.palette.Button.inheritContainedHoverBg:n,"--variant-textBg":e.alpha((e.vars||e).palette.text.primary,(e.vars||e).palette.action.hoverOpacity),"--variant-outlinedBg":e.alpha((e.vars||e).palette.text.primary,(e.vars||e).palette.action.hoverOpacity)}}}},{props:{size:`small`,variant:`text`},style:{padding:`4px 5px`,fontSize:e.typography.pxToRem(13)}},{props:{size:`large`,variant:`text`},style:{padding:`8px 11px`,fontSize:e.typography.pxToRem(15)}},{props:{size:`small`,variant:`outlined`},style:{padding:`3px 9px`,fontSize:e.typography.pxToRem(13)}},{props:{size:`large`,variant:`outlined`},style:{padding:`7px 21px`,fontSize:e.typography.pxToRem(15)}},{props:{size:`small`,variant:`contained`},style:{padding:`4px 10px`,fontSize:e.typography.pxToRem(13)}},{props:{size:`large`,variant:`contained`},style:{padding:`8px 22px`,fontSize:e.typography.pxToRem(15)}},{props:{disableElevation:!0},style:{boxShadow:`none`,"&:hover":{boxShadow:`none`},[`&.${$m.focusVisible}`]:{boxShadow:`none`},"&:active":{boxShadow:`none`},[`&.${$m.disabled}`]:{boxShadow:`none`}}},{props:{fullWidth:!0},style:{width:`100%`}},{props:{loadingPosition:`center`},style:{transition:e.transitions.create([`background-color`,`box-shadow`,`border-color`],{duration:e.transitions.duration.short}),[`&.${$m.loading}`]:{color:`transparent`}}}]}})),ah=W(`span`,{name:`MuiButton`,slot:`StartIcon`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.startIcon,n.loading&&t.startIconLoadingStart,t[`iconSize${od(n.size)}`]]}})(({theme:e})=>({display:`inherit`,marginRight:8,marginLeft:-4,variants:[{props:{size:`small`},style:{marginLeft:-2}},{props:{loadingPosition:`start`,loading:!0},style:{transition:e.transitions.create([`opacity`],{duration:e.transitions.duration.short}),opacity:0}},{props:{loadingPosition:`start`,loading:!0,fullWidth:!0},style:{marginRight:-8}},...rh]})),oh=W(`span`,{name:`MuiButton`,slot:`EndIcon`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.endIcon,n.loading&&t.endIconLoadingEnd,t[`iconSize${od(n.size)}`]]}})(({theme:e})=>({display:`inherit`,marginRight:-4,marginLeft:8,variants:[{props:{size:`small`},style:{marginRight:-2}},{props:{loadingPosition:`end`,loading:!0},style:{transition:e.transitions.create([`opacity`],{duration:e.transitions.duration.short}),opacity:0}},{props:{loadingPosition:`end`,loading:!0,fullWidth:!0},style:{marginLeft:-8}},...rh]})),sh=W(`span`,{name:`MuiButton`,slot:`LoadingIndicator`})(({theme:e})=>({display:`none`,position:`absolute`,visibility:`visible`,variants:[{props:{loading:!0},style:{display:`flex`}},{props:{loadingPosition:`start`},style:{left:14}},{props:{loadingPosition:`start`,size:`small`},style:{left:10}},{props:{variant:`text`,loadingPosition:`start`},style:{left:6}},{props:{loadingPosition:`center`},style:{left:`50%`,transform:`translate(-50%)`,color:(e.vars||e).palette.action.disabled}},{props:{loadingPosition:`end`},style:{right:14}},{props:{loadingPosition:`end`,size:`small`},style:{right:10}},{props:{variant:`text`,loadingPosition:`end`},style:{right:6}},{props:{loadingPosition:`start`,fullWidth:!0},style:{position:`relative`,left:-10}},{props:{loadingPosition:`end`,fullWidth:!0},style:{position:`relative`,right:-10}}]})),ch=W(`span`,{name:`MuiButton`,slot:`LoadingIconPlaceholder`})({display:`inline-block`,width:`1em`,height:`1em`}),lh=F.forwardRef(function(e,t){let n=F.useContext(eh),r=F.useContext(th),i=rl({props:go(n,e),name:`MuiButton`}),{children:a,color:o=`primary`,component:s=`button`,className:c,disabled:l=!1,disableElevation:u=!1,disableFocusRipple:d=!1,endIcon:f,focusVisibleClassName:p,fullWidth:m=!1,id:h,loading:g=null,loadingIndicator:_,loadingPosition:v=`center`,size:y=`medium`,startIcon:b,type:x,variant:S=`text`,...C}=i,w=md(h),T=_??(0,I.jsx)(Zm,{"aria-labelledby":w,color:`inherit`,size:16}),E={...i,color:o,component:s,disabled:l,disableElevation:u,disableFocusRipple:d,fullWidth:m,loading:g,loadingIndicator:T,loadingPosition:v,size:y,type:x,variant:S},D=nh(E),O=(b||g&&v===`start`)&&(0,I.jsx)(ah,{className:D.startIcon,ownerState:E,children:b||(0,I.jsx)(ch,{className:D.loadingIconPlaceholder,ownerState:E})}),ee=(f||g&&v===`end`)&&(0,I.jsx)(oh,{className:D.endIcon,ownerState:E,children:f||(0,I.jsx)(ch,{className:D.loadingIconPlaceholder,ownerState:E})}),te=r||``,k=typeof g==`boolean`?(0,I.jsx)(`span`,{className:D.loadingWrapper,style:{display:`contents`},children:g&&(0,I.jsx)(sh,{className:D.loadingIndicator,ownerState:E,children:T})}):null,{root:A,...ne}=D;return(0,I.jsxs)(ih,{ownerState:E,className:R(n.className,D.root,c,te),component:s,disabled:l||g,focusRipple:!d,focusVisibleClassName:R(D.focusVisible,p),ref:t,type:x,id:g?w:h,...C,classes:ne,children:[O,v!==`end`&&k,a,v===`end`&&k,ee]})}),uh=dd((0,I.jsx)(`path`,{d:`M13 3c-4.97 0-9 4.03-9 9H1l3.89 3.89.07.14L9 12H6c0-3.87 3.13-7 7-7s7 3.13 7 7-3.13 7-7 7c-1.93 0-3.68-.79-4.94-2.06l-1.42 1.42C8.27 19.99 10.51 21 13 21c4.97 0 9-4.03 9-9s-4.03-9-9-9m-1 5v5l4.28 2.54.72-1.21-3.5-2.08V8z`}),`Restore`),dh=dd((0,I.jsx)(`path`,{d:`M12.5 8c-2.65 0-5.05.99-6.9 2.6L2 7v9h9l-3.62-3.62c1.39-1.16 3.16-1.88 5.12-1.88 3.54 0 6.55 2.31 7.6 5.5l2.37-.78C21.08 11.03 17.15 8 12.5 8`}),`Undo`),fh=W(`div`)({display:`flex`,flexDirection:`column`}),ph=W(`div`)({display:`flex`,alignItems:`center`,justifyContent:`center`}),mh=W(`div`)(({theme:e})=>({width:`24px`,height:`24px`,color:`gray`,marginRight:e.spacing(1),display:`flex`,alignItems:`center`})),hh=W(lh)(({theme:e})=>({display:`flex`,alignItems:`center`,marginLeft:e.spacing(3),marginRight:e.spacing(3)})),gh=e=>{class t extends F.Component{static propTypes={session:P.object,onSessionChange:P.func};constructor(e){super(e),this.state={sessionInitialValues:JSON.parse(JSON.stringify(e.session)),session:e.session,changes:[]}}onSessionChange=e=>{this.setState(t=>({session:e,changes:[...t.changes,e]}),()=>this.props.onSessionChange(e))};onUndo=()=>{this.setState(e=>{let t=[...e.changes];return t.pop(),{changes:t,session:t.length?t[t.length-1]:e.sessionInitialValues}},()=>this.props.onSessionChange(this.state.session))};onReset=()=>{this.setState(e=>({session:e.sessionInitialValues,changes:[]}),()=>this.props.onSessionChange(this.state.sessionInitialValues))};render(){let{...t}=this.props,{changes:n,session:r}=this.state;return(0,I.jsxs)(fh,{children:[(0,I.jsxs)(ph,{children:[(0,I.jsxs)(hh,{color:`primary`,disabled:n.length===0,onClick:this.onUndo,children:[(0,I.jsx)(mh,{children:(0,I.jsx)(dh,{})}),`Undo`]}),(0,I.jsxs)(hh,{color:`primary`,disabled:n.length===0,onClick:this.onReset,children:[(0,I.jsx)(mh,{children:(0,I.jsx)(uh,{})}),`Start Over`]})]}),(0,I.jsx)(e,{...t,session:r,onSessionChange:this.onSessionChange})]})}}return t},_h=Ac({typography:{fontFamily:`inherit`},palette:{action:{disabled:`rgba(0, 0, 0, 0.54);`}},components:{MuiTypography:{styleOverrides:{root:{fontFamily:`inherit`}}},MuiButton:{styleOverrides:{contained:{backgroundColor:`#e0e0e0`,color:`#000000`,"&:hover":{backgroundColor:`#bdbdbd`}}}}}}),vh=W(`div`)({"& table, th, td":{fontSize:`inherit`}}),yh=class extends F.Component{static propTypes={className:P.string,children:P.array,extraCSSRules:P.shape({names:P.arrayOf(P.string),rules:P.string}),fontSizeFactor:P.number};static defaultProps={extraCSSRules:{},fontSizeFactor:1};constructor(e){super(e),this.classesSheet=document.createElement(`style`)}scopeClass=dm(`extra-css-rules`);computeStyle(e){let t=e=>parseFloat(getComputedStyle(e).fontSize),n=t(document.documentElement),r=t(document.body),i=Math.max(n,r),a=e!=null&&typeof e==`number`?e:1;return a===1?null:{fontSize:`${i*a}px`}}render(){let{children:e,className:t,fontSizeFactor:n,...r}=this.props,{extraCSSRules:i,...a}=r,o=this.computeStyle(n);return(0,I.jsx)(vi,{injectFirst:!0,children:(0,I.jsxs)(Vc,{theme:_h,children:[i?.rules?(0,I.jsx)(`style`,{dangerouslySetInnerHTML:{__html:`.${this.scopeClass} { ${i.rules} }`}}):null,(0,I.jsx)(vh,{className:`${t} extraCSSRules ${this.scopeClass}`,...a,...o&&{style:o},children:e})]})})}},bh=W(yh)({display:`flex`,flexDirection:`column`,position:`relative`}),xh=class extends F.Component{static propTypes={ariaLabel:P.string,children:P.oneOfType([P.arrayOf(P.node),P.node]).isRequired,role:P.string,extraCSSRules:P.shape({names:P.arrayOf(P.string),rules:P.string}),fontSizeFactor:P.number};render(){let{children:e,ariaLabel:t,role:n,extraCSSRules:r,fontSizeFactor:i,classes:a}=this.props;return(0,I.jsx)(bh,{...t?{"aria-label":t,role:n}:{},extraCSSRules:r,fontSizeFactor:i,classes:a,children:e})}},Sh=class extends F.Component{static propTypes={tag:P.string,className:P.string,html:P.string};static defaultProps={tag:`div`,html:``};render(){let{tag:e,className:t,html:n}=this.props;return(0,I.jsx)(e||`div`,{ref:e=>this.node=e,className:t,dangerouslySetInnerHTML:{__html:n}})}};function Ch({props:e,states:t,muiFormControl:n}){return t.reduce((t,r)=>(t[r]=e[r],n&&e[r]===void 0&&(t[r]=n[r]),t),{})}var wh=F.createContext(void 0);function Th(){return F.useContext(wh)}function Eh(e){return to(`MuiFormLabel`,e)}var Dh=no(`MuiFormLabel`,[`root`,`colorSecondary`,`focused`,`disabled`,`error`,`filled`,`required`,`asterisk`]),Oh=e=>{let{classes:t,color:n,focused:r,disabled:i,error:a,filled:o,required:s}=e;return xs({root:[`root`,`color${od(n)}`,i&&`disabled`,a&&`error`,o&&`filled`,r&&`focused`,s&&`required`],asterisk:[`asterisk`,a&&`error`]},Eh,t)},kh=W(`label`,{name:`MuiFormLabel`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.color===`secondary`&&t.colorSecondary,n.filled&&t.filled]}})(ku(({theme:e})=>({color:(e.vars||e).palette.text.secondary,...e.typography.body1,lineHeight:`1.4375em`,padding:0,position:`relative`,variants:[...Object.entries(e.palette).filter(zm()).map(([t])=>({props:{color:t},style:{[`&.${Dh.focused}`]:{color:(e.vars||e).palette[t].main}}})),{props:{},style:{[`&.${Dh.disabled}`]:{color:(e.vars||e).palette.text.disabled},[`&.${Dh.error}`]:{color:(e.vars||e).palette.error.main}}}]}))),Ah=W(`span`,{name:`MuiFormLabel`,slot:`Asterisk`})(ku(({theme:e})=>({[`&.${Dh.error}`]:{color:(e.vars||e).palette.error.main}}))),jh=F.forwardRef(function(e,t){let n=rl({props:e,name:`MuiFormLabel`}),{children:r,className:i,color:a,component:o=`label`,disabled:s,error:c,filled:l,focused:u,required:d,...f}=n,p=Ch({props:n,muiFormControl:Th(),states:[`color`,`required`,`focused`,`disabled`,`error`,`filled`]}),m={...n,color:p.color||`primary`,component:o,disabled:p.disabled,error:p.error,filled:p.filled,focused:p.focused,required:p.required},h=Oh(m);return(0,I.jsxs)(kh,{as:o,ownerState:m,className:R(h.root,i),ref:t,...f,children:[r,p.required&&(0,I.jsxs)(Ah,{ownerState:m,"aria-hidden":!0,className:h.asterisk,children:[` `,`*`]})]})});function Mh(e){return to(`MuiInputLabel`,e)}no(`MuiInputLabel`,[`root`,`focused`,`disabled`,`error`,`required`,`asterisk`,`formControl`,`sizeSmall`,`shrink`,`animated`,`standard`,`filled`,`outlined`]);var Nh=e=>{let{classes:t,formControl:n,size:r,shrink:i,disableAnimation:a,variant:o,required:s}=e,c=xs({root:[`root`,n&&`formControl`,!a&&`animated`,i&&`shrink`,r&&r!==`medium`&&`size${od(r)}`,o],asterisk:[s&&`asterisk`]},Mh,t);return{...t,...c}},Ph=W(jh,{shouldForwardProp:e=>Pc(e)||e===`classes`,name:`MuiInputLabel`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[{[`& .${Dh.asterisk}`]:t.asterisk},t.root,n.formControl&&t.formControl,n.size===`small`&&t.sizeSmall,n.shrink&&t.shrink,!n.disableAnimation&&t.animated,n.focused&&t.focused,t[n.variant]]}})(ku(({theme:e})=>({display:`block`,transformOrigin:`top left`,whiteSpace:`nowrap`,overflow:`hidden`,textOverflow:`ellipsis`,maxWidth:`100%`,variants:[{props:({ownerState:e})=>e.formControl,style:{position:`absolute`,left:0,top:0,transform:`translate(0, 20px) scale(1)`}},{props:{size:`small`},style:{transform:`translate(0, 17px) scale(1)`}},{props:({ownerState:e})=>e.shrink,style:{transform:`translate(0, -1.5px) scale(0.75)`,transformOrigin:`top left`,maxWidth:`133%`}},{props:({ownerState:e})=>!e.disableAnimation,style:{transition:e.transitions.create([`color`,`transform`,`max-width`],{duration:e.transitions.duration.shorter,easing:e.transitions.easing.easeOut})}},{props:{variant:`filled`},style:{zIndex:1,pointerEvents:`none`,transform:`translate(12px, 16px) scale(1)`,maxWidth:`calc(100% - 24px)`}},{props:{variant:`filled`,size:`small`},style:{transform:`translate(12px, 13px) scale(1)`}},{props:({variant:e,ownerState:t})=>e===`filled`&&t.shrink,style:{userSelect:`none`,pointerEvents:`auto`,transform:`translate(12px, 7px) scale(0.75)`,maxWidth:`calc(133% - 24px)`}},{props:({variant:e,ownerState:t,size:n})=>e===`filled`&&t.shrink&&n===`small`,style:{transform:`translate(12px, 4px) scale(0.75)`}},{props:{variant:`outlined`},style:{zIndex:1,pointerEvents:`none`,transform:`translate(14px, 16px) scale(1)`,maxWidth:`calc(100% - 24px)`}},{props:{variant:`outlined`,size:`small`},style:{transform:`translate(14px, 9px) scale(1)`}},{props:({variant:e,ownerState:t})=>e===`outlined`&&t.shrink,style:{userSelect:`none`,pointerEvents:`auto`,maxWidth:`calc(133% - 32px)`,transform:`translate(14px, -9px) scale(0.75)`}}]}))),Fh=F.forwardRef(function(e,t){let n=rl({name:`MuiInputLabel`,props:e}),{disableAnimation:r=!1,margin:i,shrink:a,variant:o,className:s,...c}=n,l=Th(),u=a;u===void 0&&l&&(u=l.filled||l.focused||l.adornedStart);let d=Ch({props:n,muiFormControl:l,states:[`size`,`variant`,`required`,`focused`]}),f={...n,disableAnimation:r,formControl:l,shrink:u,size:d.size,variant:d.variant,required:d.required,focused:d.focused},p=Nh(f);return(0,I.jsx)(Ph,{"data-shrink":u,ref:t,className:R(p.root,s),...c,ownerState:f,classes:p})});function Ih(e){return e!=null&&!(Array.isArray(e)&&e.length===0)}function Lh(e,t=!1){return e&&(Ih(e.value)&&e.value!==``||t&&Ih(e.defaultValue)&&e.defaultValue!==``)}function Rh(e){return e.startAdornment}function zh(e){return to(`MuiFormControl`,e)}no(`MuiFormControl`,[`root`,`marginNone`,`marginNormal`,`marginDense`,`fullWidth`,`disabled`]);var Bh=e=>{let{classes:t,margin:n,fullWidth:r}=e;return xs({root:[`root`,n!==`none`&&`margin${od(n)}`,r&&`fullWidth`]},zh,t)},Vh=W(`div`,{name:`MuiFormControl`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[`margin${od(n.margin)}`],n.fullWidth&&t.fullWidth]}})({display:`inline-flex`,flexDirection:`column`,position:`relative`,minWidth:0,padding:0,margin:0,border:0,verticalAlign:`top`,variants:[{props:{margin:`normal`},style:{marginTop:16,marginBottom:8}},{props:{margin:`dense`},style:{marginTop:8,marginBottom:4}},{props:{fullWidth:!0},style:{width:`100%`}}]}),Hh=W(F.forwardRef(function(e,t){let n=rl({props:e,name:`MuiFormControl`}),{children:r,className:i,color:a=`primary`,component:o=`div`,disabled:s=!1,error:c=!1,focused:l,fullWidth:u=!1,hiddenLabel:d=!1,margin:f=`none`,required:p=!1,size:m=`medium`,variant:h=`outlined`,...g}=n,_={...n,color:a,component:o,disabled:s,error:c,fullWidth:u,hiddenLabel:d,margin:f,required:p,size:m,variant:h},v=Bh(_),[y,b]=F.useState(()=>{let e=!1;return r&&F.Children.forEach(r,t=>{if(!fd(t,[`Input`,`Select`]))return;let n=fd(t,[`Select`])?t.props.input:t;n&&Rh(n.props)&&(e=!0)}),e}),[x,S]=F.useState(()=>{let e=!1;return r&&F.Children.forEach(r,t=>{fd(t,[`Input`,`Select`])&&(Lh(t.props,!0)||Lh(t.props.inputProps,!0))&&(e=!0)}),e}),[C,w]=F.useState(!1);s&&C&&w(!1);let T=l!==void 0&&!s?l:C;F.useRef(!1);let E=F.useCallback(()=>{S(!0)},[]),D=F.useCallback(()=>{S(!1)},[]),O=F.useMemo(()=>({adornedStart:y,setAdornedStart:b,color:a,disabled:s,error:c,filled:x,focused:T,fullWidth:u,hiddenLabel:d,size:m,onBlur:()=>{w(!1)},onFocus:()=>{w(!0)},onEmpty:D,onFilled:E,registerEffect:void 0,required:p,variant:h}),[y,a,s,c,x,T,u,d,void 0,D,E,p,m,h]);return(0,I.jsx)(wh.Provider,{value:O,children:(0,I.jsx)(Vh,{as:o,ownerState:_,className:R(v.root,i),ref:t,...g,children:r})})}))(({theme:e})=>({margin:0,padding:0,flex:`1 0 auto`,minWidth:e.spacing(4)})),Uh=W(Fh)(()=>({fontSize:`inherit`,whiteSpace:`nowrap`,margin:0,padding:0,alignSelf:`flex-start`,position:`absolute`,top:0,left:0,transformOrigin:`top left`,pointerEvents:`none`,"&.MuiInputLabel-shrink":{transform:`scale(0.75) translate(0, -0.75em)`},"&:not(.MuiInputLabel-shrink)":{transform:`translate(0, 0)`}})),Wh=({label:e,className:t,children:n})=>(0,I.jsxs)(Hh,{className:t,children:[(0,I.jsx)(Uh,{shrink:!0,children:e}),n]});Wh.propTypes={label:P.oneOfType([P.string,P.object]).isRequired,className:P.string,children:P.oneOfType([P.arrayOf(P.node),P.node]).isRequired};var{translator:Gh}=um,Kh=`pie-prompt-audio-player`,qh=`play-audio-button`,Jh=W(`div`)(({theme:e,tagName:t})=>({[`& .${qh}:focus-visible`]:{outline:`2px solid ${xf()}`,outlineOffset:`2px`},'&:not(.MathJax) > table:not([role="presentation"])':{borderCollapse:`collapse`},'&:not(.MathJax) table[border]:not([role="presentation"]), &:not(.MathJax) table[border]:not([role="presentation"]) td, &:not(.MathJax) table[border]:not([role="presentation"]) th':{borderStyle:`solid`,borderColor:uf()},'&:not(.MathJax) > table:not([role="presentation"]):has(tbody tr > th:first-child):not(:has(tbody tr > td:first-child)) tbody td:nth-child(even)':{backgroundColor:ff()},'&:not(.MathJax) > table:not([role="presentation"]):has(tbody tr > td:first-child) tbody tr:nth-child(even) td':{backgroundColor:ff()},'&:not(.MathJax) table:not([role="presentation"]) td, &:not(.MathJax) table:not([role="presentation"]) th':{padding:`.6em 1em`,textAlign:`left`},"&:not(.MathJax) > table td > p.kds-indent":{textAlign:`initial`},"&.prompt":{verticalAlign:`middle`,color:Ad()},"&.legend":{width:`100%`,fontSize:`inherit !important`},"&.rationale":{paddingLeft:e.spacing(4),paddingBottom:e.spacing(1)},"&.prompt-label":{color:`${Ad()} !important`,display:`flex`,flexDirection:`column`,verticalAlign:`middle`,cursor:`pointer`,"& > p":{margin:`0 0 0 0 !important`}}})),Yh=/\\embed\{newLine\}\[\]/g,Xh=`\\newline `,Zh=`preview-prompt`,Qh=class extends F.Component{static propTypes={prompt:P.string,tagName:P.string,className:P.string,onClick:P.func,defaultClassName:P.string,autoplayAudioEnabled:P.bool,customAudioButton:P.shape({playImage:P.string,pauseImage:P.string}),language:P.string};static defaultProps={onClick:()=>{}};promptRef=F.createRef();audioId=dm(Kh);playButtonId=dm(qh);parsedText=e=>{let{autoplayAudioEnabled:t,customAudioButton:n,language:r}=this.props,i=document.createElement(`div`);i.innerHTML=e;let a=i.querySelector(`audio`);if(a){let e=document.createElement(`source`);if(e.setAttribute(`type`,`audio/mp3`),e.setAttribute(`src`,a.getAttribute(`src`)),a.removeAttribute(`src`),a.id=this.audioId,a.classList.add(Kh),a.appendChild(e),n){a.style.display=`none`;let e=document.createElement(`button`);e.setAttribute(`type`,`button`),e.setAttribute(`aria-label`,Gh.t(`common:playAudio`,{lng:r})),e.id=this.playButtonId,e.className=qh,Object.assign(e.style,{cursor:`pointer`,display:`block`,width:`128px`,height:`128px`,margin:`0`,padding:`0`,font:`inherit`,backgroundColor:`transparent`,backgroundImage:`url(${t?n.pauseImage:n.playImage})`,backgroundSize:`cover`,borderRadius:`50%`,border:`1px solid #326295`}),a.parentNode.insertBefore(e,a)}}return i.innerHTML};addCustomAudioButtonControls(){let{autoplayAudioEnabled:e,customAudioButton:t}=this.props,n=this.promptRef.current,r=n?.querySelector(`.${qh}`),i=n?.querySelector(`.${Kh}`);if(e&&i&&i.play().then(()=>{r&&t&&i.addEventListener(`ended`,o)}).catch(e=>{r&&t&&(r.style.backgroundImage=`url(${t.playImage})`),console.error(`Error playing audio`,e)}),!r||!i||!t)return;let a=()=>{i.paused&&i.play()},o=()=>{r.style.backgroundImage=`url(${t.playImage})`},s=()=>{Object.assign(r.style,{backgroundImage:`url(${t.pauseImage})`,border:`1px solid #ccc`})},c=()=>{Object.assign(r.style,{backgroundImage:`url(${t.playImage})`,border:`1px solid #326295`})};r.addEventListener(`click`,a),i.addEventListener(`play`,s),i.addEventListener(`pause`,c),i.addEventListener(`ended`,o),this._playButton=r,this._audio=i,this._handlePlayClick=a,this._handleAudioPlay=s,this._handleAudioPause=c,this._handleAudioEnded=o}removeCustomAudioButtonListeners(){let e=this._playButton,t=this._audio;!e||!t||(e.removeEventListener(`click`,this._handlePlayClick),t.removeEventListener(`play`,this._handleAudioPlay),t.removeEventListener(`pause`,this._handleAudioPause),t.removeEventListener(`ended`,this._handleAudioEnded))}componentDidMount(){this.alignImages(),this.addCustomAudioButtonControls(),this.setupMathRendering()}componentDidUpdate(e){this.alignImages(),e.prompt!==this.props.prompt&&this.renderMathContent()}componentWillUnmount(){this.removeCustomAudioButtonListeners()}setupMathRendering(){this.renderMathContent()}renderMathContent(){let e=this.promptRef.current;e&&typeof Vt==`function`&&Vt(e)}alignImages(){let e=this.promptRef.current;if(!e)return;let t=e.getElementsByTagName(`img`);if(t&&t.length){for(let e of t)if(e.attributes&&e.attributes.alignment&&e.attributes.alignment.value){let t=e.attributes.alignment.value,n=t===`center`?`center`:t===`right`?`flex-end`:`flex-start`,r=e.parentElement;if(r.tagName===`DIV`&&r.style.display===`flex`&&r.style.width===`100%`)r.style.justifyContent=n;else{let t=document.createElement(`div`);t.style.display=`flex`,t.style.width=`100%`,t.style.justifyContent=n;let i=e.cloneNode(!0);t.appendChild(i),r.replaceChild(t,e)}}}}render(){let{prompt:e,tagName:t,className:n,onClick:r,defaultClassName:i}=this.props,a=`${n||``} ${i||``} ${t===`legend`?`legend`:``} ${Zh}`.trim();return(0,I.jsx)(Jh,{as:t||`div`,ref:this.promptRef,onClick:r,className:a,tagName:t,dangerouslySetInnerHTML:{__html:this.parsedText(e||``).replace(Yh,Xh)}})}},$h=e=>(0,I.jsx)(I.Fragment,{children:F.Children.map(e.children,t=>F.cloneElement(t,{"data-pie-readable":e.false===void 0}))});$h.propTypes={children:P.node,false:P.bool};var eg=e=>(0,I.jsx)(I.Fragment,{children:F.Children.map(e.children,t=>F.cloneElement(t,{"data-pie-purpose":e.purpose}))});eg.propTypes={children:P.node,purpose:P.string};var tg;typeof window<`u`&&(tg=new DOMParser);var ng=e=>tg.parseFromString(e,`text/html`).body.textContent,rg=e=>{if(!e)return!1;let t=ng(e);return!!(t&&t.trim())},ig;typeof window<`u`&&(ig=new DOMParser);var ag=e=>{if(!e)return!1;let t=ig.parseFromString(e,`text/html`);return!!t.body.querySelector(`img`)||!!t.body.querySelector(`video`)||!!t.body.querySelector(`audio`)},og=`data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAMCAgICAgMCAgIDAwMDBAYEBAQEBAgGBgUGCQgKCgkICQkKDA8MCgsOCwkJDRENDg8QEBEQCgwSExIQEw8QEBD/2wBDAQMDAwQDBAgEBAgQCwkLEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBD/wAARCAJYAyADAREAAhEBAxEB/8QAHgABAQABBQEBAQAAAAAAAAAAAAEIAgMGBwkEBQr/xABiEAACAQIDBAMKCAYMCgYLAQAAAQIDEQQFIQYSMUEHCFETFRYiUmFxkdHhCRRjgaGisfAXMjRTcsEjJDY4QmJ1dpKztMQYMzdEVIKyw9PxQ1hmc3SWJzVFRlZXhJOUldJk/8QAGwEBAQADAQEBAAAAAAAAAAAAAAcEBQYCAQP/xABBEQEAAQIDAgkJBgUFAQEBAAAAAQIDBAYRBSESMUFEYXGCscITNDVRcoGRocEUIjJS0eEVI2KSsjNCU6LwFtLx/9oADAMBAAIRAxEAPwD1TAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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`;function sg(e=``,t=2){if(!e)return e;let n=new DOMParser().parseFromString(e,`text/html`);return n.body.querySelectorAll(`[data-heading]`).forEach(e=>{let r=e.getAttribute(`data-heading`)||``,i=parseInt(r.replace(`heading`,``),10);if(!Number.isFinite(i))return;let a=Math.min(6,Math.max(1,t+i-1)),o=n.createElement(`h${a}`);o.setAttribute(`data-heading`,r),Array.from(e.attributes).forEach(e=>{e.name!==`data-heading`&&o.setAttribute(e.name,e.value)}),o.innerHTML=e.innerHTML,e.replaceWith(o)}),n.body.innerHTML}function cg(e){let{elementType:t,externalSlotProps:n,ownerState:r,skipResolvingSlotProps:i=!1,...a}=e,o=i?{}:ju(n,r),{props:s,internalRef:c}=Pu({...a,externalSlotProps:o}),l=Zl(c,o?.ref,e.additionalProps?.ref);return Au(t,{...s,ref:l},r)}var lg=F.createContext({});function ug(e){return to(`MuiList`,e)}no(`MuiList`,[`root`,`padding`,`dense`,`subheader`]);var dg=e=>{let{classes:t,disablePadding:n,dense:r,subheader:i}=e;return xs({root:[`root`,!n&&`padding`,r&&`dense`,i&&`subheader`]},ug,t)},fg=W(`ul`,{name:`MuiList`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,!n.disablePadding&&t.padding,n.dense&&t.dense,n.subheader&&t.subheader]}})({listStyle:`none`,margin:0,padding:0,position:`relative`,variants:[{props:({ownerState:e})=>!e.disablePadding,style:{paddingTop:8,paddingBottom:8}},{props:({ownerState:e})=>e.subheader,style:{paddingTop:0}}]}),pg=F.forwardRef(function(e,t){let n=rl({props:e,name:`MuiList`}),{children:r,className:i,component:a=`ul`,dense:o=!1,disablePadding:s=!1,subheader:c,...l}=n,u=F.useMemo(()=>({dense:o}),[o]),d={...n,component:a,dense:o,disablePadding:s},f=dg(d);return(0,I.jsx)(lg.Provider,{value:u,children:(0,I.jsxs)(fg,{as:a,className:R(f.root,i),ref:t,ownerState:d,...l,children:[c,r]})})}),mg=ru;function hg(e,t,n){return e===t?e.firstChild:t&&t.nextElementSibling?t.nextElementSibling:n?null:e.firstChild}function gg(e,t,n){return e===t?n?e.firstChild:e.lastChild:t&&t.previousElementSibling?t.previousElementSibling:n?null:e.lastChild}function _g(e,t){if(t===void 0)return!0;let n=e.innerText;return n===void 0&&(n=e.textContent),n=n.trim().toLowerCase(),n.length===0?!1:t.repeating?n[0]===t.keys[0]:n.startsWith(t.keys.join(``))}function vg(e,t,n,r,i,a){let o=!1,s=i(e,t,t?n:!1);for(;s;){if(s===e.firstChild){if(o)return!1;o=!0}let t=r?!1:s.disabled||s.getAttribute(`aria-disabled`)===`true`;if(!s.hasAttribute(`tabindex`)||!_g(s,a)||t)s=i(e,s,n);else return s.focus(),!0}return!1}var yg=F.forwardRef(function(e,t){let{actions:n,autoFocus:r=!1,autoFocusItem:i=!1,children:a,className:o,disabledItemsFocusable:s=!1,disableListWrap:c=!1,onKeyDown:l,variant:u=`selectedMenu`,...d}=e,f=F.useRef(null),p=F.useRef({keys:[],repeating:!0,previousKeyMatched:!0,lastTime:null});pd(()=>{r&&f.current.focus()},[r]),F.useImperativeHandle(n,()=>({adjustStyleForScrollbar:(e,{direction:t})=>{let n=!f.current.style.width;if(e.clientHeight<f.current.clientHeight&&n){let n=`${mg(ll(e))}px`;f.current.style[t===`rtl`?`paddingLeft`:`paddingRight`]=n,f.current.style.width=`calc(100% + ${n})`}return f.current}}),[]);let m=e=>{let t=f.current,n=e.key;if(e.ctrlKey||e.metaKey||e.altKey){l&&l(e);return}let r=gu(sl(t));if(n===`ArrowDown`)e.preventDefault(),vg(t,r,c,s,hg);else if(n===`ArrowUp`)e.preventDefault(),vg(t,r,c,s,gg);else if(n===`Home`)e.preventDefault(),vg(t,null,c,s,hg);else if(n===`End`)e.preventDefault(),vg(t,null,c,s,gg);else if(n.length===1){let i=p.current,a=n.toLowerCase(),o=performance.now();i.keys.length>0&&(o-i.lastTime>500?(i.keys=[],i.repeating=!0,i.previousKeyMatched=!0):i.repeating&&a!==i.keys[0]&&(i.repeating=!1)),i.lastTime=o,i.keys.push(a);let c=r&&!i.repeating&&_g(r,i);i.previousKeyMatched&&(c||vg(t,r,!1,s,hg,i))?e.preventDefault():i.previousKeyMatched=!1}l&&l(e)},h=Ql(f,t),g=-1;F.Children.forEach(a,(e,t)=>{if(!F.isValidElement(e)){g===t&&(g+=1,g>=a.length&&(g=-1));return}e.props.disabled||(u===`selectedMenu`&&e.props.selected||g===-1)&&(g=t),g===t&&(e.props.disabled||e.props.muiSkipListHighlight||e.type.muiSkipListHighlight)&&(g+=1,g>=a.length&&(g=-1))});let _=F.Children.map(a,(e,t)=>{if(t===g){let t={};return i&&(t.autoFocus=!0),e.props.tabIndex===void 0&&u===`selectedMenu`&&(t.tabIndex=0),F.cloneElement(e,t)}return e});return(0,I.jsx)(pg,{role:`menu`,ref:h,className:o,onKeyDown:m,tabIndex:r?0:-1,...d,children:_})});function bg(e){return to(`MuiMenu`,e)}no(`MuiMenu`,[`root`,`paper`,`list`]);var xg={vertical:`top`,horizontal:`right`},Sg={vertical:`top`,horizontal:`left`},Cg=e=>{let{classes:t}=e;return xs({root:[`root`],paper:[`paper`],list:[`list`]},bg,t)},wg=W(Td,{shouldForwardProp:e=>Pc(e)||e===`classes`,name:`MuiMenu`,slot:`Root`})({}),Tg=W(wd,{name:`MuiMenu`,slot:`Paper`})({maxHeight:`calc(100% - 96px)`,WebkitOverflowScrolling:`touch`}),Eg=W(yg,{name:`MuiMenu`,slot:`List`})({outline:0}),Dg=F.forwardRef(function(e,t){let n=rl({props:e,name:`MuiMenu`}),{autoFocus:r=!0,children:i,className:a,disableAutoFocusItem:o=!1,MenuListProps:s={},onClose:c,open:l,PaperProps:u={},PopoverClasses:d,transitionDuration:f=`auto`,TransitionProps:{onEntering:p,...m}={},variant:h=`selectedMenu`,slots:g={},slotProps:_={},...v}=n,y=Bo(),b={...n,autoFocus:r,disableAutoFocusItem:o,MenuListProps:s,onEntering:p,PaperProps:u,transitionDuration:f,TransitionProps:m,variant:h},x=Cg(b),S=r&&!o&&l,C=F.useRef(null),w=(e,t)=>{C.current&&C.current.adjustStyleForScrollbar(e,{direction:y?`rtl`:`ltr`}),p&&p(e,t)},T=e=>{e.key===`Tab`&&(e.preventDefault(),c&&c(e,`tabKeyDown`))},E=-1;F.Children.map(i,(e,t)=>{F.isValidElement(e)&&(e.props.disabled||(h===`selectedMenu`&&e.props.selected||E===-1)&&(E=t))});let D={slots:g,slotProps:{list:s,transition:m,paper:u,..._}},O=cg({elementType:g.root,externalSlotProps:_.root,ownerState:b,className:[x.root,a]}),[ee,te]=Fu(`paper`,{className:x.paper,elementType:Tg,externalForwardedProps:D,shouldForwardComponentProp:!0,ownerState:b}),[k,A]=Fu(`list`,{className:R(x.list,s.className),elementType:Eg,shouldForwardComponentProp:!0,externalForwardedProps:D,getSlotProps:e=>({...e,onKeyDown:t=>{T(t),e.onKeyDown?.(t)}}),ownerState:b}),ne=typeof D.slotProps.transition==`function`?D.slotProps.transition(b):D.slotProps.transition;return(0,I.jsx)(wg,{onClose:c,anchorOrigin:{vertical:`bottom`,horizontal:y?`right`:`left`},transformOrigin:y?xg:Sg,slots:{root:g.root,paper:ee,backdrop:g.backdrop,...g.transition&&{transition:g.transition}},slotProps:{root:O,paper:te,backdrop:typeof _.backdrop==`function`?_.backdrop(b):_.backdrop,transition:{...ne,onEntering:(...e)=>{w(...e),ne?.onEntering?.(...e)}}},open:l,ref:t,transitionDuration:f,ownerState:b,...v,classes:d,children:(0,I.jsx)(k,{actions:C,autoFocus:r&&(E===-1||o),autoFocusItem:S,variant:h,...A,children:i})})}),Og=({slotProps:e,...t})=>(0,I.jsx)(Dg,{...t,disableScrollLock:!0,slotProps:{...e,root:{...e?.root,style:{backgroundColor:`transparent`,...e?.root?.style}},backdrop:{invisible:!0,...e?.backdrop}}}),kg=s({Collapsible:()=>_m,EnableAudioAutoplayImage:()=>og,Feedback:()=>Uf,HtmlAndMath:()=>Sh,InlineMenu:()=>Og,InputContainer:()=>Wh,PreviewLayout:()=>xh,PreviewPrompt:()=>Qh,Purpose:()=>eg,Readable:()=>$h,UiLayout:()=>yh,color:()=>Od,createUniqueId:()=>dm,hasMedia:()=>ag,hasText:()=>rg,indicators:()=>Kf,transformDataHeadings:()=>sg,useUniqueId:()=>fm,withUndoReset:()=>gh}),Ag=class e extends CustomEvent{static{this.TYPE=`model-set`}constructor(t,n,r){super(e.TYPE,{bubbles:!0,composed:!0,detail:{complete:n,component:t,hasModel:r}}),this.component=t,this.complete=n}},jg=class e extends CustomEvent{static{this.TYPE=`session-changed`}constructor(t,n){super(e.TYPE,{bubbles:!0,composed:!0,detail:{complete:n,component:t}}),this.component=t,this.complete=n}},Mg=`height ease-in 300ms, opacity ease-in 300ms`,Ng=W(`div`)(()=>({position:`relative`,height:0,overflow:`hidden`,display:`flex`,visibility:`hidden`,width:0,"&.enter":{transition:Mg,opacity:1,height:`auto`,width:`auto`,visibility:`visible`,minHeight:`25px`},"&.enter-done":{height:`auto`,visibility:`visible`,width:`auto`,minHeight:`25px`},"&.exit":{transition:Mg,opacity:0,height:0,visibility:`visible`,width:0},"&.exit-done":{opacity:0,visibility:`hidden`,height:0,width:0}})),Pg=e=>{let{show:t,children:n,className:r}=e,i=(0,F.useRef)(null);return(0,I.jsx)(Ll,{nodeRef:i,in:t,appear:!0,mountOnEnter:!1,timeout:300,classNames:{enter:`enter`,enterDone:`enter-done`,exit:`exit`,exitDone:`exit-done`},children:(0,I.jsx)(Ng,{ref:i,className:r,children:n})})};Pg.propTypes={show:P.bool.isRequired,className:P.string,children:P.oneOfType([P.arrayOf(P.node),P.node]).isRequired};function Fg(e){return typeof e==`function`||typeof e==`object`&&!!e&&typeof e.$$typeof==`symbol`}function Ig(e,t){return!e||Fg(e)?e:Fg(e.default)?e.default:t&&Fg(e[t])?e[t]:t&&Fg(e[t]?.default)?e[t].default:e}var Lg=Ig($h,`Readable`)||Ig(Bg.Readable,`Readable`),Rg=kg,zg=Rg.default,Bg=zg&&typeof zg==`object`?zg:Rg,{translator:Vg}=um,Hg={WebkitTouchCallout:`none`,WebkitUserSelect:`none`,KhtmlUserSelect:`none`,MozUserSelect:`none`,msUserSelect:`none`,userSelect:`none`},Ug=W(`div`)(()=>({width:`100%`,cursor:`pointer`})),Wg=W(`button`)(()=>({margin:`0 auto`,textAlign:`center`,display:`flex`,minWidth:`24px`,minHeight:`24px`,padding:0,border:0,background:`none`,color:`inherit`,font:`inherit`,cursor:`pointer`,"&:focus-visible":{outline:`2px solid ${bf()}`,outlineOffset:`-2px`}})),Gg=W(`div`)(()=>({width:`fit-content`,minWidth:`140px`,alignSelf:`center`,verticalAlign:`middle`,color:`var(--correct-answer-toggle-label-color, ${Ad()})`,fontWeight:`normal`,...Hg})),Kg=W(`div`)(()=>({position:`absolute`,width:`25px`,"&.enter":{opacity:`0`},"&.enter-active":{opacity:`1`,transition:`opacity 0.3s ease-in`},"&.exit":{opacity:`1`},"&.exit-active":{opacity:`0`,transition:`opacity 0.3s ease-in`}})),qg=W(`div`)(()=>({width:`25px`,marginRight:`5px`,display:`flex`,alignItems:`center`})),Jg=class e extends F.Component{static propTypes={onToggle:P.func,toggled:P.bool,show:P.bool,hideMessage:P.string,showMessage:P.string,className:P.string,language:P.string};static defaultProps={showMessage:`Show correct answer`,hideMessage:`Hide correct answer`,show:!1,toggled:!1};constructor(t){super(t),this.state={show:t.show},this.openIconRef=F.createRef(),this.closedIconRef=F.createRef(),e.defaultProps={...e.defaultProps,showMessage:Vg.t(`common:showCorrectAnswer`,{lng:t.language}),hideMessage:Vg.t(`common:hideCorrectAnswer`,{lng:t.language})}}onClick(){this.props.onToggle(!this.props.toggled)}onTouch(e){e.preventDefault(),this.props.onToggle(!this.props.toggled)}UNSAFE_componentWillReceiveProps(t){this.setState({show:t.show}),t.language!==this.props?.language&&(e.defaultProps={...e.defaultProps,showMessage:Vg.t(`common:showCorrectAnswer`,{lng:t.language}),hideMessage:Vg.t(`common:hideCorrectAnswer`,{lng:t.language})})}render(){let{className:e,toggled:t,hideMessage:n,showMessage:r}=this.props;return(0,I.jsx)(Ug,{className:e,children:(0,I.jsx)(Pg,{show:this.state.show,children:(0,I.jsxs)(Wg,{type:`button`,"aria-pressed":!!t,onClick:this.onClick.bind(this),onTouchEnd:this.onTouch.bind(this),children:[(0,I.jsxs)(qg,{children:[(0,I.jsx)(Ll,{nodeRef:this.openIconRef,timeout:400,in:t,exit:!t,classNames:{enter:`enter`,enterActive:`enter-active`,exit:`exit`,exitActive:`exit-active`},children:(0,I.jsx)(Kg,{ref:this.openIconRef,children:(0,I.jsx)(Gc,{open:t},`correct-open`)})}),(0,I.jsx)(Ll,{nodeRef:this.closedIconRef,timeout:5e3,in:!t,exit:t,classNames:{enter:`enter`,enterActive:`enter-active`,exit:`exit`,exitActive:`exit-active`},children:(0,I.jsx)(Kg,{ref:this.closedIconRef,children:(0,I.jsx)(Gc,{open:t},`correct-closed`)})})]}),(0,I.jsx)(Lg,{false:!0,children:(0,I.jsx)(Gg,{"aria-hidden":!this.state.show,children:t?n:r})})]})})})}},Yg=Math.PI/180;function Xg(){return typeof window<`u`&&({}.toString.call(window)===`[object Window]`||{}.toString.call(window)===`[object global]`)}var Zg=typeof global<`u`?global:typeof window<`u`?window:typeof WorkerGlobalScope<`u`?self:{},J={_global:Zg,version:`8.3.0`,isBrowser:Xg(),isUnminified:/param/.test(function(e){}.toString()),dblClickWindow:400,getAngle(e){return J.angleDeg?e*Yg:e},enableTrace:!1,pointerEventsEnabled:!0,autoDrawEnabled:!0,hitOnDragEnabled:!1,capturePointerEventsEnabled:!1,_mouseListenClick:!1,_touchListenClick:!1,_pointerListenClick:!1,_mouseInDblClickWindow:!1,_touchInDblClickWindow:!1,_pointerInDblClickWindow:!1,_mouseDblClickPointerId:null,_touchDblClickPointerId:null,_pointerDblClickPointerId:null,pixelRatio:typeof window<`u`&&window.devicePixelRatio||1,dragDistance:3,angleDeg:!0,showWarnings:!0,dragButtons:[0,1],isDragging(){return J.DD.isDragging},isDragReady(){return!!J.DD.node},document:Zg.document,_injectGlobal(e){Zg.Konva=e}},Qg=e=>{J[e.prototype.getClassName()]=e};J._injectGlobal(J);var $g=class e{constructor(e=[1,0,0,1,0,0]){this.dirty=!1,this.m=e&&e.slice()||[1,0,0,1,0,0]}reset(){this.m[0]=1,this.m[1]=0,this.m[2]=0,this.m[3]=1,this.m[4]=0,this.m[5]=0}copy(){return new e(this.m)}copyInto(e){e.m[0]=this.m[0],e.m[1]=this.m[1],e.m[2]=this.m[2],e.m[3]=this.m[3],e.m[4]=this.m[4],e.m[5]=this.m[5]}point(e){var t=this.m;return{x:t[0]*e.x+t[2]*e.y+t[4],y:t[1]*e.x+t[3]*e.y+t[5]}}translate(e,t){return this.m[4]+=this.m[0]*e+this.m[2]*t,this.m[5]+=this.m[1]*e+this.m[3]*t,this}scale(e,t){return this.m[0]*=e,this.m[1]*=e,this.m[2]*=t,this.m[3]*=t,this}rotate(e){var t=Math.cos(e),n=Math.sin(e),r=this.m[0]*t+this.m[2]*n,i=this.m[1]*t+this.m[3]*n,a=this.m[0]*-n+this.m[2]*t,o=this.m[1]*-n+this.m[3]*t;return this.m[0]=r,this.m[1]=i,this.m[2]=a,this.m[3]=o,this}getTranslation(){return{x:this.m[4],y:this.m[5]}}skew(e,t){var n=this.m[0]+this.m[2]*t,r=this.m[1]+this.m[3]*t,i=this.m[2]+this.m[0]*e,a=this.m[3]+this.m[1]*e;return this.m[0]=n,this.m[1]=r,this.m[2]=i,this.m[3]=a,this}multiply(e){var t=this.m[0]*e.m[0]+this.m[2]*e.m[1],n=this.m[1]*e.m[0]+this.m[3]*e.m[1],r=this.m[0]*e.m[2]+this.m[2]*e.m[3],i=this.m[1]*e.m[2]+this.m[3]*e.m[3],a=this.m[0]*e.m[4]+this.m[2]*e.m[5]+this.m[4],o=this.m[1]*e.m[4]+this.m[3]*e.m[5]+this.m[5];return this.m[0]=t,this.m[1]=n,this.m[2]=r,this.m[3]=i,this.m[4]=a,this.m[5]=o,this}invert(){var e=1/(this.m[0]*this.m[3]-this.m[1]*this.m[2]),t=this.m[3]*e,n=-this.m[1]*e,r=-this.m[2]*e,i=this.m[0]*e,a=e*(this.m[2]*this.m[5]-this.m[3]*this.m[4]),o=e*(this.m[1]*this.m[4]-this.m[0]*this.m[5]);return this.m[0]=t,this.m[1]=n,this.m[2]=r,this.m[3]=i,this.m[4]=a,this.m[5]=o,this}getMatrix(){return this.m}setAbsolutePosition(e,t){var n=this.m[0],r=this.m[1],i=this.m[2],a=this.m[3],o=this.m[4],s=(n*(t-this.m[5])-r*(e-o))/(n*a-r*i),c=(e-o-i*s)/n;return this.translate(c,s)}decompose(){var e=this.m[0],t=this.m[1],n=this.m[2],r=this.m[3],i=this.m[4],a=this.m[5],o=e*r-t*n;let s={x:i,y:a,rotation:0,scaleX:0,scaleY:0,skewX:0,skewY:0};if(e!=0||t!=0){var c=Math.sqrt(e*e+t*t);s.rotation=t>0?Math.acos(e/c):-Math.acos(e/c),s.scaleX=c,s.scaleY=o/c,s.skewX=(e*n+t*r)/o,s.skewY=0}else if(n!=0||r!=0){var l=Math.sqrt(n*n+r*r);s.rotation=Math.PI/2-(r>0?Math.acos(-n/l):-Math.acos(n/l)),s.scaleX=o/l,s.scaleY=l,s.skewX=0,s.skewY=(e*n+t*r)/o}return s.rotation=Y._getRotation(s.rotation),s}},e_=`[object Array]`,t_=`[object Number]`,n_=`[object String]`,r_=`[object Boolean]`,i_=Math.PI/180,a_=180/Math.PI,o_=`#`,s_=``,c_=`0`,l_=`Konva warning: `,u_=`Konva error: `,d_=`rgb(`,f_={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,132,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,255,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,203],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[119,128,144],slategrey:[119,128,144],snow:[255,255,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],transparent:[255,255,255,0],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,5]},p_=/rgb\((\d{1,3}),(\d{1,3}),(\d{1,3})\)/,m_=[],h_=typeof requestAnimationFrame<`u`&&requestAnimationFrame||function(e){setTimeout(e,60)},Y={_isElement(e){return!!(e&&e.nodeType==1)},_isFunction(e){return!!(e&&e.constructor&&e.call&&e.apply)},_isPlainObject(e){return!!e&&e.constructor===Object},_isArray(e){return Object.prototype.toString.call(e)===e_},_isNumber(e){return Object.prototype.toString.call(e)===t_&&!isNaN(e)&&isFinite(e)},_isString(e){return Object.prototype.toString.call(e)===n_},_isBoolean(e){return Object.prototype.toString.call(e)===r_},isObject(e){return e instanceof Object},isValidSelector(e){if(typeof e!=`string`)return!1;var t=e[0];return t===`#`||t===`.`||t===t.toUpperCase()},_sign(e){return e===0||e>0?1:-1},requestAnimFrame(e){m_.push(e),m_.length===1&&h_(function(){let e=m_;m_=[],e.forEach(function(e){e()})})},createCanvasElement(){var e=document.createElement(`canvas`);try{e.style=e.style||{}}catch{}return e},createImageElement(){return document.createElement(`img`)},_isInDocument(e){for(;e=e.parentNode;)if(e==document)return!0;return!1},_urlToImage(e,t){var n=Y.createImageElement();n.onload=function(){t(n)},n.src=e},_rgbToHex(e,t,n){return((1<<24)+(e<<16)+(t<<8)+n).toString(16).slice(1)},_hexToRgb(e){e=e.replace(o_,s_);var t=parseInt(e,16);return{r:t>>16&255,g:t>>8&255,b:t&255}},getRandomColor(){for(var e=(Math.random()*16777215<<0).toString(16);e.length<6;)e=c_+e;return o_+e},getRGB(e){var t;return e in f_?(t=f_[e],{r:t[0],g:t[1],b:t[2]}):e[0]===o_?this._hexToRgb(e.substring(1)):e.substr(0,4)===d_?(t=p_.exec(e.replace(/ /g,``)),{r:parseInt(t[1],10),g:parseInt(t[2],10),b:parseInt(t[3],10)}):{r:0,g:0,b:0}},colorToRGBA(e){return e||=`black`,Y._namedColorToRBA(e)||Y._hex3ColorToRGBA(e)||Y._hex6ColorToRGBA(e)||Y._rgbColorToRGBA(e)||Y._rgbaColorToRGBA(e)||Y._hslColorToRGBA(e)},_namedColorToRBA(e){var t=f_[e.toLowerCase()];return t?{r:t[0],g:t[1],b:t[2],a:1}:null},_rgbColorToRGBA(e){if(e.indexOf(`rgb(`)===0){e=e.match(/rgb\(([^)]+)\)/)[1];var t=e.split(/ *, */).map(Number);return{r:t[0],g:t[1],b:t[2],a:1}}},_rgbaColorToRGBA(e){if(e.indexOf(`rgba(`)===0){e=e.match(/rgba\(([^)]+)\)/)[1];var t=e.split(/ *, */).map(Number);return{r:t[0],g:t[1],b:t[2],a:t[3]}}},_hex6ColorToRGBA(e){if(e[0]===`#`&&e.length===7)return{r:parseInt(e.slice(1,3),16),g:parseInt(e.slice(3,5),16),b:parseInt(e.slice(5,7),16),a:1}},_hex3ColorToRGBA(e){if(e[0]===`#`&&e.length===4)return{r:parseInt(e[1]+e[1],16),g:parseInt(e[2]+e[2],16),b:parseInt(e[3]+e[3],16),a:1}},_hslColorToRGBA(e){if(/hsl\((\d+),\s*([\d.]+)%,\s*([\d.]+)%\)/g.test(e)){let[t,...n]=/hsl\((\d+),\s*([\d.]+)%,\s*([\d.]+)%\)/g.exec(e),r=Number(n[0])/360,i=Number(n[1])/100,a=Number(n[2])/100,o,s,c;if(i===0)return c=a*255,{r:Math.round(c),g:Math.round(c),b:Math.round(c),a:1};o=a<.5?a*(1+i):a+i-a*i;let l=2*a-o,u=[0,0,0];for(let e=0;e<3;e++)s=r+1/3*-(e-1),s<0&&s++,s>1&&s--,c=6*s<1?l+(o-l)*6*s:2*s<1?o:3*s<2?l+(o-l)*(2/3-s)*6:l,u[e]=c*255;return{r:Math.round(u[0]),g:Math.round(u[1]),b:Math.round(u[2]),a:1}}},haveIntersection(e,t){return!(t.x>e.x+e.width||t.x+t.width<e.x||t.y>e.y+e.height||t.y+t.height<e.y)},cloneObject(e){var t={};for(var n in e)this._isPlainObject(e[n])?t[n]=this.cloneObject(e[n]):this._isArray(e[n])?t[n]=this.cloneArray(e[n]):t[n]=e[n];return t},cloneArray(e){return e.slice(0)},degToRad(e){return e*i_},radToDeg(e){return e*a_},_degToRad(e){return Y.warn(`Util._degToRad is removed. Please use public Util.degToRad instead.`),Y.degToRad(e)},_radToDeg(e){return Y.warn(`Util._radToDeg is removed. Please use public Util.radToDeg instead.`),Y.radToDeg(e)},_getRotation(e){return J.angleDeg?Y.radToDeg(e):e},_capitalize(e){return e.charAt(0).toUpperCase()+e.slice(1)},throw(e){throw Error(u_+e)},error(e){console.error(u_+e)},warn(e){J.showWarnings&&console.warn(l_+e)},each(e,t){for(var n in e)t(n,e[n])},_inRange(e,t,n){return t<=e&&e<n},_getProjectionToSegment(e,t,n,r,i,a){var o,s,c,l=(e-n)*(e-n)+(t-r)*(t-r);if(l==0)o=e,s=t,c=(i-n)*(i-n)+(a-r)*(a-r);else{var u=((i-e)*(n-e)+(a-t)*(r-t))/l;u<0?(o=e,s=t,c=(e-i)*(e-i)+(t-a)*(t-a)):u>1?(o=n,s=r,c=(n-i)*(n-i)+(r-a)*(r-a)):(o=e+u*(n-e),s=t+u*(r-t),c=(o-i)*(o-i)+(s-a)*(s-a))}return[o,s,c]},_getProjectionToLine(e,t,n){var r=Y.cloneObject(e),i=Number.MAX_VALUE;return t.forEach(function(a,o){if(!(!n&&o===t.length-1)){var s=t[(o+1)%t.length],c=Y._getProjectionToSegment(a.x,a.y,s.x,s.y,e.x,e.y),l=c[0],u=c[1],d=c[2];d<i&&(r.x=l,r.y=u,i=d)}}),r},_prepareArrayForTween(e,t,n){var r,i=[],a=[];if(e.length>t.length){var o=t;t=e,e=o}for(r=0;r<e.length;r+=2)i.push({x:e[r],y:e[r+1]});for(r=0;r<t.length;r+=2)a.push({x:t[r],y:t[r+1]});var s=[];return a.forEach(function(e){var t=Y._getProjectionToLine(e,i,n);s.push(t.x),s.push(t.y)}),s},_prepareToStringify(e){var t;for(var n in e.visitedByCircularReferenceRemoval=!0,e)if(e.hasOwnProperty(n)&&e[n]&&typeof e[n]==`object`){if(t=Object.getOwnPropertyDescriptor(e,n),e[n].visitedByCircularReferenceRemoval||Y._isElement(e[n]))if(t.configurable)delete e[n];else return null;else if(Y._prepareToStringify(e[n])===null)if(t.configurable)delete e[n];else return null}return delete e.visitedByCircularReferenceRemoval,e},_assign(e,t){for(var n in t)e[n]=t[n];return e},_getFirstPointerId(e){return e.touches?e.changedTouches[0].identifier:e.pointerId||999}};function g_(e){return Y._isString(e)?`"`+e+`"`:Object.prototype.toString.call(e)===`[object Number]`||Y._isBoolean(e)?e:Object.prototype.toString.call(e)}function __(e){return e>255?255:e<0?0:Math.round(e)}function X(){if(J.isUnminified)return function(e,t){return Y._isNumber(e)||Y.warn(g_(e)+` is a not valid value for "`+t+`" attribute. The value should be a number.`),e}}function v_(e){if(J.isUnminified)return function(t,n){let r=Y._isNumber(t),i=Y._isArray(t)&&t.length==e;return!r&&!i&&Y.warn(g_(t)+` is a not valid value for "`+n+`" attribute. The value should be a number or Array<number>(`+e+`)`),t}}function y_(){if(J.isUnminified)return function(e,t){return Y._isNumber(e)||e===`auto`||Y.warn(g_(e)+` is a not valid value for "`+t+`" attribute. The value should be a number or "auto".`),e}}function b_(){if(J.isUnminified)return function(e,t){return Y._isString(e)||Y.warn(g_(e)+` is a not valid value for "`+t+`" attribute. The value should be a string.`),e}}function x_(){if(J.isUnminified)return function(e,t){let n=Y._isString(e),r=Object.prototype.toString.call(e)===`[object CanvasGradient]`||e&&e.addColorStop;return n||r||Y.warn(g_(e)+` is a not valid value for "`+t+`" attribute. The value should be a string or a native gradient.`),e}}function S_(){if(J.isUnminified)return function(e,t){return Y._isArray(e)?e.forEach(function(e){Y._isNumber(e)||Y.warn(`"`+t+`" attribute has non numeric element `+e+`. Make sure that all elements are numbers.`)}):Y.warn(g_(e)+` is a not valid value for "`+t+`" attribute. The value should be a array of numbers.`),e}}function C_(){if(J.isUnminified)return function(e,t){return e===!0||e===!1||Y.warn(g_(e)+` is a not valid value for "`+t+`" attribute. The value should be a boolean.`),e}}function w_(e){if(J.isUnminified)return function(t,n){return Y.isObject(t)||Y.warn(g_(t)+` is a not valid value for "`+n+`" attribute. The value should be an object with properties `+e),t}}var T_=`get`,E_=`set`,Z={addGetterSetter(e,t,n,r,i){Z.addGetter(e,t,n),Z.addSetter(e,t,r,i),Z.addOverloadedGetterSetter(e,t)},addGetter(e,t,n){var r=T_+Y._capitalize(t);e.prototype[r]=e.prototype[r]||function(){var e=this.attrs[t];return e===void 0?n:e}},addSetter(e,t,n,r){var i=E_+Y._capitalize(t);e.prototype[i]||Z.overWriteSetter(e,t,n,r)},overWriteSetter(e,t,n,r){var i=E_+Y._capitalize(t);e.prototype[i]=function(e){return n&&e!=null&&(e=n.call(this,e,t)),this._setAttr(t,e),r&&r.call(this),this}},addComponentsGetterSetter(e,t,n,r,i){var a=n.length,o=Y._capitalize,s=T_+o(t),c=E_+o(t),l,u;e.prototype[s]=function(){var e={};for(l=0;l<a;l++)u=n[l],e[u]=this.getAttr(t+o(u));return e};var d=w_(n);e.prototype[c]=function(e){var n=this.attrs[t],a;for(a in r&&(e=r.call(this,e)),d&&d.call(this,e,t),e)e.hasOwnProperty(a)&&this._setAttr(t+o(a),e[a]);return this._fireChangeEvent(t,n,e),i&&i.call(this),this},Z.addOverloadedGetterSetter(e,t)},addOverloadedGetterSetter(e,t){var n=Y._capitalize(t),r=E_+n,i=T_+n;e.prototype[t]=function(){return arguments.length?(this[r](arguments[0]),this):this[i]()}},addDeprecatedGetterSetter(e,t,n,r){Y.error(`Adding deprecated `+t);var i=T_+Y._capitalize(t),a=t+` property is deprecated and will be removed soon. Look at Konva change log for more information.`;e.prototype[i]=function(){Y.error(a);var e=this.attrs[t];return e===void 0?n:e},Z.addSetter(e,t,r,function(){Y.error(a)}),Z.addOverloadedGetterSetter(e,t)},backCompat(e,t){Y.each(t,function(t,n){var r=e.prototype[n],i=T_+Y._capitalize(t),a=E_+Y._capitalize(t);function o(){r.apply(this,arguments),Y.error(`"`+t+`" method is deprecated and will be removed soon. Use ""`+n+`" instead.`)}e.prototype[t]=o,e.prototype[i]=o,e.prototype[a]=o})},afterSetFilter(){this._filterUpToDate=!1}};function D_(e){var t=[],n=e.length,r=Y,i,a;for(i=0;i<n;i++)a=e[i],r._isNumber(a)?a=Math.round(a*1e3)/1e3:r._isString(a)||(a+=``),t.push(a);return t}var O_=`,`,k_=`(`,A_=`)`,j_=`([`,M_=`])`,N_=`;`,P_=`()`,F_=`=`,I_=`arc.arcTo.beginPath.bezierCurveTo.clearRect.clip.closePath.createLinearGradient.createPattern.createRadialGradient.drawImage.ellipse.fill.fillText.getImageData.createImageData.lineTo.moveTo.putImageData.quadraticCurveTo.rect.restore.rotate.save.scale.setLineDash.setTransform.stroke.strokeText.transform.translate`.split(`.`),L_=[`fillStyle`,`strokeStyle`,`shadowColor`,`shadowBlur`,`shadowOffsetX`,`shadowOffsetY`,`lineCap`,`lineDashOffset`,`lineJoin`,`lineWidth`,`miterLimit`,`font`,`textAlign`,`textBaseline`,`globalAlpha`,`globalCompositeOperation`,`imageSmoothingEnabled`],R_=100,z_=class{constructor(e){this.canvas=e,this._context=e._canvas.getContext(`2d`),J.enableTrace&&(this.traceArr=[],this._enableTrace())}fillShape(e){e.fillEnabled()&&this._fill(e)}_fill(e){}strokeShape(e){e.hasStroke()&&this._stroke(e)}_stroke(e){}fillStrokeShape(e){e.attrs.fillAfterStrokeEnabled?(this.strokeShape(e),this.fillShape(e)):(this.fillShape(e),this.strokeShape(e))}getTrace(e,t){var n=this.traceArr,r=n.length,i=``,a,o,s,c;for(a=0;a<r;a++)o=n[a],s=o.method,s?(c=o.args,i+=s,e?i+=P_:Y._isArray(c[0])?i+=j_+c.join(O_)+M_:(t&&(c=c.map(e=>typeof e==`number`?Math.floor(e):e)),i+=k_+c.join(O_)+A_)):(i+=o.property,e||(i+=F_+o.val)),i+=N_;return i}clearTrace(){this.traceArr=[]}_trace(e){var t=this.traceArr,n;t.push(e),n=t.length,n>=R_&&t.shift()}reset(){var e=this.getCanvas().getPixelRatio();this.setTransform(1*e,0,0,1*e,0,0)}getCanvas(){return this.canvas}clear(e){var t=this.getCanvas();e?this.clearRect(e.x||0,e.y||0,e.width||0,e.height||0):this.clearRect(0,0,t.getWidth()/t.pixelRatio,t.getHeight()/t.pixelRatio)}_applyLineCap(e){var t=e.getLineCap();t&&this.setAttr(`lineCap`,t)}_applyOpacity(e){var t=e.getAbsoluteOpacity();t!==1&&this.setAttr(`globalAlpha`,t)}_applyLineJoin(e){var t=e.attrs.lineJoin;t&&this.setAttr(`lineJoin`,t)}setAttr(e,t){this._context[e]=t}arc(e,t,n,r,i,a){this._context.arc(e,t,n,r,i,a)}arcTo(e,t,n,r,i){this._context.arcTo(e,t,n,r,i)}beginPath(){this._context.beginPath()}bezierCurveTo(e,t,n,r,i,a){this._context.bezierCurveTo(e,t,n,r,i,a)}clearRect(e,t,n,r){this._context.clearRect(e,t,n,r)}clip(){this._context.clip()}closePath(){this._context.closePath()}createImageData(e,t){var n=arguments;if(n.length===2)return this._context.createImageData(e,t);if(n.length===1)return this._context.createImageData(e)}createLinearGradient(e,t,n,r){return this._context.createLinearGradient(e,t,n,r)}createPattern(e,t){return this._context.createPattern(e,t)}createRadialGradient(e,t,n,r,i,a){return this._context.createRadialGradient(e,t,n,r,i,a)}drawImage(e,t,n,r,i,a,o,s,c){var l=arguments,u=this._context;l.length===3?u.drawImage(e,t,n):l.length===5?u.drawImage(e,t,n,r,i):l.length===9&&u.drawImage(e,t,n,r,i,a,o,s,c)}ellipse(e,t,n,r,i,a,o,s){this._context.ellipse(e,t,n,r,i,a,o,s)}isPointInPath(e,t){return this._context.isPointInPath(e,t)}fill(e){e?this._context.fill(e):this._context.fill()}fillRect(e,t,n,r){this._context.fillRect(e,t,n,r)}strokeRect(e,t,n,r){this._context.strokeRect(e,t,n,r)}fillText(e,t,n,r){r?this._context.fillText(e,t,n,r):this._context.fillText(e,t,n)}measureText(e){return this._context.measureText(e)}getImageData(e,t,n,r){return this._context.getImageData(e,t,n,r)}lineTo(e,t){this._context.lineTo(e,t)}moveTo(e,t){this._context.moveTo(e,t)}rect(e,t,n,r){this._context.rect(e,t,n,r)}putImageData(e,t,n){this._context.putImageData(e,t,n)}quadraticCurveTo(e,t,n,r){this._context.quadraticCurveTo(e,t,n,r)}restore(){this._context.restore()}rotate(e){this._context.rotate(e)}save(){this._context.save()}scale(e,t){this._context.scale(e,t)}setLineDash(e){this._context.setLineDash?this._context.setLineDash(e):`mozDash`in this._context?this._context.mozDash=e:`webkitLineDash`in this._context&&(this._context.webkitLineDash=e)}getLineDash(){return this._context.getLineDash()}setTransform(e,t,n,r,i,a){this._context.setTransform(e,t,n,r,i,a)}stroke(e){e?this._context.stroke(e):this._context.stroke()}strokeText(e,t,n,r){this._context.strokeText(e,t,n,r)}transform(e,t,n,r,i,a){this._context.transform(e,t,n,r,i,a)}translate(e,t){this._context.translate(e,t)}_enableTrace(){var e=this,t=I_.length,n=this.setAttr,r,i,a=function(t){var n=e[t],r;e[t]=function(){return i=D_(Array.prototype.slice.call(arguments,0)),r=n.apply(e,arguments),e._trace({method:t,args:i}),r}};for(r=0;r<t;r++)a(I_[r]);e.setAttr=function(){n.apply(e,arguments);var t=arguments[0],r=arguments[1];(t===`shadowOffsetX`||t===`shadowOffsetY`||t===`shadowBlur`)&&(r/=this.canvas.getPixelRatio()),e._trace({property:t,val:r})}}_applyGlobalCompositeOperation(e){let t=e.attrs.globalCompositeOperation;!t||t===`source-over`||this.setAttr(`globalCompositeOperation`,t)}};L_.forEach(function(e){Object.defineProperty(z_.prototype,e,{get(){return this._context[e]},set(t){this._context[e]=t}})});var B_=class extends z_{_fillColor(e){var t=e.fill();this.setAttr(`fillStyle`,t),e._fillFunc(this)}_fillPattern(e){this.setAttr(`fillStyle`,e._getFillPattern()),e._fillFunc(this)}_fillLinearGradient(e){var t=e._getLinearGradient();t&&(this.setAttr(`fillStyle`,t),e._fillFunc(this))}_fillRadialGradient(e){var t=e._getRadialGradient();t&&(this.setAttr(`fillStyle`,t),e._fillFunc(this))}_fill(e){var t=e.fill(),n=e.getFillPriority();if(t&&n===`color`){this._fillColor(e);return}var r=e.getFillPatternImage();if(r&&n===`pattern`){this._fillPattern(e);return}var i=e.getFillLinearGradientColorStops();if(i&&n===`linear-gradient`){this._fillLinearGradient(e);return}var a=e.getFillRadialGradientColorStops();if(a&&n===`radial-gradient`){this._fillRadialGradient(e);return}t?this._fillColor(e):r?this._fillPattern(e):i?this._fillLinearGradient(e):a&&this._fillRadialGradient(e)}_strokeLinearGradient(e){var t=e.getStrokeLinearGradientStartPoint(),n=e.getStrokeLinearGradientEndPoint(),r=e.getStrokeLinearGradientColorStops(),i=this.createLinearGradient(t.x,t.y,n.x,n.y);if(r){for(var a=0;a<r.length;a+=2)i.addColorStop(r[a],r[a+1]);this.setAttr(`strokeStyle`,i)}}_stroke(e){var t=e.dash(),n=e.getStrokeScaleEnabled();if(e.hasStroke()){if(!n){this.save();var r=this.getCanvas().getPixelRatio();this.setTransform(r,0,0,r,0,0)}this._applyLineCap(e),t&&e.dashEnabled()&&(this.setLineDash(t),this.setAttr(`lineDashOffset`,e.dashOffset())),this.setAttr(`lineWidth`,e.strokeWidth()),e.getShadowForStrokeEnabled()||this.setAttr(`shadowColor`,`rgba(0,0,0,0)`),e.getStrokeLinearGradientColorStops()?this._strokeLinearGradient(e):this.setAttr(`strokeStyle`,e.stroke()),e._strokeFunc(this),n||this.restore()}}_applyShadow(e){var t=e.getShadowRGBA()??`black`,n=e.getShadowBlur()??5,r=e.getShadowOffset()??{x:0,y:0},i=e.getAbsoluteScale(),a=this.canvas.getPixelRatio(),o=i.x*a,s=i.y*a;this.setAttr(`shadowColor`,t),this.setAttr(`shadowBlur`,n*Math.min(Math.abs(o),Math.abs(s))),this.setAttr(`shadowOffsetX`,r.x*o),this.setAttr(`shadowOffsetY`,r.y*s)}},V_=class extends z_{_fill(e){this.save(),this.setAttr(`fillStyle`,e.colorKey),e._fillFuncHit(this),this.restore()}strokeShape(e){e.hasHitStroke()&&this._stroke(e)}_stroke(e){if(e.hasHitStroke()){var t=e.getStrokeScaleEnabled();if(!t){this.save();var n=this.getCanvas().getPixelRatio();this.setTransform(n,0,0,n,0,0)}this._applyLineCap(e);var r=e.hitStrokeWidth(),i=r===`auto`?e.strokeWidth():r;this.setAttr(`lineWidth`,i),this.setAttr(`strokeStyle`,e.colorKey),e._strokeFuncHit(this),t||this.restore()}}},H_;function U_(){if(H_)return H_;var e=Y.createCanvasElement().getContext(`2d`);return H_=(function(){return(J._global.devicePixelRatio||1)/(e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1)})(),H_}var W_=class{constructor(e){this.pixelRatio=1,this.width=0,this.height=0,this.isCache=!1;var t=(e||{}).pixelRatio||J.pixelRatio||U_();this.pixelRatio=t,this._canvas=Y.createCanvasElement(),this._canvas.style.padding=`0`,this._canvas.style.margin=`0`,this._canvas.style.border=`0`,this._canvas.style.background=`transparent`,this._canvas.style.position=`absolute`,this._canvas.style.top=`0`,this._canvas.style.left=`0`}getContext(){return this.context}getPixelRatio(){return this.pixelRatio}setPixelRatio(e){var t=this.pixelRatio;this.pixelRatio=e,this.setSize(this.getWidth()/t,this.getHeight()/t)}setWidth(e){this.width=this._canvas.width=e*this.pixelRatio,this._canvas.style.width=e+`px`;var t=this.pixelRatio;this.getContext()._context.scale(t,t)}setHeight(e){this.height=this._canvas.height=e*this.pixelRatio,this._canvas.style.height=e+`px`;var t=this.pixelRatio;this.getContext()._context.scale(t,t)}getWidth(){return this.width}getHeight(){return this.height}setSize(e,t){this.setWidth(e||0),this.setHeight(t||0)}toDataURL(e,t){try{return this._canvas.toDataURL(e,t)}catch{try{return this._canvas.toDataURL()}catch(e){return Y.error(`Unable to get data URL. `+e.message+` For more info read https://konvajs.org/docs/posts/Tainted_Canvas.html.`),``}}}};Z.addGetterSetter(W_,`pixelRatio`,void 0,X());var G_=class extends W_{constructor(e={width:0,height:0}){super(e),this.context=new B_(this),this.setSize(e.width,e.height)}},K_=class extends W_{constructor(e={width:0,height:0}){super(e),this.hitCanvas=!0,this.context=new V_(this),this.setSize(e.width,e.height)}},q_={get isDragging(){var e=!1;return q_._dragElements.forEach(t=>{t.dragStatus===`dragging`&&(e=!0)}),e},justDragged:!1,get node(){var e;return q_._dragElements.forEach(t=>{e=t.node}),e},_dragElements:new Map,_drag(e){let t=[];q_._dragElements.forEach((n,r)=>{let{node:i}=n,a=i.getStage();a.setPointersPositions(e),n.pointerId===void 0&&(n.pointerId=Y._getFirstPointerId(e));let o=a._changedPointerPositions.find(e=>e.id===n.pointerId);if(o){if(n.dragStatus!==`dragging`){var s=i.dragDistance();if(Math.max(Math.abs(o.x-n.startPointerPos.x),Math.abs(o.y-n.startPointerPos.y))<s||(i.startDrag({evt:e}),!i.isDragging()))return}i._setDragPosition(e,n),t.push(i)}}),t.forEach(t=>{t.fire(`dragmove`,{type:`dragmove`,target:t,evt:e},!0)})},_endDragBefore(e){q_._dragElements.forEach(t=>{let{node:n}=t,r=n.getStage();if(e&&r.setPointersPositions(e),!r._changedPointerPositions.find(e=>e.id===t.pointerId))return;(t.dragStatus===`dragging`||t.dragStatus===`stopped`)&&(q_.justDragged=!0,J._mouseListenClick=!1,J._touchListenClick=!1,J._pointerListenClick=!1,t.dragStatus=`stopped`);let i=t.node.getLayer()||t.node instanceof J.Stage&&t.node;i&&i.batchDraw()})},_endDragAfter(e){q_._dragElements.forEach((t,n)=>{t.dragStatus===`stopped`&&t.node.fire(`dragend`,{type:`dragend`,target:t.node,evt:e},!0),t.dragStatus!==`dragging`&&q_._dragElements.delete(n)})}};J.isBrowser&&(window.addEventListener(`mouseup`,q_._endDragBefore,!0),window.addEventListener(`touchend`,q_._endDragBefore,!0),window.addEventListener(`mousemove`,q_._drag),window.addEventListener(`touchmove`,q_._drag),window.addEventListener(`mouseup`,q_._endDragAfter,!1),window.addEventListener(`touchend`,q_._endDragAfter,!1));var J_=`absoluteOpacity`,Y_=`allEventListeners`,X_=`absoluteTransform`,Z_=`absoluteScale`,Q_=`canvas`,$_=`Change`,ev=`children`,tv=`konva`,nv=`listening`,rv=`mouseenter`,iv=`mouseleave`,av=`set`,ov=`Shape`,sv=` `,cv=`stage`,lv=`transform`,uv=`Stage`,dv=`visible`,fv=[`xChange.konva`,`yChange.konva`,`scaleXChange.konva`,`scaleYChange.konva`,`skewXChange.konva`,`skewYChange.konva`,`rotationChange.konva`,`offsetXChange.konva`,`offsetYChange.konva`,`transformsEnabledChange.konva`].join(sv),pv=1,Q=class e{constructor(e){this._id=pv++,this.eventListeners={},this.attrs={},this.index=0,this._allEventListeners=null,this.parent=null,this._cache=new Map,this._attachedDepsListeners=new Map,this._lastPos=null,this._batchingTransformChange=!1,this._needClearTransformCache=!1,this._filterUpToDate=!1,this._isUnderCache=!1,this._dragEventId=null,this._shouldFireChangeEvents=!1,this.setAttrs(e),this._shouldFireChangeEvents=!0}hasChildren(){return!1}_clearCache(e){(e===lv||e===X_)&&this._cache.get(e)?this._cache.get(e).dirty=!0:e?this._cache.delete(e):this._cache.clear()}_getCache(e,t){var n=this._cache.get(e);return(n===void 0||(e===lv||e===X_)&&n.dirty===!0)&&(n=t.call(this),this._cache.set(e,n)),n}_calculate(e,t,n){if(!this._attachedDepsListeners.get(e)){let n=t.map(e=>e+`Change.konva`).join(sv);this.on(n,()=>{this._clearCache(e)}),this._attachedDepsListeners.set(e,!0)}return this._getCache(e,n)}_getCanvasCache(){return this._cache.get(Q_)}_clearSelfAndDescendantCache(e){this._clearCache(e),e===X_&&this.fire(`absoluteTransformChange`)}clearCache(){return this._cache.delete(Q_),this._clearSelfAndDescendantCache(),this._requestDraw(),this}cache(e){var t=e||{},n={};(t.x===void 0||t.y===void 0||t.width===void 0||t.height===void 0)&&(n=this.getClientRect({skipTransform:!0,relativeTo:this.getParent()}));var r=Math.ceil(t.width||n.width),i=Math.ceil(t.height||n.height),a=t.pixelRatio,o=t.x===void 0?n.x:t.x,s=t.y===void 0?n.y:t.y,c=t.offset||0,l=t.drawBorder||!1,u=t.hitCanvasPixelRatio||1;if(!r||!i){Y.error(`Can not cache the node. Width or height of the node equals 0. Caching is skipped.`);return}r+=c*2,i+=c*2,o-=c,s-=c;var d=new G_({pixelRatio:a,width:r,height:i}),f=new G_({pixelRatio:a,width:0,height:0}),p=new K_({pixelRatio:u,width:r,height:i}),m=d.getContext(),h=p.getContext();return p.isCache=!0,d.isCache=!0,this._cache.delete(Q_),this._filterUpToDate=!1,t.imageSmoothingEnabled===!1&&(d.getContext()._context.imageSmoothingEnabled=!1,f.getContext()._context.imageSmoothingEnabled=!1),m.save(),h.save(),m.translate(-o,-s),h.translate(-o,-s),this._isUnderCache=!0,this._clearSelfAndDescendantCache(J_),this._clearSelfAndDescendantCache(Z_),this.drawScene(d,this),this.drawHit(p,this),this._isUnderCache=!1,m.restore(),h.restore(),l&&(m.save(),m.beginPath(),m.rect(0,0,r,i),m.closePath(),m.setAttr(`strokeStyle`,`red`),m.setAttr(`lineWidth`,5),m.stroke(),m.restore()),this._cache.set(Q_,{scene:d,filter:f,hit:p,x:o,y:s}),this._requestDraw(),this}isCached(){return this._cache.has(Q_)}getClientRect(e){throw Error(`abstract "getClientRect" method call`)}_transformedRect(e,t){var n=[{x:e.x,y:e.y},{x:e.x+e.width,y:e.y},{x:e.x+e.width,y:e.y+e.height},{x:e.x,y:e.y+e.height}],r,i,a,o,s=this.getAbsoluteTransform(t);return n.forEach(function(e){var t=s.point(e);r===void 0&&(r=a=t.x,i=o=t.y),r=Math.min(r,t.x),i=Math.min(i,t.y),a=Math.max(a,t.x),o=Math.max(o,t.y)}),{x:r,y:i,width:a-r,height:o-i}}_drawCachedSceneCanvas(e){e.save(),e._applyOpacity(this),e._applyGlobalCompositeOperation(this);let t=this._getCanvasCache();e.translate(t.x,t.y);var n=this._getCachedSceneCanvas(),r=n.pixelRatio;e.drawImage(n._canvas,0,0,n.width/r,n.height/r),e.restore()}_drawCachedHitCanvas(e){var t=this._getCanvasCache(),n=t.hit;e.save(),e.translate(t.x,t.y),e.drawImage(n._canvas,0,0,n.width/n.pixelRatio,n.height/n.pixelRatio),e.restore()}_getCachedSceneCanvas(){var e=this.filters(),t=this._getCanvasCache(),n=t.scene,r=t.filter,i=r.getContext(),a,o,s,c;if(e){if(!this._filterUpToDate){var l=n.pixelRatio;r.setSize(n.width/n.pixelRatio,n.height/n.pixelRatio);try{for(a=e.length,i.clear(),i.drawImage(n._canvas,0,0,n.getWidth()/l,n.getHeight()/l),o=i.getImageData(0,0,r.getWidth(),r.getHeight()),s=0;s<a;s++){if(c=e[s],typeof c!=`function`){Y.error(`Filter should be type of function, but got `+typeof c+` instead. Please check correct filters`);continue}c.call(this,o),i.putImageData(o,0,0)}}catch(e){Y.error(`Unable to apply filter. `+e.message+` This post my help you https://konvajs.org/docs/posts/Tainted_Canvas.html.`)}this._filterUpToDate=!0}return r}return n}on(e,t){if(this._cache&&this._cache.delete(Y_),arguments.length===3)return this._delegate.apply(this,arguments);var n=e.split(sv),r=n.length,i,a,o,s,c;for(i=0;i<r;i++)a=n[i],o=a.split(`.`),s=o[0],c=o[1]||``,this.eventListeners[s]||(this.eventListeners[s]=[]),this.eventListeners[s].push({name:c,handler:t});return this}off(e,t){var n=(e||``).split(sv),r=n.length,i,a,o,s,c,l;if(this._cache&&this._cache.delete(Y_),!e)for(a in this.eventListeners)this._off(a);for(i=0;i<r;i++)if(o=n[i],s=o.split(`.`),c=s[0],l=s[1],c)this.eventListeners[c]&&this._off(c,l,t);else for(a in this.eventListeners)this._off(a,l,t);return this}dispatchEvent(e){var t={target:this,type:e.type,evt:e};return this.fire(e.type,t),this}addEventListener(e,t){return this.on(e,function(e){t.call(this,e.evt)}),this}removeEventListener(e){return this.off(e),this}_delegate(e,t,n){var r=this;this.on(e,function(e){for(var i=e.target.findAncestors(t,!0,r),a=0;a<i.length;a++)e=Y.cloneObject(e),e.currentTarget=i[a],n.call(i[a],e)})}remove(){return this.isDragging()&&this.stopDrag(),q_._dragElements.delete(this._id),this._remove(),this}_clearCaches(){this._clearSelfAndDescendantCache(X_),this._clearSelfAndDescendantCache(J_),this._clearSelfAndDescendantCache(Z_),this._clearSelfAndDescendantCache(cv),this._clearSelfAndDescendantCache(dv),this._clearSelfAndDescendantCache(nv)}_remove(){this._clearCaches();var e=this.getParent();e&&e.children&&(e.children.splice(this.index,1),e._setChildrenIndices(),this.parent=null)}destroy(){return this.remove(),this}getAttr(e){var t=`get`+Y._capitalize(e);return Y._isFunction(this[t])?this[t]():this.attrs[e]}getAncestors(){for(var e=this.getParent(),t=[];e;)t.push(e),e=e.getParent();return t}getAttrs(){return this.attrs||{}}setAttrs(e){return this._batchTransformChanges(()=>{var t,n;if(!e)return this;for(t in e)t!==ev&&(n=av+Y._capitalize(t),Y._isFunction(this[n])?this[n](e[t]):this._setAttr(t,e[t]))}),this}isListening(){return this._getCache(nv,this._isListening)}_isListening(e){if(!this.listening())return!1;let t=this.getParent();return t&&t!==e&&this!==e?t._isListening(e):!0}isVisible(){return this._getCache(dv,this._isVisible)}_isVisible(e){if(!this.visible())return!1;let t=this.getParent();return t&&t!==e&&this!==e?t._isVisible(e):!0}shouldDrawHit(e,t=!1){if(e)return this._isVisible(e)&&this._isListening(e);var n=this.getLayer(),r=!1;q_._dragElements.forEach(e=>{e.dragStatus===`dragging`&&(e.node.nodeType===`Stage`||e.node.getLayer()===n)&&(r=!0)});var i=!t&&!J.hitOnDragEnabled&&r;return this.isListening()&&this.isVisible()&&!i}show(){return this.visible(!0),this}hide(){return this.visible(!1),this}getZIndex(){return this.index||0}getAbsoluteZIndex(){var e=this.getDepth(),t=this,n=0,r,i,a,o;function s(c){for(r=[],i=c.length,a=0;a<i;a++)o=c[a],n++,o.nodeType!==ov&&(r=r.concat(o.getChildren().slice())),o._id===t._id&&(a=i);r.length>0&&r[0].getDepth()<=e&&s(r)}return t.nodeType!==uv&&s(t.getStage().getChildren()),n}getDepth(){for(var e=0,t=this.parent;t;)e++,t=t.parent;return e}_batchTransformChanges(e){this._batchingTransformChange=!0,e(),this._batchingTransformChange=!1,this._needClearTransformCache&&(this._clearCache(lv),this._clearSelfAndDescendantCache(X_)),this._needClearTransformCache=!1}setPosition(e){return this._batchTransformChanges(()=>{this.x(e.x),this.y(e.y)}),this}getPosition(){return{x:this.x(),y:this.y()}}getRelativePointerPosition(){if(!this.getStage())return null;var e=this.getStage().getPointerPosition();if(!e)return null;var t=this.getAbsoluteTransform().copy();return t.invert(),t.point(e)}getAbsolutePosition(e){let t=!1,n=this.parent;for(;n;){if(n.isCached()){t=!0;break}n=n.parent}t&&!e&&(e=!0);var r=this.getAbsoluteTransform(e).getMatrix(),i=new $g,a=this.offset();return i.m=r.slice(),i.translate(a.x,a.y),i.getTranslation()}setAbsolutePosition(e){var t=this._clearTransform();this.attrs.x=t.x,this.attrs.y=t.y,delete t.x,delete t.y,this._clearCache(lv);var n=this._getAbsoluteTransform().copy();return n.invert(),n.translate(e.x,e.y),e={x:this.attrs.x+n.getTranslation().x,y:this.attrs.y+n.getTranslation().y},this._setTransform(t),this.setPosition({x:e.x,y:e.y}),this._clearCache(lv),this._clearSelfAndDescendantCache(X_),this}_setTransform(e){for(var t in e)this.attrs[t]=e[t]}_clearTransform(){var e={x:this.x(),y:this.y(),rotation:this.rotation(),scaleX:this.scaleX(),scaleY:this.scaleY(),offsetX:this.offsetX(),offsetY:this.offsetY(),skewX:this.skewX(),skewY:this.skewY()};return this.attrs.x=0,this.attrs.y=0,this.attrs.rotation=0,this.attrs.scaleX=1,this.attrs.scaleY=1,this.attrs.offsetX=0,this.attrs.offsetY=0,this.attrs.skewX=0,this.attrs.skewY=0,e}move(e){var t=e.x,n=e.y,r=this.x(),i=this.y();return t!==void 0&&(r+=t),n!==void 0&&(i+=n),this.setPosition({x:r,y:i}),this}_eachAncestorReverse(e,t){var n=[],r=this.getParent(),i,a;if(!(t&&t._id===this._id)){for(n.unshift(this);r&&(!t||r._id!==t._id);)n.unshift(r),r=r.parent;for(i=n.length,a=0;a<i;a++)e(n[a])}}rotate(e){return this.rotation(this.rotation()+e),this}moveToTop(){if(!this.parent)return Y.warn(`Node has no parent. moveToTop function is ignored.`),!1;var e=this.index;return this.parent.children.splice(e,1),this.parent.children.push(this),this.parent._setChildrenIndices(),!0}moveUp(){if(!this.parent)return Y.warn(`Node has no parent. moveUp function is ignored.`),!1;var e=this.index;return e<this.parent.getChildren().length-1?(this.parent.children.splice(e,1),this.parent.children.splice(e+1,0,this),this.parent._setChildrenIndices(),!0):!1}moveDown(){if(!this.parent)return Y.warn(`Node has no parent. moveDown function is ignored.`),!1;var e=this.index;return e>0?(this.parent.children.splice(e,1),this.parent.children.splice(e-1,0,this),this.parent._setChildrenIndices(),!0):!1}moveToBottom(){if(!this.parent)return Y.warn(`Node has no parent. moveToBottom function is ignored.`),!1;var e=this.index;return e>0?(this.parent.children.splice(e,1),this.parent.children.unshift(this),this.parent._setChildrenIndices(),!0):!1}setZIndex(e){if(!this.parent)return Y.warn(`Node has no parent. zIndex parameter is ignored.`),this;(e<0||e>=this.parent.children.length)&&Y.warn(`Unexpected value `+e+` for zIndex property. zIndex is just index of a node in children of its parent. Expected value is from 0 to `+(this.parent.children.length-1)+`.`);var t=this.index;return this.parent.children.splice(t,1),this.parent.children.splice(e,0,this),this.parent._setChildrenIndices(),this}getAbsoluteOpacity(){return this._getCache(J_,this._getAbsoluteOpacity)}_getAbsoluteOpacity(){var e=this.opacity(),t=this.getParent();return t&&!t._isUnderCache&&(e*=t.getAbsoluteOpacity()),e}moveTo(e){return this.getParent()!==e&&(this._remove(),e.add(this)),this}toObject(){var e={},t=this.getAttrs(),n,r,i,a,o;for(n in e.attrs={},t)r=t[n],o=Y.isObject(r)&&!Y._isPlainObject(r)&&!Y._isArray(r),!o&&(i=typeof this[n]==`function`&&this[n],delete t[n],a=i?i.call(this):null,t[n]=r,a!==r&&(e.attrs[n]=r));return e.className=this.getClassName(),Y._prepareToStringify(e)}toJSON(){return JSON.stringify(this.toObject())}getParent(){return this.parent}findAncestors(e,t,n){var r=[];t&&this._isMatch(e)&&r.push(this);for(var i=this.parent;i;){if(i===n)return r;i._isMatch(e)&&r.push(i),i=i.parent}return r}isAncestorOf(e){return!1}findAncestor(e,t,n){return this.findAncestors(e,t,n)[0]}_isMatch(e){if(!e)return!1;if(typeof e==`function`)return e(this);var t=e.replace(/ /g,``).split(`,`),n=t.length,r,i;for(r=0;r<n;r++)if(i=t[r],Y.isValidSelector(i)||(Y.warn(`Selector "`+i+`" is invalid. Allowed selectors examples are "#foo", ".bar" or "Group".`),Y.warn(`If you have a custom shape with such className, please change it to start with upper letter like "Triangle".`),Y.warn(`Konva is awesome, right?`)),i.charAt(0)===`#`){if(this.id()===i.slice(1))return!0}else if(i.charAt(0)===`.`){if(this.hasName(i.slice(1)))return!0}else if(this.className===i||this.nodeType===i)return!0;return!1}getLayer(){var e=this.getParent();return e?e.getLayer():null}getStage(){return this._getCache(cv,this._getStage)}_getStage(){var e=this.getParent();if(e)return e.getStage()}fire(e,t={},n){return t.target=t.target||this,n?this._fireAndBubble(e,t):this._fire(e,t),this}getAbsoluteTransform(e){return e?this._getAbsoluteTransform(e):this._getCache(X_,this._getAbsoluteTransform)}_getAbsoluteTransform(e){var t;if(e)return t=new $g,this._eachAncestorReverse(function(e){var n=e.transformsEnabled();n===`all`?t.multiply(e.getTransform()):n===`position`&&t.translate(e.x()-e.offsetX(),e.y()-e.offsetY())},e),t;t=this._cache.get(X_)||new $g,this.parent?this.parent.getAbsoluteTransform().copyInto(t):t.reset();var n=this.transformsEnabled();if(n===`all`)t.multiply(this.getTransform());else if(n===`position`){let e=this.attrs.x||0,n=this.attrs.y||0,r=this.attrs.offsetX||0,i=this.attrs.offsetY||0;t.translate(e-r,n-i)}return t.dirty=!1,t}getAbsoluteScale(e){for(var t=this;t;)t._isUnderCache&&(e=t),t=t.getParent();let n=this.getAbsoluteTransform(e).decompose();return{x:n.scaleX,y:n.scaleY}}getAbsoluteRotation(){return this.getAbsoluteTransform().decompose().rotation}getTransform(){return this._getCache(lv,this._getTransform)}_getTransform(){var e=this._cache.get(lv)||new $g;e.reset();var t=this.x(),n=this.y(),r=J.getAngle(this.rotation()),i=this.attrs.scaleX??1,a=this.attrs.scaleY??1,o=this.attrs.skewX||0,s=this.attrs.skewY||0,c=this.attrs.offsetX||0,l=this.attrs.offsetY||0;return(t!==0||n!==0)&&e.translate(t,n),r!==0&&e.rotate(r),(o!==0||s!==0)&&e.skew(o,s),(i!==1||a!==1)&&e.scale(i,a),(c!==0||l!==0)&&e.translate(-1*c,-1*l),e.dirty=!1,e}clone(e){var t=Y.cloneObject(this.attrs),n,r,i,a,o;for(n in e)t[n]=e[n];var s=new this.constructor(t);for(n in this.eventListeners)for(r=this.eventListeners[n],i=r.length,a=0;a<i;a++)o=r[a],o.name.indexOf(tv)<0&&(s.eventListeners[n]||(s.eventListeners[n]=[]),s.eventListeners[n].push(o));return s}_toKonvaCanvas(e){e||={};var t=this.getClientRect(),n=this.getStage(),r=e.x===void 0?t.x:e.x,i=e.y===void 0?t.y:e.y,a=e.pixelRatio||1,o=new G_({width:e.width||t.width||(n?n.width():0),height:e.height||t.height||(n?n.height():0),pixelRatio:a}),s=o.getContext();return s.save(),(r||i)&&s.translate(-1*r,-1*i),this.drawScene(o),s.restore(),o}toCanvas(e){return this._toKonvaCanvas(e)._canvas}toDataURL(e){e||={};var t=e.mimeType||null,n=e.quality||null,r=this._toKonvaCanvas(e).toDataURL(t,n);return e.callback&&e.callback(r),r}toImage(e){if(!e||!e.callback)throw`callback required for toImage method config argument`;var t=e.callback;delete e.callback,Y._urlToImage(this.toDataURL(e),function(e){t(e)})}setSize(e){return this.width(e.width),this.height(e.height),this}getSize(){return{width:this.width(),height:this.height()}}getClassName(){return this.className||this.nodeType}getType(){return this.nodeType}getDragDistance(){return this.attrs.dragDistance===void 0?this.parent?this.parent.getDragDistance():J.dragDistance:this.attrs.dragDistance}_off(e,t,n){var r=this.eventListeners[e],i,a,o;for(i=0;i<r.length;i++)if(a=r[i].name,o=r[i].handler,(a!==`konva`||t===`konva`)&&(!t||a===t)&&(!n||n===o)){if(r.splice(i,1),r.length===0){delete this.eventListeners[e];break}i--}}_fireChangeEvent(e,t,n){this._fire(e+$_,{oldVal:t,newVal:n})}addName(e){if(!this.hasName(e)){var t=this.name(),n=t?t+` `+e:e;this.name(n)}return this}hasName(e){if(!e)return!1;let t=this.name();return t?(t||``).split(/\s/g).indexOf(e)!==-1:!1}removeName(e){var t=(this.name()||``).split(/\s/g),n=t.indexOf(e);return n!==-1&&(t.splice(n,1),this.name(t.join(` `))),this}setAttr(e,t){var n=this[av+Y._capitalize(e)];return Y._isFunction(n)?n.call(this,t):this._setAttr(e,t),this}_requestDraw(){J.autoDrawEnabled&&(this.getLayer()||this.getStage())?.batchDraw()}_setAttr(e,t){var n=this.attrs[e];n===t&&!Y.isObject(t)||(t==null?delete this.attrs[e]:this.attrs[e]=t,this._shouldFireChangeEvents&&this._fireChangeEvent(e,n,t),this._requestDraw())}_setComponentAttr(e,t,n){var r;n!==void 0&&(r=this.attrs[e],r||(this.attrs[e]=this.getAttr(e)),this.attrs[e][t]=n,this._fireChangeEvent(e,r,n))}_fireAndBubble(e,t,n){if(t&&this.nodeType===ov&&(t.target=this),!((e===rv||e===iv)&&(n&&(this===n||this.isAncestorOf&&this.isAncestorOf(n))||this.nodeType===`Stage`&&!n))){this._fire(e,t);var r=(e===rv||e===iv)&&n&&n.isAncestorOf&&n.isAncestorOf(this)&&!n.isAncestorOf(this.parent);(t&&!t.cancelBubble||!t)&&this.parent&&this.parent.isListening()&&!r&&(n&&n.parent?this._fireAndBubble.call(this.parent,e,t,n):this._fireAndBubble.call(this.parent,e,t))}}_getProtoListeners(e){let t=this._cache.get(Y_);if(!t){t={};let e=Object.getPrototypeOf(this);for(;e;){if(!e.eventListeners){e=Object.getPrototypeOf(e);continue}for(var n in e.eventListeners){let r=e.eventListeners[n],i=t[n]||[];t[n]=r.concat(i)}e=Object.getPrototypeOf(e)}this._cache.set(Y_,t)}return t[e]}_fire(e,t){t||={},t.currentTarget=this,t.type=e;let n=this._getProtoListeners(e);if(n)for(var r=0;r<n.length;r++)n[r].handler.call(this,t);let i=this.eventListeners[e];if(i)for(var r=0;r<i.length;r++)i[r].handler.call(this,t)}draw(){return this.drawScene(),this.drawHit(),this}_createDragElement(e){var t=e?e.pointerId:void 0,n=this.getStage(),r=this.getAbsolutePosition(),i=n._getPointerById(t)||n._changedPointerPositions[0]||r;q_._dragElements.set(this._id,{node:this,startPointerPos:i,offset:{x:i.x-r.x,y:i.y-r.y},dragStatus:`ready`,pointerId:t})}startDrag(e,t=!0){q_._dragElements.has(this._id)||this._createDragElement(e);let n=q_._dragElements.get(this._id);n.dragStatus=`dragging`,this.fire(`dragstart`,{type:`dragstart`,target:this,evt:e&&e.evt},t)}_setDragPosition(e,t){let n=this.getStage()._getPointerById(t.pointerId);if(n){var r={x:n.x-t.offset.x,y:n.y-t.offset.y},i=this.dragBoundFunc();if(i!==void 0){let t=i.call(this,r,e);t?r=t:Y.warn(`dragBoundFunc did not return any value. That is unexpected behavior. You must return new absolute position from dragBoundFunc.`)}(!this._lastPos||this._lastPos.x!==r.x||this._lastPos.y!==r.y)&&(this.setAbsolutePosition(r),this._requestDraw()),this._lastPos=r}}stopDrag(e){let t=q_._dragElements.get(this._id);t&&(t.dragStatus=`stopped`),q_._endDragBefore(e),q_._endDragAfter(e)}setDraggable(e){this._setAttr(`draggable`,e),this._dragChange()}isDragging(){let e=q_._dragElements.get(this._id);return e?e.dragStatus===`dragging`:!1}_listenDrag(){this._dragCleanup(),this.on(`mousedown.konva touchstart.konva`,function(e){if((e.evt.button===void 0||J.dragButtons.indexOf(e.evt.button)>=0)&&!this.isDragging()){var t=!1;q_._dragElements.forEach(e=>{this.isAncestorOf(e.node)&&(t=!0)}),t||this._createDragElement(e)}})}_dragChange(){if(this.attrs.draggable)this._listenDrag();else{if(this._dragCleanup(),!this.getStage())return;let e=q_._dragElements.get(this._id),t=e&&e.dragStatus===`dragging`,n=e&&e.dragStatus===`ready`;t?this.stopDrag():n&&q_._dragElements.delete(this._id)}}_dragCleanup(){this.off(`mousedown.konva`),this.off(`touchstart.konva`)}isClientRectOnScreen(e={x:0,y:0}){let t=this.getStage();if(!t)return!1;let n={x:-e.x,y:-e.y,width:t.width()+e.x,height:t.height()+e.y};return Y.haveIntersection(n,this.getClientRect())}static create(e,t){return Y._isString(e)&&(e=JSON.parse(e)),this._createNode(e,t)}static _createNode(t,n){var r=e.prototype.getClassName.call(t),i=t.children,a,o,s;n&&(t.attrs.container=n),J[r]||(Y.warn(`Can not find a node with class name "`+r+`". Fallback to "Shape".`),r=`Shape`);let c=J[r];if(a=new c(t.attrs),i)for(o=i.length,s=0;s<o;s++)a.add(e._createNode(i[s]));return a}};Q.prototype.nodeType=`Node`,Q.prototype._attrsAffectingSize=[],Q.prototype.eventListeners={},Q.prototype.on.call(Q.prototype,fv,function(){if(this._batchingTransformChange){this._needClearTransformCache=!0;return}this._clearCache(lv),this._clearSelfAndDescendantCache(X_)}),Q.prototype.on.call(Q.prototype,`visibleChange.konva`,function(){this._clearSelfAndDescendantCache(dv)}),Q.prototype.on.call(Q.prototype,`listeningChange.konva`,function(){this._clearSelfAndDescendantCache(nv)}),Q.prototype.on.call(Q.prototype,`opacityChange.konva`,function(){this._clearSelfAndDescendantCache(J_)});var mv=Z.addGetterSetter;mv(Q,`zIndex`),mv(Q,`absolutePosition`),mv(Q,`position`),mv(Q,`x`,0,X()),mv(Q,`y`,0,X()),mv(Q,`globalCompositeOperation`,`source-over`,b_()),mv(Q,`opacity`,1,X()),mv(Q,`name`,``,b_()),mv(Q,`id`,``,b_()),mv(Q,`rotation`,0,X()),Z.addComponentsGetterSetter(Q,`scale`,[`x`,`y`]),mv(Q,`scaleX`,1,X()),mv(Q,`scaleY`,1,X()),Z.addComponentsGetterSetter(Q,`skew`,[`x`,`y`]),mv(Q,`skewX`,0,X()),mv(Q,`skewY`,0,X()),Z.addComponentsGetterSetter(Q,`offset`,[`x`,`y`]),mv(Q,`offsetX`,0,X()),mv(Q,`offsetY`,0,X()),mv(Q,`dragDistance`,null,X()),mv(Q,`width`,0,X()),mv(Q,`height`,0,X()),mv(Q,`listening`,!0,C_()),mv(Q,`preventDefault`,!0,C_()),mv(Q,`filters`,null,function(e){return this._filterUpToDate=!1,e}),mv(Q,`visible`,!0,C_()),mv(Q,`transformsEnabled`,`all`,b_()),mv(Q,`size`),mv(Q,`dragBoundFunc`),mv(Q,`draggable`,!1,C_()),Z.backCompat(Q,{rotateDeg:`rotate`,setRotationDeg:`setRotation`,getRotationDeg:`getRotation`});var hv=class extends Q{constructor(){super(...arguments),this.children=[]}getChildren(e){if(!e)return this.children||[];let t=this.children||[];var n=[];return t.forEach(function(t){e(t)&&n.push(t)}),n}hasChildren(){return this.getChildren().length>0}removeChildren(){return this.getChildren().forEach(e=>{e.parent=null,e.index=0,e.remove()}),this.children=[],this._requestDraw(),this}destroyChildren(){return this.getChildren().forEach(e=>{e.parent=null,e.index=0,e.destroy()}),this.children=[],this._requestDraw(),this}add(...e){if(arguments.length>1){for(var t=0;t<arguments.length;t++)this.add(arguments[t]);return this}var n=e[0];return n.getParent()?(n.moveTo(this),this):(this._validateAdd(n),n.index=this.getChildren().length,n.parent=this,n._clearCaches(),this.getChildren().push(n),this._fire(`add`,{child:n}),this._requestDraw(),this)}destroy(){return this.hasChildren()&&this.destroyChildren(),super.destroy(),this}find(e){return this._generalFind(e,!1)}findOne(e){var t=this._generalFind(e,!0);return t.length>0?t[0]:void 0}_generalFind(e,t){var n=[];return this._descendants(r=>{let i=r._isMatch(e);return i&&n.push(r),!!(i&&t)}),n}_descendants(e){let t=!1,n=this.getChildren();for(let r of n)if(t=e(r),t||r.hasChildren()&&(t=r._descendants(e),t))return!0;return!1}toObject(){var e=Q.prototype.toObject.call(this);return e.children=[],this.getChildren().forEach(t=>{e.children.push(t.toObject())}),e}isAncestorOf(e){for(var t=e.getParent();t;){if(t._id===this._id)return!0;t=t.getParent()}return!1}clone(e){var t=Q.prototype.clone.call(this,e);return this.getChildren().forEach(function(e){t.add(e.clone())}),t}getAllIntersections(e){var t=[];return this.find(`Shape`).forEach(function(n){n.isVisible()&&n.intersects(e)&&t.push(n)}),t}_clearSelfAndDescendantCache(e){var t;super._clearSelfAndDescendantCache(e),!this.isCached()&&((t=this.children)==null||t.forEach(function(t){t._clearSelfAndDescendantCache(e)}))}_setChildrenIndices(){var e;(e=this.children)==null||e.forEach(function(e,t){e.index=t}),this._requestDraw()}drawScene(e,t){var n=this.getLayer(),r=e||n&&n.getCanvas(),i=r&&r.getContext(),a=this._getCanvasCache(),o=a&&a.scene,s=r&&r.isCache;if(!this.isVisible()&&!s)return this;if(o){i.save();var c=this.getAbsoluteTransform(t).getMatrix();i.transform(c[0],c[1],c[2],c[3],c[4],c[5]),this._drawCachedSceneCanvas(i),i.restore()}else this._drawChildren(`drawScene`,r,t);return this}drawHit(e,t){if(!this.shouldDrawHit(t))return this;var n=this.getLayer(),r=e||n&&n.hitCanvas,i=r&&r.getContext(),a=this._getCanvasCache();if(a&&a.hit){i.save();var o=this.getAbsoluteTransform(t).getMatrix();i.transform(o[0],o[1],o[2],o[3],o[4],o[5]),this._drawCachedHitCanvas(i),i.restore()}else this._drawChildren(`drawHit`,r,t);return this}_drawChildren(e,t,n){var r,i=t&&t.getContext(),a=this.clipWidth(),o=this.clipHeight(),s=this.clipFunc(),c=a&&o||s;let l=n===this;if(c){i.save();var u=this.getAbsoluteTransform(n),d=u.getMatrix();if(i.transform(d[0],d[1],d[2],d[3],d[4],d[5]),i.beginPath(),s)s.call(this,i,this);else{var f=this.clipX(),p=this.clipY();i.rect(f,p,a,o)}i.clip(),d=u.copy().invert().getMatrix(),i.transform(d[0],d[1],d[2],d[3],d[4],d[5])}var m=!l&&this.globalCompositeOperation()!==`source-over`&&e===`drawScene`;m&&(i.save(),i._applyGlobalCompositeOperation(this)),(r=this.children)==null||r.forEach(function(r){r[e](t,n)}),m&&i.restore(),c&&i.restore()}getClientRect(e){var t;e||={};var n=e.skipTransform,r=e.relativeTo,i,a,o,s,c={x:1/0,y:1/0,width:0,height:0},l=this;(t=this.children)==null||t.forEach(function(t){if(t.visible()){var n=t.getClientRect({relativeTo:l,skipShadow:e.skipShadow,skipStroke:e.skipStroke});n.width===0&&n.height===0||(i===void 0?(i=n.x,a=n.y,o=n.x+n.width,s=n.y+n.height):(i=Math.min(i,n.x),a=Math.min(a,n.y),o=Math.max(o,n.x+n.width),s=Math.max(s,n.y+n.height)))}});for(var u=this.find(`Shape`),d=!1,f=0;f<u.length;f++)if(u[f]._isVisible(this)){d=!0;break}return c=d&&i!==void 0?{x:i,y:a,width:o-i,height:s-a}:{x:0,y:0,width:0,height:0},n?c:this._transformedRect(c,r)}};Z.addComponentsGetterSetter(hv,`clip`,[`x`,`y`,`width`,`height`]),Z.addGetterSetter(hv,`clipX`,void 0,X()),Z.addGetterSetter(hv,`clipY`,void 0,X()),Z.addGetterSetter(hv,`clipWidth`,void 0,X()),Z.addGetterSetter(hv,`clipHeight`,void 0,X()),Z.addGetterSetter(hv,`clipFunc`);var gv=new Map,_v=J._global.PointerEvent!==void 0;function vv(e){return gv.get(e)}function yv(e){return{evt:e,pointerId:e.pointerId}}function bv(e,t){return gv.get(e)===t}function xv(e,t){Sv(e),t.getStage()&&(gv.set(e,t),_v&&t._fire(`gotpointercapture`,yv(new PointerEvent(`gotpointercapture`))))}function Sv(e,t){let n=gv.get(e);if(!n)return;let r=n.getStage();r&&r.content,gv.delete(e),_v&&n._fire(`lostpointercapture`,yv(new PointerEvent(`lostpointercapture`)))}var Cv=`Stage`,wv=`string`,Tv=`px`,Ev=`mouseout`,Dv=`mouseleave`,Ov=`mouseover`,kv=`mouseenter`,Av=`mousemove`,jv=`mousedown`,Mv=`mouseup`,Nv=`pointermove`,Pv=`pointerdown`,Fv=`pointerup`,Iv=`pointercancel`,Lv=`lostpointercapture`,Rv=`pointerout`,zv=`pointerleave`,Bv=`pointerover`,Vv=`pointerenter`,Hv=`contextmenu`,Uv=`touchstart`,Wv=`touchend`,Gv=`touchmove`,Kv=`touchcancel`,qv=`wheel`,Jv=5,Yv=[[kv,`_pointerenter`],[jv,`_pointerdown`],[Av,`_pointermove`],[Mv,`_pointerup`],[Dv,`_pointerleave`],[Uv,`_pointerdown`],[Gv,`_pointermove`],[Wv,`_pointerup`],[Kv,`_pointercancel`],[Ov,`_pointerover`],[qv,`_wheel`],[Hv,`_contextmenu`],[Pv,`_pointerdown`],[Nv,`_pointermove`],[Fv,`_pointerup`],[Iv,`_pointercancel`],[Lv,`_lostpointercapture`]],Xv={mouse:{[Rv]:Ev,[zv]:Dv,[Bv]:Ov,[Vv]:kv,[Nv]:Av,[Pv]:jv,[Fv]:Mv,[Iv]:`mousecancel`,pointerclick:`click`,pointerdblclick:`dblclick`},touch:{[Rv]:`touchout`,[zv]:`touchleave`,[Bv]:`touchover`,[Vv]:`touchenter`,[Nv]:Gv,[Pv]:Uv,[Fv]:Wv,[Iv]:Kv,pointerclick:`tap`,pointerdblclick:`dbltap`},pointer:{[Rv]:Rv,[zv]:zv,[Bv]:Bv,[Vv]:Vv,[Nv]:Nv,[Pv]:Pv,[Fv]:Fv,[Iv]:Iv,pointerclick:`pointerclick`,pointerdblclick:`pointerdblclick`}},Zv=e=>e.indexOf(`pointer`)>=0?`pointer`:e.indexOf(`touch`)>=0?`touch`:`mouse`,Qv=e=>{let t=Zv(e);if(t===`pointer`)return J.pointerEventsEnabled&&Xv.pointer;if(t===`touch`)return Xv.touch;if(t===`mouse`)return Xv.mouse};function $v(e={}){return(e.clipFunc||e.clipWidth||e.clipHeight)&&Y.warn(`Stage does not support clipping. Please use clip for Layers or Groups.`),e}var ey=`Pointer position is missing and not registered by the stage. Looks like it is outside of the stage container. You can set it manually from event: stage.setPointersPositions(event);`,ty=[],ny=class extends hv{constructor(e){super($v(e)),this._pointerPositions=[],this._changedPointerPositions=[],this._buildDOM(),this._bindContentEvents(),ty.push(this),this.on(`widthChange.konva heightChange.konva`,this._resizeDOM),this.on(`visibleChange.konva`,this._checkVisibility),this.on(`clipWidthChange.konva clipHeightChange.konva clipFuncChange.konva`,()=>{$v(this.attrs)}),this._checkVisibility()}_validateAdd(e){let t=e.getType()===`Layer`,n=e.getType()===`FastLayer`;t||n||Y.throw(`You may only add layers to the stage.`)}_checkVisibility(){if(!this.content)return;let e=this.visible()?``:`none`;this.content.style.display=e}setContainer(e){if(typeof e===wv){if(e.charAt(0)===`.`){var t=e.slice(1);e=document.getElementsByClassName(t)[0]}else{var n=e.charAt(0)===`#`?e.slice(1):e;e=document.getElementById(n)}if(!e)throw`Can not find container in document with id `+n}return this._setAttr(`container`,e),this.content&&(this.content.parentElement&&this.content.parentElement.removeChild(this.content),e.appendChild(this.content)),this}shouldDrawHit(){return!0}clear(){var e=this.children,t=e.length,n;for(n=0;n<t;n++)e[n].clear();return this}clone(e){return e||={},e.container=typeof document<`u`&&document.createElement(`div`),hv.prototype.clone.call(this,e)}destroy(){super.destroy();var e=this.content;e&&Y._isInDocument(e)&&this.container().removeChild(e);var t=ty.indexOf(this);return t>-1&&ty.splice(t,1),this}getPointerPosition(){let e=this._pointerPositions[0]||this._changedPointerPositions[0];return e?{x:e.x,y:e.y}:(Y.warn(ey),null)}_getPointerById(e){return this._pointerPositions.find(t=>t.id===e)}getPointersPositions(){return this._pointerPositions}getStage(){return this}getContent(){return this.content}_toKonvaCanvas(e){e||={},e.x=e.x||0,e.y=e.y||0,e.width=e.width||this.width(),e.height=e.height||this.height();var t=new G_({width:e.width,height:e.height,pixelRatio:e.pixelRatio||1}),n=t.getContext()._context,r=this.children;return(e.x||e.y)&&n.translate(-1*e.x,-1*e.y),r.forEach(function(t){if(t.isVisible()){var r=t._toKonvaCanvas(e);n.drawImage(r._canvas,e.x,e.y,r.getWidth()/r.getPixelRatio(),r.getHeight()/r.getPixelRatio())}}),t}getIntersection(e){if(!e)return null;var t=this.children,n=t.length-1,r;for(r=n;r>=0;r--){let n=t[r].getIntersection(e);if(n)return n}return null}_resizeDOM(){var e=this.width(),t=this.height();this.content&&(this.content.style.width=e+Tv,this.content.style.height=t+Tv),this.bufferCanvas.setSize(e,t),this.bufferHitCanvas.setSize(e,t),this.children.forEach(n=>{n.setSize({width:e,height:t}),n.draw()})}add(e,...t){if(arguments.length>1){for(var n=0;n<arguments.length;n++)this.add(arguments[n]);return this}super.add(e);var r=this.children.length;return r>Jv&&Y.warn(`The stage has `+r+` layers. Recommended maximum number of layers is 3-5. Adding more layers into the stage may drop the performance. Rethink your tree structure, you can use Konva.Group.`),e.setSize({width:this.width(),height:this.height()}),e.draw(),J.isBrowser&&this.content.appendChild(e.canvas._canvas),this}getParent(){return null}getLayer(){return null}hasPointerCapture(e){return bv(e,this)}setPointerCapture(e){xv(e,this)}releaseCapture(e){Sv(e,this)}getLayers(){return this.children}_bindContentEvents(){J.isBrowser&&Yv.forEach(([e,t])=>{this.content.addEventListener(e,e=>{this[t](e)})})}_pointerenter(e){this.setPointersPositions(e);let t=Qv(e.type);this._fire(t.pointerenter,{evt:e,target:this,currentTarget:this})}_pointerover(e){this.setPointersPositions(e);let t=Qv(e.type);this._fire(t.pointerover,{evt:e,target:this,currentTarget:this})}_getTargetShape(e){let t=this[e+`targetShape`];return t&&!t.getStage()&&(t=null),t}_pointerleave(e){let t=Qv(e.type),n=Zv(e.type);if(t){this.setPointersPositions(e);var r=this._getTargetShape(n),i=!q_.isDragging||J.hitOnDragEnabled;r&&i?(r._fireAndBubble(t.pointerout,{evt:e}),r._fireAndBubble(t.pointerleave,{evt:e}),this._fire(t.pointerleave,{evt:e,target:this,currentTarget:this}),this[n+`targetShape`]=null):i&&(this._fire(t.pointerleave,{evt:e,target:this,currentTarget:this}),this._fire(t.pointerout,{evt:e,target:this,currentTarget:this})),this.pointerPos=void 0,this._pointerPositions=[]}}_pointerdown(e){let t=Qv(e.type),n=Zv(e.type);if(t){this.setPointersPositions(e);var r=!1;this._changedPointerPositions.forEach(i=>{var a=this.getIntersection(i);if(q_.justDragged=!1,J[`_`+n+`ListenClick`]=!0,!(a&&a.isListening()))return;J.capturePointerEventsEnabled&&a.setPointerCapture(i.id),this[n+`ClickStartShape`]=a,a._fireAndBubble(t.pointerdown,{evt:e,pointerId:i.id}),r=!0;let o=e.type.indexOf(`touch`)>=0;a.preventDefault()&&e.cancelable&&o&&e.preventDefault()}),r||this._fire(t.pointerdown,{evt:e,target:this,currentTarget:this,pointerId:this._pointerPositions[0].id})}}_pointermove(e){let t=Qv(e.type),n=Zv(e.type);if(!t||(q_.isDragging&&q_.node.preventDefault()&&e.cancelable&&e.preventDefault(),this.setPointersPositions(e),!(!q_.isDragging||J.hitOnDragEnabled)))return;var r={};let i=!1;var a=this._getTargetShape(n);this._changedPointerPositions.forEach(o=>{let s=vv(o.id)||this.getIntersection(o),c=o.id,l={evt:e,pointerId:c};var u=a!==s;if(u&&a&&(a._fireAndBubble(t.pointerout,Object.assign({},l),s),a._fireAndBubble(t.pointerleave,Object.assign({},l),s)),s){if(r[s._id])return;r[s._id]=!0}s&&s.isListening()?(i=!0,u&&(s._fireAndBubble(t.pointerover,Object.assign({},l),a),s._fireAndBubble(t.pointerenter,Object.assign({},l),a),this[n+`targetShape`]=s),s._fireAndBubble(t.pointermove,Object.assign({},l))):a&&(this._fire(t.pointerover,{evt:e,target:this,currentTarget:this,pointerId:c}),this[n+`targetShape`]=null)}),i||this._fire(t.pointermove,{evt:e,target:this,currentTarget:this,pointerId:this._changedPointerPositions[0].id})}_pointerup(e){let t=Qv(e.type),n=Zv(e.type);if(!t)return;this.setPointersPositions(e);let r=this[n+`ClickStartShape`],i=this[n+`ClickEndShape`];var a={};let o=!1;this._changedPointerPositions.forEach(s=>{let c=vv(s.id)||this.getIntersection(s);if(c){if(c.releaseCapture(s.id),a[c._id])return;a[c._id]=!0}let l=s.id,u={evt:e,pointerId:l},d=!1;J[`_`+n+`InDblClickWindow`]&&J[`_`+n+`InDblClickWindowId`]===l?(d=!0,clearTimeout(this[n+`DblTimeout`])):q_.justDragged||(J[`_`+n+`InDblClickWindow`]=!0,J[`_`+n+`InDblClickWindowId`]=l,clearTimeout(this[n+`DblTimeout`])),this[n+`DblTimeout`]=setTimeout(function(){J[`_`+n+`InDblClickWindow`]=!1},J.dblClickWindow),c&&c.isListening()?(o=!0,this[n+`ClickEndShape`]=c,c._fireAndBubble(t.pointerup,Object.assign({},u)),J[`_`+n+`ListenClick`]&&r&&r===c&&(c._fireAndBubble(t.pointerclick,Object.assign({},u)),d&&i&&i===c&&c._fireAndBubble(t.pointerdblclick,Object.assign({},u)))):(this[n+`ClickEndShape`]=null,J[`_`+n+`ListenClick`]&&this._fire(t.pointerclick,{evt:e,target:this,currentTarget:this,pointerId:l}),d&&this._fire(t.pointerdblclick,{evt:e,target:this,currentTarget:this,pointerId:l}))}),o||this._fire(t.pointerup,{evt:e,target:this,currentTarget:this,pointerId:this._changedPointerPositions[0].id}),J[`_`+n+`ListenClick`]=!1,e.cancelable&&e.preventDefault()}_contextmenu(e){this.setPointersPositions(e);var t=this.getIntersection(this.getPointerPosition());t&&t.isListening()?t._fireAndBubble(Hv,{evt:e}):this._fire(Hv,{evt:e,target:this,currentTarget:this})}_wheel(e){this.setPointersPositions(e);var t=this.getIntersection(this.getPointerPosition());t&&t.isListening()?t._fireAndBubble(qv,{evt:e}):this._fire(qv,{evt:e,target:this,currentTarget:this})}_pointercancel(e){this.setPointersPositions(e);let t=vv(e.pointerId)||this.getIntersection(this.getPointerPosition());t&&t._fireAndBubble(Fv,yv(e)),Sv(e.pointerId)}_lostpointercapture(e){Sv(e.pointerId)}setPointersPositions(e){var t=this._getContentPosition(),n=null,r=null;e||=window.event,e.touches===void 0?(n=(e.clientX-t.left)/t.scaleX,r=(e.clientY-t.top)/t.scaleY,this.pointerPos={x:n,y:r},this._pointerPositions=[{x:n,y:r,id:Y._getFirstPointerId(e)}],this._changedPointerPositions=[{x:n,y:r,id:Y._getFirstPointerId(e)}]):(this._pointerPositions=[],this._changedPointerPositions=[],Array.prototype.forEach.call(e.touches,e=>{this._pointerPositions.push({id:e.identifier,x:(e.clientX-t.left)/t.scaleX,y:(e.clientY-t.top)/t.scaleY})}),Array.prototype.forEach.call(e.changedTouches||e.touches,e=>{this._changedPointerPositions.push({id:e.identifier,x:(e.clientX-t.left)/t.scaleX,y:(e.clientY-t.top)/t.scaleY})}))}_setPointerPosition(e){Y.warn(`Method _setPointerPosition is deprecated. Use "stage.setPointersPositions(event)" instead.`),this.setPointersPositions(e)}_getContentPosition(){if(!this.content||!this.content.getBoundingClientRect)return{top:0,left:0,scaleX:1,scaleY:1};var e=this.content.getBoundingClientRect();return{top:e.top,left:e.left,scaleX:e.width/this.content.clientWidth||1,scaleY:e.height/this.content.clientHeight||1}}_buildDOM(){if(this.bufferCanvas=new G_({width:this.width(),height:this.height()}),this.bufferHitCanvas=new K_({pixelRatio:1,width:this.width(),height:this.height()}),J.isBrowser){var e=this.container();if(!e)throw`Stage has no container. A container is required.`;e.innerHTML=``,this.content=document.createElement(`div`),this.content.style.position=`relative`,this.content.style.userSelect=`none`,this.content.className=`konvajs-content`,this.content.setAttribute(`role`,`presentation`),e.appendChild(this.content),this._resizeDOM()}}cache(){return Y.warn(`Cache function is not allowed for stage. You may use cache only for layers, groups and shapes.`),this}clearCache(){return this}batchDraw(){return this.getChildren().forEach(function(e){e.batchDraw()}),this}};ny.prototype.nodeType=Cv,Qg(ny),Z.addGetterSetter(ny,`container`);var ry=`hasShadow`,iy=`shadowRGBA`,ay=`patternImage`,oy=`linearGradient`,sy=`radialGradient`,cy;function ly(){return cy||(cy=Y.createCanvasElement().getContext(`2d`),cy)}var uy={};function dy(e){e.fill()}function fy(e){e.stroke()}function py(e){e.fill()}function my(e){e.stroke()}function hy(){this._clearCache(ry)}function gy(){this._clearCache(iy)}function _y(){this._clearCache(ay)}function vy(){this._clearCache(oy)}function yy(){this._clearCache(sy)}var $=class extends Q{constructor(e){super(e);let t;for(;t=Y.getRandomColor(),!(t&&!(t in uy)););this.colorKey=t,uy[t]=this}getContext(){return Y.warn(`shape.getContext() method is deprecated. Please do not use it.`),this.getLayer().getContext()}getCanvas(){return Y.warn(`shape.getCanvas() method is deprecated. Please do not use it.`),this.getLayer().getCanvas()}getSceneFunc(){return this.attrs.sceneFunc||this._sceneFunc}getHitFunc(){return this.attrs.hitFunc||this._hitFunc}hasShadow(){return this._getCache(ry,this._hasShadow)}_hasShadow(){return this.shadowEnabled()&&this.shadowOpacity()!==0&&!!(this.shadowColor()||this.shadowBlur()||this.shadowOffsetX()||this.shadowOffsetY())}_getFillPattern(){return this._getCache(ay,this.__getFillPattern)}__getFillPattern(){if(this.fillPatternImage()){let e=ly().createPattern(this.fillPatternImage(),this.fillPatternRepeat()||`repeat`);if(e&&e.setTransform){let t=new $g;t.translate(this.fillPatternX(),this.fillPatternY()),t.rotate(J.getAngle(this.fillPatternRotation())),t.scale(this.fillPatternScaleX(),this.fillPatternScaleY()),t.translate(-1*this.fillPatternOffsetX(),-1*this.fillPatternOffsetY());let n=t.getMatrix();e.setTransform({a:n[0],b:n[1],c:n[2],d:n[3],e:n[4],f:n[5]})}return e}}_getLinearGradient(){return this._getCache(oy,this.__getLinearGradient)}__getLinearGradient(){var e=this.fillLinearGradientColorStops();if(e){for(var t=ly(),n=this.fillLinearGradientStartPoint(),r=this.fillLinearGradientEndPoint(),i=t.createLinearGradient(n.x,n.y,r.x,r.y),a=0;a<e.length;a+=2)i.addColorStop(e[a],e[a+1]);return i}}_getRadialGradient(){return this._getCache(sy,this.__getRadialGradient)}__getRadialGradient(){var e=this.fillRadialGradientColorStops();if(e){for(var t=ly(),n=this.fillRadialGradientStartPoint(),r=this.fillRadialGradientEndPoint(),i=t.createRadialGradient(n.x,n.y,this.fillRadialGradientStartRadius(),r.x,r.y,this.fillRadialGradientEndRadius()),a=0;a<e.length;a+=2)i.addColorStop(e[a],e[a+1]);return i}}getShadowRGBA(){return this._getCache(iy,this._getShadowRGBA)}_getShadowRGBA(){if(this.hasShadow()){var e=Y.colorToRGBA(this.shadowColor());return`rgba(`+e.r+`,`+e.g+`,`+e.b+`,`+e.a*(this.shadowOpacity()||1)+`)`}}hasFill(){return this._calculate(`hasFill`,[`fillEnabled`,`fill`,`fillPatternImage`,`fillLinearGradientColorStops`,`fillRadialGradientColorStops`],()=>this.fillEnabled()&&!!(this.fill()||this.fillPatternImage()||this.fillLinearGradientColorStops()||this.fillRadialGradientColorStops()))}hasStroke(){return this._calculate(`hasStroke`,[`strokeEnabled`,`strokeWidth`,`stroke`,`strokeLinearGradientColorStops`],()=>this.strokeEnabled()&&this.strokeWidth()&&!!(this.stroke()||this.strokeLinearGradientColorStops()))}hasHitStroke(){let e=this.hitStrokeWidth();return e===`auto`?this.hasStroke():this.strokeEnabled()&&!!e}intersects(e){var t=this.getStage().bufferHitCanvas,n;return t.getContext().clear(),this.drawHit(t,null,!0),n=t.context.getImageData(Math.round(e.x),Math.round(e.y),1,1).data,n[3]>0}destroy(){return Q.prototype.destroy.call(this),delete uy[this.colorKey],delete this.colorKey,this}_useBufferCanvas(e){if(!this.getStage()||!(this.attrs.perfectDrawEnabled??!0))return!1;let t=e||this.hasFill(),n=this.hasStroke(),r=this.getAbsoluteOpacity()!==1;if(t&&n&&r)return!0;let i=this.hasShadow(),a=this.shadowForStrokeEnabled();return!!(t&&n&&i&&a)}setStrokeHitEnabled(e){Y.warn(`strokeHitEnabled property is deprecated. Please use hitStrokeWidth instead.`),e?this.hitStrokeWidth(`auto`):this.hitStrokeWidth(0)}getStrokeHitEnabled(){return this.hitStrokeWidth()!==0}getSelfRect(){var e=this.size();return{x:this._centroid?-e.width/2:0,y:this._centroid?-e.height/2:0,width:e.width,height:e.height}}getClientRect(e={}){let t=e.skipTransform,n=e.relativeTo,r=this.getSelfRect(),i=!e.skipStroke&&this.hasStroke()&&this.strokeWidth()||0,a=r.width+i,o=r.height+i,s=!e.skipShadow&&this.hasShadow(),c=s?this.shadowOffsetX():0,l=s?this.shadowOffsetY():0,u=a+Math.abs(c),d=o+Math.abs(l),f=s&&this.shadowBlur()||0,p=u+f*2,m=d+f*2,h=0;Math.round(i/2)!==i/2&&(h=1);let g={width:p+h,height:m+h,x:-Math.round(i/2+f)+Math.min(c,0)+r.x,y:-Math.round(i/2+f)+Math.min(l,0)+r.y};return t?g:this._transformedRect(g,n)}drawScene(e,t){var n=this.getLayer(),r=e||n.getCanvas(),i=r.getContext(),a=this._getCanvasCache(),o=this.getSceneFunc(),s=this.hasShadow(),c,l,u,d=r.isCache,f=t===this;if(!this.isVisible()&&!f)return this;if(a){i.save();var p=this.getAbsoluteTransform(t).getMatrix();return i.transform(p[0],p[1],p[2],p[3],p[4],p[5]),this._drawCachedSceneCanvas(i),i.restore(),this}if(!o)return this;if(i.save(),this._useBufferCanvas()&&!d){c=this.getStage(),l=c.bufferCanvas,u=l.getContext(),u.clear(),u.save(),u._applyLineJoin(this);var m=this.getAbsoluteTransform(t).getMatrix();u.transform(m[0],m[1],m[2],m[3],m[4],m[5]),o.call(this,u,this),u.restore();var h=l.pixelRatio;s&&i._applyShadow(this),i._applyOpacity(this),i._applyGlobalCompositeOperation(this),i.drawImage(l._canvas,0,0,l.width/h,l.height/h)}else{if(i._applyLineJoin(this),!f){var m=this.getAbsoluteTransform(t).getMatrix();i.transform(m[0],m[1],m[2],m[3],m[4],m[5]),i._applyOpacity(this),i._applyGlobalCompositeOperation(this)}s&&i._applyShadow(this),o.call(this,i,this)}return i.restore(),this}drawHit(e,t,n=!1){if(!this.shouldDrawHit(t,n))return this;var r=this.getLayer(),i=e||r.hitCanvas,a=i&&i.getContext(),o=this.hitFunc()||this.sceneFunc(),s=this._getCanvasCache(),c=s&&s.hit;if(this.colorKey||Y.warn(`Looks like your canvas has a destroyed shape in it. Do not reuse shape after you destroyed it. If you want to reuse shape you should call remove() instead of destroy()`),c){a.save();var l=this.getAbsoluteTransform(t).getMatrix();return a.transform(l[0],l[1],l[2],l[3],l[4],l[5]),this._drawCachedHitCanvas(a),a.restore(),this}if(!o)return this;if(a.save(),a._applyLineJoin(this),this!==t){var u=this.getAbsoluteTransform(t).getMatrix();a.transform(u[0],u[1],u[2],u[3],u[4],u[5])}return o.call(this,a,this),a.restore(),this}drawHitFromCache(e=0){var t=this._getCanvasCache(),n=this._getCachedSceneCanvas(),r=t.hit,i=r.getContext(),a=r.getWidth(),o=r.getHeight(),s,c,l,u,d,f;i.clear(),i.drawImage(n._canvas,0,0,a,o);try{for(s=i.getImageData(0,0,a,o),c=s.data,l=c.length,u=Y._hexToRgb(this.colorKey),d=0;d<l;d+=4)f=c[d+3],f>e?(c[d]=u.r,c[d+1]=u.g,c[d+2]=u.b,c[d+3]=255):c[d+3]=0;i.putImageData(s,0,0)}catch(e){Y.error(`Unable to draw hit graph from cached scene canvas. `+e.message)}return this}hasPointerCapture(e){return bv(e,this)}setPointerCapture(e){xv(e,this)}releaseCapture(e){Sv(e,this)}};$.prototype._fillFunc=dy,$.prototype._strokeFunc=fy,$.prototype._fillFuncHit=py,$.prototype._strokeFuncHit=my,$.prototype._centroid=!1,$.prototype.nodeType=`Shape`,Qg($),$.prototype.eventListeners={},$.prototype.on.call($.prototype,`shadowColorChange.konva shadowBlurChange.konva shadowOffsetChange.konva shadowOpacityChange.konva shadowEnabledChange.konva`,hy),$.prototype.on.call($.prototype,`shadowColorChange.konva shadowOpacityChange.konva shadowEnabledChange.konva`,gy),$.prototype.on.call($.prototype,`fillPriorityChange.konva fillPatternImageChange.konva fillPatternRepeatChange.konva fillPatternScaleXChange.konva fillPatternScaleYChange.konva fillPatternOffsetXChange.konva fillPatternOffsetYChange.konva fillPatternXChange.konva fillPatternYChange.konva fillPatternRotationChange.konva`,_y),$.prototype.on.call($.prototype,`fillPriorityChange.konva fillLinearGradientColorStopsChange.konva fillLinearGradientStartPointXChange.konva fillLinearGradientStartPointYChange.konva fillLinearGradientEndPointXChange.konva fillLinearGradientEndPointYChange.konva`,vy),$.prototype.on.call($.prototype,`fillPriorityChange.konva fillRadialGradientColorStopsChange.konva fillRadialGradientStartPointXChange.konva fillRadialGradientStartPointYChange.konva fillRadialGradientEndPointXChange.konva fillRadialGradientEndPointYChange.konva fillRadialGradientStartRadiusChange.konva fillRadialGradientEndRadiusChange.konva`,yy),Z.addGetterSetter($,`stroke`,void 0,x_()),Z.addGetterSetter($,`strokeWidth`,2,X()),Z.addGetterSetter($,`fillAfterStrokeEnabled`,!1),Z.addGetterSetter($,`hitStrokeWidth`,`auto`,y_()),Z.addGetterSetter($,`strokeHitEnabled`,!0,C_()),Z.addGetterSetter($,`perfectDrawEnabled`,!0,C_()),Z.addGetterSetter($,`shadowForStrokeEnabled`,!0,C_()),Z.addGetterSetter($,`lineJoin`),Z.addGetterSetter($,`lineCap`),Z.addGetterSetter($,`sceneFunc`),Z.addGetterSetter($,`hitFunc`),Z.addGetterSetter($,`dash`),Z.addGetterSetter($,`dashOffset`,0,X()),Z.addGetterSetter($,`shadowColor`,void 0,b_()),Z.addGetterSetter($,`shadowBlur`,0,X()),Z.addGetterSetter($,`shadowOpacity`,1,X()),Z.addComponentsGetterSetter($,`shadowOffset`,[`x`,`y`]),Z.addGetterSetter($,`shadowOffsetX`,0,X()),Z.addGetterSetter($,`shadowOffsetY`,0,X()),Z.addGetterSetter($,`fillPatternImage`),Z.addGetterSetter($,`fill`,void 0,x_()),Z.addGetterSetter($,`fillPatternX`,0,X()),Z.addGetterSetter($,`fillPatternY`,0,X()),Z.addGetterSetter($,`fillLinearGradientColorStops`),Z.addGetterSetter($,`strokeLinearGradientColorStops`),Z.addGetterSetter($,`fillRadialGradientStartRadius`,0),Z.addGetterSetter($,`fillRadialGradientEndRadius`,0),Z.addGetterSetter($,`fillRadialGradientColorStops`),Z.addGetterSetter($,`fillPatternRepeat`,`repeat`),Z.addGetterSetter($,`fillEnabled`,!0),Z.addGetterSetter($,`strokeEnabled`,!0),Z.addGetterSetter($,`shadowEnabled`,!0),Z.addGetterSetter($,`dashEnabled`,!0),Z.addGetterSetter($,`strokeScaleEnabled`,!0),Z.addGetterSetter($,`fillPriority`,`color`),Z.addComponentsGetterSetter($,`fillPatternOffset`,[`x`,`y`]),Z.addGetterSetter($,`fillPatternOffsetX`,0,X()),Z.addGetterSetter($,`fillPatternOffsetY`,0,X()),Z.addComponentsGetterSetter($,`fillPatternScale`,[`x`,`y`]),Z.addGetterSetter($,`fillPatternScaleX`,1,X()),Z.addGetterSetter($,`fillPatternScaleY`,1,X()),Z.addComponentsGetterSetter($,`fillLinearGradientStartPoint`,[`x`,`y`]),Z.addComponentsGetterSetter($,`strokeLinearGradientStartPoint`,[`x`,`y`]),Z.addGetterSetter($,`fillLinearGradientStartPointX`,0),Z.addGetterSetter($,`strokeLinearGradientStartPointX`,0),Z.addGetterSetter($,`fillLinearGradientStartPointY`,0),Z.addGetterSetter($,`strokeLinearGradientStartPointY`,0),Z.addComponentsGetterSetter($,`fillLinearGradientEndPoint`,[`x`,`y`]),Z.addComponentsGetterSetter($,`strokeLinearGradientEndPoint`,[`x`,`y`]),Z.addGetterSetter($,`fillLinearGradientEndPointX`,0),Z.addGetterSetter($,`strokeLinearGradientEndPointX`,0),Z.addGetterSetter($,`fillLinearGradientEndPointY`,0),Z.addGetterSetter($,`strokeLinearGradientEndPointY`,0),Z.addComponentsGetterSetter($,`fillRadialGradientStartPoint`,[`x`,`y`]),Z.addGetterSetter($,`fillRadialGradientStartPointX`,0),Z.addGetterSetter($,`fillRadialGradientStartPointY`,0),Z.addComponentsGetterSetter($,`fillRadialGradientEndPoint`,[`x`,`y`]),Z.addGetterSetter($,`fillRadialGradientEndPointX`,0),Z.addGetterSetter($,`fillRadialGradientEndPointY`,0),Z.addGetterSetter($,`fillPatternRotation`,0),Z.backCompat($,{dashArray:`dash`,getDashArray:`getDash`,setDashArray:`getDash`,drawFunc:`sceneFunc`,getDrawFunc:`getSceneFunc`,setDrawFunc:`setSceneFunc`,drawHitFunc:`hitFunc`,getDrawHitFunc:`getHitFunc`,setDrawHitFunc:`setHitFunc`});var by=`#`,xy=`beforeDraw`,Sy=`draw`,Cy=[{x:0,y:0},{x:-1,y:-1},{x:1,y:-1},{x:1,y:1},{x:-1,y:1}],wy=Cy.length,Ty=class extends hv{constructor(e){super(e),this.canvas=new G_,this.hitCanvas=new K_({pixelRatio:1}),this._waitingForDraw=!1,this.on(`visibleChange.konva`,this._checkVisibility),this._checkVisibility(),this.on(`imageSmoothingEnabledChange.konva`,this._setSmoothEnabled),this._setSmoothEnabled()}createPNGStream(){return this.canvas._canvas.createPNGStream()}getCanvas(){return this.canvas}getNativeCanvasElement(){return this.canvas._canvas}getHitCanvas(){return this.hitCanvas}getContext(){return this.getCanvas().getContext()}clear(e){return this.getContext().clear(e),this.getHitCanvas().getContext().clear(e),this}setZIndex(e){super.setZIndex(e);var t=this.getStage();return t&&t.content&&(t.content.removeChild(this.getNativeCanvasElement()),e<t.children.length-1?t.content.insertBefore(this.getNativeCanvasElement(),t.children[e+1].getCanvas()._canvas):t.content.appendChild(this.getNativeCanvasElement())),this}moveToTop(){Q.prototype.moveToTop.call(this);var e=this.getStage();return e&&e.content&&(e.content.removeChild(this.getNativeCanvasElement()),e.content.appendChild(this.getNativeCanvasElement())),!0}moveUp(){if(!Q.prototype.moveUp.call(this))return!1;var e=this.getStage();return!e||!e.content?!1:(e.content.removeChild(this.getNativeCanvasElement()),this.index<e.children.length-1?e.content.insertBefore(this.getNativeCanvasElement(),e.children[this.index+1].getCanvas()._canvas):e.content.appendChild(this.getNativeCanvasElement()),!0)}moveDown(){if(Q.prototype.moveDown.call(this)){var e=this.getStage();if(e){var t=e.children;e.content&&(e.content.removeChild(this.getNativeCanvasElement()),e.content.insertBefore(this.getNativeCanvasElement(),t[this.index+1].getCanvas()._canvas))}return!0}return!1}moveToBottom(){if(Q.prototype.moveToBottom.call(this)){var e=this.getStage();if(e){var t=e.children;e.content&&(e.content.removeChild(this.getNativeCanvasElement()),e.content.insertBefore(this.getNativeCanvasElement(),t[1].getCanvas()._canvas))}return!0}return!1}getLayer(){return this}remove(){var e=this.getNativeCanvasElement();return Q.prototype.remove.call(this),e&&e.parentNode&&Y._isInDocument(e)&&e.parentNode.removeChild(e),this}getStage(){return this.parent}setSize({width:e,height:t}){return this.canvas.setSize(e,t),this.hitCanvas.setSize(e,t),this._setSmoothEnabled(),this}_validateAdd(e){var t=e.getType();t!==`Group`&&t!==`Shape`&&Y.throw(`You may only add groups and shapes to a layer.`)}_toKonvaCanvas(e){return e||={},e.width=e.width||this.getWidth(),e.height=e.height||this.getHeight(),e.x=e.x===void 0?this.x():e.x,e.y=e.y===void 0?this.y():e.y,Q.prototype._toKonvaCanvas.call(this,e)}_checkVisibility(){this.visible()?this.canvas._canvas.style.display=`block`:this.canvas._canvas.style.display=`none`}_setSmoothEnabled(){this.getContext()._context.imageSmoothingEnabled=this.imageSmoothingEnabled()}getWidth(){if(this.parent)return this.parent.width()}setWidth(){Y.warn(`Can not change width of layer. Use "stage.width(value)" function instead.`)}getHeight(){if(this.parent)return this.parent.height()}setHeight(){Y.warn(`Can not change height of layer. Use "stage.height(value)" function instead.`)}batchDraw(){return this._waitingForDraw||(this._waitingForDraw=!0,Y.requestAnimFrame(()=>{this.draw(),this._waitingForDraw=!1})),this}getIntersection(e){if(!this.isListening()||!this.isVisible())return null;for(var t=1,n=!1;;){for(let r=0;r<wy;r++){let i=Cy[r],a=this._getIntersection({x:e.x+i.x*t,y:e.y+i.y*t}),o=a.shape;if(o)return o;if(n=!!a.antialiased,!a.antialiased)break}if(n)t+=1;else return null}}_getIntersection(e){let t=this.hitCanvas.pixelRatio,n=this.hitCanvas.context.getImageData(Math.round(e.x*t),Math.round(e.y*t),1,1).data,r=n[3];if(r===255){let e=uy[by+Y._rgbToHex(n[0],n[1],n[2])];return e?{shape:e}:{antialiased:!0}}else if(r>0)return{antialiased:!0};return{}}drawScene(e,t){var n=this.getLayer(),r=e||n&&n.getCanvas();return this._fire(xy,{node:this}),this.clearBeforeDraw()&&r.getContext().clear(),hv.prototype.drawScene.call(this,r,t),this._fire(Sy,{node:this}),this}drawHit(e,t){var n=this.getLayer(),r=e||n&&n.hitCanvas;return n&&n.clearBeforeDraw()&&n.getHitCanvas().getContext().clear(),hv.prototype.drawHit.call(this,r,t),this}enableHitGraph(){return this.hitGraphEnabled(!0),this}disableHitGraph(){return this.hitGraphEnabled(!1),this}setHitGraphEnabled(e){Y.warn(`hitGraphEnabled method is deprecated. Please use layer.listening() instead.`),this.listening(e)}getHitGraphEnabled(e){return Y.warn(`hitGraphEnabled method is deprecated. Please use layer.listening() instead.`),this.listening()}toggleHitCanvas(){if(!(!this.parent||!this.parent.content)){var e=this.parent;this.hitCanvas._canvas.parentNode?e.content.removeChild(this.hitCanvas._canvas):e.content.appendChild(this.hitCanvas._canvas)}}};Ty.prototype.nodeType=`Layer`,Qg(Ty),Z.addGetterSetter(Ty,`imageSmoothingEnabled`,!0),Z.addGetterSetter(Ty,`clearBeforeDraw`,!0),Z.addGetterSetter(Ty,`hitGraphEnabled`,!0,C_());var Ey=class extends Ty{constructor(e){super(e),this.listening(!1),Y.warn(`Konva.Fast layer is deprecated. Please use "new Konva.Layer({ listening: false })" instead.`)}};Ey.prototype.nodeType=`FastLayer`,Qg(Ey);var Dy=class extends hv{_validateAdd(e){var t=e.getType();t!==`Group`&&t!==`Shape`&&Y.throw(`You may only add groups and shapes to groups.`)}};Dy.prototype.nodeType=`Group`,Qg(Dy);var Oy=(function(){return Zg.performance&&Zg.performance.now?function(){return Zg.performance.now()}:function(){return new Date().getTime()}})(),ky=class e{constructor(t,n){this.id=e.animIdCounter++,this.frame={time:0,timeDiff:0,lastTime:Oy(),frameRate:0},this.func=t,this.setLayers(n)}setLayers(e){var t=[];return t=e?e.length>0?e:[e]:[],this.layers=t,this}getLayers(){return this.layers}addLayer(e){var t=this.layers,n=t.length,r;for(r=0;r<n;r++)if(t[r]._id===e._id)return!1;return this.layers.push(e),!0}isRunning(){var t=e.animations,n=t.length,r;for(r=0;r<n;r++)if(t[r].id===this.id)return!0;return!1}start(){return this.stop(),this.frame.timeDiff=0,this.frame.lastTime=Oy(),e._addAnimation(this),this}stop(){return e._removeAnimation(this),this}_updateFrameObject(e){this.frame.timeDiff=e-this.frame.lastTime,this.frame.lastTime=e,this.frame.time+=this.frame.timeDiff,this.frame.frameRate=1e3/this.frame.timeDiff}static _addAnimation(e){this.animations.push(e),this._handleAnimation()}static _removeAnimation(e){var t=e.id,n=this.animations,r=n.length,i;for(i=0;i<r;i++)if(n[i].id===t){this.animations.splice(i,1);break}}static _runFrames(){var e={},t=this.animations,n,r,i,a,o,s,c,l,u;for(a=0;a<t.length;a++)if(n=t[a],r=n.layers,i=n.func,n._updateFrameObject(Oy()),s=r.length,u=!i||i.call(n,n.frame)!==!1,u)for(o=0;o<s;o++)c=r[o],c._id!==void 0&&(e[c._id]=c);for(l in e)e.hasOwnProperty(l)&&e[l].batchDraw()}static _animationLoop(){var t=e;t.animations.length?(t._runFrames(),Y.requestAnimFrame(t._animationLoop)):t.animRunning=!1}static _handleAnimation(){this.animRunning||(this.animRunning=!0,Y.requestAnimFrame(this._animationLoop))}};ky.animations=[],ky.animIdCounter=0,ky.animRunning=!1;var Ay={node:1,duration:1,easing:1,onFinish:1,yoyo:1},jy=1,My=2,Ny=3,Py=0,Fy=[`fill`,`stroke`,`shadowColor`],Iy=class{constructor(e,t,n,r,i,a,o){this.prop=e,this.propFunc=t,this.begin=r,this._pos=r,this.duration=a,this._change=0,this.prevPos=0,this.yoyo=o,this._time=0,this._position=0,this._startTime=0,this._finish=0,this.func=n,this._change=i-this.begin,this.pause()}fire(e){var t=this[e];t&&t()}setTime(e){e>this.duration?this.yoyo?(this._time=this.duration,this.reverse()):this.finish():e<0?this.yoyo?(this._time=0,this.play()):this.reset():(this._time=e,this.update())}getTime(){return this._time}setPosition(e){this.prevPos=this._pos,this.propFunc(e),this._pos=e}getPosition(e){return e===void 0&&(e=this._time),this.func(e,this.begin,this._change,this.duration)}play(){this.state=My,this._startTime=this.getTimer()-this._time,this.onEnterFrame(),this.fire(`onPlay`)}reverse(){this.state=Ny,this._time=this.duration-this._time,this._startTime=this.getTimer()-this._time,this.onEnterFrame(),this.fire(`onReverse`)}seek(e){this.pause(),this._time=e,this.update(),this.fire(`onSeek`)}reset(){this.pause(),this._time=0,this.update(),this.fire(`onReset`)}finish(){this.pause(),this._time=this.duration,this.update(),this.fire(`onFinish`)}update(){this.setPosition(this.getPosition(this._time)),this.fire(`onUpdate`)}onEnterFrame(){var e=this.getTimer()-this._startTime;this.state===My?this.setTime(e):this.state===Ny&&this.setTime(this.duration-e)}pause(){this.state=jy,this.fire(`onPause`)}getTimer(){return new Date().getTime()}},Ly=class e{constructor(t){var n=this,r=t.node,i=r._id,a,o=t.easing||Ry.Linear,s=!!t.yoyo,c;a=t.duration===void 0?.3:t.duration===0?.001:t.duration,this.node=r,this._id=Py++;var l=r.getLayer()||(r instanceof J.Stage?r.getLayers():null);for(c in l||Y.error("Tween constructor have `node` that is not in a layer. Please add node into layer first."),this.anim=new ky(function(){n.tween.onEnterFrame()},l),this.tween=new Iy(c,function(e){n._tweenFunc(e)},o,0,1,a*1e3,s),this._addListeners(),e.attrs[i]||(e.attrs[i]={}),e.attrs[i][this._id]||(e.attrs[i][this._id]={}),e.tweens[i]||(e.tweens[i]={}),t)Ay[c]===void 0&&this._addAttr(c,t[c]);this.reset(),this.onFinish=t.onFinish,this.onReset=t.onReset,this.onUpdate=t.onUpdate}_addAttr(t,n){var r=this.node,i=r._id,a,o,s=e.tweens[i][t],c,l,u,d,f;if(s&&delete e.attrs[i][s][t],a=r.getAttr(t),Y._isArray(n))if(o=[],l=Math.max(n.length,a.length),t===`points`&&n.length!==a.length&&(n.length>a.length?(d=a,a=Y._prepareArrayForTween(a,n,r.closed())):(u=n,n=Y._prepareArrayForTween(n,a,r.closed()))),t.indexOf(`fill`)===0)for(c=0;c<l;c++)if(c%2==0)o.push(n[c]-a[c]);else{var p=Y.colorToRGBA(a[c]);f=Y.colorToRGBA(n[c]),a[c]=p,o.push({r:f.r-p.r,g:f.g-p.g,b:f.b-p.b,a:f.a-p.a})}else for(c=0;c<l;c++)o.push(n[c]-a[c]);else Fy.indexOf(t)===-1?o=n-a:(a=Y.colorToRGBA(a),f=Y.colorToRGBA(n),o={r:f.r-a.r,g:f.g-a.g,b:f.b-a.b,a:f.a-a.a});e.attrs[i][this._id][t]={start:a,diff:o,end:n,trueEnd:u,trueStart:d},e.tweens[i][t]=this._id}_tweenFunc(t){var n=this.node,r=e.attrs[n._id][this._id],i,a,o,s,c,l,u,d;for(i in r){if(a=r[i],o=a.start,s=a.diff,d=a.end,Y._isArray(o))if(c=[],u=Math.max(o.length,d.length),i.indexOf(`fill`)===0)for(l=0;l<u;l++)l%2==0?c.push((o[l]||0)+s[l]*t):c.push(`rgba(`+Math.round(o[l].r+s[l].r*t)+`,`+Math.round(o[l].g+s[l].g*t)+`,`+Math.round(o[l].b+s[l].b*t)+`,`+(o[l].a+s[l].a*t)+`)`);else for(l=0;l<u;l++)c.push((o[l]||0)+s[l]*t);else c=Fy.indexOf(i)===-1?o+s*t:`rgba(`+Math.round(o.r+s.r*t)+`,`+Math.round(o.g+s.g*t)+`,`+Math.round(o.b+s.b*t)+`,`+(o.a+s.a*t)+`)`;n.setAttr(i,c)}}_addListeners(){this.tween.onPlay=()=>{this.anim.start()},this.tween.onReverse=()=>{this.anim.start()},this.tween.onPause=()=>{this.anim.stop()},this.tween.onFinish=()=>{var t=this.node,n=e.attrs[t._id][this._id];n.points&&n.points.trueEnd&&t.setAttr(`points`,n.points.trueEnd),this.onFinish&&this.onFinish.call(this)},this.tween.onReset=()=>{var t=this.node,n=e.attrs[t._id][this._id];n.points&&n.points.trueStart&&t.points(n.points.trueStart),this.onReset&&this.onReset()},this.tween.onUpdate=()=>{this.onUpdate&&this.onUpdate.call(this)}}play(){return this.tween.play(),this}reverse(){return this.tween.reverse(),this}reset(){return this.tween.reset(),this}seek(e){return this.tween.seek(e*1e3),this}pause(){return this.tween.pause(),this}finish(){return this.tween.finish(),this}destroy(){var t=this.node._id,n=this._id,r=e.tweens[t],i;for(i in this.pause(),r)delete e.tweens[t][i];delete e.attrs[t][n]}};Ly.attrs={},Ly.tweens={},Q.prototype.to=function(e){var t=e.onFinish;e.node=this,e.onFinish=function(){this.destroy(),t&&t()},new Ly(e).play()};var Ry={BackEaseIn(e,t,n,r){var i=1.70158;return n*(e/=r)*e*((i+1)*e-i)+t},BackEaseOut(e,t,n,r){var i=1.70158;return n*((e=e/r-1)*e*((i+1)*e+i)+1)+t},BackEaseInOut(e,t,n,r){var i=1.70158;return(e/=r/2)<1?n/2*(e*e*(((i*=1.525)+1)*e-i))+t:n/2*((e-=2)*e*(((i*=1.525)+1)*e+i)+2)+t},ElasticEaseIn(e,t,n,r,i,a){var o=0;return e===0?t:(e/=r)===1?t+n:(a||=r*.3,!i||i<Math.abs(n)?(i=n,o=a/4):o=a/(2*Math.PI)*Math.asin(n/i),-(i*2**(10*--e)*Math.sin((e*r-o)*(2*Math.PI)/a))+t)},ElasticEaseOut(e,t,n,r,i,a){var o=0;return e===0?t:(e/=r)===1?t+n:(a||=r*.3,!i||i<Math.abs(n)?(i=n,o=a/4):o=a/(2*Math.PI)*Math.asin(n/i),i*2**(-10*e)*Math.sin((e*r-o)*(2*Math.PI)/a)+n+t)},ElasticEaseInOut(e,t,n,r,i,a){var o=0;return e===0?t:(e/=r/2)==2?t+n:(a||=.3*1.5*r,!i||i<Math.abs(n)?(i=n,o=a/4):o=a/(2*Math.PI)*Math.asin(n/i),e<1?-.5*(i*2**(10*--e)*Math.sin((e*r-o)*(2*Math.PI)/a))+t:i*2**(-10*--e)*Math.sin((e*r-o)*(2*Math.PI)/a)*.5+n+t)},BounceEaseOut(e,t,n,r){return(e/=r)<1/2.75?n*(7.5625*e*e)+t:e<2/2.75?n*(7.5625*(e-=1.5/2.75)*e+.75)+t:e<2.5/2.75?n*(7.5625*(e-=2.25/2.75)*e+.9375)+t:n*(7.5625*(e-=2.625/2.75)*e+.984375)+t},BounceEaseIn(e,t,n,r){return n-Ry.BounceEaseOut(r-e,0,n,r)+t},BounceEaseInOut(e,t,n,r){return e<r/2?Ry.BounceEaseIn(e*2,0,n,r)*.5+t:Ry.BounceEaseOut(e*2-r,0,n,r)*.5+n*.5+t},EaseIn(e,t,n,r){return n*(e/=r)*e+t},EaseOut(e,t,n,r){return-n*(e/=r)*(e-2)+t},EaseInOut(e,t,n,r){return(e/=r/2)<1?n/2*e*e+t:-n/2*(--e*(e-2)-1)+t},StrongEaseIn(e,t,n,r){return n*(e/=r)*e*e*e*e+t},StrongEaseOut(e,t,n,r){return n*((e=e/r-1)*e*e*e*e+1)+t},StrongEaseInOut(e,t,n,r){return(e/=r/2)<1?n/2*e*e*e*e*e+t:n/2*((e-=2)*e*e*e*e+2)+t},Linear(e,t,n,r){return n*e/r+t}},zy=Y._assign(J,{Util:Y,Transform:$g,Node:Q,Container:hv,Stage:ny,stages:ty,Layer:Ty,FastLayer:Ey,Group:Dy,DD:q_,Shape:$,shapes:uy,Animation:ky,Tween:Ly,Easings:Ry,Context:z_,Canvas:W_}),By=class extends ${_sceneFunc(e){var t=J.getAngle(this.angle()),n=this.clockwise();e.beginPath(),e.arc(0,0,this.outerRadius(),0,t,n),e.arc(0,0,this.innerRadius(),t,0,!n),e.closePath(),e.fillStrokeShape(this)}getWidth(){return this.outerRadius()*2}getHeight(){return this.outerRadius()*2}setWidth(e){this.outerRadius(e/2)}setHeight(e){this.outerRadius(e/2)}};By.prototype._centroid=!0,By.prototype.className=`Arc`,By.prototype._attrsAffectingSize=[`innerRadius`,`outerRadius`],Qg(By),Z.addGetterSetter(By,`innerRadius`,0,X()),Z.addGetterSetter(By,`outerRadius`,0,X()),Z.addGetterSetter(By,`angle`,0,X()),Z.addGetterSetter(By,`clockwise`,!1,C_());function Vy(e,t,n,r,i,a,o){var s=Math.sqrt((n-e)**2+(r-t)**2),c=Math.sqrt((i-n)**2+(a-r)**2),l=o*s/(s+c),u=o*c/(s+c);return[n-l*(i-e),r-l*(a-t),n+u*(i-e),r+u*(a-t)]}function Hy(e,t){var n=e.length,r=[],i,a;for(i=2;i<n-2;i+=2)a=Vy(e[i-2],e[i-1],e[i],e[i+1],e[i+2],e[i+3],t),!isNaN(a[0])&&(r.push(a[0]),r.push(a[1]),r.push(e[i]),r.push(e[i+1]),r.push(a[2]),r.push(a[3]));return r}var Uy=class extends ${constructor(e){super(e),this.on(`pointsChange.konva tensionChange.konva closedChange.konva bezierChange.konva`,function(){this._clearCache(`tensionPoints`)})}_sceneFunc(e){var t=this.points(),n=t.length,r=this.tension(),i=this.closed(),a=this.bezier(),o,s,c;if(n){if(e.beginPath(),e.moveTo(t[0],t[1]),r!==0&&n>4){for(o=this.getTensionPoints(),s=o.length,c=i?0:4,i||e.quadraticCurveTo(o[0],o[1],o[2],o[3]);c<s-2;)e.bezierCurveTo(o[c++],o[c++],o[c++],o[c++],o[c++],o[c++]);i||e.quadraticCurveTo(o[s-2],o[s-1],t[n-2],t[n-1])}else if(a)for(c=2;c<n;)e.bezierCurveTo(t[c++],t[c++],t[c++],t[c++],t[c++],t[c++]);else for(c=2;c<n;c+=2)e.lineTo(t[c],t[c+1]);i?(e.closePath(),e.fillStrokeShape(this)):e.strokeShape(this)}}getTensionPoints(){return this._getCache(`tensionPoints`,this._getTensionPoints)}_getTensionPoints(){return this.closed()?this._getTensionPointsClosed():Hy(this.points(),this.tension())}_getTensionPointsClosed(){var e=this.points(),t=e.length,n=this.tension(),r=Vy(e[t-2],e[t-1],e[0],e[1],e[2],e[3],n),i=Vy(e[t-4],e[t-3],e[t-2],e[t-1],e[0],e[1],n),a=Hy(e,n);return[r[2],r[3]].concat(a,[i[0],i[1],e[t-2],e[t-1],i[2],i[3],r[0],r[1],e[0],e[1]])}getWidth(){return this.getSelfRect().width}getHeight(){return this.getSelfRect().height}getSelfRect(){var e=this.points();if(e.length<4)return{x:e[0]||0,y:e[1]||0,width:0,height:0};e=this.tension()===0?this.points():[e[0],e[1],...this._getTensionPoints(),e[e.length-2],e[e.length-1]];for(var t=e[0],n=e[0],r=e[1],i=e[1],a,o,s=0;s<e.length/2;s++)a=e[s*2],o=e[s*2+1],t=Math.min(t,a),n=Math.max(n,a),r=Math.min(r,o),i=Math.max(i,o);return{x:t,y:r,width:n-t,height:i-r}}};Uy.prototype.className=`Line`,Uy.prototype._attrsAffectingSize=[`points`,`bezier`,`tension`],Qg(Uy),Z.addGetterSetter(Uy,`closed`,!1),Z.addGetterSetter(Uy,`bezier`,!1),Z.addGetterSetter(Uy,`tension`,0,X()),Z.addGetterSetter(Uy,`points`,[],S_());var Wy=class e extends ${constructor(t){super(t),this.dataArray=[],this.pathLength=0,this.dataArray=e.parsePathData(this.data()),this.pathLength=0;for(var n=0;n<this.dataArray.length;++n)this.pathLength+=this.dataArray[n].pathLength;this.on(`dataChange.konva`,function(){this.dataArray=e.parsePathData(this.data()),this.pathLength=0;for(var t=0;t<this.dataArray.length;++t)this.pathLength+=this.dataArray[t].pathLength})}_sceneFunc(e){var t=this.dataArray;e.beginPath();for(var n=!1,r=0;r<t.length;r++){var i=t[r].command,a=t[r].points;switch(i){case`L`:e.lineTo(a[0],a[1]);break;case`M`:e.moveTo(a[0],a[1]);break;case`C`:e.bezierCurveTo(a[0],a[1],a[2],a[3],a[4],a[5]);break;case`Q`:e.quadraticCurveTo(a[0],a[1],a[2],a[3]);break;case`A`:var o=a[0],s=a[1],c=a[2],l=a[3],u=a[4],d=a[5],f=a[6],p=a[7],m=c>l?c:l,h=c>l?1:c/l,g=c>l?l/c:1;e.translate(o,s),e.rotate(f),e.scale(h,g),e.arc(0,0,m,u,u+d,1-p),e.scale(1/h,1/g),e.rotate(-f),e.translate(-o,-s);break;case`z`:n=!0,e.closePath();break}}!n&&!this.hasFill()?e.strokeShape(this):e.fillStrokeShape(this)}getSelfRect(){var t=[];this.dataArray.forEach(function(n){if(n.command===`A`){var r=n.points[4],i=n.points[5],a=n.points[4]+i,o=Math.PI/180;if(Math.abs(r-a)<o&&(o=Math.abs(r-a)),i<0)for(let i=r-o;i>a;i-=o){let r=e.getPointOnEllipticalArc(n.points[0],n.points[1],n.points[2],n.points[3],i,0);t.push(r.x,r.y)}else for(let i=r+o;i<a;i+=o){let r=e.getPointOnEllipticalArc(n.points[0],n.points[1],n.points[2],n.points[3],i,0);t.push(r.x,r.y)}}else if(n.command===`C`)for(let r=0;r<=1;r+=.01){let i=e.getPointOnCubicBezier(r,n.start.x,n.start.y,n.points[0],n.points[1],n.points[2],n.points[3],n.points[4],n.points[5]);t.push(i.x,i.y)}else t=t.concat(n.points)});for(var n=t[0],r=t[0],i=t[1],a=t[1],o,s,c=0;c<t.length/2;c++)o=t[c*2],s=t[c*2+1],isNaN(o)||(n=Math.min(n,o),r=Math.max(r,o)),isNaN(s)||(i=Math.min(i,s),a=Math.max(a,s));return{x:Math.round(n),y:Math.round(i),width:Math.round(r-n),height:Math.round(a-i)}}getLength(){return this.pathLength}getPointAtLength(t){var n,r=0,i=this.dataArray.length;if(!i)return null;for(;r<i&&t>this.dataArray[r].pathLength;)t-=this.dataArray[r].pathLength,++r;if(r===i)return n=this.dataArray[r-1].points.slice(-2),{x:n[0],y:n[1]};if(t<.01)return n=this.dataArray[r].points.slice(0,2),{x:n[0],y:n[1]};var a=this.dataArray[r],o=a.points;switch(a.command){case`L`:return e.getPointOnLine(t,a.start.x,a.start.y,o[0],o[1]);case`C`:return e.getPointOnCubicBezier(t/a.pathLength,a.start.x,a.start.y,o[0],o[1],o[2],o[3],o[4],o[5]);case`Q`:return e.getPointOnQuadraticBezier(t/a.pathLength,a.start.x,a.start.y,o[0],o[1],o[2],o[3]);case`A`:var s=o[0],c=o[1],l=o[2],u=o[3],d=o[4],f=o[5],p=o[6];return d+=f*t/a.pathLength,e.getPointOnEllipticalArc(s,c,l,u,d,p)}return null}static getLineLength(e,t,n,r){return Math.sqrt((n-e)*(n-e)+(r-t)*(r-t))}static getPointOnLine(e,t,n,r,i,a,o){a===void 0&&(a=t),o===void 0&&(o=n);var s=(i-n)/(r-t+1e-8),c=Math.sqrt(e*e/(1+s*s));r<t&&(c*=-1);var l=s*c,u;if(r===t)u={x:a,y:o+l};else if((o-n)/(a-t+1e-8)===s)u={x:a+c,y:o+l};else{var d,f,p=this.getLineLength(t,n,r,i),m=(a-t)*(r-t)+(o-n)*(i-n);m/=p*p,d=t+m*(r-t),f=n+m*(i-n);var h=this.getLineLength(a,o,d,f),g=Math.sqrt(e*e-h*h);c=Math.sqrt(g*g/(1+s*s)),r<t&&(c*=-1),l=s*c,u={x:d+c,y:f+l}}return u}static getPointOnCubicBezier(e,t,n,r,i,a,o,s,c){function l(e){return e*e*e}function u(e){return 3*e*e*(1-e)}function d(e){return 3*e*(1-e)*(1-e)}function f(e){return(1-e)*(1-e)*(1-e)}return{x:s*l(e)+a*u(e)+r*d(e)+t*f(e),y:c*l(e)+o*u(e)+i*d(e)+n*f(e)}}static getPointOnQuadraticBezier(e,t,n,r,i,a,o){function s(e){return e*e}function c(e){return 2*e*(1-e)}function l(e){return(1-e)*(1-e)}return{x:a*s(e)+r*c(e)+t*l(e),y:o*s(e)+i*c(e)+n*l(e)}}static getPointOnEllipticalArc(e,t,n,r,i,a){var o=Math.cos(a),s=Math.sin(a),c={x:n*Math.cos(i),y:r*Math.sin(i)};return{x:e+(c.x*o-c.y*s),y:t+(c.x*s+c.y*o)}}static parsePathData(e){if(!e)return[];var t=e,n=[`m`,`M`,`l`,`L`,`v`,`V`,`h`,`H`,`z`,`Z`,`c`,`C`,`q`,`Q`,`t`,`T`,`s`,`S`,`a`,`A`];t=t.replace(RegExp(` `,`g`),`,`);for(var r=0;r<n.length;r++)t=t.replace(new RegExp(n[r],`g`),`|`+n[r]);var i=t.split(`|`),a=[],o=[],s=0,c=0,l=/([-+]?((\d+\.\d+)|((\d+)|(\.\d+)))(?:e[-+]?\d+)?)/gi,u;for(r=1;r<i.length;r++){var d=i[r],f=d.charAt(0);for(d=d.slice(1),o.length=0;u=l.exec(d);)o.push(u[0]);for(var p=[],m=0,h=o.length;m<h;m++){if(o[m]===`00`){p.push(0,0);continue}var g=parseFloat(o[m]);isNaN(g)?p.push(0):p.push(g)}for(;p.length>0&&!isNaN(p[0]);){var _=null,v=[],y=s,b=c,x,S,C,w,T,E,D,O,ee,te;switch(f){case`l`:s+=p.shift(),c+=p.shift(),_=`L`,v.push(s,c);break;case`L`:s=p.shift(),c=p.shift(),v.push(s,c);break;case`m`:var k=p.shift(),A=p.shift();if(s+=k,c+=A,_=`M`,a.length>2&&a[a.length-1].command===`z`){for(var ne=a.length-2;ne>=0;ne--)if(a[ne].command===`M`){s=a[ne].points[0]+k,c=a[ne].points[1]+A;break}}v.push(s,c),f=`l`;break;case`M`:s=p.shift(),c=p.shift(),_=`M`,v.push(s,c),f=`L`;break;case`h`:s+=p.shift(),_=`L`,v.push(s,c);break;case`H`:s=p.shift(),_=`L`,v.push(s,c);break;case`v`:c+=p.shift(),_=`L`,v.push(s,c);break;case`V`:c=p.shift(),_=`L`,v.push(s,c);break;case`C`:v.push(p.shift(),p.shift(),p.shift(),p.shift()),s=p.shift(),c=p.shift(),v.push(s,c);break;case`c`:v.push(s+p.shift(),c+p.shift(),s+p.shift(),c+p.shift()),s+=p.shift(),c+=p.shift(),_=`C`,v.push(s,c);break;case`S`:S=s,C=c,x=a[a.length-1],x.command===`C`&&(S=s+(s-x.points[2]),C=c+(c-x.points[3])),v.push(S,C,p.shift(),p.shift()),s=p.shift(),c=p.shift(),_=`C`,v.push(s,c);break;case`s`:S=s,C=c,x=a[a.length-1],x.command===`C`&&(S=s+(s-x.points[2]),C=c+(c-x.points[3])),v.push(S,C,s+p.shift(),c+p.shift()),s+=p.shift(),c+=p.shift(),_=`C`,v.push(s,c);break;case`Q`:v.push(p.shift(),p.shift()),s=p.shift(),c=p.shift(),v.push(s,c);break;case`q`:v.push(s+p.shift(),c+p.shift()),s+=p.shift(),c+=p.shift(),_=`Q`,v.push(s,c);break;case`T`:S=s,C=c,x=a[a.length-1],x.command===`Q`&&(S=s+(s-x.points[0]),C=c+(c-x.points[1])),s=p.shift(),c=p.shift(),_=`Q`,v.push(S,C,s,c);break;case`t`:S=s,C=c,x=a[a.length-1],x.command===`Q`&&(S=s+(s-x.points[0]),C=c+(c-x.points[1])),s+=p.shift(),c+=p.shift(),_=`Q`,v.push(S,C,s,c);break;case`A`:w=p.shift(),T=p.shift(),E=p.shift(),D=p.shift(),O=p.shift(),ee=s,te=c,s=p.shift(),c=p.shift(),_=`A`,v=this.convertEndpointToCenterParameterization(ee,te,s,c,D,O,w,T,E);break;case`a`:w=p.shift(),T=p.shift(),E=p.shift(),D=p.shift(),O=p.shift(),ee=s,te=c,s+=p.shift(),c+=p.shift(),_=`A`,v=this.convertEndpointToCenterParameterization(ee,te,s,c,D,O,w,T,E);break}a.push({command:_||f,points:v,start:{x:y,y:b},pathLength:this.calcLength(y,b,_||f,v)})}(f===`z`||f===`Z`)&&a.push({command:`z`,points:[],start:void 0,pathLength:0})}return a}static calcLength(t,n,r,i){var a,o,s,c,l=e;switch(r){case`L`:return l.getLineLength(t,n,i[0],i[1]);case`C`:for(a=0,o=l.getPointOnCubicBezier(0,t,n,i[0],i[1],i[2],i[3],i[4],i[5]),c=.01;c<=1;c+=.01)s=l.getPointOnCubicBezier(c,t,n,i[0],i[1],i[2],i[3],i[4],i[5]),a+=l.getLineLength(o.x,o.y,s.x,s.y),o=s;return a;case`Q`:for(a=0,o=l.getPointOnQuadraticBezier(0,t,n,i[0],i[1],i[2],i[3]),c=.01;c<=1;c+=.01)s=l.getPointOnQuadraticBezier(c,t,n,i[0],i[1],i[2],i[3]),a+=l.getLineLength(o.x,o.y,s.x,s.y),o=s;return a;case`A`:a=0;var u=i[4],d=i[5],f=i[4]+d,p=Math.PI/180;if(Math.abs(u-f)<p&&(p=Math.abs(u-f)),o=l.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],u,0),d<0)for(c=u-p;c>f;c-=p)s=l.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],c,0),a+=l.getLineLength(o.x,o.y,s.x,s.y),o=s;else for(c=u+p;c<f;c+=p)s=l.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],c,0),a+=l.getLineLength(o.x,o.y,s.x,s.y),o=s;return s=l.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],f,0),a+=l.getLineLength(o.x,o.y,s.x,s.y),a}return 0}static convertEndpointToCenterParameterization(e,t,n,r,i,a,o,s,c){var l=Math.PI/180*c,u=Math.cos(l)*(e-n)/2+Math.sin(l)*(t-r)/2,d=-1*Math.sin(l)*(e-n)/2+Math.cos(l)*(t-r)/2,f=u*u/(o*o)+d*d/(s*s);f>1&&(o*=Math.sqrt(f),s*=Math.sqrt(f));var p=Math.sqrt((o*o*(s*s)-o*o*(d*d)-s*s*(u*u))/(o*o*(d*d)+s*s*(u*u)));i===a&&(p*=-1),isNaN(p)&&(p=0);var m=p*o*d/s,h=p*-s*u/o,g=(e+n)/2+Math.cos(l)*m-Math.sin(l)*h,_=(t+r)/2+Math.sin(l)*m+Math.cos(l)*h,v=function(e){return Math.sqrt(e[0]*e[0]+e[1]*e[1])},y=function(e,t){return(e[0]*t[0]+e[1]*t[1])/(v(e)*v(t))},b=function(e,t){return(e[0]*t[1]<e[1]*t[0]?-1:1)*Math.acos(y(e,t))},x=b([1,0],[(u-m)/o,(d-h)/s]),S=[(u-m)/o,(d-h)/s],C=[(-1*u-m)/o,(-1*d-h)/s],w=b(S,C);return y(S,C)<=-1&&(w=Math.PI),y(S,C)>=1&&(w=0),a===0&&w>0&&(w-=2*Math.PI),a===1&&w<0&&(w+=2*Math.PI),[g,_,o,s,x,w,l,a]}};Wy.prototype.className=`Path`,Wy.prototype._attrsAffectingSize=[`data`],Qg(Wy),Z.addGetterSetter(Wy,`data`);var Gy=class extends Uy{_sceneFunc(e){super._sceneFunc(e);var t=Math.PI*2,n=this.points(),r=n,i=this.tension()!==0&&n.length>4;i&&(r=this.getTensionPoints());var a=this.pointerLength(),o=n.length,s,c;if(i){let e=[r[r.length-4],r[r.length-3],r[r.length-2],r[r.length-1],n[o-2],n[o-1]],t=Wy.calcLength(r[r.length-4],r[r.length-3],`C`,e),i=Wy.getPointOnQuadraticBezier(Math.min(1,1-a/t),e[0],e[1],e[2],e[3],e[4],e[5]);s=n[o-2]-i.x,c=n[o-1]-i.y}else s=n[o-2]-n[o-4],c=n[o-1]-n[o-3];var l=(Math.atan2(c,s)+t)%t,u=this.pointerWidth();this.pointerAtEnding()&&(e.save(),e.beginPath(),e.translate(n[o-2],n[o-1]),e.rotate(l),e.moveTo(0,0),e.lineTo(-a,u/2),e.lineTo(-a,-u/2),e.closePath(),e.restore(),this.__fillStroke(e)),this.pointerAtBeginning()&&(e.save(),e.beginPath(),e.translate(n[0],n[1]),i?(s=(r[0]+r[2])/2-n[0],c=(r[1]+r[3])/2-n[1]):(s=n[2]-n[0],c=n[3]-n[1]),e.rotate((Math.atan2(-c,-s)+t)%t),e.moveTo(0,0),e.lineTo(-a,u/2),e.lineTo(-a,-u/2),e.closePath(),e.restore(),this.__fillStroke(e))}__fillStroke(e){var t=this.dashEnabled();t&&(this.attrs.dashEnabled=!1,e.setLineDash([])),e.fillStrokeShape(this),t&&(this.attrs.dashEnabled=!0)}getSelfRect(){let e=super.getSelfRect(),t=this.pointerWidth()/2;return{x:e.x-t,y:e.y-t,width:e.width+t*2,height:e.height+t*2}}};Gy.prototype.className=`Arrow`,Qg(Gy),Z.addGetterSetter(Gy,`pointerLength`,10,X()),Z.addGetterSetter(Gy,`pointerWidth`,10,X()),Z.addGetterSetter(Gy,`pointerAtBeginning`,!1),Z.addGetterSetter(Gy,`pointerAtEnding`,!0);var Ky=class extends ${_sceneFunc(e){e.beginPath(),e.arc(0,0,this.attrs.radius||0,0,Math.PI*2,!1),e.closePath(),e.fillStrokeShape(this)}getWidth(){return this.radius()*2}getHeight(){return this.radius()*2}setWidth(e){this.radius()!==e/2&&this.radius(e/2)}setHeight(e){this.radius()!==e/2&&this.radius(e/2)}};Ky.prototype._centroid=!0,Ky.prototype.className=`Circle`,Ky.prototype._attrsAffectingSize=[`radius`],Qg(Ky),Z.addGetterSetter(Ky,`radius`,0,X());var qy=class extends ${_sceneFunc(e){var t=this.radiusX(),n=this.radiusY();e.beginPath(),e.save(),t!==n&&e.scale(1,n/t),e.arc(0,0,t,0,Math.PI*2,!1),e.restore(),e.closePath(),e.fillStrokeShape(this)}getWidth(){return this.radiusX()*2}getHeight(){return this.radiusY()*2}setWidth(e){this.radiusX(e/2)}setHeight(e){this.radiusY(e/2)}};qy.prototype.className=`Ellipse`,qy.prototype._centroid=!0,qy.prototype._attrsAffectingSize=[`radiusX`,`radiusY`],Qg(qy),Z.addComponentsGetterSetter(qy,`radius`,[`x`,`y`]),Z.addGetterSetter(qy,`radiusX`,0,X()),Z.addGetterSetter(qy,`radiusY`,0,X());var Jy=class e extends ${constructor(e){super(e),this.on(`imageChange.konva`,()=>{this._setImageLoad()}),this._setImageLoad()}_setImageLoad(){let e=this.image();e&&e.complete||e&&e.readyState===4||e&&e.addEventListener&&e.addEventListener(`load`,()=>{this._requestDraw()})}_useBufferCanvas(){return super._useBufferCanvas(!0)}_sceneFunc(e){let t=this.getWidth(),n=this.getHeight(),r=this.attrs.image,i;if(r){let e=this.attrs.cropWidth,a=this.attrs.cropHeight;i=e&&a?[r,this.cropX(),this.cropY(),e,a,0,0,t,n]:[r,0,0,t,n]}(this.hasFill()||this.hasStroke())&&(e.beginPath(),e.rect(0,0,t,n),e.closePath(),e.fillStrokeShape(this)),r&&e.drawImage.apply(e,i)}_hitFunc(e){var t=this.width(),n=this.height();e.beginPath(),e.rect(0,0,t,n),e.closePath(),e.fillStrokeShape(this)}getWidth(){return this.attrs.width??this.image()?.width}getHeight(){return this.attrs.height??this.image()?.height}static fromURL(t,n){var r=Y.createImageElement();r.onload=function(){n(new e({image:r}))},r.crossOrigin=`Anonymous`,r.src=t}};Jy.prototype.className=`Image`,Qg(Jy),Z.addGetterSetter(Jy,`image`),Z.addComponentsGetterSetter(Jy,`crop`,[`x`,`y`,`width`,`height`]),Z.addGetterSetter(Jy,`cropX`,0,X()),Z.addGetterSetter(Jy,`cropY`,0,X()),Z.addGetterSetter(Jy,`cropWidth`,0,X()),Z.addGetterSetter(Jy,`cropHeight`,0,X());var Yy=[`fontFamily`,`fontSize`,`fontStyle`,`padding`,`lineHeight`,`text`,`width`,`height`],Xy=`Change.konva`,Zy=`none`,Qy=`up`,$y=`right`,eb=`down`,tb=`left`,nb=Yy.length,rb=class extends Dy{constructor(e){super(e),this.on(`add.konva`,function(e){this._addListeners(e.child),this._sync()})}getText(){return this.find(`Text`)[0]}getTag(){return this.find(`Tag`)[0]}_addListeners(e){var t=this,n,r=function(){t._sync()};for(n=0;n<nb;n++)e.on(Yy[n]+Xy,r)}getWidth(){return this.getText().width()}getHeight(){return this.getText().height()}_sync(){var e=this.getText(),t=this.getTag(),n,r,i,a,o,s,c;if(e&&t){switch(n=e.width(),r=e.height(),i=t.pointerDirection(),a=t.pointerWidth(),c=t.pointerHeight(),o=0,s=0,i){case Qy:o=n/2,s=-1*c;break;case $y:o=n+a,s=r/2;break;case eb:o=n/2,s=r+c;break;case tb:o=-1*a,s=r/2;break}t.setAttrs({x:-1*o,y:-1*s,width:n,height:r}),e.setAttrs({x:-1*o,y:-1*s})}}};rb.prototype.className=`Label`,Qg(rb);var ib=class extends ${_sceneFunc(e){var t=this.width(),n=this.height(),r=this.pointerDirection(),i=this.pointerWidth(),a=this.pointerHeight(),o=this.cornerRadius();let s=0,c=0,l=0,u=0;typeof o==`number`?s=c=l=u=Math.min(o,t/2,n/2):(s=Math.min(o[0]||0,t/2,n/2),c=Math.min(o[1]||0,t/2,n/2),u=Math.min(o[2]||0,t/2,n/2),l=Math.min(o[3]||0,t/2,n/2)),e.beginPath(),e.moveTo(s,0),r===Qy&&(e.lineTo((t-i)/2,0),e.lineTo(t/2,-1*a),e.lineTo((t+i)/2,0)),e.lineTo(t-c,0),e.arc(t-c,c,c,Math.PI*3/2,0,!1),r===$y&&(e.lineTo(t,(n-a)/2),e.lineTo(t+i,n/2),e.lineTo(t,(n+a)/2)),e.lineTo(t,n-u),e.arc(t-u,n-u,u,0,Math.PI/2,!1),r===eb&&(e.lineTo((t+i)/2,n),e.lineTo(t/2,n+a),e.lineTo((t-i)/2,n)),e.lineTo(l,n),e.arc(l,n-l,l,Math.PI/2,Math.PI,!1),r===tb&&(e.lineTo(0,(n+a)/2),e.lineTo(-1*i,n/2),e.lineTo(0,(n-a)/2)),e.lineTo(0,s),e.arc(s,s,s,Math.PI,Math.PI*3/2,!1),e.closePath(),e.fillStrokeShape(this)}getSelfRect(){var e=0,t=0,n=this.pointerWidth(),r=this.pointerHeight(),i=this.pointerDirection(),a=this.width(),o=this.height();return i===Qy?(t-=r,o+=r):i===eb?o+=r:i===tb?(e-=n*1.5,a+=n):i===$y&&(a+=n*1.5),{x:e,y:t,width:a,height:o}}};ib.prototype.className=`Tag`,Qg(ib),Z.addGetterSetter(ib,`pointerDirection`,Zy),Z.addGetterSetter(ib,`pointerWidth`,0,X()),Z.addGetterSetter(ib,`pointerHeight`,0,X()),Z.addGetterSetter(ib,`cornerRadius`,0,v_(4));var ab=class extends ${_sceneFunc(e){var t=this.cornerRadius(),n=this.width(),r=this.height();if(e.beginPath(),!t)e.rect(0,0,n,r);else{let i=0,a=0,o=0,s=0;typeof t==`number`?i=a=o=s=Math.min(t,n/2,r/2):(i=Math.min(t[0]||0,n/2,r/2),a=Math.min(t[1]||0,n/2,r/2),s=Math.min(t[2]||0,n/2,r/2),o=Math.min(t[3]||0,n/2,r/2)),e.moveTo(i,0),e.lineTo(n-a,0),e.arc(n-a,a,a,Math.PI*3/2,0,!1),e.lineTo(n,r-s),e.arc(n-s,r-s,s,0,Math.PI/2,!1),e.lineTo(o,r),e.arc(o,r-o,o,Math.PI/2,Math.PI,!1),e.lineTo(0,i),e.arc(i,i,i,Math.PI,Math.PI*3/2,!1)}e.closePath(),e.fillStrokeShape(this)}};ab.prototype.className=`Rect`,Qg(ab),Z.addGetterSetter(ab,`cornerRadius`,0,v_(4));var ob=class extends ${_sceneFunc(e){let t=this._getPoints();e.beginPath(),e.moveTo(t[0].x,t[0].y);for(var n=1;n<t.length;n++)e.lineTo(t[n].x,t[n].y);e.closePath(),e.fillStrokeShape(this)}_getPoints(){let e=this.attrs.sides,t=this.attrs.radius||0,n=[];for(var r=0;r<e;r++)n.push({x:t*Math.sin(r*2*Math.PI/e),y:-1*t*Math.cos(r*2*Math.PI/e)});return n}getSelfRect(){let e=this._getPoints();var t=e[0].x,n=e[0].y,r=e[0].x,i=e[0].y;return e.forEach(e=>{t=Math.min(t,e.x),n=Math.max(n,e.x),r=Math.min(r,e.y),i=Math.max(i,e.y)}),{x:t,y:r,width:n-t,height:i-r}}getWidth(){return this.radius()*2}getHeight(){return this.radius()*2}setWidth(e){this.radius(e/2)}setHeight(e){this.radius(e/2)}};ob.prototype.className=`RegularPolygon`,ob.prototype._centroid=!0,ob.prototype._attrsAffectingSize=[`radius`],Qg(ob),Z.addGetterSetter(ob,`radius`,0,X()),Z.addGetterSetter(ob,`sides`,0,X());var sb=Math.PI*2,cb=class extends ${_sceneFunc(e){e.beginPath(),e.arc(0,0,this.innerRadius(),0,sb,!1),e.moveTo(this.outerRadius(),0),e.arc(0,0,this.outerRadius(),sb,0,!0),e.closePath(),e.fillStrokeShape(this)}getWidth(){return this.outerRadius()*2}getHeight(){return this.outerRadius()*2}setWidth(e){this.outerRadius(e/2)}setHeight(e){this.outerRadius(e/2)}};cb.prototype.className=`Ring`,cb.prototype._centroid=!0,cb.prototype._attrsAffectingSize=[`innerRadius`,`outerRadius`],Qg(cb),Z.addGetterSetter(cb,`innerRadius`,0,X()),Z.addGetterSetter(cb,`outerRadius`,0,X());var lb=class extends ${constructor(e){super(e),this._updated=!0,this.anim=new ky(()=>{var e=this._updated;return this._updated=!1,e}),this.on(`animationChange.konva`,function(){this.frameIndex(0)}),this.on(`frameIndexChange.konva`,function(){this._updated=!0}),this.on(`frameRateChange.konva`,function(){this.anim.isRunning()&&(clearInterval(this.interval),this._setInterval())})}_sceneFunc(e){var t=this.animation(),n=this.frameIndex(),r=n*4,i=this.animations()[t],a=this.frameOffsets(),o=i[r+0],s=i[r+1],c=i[r+2],l=i[r+3],u=this.image();if((this.hasFill()||this.hasStroke())&&(e.beginPath(),e.rect(0,0,c,l),e.closePath(),e.fillStrokeShape(this)),u)if(a){var d=a[t],f=n*2;e.drawImage(u,o,s,c,l,d[f+0],d[f+1],c,l)}else e.drawImage(u,o,s,c,l,0,0,c,l)}_hitFunc(e){var t=this.animation(),n=this.frameIndex(),r=n*4,i=this.animations()[t],a=this.frameOffsets(),o=i[r+2],s=i[r+3];if(e.beginPath(),a){var c=a[t],l=n*2;e.rect(c[l+0],c[l+1],o,s)}else e.rect(0,0,o,s);e.closePath(),e.fillShape(this)}_useBufferCanvas(){return super._useBufferCanvas(!0)}_setInterval(){var e=this;this.interval=setInterval(function(){e._updateIndex()},1e3/this.frameRate())}start(){if(!this.isRunning()){var e=this.getLayer();this.anim.setLayers(e),this._setInterval(),this.anim.start()}}stop(){this.anim.stop(),clearInterval(this.interval)}isRunning(){return this.anim.isRunning()}_updateIndex(){var e=this.frameIndex(),t=this.animation();e<this.animations()[t].length/4-1?this.frameIndex(e+1):this.frameIndex(0)}};lb.prototype.className=`Sprite`,Qg(lb),Z.addGetterSetter(lb,`animation`),Z.addGetterSetter(lb,`animations`),Z.addGetterSetter(lb,`frameOffsets`),Z.addGetterSetter(lb,`image`),Z.addGetterSetter(lb,`frameIndex`,0,X()),Z.addGetterSetter(lb,`frameRate`,17,X()),Z.backCompat(lb,{index:`frameIndex`,getIndex:`getFrameIndex`,setIndex:`setFrameIndex`});var ub=class extends ${_sceneFunc(e){var t=this.innerRadius(),n=this.outerRadius(),r=this.numPoints();e.beginPath(),e.moveTo(0,0-n);for(var i=1;i<r*2;i++){var a=i%2==0?n:t,o=a*Math.sin(i*Math.PI/r),s=-1*a*Math.cos(i*Math.PI/r);e.lineTo(o,s)}e.closePath(),e.fillStrokeShape(this)}getWidth(){return this.outerRadius()*2}getHeight(){return this.outerRadius()*2}setWidth(e){this.outerRadius(e/2)}setHeight(e){this.outerRadius(e/2)}};ub.prototype.className=`Star`,ub.prototype._centroid=!0,ub.prototype._attrsAffectingSize=[`innerRadius`,`outerRadius`],Qg(ub),Z.addGetterSetter(ub,`numPoints`,5,X()),Z.addGetterSetter(ub,`innerRadius`,0,X()),Z.addGetterSetter(ub,`outerRadius`,0,X());function db(e){return Array.from(e)}var fb=`auto`,pb=`center`,mb=`justify`,hb=`Change.konva`,gb=`2d`,_b=`-`,vb=`left`,yb=`text`,bb=`Text`,xb=`top`,Sb=`bottom`,Cb=`middle`,wb=`normal`,Tb=`px `,Eb=` `,Db=`right`,Ob=`word`,kb=`char`,Ab=`none`,jb=`…`,Mb=[`fontFamily`,`fontSize`,`fontStyle`,`fontVariant`,`padding`,`align`,`verticalAlign`,`lineHeight`,`text`,`width`,`height`,`wrap`,`ellipsis`,`letterSpacing`],Nb=Mb.length;function Pb(e){return e.split(`,`).map(e=>{e=e.trim();let t=e.indexOf(` `)>=0,n=e.indexOf(`"`)>=0||e.indexOf(`'`)>=0;return t&&!n&&(e=`"${e}"`),e}).join(`, `)}var Fb;function Ib(){return Fb||(Fb=Y.createCanvasElement().getContext(gb),Fb)}function Lb(e){e.fillText(this._partialText,this._partialTextX,this._partialTextY)}function Rb(e){e.strokeText(this._partialText,this._partialTextX,this._partialTextY)}function zb(e){return e||={},!e.fillLinearGradientColorStops&&!e.fillRadialGradientColorStops&&!e.fillPatternImage&&(e.fill=e.fill||`black`),e}var Bb=class extends ${constructor(e){super(zb(e)),this._partialTextX=0,this._partialTextY=0;for(var t=0;t<Nb;t++)this.on(Mb[t]+hb,this._setTextData);this._setTextData()}_sceneFunc(e){var t=this.textArr,n=t.length;if(this.text()){var r=this.padding(),i=this.fontSize(),a=this.lineHeight()*i,o=this.verticalAlign(),s=0,c=this.align(),l=this.getWidth(),u=this.letterSpacing(),d=this.fill(),f=this.textDecoration(),p=f.indexOf(`underline`)!==-1,m=f.indexOf(`line-through`)!==-1,h,g=0,g=a/2,_=0,v=0;for(e.setAttr(`font`,this._getContextFont()),e.setAttr(`textBaseline`,Cb),e.setAttr(`textAlign`,vb),o===Cb?s=(this.getHeight()-n*a-r*2)/2:o===Sb&&(s=this.getHeight()-n*a-r*2),e.translate(r,s+r),h=0;h<n;h++){var _=0,v=0,y=t[h],b=y.text,x=y.width,S=h!==n-1,C,w,T;if(e.save(),c===Db?_+=l-x-r*2:c===pb&&(_+=(l-x-r*2)/2),p&&(e.save(),e.beginPath(),e.moveTo(_,g+v+Math.round(i/2)),C=b.split(` `).length-1,w=C===0,T=c===mb&&S&&!w?l-r*2:x,e.lineTo(_+Math.round(T),g+v+Math.round(i/2)),e.lineWidth=i/15,e.strokeStyle=d,e.stroke(),e.restore()),m&&(e.save(),e.beginPath(),e.moveTo(_,g+v),C=b.split(` `).length-1,w=C===0,T=c===mb&&S&&!w?l-r*2:x,e.lineTo(_+Math.round(T),g+v),e.lineWidth=i/15,e.strokeStyle=d,e.stroke(),e.restore()),u!==0||c===mb){C=b.split(` `).length-1;for(var E=db(b),D=0;D<E.length;D++){var O=E[D];O===` `&&h!==n-1&&c===mb&&(_+=(l-r*2-x)/C),this._partialTextX=_,this._partialTextY=g+v,this._partialText=O,e.fillStrokeShape(this),_+=this.measureSize(O).width+u}}else this._partialTextX=_,this._partialTextY=g+v,this._partialText=b,e.fillStrokeShape(this);e.restore(),n>1&&(g+=a)}}}_hitFunc(e){var t=this.getWidth(),n=this.getHeight();e.beginPath(),e.rect(0,0,t,n),e.closePath(),e.fillStrokeShape(this)}setText(e){var t=Y._isString(e)?e:e==null?``:e+``;return this._setAttr(yb,t),this}getWidth(){return this.attrs.width===fb||this.attrs.width===void 0?this.getTextWidth()+this.padding()*2:this.attrs.width}getHeight(){return this.attrs.height===fb||this.attrs.height===void 0?this.fontSize()*this.textArr.length*this.lineHeight()+this.padding()*2:this.attrs.height}getTextWidth(){return this.textWidth}getTextHeight(){return Y.warn(`text.getTextHeight() method is deprecated. Use text.height() - for full height and text.fontSize() - for one line height.`),this.textHeight}measureSize(e){var t=Ib(),n=this.fontSize(),r;return t.save(),t.font=this._getContextFont(),r=t.measureText(e),t.restore(),{width:r.width,height:n}}_getContextFont(){return this.fontStyle()+Eb+this.fontVariant()+Eb+(this.fontSize()+Tb)+Pb(this.fontFamily())}_addTextLine(e){this.align()===mb&&(e=e.trim());var t=this._getTextWidth(e);return this.textArr.push({text:e,width:t})}_getTextWidth(e){var t=this.letterSpacing(),n=e.length;return Ib().measureText(e).width+(n?t*(n-1):0)}_setTextData(){var e=this.text().split(`
|
|
184
|
-
`),t=+this.fontSize(),n=0,r=this.lineHeight()*t,i=this.attrs.width,a=this.attrs.height,o=i!==fb&&i!==void 0,s=a!==fb&&a!==void 0,c=this.padding(),l=i-c*2,u=a-c*2,d=0,f=this.wrap(),p=f!==Ab,m=f!==kb&&p,h=this.ellipsis();this.textArr=[],Ib().font=this._getContextFont();for(var g=h?this._getTextWidth(jb):0,_=0,v=e.length;_<v;++_){var y=e[_],b=this._getTextWidth(y);if(o&&b>l)for(;y.length>0;){for(var x=0,S=y.length,C=``,w=0;x<S;){var T=x+S>>>1,E=y.slice(0,T+1),D=this._getTextWidth(E)+g;D<=l?(x=T+1,C=E,w=D):S=T}if(C){if(m){var O,ee=y[C.length];O=(ee===Eb||ee===_b)&&w<=l?C.length:Math.max(C.lastIndexOf(Eb),C.lastIndexOf(_b))+1,O>0&&(x=O,C=C.slice(0,x),w=this._getTextWidth(C))}if(C=C.trimRight(),this._addTextLine(C),n=Math.max(n,w),d+=r,!p||s&&d+r>u){var te=this.textArr[this.textArr.length-1];te&&h&&(this._getTextWidth(te.text+jb)<l||(te.text=te.text.slice(0,te.text.length-3)),this.textArr.splice(this.textArr.length-1,1),this._addTextLine(te.text+jb));break}if(y=y.slice(x),y=y.trimLeft(),y.length>0&&(b=this._getTextWidth(y),b<=l)){this._addTextLine(y),d+=r,n=Math.max(n,b);break}}else break}else this._addTextLine(y),d+=r,n=Math.max(n,b);if(s&&d+r>u)break}this.textHeight=t,this.textWidth=n}getStrokeScaleEnabled(){return!0}};Bb.prototype._fillFunc=Lb,Bb.prototype._strokeFunc=Rb,Bb.prototype.className=bb,Bb.prototype._attrsAffectingSize=[`text`,`fontSize`,`padding`,`wrap`,`lineHeight`,`letterSpacing`],Qg(Bb),Z.overWriteSetter(Bb,`width`,y_()),Z.overWriteSetter(Bb,`height`,y_()),Z.addGetterSetter(Bb,`fontFamily`,`Arial`),Z.addGetterSetter(Bb,`fontSize`,12,X()),Z.addGetterSetter(Bb,`fontStyle`,wb),Z.addGetterSetter(Bb,`fontVariant`,wb),Z.addGetterSetter(Bb,`padding`,0,X()),Z.addGetterSetter(Bb,`align`,vb),Z.addGetterSetter(Bb,`verticalAlign`,xb),Z.addGetterSetter(Bb,`lineHeight`,1,X()),Z.addGetterSetter(Bb,`wrap`,Ob),Z.addGetterSetter(Bb,`ellipsis`,!1,C_()),Z.addGetterSetter(Bb,`letterSpacing`,0,X()),Z.addGetterSetter(Bb,`text`,``,b_()),Z.addGetterSetter(Bb,`textDecoration`,``);var Vb=``,Hb=`normal`;function Ub(e){e.fillText(this.partialText,0,0)}function Wb(e){e.strokeText(this.partialText,0,0)}var Gb=class extends ${constructor(e){super(e),this.dummyCanvas=Y.createCanvasElement(),this.dataArray=[],this.dataArray=Wy.parsePathData(this.attrs.data),this.on(`dataChange.konva`,function(){this.dataArray=Wy.parsePathData(this.attrs.data),this._setTextData()}),this.on(`textChange.konva alignChange.konva letterSpacingChange.konva kerningFuncChange.konva fontSizeChange.konva`,this._setTextData),this._setTextData()}_sceneFunc(e){e.setAttr(`font`,this._getContextFont()),e.setAttr(`textBaseline`,this.textBaseline()),e.setAttr(`textAlign`,`left`),e.save();var t=this.textDecoration(),n=this.fill(),r=this.fontSize(),i=this.glyphInfo;t===`underline`&&e.beginPath();for(var a=0;a<i.length;a++){e.save();var o=i[a].p0;e.translate(o.x,o.y),e.rotate(i[a].rotation),this.partialText=i[a].text,e.fillStrokeShape(this),t===`underline`&&(a===0&&e.moveTo(0,r/2+1),e.lineTo(r,r/2+1)),e.restore()}t===`underline`&&(e.strokeStyle=n,e.lineWidth=r/20,e.stroke()),e.restore()}_hitFunc(e){e.beginPath();var t=this.glyphInfo;if(t.length>=1){var n=t[0].p0;e.moveTo(n.x,n.y)}for(var r=0;r<t.length;r++){var i=t[r].p1;e.lineTo(i.x,i.y)}e.setAttr(`lineWidth`,this.fontSize()),e.setAttr(`strokeStyle`,this.colorKey),e.stroke()}getTextWidth(){return this.textWidth}getTextHeight(){return Y.warn(`text.getTextHeight() method is deprecated. Use text.height() - for full height and text.fontSize() - for one line height.`),this.textHeight}setText(e){return Bb.prototype.setText.call(this,e)}_getContextFont(){return Bb.prototype._getContextFont.call(this)}_getTextSize(e){var t=this.dummyCanvas.getContext(`2d`);t.save(),t.font=this._getContextFont();var n=t.measureText(e);return t.restore(),{width:n.width,height:parseInt(this.attrs.fontSize,10)}}_setTextData(){var e=this,t=this._getTextSize(this.attrs.text),n=this.letterSpacing(),r=this.align(),i=this.kerningFunc();this.textWidth=t.width,this.textHeight=t.height;var a=Math.max(this.textWidth+((this.attrs.text||``).length-1)*n,0);this.glyphInfo=[];for(var o=0,s=0;s<e.dataArray.length;s++)e.dataArray[s].pathLength>0&&(o+=e.dataArray[s].pathLength);var c=0;r===`center`&&(c=Math.max(0,o/2-a/2)),r===`right`&&(c=Math.max(0,o-a));for(var l=db(this.text()),u=this.text().split(` `).length-1,d,f,p,m=-1,h=0,g=function(){h=0;for(var t=e.dataArray,n=m+1;n<t.length;n++)if(t[n].pathLength>0)return m=n,t[n];else t[n].command===`M`&&(d={x:t[n].points[0],y:t[n].points[1]});return{}},_=function(t){var i=e._getTextSize(t).width+n;t===` `&&r===`justify`&&(i+=(o-a)/u);var s=0,c=0;for(f=void 0;Math.abs(i-s)/i>.01&&c<20;){c++;for(var l=s;p===void 0;)p=g(),p&&l+p.pathLength<i&&(l+=p.pathLength,p=void 0);if(p==={}||d===void 0)return;var m=!1;switch(p.command){case`L`:Wy.getLineLength(d.x,d.y,p.points[0],p.points[1])>i?f=Wy.getPointOnLine(i,d.x,d.y,p.points[0],p.points[1],d.x,d.y):p=void 0;break;case`A`:var _=p.points[4],v=p.points[5],y=p.points[4]+v;h===0?h=_+1e-8:i>s?h+=Math.PI/180*v/Math.abs(v):h-=Math.PI/360*v/Math.abs(v),(v<0&&h<y||v>=0&&h>y)&&(h=y,m=!0),f=Wy.getPointOnEllipticalArc(p.points[0],p.points[1],p.points[2],p.points[3],h,p.points[6]);break;case`C`:h===0?h=i>p.pathLength?1e-8:i/p.pathLength:i>s?h+=(i-s)/p.pathLength/2:h=Math.max(h-(s-i)/p.pathLength/2,0),h>1&&(h=1,m=!0),f=Wy.getPointOnCubicBezier(h,p.start.x,p.start.y,p.points[0],p.points[1],p.points[2],p.points[3],p.points[4],p.points[5]);break;case`Q`:h===0?h=i/p.pathLength:i>s?h+=(i-s)/p.pathLength:h-=(s-i)/p.pathLength,h>1&&(h=1,m=!0),f=Wy.getPointOnQuadraticBezier(h,p.start.x,p.start.y,p.points[0],p.points[1],p.points[2],p.points[3]);break}f!==void 0&&(s=Wy.getLineLength(d.x,d.y,f.x,f.y)),m&&(m=!1,p=void 0)}},v=`C`,y=e._getTextSize(v).width+n,b=c/y-1,x=0;x<b&&(_(v),!(d===void 0||f===void 0));x++)d=f;for(var S=0;S<l.length&&(_(l[S]),!(d===void 0||f===void 0));S++){var C=Wy.getLineLength(d.x,d.y,f.x,f.y),w=0;if(i)try{w=i(l[S-1],l[S])*this.fontSize()}catch{w=0}d.x+=w,f.x+=w,this.textWidth+=w;var T=Wy.getPointOnLine(w+C/2,d.x,d.y,f.x,f.y),E=Math.atan2(f.y-d.y,f.x-d.x);this.glyphInfo.push({transposeX:T.x,transposeY:T.y,text:l[S],rotation:E,p0:d,p1:f}),d=f}}getSelfRect(){if(!this.glyphInfo.length)return{x:0,y:0,width:0,height:0};var e=[];this.glyphInfo.forEach(function(t){e.push(t.p0.x),e.push(t.p0.y),e.push(t.p1.x),e.push(t.p1.y)});for(var t=e[0]||0,n=e[0]||0,r=e[1]||0,i=e[1]||0,a,o,s=0;s<e.length/2;s++)a=e[s*2],o=e[s*2+1],t=Math.min(t,a),n=Math.max(n,a),r=Math.min(r,o),i=Math.max(i,o);var c=this.fontSize();return{x:t-c/2,y:r-c/2,width:n-t+c,height:i-r+c}}};Gb.prototype._fillFunc=Ub,Gb.prototype._strokeFunc=Wb,Gb.prototype._fillFuncHit=Ub,Gb.prototype._strokeFuncHit=Wb,Gb.prototype.className=`TextPath`,Gb.prototype._attrsAffectingSize=[`text`,`fontSize`,`data`],Qg(Gb),Z.addGetterSetter(Gb,`data`),Z.addGetterSetter(Gb,`fontFamily`,`Arial`),Z.addGetterSetter(Gb,`fontSize`,12,X()),Z.addGetterSetter(Gb,`fontStyle`,Hb),Z.addGetterSetter(Gb,`align`,`left`),Z.addGetterSetter(Gb,`letterSpacing`,0,X()),Z.addGetterSetter(Gb,`textBaseline`,`middle`),Z.addGetterSetter(Gb,`fontVariant`,Hb),Z.addGetterSetter(Gb,`text`,Vb),Z.addGetterSetter(Gb,`textDecoration`,null),Z.addGetterSetter(Gb,`kerningFunc`,null);var Kb=`tr-konva`,qb=[`resizeEnabledChange`,`rotateAnchorOffsetChange`,`rotateEnabledChange`,`enabledAnchorsChange`,`anchorSizeChange`,`borderEnabledChange`,`borderStrokeChange`,`borderStrokeWidthChange`,`borderDashChange`,`anchorStrokeChange`,`anchorStrokeWidthChange`,`anchorFillChange`,`anchorCornerRadiusChange`,`ignoreStrokeChange`].map(e=>e+`.${Kb}`).join(` `),Jb=`nodesRect`,Yb=[`widthChange`,`heightChange`,`scaleXChange`,`scaleYChange`,`skewXChange`,`skewYChange`,`rotationChange`,`offsetXChange`,`offsetYChange`,`transformsEnabledChange`,`strokeWidthChange`],Xb={"top-left":-45,"top-center":0,"top-right":45,"middle-right":-90,"middle-left":90,"bottom-left":-135,"bottom-center":180,"bottom-right":135},Zb=`ontouchstart`in J._global;function Qb(e,t){if(e===`rotater`)return`crosshair`;t+=Y.degToRad(Xb[e]||0);var n=(Y.radToDeg(t)%360+360)%360;return Y._inRange(n,337.5,360)||Y._inRange(n,0,22.5)?`ns-resize`:Y._inRange(n,22.5,67.5)?`nesw-resize`:Y._inRange(n,67.5,112.5)?`ew-resize`:Y._inRange(n,112.5,157.5)?`nwse-resize`:Y._inRange(n,157.5,202.5)?`ns-resize`:Y._inRange(n,202.5,247.5)?`nesw-resize`:Y._inRange(n,247.5,292.5)?`ew-resize`:Y._inRange(n,292.5,337.5)?`nwse-resize`:(Y.error(`Transformer has unknown angle for cursor detection: `+n),`pointer`)}var $b=[`top-left`,`top-center`,`top-right`,`middle-right`,`middle-left`,`bottom-left`,`bottom-center`,`bottom-right`],ex=1e8;function tx(e){return{x:e.x+e.width/2*Math.cos(e.rotation)+e.height/2*Math.sin(-e.rotation),y:e.y+e.height/2*Math.cos(e.rotation)+e.width/2*Math.sin(e.rotation)}}function nx(e,t,n){let r=n.x+(e.x-n.x)*Math.cos(t)-(e.y-n.y)*Math.sin(t),i=n.y+(e.x-n.x)*Math.sin(t)+(e.y-n.y)*Math.cos(t);return Object.assign(Object.assign({},e),{rotation:e.rotation+t,x:r,y:i})}function rx(e,t){return nx(e,t,tx(e))}function ix(e,t,n){let r=t;for(let i=0;i<e.length;i++){let a=J.getAngle(e[i]),o=Math.abs(a-t)%(Math.PI*2);Math.min(o,Math.PI*2-o)<n&&(r=a)}return r}var ax=class extends Dy{constructor(e){super(e),this._transforming=!1,this._createElements(),this._handleMouseMove=this._handleMouseMove.bind(this),this._handleMouseUp=this._handleMouseUp.bind(this),this.update=this.update.bind(this),this.on(qb,this.update),this.getNode()&&this.update()}attachTo(e){return this.setNode(e),this}setNode(e){return Y.warn(`tr.setNode(shape), tr.node(shape) and tr.attachTo(shape) methods are deprecated. Please use tr.nodes(nodesArray) instead.`),this.setNodes([e])}getNode(){return this._nodes&&this._nodes[0]}_getEventNamespace(){return Kb+this._id}setNodes(e=[]){return this._nodes&&this._nodes.length&&this.detach(),this._nodes=e,e.length===1&&this.useSingleNodeRotation()?this.rotation(e[0].getAbsoluteRotation()):this.rotation(0),this._nodes.forEach(e=>{let t=()=>{this.nodes().length===1&&this.useSingleNodeRotation()&&this.rotation(this.nodes()[0].getAbsoluteRotation()),this._resetTransformCache(),!this._transforming&&!this.isDragging()&&this.update()},n=e._attrsAffectingSize.map(e=>e+`Change.`+this._getEventNamespace()).join(` `);e.on(n,t),e.on(Yb.map(e=>e+`.${this._getEventNamespace()}`).join(` `),t),e.on(`absoluteTransformChange.${this._getEventNamespace()}`,t),this._proxyDrag(e)}),this._resetTransformCache(),this.findOne(`.top-left`)&&this.update(),this}_proxyDrag(e){let t;e.on(`dragstart.${this._getEventNamespace()}`,n=>{t=e.getAbsolutePosition(),!this.isDragging()&&e!==this.findOne(`.back`)&&this.startDrag(n,!1)}),e.on(`dragmove.${this._getEventNamespace()}`,n=>{if(!t)return;let r=e.getAbsolutePosition(),i=r.x-t.x,a=r.y-t.y;this.nodes().forEach(t=>{if(t===e||t.isDragging())return;let r=t.getAbsolutePosition();t.setAbsolutePosition({x:r.x+i,y:r.y+a}),t.startDrag(n)}),t=null})}getNodes(){return this._nodes||[]}getActiveAnchor(){return this._movingAnchorName}detach(){this._nodes&&this._nodes.forEach(e=>{e.off(`.`+this._getEventNamespace())}),this._nodes=[],this._resetTransformCache()}_resetTransformCache(){this._clearCache(Jb),this._clearCache(`transform`),this._clearSelfAndDescendantCache(`absoluteTransform`)}_getNodeRect(){return this._getCache(Jb,this.__getNodeRect)}__getNodeShape(e,t=this.rotation(),n){var r=e.getClientRect({skipTransform:!0,skipShadow:!0,skipStroke:this.ignoreStroke()}),i=e.getAbsoluteScale(n),a=e.getAbsolutePosition(n),o=r.x*i.x-e.offsetX()*i.x,s=r.y*i.y-e.offsetY()*i.y;let c=(J.getAngle(e.getAbsoluteRotation())+Math.PI*2)%(Math.PI*2);return nx({x:a.x+o*Math.cos(c)+s*Math.sin(-c),y:a.y+s*Math.cos(c)+o*Math.sin(c),width:r.width*i.x,height:r.height*i.y,rotation:c},-J.getAngle(t),{x:0,y:0})}__getNodeRect(){if(!this.getNode())return{x:-ex,y:-ex,width:0,height:0,rotation:0};let e=[];this.nodes().map(t=>{let n=t.getClientRect({skipTransform:!0,skipShadow:!0,skipStroke:this.ignoreStroke()});var r=[{x:n.x,y:n.y},{x:n.x+n.width,y:n.y},{x:n.x+n.width,y:n.y+n.height},{x:n.x,y:n.y+n.height}],i=t.getAbsoluteTransform();r.forEach(function(t){var n=i.point(t);e.push(n)})});let t=new $g;t.rotate(-J.getAngle(this.rotation()));var n,r,i,a;e.forEach(function(e){var o=t.point(e);n===void 0&&(n=i=o.x,r=a=o.y),n=Math.min(n,o.x),r=Math.min(r,o.y),i=Math.max(i,o.x),a=Math.max(a,o.y)}),t.invert();let o=t.point({x:n,y:r});return{x:o.x,y:o.y,width:i-n,height:a-r,rotation:J.getAngle(this.rotation())}}getX(){return this._getNodeRect().x}getY(){return this._getNodeRect().y}getWidth(){return this._getNodeRect().width}getHeight(){return this._getNodeRect().height}_createElements(){this._createBack(),$b.forEach(function(e){this._createAnchor(e)}.bind(this)),this._createAnchor(`rotater`)}_createAnchor(e){var t=new ab({stroke:`rgb(0, 161, 255)`,fill:`white`,strokeWidth:1,name:e+` _anchor`,dragDistance:0,draggable:!0,hitStrokeWidth:Zb?10:`auto`}),n=this;t.on(`mousedown touchstart`,function(e){n._handleMouseDown(e)}),t.on(`dragstart`,e=>{t.stopDrag(),e.cancelBubble=!0}),t.on(`dragend`,e=>{e.cancelBubble=!0}),t.on(`mouseenter`,()=>{var n=Qb(e,J.getAngle(this.rotation()));t.getStage().content&&(t.getStage().content.style.cursor=n),this._cursorChange=!0}),t.on(`mouseout`,()=>{t.getStage().content&&(t.getStage().content.style.cursor=``),this._cursorChange=!1}),this.add(t)}_createBack(){var e=new $({name:`back`,width:0,height:0,draggable:!0,sceneFunc(e){var t=this.getParent(),n=t.padding();e.beginPath(),e.rect(-n,-n,this.width()+n*2,this.height()+n*2),e.moveTo(this.width()/2,-n),t.rotateEnabled()&&e.lineTo(this.width()/2,-t.rotateAnchorOffset()*Y._sign(this.height())-n),e.fillStrokeShape(this)},hitFunc:(e,t)=>{if(this.shouldOverdrawWholeArea()){var n=this.padding();e.beginPath(),e.rect(-n,-n,t.width()+n*2,t.height()+n*2),e.fillStrokeShape(t)}}});this.add(e),this._proxyDrag(e),e.on(`dragstart`,e=>{e.cancelBubble=!0}),e.on(`dragmove`,e=>{e.cancelBubble=!0}),e.on(`dragend`,e=>{e.cancelBubble=!0}),this.on(`dragmove`,e=>{this.update()})}_handleMouseDown(e){this._movingAnchorName=e.target.name().split(` `)[0];var t=this._getNodeRect(),n=t.width,r=t.height,i=Math.sqrt(n**2+r**2);this.sin=Math.abs(r/i),this.cos=Math.abs(n/i),typeof window<`u`&&(window.addEventListener(`mousemove`,this._handleMouseMove),window.addEventListener(`touchmove`,this._handleMouseMove),window.addEventListener(`mouseup`,this._handleMouseUp,!0),window.addEventListener(`touchend`,this._handleMouseUp,!0)),this._transforming=!0;var a=e.target.getAbsolutePosition(),o=e.target.getStage().getPointerPosition();this._anchorDragOffset={x:o.x-a.x,y:o.y-a.y},this._fire(`transformstart`,{evt:e,target:this.getNode()}),this._nodes.forEach(t=>{t._fire(`transformstart`,{evt:e,target:t})})}_handleMouseMove(e){var t,n,r,i=this.findOne(`.`+this._movingAnchorName),a=i.getStage();a.setPointersPositions(e);let o=a.getPointerPosition(),s={x:o.x-this._anchorDragOffset.x,y:o.y-this._anchorDragOffset.y},c=i.getAbsolutePosition();this.anchorDragBoundFunc()&&(s=this.anchorDragBoundFunc()(c,s,e)),i.setAbsolutePosition(s);let l=i.getAbsolutePosition();if(!(c.x===l.x&&c.y===l.y)){if(this._movingAnchorName===`rotater`){var u=this._getNodeRect();t=i.x()-u.width/2,n=-i.y()+u.height/2;let r=Math.atan2(-n,t)+Math.PI/2;u.height<0&&(r-=Math.PI);let a=J.getAngle(this.rotation())+r,o=J.getAngle(this.rotationSnapTolerance()),s=rx(u,ix(this.rotationSnaps(),a,o)-u.rotation);this._fitNodesInto(s,e);return}var d=this.keepRatio()||e.shiftKey,f=this.centeredScaling()||e.altKey;if(this._movingAnchorName===`top-left`){if(d){var p=f?{x:this.width()/2,y:this.height()/2}:{x:this.findOne(`.bottom-right`).x(),y:this.findOne(`.bottom-right`).y()};r=Math.sqrt((p.x-i.x())**2+(p.y-i.y())**2);var m=this.findOne(`.top-left`).x()>p.x?-1:1,h=this.findOne(`.top-left`).y()>p.y?-1:1;t=r*this.cos*m,n=r*this.sin*h,this.findOne(`.top-left`).x(p.x-t),this.findOne(`.top-left`).y(p.y-n)}}else if(this._movingAnchorName===`top-center`)this.findOne(`.top-left`).y(i.y());else if(this._movingAnchorName===`top-right`){if(d){var p=f?{x:this.width()/2,y:this.height()/2}:{x:this.findOne(`.bottom-left`).x(),y:this.findOne(`.bottom-left`).y()};r=Math.sqrt((i.x()-p.x)**2+(p.y-i.y())**2);var m=this.findOne(`.top-right`).x()<p.x?-1:1,h=this.findOne(`.top-right`).y()>p.y?-1:1;t=r*this.cos*m,n=r*this.sin*h,this.findOne(`.top-right`).x(p.x+t),this.findOne(`.top-right`).y(p.y-n)}var g=i.position();this.findOne(`.top-left`).y(g.y),this.findOne(`.bottom-right`).x(g.x)}else if(this._movingAnchorName===`middle-left`)this.findOne(`.top-left`).x(i.x());else if(this._movingAnchorName===`middle-right`)this.findOne(`.bottom-right`).x(i.x());else if(this._movingAnchorName===`bottom-left`){if(d){var p=f?{x:this.width()/2,y:this.height()/2}:{x:this.findOne(`.top-right`).x(),y:this.findOne(`.top-right`).y()};r=Math.sqrt((p.x-i.x())**2+(i.y()-p.y)**2);var m=p.x<i.x()?-1:1,h=i.y()<p.y?-1:1;t=r*this.cos*m,n=r*this.sin*h,i.x(p.x-t),i.y(p.y+n)}g=i.position(),this.findOne(`.top-left`).x(g.x),this.findOne(`.bottom-right`).y(g.y)}else if(this._movingAnchorName===`bottom-center`)this.findOne(`.bottom-right`).y(i.y());else if(this._movingAnchorName===`bottom-right`){if(d){var p=f?{x:this.width()/2,y:this.height()/2}:{x:this.findOne(`.top-left`).x(),y:this.findOne(`.top-left`).y()};r=Math.sqrt((i.x()-p.x)**2+(i.y()-p.y)**2);var m=this.findOne(`.bottom-right`).x()<p.x?-1:1,h=this.findOne(`.bottom-right`).y()<p.y?-1:1;t=r*this.cos*m,n=r*this.sin*h,this.findOne(`.bottom-right`).x(p.x+t),this.findOne(`.bottom-right`).y(p.y+n)}}else console.error(Error(`Wrong position argument of selection resizer: `+this._movingAnchorName));var f=this.centeredScaling()||e.altKey;if(f){var _=this.findOne(`.top-left`),v=this.findOne(`.bottom-right`),y=_.x(),b=_.y(),x=this.getWidth()-v.x(),S=this.getHeight()-v.y();v.move({x:-y,y:-b}),_.move({x,y:S})}var C=this.findOne(`.top-left`).getAbsolutePosition();t=C.x,n=C.y;var w=this.findOne(`.bottom-right`).x()-this.findOne(`.top-left`).x(),T=this.findOne(`.bottom-right`).y()-this.findOne(`.top-left`).y();this._fitNodesInto({x:t,y:n,width:w,height:T,rotation:J.getAngle(this.rotation())},e)}}_handleMouseUp(e){this._removeEvents(e)}getAbsoluteTransform(){return this.getTransform()}_removeEvents(e){if(this._transforming){this._transforming=!1,typeof window<`u`&&(window.removeEventListener(`mousemove`,this._handleMouseMove),window.removeEventListener(`touchmove`,this._handleMouseMove),window.removeEventListener(`mouseup`,this._handleMouseUp,!0),window.removeEventListener(`touchend`,this._handleMouseUp,!0));var t=this.getNode();this._fire(`transformend`,{evt:e,target:t}),t&&this._nodes.forEach(t=>{t._fire(`transformend`,{evt:e,target:t})}),this._movingAnchorName=null}}_fitNodesInto(e,t){var n=this._getNodeRect();if(Y._inRange(e.width,-this.padding()*2-1,1)){this.update();return}if(Y._inRange(e.height,-this.padding()*2-1,1)){this.update();return}let r=this.flipEnabled();var i=new $g;if(i.rotate(J.getAngle(this.rotation())),this._movingAnchorName&&e.width<0&&this._movingAnchorName.indexOf(`left`)>=0){let t=i.point({x:-this.padding()*2,y:0});if(e.x+=t.x,e.y+=t.y,e.width+=this.padding()*2,this._movingAnchorName=this._movingAnchorName.replace(`left`,`right`),this._anchorDragOffset.x-=t.x,this._anchorDragOffset.y-=t.y,!r){this.update();return}}else if(this._movingAnchorName&&e.width<0&&this._movingAnchorName.indexOf(`right`)>=0){let t=i.point({x:this.padding()*2,y:0});if(this._movingAnchorName=this._movingAnchorName.replace(`right`,`left`),this._anchorDragOffset.x-=t.x,this._anchorDragOffset.y-=t.y,e.width+=this.padding()*2,!r){this.update();return}}if(this._movingAnchorName&&e.height<0&&this._movingAnchorName.indexOf(`top`)>=0){let t=i.point({x:0,y:-this.padding()*2});if(e.x+=t.x,e.y+=t.y,this._movingAnchorName=this._movingAnchorName.replace(`top`,`bottom`),this._anchorDragOffset.x-=t.x,this._anchorDragOffset.y-=t.y,e.height+=this.padding()*2,!r){this.update();return}}else if(this._movingAnchorName&&e.height<0&&this._movingAnchorName.indexOf(`bottom`)>=0){let t=i.point({x:0,y:this.padding()*2});if(this._movingAnchorName=this._movingAnchorName.replace(`bottom`,`top`),this._anchorDragOffset.x-=t.x,this._anchorDragOffset.y-=t.y,e.height+=this.padding()*2,!r){this.update();return}}if(this.boundBoxFunc()){let t=this.boundBoxFunc()(n,e);t?e=t:Y.warn(`boundBoxFunc returned falsy. You should return new bound rect from it!`)}let a=1e7,o=new $g;o.translate(n.x,n.y),o.rotate(n.rotation),o.scale(n.width/a,n.height/a);let s=new $g;s.translate(e.x,e.y),s.rotate(e.rotation),s.scale(e.width/a,e.height/a);let c=s.multiply(o.invert());this._nodes.forEach(e=>{var n;let r=e.getParent().getAbsoluteTransform(),i=e.getTransform().copy();i.translate(e.offsetX(),e.offsetY());let a=new $g;a.multiply(r.copy().invert()).multiply(c).multiply(r).multiply(i);let o=a.decompose();e.setAttrs(o),this._fire(`transform`,{evt:t,target:e}),e._fire(`transform`,{evt:t,target:e}),(n=e.getLayer())==null||n.batchDraw()}),this.rotation(Y._getRotation(e.rotation)),this._resetTransformCache(),this.update(),this.getLayer().batchDraw()}forceUpdate(){this._resetTransformCache(),this.update()}_batchChangeChild(e,t){this.findOne(e).setAttrs(t)}update(){var e,t=this._getNodeRect();this.rotation(Y._getRotation(t.rotation));var n=t.width,r=t.height,i=this.enabledAnchors(),a=this.resizeEnabled(),o=this.padding(),s=this.anchorSize();this.find(`._anchor`).forEach(e=>{e.setAttrs({width:s,height:s,offsetX:s/2,offsetY:s/2,stroke:this.anchorStroke(),strokeWidth:this.anchorStrokeWidth(),fill:this.anchorFill(),cornerRadius:this.anchorCornerRadius()})}),this._batchChangeChild(`.top-left`,{x:0,y:0,offsetX:s/2+o,offsetY:s/2+o,visible:a&&i.indexOf(`top-left`)>=0}),this._batchChangeChild(`.top-center`,{x:n/2,y:0,offsetY:s/2+o,visible:a&&i.indexOf(`top-center`)>=0}),this._batchChangeChild(`.top-right`,{x:n,y:0,offsetX:s/2-o,offsetY:s/2+o,visible:a&&i.indexOf(`top-right`)>=0}),this._batchChangeChild(`.middle-left`,{x:0,y:r/2,offsetX:s/2+o,visible:a&&i.indexOf(`middle-left`)>=0}),this._batchChangeChild(`.middle-right`,{x:n,y:r/2,offsetX:s/2-o,visible:a&&i.indexOf(`middle-right`)>=0}),this._batchChangeChild(`.bottom-left`,{x:0,y:r,offsetX:s/2+o,offsetY:s/2-o,visible:a&&i.indexOf(`bottom-left`)>=0}),this._batchChangeChild(`.bottom-center`,{x:n/2,y:r,offsetY:s/2-o,visible:a&&i.indexOf(`bottom-center`)>=0}),this._batchChangeChild(`.bottom-right`,{x:n,y:r,offsetX:s/2-o,offsetY:s/2-o,visible:a&&i.indexOf(`bottom-right`)>=0}),this._batchChangeChild(`.rotater`,{x:n/2,y:-this.rotateAnchorOffset()*Y._sign(r)-o,visible:this.rotateEnabled()}),this._batchChangeChild(`.back`,{width:n,height:r,visible:this.borderEnabled(),stroke:this.borderStroke(),strokeWidth:this.borderStrokeWidth(),dash:this.borderDash(),x:0,y:0}),(e=this.getLayer())==null||e.batchDraw()}isTransforming(){return this._transforming}stopTransform(){if(this._transforming){this._removeEvents();var e=this.findOne(`.`+this._movingAnchorName);e&&e.stopDrag()}}destroy(){return this.getStage()&&this._cursorChange&&this.getStage().content&&(this.getStage().content.style.cursor=``),Dy.prototype.destroy.call(this),this.detach(),this._removeEvents(),this}toObject(){return Q.prototype.toObject.call(this)}};function ox(e){return e instanceof Array||Y.warn(`enabledAnchors value should be an array`),e instanceof Array&&e.forEach(function(e){$b.indexOf(e)===-1&&Y.warn(`Unknown anchor name: `+e+`. Available names are: `+$b.join(`, `))}),e||[]}ax.prototype.className=`Transformer`,Qg(ax),Z.addGetterSetter(ax,`enabledAnchors`,$b,ox),Z.addGetterSetter(ax,`flipEnabled`,!0,C_()),Z.addGetterSetter(ax,`resizeEnabled`,!0),Z.addGetterSetter(ax,`anchorSize`,10,X()),Z.addGetterSetter(ax,`rotateEnabled`,!0),Z.addGetterSetter(ax,`rotationSnaps`,[]),Z.addGetterSetter(ax,`rotateAnchorOffset`,50,X()),Z.addGetterSetter(ax,`rotationSnapTolerance`,5,X()),Z.addGetterSetter(ax,`borderEnabled`,!0),Z.addGetterSetter(ax,`anchorStroke`,`rgb(0, 161, 255)`),Z.addGetterSetter(ax,`anchorStrokeWidth`,1,X()),Z.addGetterSetter(ax,`anchorFill`,`white`),Z.addGetterSetter(ax,`anchorCornerRadius`,0,X()),Z.addGetterSetter(ax,`borderStroke`,`rgb(0, 161, 255)`),Z.addGetterSetter(ax,`borderStrokeWidth`,1,X()),Z.addGetterSetter(ax,`borderDash`),Z.addGetterSetter(ax,`keepRatio`,!0),Z.addGetterSetter(ax,`centeredScaling`,!1),Z.addGetterSetter(ax,`ignoreStroke`,!1),Z.addGetterSetter(ax,`padding`,0,X()),Z.addGetterSetter(ax,`node`),Z.addGetterSetter(ax,`nodes`),Z.addGetterSetter(ax,`boundBoxFunc`),Z.addGetterSetter(ax,`anchorDragBoundFunc`),Z.addGetterSetter(ax,`shouldOverdrawWholeArea`,!1),Z.addGetterSetter(ax,`useSingleNodeRotation`,!0),Z.backCompat(ax,{lineEnabled:`borderEnabled`,rotateHandlerOffset:`rotateAnchorOffset`,enabledHandlers:`enabledAnchors`});var sx=class extends ${_sceneFunc(e){e.beginPath(),e.arc(0,0,this.radius(),0,J.getAngle(this.angle()),this.clockwise()),e.lineTo(0,0),e.closePath(),e.fillStrokeShape(this)}getWidth(){return this.radius()*2}getHeight(){return this.radius()*2}setWidth(e){this.radius(e/2)}setHeight(e){this.radius(e/2)}};sx.prototype.className=`Wedge`,sx.prototype._centroid=!0,sx.prototype._attrsAffectingSize=[`radius`],Qg(sx),Z.addGetterSetter(sx,`radius`,0,X()),Z.addGetterSetter(sx,`angle`,0,X()),Z.addGetterSetter(sx,`clockwise`,!1),Z.backCompat(sx,{angleDeg:`angle`,getAngleDeg:`getAngle`,setAngleDeg:`setAngle`});function cx(){this.r=0,this.g=0,this.b=0,this.a=0,this.next=null}var lx=[512,512,456,512,328,456,335,512,405,328,271,456,388,335,292,512,454,405,364,328,298,271,496,456,420,388,360,335,312,292,273,512,482,454,428,405,383,364,345,328,312,298,284,271,259,496,475,456,437,420,404,388,374,360,347,335,323,312,302,292,282,273,265,512,497,482,468,454,441,428,417,405,394,383,373,364,354,345,337,328,320,312,305,298,291,284,278,271,265,259,507,496,485,475,465,456,446,437,428,420,412,404,396,388,381,374,367,360,354,347,341,335,329,323,318,312,307,302,297,292,287,282,278,273,269,265,261,512,505,497,489,482,475,468,461,454,447,441,435,428,422,417,411,405,399,394,389,383,378,373,368,364,359,354,350,345,341,337,332,328,324,320,316,312,309,305,301,298,294,291,287,284,281,278,274,271,268,265,262,259,257,507,501,496,491,485,480,475,470,465,460,456,451,446,442,437,433,428,424,420,416,412,408,404,400,396,392,388,385,381,377,374,370,367,363,360,357,354,350,347,344,341,338,335,332,329,326,323,320,318,315,312,310,307,304,302,299,297,294,292,289,287,285,282,280,278,275,273,271,269,267,265,263,261,259],ux=[9,11,12,13,13,14,14,15,15,15,15,16,16,16,16,17,17,17,17,17,17,17,18,18,18,18,18,18,18,18,18,19,19,19,19,19,19,19,19,19,19,19,19,19,19,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24];function dx(e,t){var n=e.data,r=e.width,i=e.height,a,o,s,c,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T,E,D,O,ee=t+t+1,te=r-1,k=i-1,A=t+1,ne=A*(A+1)/2,j=new cx,re=null,M=j,ie=null,ae=null,N=lx[t],oe=ux[t];for(s=1;s<ee;s++)M=M.next=new cx,s===A&&(re=M);for(M.next=j,d=u=0,o=0;o<i;o++){for(b=x=S=C=f=p=m=h=0,g=A*(w=n[u]),_=A*(T=n[u+1]),v=A*(E=n[u+2]),y=A*(D=n[u+3]),f+=ne*w,p+=ne*T,m+=ne*E,h+=ne*D,M=j,s=0;s<A;s++)M.r=w,M.g=T,M.b=E,M.a=D,M=M.next;for(s=1;s<A;s++)c=u+((te<s?te:s)<<2),f+=(M.r=w=n[c])*(O=A-s),p+=(M.g=T=n[c+1])*O,m+=(M.b=E=n[c+2])*O,h+=(M.a=D=n[c+3])*O,b+=w,x+=T,S+=E,C+=D,M=M.next;for(ie=j,ae=re,a=0;a<r;a++)n[u+3]=D=h*N>>oe,D===0?n[u]=n[u+1]=n[u+2]=0:(D=255/D,n[u]=(f*N>>oe)*D,n[u+1]=(p*N>>oe)*D,n[u+2]=(m*N>>oe)*D),f-=g,p-=_,m-=v,h-=y,g-=ie.r,_-=ie.g,v-=ie.b,y-=ie.a,c=d+((c=a+t+1)<te?c:te)<<2,b+=ie.r=n[c],x+=ie.g=n[c+1],S+=ie.b=n[c+2],C+=ie.a=n[c+3],f+=b,p+=x,m+=S,h+=C,ie=ie.next,g+=w=ae.r,_+=T=ae.g,v+=E=ae.b,y+=D=ae.a,b-=w,x-=T,S-=E,C-=D,ae=ae.next,u+=4;d+=r}for(a=0;a<r;a++){for(x=S=C=b=p=m=h=f=0,u=a<<2,g=A*(w=n[u]),_=A*(T=n[u+1]),v=A*(E=n[u+2]),y=A*(D=n[u+3]),f+=ne*w,p+=ne*T,m+=ne*E,h+=ne*D,M=j,s=0;s<A;s++)M.r=w,M.g=T,M.b=E,M.a=D,M=M.next;for(l=r,s=1;s<=t;s++)u=l+a<<2,f+=(M.r=w=n[u])*(O=A-s),p+=(M.g=T=n[u+1])*O,m+=(M.b=E=n[u+2])*O,h+=(M.a=D=n[u+3])*O,b+=w,x+=T,S+=E,C+=D,M=M.next,s<k&&(l+=r);for(u=a,ie=j,ae=re,o=0;o<i;o++)c=u<<2,n[c+3]=D=h*N>>oe,D>0?(D=255/D,n[c]=(f*N>>oe)*D,n[c+1]=(p*N>>oe)*D,n[c+2]=(m*N>>oe)*D):n[c]=n[c+1]=n[c+2]=0,f-=g,p-=_,m-=v,h-=y,g-=ie.r,_-=ie.g,v-=ie.b,y-=ie.a,c=a+((c=o+A)<k?c:k)*r<<2,f+=b+=ie.r=n[c],p+=x+=ie.g=n[c+1],m+=S+=ie.b=n[c+2],h+=C+=ie.a=n[c+3],ie=ie.next,g+=w=ae.r,_+=T=ae.g,v+=E=ae.b,y+=D=ae.a,b-=w,x-=T,S-=E,C-=D,ae=ae.next,u+=r}}var fx=function(e){var t=Math.round(this.blurRadius());t>0&&dx(e,t)};Z.addGetterSetter(Q,`blurRadius`,0,X(),Z.afterSetFilter);var px=function(e){var t=this.brightness()*255,n=e.data,r=n.length,i;for(i=0;i<r;i+=4)n[i]+=t,n[i+1]+=t,n[i+2]+=t};Z.addGetterSetter(Q,`brightness`,0,X(),Z.afterSetFilter);var mx=function(e){var t=((this.contrast()+100)/100)**2,n=e.data,r=n.length,i=150,a=150,o=150,s;for(s=0;s<r;s+=4)i=n[s],a=n[s+1],o=n[s+2],i/=255,i-=.5,i*=t,i+=.5,i*=255,a/=255,a-=.5,a*=t,a+=.5,a*=255,o/=255,o-=.5,o*=t,o+=.5,o*=255,i=i<0?0:i>255?255:i,a=a<0?0:a>255?255:a,o=o<0?0:o>255?255:o,n[s]=i,n[s+1]=a,n[s+2]=o};Z.addGetterSetter(Q,`contrast`,0,X(),Z.afterSetFilter);var hx=function(e){var t=this.embossStrength()*10,n=this.embossWhiteLevel()*255,r=this.embossDirection(),i=this.embossBlend(),a=0,o=0,s=e.data,c=e.width,l=e.height,u=c*4,d=l;switch(r){case`top-left`:a=-1,o=-1;break;case`top`:a=-1,o=0;break;case`top-right`:a=-1,o=1;break;case`right`:a=0,o=1;break;case`bottom-right`:a=1,o=1;break;case`bottom`:a=1,o=0;break;case`bottom-left`:a=1,o=-1;break;case`left`:a=0,o=-1;break;default:Y.error(`Unknown emboss direction: `+r)}do{var f=(d-1)*u,p=a;d+p<1&&(p=0),d+p>l&&(p=0);var m=(d-1+p)*c*4,h=c;do{var g=f+(h-1)*4,_=o;h+_<1&&(_=0),h+_>c&&(_=0);var v=m+(h-1+_)*4,y=s[g]-s[v],b=s[g+1]-s[v+1],x=s[g+2]-s[v+2],S=y,C=S>0?S:-S,w=b>0?b:-b,T=x>0?x:-x;if(w>C&&(S=b),T>C&&(S=x),S*=t,i){var E=s[g]+S,D=s[g+1]+S,O=s[g+2]+S;s[g]=E>255?255:E<0?0:E,s[g+1]=D>255?255:D<0?0:D,s[g+2]=O>255?255:O<0?0:O}else{var ee=n-S;ee<0?ee=0:ee>255&&(ee=255),s[g]=s[g+1]=s[g+2]=ee}}while(--h)}while(--d)};Z.addGetterSetter(Q,`embossStrength`,.5,X(),Z.afterSetFilter),Z.addGetterSetter(Q,`embossWhiteLevel`,.5,X(),Z.afterSetFilter),Z.addGetterSetter(Q,`embossDirection`,`top-left`,null,Z.afterSetFilter),Z.addGetterSetter(Q,`embossBlend`,!1,null,Z.afterSetFilter);function gx(e,t,n,r,i){var a=n-t,o=i-r,s;return a===0?r+o/2:o===0?r:(s=(e-t)/a,s=o*s+r,s)}var _x=function(e){var t=e.data,n=t.length,r=t[0],i=r,a,o=t[1],s=o,c,l=t[2],u=l,d,f,p=this.enhance();if(p!==0){for(f=0;f<n;f+=4)a=t[f+0],a<r?r=a:a>i&&(i=a),c=t[f+1],c<o?o=c:c>s&&(s=c),d=t[f+2],d<l?l=d:d>u&&(u=d);i===r&&(i=255,r=0),s===o&&(s=255,o=0),u===l&&(u=255,l=0);var m,h,g,_,v,y,b,x,S;for(p>0?(h=i+p*(255-i),g=r-p*(r-0),v=s+p*(255-s),y=o-p*(o-0),x=u+p*(255-u),S=l-p*(l-0)):(m=(i+r)*.5,h=i+p*(i-m),g=r+p*(r-m),_=(s+o)*.5,v=s+p*(s-_),y=o+p*(o-_),b=(u+l)*.5,x=u+p*(u-b),S=l+p*(l-b)),f=0;f<n;f+=4)t[f+0]=gx(t[f+0],r,i,g,h),t[f+1]=gx(t[f+1],o,s,y,v),t[f+2]=gx(t[f+2],l,u,S,x)}};Z.addGetterSetter(Q,`enhance`,0,X(),Z.afterSetFilter);var vx=function(e){var t=e.data,n=t.length,r,i;for(r=0;r<n;r+=4)i=.34*t[r]+.5*t[r+1]+.16*t[r+2],t[r]=i,t[r+1]=i,t[r+2]=i};Z.addGetterSetter(Q,`hue`,0,X(),Z.afterSetFilter),Z.addGetterSetter(Q,`saturation`,0,X(),Z.afterSetFilter),Z.addGetterSetter(Q,`luminance`,0,X(),Z.afterSetFilter);var yx=function(e){var t=e.data,n=t.length,r=1,i=2**this.saturation(),a=Math.abs(this.hue()+360)%360,o=this.luminance()*127,s,c=r*i*Math.cos(a*Math.PI/180),l=r*i*Math.sin(a*Math.PI/180),u=.299*r+.701*c+.167*l,d=.587*r-.587*c+.33*l,f=.114*r-.114*c-.497*l,p=.299*r-.299*c-.328*l,m=.587*r+.413*c+.035*l,h=.114*r-.114*c+.293*l,g=.299*r-.3*c+1.25*l,_=.587*r-.586*c-1.05*l,v=.114*r+.886*c-.2*l,y,b,x,S;for(s=0;s<n;s+=4)y=t[s+0],b=t[s+1],x=t[s+2],S=t[s+3],t[s+0]=u*y+d*b+f*x+o,t[s+1]=p*y+m*b+h*x+o,t[s+2]=g*y+_*b+v*x+o,t[s+3]=S},bx=function(e){var t=e.data,n=t.length,r=2**this.value(),i=2**this.saturation(),a=Math.abs(this.hue()+360)%360,o,s=r*i*Math.cos(a*Math.PI/180),c=r*i*Math.sin(a*Math.PI/180),l=.299*r+.701*s+.167*c,u=.587*r-.587*s+.33*c,d=.114*r-.114*s-.497*c,f=.299*r-.299*s-.328*c,p=.587*r+.413*s+.035*c,m=.114*r-.114*s+.293*c,h=.299*r-.3*s+1.25*c,g=.587*r-.586*s-1.05*c,_=.114*r+.886*s-.2*c,v,y,b,x;for(o=0;o<n;o+=4)v=t[o+0],y=t[o+1],b=t[o+2],x=t[o+3],t[o+0]=l*v+u*y+d*b,t[o+1]=f*v+p*y+m*b,t[o+2]=h*v+g*y+_*b,t[o+3]=x};Z.addGetterSetter(Q,`hue`,0,X(),Z.afterSetFilter),Z.addGetterSetter(Q,`saturation`,0,X(),Z.afterSetFilter),Z.addGetterSetter(Q,`value`,0,X(),Z.afterSetFilter);var xx=function(e){var t=e.data,n=t.length,r;for(r=0;r<n;r+=4)t[r]=255-t[r],t[r+1]=255-t[r+1],t[r+2]=255-t[r+2]},Sx=function(e,t,n){var r=e.data,i=t.data,a=e.width,o=e.height,s=n.polarCenterX||a/2,c=n.polarCenterY||o/2,l,u,d,f=0,p=0,m=0,h=0,g,_=Math.sqrt(s*s+c*c);u=a-s,d=o-c,g=Math.sqrt(u*u+d*d),_=g>_?g:_;var v=o,y=a,b,x,S=360/y*Math.PI/180,C,w;for(x=0;x<y;x+=1)for(C=Math.sin(x*S),w=Math.cos(x*S),b=0;b<v;b+=1)u=Math.floor(s+_*b/v*w),d=Math.floor(c+_*b/v*C),l=(d*a+u)*4,f=r[l+0],p=r[l+1],m=r[l+2],h=r[l+3],l=(x+b*a)*4,i[l+0]=f,i[l+1]=p,i[l+2]=m,i[l+3]=h},Cx=function(e,t,n){var r=e.data,i=t.data,a=e.width,o=e.height,s=n.polarCenterX||a/2,c=n.polarCenterY||o/2,l,u,d,f,p,m=0,h=0,g=0,_=0,v,y=Math.sqrt(s*s+c*c);u=a-s,d=o-c,v=Math.sqrt(u*u+d*d),y=v>y?v:y;var b=o,x=a,S,C,w=n.polarRotation||0,T,E;for(u=0;u<a;u+=1)for(d=0;d<o;d+=1)f=u-s,p=d-c,S=Math.sqrt(f*f+p*p)*b/y,C=(Math.atan2(p,f)*180/Math.PI+360+w)%360,C=C*x/360,T=Math.floor(C),E=Math.floor(S),l=(E*a+T)*4,m=r[l+0],h=r[l+1],g=r[l+2],_=r[l+3],l=(d*a+u)*4,i[l+0]=m,i[l+1]=h,i[l+2]=g,i[l+3]=_},wx=function(e){var t=e.width,n=e.height,r,i,a,o,s,c,l,u,d,f,p=Math.round(this.kaleidoscopePower()),m=Math.round(this.kaleidoscopeAngle()),h=Math.floor(m%360*t/360);if(!(p<1)){var g=Y.createCanvasElement();g.width=t,g.height=n;var _=g.getContext(`2d`).getImageData(0,0,t,n);Sx(e,_,{polarCenterX:t/2,polarCenterY:n/2});for(var v=t/2**p;v<=8;)v*=2,--p;v=Math.ceil(v);var y=v,b=0,x=y,S=1;for(h+v>t&&(b=y,x=0,S=-1),i=0;i<n;i+=1)for(r=b;r!==x;r+=S)a=Math.round(r+h)%t,d=(t*i+a)*4,s=_.data[d+0],c=_.data[d+1],l=_.data[d+2],u=_.data[d+3],f=(t*i+r)*4,_.data[f+0]=s,_.data[f+1]=c,_.data[f+2]=l,_.data[f+3]=u;for(i=0;i<n;i+=1)for(y=Math.floor(v),o=0;o<p;o+=1){for(r=0;r<y+1;r+=1)d=(t*i+r)*4,s=_.data[d+0],c=_.data[d+1],l=_.data[d+2],u=_.data[d+3],f=(t*i+y*2-r-1)*4,_.data[f+0]=s,_.data[f+1]=c,_.data[f+2]=l,_.data[f+3]=u;y*=2}Cx(_,e,{polarRotation:0})}};Z.addGetterSetter(Q,`kaleidoscopePower`,2,X(),Z.afterSetFilter),Z.addGetterSetter(Q,`kaleidoscopeAngle`,0,X(),Z.afterSetFilter);function Tx(e,t,n){var r=(n*e.width+t)*4,i=[];return i.push(e.data[r++],e.data[r++],e.data[r++],e.data[r++]),i}function Ex(e,t){return Math.sqrt((e[0]-t[0])**2+(e[1]-t[1])**2+(e[2]-t[2])**2)}function Dx(e){for(var t=[0,0,0],n=0;n<e.length;n++)t[0]+=e[n][0],t[1]+=e[n][1],t[2]+=e[n][2];return t[0]/=e.length,t[1]/=e.length,t[2]/=e.length,t}function Ox(e,t){var n=Tx(e,0,0),r=Tx(e,e.width-1,0),i=Tx(e,0,e.height-1),a=Tx(e,e.width-1,e.height-1),o=t||10;if(Ex(n,r)<o&&Ex(r,a)<o&&Ex(a,i)<o&&Ex(i,n)<o){for(var s=Dx([r,n,a,i]),c=[],l=0;l<e.width*e.height;l++)c[l]=Ex(s,[e.data[l*4],e.data[l*4+1],e.data[l*4+2]])<o?0:255;return c}}function kx(e,t){for(var n=0;n<e.width*e.height;n++)e.data[4*n+3]=t[n]}function Ax(e,t,n){for(var r=[1,1,1,1,0,1,1,1,1],i=Math.round(Math.sqrt(r.length)),a=Math.floor(i/2),o=[],s=0;s<n;s++)for(var c=0;c<t;c++){for(var l=s*t+c,u=0,d=0;d<i;d++)for(var f=0;f<i;f++){var p=s+d-a,m=c+f-a;if(p>=0&&p<n&&m>=0&&m<t){var h=p*t+m,g=r[d*i+f];u+=e[h]*g}}o[l]=u===2040?255:0}return o}function jx(e,t,n){for(var r=[1,1,1,1,1,1,1,1,1],i=Math.round(Math.sqrt(r.length)),a=Math.floor(i/2),o=[],s=0;s<n;s++)for(var c=0;c<t;c++){for(var l=s*t+c,u=0,d=0;d<i;d++)for(var f=0;f<i;f++){var p=s+d-a,m=c+f-a;if(p>=0&&p<n&&m>=0&&m<t){var h=p*t+m,g=r[d*i+f];u+=e[h]*g}}o[l]=u>=1020?255:0}return o}function Mx(e,t,n){for(var r=[1/9,1/9,1/9,1/9,1/9,1/9,1/9,1/9,1/9],i=Math.round(Math.sqrt(r.length)),a=Math.floor(i/2),o=[],s=0;s<n;s++)for(var c=0;c<t;c++){for(var l=s*t+c,u=0,d=0;d<i;d++)for(var f=0;f<i;f++){var p=s+d-a,m=c+f-a;if(p>=0&&p<n&&m>=0&&m<t){var h=p*t+m,g=r[d*i+f];u+=e[h]*g}}o[l]=u}return o}Z.addGetterSetter(Q,`threshold`,0,X(),Z.afterSetFilter),Z.addGetterSetter(Q,`noise`,.2,X(),Z.afterSetFilter),Z.addGetterSetter(Q,`pixelSize`,8,X(),Z.afterSetFilter),Z.addGetterSetter(Q,`levels`,.5,X(),Z.afterSetFilter),Z.addGetterSetter(Q,`red`,0,function(e){return this._filterUpToDate=!1,e>255?255:e<0?0:Math.round(e)}),Z.addGetterSetter(Q,`green`,0,function(e){return this._filterUpToDate=!1,e>255?255:e<0?0:Math.round(e)}),Z.addGetterSetter(Q,`blue`,0,__,Z.afterSetFilter),Z.addGetterSetter(Q,`red`,0,function(e){return this._filterUpToDate=!1,e>255?255:e<0?0:Math.round(e)}),Z.addGetterSetter(Q,`green`,0,function(e){return this._filterUpToDate=!1,e>255?255:e<0?0:Math.round(e)}),Z.addGetterSetter(Q,`blue`,0,__,Z.afterSetFilter),Z.addGetterSetter(Q,`alpha`,1,function(e){return this._filterUpToDate=!1,e>1?1:e<0?0:e}),Z.addGetterSetter(Q,`threshold`,.5,X(),Z.afterSetFilter),zy.Util._assign(zy,{Arc:By,Arrow:Gy,Circle:Ky,Ellipse:qy,Image:Jy,Label:rb,Tag:ib,Line:Uy,Path:Wy,Rect:ab,RegularPolygon:ob,Ring:cb,Sprite:lb,Star:ub,Text:Bb,TextPath:Gb,Transformer:ax,Wedge:sx,Filters:{Blur:fx,Brighten:px,Contrast:mx,Emboss:hx,Enhance:_x,Grayscale:vx,HSL:yx,HSV:bx,Invert:xx,Kaleidoscope:wx,Mask:function(e){var t=Ox(e,this.threshold());return t&&(t=Ax(t,e.width,e.height),t=jx(t,e.width,e.height),t=Mx(t,e.width,e.height),kx(e,t)),e},Noise:function(e){var t=this.noise()*255,n=e.data,r=n.length,i=t/2,a;for(a=0;a<r;a+=4)n[a+0]+=i-2*i*Math.random(),n[a+1]+=i-2*i*Math.random(),n[a+2]+=i-2*i*Math.random()},Pixelate:function(e){var t=Math.ceil(this.pixelSize()),n=e.width,r=e.height,i,a,o,s,c,l,u,d=Math.ceil(n/t),f=Math.ceil(r/t),p,m,h,g,_,v,y,b=e.data;if(t<=0){Y.error(`pixelSize value can not be <= 0`);return}for(_=0;_<d;_+=1)for(v=0;v<f;v+=1){for(s=0,c=0,l=0,u=0,p=_*t,m=p+t,h=v*t,g=h+t,y=0,i=p;i<m;i+=1)if(!(i>=n))for(a=h;a<g;a+=1)a>=r||(o=(n*a+i)*4,s+=b[o+0],c+=b[o+1],l+=b[o+2],u+=b[o+3],y+=1);for(s/=y,c/=y,l/=y,u/=y,i=p;i<m;i+=1)if(!(i>=n))for(a=h;a<g;a+=1)a>=r||(o=(n*a+i)*4,b[o+0]=s,b[o+1]=c,b[o+2]=l,b[o+3]=u)}},Posterize:function(e){var t=Math.round(this.levels()*254)+1,n=e.data,r=n.length,i=255/t,a;for(a=0;a<r;a+=1)n[a]=Math.floor(n[a]/i)*i},RGB:function(e){var t=e.data,n=t.length,r=this.red(),i=this.green(),a=this.blue(),o,s;for(o=0;o<n;o+=4)s=(.34*t[o]+.5*t[o+1]+.16*t[o+2])/255,t[o]=s*r,t[o+1]=s*i,t[o+2]=s*a,t[o+3]=t[o+3]},RGBA:function(e){var t=e.data,n=t.length,r=this.red(),i=this.green(),a=this.blue(),o=this.alpha(),s,c;for(s=0;s<n;s+=4)c=1-o,t[s]=r*o+t[s]*c,t[s+1]=i*o+t[s+1]*c,t[s+2]=a*o+t[s+2]*c},Sepia:function(e){var t=e.data,n=t.length,r,i,a,o;for(r=0;r<n;r+=4)i=t[r+0],a=t[r+1],o=t[r+2],t[r+0]=Math.min(255,i*.393+a*.769+o*.189),t[r+1]=Math.min(255,i*.349+a*.686+o*.168),t[r+2]=Math.min(255,i*.272+a*.534+o*.131)},Solarize:function(e){var t=e.data,n=e.width,r=e.height,i=n*4,a=r;do{var o=(a-1)*i,s=n;do{var c=o+(s-1)*4,l=t[c],u=t[c+1],d=t[c+2];l>127&&(l=255-l),u>127&&(u=255-u),d>127&&(d=255-d),t[c]=l,t[c+1]=u,t[c+2]=d}while(--s)}while(--a)},Threshold:function(e){var t=this.threshold()*255,n=e.data,r=n.length,i;for(i=0;i<r;i+=1)n[i]=n[i]<t?0:255}}});var Nx=zy,Px=o(((e,t)=>{t.exports=function(e){var t={},n=d(),r=p(),i=Object.assign;function a(e){for(var t=`https://reactjs.org/docs/error-decoder.html?invariant=`+e,n=1;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n]);return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}var o=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,s=Symbol.for(`react.element`),c=Symbol.for(`react.portal`),l=Symbol.for(`react.fragment`),u=Symbol.for(`react.strict_mode`),f=Symbol.for(`react.profiler`),m=Symbol.for(`react.provider`),h=Symbol.for(`react.context`),g=Symbol.for(`react.forward_ref`),_=Symbol.for(`react.suspense`),v=Symbol.for(`react.suspense_list`),y=Symbol.for(`react.memo`),b=Symbol.for(`react.lazy`),x=Symbol.for(`react.offscreen`),S=Symbol.iterator;function C(e){return typeof e!=`object`||!e?null:(e=S&&e[S]||e[`@@iterator`],typeof e==`function`?e:null)}function w(e){if(e==null)return null;if(typeof e==`function`)return e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case l:return`Fragment`;case c:return`Portal`;case f:return`Profiler`;case u:return`StrictMode`;case _:return`Suspense`;case v:return`SuspenseList`}if(typeof e==`object`)switch(e.$$typeof){case h:return(e.displayName||`Context`)+`.Consumer`;case m:return(e._context.displayName||`Context`)+`.Provider`;case g:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case y:return t=e.displayName||null,t===null?w(e.type)||`Memo`:t;case b:t=e._payload,e=e._init;try{return w(e(t))}catch{}}return null}function T(e){var t=e.type;switch(e.tag){case 24:return`Cache`;case 9:return(t.displayName||`Context`)+`.Consumer`;case 10:return(t._context.displayName||`Context`)+`.Provider`;case 18:return`DehydratedFragment`;case 11:return e=t.render,e=e.displayName||e.name||``,t.displayName||(e===``?`ForwardRef`:`ForwardRef(`+e+`)`);case 7:return`Fragment`;case 5:return t;case 4:return`Portal`;case 3:return`Root`;case 6:return`Text`;case 16:return w(t);case 8:return t===u?`StrictMode`:`Mode`;case 22:return`Offscreen`;case 12:return`Profiler`;case 21:return`Scope`;case 13:return`Suspense`;case 19:return`SuspenseList`;case 25:return`TracingMarker`;case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t==`function`)return t.displayName||t.name||null;if(typeof t==`string`)return t}return null}function E(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function D(e){if(E(e)!==e)throw Error(a(188))}function O(e){var t=e.alternate;if(!t){if(t=E(e),t===null)throw Error(a(188));return t===e?e:null}for(var n=e,r=t;;){var i=n.return;if(i===null)break;var o=i.alternate;if(o===null){if(r=i.return,r!==null){n=r;continue}break}if(i.child===o.child){for(o=i.child;o;){if(o===n)return D(i),e;if(o===r)return D(i),t;o=o.sibling}throw Error(a(188))}if(n.return!==r.return)n=i,r=o;else{for(var s=!1,c=i.child;c;){if(c===n){s=!0,n=i,r=o;break}if(c===r){s=!0,r=i,n=o;break}c=c.sibling}if(!s){for(c=o.child;c;){if(c===n){s=!0,n=o,r=i;break}if(c===r){s=!0,r=o,n=i;break}c=c.sibling}if(!s)throw Error(a(189))}}if(n.alternate!==r)throw Error(a(190))}if(n.tag!==3)throw Error(a(188));return n.stateNode.current===n?e:t}function ee(e){return e=O(e),e===null?null:te(e)}function te(e){if(e.tag===5||e.tag===6)return e;for(e=e.child;e!==null;){var t=te(e);if(t!==null)return t;e=e.sibling}return null}function k(e){if(e.tag===5||e.tag===6)return e;for(e=e.child;e!==null;){if(e.tag!==4){var t=k(e);if(t!==null)return t}e=e.sibling}return null}var A=Array.isArray,ne=e.getPublicInstance,j=e.getRootHostContext,re=e.getChildHostContext,M=e.prepareForCommit,ie=e.resetAfterCommit,ae=e.createInstance,N=e.appendInitialChild,oe=e.finalizeInitialChildren,se=e.prepareUpdate,ce=e.shouldSetTextContent,le=e.createTextInstance,ue=e.scheduleTimeout,de=e.cancelTimeout,fe=e.noTimeout,pe=e.isPrimaryRenderer,me=e.supportsMutation,he=e.supportsPersistence,ge=e.supportsHydration,_e=e.getInstanceFromNode,ve=e.preparePortalMount,ye=e.getCurrentEventPriority,be=e.detachDeletedInstance,xe=e.supportsMicrotasks,Se=e.scheduleMicrotask,Ce=e.supportsTestSelectors,we=e.findFiberRoot,Te=e.getBoundingRect,Ee=e.getTextContent,De=e.isHiddenSubtree,Oe=e.matchAccessibilityRole,ke=e.setFocusIfFocusable,Ae=e.setupIntersectionObserver,je=e.appendChild,Me=e.appendChildToContainer,Ne=e.commitTextUpdate,Pe=e.commitMount,Fe=e.commitUpdate,Ie=e.insertBefore,Le=e.insertInContainerBefore,Re=e.removeChild,ze=e.removeChildFromContainer,Be=e.resetTextContent,Ve=e.hideInstance,He=e.hideTextInstance,Ue=e.unhideInstance,We=e.unhideTextInstance,Ge=e.clearContainer,Ke=e.cloneInstance,qe=e.createContainerChildSet,Je=e.appendChildToContainerChildSet,Ye=e.finalizeContainerChildren,Xe=e.replaceContainerChildren,Ze=e.cloneHiddenInstance,Qe=e.cloneHiddenTextInstance,$e=e.canHydrateInstance,et=e.canHydrateTextInstance,tt=e.canHydrateSuspenseInstance,nt=e.isSuspenseInstancePending,rt=e.isSuspenseInstanceFallback,it=e.getSuspenseInstanceFallbackErrorDetails,at=e.registerSuspenseInstanceRetry,ot=e.getNextHydratableSibling,st=e.getFirstHydratableChild,ct=e.getFirstHydratableChildWithinContainer,lt=e.getFirstHydratableChildWithinSuspenseInstance,ut=e.hydrateInstance,dt=e.hydrateTextInstance,ft=e.hydrateSuspenseInstance,pt=e.getNextHydratableInstanceAfterSuspenseInstance,mt=e.commitHydratedContainer,ht=e.commitHydratedSuspenseInstance,gt=e.clearSuspenseBoundary,_t=e.clearSuspenseBoundaryFromContainer,vt=e.shouldDeleteUnhydratedTailInstances,yt=e.didNotMatchHydratedContainerTextInstance,bt=e.didNotMatchHydratedTextInstance,xt;function St(e){if(xt===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);xt=t&&t[1]||``}return`
|
|
183
|
+
`,Km=e=>{let{classes:t,variant:n,color:r,disableShrink:i}=e;return xs({root:[`root`,n,`color${od(r)}`],svg:[`svg`],track:[`track`],circle:[`circle`,`circle${od(n)}`,i&&`circleDisableShrink`]},Bm,t)},qm=W(`span`,{name:`MuiCircularProgress`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[n.variant],t[`color${od(n.color)}`]]}})(ku(({theme:e})=>({display:`inline-block`,variants:[{props:{variant:`determinate`},style:{transition:e.transitions.create(`transform`)}},{props:{variant:`indeterminate`},style:Wm||{animation:`${Hm} 1.4s linear infinite`}},...Object.entries(e.palette).filter(zm()).map(([t])=>({props:{color:t},style:{color:(e.vars||e).palette[t].main}}))]}))),Jm=W(`svg`,{name:`MuiCircularProgress`,slot:`Svg`})({display:`block`}),Ym=W(`circle`,{name:`MuiCircularProgress`,slot:`Circle`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.circle,t[`circle${od(n.variant)}`],n.disableShrink&&t.circleDisableShrink]}})(ku(({theme:e})=>({stroke:`currentColor`,variants:[{props:{variant:`determinate`},style:{transition:e.transitions.create(`stroke-dashoffset`)}},{props:{variant:`indeterminate`},style:{strokeDasharray:`80px, 200px`,strokeDashoffset:0}},{props:({ownerState:e})=>e.variant===`indeterminate`&&!e.disableShrink,style:Gm||{animation:`${Um} 1.4s ease-in-out infinite`}}]}))),Xm=W(`circle`,{name:`MuiCircularProgress`,slot:`Track`})(ku(({theme:e})=>({stroke:`currentColor`,opacity:(e.vars||e).palette.action.activatedOpacity}))),Zm=F.forwardRef(function(e,t){let n=rl({props:e,name:`MuiCircularProgress`}),{className:r,color:i=`primary`,disableShrink:a=!1,enableTrackSlot:o=!1,size:s=40,style:c,thickness:l=3.6,value:u=0,variant:d=`indeterminate`,...f}=n,p={...n,color:i,disableShrink:a,size:s,thickness:l,value:u,variant:d,enableTrackSlot:o},m=Km(p),h={},g={},_={};if(d===`determinate`){let e=2*Math.PI*((Vm-l)/2);h.strokeDasharray=e.toFixed(3),_[`aria-valuenow`]=Math.round(u),h.strokeDashoffset=`${((100-u)/100*e).toFixed(3)}px`,g.transform=`rotate(-90deg)`}return(0,I.jsx)(qm,{className:R(m.root,r),style:{width:s,height:s,...g,...c},ownerState:p,ref:t,role:`progressbar`,..._,...f,children:(0,I.jsxs)(Jm,{className:m.svg,ownerState:p,viewBox:`${Vm/2} ${Vm/2} ${Vm} ${Vm}`,children:[o?(0,I.jsx)(Xm,{className:m.track,ownerState:p,cx:Vm,cy:Vm,r:(Vm-l)/2,fill:`none`,strokeWidth:l,"aria-hidden":`true`}):null,(0,I.jsx)(Ym,{className:m.circle,style:h,ownerState:p,cx:Vm,cy:Vm,r:(Vm-l)/2,fill:`none`,strokeWidth:l})]})})});function Qm(e){return to(`MuiButton`,e)}var $m=no(`MuiButton`,`root.text.textInherit.textPrimary.textSecondary.textSuccess.textError.textInfo.textWarning.outlined.outlinedInherit.outlinedPrimary.outlinedSecondary.outlinedSuccess.outlinedError.outlinedInfo.outlinedWarning.contained.containedInherit.containedPrimary.containedSecondary.containedSuccess.containedError.containedInfo.containedWarning.disableElevation.focusVisible.disabled.colorInherit.colorPrimary.colorSecondary.colorSuccess.colorError.colorInfo.colorWarning.textSizeSmall.textSizeMedium.textSizeLarge.outlinedSizeSmall.outlinedSizeMedium.outlinedSizeLarge.containedSizeSmall.containedSizeMedium.containedSizeLarge.sizeMedium.sizeSmall.sizeLarge.fullWidth.startIcon.endIcon.icon.iconSizeSmall.iconSizeMedium.iconSizeLarge.loading.loadingWrapper.loadingIconPlaceholder.loadingIndicator.loadingPositionCenter.loadingPositionStart.loadingPositionEnd`.split(`.`)),eh=F.createContext({}),th=F.createContext(void 0),nh=e=>{let{color:t,disableElevation:n,fullWidth:r,size:i,variant:a,loading:o,loadingPosition:s,classes:c}=e,l=xs({root:[`root`,o&&`loading`,a,`${a}${od(t)}`,`size${od(i)}`,`${a}Size${od(i)}`,`color${od(t)}`,n&&`disableElevation`,r&&`fullWidth`,o&&`loadingPosition${od(s)}`],startIcon:[`icon`,`startIcon`,`iconSize${od(i)}`],endIcon:[`icon`,`endIcon`,`iconSize${od(i)}`],loadingIndicator:[`loadingIndicator`],loadingWrapper:[`loadingWrapper`]},Qm,c);return{...c,...l}},rh=[{props:{size:`small`},style:{"& > *:nth-of-type(1)":{fontSize:18}}},{props:{size:`medium`},style:{"& > *:nth-of-type(1)":{fontSize:20}}},{props:{size:`large`},style:{"& > *:nth-of-type(1)":{fontSize:22}}}],ih=W(Fm,{shouldForwardProp:e=>Pc(e)||e===`classes`,name:`MuiButton`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[n.variant],t[`${n.variant}${od(n.color)}`],t[`size${od(n.size)}`],t[`${n.variant}Size${od(n.size)}`],n.color===`inherit`&&t.colorInherit,n.disableElevation&&t.disableElevation,n.fullWidth&&t.fullWidth,n.loading&&t.loading]}})(ku(({theme:e})=>{let t=e.palette.mode===`light`?e.palette.grey[300]:e.palette.grey[800],n=e.palette.mode===`light`?e.palette.grey.A100:e.palette.grey[700];return{...e.typography.button,minWidth:64,padding:`6px 16px`,border:0,borderRadius:(e.vars||e).shape.borderRadius,transition:e.transitions.create([`background-color`,`box-shadow`,`border-color`,`color`],{duration:e.transitions.duration.short}),"&:hover":{textDecoration:`none`},[`&.${$m.disabled}`]:{color:(e.vars||e).palette.action.disabled},variants:[{props:({ownerState:e})=>e.startIcon||e.loading&&e.loadingPosition===`start`,style:{"&::before":{content:`"\\200b"`,width:0,overflow:`hidden`}}},{props:{variant:`contained`},style:{color:`var(--variant-containedColor)`,backgroundColor:`var(--variant-containedBg)`,boxShadow:(e.vars||e).shadows[2],"&:hover":{boxShadow:(e.vars||e).shadows[4],"@media (hover: none)":{boxShadow:(e.vars||e).shadows[2]}},"&:active":{boxShadow:(e.vars||e).shadows[8]},[`&.${$m.focusVisible}`]:{boxShadow:(e.vars||e).shadows[6]},[`&.${$m.disabled}`]:{color:(e.vars||e).palette.action.disabled,boxShadow:(e.vars||e).shadows[0],backgroundColor:(e.vars||e).palette.action.disabledBackground}}},{props:{variant:`outlined`},style:{padding:`5px 15px`,border:`1px solid currentColor`,borderColor:`var(--variant-outlinedBorder, currentColor)`,backgroundColor:`var(--variant-outlinedBg)`,color:`var(--variant-outlinedColor)`,[`&.${$m.disabled}`]:{border:`1px solid ${(e.vars||e).palette.action.disabledBackground}`}}},{props:{variant:`text`},style:{padding:`6px 8px`,color:`var(--variant-textColor)`,backgroundColor:`var(--variant-textBg)`}},...Object.entries(e.palette).filter(zm()).map(([t])=>({props:{color:t},style:{"--variant-textColor":(e.vars||e).palette[t].main,"--variant-outlinedColor":(e.vars||e).palette[t].main,"--variant-outlinedBorder":e.alpha((e.vars||e).palette[t].main,.5),"--variant-containedColor":(e.vars||e).palette[t].contrastText,"--variant-containedBg":(e.vars||e).palette[t].main,"@media (hover: hover)":{"&:hover":{"--variant-containedBg":(e.vars||e).palette[t].dark,"--variant-textBg":e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.hoverOpacity),"--variant-outlinedBorder":(e.vars||e).palette[t].main,"--variant-outlinedBg":e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.hoverOpacity)}}}})),{props:{color:`inherit`},style:{color:`inherit`,borderColor:`currentColor`,"--variant-containedBg":e.vars?e.vars.palette.Button.inheritContainedBg:t,"@media (hover: hover)":{"&:hover":{"--variant-containedBg":e.vars?e.vars.palette.Button.inheritContainedHoverBg:n,"--variant-textBg":e.alpha((e.vars||e).palette.text.primary,(e.vars||e).palette.action.hoverOpacity),"--variant-outlinedBg":e.alpha((e.vars||e).palette.text.primary,(e.vars||e).palette.action.hoverOpacity)}}}},{props:{size:`small`,variant:`text`},style:{padding:`4px 5px`,fontSize:e.typography.pxToRem(13)}},{props:{size:`large`,variant:`text`},style:{padding:`8px 11px`,fontSize:e.typography.pxToRem(15)}},{props:{size:`small`,variant:`outlined`},style:{padding:`3px 9px`,fontSize:e.typography.pxToRem(13)}},{props:{size:`large`,variant:`outlined`},style:{padding:`7px 21px`,fontSize:e.typography.pxToRem(15)}},{props:{size:`small`,variant:`contained`},style:{padding:`4px 10px`,fontSize:e.typography.pxToRem(13)}},{props:{size:`large`,variant:`contained`},style:{padding:`8px 22px`,fontSize:e.typography.pxToRem(15)}},{props:{disableElevation:!0},style:{boxShadow:`none`,"&:hover":{boxShadow:`none`},[`&.${$m.focusVisible}`]:{boxShadow:`none`},"&:active":{boxShadow:`none`},[`&.${$m.disabled}`]:{boxShadow:`none`}}},{props:{fullWidth:!0},style:{width:`100%`}},{props:{loadingPosition:`center`},style:{transition:e.transitions.create([`background-color`,`box-shadow`,`border-color`],{duration:e.transitions.duration.short}),[`&.${$m.loading}`]:{color:`transparent`}}}]}})),ah=W(`span`,{name:`MuiButton`,slot:`StartIcon`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.startIcon,n.loading&&t.startIconLoadingStart,t[`iconSize${od(n.size)}`]]}})(({theme:e})=>({display:`inherit`,marginRight:8,marginLeft:-4,variants:[{props:{size:`small`},style:{marginLeft:-2}},{props:{loadingPosition:`start`,loading:!0},style:{transition:e.transitions.create([`opacity`],{duration:e.transitions.duration.short}),opacity:0}},{props:{loadingPosition:`start`,loading:!0,fullWidth:!0},style:{marginRight:-8}},...rh]})),oh=W(`span`,{name:`MuiButton`,slot:`EndIcon`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.endIcon,n.loading&&t.endIconLoadingEnd,t[`iconSize${od(n.size)}`]]}})(({theme:e})=>({display:`inherit`,marginRight:-4,marginLeft:8,variants:[{props:{size:`small`},style:{marginRight:-2}},{props:{loadingPosition:`end`,loading:!0},style:{transition:e.transitions.create([`opacity`],{duration:e.transitions.duration.short}),opacity:0}},{props:{loadingPosition:`end`,loading:!0,fullWidth:!0},style:{marginLeft:-8}},...rh]})),sh=W(`span`,{name:`MuiButton`,slot:`LoadingIndicator`})(({theme:e})=>({display:`none`,position:`absolute`,visibility:`visible`,variants:[{props:{loading:!0},style:{display:`flex`}},{props:{loadingPosition:`start`},style:{left:14}},{props:{loadingPosition:`start`,size:`small`},style:{left:10}},{props:{variant:`text`,loadingPosition:`start`},style:{left:6}},{props:{loadingPosition:`center`},style:{left:`50%`,transform:`translate(-50%)`,color:(e.vars||e).palette.action.disabled}},{props:{loadingPosition:`end`},style:{right:14}},{props:{loadingPosition:`end`,size:`small`},style:{right:10}},{props:{variant:`text`,loadingPosition:`end`},style:{right:6}},{props:{loadingPosition:`start`,fullWidth:!0},style:{position:`relative`,left:-10}},{props:{loadingPosition:`end`,fullWidth:!0},style:{position:`relative`,right:-10}}]})),ch=W(`span`,{name:`MuiButton`,slot:`LoadingIconPlaceholder`})({display:`inline-block`,width:`1em`,height:`1em`}),lh=F.forwardRef(function(e,t){let n=F.useContext(eh),r=F.useContext(th),i=rl({props:go(n,e),name:`MuiButton`}),{children:a,color:o=`primary`,component:s=`button`,className:c,disabled:l=!1,disableElevation:u=!1,disableFocusRipple:d=!1,endIcon:f,focusVisibleClassName:p,fullWidth:m=!1,id:h,loading:g=null,loadingIndicator:_,loadingPosition:v=`center`,size:y=`medium`,startIcon:b,type:x,variant:S=`text`,...C}=i,w=md(h),T=_??(0,I.jsx)(Zm,{"aria-labelledby":w,color:`inherit`,size:16}),E={...i,color:o,component:s,disabled:l,disableElevation:u,disableFocusRipple:d,fullWidth:m,loading:g,loadingIndicator:T,loadingPosition:v,size:y,type:x,variant:S},D=nh(E),O=(b||g&&v===`start`)&&(0,I.jsx)(ah,{className:D.startIcon,ownerState:E,children:b||(0,I.jsx)(ch,{className:D.loadingIconPlaceholder,ownerState:E})}),ee=(f||g&&v===`end`)&&(0,I.jsx)(oh,{className:D.endIcon,ownerState:E,children:f||(0,I.jsx)(ch,{className:D.loadingIconPlaceholder,ownerState:E})}),te=r||``,k=typeof g==`boolean`?(0,I.jsx)(`span`,{className:D.loadingWrapper,style:{display:`contents`},children:g&&(0,I.jsx)(sh,{className:D.loadingIndicator,ownerState:E,children:T})}):null,{root:A,...ne}=D;return(0,I.jsxs)(ih,{ownerState:E,className:R(n.className,D.root,c,te),component:s,disabled:l||g,focusRipple:!d,focusVisibleClassName:R(D.focusVisible,p),ref:t,type:x,id:g?w:h,...C,classes:ne,children:[O,v!==`end`&&k,a,v===`end`&&k,ee]})}),uh=dd((0,I.jsx)(`path`,{d:`M13 3c-4.97 0-9 4.03-9 9H1l3.89 3.89.07.14L9 12H6c0-3.87 3.13-7 7-7s7 3.13 7 7-3.13 7-7 7c-1.93 0-3.68-.79-4.94-2.06l-1.42 1.42C8.27 19.99 10.51 21 13 21c4.97 0 9-4.03 9-9s-4.03-9-9-9m-1 5v5l4.28 2.54.72-1.21-3.5-2.08V8z`}),`Restore`),dh=dd((0,I.jsx)(`path`,{d:`M12.5 8c-2.65 0-5.05.99-6.9 2.6L2 7v9h9l-3.62-3.62c1.39-1.16 3.16-1.88 5.12-1.88 3.54 0 6.55 2.31 7.6 5.5l2.37-.78C21.08 11.03 17.15 8 12.5 8`}),`Undo`),fh=W(`div`)({display:`flex`,flexDirection:`column`}),ph=W(`div`)({display:`flex`,alignItems:`center`,justifyContent:`center`}),mh=W(`div`)(({theme:e})=>({width:`24px`,height:`24px`,color:`gray`,marginRight:e.spacing(1),display:`flex`,alignItems:`center`})),hh=W(lh)(({theme:e})=>({display:`flex`,alignItems:`center`,marginLeft:e.spacing(3),marginRight:e.spacing(3)})),gh=e=>{class t extends F.Component{static propTypes={session:P.object,onSessionChange:P.func};constructor(e){super(e),this.state={sessionInitialValues:JSON.parse(JSON.stringify(e.session)),session:e.session,changes:[]}}onSessionChange=e=>{this.setState(t=>({session:e,changes:[...t.changes,e]}),()=>this.props.onSessionChange(e))};onUndo=()=>{this.setState(e=>{let t=[...e.changes];return t.pop(),{changes:t,session:t.length?t[t.length-1]:e.sessionInitialValues}},()=>this.props.onSessionChange(this.state.session))};onReset=()=>{this.setState(e=>({session:e.sessionInitialValues,changes:[]}),()=>this.props.onSessionChange(this.state.sessionInitialValues))};render(){let{...t}=this.props,{changes:n,session:r}=this.state;return(0,I.jsxs)(fh,{children:[(0,I.jsxs)(ph,{children:[(0,I.jsxs)(hh,{color:`primary`,disabled:n.length===0,onClick:this.onUndo,children:[(0,I.jsx)(mh,{children:(0,I.jsx)(dh,{})}),`Undo`]}),(0,I.jsxs)(hh,{color:`primary`,disabled:n.length===0,onClick:this.onReset,children:[(0,I.jsx)(mh,{children:(0,I.jsx)(uh,{})}),`Start Over`]})]}),(0,I.jsx)(e,{...t,session:r,onSessionChange:this.onSessionChange})]})}}return t},_h=Ac({typography:{fontFamily:`inherit`},palette:{action:{disabled:`rgba(0, 0, 0, 0.54);`}},components:{MuiTypography:{styleOverrides:{root:{fontFamily:`inherit`}}},MuiButton:{styleOverrides:{contained:{backgroundColor:`#e0e0e0`,color:`#000000`,"&:hover":{backgroundColor:`#bdbdbd`}}}}}}),vh=W(`div`)({"& table, th, td":{fontSize:`inherit`}}),yh=class extends F.Component{static propTypes={className:P.string,children:P.array,extraCSSRules:P.shape({names:P.arrayOf(P.string),rules:P.string}),fontSizeFactor:P.number};static defaultProps={extraCSSRules:{},fontSizeFactor:1};constructor(e){super(e),this.classesSheet=document.createElement(`style`)}scopeClass=dm(`extra-css-rules`);computeStyle(e){let t=e=>parseFloat(getComputedStyle(e).fontSize),n=t(document.documentElement),r=t(document.body),i=Math.max(n,r),a=e!=null&&typeof e==`number`?e:1;return a===1?null:{fontSize:`${i*a}px`}}render(){let{children:e,className:t,fontSizeFactor:n,...r}=this.props,{extraCSSRules:i,...a}=r,o=this.computeStyle(n);return(0,I.jsx)(vi,{injectFirst:!0,children:(0,I.jsxs)(Vc,{theme:_h,children:[i?.rules?(0,I.jsx)(`style`,{dangerouslySetInnerHTML:{__html:`.${this.scopeClass} { ${i.rules} }`}}):null,(0,I.jsx)(vh,{className:`${t} extraCSSRules ${this.scopeClass}`,...a,...o&&{style:o},children:e})]})})}},bh=W(yh)({display:`flex`,flexDirection:`column`,position:`relative`}),xh=class extends F.Component{static propTypes={ariaLabel:P.string,children:P.oneOfType([P.arrayOf(P.node),P.node]).isRequired,role:P.string,extraCSSRules:P.shape({names:P.arrayOf(P.string),rules:P.string}),fontSizeFactor:P.number};render(){let{children:e,ariaLabel:t,role:n,extraCSSRules:r,fontSizeFactor:i,classes:a}=this.props;return(0,I.jsx)(bh,{...t?{"aria-label":t,role:n}:{},extraCSSRules:r,fontSizeFactor:i,classes:a,children:e})}},Sh=class extends F.Component{static propTypes={tag:P.string,className:P.string,html:P.string};static defaultProps={tag:`div`,html:``};render(){let{tag:e,className:t,html:n}=this.props;return(0,I.jsx)(e||`div`,{ref:e=>this.node=e,className:t,dangerouslySetInnerHTML:{__html:n}})}};function Ch({props:e,states:t,muiFormControl:n}){return t.reduce((t,r)=>(t[r]=e[r],n&&e[r]===void 0&&(t[r]=n[r]),t),{})}var wh=F.createContext(void 0);function Th(){return F.useContext(wh)}function Eh(e){return to(`MuiFormLabel`,e)}var Dh=no(`MuiFormLabel`,[`root`,`colorSecondary`,`focused`,`disabled`,`error`,`filled`,`required`,`asterisk`]),Oh=e=>{let{classes:t,color:n,focused:r,disabled:i,error:a,filled:o,required:s}=e;return xs({root:[`root`,`color${od(n)}`,i&&`disabled`,a&&`error`,o&&`filled`,r&&`focused`,s&&`required`],asterisk:[`asterisk`,a&&`error`]},Eh,t)},kh=W(`label`,{name:`MuiFormLabel`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.color===`secondary`&&t.colorSecondary,n.filled&&t.filled]}})(ku(({theme:e})=>({color:(e.vars||e).palette.text.secondary,...e.typography.body1,lineHeight:`1.4375em`,padding:0,position:`relative`,variants:[...Object.entries(e.palette).filter(zm()).map(([t])=>({props:{color:t},style:{[`&.${Dh.focused}`]:{color:(e.vars||e).palette[t].main}}})),{props:{},style:{[`&.${Dh.disabled}`]:{color:(e.vars||e).palette.text.disabled},[`&.${Dh.error}`]:{color:(e.vars||e).palette.error.main}}}]}))),Ah=W(`span`,{name:`MuiFormLabel`,slot:`Asterisk`})(ku(({theme:e})=>({[`&.${Dh.error}`]:{color:(e.vars||e).palette.error.main}}))),jh=F.forwardRef(function(e,t){let n=rl({props:e,name:`MuiFormLabel`}),{children:r,className:i,color:a,component:o=`label`,disabled:s,error:c,filled:l,focused:u,required:d,...f}=n,p=Ch({props:n,muiFormControl:Th(),states:[`color`,`required`,`focused`,`disabled`,`error`,`filled`]}),m={...n,color:p.color||`primary`,component:o,disabled:p.disabled,error:p.error,filled:p.filled,focused:p.focused,required:p.required},h=Oh(m);return(0,I.jsxs)(kh,{as:o,ownerState:m,className:R(h.root,i),ref:t,...f,children:[r,p.required&&(0,I.jsxs)(Ah,{ownerState:m,"aria-hidden":!0,className:h.asterisk,children:[` `,`*`]})]})});function Mh(e){return to(`MuiInputLabel`,e)}no(`MuiInputLabel`,[`root`,`focused`,`disabled`,`error`,`required`,`asterisk`,`formControl`,`sizeSmall`,`shrink`,`animated`,`standard`,`filled`,`outlined`]);var Nh=e=>{let{classes:t,formControl:n,size:r,shrink:i,disableAnimation:a,variant:o,required:s}=e,c=xs({root:[`root`,n&&`formControl`,!a&&`animated`,i&&`shrink`,r&&r!==`medium`&&`size${od(r)}`,o],asterisk:[s&&`asterisk`]},Mh,t);return{...t,...c}},Ph=W(jh,{shouldForwardProp:e=>Pc(e)||e===`classes`,name:`MuiInputLabel`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[{[`& .${Dh.asterisk}`]:t.asterisk},t.root,n.formControl&&t.formControl,n.size===`small`&&t.sizeSmall,n.shrink&&t.shrink,!n.disableAnimation&&t.animated,n.focused&&t.focused,t[n.variant]]}})(ku(({theme:e})=>({display:`block`,transformOrigin:`top left`,whiteSpace:`nowrap`,overflow:`hidden`,textOverflow:`ellipsis`,maxWidth:`100%`,variants:[{props:({ownerState:e})=>e.formControl,style:{position:`absolute`,left:0,top:0,transform:`translate(0, 20px) scale(1)`}},{props:{size:`small`},style:{transform:`translate(0, 17px) scale(1)`}},{props:({ownerState:e})=>e.shrink,style:{transform:`translate(0, -1.5px) scale(0.75)`,transformOrigin:`top left`,maxWidth:`133%`}},{props:({ownerState:e})=>!e.disableAnimation,style:{transition:e.transitions.create([`color`,`transform`,`max-width`],{duration:e.transitions.duration.shorter,easing:e.transitions.easing.easeOut})}},{props:{variant:`filled`},style:{zIndex:1,pointerEvents:`none`,transform:`translate(12px, 16px) scale(1)`,maxWidth:`calc(100% - 24px)`}},{props:{variant:`filled`,size:`small`},style:{transform:`translate(12px, 13px) scale(1)`}},{props:({variant:e,ownerState:t})=>e===`filled`&&t.shrink,style:{userSelect:`none`,pointerEvents:`auto`,transform:`translate(12px, 7px) scale(0.75)`,maxWidth:`calc(133% - 24px)`}},{props:({variant:e,ownerState:t,size:n})=>e===`filled`&&t.shrink&&n===`small`,style:{transform:`translate(12px, 4px) scale(0.75)`}},{props:{variant:`outlined`},style:{zIndex:1,pointerEvents:`none`,transform:`translate(14px, 16px) scale(1)`,maxWidth:`calc(100% - 24px)`}},{props:{variant:`outlined`,size:`small`},style:{transform:`translate(14px, 9px) scale(1)`}},{props:({variant:e,ownerState:t})=>e===`outlined`&&t.shrink,style:{userSelect:`none`,pointerEvents:`auto`,maxWidth:`calc(133% - 32px)`,transform:`translate(14px, -9px) scale(0.75)`}}]}))),Fh=F.forwardRef(function(e,t){let n=rl({name:`MuiInputLabel`,props:e}),{disableAnimation:r=!1,margin:i,shrink:a,variant:o,className:s,...c}=n,l=Th(),u=a;u===void 0&&l&&(u=l.filled||l.focused||l.adornedStart);let d=Ch({props:n,muiFormControl:l,states:[`size`,`variant`,`required`,`focused`]}),f={...n,disableAnimation:r,formControl:l,shrink:u,size:d.size,variant:d.variant,required:d.required,focused:d.focused},p=Nh(f);return(0,I.jsx)(Ph,{"data-shrink":u,ref:t,className:R(p.root,s),...c,ownerState:f,classes:p})});function Ih(e){return e!=null&&!(Array.isArray(e)&&e.length===0)}function Lh(e,t=!1){return e&&(Ih(e.value)&&e.value!==``||t&&Ih(e.defaultValue)&&e.defaultValue!==``)}function Rh(e){return e.startAdornment}function zh(e){return to(`MuiFormControl`,e)}no(`MuiFormControl`,[`root`,`marginNone`,`marginNormal`,`marginDense`,`fullWidth`,`disabled`]);var Bh=e=>{let{classes:t,margin:n,fullWidth:r}=e;return xs({root:[`root`,n!==`none`&&`margin${od(n)}`,r&&`fullWidth`]},zh,t)},Vh=W(`div`,{name:`MuiFormControl`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[`margin${od(n.margin)}`],n.fullWidth&&t.fullWidth]}})({display:`inline-flex`,flexDirection:`column`,position:`relative`,minWidth:0,padding:0,margin:0,border:0,verticalAlign:`top`,variants:[{props:{margin:`normal`},style:{marginTop:16,marginBottom:8}},{props:{margin:`dense`},style:{marginTop:8,marginBottom:4}},{props:{fullWidth:!0},style:{width:`100%`}}]}),Hh=W(F.forwardRef(function(e,t){let n=rl({props:e,name:`MuiFormControl`}),{children:r,className:i,color:a=`primary`,component:o=`div`,disabled:s=!1,error:c=!1,focused:l,fullWidth:u=!1,hiddenLabel:d=!1,margin:f=`none`,required:p=!1,size:m=`medium`,variant:h=`outlined`,...g}=n,_={...n,color:a,component:o,disabled:s,error:c,fullWidth:u,hiddenLabel:d,margin:f,required:p,size:m,variant:h},v=Bh(_),[y,b]=F.useState(()=>{let e=!1;return r&&F.Children.forEach(r,t=>{if(!fd(t,[`Input`,`Select`]))return;let n=fd(t,[`Select`])?t.props.input:t;n&&Rh(n.props)&&(e=!0)}),e}),[x,S]=F.useState(()=>{let e=!1;return r&&F.Children.forEach(r,t=>{fd(t,[`Input`,`Select`])&&(Lh(t.props,!0)||Lh(t.props.inputProps,!0))&&(e=!0)}),e}),[C,w]=F.useState(!1);s&&C&&w(!1);let T=l!==void 0&&!s?l:C;F.useRef(!1);let E=F.useCallback(()=>{S(!0)},[]),D=F.useCallback(()=>{S(!1)},[]),O=F.useMemo(()=>({adornedStart:y,setAdornedStart:b,color:a,disabled:s,error:c,filled:x,focused:T,fullWidth:u,hiddenLabel:d,size:m,onBlur:()=>{w(!1)},onFocus:()=>{w(!0)},onEmpty:D,onFilled:E,registerEffect:void 0,required:p,variant:h}),[y,a,s,c,x,T,u,d,void 0,D,E,p,m,h]);return(0,I.jsx)(wh.Provider,{value:O,children:(0,I.jsx)(Vh,{as:o,ownerState:_,className:R(v.root,i),ref:t,...g,children:r})})}))(({theme:e})=>({margin:0,padding:0,flex:`1 0 auto`,minWidth:e.spacing(4)})),Uh=W(Fh)(()=>({fontSize:`inherit`,whiteSpace:`nowrap`,margin:0,padding:0,alignSelf:`flex-start`,position:`absolute`,top:0,left:0,transformOrigin:`top left`,pointerEvents:`none`,"&.MuiInputLabel-shrink":{transform:`scale(0.75) translate(0, -0.75em)`},"&:not(.MuiInputLabel-shrink)":{transform:`translate(0, 0)`}})),Wh=({label:e,className:t,children:n})=>(0,I.jsxs)(Hh,{className:t,children:[(0,I.jsx)(Uh,{shrink:!0,children:e}),n]});Wh.propTypes={label:P.oneOfType([P.string,P.object]).isRequired,className:P.string,children:P.oneOfType([P.arrayOf(P.node),P.node]).isRequired};var{translator:Gh}=um,Kh=`pie-prompt-audio-player`,qh=`play-audio-button`,Jh=e=>`&:not(.MathJax) > table${e}, &:not(.MathJax) > .pie-table-scroll > table${e}`,Yh=W(`div`)(({theme:e,tagName:t})=>({[`& .${qh}:focus-visible`]:{outline:`2px solid ${xf()}`,outlineOffset:`2px`},[Jh(`:not([role="presentation"])`)]:{borderCollapse:`collapse`},'&:not(.MathJax) table[border]:not([role="presentation"]), &:not(.MathJax) table[border]:not([role="presentation"]) td, &:not(.MathJax) table[border]:not([role="presentation"]) th':{borderStyle:`solid`,borderColor:uf()},[Jh(`:not([role="presentation"]):has(tbody tr > th:first-child):not(:has(tbody tr > td:first-child)) tbody td:nth-child(even)`)]:{backgroundColor:ff()},[Jh(`:not([role="presentation"]):has(tbody tr > td:first-child) tbody tr:nth-child(even) td`)]:{backgroundColor:ff()},'&:not(.MathJax) table:not([role="presentation"]) td, &:not(.MathJax) table:not([role="presentation"]) th':{padding:`.6em 1em`,textAlign:`left`},[Jh(` td > p.kds-indent`)]:{textAlign:`initial`},"&.prompt":{verticalAlign:`middle`,color:Ad()},"&.legend":{width:`100%`,fontSize:`inherit !important`},"&.rationale":{paddingLeft:e.spacing(4),paddingBottom:e.spacing(1)},"&.prompt-label":{color:`${Ad()} !important`,display:`flex`,flexDirection:`column`,verticalAlign:`middle`,cursor:`pointer`,"& > p":{margin:`0 0 0 0 !important`}}})),Xh=/\\embed\{newLine\}\[\]/g,Zh=`\\newline `,Qh=`preview-prompt`,$h=class extends F.Component{static propTypes={prompt:P.string,tagName:P.string,className:P.string,onClick:P.func,defaultClassName:P.string,autoplayAudioEnabled:P.bool,customAudioButton:P.shape({playImage:P.string,pauseImage:P.string}),language:P.string};static defaultProps={onClick:()=>{}};promptRef=F.createRef();audioId=dm(Kh);playButtonId=dm(qh);parsedText=e=>{let{autoplayAudioEnabled:t,customAudioButton:n,language:r}=this.props,i=document.createElement(`div`);i.innerHTML=e;let a=i.querySelector(`audio`);if(a){let e=document.createElement(`source`);if(e.setAttribute(`type`,`audio/mp3`),e.setAttribute(`src`,a.getAttribute(`src`)),a.removeAttribute(`src`),a.id=this.audioId,a.classList.add(Kh),a.appendChild(e),n){a.style.display=`none`;let e=document.createElement(`button`);e.setAttribute(`type`,`button`),e.setAttribute(`aria-label`,Gh.t(`common:playAudio`,{lng:r})),e.id=this.playButtonId,e.className=qh,Object.assign(e.style,{cursor:`pointer`,display:`block`,width:`128px`,height:`128px`,margin:`0`,padding:`0`,font:`inherit`,backgroundColor:`transparent`,backgroundImage:`url(${t?n.pauseImage:n.playImage})`,backgroundSize:`cover`,borderRadius:`50%`,border:`1px solid #326295`}),a.parentNode.insertBefore(e,a)}}return i.innerHTML};addCustomAudioButtonControls(){let{autoplayAudioEnabled:e,customAudioButton:t}=this.props,n=this.promptRef.current,r=n?.querySelector(`.${qh}`),i=n?.querySelector(`.${Kh}`);if(e&&i&&i.play().then(()=>{r&&t&&i.addEventListener(`ended`,o)}).catch(e=>{r&&t&&(r.style.backgroundImage=`url(${t.playImage})`),console.error(`Error playing audio`,e)}),!r||!i||!t)return;let a=()=>{i.paused&&i.play()},o=()=>{r.style.backgroundImage=`url(${t.playImage})`},s=()=>{Object.assign(r.style,{backgroundImage:`url(${t.pauseImage})`,border:`1px solid #ccc`})},c=()=>{Object.assign(r.style,{backgroundImage:`url(${t.playImage})`,border:`1px solid #326295`})};r.addEventListener(`click`,a),i.addEventListener(`play`,s),i.addEventListener(`pause`,c),i.addEventListener(`ended`,o),this._playButton=r,this._audio=i,this._handlePlayClick=a,this._handleAudioPlay=s,this._handleAudioPause=c,this._handleAudioEnded=o}removeCustomAudioButtonListeners(){let e=this._playButton,t=this._audio;!e||!t||(e.removeEventListener(`click`,this._handlePlayClick),t.removeEventListener(`play`,this._handleAudioPlay),t.removeEventListener(`pause`,this._handleAudioPause),t.removeEventListener(`ended`,this._handleAudioEnded))}componentDidMount(){this.alignImages(),this.addCustomAudioButtonControls(),this.setupMathRendering()}componentDidUpdate(e){this.alignImages(),e.prompt!==this.props.prompt&&this.renderMathContent()}componentWillUnmount(){this.removeCustomAudioButtonListeners()}setupMathRendering(){this.renderMathContent()}renderMathContent(){let e=this.promptRef.current;e&&typeof Vt==`function`&&Vt(e)}alignImages(){let e=this.promptRef.current;if(!e)return;let t=e.getElementsByTagName(`img`);if(t&&t.length){for(let e of t)if(e.attributes&&e.attributes.alignment&&e.attributes.alignment.value){let t=e.attributes.alignment.value,n=t===`center`?`center`:t===`right`?`flex-end`:`flex-start`,r=e.parentElement;if(r.tagName===`DIV`&&r.style.display===`flex`&&r.style.width===`100%`)r.style.justifyContent=n;else{let t=document.createElement(`div`);t.style.display=`flex`,t.style.width=`100%`,t.style.justifyContent=n;let i=e.cloneNode(!0);t.appendChild(i),r.replaceChild(t,e)}}}}render(){let{prompt:e,tagName:t,className:n,onClick:r,defaultClassName:i}=this.props,a=`${n||``} ${i||``} ${t===`legend`?`legend`:``} ${Qh}`.trim();return(0,I.jsx)(Yh,{as:t||`div`,ref:this.promptRef,onClick:r,className:a,tagName:t,dangerouslySetInnerHTML:{__html:this.parsedText(e||``).replace(Xh,Zh)}})}},eg=e=>(0,I.jsx)(I.Fragment,{children:F.Children.map(e.children,t=>F.cloneElement(t,{"data-pie-readable":e.false===void 0}))});eg.propTypes={children:P.node,false:P.bool};var tg=e=>(0,I.jsx)(I.Fragment,{children:F.Children.map(e.children,t=>F.cloneElement(t,{"data-pie-purpose":e.purpose}))});tg.propTypes={children:P.node,purpose:P.string};var ng;typeof window<`u`&&(ng=new DOMParser);var rg=e=>ng.parseFromString(e,`text/html`).body.textContent,ig=e=>{if(!e)return!1;let t=rg(e);return!!(t&&t.trim())},ag;typeof window<`u`&&(ag=new DOMParser);var og=e=>{if(!e)return!1;let t=ag.parseFromString(e,`text/html`);return!!t.body.querySelector(`img`)||!!t.body.querySelector(`video`)||!!t.body.querySelector(`audio`)},sg=`data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAMCAgICAgMCAgIDAwMDBAYEBAQEBAgGBgUGCQgKCgkICQkKDA8MCgsOCwkJDRENDg8QEBEQCgwSExIQEw8QEBD/2wBDAQMDAwQDBAgEBAgQCwkLEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBD/wAARCAJYAyADAREAAhEBAxEB/8QAHgABAQABBQEBAQAAAAAAAAAAAAEIAgMGBwkEBQr/xABiEAACAQIDBAMKCAYMCgYLAQAAAQIDEQQFIQYSMUEHCFETFRYiUmFxkdHhCRRjgaGisfAXMjRTcsEjJDY4QmJ1dpKztMQYMzdEVIKyw9PxQ1hmc3SWJzVFRlZXhJOUldJk/8QAGwEBAQADAQEBAAAAAAAAAAAAAAcEBQYCAQP/xABBEQEAAQIDAgkJBgUFAQEBAAAAAQIDBAYRBSESMUFEYXGCscITNDVRcoGRocEUIjJS0eEVI2KSsjNCU6LwFtLx/9oADAMBAAIRAxEAPwD1TAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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`;function cg(e=``,t=2){if(!e)return e;let n=new DOMParser().parseFromString(e,`text/html`);return n.body.querySelectorAll(`[data-heading]`).forEach(e=>{let r=e.getAttribute(`data-heading`)||``,i=parseInt(r.replace(`heading`,``),10);if(!Number.isFinite(i))return;let a=Math.min(6,Math.max(1,t+i-1)),o=n.createElement(`h${a}`);o.setAttribute(`data-heading`,r),Array.from(e.attributes).forEach(e=>{e.name!==`data-heading`&&o.setAttribute(e.name,e.value)}),o.innerHTML=e.innerHTML,e.replaceWith(o)}),n.body.innerHTML}function lg(e){let{elementType:t,externalSlotProps:n,ownerState:r,skipResolvingSlotProps:i=!1,...a}=e,o=i?{}:ju(n,r),{props:s,internalRef:c}=Pu({...a,externalSlotProps:o}),l=Zl(c,o?.ref,e.additionalProps?.ref);return Au(t,{...s,ref:l},r)}var ug=F.createContext({});function dg(e){return to(`MuiList`,e)}no(`MuiList`,[`root`,`padding`,`dense`,`subheader`]);var fg=e=>{let{classes:t,disablePadding:n,dense:r,subheader:i}=e;return xs({root:[`root`,!n&&`padding`,r&&`dense`,i&&`subheader`]},dg,t)},pg=W(`ul`,{name:`MuiList`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,!n.disablePadding&&t.padding,n.dense&&t.dense,n.subheader&&t.subheader]}})({listStyle:`none`,margin:0,padding:0,position:`relative`,variants:[{props:({ownerState:e})=>!e.disablePadding,style:{paddingTop:8,paddingBottom:8}},{props:({ownerState:e})=>e.subheader,style:{paddingTop:0}}]}),mg=F.forwardRef(function(e,t){let n=rl({props:e,name:`MuiList`}),{children:r,className:i,component:a=`ul`,dense:o=!1,disablePadding:s=!1,subheader:c,...l}=n,u=F.useMemo(()=>({dense:o}),[o]),d={...n,component:a,dense:o,disablePadding:s},f=fg(d);return(0,I.jsx)(ug.Provider,{value:u,children:(0,I.jsxs)(pg,{as:a,className:R(f.root,i),ref:t,ownerState:d,...l,children:[c,r]})})}),hg=ru;function gg(e,t,n){return e===t?e.firstChild:t&&t.nextElementSibling?t.nextElementSibling:n?null:e.firstChild}function _g(e,t,n){return e===t?n?e.firstChild:e.lastChild:t&&t.previousElementSibling?t.previousElementSibling:n?null:e.lastChild}function vg(e,t){if(t===void 0)return!0;let n=e.innerText;return n===void 0&&(n=e.textContent),n=n.trim().toLowerCase(),n.length===0?!1:t.repeating?n[0]===t.keys[0]:n.startsWith(t.keys.join(``))}function yg(e,t,n,r,i,a){let o=!1,s=i(e,t,t?n:!1);for(;s;){if(s===e.firstChild){if(o)return!1;o=!0}let t=r?!1:s.disabled||s.getAttribute(`aria-disabled`)===`true`;if(!s.hasAttribute(`tabindex`)||!vg(s,a)||t)s=i(e,s,n);else return s.focus(),!0}return!1}var bg=F.forwardRef(function(e,t){let{actions:n,autoFocus:r=!1,autoFocusItem:i=!1,children:a,className:o,disabledItemsFocusable:s=!1,disableListWrap:c=!1,onKeyDown:l,variant:u=`selectedMenu`,...d}=e,f=F.useRef(null),p=F.useRef({keys:[],repeating:!0,previousKeyMatched:!0,lastTime:null});pd(()=>{r&&f.current.focus()},[r]),F.useImperativeHandle(n,()=>({adjustStyleForScrollbar:(e,{direction:t})=>{let n=!f.current.style.width;if(e.clientHeight<f.current.clientHeight&&n){let n=`${hg(ll(e))}px`;f.current.style[t===`rtl`?`paddingLeft`:`paddingRight`]=n,f.current.style.width=`calc(100% + ${n})`}return f.current}}),[]);let m=e=>{let t=f.current,n=e.key;if(e.ctrlKey||e.metaKey||e.altKey){l&&l(e);return}let r=gu(sl(t));if(n===`ArrowDown`)e.preventDefault(),yg(t,r,c,s,gg);else if(n===`ArrowUp`)e.preventDefault(),yg(t,r,c,s,_g);else if(n===`Home`)e.preventDefault(),yg(t,null,c,s,gg);else if(n===`End`)e.preventDefault(),yg(t,null,c,s,_g);else if(n.length===1){let i=p.current,a=n.toLowerCase(),o=performance.now();i.keys.length>0&&(o-i.lastTime>500?(i.keys=[],i.repeating=!0,i.previousKeyMatched=!0):i.repeating&&a!==i.keys[0]&&(i.repeating=!1)),i.lastTime=o,i.keys.push(a);let c=r&&!i.repeating&&vg(r,i);i.previousKeyMatched&&(c||yg(t,r,!1,s,gg,i))?e.preventDefault():i.previousKeyMatched=!1}l&&l(e)},h=Ql(f,t),g=-1;F.Children.forEach(a,(e,t)=>{if(!F.isValidElement(e)){g===t&&(g+=1,g>=a.length&&(g=-1));return}e.props.disabled||(u===`selectedMenu`&&e.props.selected||g===-1)&&(g=t),g===t&&(e.props.disabled||e.props.muiSkipListHighlight||e.type.muiSkipListHighlight)&&(g+=1,g>=a.length&&(g=-1))});let _=F.Children.map(a,(e,t)=>{if(t===g){let t={};return i&&(t.autoFocus=!0),e.props.tabIndex===void 0&&u===`selectedMenu`&&(t.tabIndex=0),F.cloneElement(e,t)}return e});return(0,I.jsx)(mg,{role:`menu`,ref:h,className:o,onKeyDown:m,tabIndex:r?0:-1,...d,children:_})});function xg(e){return to(`MuiMenu`,e)}no(`MuiMenu`,[`root`,`paper`,`list`]);var Sg={vertical:`top`,horizontal:`right`},Cg={vertical:`top`,horizontal:`left`},wg=e=>{let{classes:t}=e;return xs({root:[`root`],paper:[`paper`],list:[`list`]},xg,t)},Tg=W(Td,{shouldForwardProp:e=>Pc(e)||e===`classes`,name:`MuiMenu`,slot:`Root`})({}),Eg=W(wd,{name:`MuiMenu`,slot:`Paper`})({maxHeight:`calc(100% - 96px)`,WebkitOverflowScrolling:`touch`}),Dg=W(bg,{name:`MuiMenu`,slot:`List`})({outline:0}),Og=F.forwardRef(function(e,t){let n=rl({props:e,name:`MuiMenu`}),{autoFocus:r=!0,children:i,className:a,disableAutoFocusItem:o=!1,MenuListProps:s={},onClose:c,open:l,PaperProps:u={},PopoverClasses:d,transitionDuration:f=`auto`,TransitionProps:{onEntering:p,...m}={},variant:h=`selectedMenu`,slots:g={},slotProps:_={},...v}=n,y=Bo(),b={...n,autoFocus:r,disableAutoFocusItem:o,MenuListProps:s,onEntering:p,PaperProps:u,transitionDuration:f,TransitionProps:m,variant:h},x=wg(b),S=r&&!o&&l,C=F.useRef(null),w=(e,t)=>{C.current&&C.current.adjustStyleForScrollbar(e,{direction:y?`rtl`:`ltr`}),p&&p(e,t)},T=e=>{e.key===`Tab`&&(e.preventDefault(),c&&c(e,`tabKeyDown`))},E=-1;F.Children.map(i,(e,t)=>{F.isValidElement(e)&&(e.props.disabled||(h===`selectedMenu`&&e.props.selected||E===-1)&&(E=t))});let D={slots:g,slotProps:{list:s,transition:m,paper:u,..._}},O=lg({elementType:g.root,externalSlotProps:_.root,ownerState:b,className:[x.root,a]}),[ee,te]=Fu(`paper`,{className:x.paper,elementType:Eg,externalForwardedProps:D,shouldForwardComponentProp:!0,ownerState:b}),[k,A]=Fu(`list`,{className:R(x.list,s.className),elementType:Dg,shouldForwardComponentProp:!0,externalForwardedProps:D,getSlotProps:e=>({...e,onKeyDown:t=>{T(t),e.onKeyDown?.(t)}}),ownerState:b}),ne=typeof D.slotProps.transition==`function`?D.slotProps.transition(b):D.slotProps.transition;return(0,I.jsx)(Tg,{onClose:c,anchorOrigin:{vertical:`bottom`,horizontal:y?`right`:`left`},transformOrigin:y?Sg:Cg,slots:{root:g.root,paper:ee,backdrop:g.backdrop,...g.transition&&{transition:g.transition}},slotProps:{root:O,paper:te,backdrop:typeof _.backdrop==`function`?_.backdrop(b):_.backdrop,transition:{...ne,onEntering:(...e)=>{w(...e),ne?.onEntering?.(...e)}}},open:l,ref:t,transitionDuration:f,ownerState:b,...v,classes:d,children:(0,I.jsx)(k,{actions:C,autoFocus:r&&(E===-1||o),autoFocusItem:S,variant:h,...A,children:i})})}),kg=({slotProps:e,...t})=>(0,I.jsx)(Og,{...t,disableScrollLock:!0,slotProps:{...e,root:{...e?.root,style:{backgroundColor:`transparent`,...e?.root?.style}},backdrop:{invisible:!0,...e?.backdrop}}}),Ag=s({Collapsible:()=>_m,EnableAudioAutoplayImage:()=>sg,Feedback:()=>Uf,HtmlAndMath:()=>Sh,InlineMenu:()=>kg,InputContainer:()=>Wh,PreviewLayout:()=>xh,PreviewPrompt:()=>$h,Purpose:()=>tg,Readable:()=>eg,UiLayout:()=>yh,color:()=>Od,createUniqueId:()=>dm,hasMedia:()=>og,hasText:()=>ig,indicators:()=>Kf,transformDataHeadings:()=>cg,useUniqueId:()=>fm,withUndoReset:()=>gh}),jg=class e extends CustomEvent{static{this.TYPE=`model-set`}constructor(t,n,r){super(e.TYPE,{bubbles:!0,composed:!0,detail:{complete:n,component:t,hasModel:r}}),this.component=t,this.complete=n}},Mg=class e extends CustomEvent{static{this.TYPE=`session-changed`}constructor(t,n){super(e.TYPE,{bubbles:!0,composed:!0,detail:{complete:n,component:t}}),this.component=t,this.complete=n}},Ng=`height ease-in 300ms, opacity ease-in 300ms`,Pg=W(`div`)(()=>({position:`relative`,height:0,overflow:`hidden`,display:`flex`,visibility:`hidden`,width:0,"&.enter":{transition:Ng,opacity:1,height:`auto`,width:`auto`,visibility:`visible`,minHeight:`25px`},"&.enter-done":{height:`auto`,visibility:`visible`,width:`auto`,minHeight:`25px`},"&.exit":{transition:Ng,opacity:0,height:0,visibility:`visible`,width:0},"&.exit-done":{opacity:0,visibility:`hidden`,height:0,width:0}})),Fg=e=>{let{show:t,children:n,className:r}=e,i=(0,F.useRef)(null);return(0,I.jsx)(Ll,{nodeRef:i,in:t,appear:!0,mountOnEnter:!1,timeout:300,classNames:{enter:`enter`,enterDone:`enter-done`,exit:`exit`,exitDone:`exit-done`},children:(0,I.jsx)(Pg,{ref:i,className:r,children:n})})};Fg.propTypes={show:P.bool.isRequired,className:P.string,children:P.oneOfType([P.arrayOf(P.node),P.node]).isRequired};function Ig(e){return typeof e==`function`||typeof e==`object`&&!!e&&typeof e.$$typeof==`symbol`}function Lg(e,t){return!e||Ig(e)?e:Ig(e.default)?e.default:t&&Ig(e[t])?e[t]:t&&Ig(e[t]?.default)?e[t].default:e}var Rg=Lg(eg,`Readable`)||Lg(Vg.Readable,`Readable`),zg=Ag,Bg=zg.default,Vg=Bg&&typeof Bg==`object`?Bg:zg,{translator:Hg}=um,Ug={WebkitTouchCallout:`none`,WebkitUserSelect:`none`,KhtmlUserSelect:`none`,MozUserSelect:`none`,msUserSelect:`none`,userSelect:`none`},Wg=W(`div`)(()=>({width:`100%`,cursor:`pointer`})),Gg=W(`button`)(()=>({margin:`0 auto`,textAlign:`center`,display:`flex`,minWidth:`24px`,minHeight:`24px`,padding:0,border:0,background:`none`,color:`inherit`,font:`inherit`,cursor:`pointer`,"&:focus-visible":{outline:`2px solid ${bf()}`,outlineOffset:`-2px`}})),Kg=W(`div`)(()=>({width:`fit-content`,minWidth:`140px`,alignSelf:`center`,verticalAlign:`middle`,color:`var(--correct-answer-toggle-label-color, ${Ad()})`,fontWeight:`normal`,...Ug})),qg=W(`div`)(()=>({position:`absolute`,width:`25px`,"&.enter":{opacity:`0`},"&.enter-active":{opacity:`1`,transition:`opacity 0.3s ease-in`},"&.exit":{opacity:`1`},"&.exit-active":{opacity:`0`,transition:`opacity 0.3s ease-in`}})),Jg=W(`div`)(()=>({width:`25px`,marginRight:`5px`,display:`flex`,alignItems:`center`})),Yg=class e extends F.Component{static propTypes={onToggle:P.func,toggled:P.bool,show:P.bool,hideMessage:P.string,showMessage:P.string,className:P.string,language:P.string};static defaultProps={showMessage:`Show correct answer`,hideMessage:`Hide correct answer`,show:!1,toggled:!1};constructor(t){super(t),this.state={show:t.show},this.openIconRef=F.createRef(),this.closedIconRef=F.createRef(),e.defaultProps={...e.defaultProps,showMessage:Hg.t(`common:showCorrectAnswer`,{lng:t.language}),hideMessage:Hg.t(`common:hideCorrectAnswer`,{lng:t.language})}}onClick(){this.props.onToggle(!this.props.toggled)}onTouch(e){e.preventDefault(),this.props.onToggle(!this.props.toggled)}UNSAFE_componentWillReceiveProps(t){this.setState({show:t.show}),t.language!==this.props?.language&&(e.defaultProps={...e.defaultProps,showMessage:Hg.t(`common:showCorrectAnswer`,{lng:t.language}),hideMessage:Hg.t(`common:hideCorrectAnswer`,{lng:t.language})})}render(){let{className:e,toggled:t,hideMessage:n,showMessage:r}=this.props;return(0,I.jsx)(Wg,{className:e,children:(0,I.jsx)(Fg,{show:this.state.show,children:(0,I.jsxs)(Gg,{type:`button`,"aria-pressed":!!t,onClick:this.onClick.bind(this),onTouchEnd:this.onTouch.bind(this),children:[(0,I.jsxs)(Jg,{children:[(0,I.jsx)(Ll,{nodeRef:this.openIconRef,timeout:400,in:t,exit:!t,classNames:{enter:`enter`,enterActive:`enter-active`,exit:`exit`,exitActive:`exit-active`},children:(0,I.jsx)(qg,{ref:this.openIconRef,children:(0,I.jsx)(Gc,{open:t},`correct-open`)})}),(0,I.jsx)(Ll,{nodeRef:this.closedIconRef,timeout:5e3,in:!t,exit:t,classNames:{enter:`enter`,enterActive:`enter-active`,exit:`exit`,exitActive:`exit-active`},children:(0,I.jsx)(qg,{ref:this.closedIconRef,children:(0,I.jsx)(Gc,{open:t},`correct-closed`)})})]}),(0,I.jsx)(Rg,{false:!0,children:(0,I.jsx)(Kg,{"aria-hidden":!this.state.show,children:t?n:r})})]})})})}},Xg=Math.PI/180;function Zg(){return typeof window<`u`&&({}.toString.call(window)===`[object Window]`||{}.toString.call(window)===`[object global]`)}var Qg=typeof global<`u`?global:typeof window<`u`?window:typeof WorkerGlobalScope<`u`?self:{},J={_global:Qg,version:`8.3.0`,isBrowser:Zg(),isUnminified:/param/.test(function(e){}.toString()),dblClickWindow:400,getAngle(e){return J.angleDeg?e*Xg:e},enableTrace:!1,pointerEventsEnabled:!0,autoDrawEnabled:!0,hitOnDragEnabled:!1,capturePointerEventsEnabled:!1,_mouseListenClick:!1,_touchListenClick:!1,_pointerListenClick:!1,_mouseInDblClickWindow:!1,_touchInDblClickWindow:!1,_pointerInDblClickWindow:!1,_mouseDblClickPointerId:null,_touchDblClickPointerId:null,_pointerDblClickPointerId:null,pixelRatio:typeof window<`u`&&window.devicePixelRatio||1,dragDistance:3,angleDeg:!0,showWarnings:!0,dragButtons:[0,1],isDragging(){return J.DD.isDragging},isDragReady(){return!!J.DD.node},document:Qg.document,_injectGlobal(e){Qg.Konva=e}},$g=e=>{J[e.prototype.getClassName()]=e};J._injectGlobal(J);var e_=class e{constructor(e=[1,0,0,1,0,0]){this.dirty=!1,this.m=e&&e.slice()||[1,0,0,1,0,0]}reset(){this.m[0]=1,this.m[1]=0,this.m[2]=0,this.m[3]=1,this.m[4]=0,this.m[5]=0}copy(){return new e(this.m)}copyInto(e){e.m[0]=this.m[0],e.m[1]=this.m[1],e.m[2]=this.m[2],e.m[3]=this.m[3],e.m[4]=this.m[4],e.m[5]=this.m[5]}point(e){var t=this.m;return{x:t[0]*e.x+t[2]*e.y+t[4],y:t[1]*e.x+t[3]*e.y+t[5]}}translate(e,t){return this.m[4]+=this.m[0]*e+this.m[2]*t,this.m[5]+=this.m[1]*e+this.m[3]*t,this}scale(e,t){return this.m[0]*=e,this.m[1]*=e,this.m[2]*=t,this.m[3]*=t,this}rotate(e){var t=Math.cos(e),n=Math.sin(e),r=this.m[0]*t+this.m[2]*n,i=this.m[1]*t+this.m[3]*n,a=this.m[0]*-n+this.m[2]*t,o=this.m[1]*-n+this.m[3]*t;return this.m[0]=r,this.m[1]=i,this.m[2]=a,this.m[3]=o,this}getTranslation(){return{x:this.m[4],y:this.m[5]}}skew(e,t){var n=this.m[0]+this.m[2]*t,r=this.m[1]+this.m[3]*t,i=this.m[2]+this.m[0]*e,a=this.m[3]+this.m[1]*e;return this.m[0]=n,this.m[1]=r,this.m[2]=i,this.m[3]=a,this}multiply(e){var t=this.m[0]*e.m[0]+this.m[2]*e.m[1],n=this.m[1]*e.m[0]+this.m[3]*e.m[1],r=this.m[0]*e.m[2]+this.m[2]*e.m[3],i=this.m[1]*e.m[2]+this.m[3]*e.m[3],a=this.m[0]*e.m[4]+this.m[2]*e.m[5]+this.m[4],o=this.m[1]*e.m[4]+this.m[3]*e.m[5]+this.m[5];return this.m[0]=t,this.m[1]=n,this.m[2]=r,this.m[3]=i,this.m[4]=a,this.m[5]=o,this}invert(){var e=1/(this.m[0]*this.m[3]-this.m[1]*this.m[2]),t=this.m[3]*e,n=-this.m[1]*e,r=-this.m[2]*e,i=this.m[0]*e,a=e*(this.m[2]*this.m[5]-this.m[3]*this.m[4]),o=e*(this.m[1]*this.m[4]-this.m[0]*this.m[5]);return this.m[0]=t,this.m[1]=n,this.m[2]=r,this.m[3]=i,this.m[4]=a,this.m[5]=o,this}getMatrix(){return this.m}setAbsolutePosition(e,t){var n=this.m[0],r=this.m[1],i=this.m[2],a=this.m[3],o=this.m[4],s=(n*(t-this.m[5])-r*(e-o))/(n*a-r*i),c=(e-o-i*s)/n;return this.translate(c,s)}decompose(){var e=this.m[0],t=this.m[1],n=this.m[2],r=this.m[3],i=this.m[4],a=this.m[5],o=e*r-t*n;let s={x:i,y:a,rotation:0,scaleX:0,scaleY:0,skewX:0,skewY:0};if(e!=0||t!=0){var c=Math.sqrt(e*e+t*t);s.rotation=t>0?Math.acos(e/c):-Math.acos(e/c),s.scaleX=c,s.scaleY=o/c,s.skewX=(e*n+t*r)/o,s.skewY=0}else if(n!=0||r!=0){var l=Math.sqrt(n*n+r*r);s.rotation=Math.PI/2-(r>0?Math.acos(-n/l):-Math.acos(n/l)),s.scaleX=o/l,s.scaleY=l,s.skewX=0,s.skewY=(e*n+t*r)/o}return s.rotation=Y._getRotation(s.rotation),s}},t_=`[object Array]`,n_=`[object Number]`,r_=`[object String]`,i_=`[object Boolean]`,a_=Math.PI/180,o_=180/Math.PI,s_=`#`,c_=``,l_=`0`,u_=`Konva warning: `,d_=`Konva error: `,f_=`rgb(`,p_={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,132,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,255,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,203],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[119,128,144],slategrey:[119,128,144],snow:[255,255,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],transparent:[255,255,255,0],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,5]},m_=/rgb\((\d{1,3}),(\d{1,3}),(\d{1,3})\)/,h_=[],g_=typeof requestAnimationFrame<`u`&&requestAnimationFrame||function(e){setTimeout(e,60)},Y={_isElement(e){return!!(e&&e.nodeType==1)},_isFunction(e){return!!(e&&e.constructor&&e.call&&e.apply)},_isPlainObject(e){return!!e&&e.constructor===Object},_isArray(e){return Object.prototype.toString.call(e)===t_},_isNumber(e){return Object.prototype.toString.call(e)===n_&&!isNaN(e)&&isFinite(e)},_isString(e){return Object.prototype.toString.call(e)===r_},_isBoolean(e){return Object.prototype.toString.call(e)===i_},isObject(e){return e instanceof Object},isValidSelector(e){if(typeof e!=`string`)return!1;var t=e[0];return t===`#`||t===`.`||t===t.toUpperCase()},_sign(e){return e===0||e>0?1:-1},requestAnimFrame(e){h_.push(e),h_.length===1&&g_(function(){let e=h_;h_=[],e.forEach(function(e){e()})})},createCanvasElement(){var e=document.createElement(`canvas`);try{e.style=e.style||{}}catch{}return e},createImageElement(){return document.createElement(`img`)},_isInDocument(e){for(;e=e.parentNode;)if(e==document)return!0;return!1},_urlToImage(e,t){var n=Y.createImageElement();n.onload=function(){t(n)},n.src=e},_rgbToHex(e,t,n){return((1<<24)+(e<<16)+(t<<8)+n).toString(16).slice(1)},_hexToRgb(e){e=e.replace(s_,c_);var t=parseInt(e,16);return{r:t>>16&255,g:t>>8&255,b:t&255}},getRandomColor(){for(var e=(Math.random()*16777215<<0).toString(16);e.length<6;)e=l_+e;return s_+e},getRGB(e){var t;return e in p_?(t=p_[e],{r:t[0],g:t[1],b:t[2]}):e[0]===s_?this._hexToRgb(e.substring(1)):e.substr(0,4)===f_?(t=m_.exec(e.replace(/ /g,``)),{r:parseInt(t[1],10),g:parseInt(t[2],10),b:parseInt(t[3],10)}):{r:0,g:0,b:0}},colorToRGBA(e){return e||=`black`,Y._namedColorToRBA(e)||Y._hex3ColorToRGBA(e)||Y._hex6ColorToRGBA(e)||Y._rgbColorToRGBA(e)||Y._rgbaColorToRGBA(e)||Y._hslColorToRGBA(e)},_namedColorToRBA(e){var t=p_[e.toLowerCase()];return t?{r:t[0],g:t[1],b:t[2],a:1}:null},_rgbColorToRGBA(e){if(e.indexOf(`rgb(`)===0){e=e.match(/rgb\(([^)]+)\)/)[1];var t=e.split(/ *, */).map(Number);return{r:t[0],g:t[1],b:t[2],a:1}}},_rgbaColorToRGBA(e){if(e.indexOf(`rgba(`)===0){e=e.match(/rgba\(([^)]+)\)/)[1];var t=e.split(/ *, */).map(Number);return{r:t[0],g:t[1],b:t[2],a:t[3]}}},_hex6ColorToRGBA(e){if(e[0]===`#`&&e.length===7)return{r:parseInt(e.slice(1,3),16),g:parseInt(e.slice(3,5),16),b:parseInt(e.slice(5,7),16),a:1}},_hex3ColorToRGBA(e){if(e[0]===`#`&&e.length===4)return{r:parseInt(e[1]+e[1],16),g:parseInt(e[2]+e[2],16),b:parseInt(e[3]+e[3],16),a:1}},_hslColorToRGBA(e){if(/hsl\((\d+),\s*([\d.]+)%,\s*([\d.]+)%\)/g.test(e)){let[t,...n]=/hsl\((\d+),\s*([\d.]+)%,\s*([\d.]+)%\)/g.exec(e),r=Number(n[0])/360,i=Number(n[1])/100,a=Number(n[2])/100,o,s,c;if(i===0)return c=a*255,{r:Math.round(c),g:Math.round(c),b:Math.round(c),a:1};o=a<.5?a*(1+i):a+i-a*i;let l=2*a-o,u=[0,0,0];for(let e=0;e<3;e++)s=r+1/3*-(e-1),s<0&&s++,s>1&&s--,c=6*s<1?l+(o-l)*6*s:2*s<1?o:3*s<2?l+(o-l)*(2/3-s)*6:l,u[e]=c*255;return{r:Math.round(u[0]),g:Math.round(u[1]),b:Math.round(u[2]),a:1}}},haveIntersection(e,t){return!(t.x>e.x+e.width||t.x+t.width<e.x||t.y>e.y+e.height||t.y+t.height<e.y)},cloneObject(e){var t={};for(var n in e)this._isPlainObject(e[n])?t[n]=this.cloneObject(e[n]):this._isArray(e[n])?t[n]=this.cloneArray(e[n]):t[n]=e[n];return t},cloneArray(e){return e.slice(0)},degToRad(e){return e*a_},radToDeg(e){return e*o_},_degToRad(e){return Y.warn(`Util._degToRad is removed. Please use public Util.degToRad instead.`),Y.degToRad(e)},_radToDeg(e){return Y.warn(`Util._radToDeg is removed. Please use public Util.radToDeg instead.`),Y.radToDeg(e)},_getRotation(e){return J.angleDeg?Y.radToDeg(e):e},_capitalize(e){return e.charAt(0).toUpperCase()+e.slice(1)},throw(e){throw Error(d_+e)},error(e){console.error(d_+e)},warn(e){J.showWarnings&&console.warn(u_+e)},each(e,t){for(var n in e)t(n,e[n])},_inRange(e,t,n){return t<=e&&e<n},_getProjectionToSegment(e,t,n,r,i,a){var o,s,c,l=(e-n)*(e-n)+(t-r)*(t-r);if(l==0)o=e,s=t,c=(i-n)*(i-n)+(a-r)*(a-r);else{var u=((i-e)*(n-e)+(a-t)*(r-t))/l;u<0?(o=e,s=t,c=(e-i)*(e-i)+(t-a)*(t-a)):u>1?(o=n,s=r,c=(n-i)*(n-i)+(r-a)*(r-a)):(o=e+u*(n-e),s=t+u*(r-t),c=(o-i)*(o-i)+(s-a)*(s-a))}return[o,s,c]},_getProjectionToLine(e,t,n){var r=Y.cloneObject(e),i=Number.MAX_VALUE;return t.forEach(function(a,o){if(!(!n&&o===t.length-1)){var s=t[(o+1)%t.length],c=Y._getProjectionToSegment(a.x,a.y,s.x,s.y,e.x,e.y),l=c[0],u=c[1],d=c[2];d<i&&(r.x=l,r.y=u,i=d)}}),r},_prepareArrayForTween(e,t,n){var r,i=[],a=[];if(e.length>t.length){var o=t;t=e,e=o}for(r=0;r<e.length;r+=2)i.push({x:e[r],y:e[r+1]});for(r=0;r<t.length;r+=2)a.push({x:t[r],y:t[r+1]});var s=[];return a.forEach(function(e){var t=Y._getProjectionToLine(e,i,n);s.push(t.x),s.push(t.y)}),s},_prepareToStringify(e){var t;for(var n in e.visitedByCircularReferenceRemoval=!0,e)if(e.hasOwnProperty(n)&&e[n]&&typeof e[n]==`object`){if(t=Object.getOwnPropertyDescriptor(e,n),e[n].visitedByCircularReferenceRemoval||Y._isElement(e[n]))if(t.configurable)delete e[n];else return null;else if(Y._prepareToStringify(e[n])===null)if(t.configurable)delete e[n];else return null}return delete e.visitedByCircularReferenceRemoval,e},_assign(e,t){for(var n in t)e[n]=t[n];return e},_getFirstPointerId(e){return e.touches?e.changedTouches[0].identifier:e.pointerId||999}};function __(e){return Y._isString(e)?`"`+e+`"`:Object.prototype.toString.call(e)===`[object Number]`||Y._isBoolean(e)?e:Object.prototype.toString.call(e)}function v_(e){return e>255?255:e<0?0:Math.round(e)}function X(){if(J.isUnminified)return function(e,t){return Y._isNumber(e)||Y.warn(__(e)+` is a not valid value for "`+t+`" attribute. The value should be a number.`),e}}function y_(e){if(J.isUnminified)return function(t,n){let r=Y._isNumber(t),i=Y._isArray(t)&&t.length==e;return!r&&!i&&Y.warn(__(t)+` is a not valid value for "`+n+`" attribute. The value should be a number or Array<number>(`+e+`)`),t}}function b_(){if(J.isUnminified)return function(e,t){return Y._isNumber(e)||e===`auto`||Y.warn(__(e)+` is a not valid value for "`+t+`" attribute. The value should be a number or "auto".`),e}}function x_(){if(J.isUnminified)return function(e,t){return Y._isString(e)||Y.warn(__(e)+` is a not valid value for "`+t+`" attribute. The value should be a string.`),e}}function S_(){if(J.isUnminified)return function(e,t){let n=Y._isString(e),r=Object.prototype.toString.call(e)===`[object CanvasGradient]`||e&&e.addColorStop;return n||r||Y.warn(__(e)+` is a not valid value for "`+t+`" attribute. The value should be a string or a native gradient.`),e}}function C_(){if(J.isUnminified)return function(e,t){return Y._isArray(e)?e.forEach(function(e){Y._isNumber(e)||Y.warn(`"`+t+`" attribute has non numeric element `+e+`. Make sure that all elements are numbers.`)}):Y.warn(__(e)+` is a not valid value for "`+t+`" attribute. The value should be a array of numbers.`),e}}function w_(){if(J.isUnminified)return function(e,t){return e===!0||e===!1||Y.warn(__(e)+` is a not valid value for "`+t+`" attribute. The value should be a boolean.`),e}}function T_(e){if(J.isUnminified)return function(t,n){return Y.isObject(t)||Y.warn(__(t)+` is a not valid value for "`+n+`" attribute. The value should be an object with properties `+e),t}}var E_=`get`,D_=`set`,Z={addGetterSetter(e,t,n,r,i){Z.addGetter(e,t,n),Z.addSetter(e,t,r,i),Z.addOverloadedGetterSetter(e,t)},addGetter(e,t,n){var r=E_+Y._capitalize(t);e.prototype[r]=e.prototype[r]||function(){var e=this.attrs[t];return e===void 0?n:e}},addSetter(e,t,n,r){var i=D_+Y._capitalize(t);e.prototype[i]||Z.overWriteSetter(e,t,n,r)},overWriteSetter(e,t,n,r){var i=D_+Y._capitalize(t);e.prototype[i]=function(e){return n&&e!=null&&(e=n.call(this,e,t)),this._setAttr(t,e),r&&r.call(this),this}},addComponentsGetterSetter(e,t,n,r,i){var a=n.length,o=Y._capitalize,s=E_+o(t),c=D_+o(t),l,u;e.prototype[s]=function(){var e={};for(l=0;l<a;l++)u=n[l],e[u]=this.getAttr(t+o(u));return e};var d=T_(n);e.prototype[c]=function(e){var n=this.attrs[t],a;for(a in r&&(e=r.call(this,e)),d&&d.call(this,e,t),e)e.hasOwnProperty(a)&&this._setAttr(t+o(a),e[a]);return this._fireChangeEvent(t,n,e),i&&i.call(this),this},Z.addOverloadedGetterSetter(e,t)},addOverloadedGetterSetter(e,t){var n=Y._capitalize(t),r=D_+n,i=E_+n;e.prototype[t]=function(){return arguments.length?(this[r](arguments[0]),this):this[i]()}},addDeprecatedGetterSetter(e,t,n,r){Y.error(`Adding deprecated `+t);var i=E_+Y._capitalize(t),a=t+` property is deprecated and will be removed soon. Look at Konva change log for more information.`;e.prototype[i]=function(){Y.error(a);var e=this.attrs[t];return e===void 0?n:e},Z.addSetter(e,t,r,function(){Y.error(a)}),Z.addOverloadedGetterSetter(e,t)},backCompat(e,t){Y.each(t,function(t,n){var r=e.prototype[n],i=E_+Y._capitalize(t),a=D_+Y._capitalize(t);function o(){r.apply(this,arguments),Y.error(`"`+t+`" method is deprecated and will be removed soon. Use ""`+n+`" instead.`)}e.prototype[t]=o,e.prototype[i]=o,e.prototype[a]=o})},afterSetFilter(){this._filterUpToDate=!1}};function O_(e){var t=[],n=e.length,r=Y,i,a;for(i=0;i<n;i++)a=e[i],r._isNumber(a)?a=Math.round(a*1e3)/1e3:r._isString(a)||(a+=``),t.push(a);return t}var k_=`,`,A_=`(`,j_=`)`,M_=`([`,N_=`])`,P_=`;`,F_=`()`,I_=`=`,L_=`arc.arcTo.beginPath.bezierCurveTo.clearRect.clip.closePath.createLinearGradient.createPattern.createRadialGradient.drawImage.ellipse.fill.fillText.getImageData.createImageData.lineTo.moveTo.putImageData.quadraticCurveTo.rect.restore.rotate.save.scale.setLineDash.setTransform.stroke.strokeText.transform.translate`.split(`.`),R_=[`fillStyle`,`strokeStyle`,`shadowColor`,`shadowBlur`,`shadowOffsetX`,`shadowOffsetY`,`lineCap`,`lineDashOffset`,`lineJoin`,`lineWidth`,`miterLimit`,`font`,`textAlign`,`textBaseline`,`globalAlpha`,`globalCompositeOperation`,`imageSmoothingEnabled`],z_=100,B_=class{constructor(e){this.canvas=e,this._context=e._canvas.getContext(`2d`),J.enableTrace&&(this.traceArr=[],this._enableTrace())}fillShape(e){e.fillEnabled()&&this._fill(e)}_fill(e){}strokeShape(e){e.hasStroke()&&this._stroke(e)}_stroke(e){}fillStrokeShape(e){e.attrs.fillAfterStrokeEnabled?(this.strokeShape(e),this.fillShape(e)):(this.fillShape(e),this.strokeShape(e))}getTrace(e,t){var n=this.traceArr,r=n.length,i=``,a,o,s,c;for(a=0;a<r;a++)o=n[a],s=o.method,s?(c=o.args,i+=s,e?i+=F_:Y._isArray(c[0])?i+=M_+c.join(k_)+N_:(t&&(c=c.map(e=>typeof e==`number`?Math.floor(e):e)),i+=A_+c.join(k_)+j_)):(i+=o.property,e||(i+=I_+o.val)),i+=P_;return i}clearTrace(){this.traceArr=[]}_trace(e){var t=this.traceArr,n;t.push(e),n=t.length,n>=z_&&t.shift()}reset(){var e=this.getCanvas().getPixelRatio();this.setTransform(1*e,0,0,1*e,0,0)}getCanvas(){return this.canvas}clear(e){var t=this.getCanvas();e?this.clearRect(e.x||0,e.y||0,e.width||0,e.height||0):this.clearRect(0,0,t.getWidth()/t.pixelRatio,t.getHeight()/t.pixelRatio)}_applyLineCap(e){var t=e.getLineCap();t&&this.setAttr(`lineCap`,t)}_applyOpacity(e){var t=e.getAbsoluteOpacity();t!==1&&this.setAttr(`globalAlpha`,t)}_applyLineJoin(e){var t=e.attrs.lineJoin;t&&this.setAttr(`lineJoin`,t)}setAttr(e,t){this._context[e]=t}arc(e,t,n,r,i,a){this._context.arc(e,t,n,r,i,a)}arcTo(e,t,n,r,i){this._context.arcTo(e,t,n,r,i)}beginPath(){this._context.beginPath()}bezierCurveTo(e,t,n,r,i,a){this._context.bezierCurveTo(e,t,n,r,i,a)}clearRect(e,t,n,r){this._context.clearRect(e,t,n,r)}clip(){this._context.clip()}closePath(){this._context.closePath()}createImageData(e,t){var n=arguments;if(n.length===2)return this._context.createImageData(e,t);if(n.length===1)return this._context.createImageData(e)}createLinearGradient(e,t,n,r){return this._context.createLinearGradient(e,t,n,r)}createPattern(e,t){return this._context.createPattern(e,t)}createRadialGradient(e,t,n,r,i,a){return this._context.createRadialGradient(e,t,n,r,i,a)}drawImage(e,t,n,r,i,a,o,s,c){var l=arguments,u=this._context;l.length===3?u.drawImage(e,t,n):l.length===5?u.drawImage(e,t,n,r,i):l.length===9&&u.drawImage(e,t,n,r,i,a,o,s,c)}ellipse(e,t,n,r,i,a,o,s){this._context.ellipse(e,t,n,r,i,a,o,s)}isPointInPath(e,t){return this._context.isPointInPath(e,t)}fill(e){e?this._context.fill(e):this._context.fill()}fillRect(e,t,n,r){this._context.fillRect(e,t,n,r)}strokeRect(e,t,n,r){this._context.strokeRect(e,t,n,r)}fillText(e,t,n,r){r?this._context.fillText(e,t,n,r):this._context.fillText(e,t,n)}measureText(e){return this._context.measureText(e)}getImageData(e,t,n,r){return this._context.getImageData(e,t,n,r)}lineTo(e,t){this._context.lineTo(e,t)}moveTo(e,t){this._context.moveTo(e,t)}rect(e,t,n,r){this._context.rect(e,t,n,r)}putImageData(e,t,n){this._context.putImageData(e,t,n)}quadraticCurveTo(e,t,n,r){this._context.quadraticCurveTo(e,t,n,r)}restore(){this._context.restore()}rotate(e){this._context.rotate(e)}save(){this._context.save()}scale(e,t){this._context.scale(e,t)}setLineDash(e){this._context.setLineDash?this._context.setLineDash(e):`mozDash`in this._context?this._context.mozDash=e:`webkitLineDash`in this._context&&(this._context.webkitLineDash=e)}getLineDash(){return this._context.getLineDash()}setTransform(e,t,n,r,i,a){this._context.setTransform(e,t,n,r,i,a)}stroke(e){e?this._context.stroke(e):this._context.stroke()}strokeText(e,t,n,r){this._context.strokeText(e,t,n,r)}transform(e,t,n,r,i,a){this._context.transform(e,t,n,r,i,a)}translate(e,t){this._context.translate(e,t)}_enableTrace(){var e=this,t=L_.length,n=this.setAttr,r,i,a=function(t){var n=e[t],r;e[t]=function(){return i=O_(Array.prototype.slice.call(arguments,0)),r=n.apply(e,arguments),e._trace({method:t,args:i}),r}};for(r=0;r<t;r++)a(L_[r]);e.setAttr=function(){n.apply(e,arguments);var t=arguments[0],r=arguments[1];(t===`shadowOffsetX`||t===`shadowOffsetY`||t===`shadowBlur`)&&(r/=this.canvas.getPixelRatio()),e._trace({property:t,val:r})}}_applyGlobalCompositeOperation(e){let t=e.attrs.globalCompositeOperation;!t||t===`source-over`||this.setAttr(`globalCompositeOperation`,t)}};R_.forEach(function(e){Object.defineProperty(B_.prototype,e,{get(){return this._context[e]},set(t){this._context[e]=t}})});var V_=class extends B_{_fillColor(e){var t=e.fill();this.setAttr(`fillStyle`,t),e._fillFunc(this)}_fillPattern(e){this.setAttr(`fillStyle`,e._getFillPattern()),e._fillFunc(this)}_fillLinearGradient(e){var t=e._getLinearGradient();t&&(this.setAttr(`fillStyle`,t),e._fillFunc(this))}_fillRadialGradient(e){var t=e._getRadialGradient();t&&(this.setAttr(`fillStyle`,t),e._fillFunc(this))}_fill(e){var t=e.fill(),n=e.getFillPriority();if(t&&n===`color`){this._fillColor(e);return}var r=e.getFillPatternImage();if(r&&n===`pattern`){this._fillPattern(e);return}var i=e.getFillLinearGradientColorStops();if(i&&n===`linear-gradient`){this._fillLinearGradient(e);return}var a=e.getFillRadialGradientColorStops();if(a&&n===`radial-gradient`){this._fillRadialGradient(e);return}t?this._fillColor(e):r?this._fillPattern(e):i?this._fillLinearGradient(e):a&&this._fillRadialGradient(e)}_strokeLinearGradient(e){var t=e.getStrokeLinearGradientStartPoint(),n=e.getStrokeLinearGradientEndPoint(),r=e.getStrokeLinearGradientColorStops(),i=this.createLinearGradient(t.x,t.y,n.x,n.y);if(r){for(var a=0;a<r.length;a+=2)i.addColorStop(r[a],r[a+1]);this.setAttr(`strokeStyle`,i)}}_stroke(e){var t=e.dash(),n=e.getStrokeScaleEnabled();if(e.hasStroke()){if(!n){this.save();var r=this.getCanvas().getPixelRatio();this.setTransform(r,0,0,r,0,0)}this._applyLineCap(e),t&&e.dashEnabled()&&(this.setLineDash(t),this.setAttr(`lineDashOffset`,e.dashOffset())),this.setAttr(`lineWidth`,e.strokeWidth()),e.getShadowForStrokeEnabled()||this.setAttr(`shadowColor`,`rgba(0,0,0,0)`),e.getStrokeLinearGradientColorStops()?this._strokeLinearGradient(e):this.setAttr(`strokeStyle`,e.stroke()),e._strokeFunc(this),n||this.restore()}}_applyShadow(e){var t=e.getShadowRGBA()??`black`,n=e.getShadowBlur()??5,r=e.getShadowOffset()??{x:0,y:0},i=e.getAbsoluteScale(),a=this.canvas.getPixelRatio(),o=i.x*a,s=i.y*a;this.setAttr(`shadowColor`,t),this.setAttr(`shadowBlur`,n*Math.min(Math.abs(o),Math.abs(s))),this.setAttr(`shadowOffsetX`,r.x*o),this.setAttr(`shadowOffsetY`,r.y*s)}},H_=class extends B_{_fill(e){this.save(),this.setAttr(`fillStyle`,e.colorKey),e._fillFuncHit(this),this.restore()}strokeShape(e){e.hasHitStroke()&&this._stroke(e)}_stroke(e){if(e.hasHitStroke()){var t=e.getStrokeScaleEnabled();if(!t){this.save();var n=this.getCanvas().getPixelRatio();this.setTransform(n,0,0,n,0,0)}this._applyLineCap(e);var r=e.hitStrokeWidth(),i=r===`auto`?e.strokeWidth():r;this.setAttr(`lineWidth`,i),this.setAttr(`strokeStyle`,e.colorKey),e._strokeFuncHit(this),t||this.restore()}}},U_;function W_(){if(U_)return U_;var e=Y.createCanvasElement().getContext(`2d`);return U_=(function(){return(J._global.devicePixelRatio||1)/(e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1)})(),U_}var G_=class{constructor(e){this.pixelRatio=1,this.width=0,this.height=0,this.isCache=!1;var t=(e||{}).pixelRatio||J.pixelRatio||W_();this.pixelRatio=t,this._canvas=Y.createCanvasElement(),this._canvas.style.padding=`0`,this._canvas.style.margin=`0`,this._canvas.style.border=`0`,this._canvas.style.background=`transparent`,this._canvas.style.position=`absolute`,this._canvas.style.top=`0`,this._canvas.style.left=`0`}getContext(){return this.context}getPixelRatio(){return this.pixelRatio}setPixelRatio(e){var t=this.pixelRatio;this.pixelRatio=e,this.setSize(this.getWidth()/t,this.getHeight()/t)}setWidth(e){this.width=this._canvas.width=e*this.pixelRatio,this._canvas.style.width=e+`px`;var t=this.pixelRatio;this.getContext()._context.scale(t,t)}setHeight(e){this.height=this._canvas.height=e*this.pixelRatio,this._canvas.style.height=e+`px`;var t=this.pixelRatio;this.getContext()._context.scale(t,t)}getWidth(){return this.width}getHeight(){return this.height}setSize(e,t){this.setWidth(e||0),this.setHeight(t||0)}toDataURL(e,t){try{return this._canvas.toDataURL(e,t)}catch{try{return this._canvas.toDataURL()}catch(e){return Y.error(`Unable to get data URL. `+e.message+` For more info read https://konvajs.org/docs/posts/Tainted_Canvas.html.`),``}}}};Z.addGetterSetter(G_,`pixelRatio`,void 0,X());var K_=class extends G_{constructor(e={width:0,height:0}){super(e),this.context=new V_(this),this.setSize(e.width,e.height)}},q_=class extends G_{constructor(e={width:0,height:0}){super(e),this.hitCanvas=!0,this.context=new H_(this),this.setSize(e.width,e.height)}},J_={get isDragging(){var e=!1;return J_._dragElements.forEach(t=>{t.dragStatus===`dragging`&&(e=!0)}),e},justDragged:!1,get node(){var e;return J_._dragElements.forEach(t=>{e=t.node}),e},_dragElements:new Map,_drag(e){let t=[];J_._dragElements.forEach((n,r)=>{let{node:i}=n,a=i.getStage();a.setPointersPositions(e),n.pointerId===void 0&&(n.pointerId=Y._getFirstPointerId(e));let o=a._changedPointerPositions.find(e=>e.id===n.pointerId);if(o){if(n.dragStatus!==`dragging`){var s=i.dragDistance();if(Math.max(Math.abs(o.x-n.startPointerPos.x),Math.abs(o.y-n.startPointerPos.y))<s||(i.startDrag({evt:e}),!i.isDragging()))return}i._setDragPosition(e,n),t.push(i)}}),t.forEach(t=>{t.fire(`dragmove`,{type:`dragmove`,target:t,evt:e},!0)})},_endDragBefore(e){J_._dragElements.forEach(t=>{let{node:n}=t,r=n.getStage();if(e&&r.setPointersPositions(e),!r._changedPointerPositions.find(e=>e.id===t.pointerId))return;(t.dragStatus===`dragging`||t.dragStatus===`stopped`)&&(J_.justDragged=!0,J._mouseListenClick=!1,J._touchListenClick=!1,J._pointerListenClick=!1,t.dragStatus=`stopped`);let i=t.node.getLayer()||t.node instanceof J.Stage&&t.node;i&&i.batchDraw()})},_endDragAfter(e){J_._dragElements.forEach((t,n)=>{t.dragStatus===`stopped`&&t.node.fire(`dragend`,{type:`dragend`,target:t.node,evt:e},!0),t.dragStatus!==`dragging`&&J_._dragElements.delete(n)})}};J.isBrowser&&(window.addEventListener(`mouseup`,J_._endDragBefore,!0),window.addEventListener(`touchend`,J_._endDragBefore,!0),window.addEventListener(`mousemove`,J_._drag),window.addEventListener(`touchmove`,J_._drag),window.addEventListener(`mouseup`,J_._endDragAfter,!1),window.addEventListener(`touchend`,J_._endDragAfter,!1));var Y_=`absoluteOpacity`,X_=`allEventListeners`,Z_=`absoluteTransform`,Q_=`absoluteScale`,$_=`canvas`,ev=`Change`,tv=`children`,nv=`konva`,rv=`listening`,iv=`mouseenter`,av=`mouseleave`,ov=`set`,sv=`Shape`,cv=` `,lv=`stage`,uv=`transform`,dv=`Stage`,fv=`visible`,pv=[`xChange.konva`,`yChange.konva`,`scaleXChange.konva`,`scaleYChange.konva`,`skewXChange.konva`,`skewYChange.konva`,`rotationChange.konva`,`offsetXChange.konva`,`offsetYChange.konva`,`transformsEnabledChange.konva`].join(cv),mv=1,Q=class e{constructor(e){this._id=mv++,this.eventListeners={},this.attrs={},this.index=0,this._allEventListeners=null,this.parent=null,this._cache=new Map,this._attachedDepsListeners=new Map,this._lastPos=null,this._batchingTransformChange=!1,this._needClearTransformCache=!1,this._filterUpToDate=!1,this._isUnderCache=!1,this._dragEventId=null,this._shouldFireChangeEvents=!1,this.setAttrs(e),this._shouldFireChangeEvents=!0}hasChildren(){return!1}_clearCache(e){(e===uv||e===Z_)&&this._cache.get(e)?this._cache.get(e).dirty=!0:e?this._cache.delete(e):this._cache.clear()}_getCache(e,t){var n=this._cache.get(e);return(n===void 0||(e===uv||e===Z_)&&n.dirty===!0)&&(n=t.call(this),this._cache.set(e,n)),n}_calculate(e,t,n){if(!this._attachedDepsListeners.get(e)){let n=t.map(e=>e+`Change.konva`).join(cv);this.on(n,()=>{this._clearCache(e)}),this._attachedDepsListeners.set(e,!0)}return this._getCache(e,n)}_getCanvasCache(){return this._cache.get($_)}_clearSelfAndDescendantCache(e){this._clearCache(e),e===Z_&&this.fire(`absoluteTransformChange`)}clearCache(){return this._cache.delete($_),this._clearSelfAndDescendantCache(),this._requestDraw(),this}cache(e){var t=e||{},n={};(t.x===void 0||t.y===void 0||t.width===void 0||t.height===void 0)&&(n=this.getClientRect({skipTransform:!0,relativeTo:this.getParent()}));var r=Math.ceil(t.width||n.width),i=Math.ceil(t.height||n.height),a=t.pixelRatio,o=t.x===void 0?n.x:t.x,s=t.y===void 0?n.y:t.y,c=t.offset||0,l=t.drawBorder||!1,u=t.hitCanvasPixelRatio||1;if(!r||!i){Y.error(`Can not cache the node. Width or height of the node equals 0. Caching is skipped.`);return}r+=c*2,i+=c*2,o-=c,s-=c;var d=new K_({pixelRatio:a,width:r,height:i}),f=new K_({pixelRatio:a,width:0,height:0}),p=new q_({pixelRatio:u,width:r,height:i}),m=d.getContext(),h=p.getContext();return p.isCache=!0,d.isCache=!0,this._cache.delete($_),this._filterUpToDate=!1,t.imageSmoothingEnabled===!1&&(d.getContext()._context.imageSmoothingEnabled=!1,f.getContext()._context.imageSmoothingEnabled=!1),m.save(),h.save(),m.translate(-o,-s),h.translate(-o,-s),this._isUnderCache=!0,this._clearSelfAndDescendantCache(Y_),this._clearSelfAndDescendantCache(Q_),this.drawScene(d,this),this.drawHit(p,this),this._isUnderCache=!1,m.restore(),h.restore(),l&&(m.save(),m.beginPath(),m.rect(0,0,r,i),m.closePath(),m.setAttr(`strokeStyle`,`red`),m.setAttr(`lineWidth`,5),m.stroke(),m.restore()),this._cache.set($_,{scene:d,filter:f,hit:p,x:o,y:s}),this._requestDraw(),this}isCached(){return this._cache.has($_)}getClientRect(e){throw Error(`abstract "getClientRect" method call`)}_transformedRect(e,t){var n=[{x:e.x,y:e.y},{x:e.x+e.width,y:e.y},{x:e.x+e.width,y:e.y+e.height},{x:e.x,y:e.y+e.height}],r,i,a,o,s=this.getAbsoluteTransform(t);return n.forEach(function(e){var t=s.point(e);r===void 0&&(r=a=t.x,i=o=t.y),r=Math.min(r,t.x),i=Math.min(i,t.y),a=Math.max(a,t.x),o=Math.max(o,t.y)}),{x:r,y:i,width:a-r,height:o-i}}_drawCachedSceneCanvas(e){e.save(),e._applyOpacity(this),e._applyGlobalCompositeOperation(this);let t=this._getCanvasCache();e.translate(t.x,t.y);var n=this._getCachedSceneCanvas(),r=n.pixelRatio;e.drawImage(n._canvas,0,0,n.width/r,n.height/r),e.restore()}_drawCachedHitCanvas(e){var t=this._getCanvasCache(),n=t.hit;e.save(),e.translate(t.x,t.y),e.drawImage(n._canvas,0,0,n.width/n.pixelRatio,n.height/n.pixelRatio),e.restore()}_getCachedSceneCanvas(){var e=this.filters(),t=this._getCanvasCache(),n=t.scene,r=t.filter,i=r.getContext(),a,o,s,c;if(e){if(!this._filterUpToDate){var l=n.pixelRatio;r.setSize(n.width/n.pixelRatio,n.height/n.pixelRatio);try{for(a=e.length,i.clear(),i.drawImage(n._canvas,0,0,n.getWidth()/l,n.getHeight()/l),o=i.getImageData(0,0,r.getWidth(),r.getHeight()),s=0;s<a;s++){if(c=e[s],typeof c!=`function`){Y.error(`Filter should be type of function, but got `+typeof c+` instead. Please check correct filters`);continue}c.call(this,o),i.putImageData(o,0,0)}}catch(e){Y.error(`Unable to apply filter. `+e.message+` This post my help you https://konvajs.org/docs/posts/Tainted_Canvas.html.`)}this._filterUpToDate=!0}return r}return n}on(e,t){if(this._cache&&this._cache.delete(X_),arguments.length===3)return this._delegate.apply(this,arguments);var n=e.split(cv),r=n.length,i,a,o,s,c;for(i=0;i<r;i++)a=n[i],o=a.split(`.`),s=o[0],c=o[1]||``,this.eventListeners[s]||(this.eventListeners[s]=[]),this.eventListeners[s].push({name:c,handler:t});return this}off(e,t){var n=(e||``).split(cv),r=n.length,i,a,o,s,c,l;if(this._cache&&this._cache.delete(X_),!e)for(a in this.eventListeners)this._off(a);for(i=0;i<r;i++)if(o=n[i],s=o.split(`.`),c=s[0],l=s[1],c)this.eventListeners[c]&&this._off(c,l,t);else for(a in this.eventListeners)this._off(a,l,t);return this}dispatchEvent(e){var t={target:this,type:e.type,evt:e};return this.fire(e.type,t),this}addEventListener(e,t){return this.on(e,function(e){t.call(this,e.evt)}),this}removeEventListener(e){return this.off(e),this}_delegate(e,t,n){var r=this;this.on(e,function(e){for(var i=e.target.findAncestors(t,!0,r),a=0;a<i.length;a++)e=Y.cloneObject(e),e.currentTarget=i[a],n.call(i[a],e)})}remove(){return this.isDragging()&&this.stopDrag(),J_._dragElements.delete(this._id),this._remove(),this}_clearCaches(){this._clearSelfAndDescendantCache(Z_),this._clearSelfAndDescendantCache(Y_),this._clearSelfAndDescendantCache(Q_),this._clearSelfAndDescendantCache(lv),this._clearSelfAndDescendantCache(fv),this._clearSelfAndDescendantCache(rv)}_remove(){this._clearCaches();var e=this.getParent();e&&e.children&&(e.children.splice(this.index,1),e._setChildrenIndices(),this.parent=null)}destroy(){return this.remove(),this}getAttr(e){var t=`get`+Y._capitalize(e);return Y._isFunction(this[t])?this[t]():this.attrs[e]}getAncestors(){for(var e=this.getParent(),t=[];e;)t.push(e),e=e.getParent();return t}getAttrs(){return this.attrs||{}}setAttrs(e){return this._batchTransformChanges(()=>{var t,n;if(!e)return this;for(t in e)t!==tv&&(n=ov+Y._capitalize(t),Y._isFunction(this[n])?this[n](e[t]):this._setAttr(t,e[t]))}),this}isListening(){return this._getCache(rv,this._isListening)}_isListening(e){if(!this.listening())return!1;let t=this.getParent();return t&&t!==e&&this!==e?t._isListening(e):!0}isVisible(){return this._getCache(fv,this._isVisible)}_isVisible(e){if(!this.visible())return!1;let t=this.getParent();return t&&t!==e&&this!==e?t._isVisible(e):!0}shouldDrawHit(e,t=!1){if(e)return this._isVisible(e)&&this._isListening(e);var n=this.getLayer(),r=!1;J_._dragElements.forEach(e=>{e.dragStatus===`dragging`&&(e.node.nodeType===`Stage`||e.node.getLayer()===n)&&(r=!0)});var i=!t&&!J.hitOnDragEnabled&&r;return this.isListening()&&this.isVisible()&&!i}show(){return this.visible(!0),this}hide(){return this.visible(!1),this}getZIndex(){return this.index||0}getAbsoluteZIndex(){var e=this.getDepth(),t=this,n=0,r,i,a,o;function s(c){for(r=[],i=c.length,a=0;a<i;a++)o=c[a],n++,o.nodeType!==sv&&(r=r.concat(o.getChildren().slice())),o._id===t._id&&(a=i);r.length>0&&r[0].getDepth()<=e&&s(r)}return t.nodeType!==dv&&s(t.getStage().getChildren()),n}getDepth(){for(var e=0,t=this.parent;t;)e++,t=t.parent;return e}_batchTransformChanges(e){this._batchingTransformChange=!0,e(),this._batchingTransformChange=!1,this._needClearTransformCache&&(this._clearCache(uv),this._clearSelfAndDescendantCache(Z_)),this._needClearTransformCache=!1}setPosition(e){return this._batchTransformChanges(()=>{this.x(e.x),this.y(e.y)}),this}getPosition(){return{x:this.x(),y:this.y()}}getRelativePointerPosition(){if(!this.getStage())return null;var e=this.getStage().getPointerPosition();if(!e)return null;var t=this.getAbsoluteTransform().copy();return t.invert(),t.point(e)}getAbsolutePosition(e){let t=!1,n=this.parent;for(;n;){if(n.isCached()){t=!0;break}n=n.parent}t&&!e&&(e=!0);var r=this.getAbsoluteTransform(e).getMatrix(),i=new e_,a=this.offset();return i.m=r.slice(),i.translate(a.x,a.y),i.getTranslation()}setAbsolutePosition(e){var t=this._clearTransform();this.attrs.x=t.x,this.attrs.y=t.y,delete t.x,delete t.y,this._clearCache(uv);var n=this._getAbsoluteTransform().copy();return n.invert(),n.translate(e.x,e.y),e={x:this.attrs.x+n.getTranslation().x,y:this.attrs.y+n.getTranslation().y},this._setTransform(t),this.setPosition({x:e.x,y:e.y}),this._clearCache(uv),this._clearSelfAndDescendantCache(Z_),this}_setTransform(e){for(var t in e)this.attrs[t]=e[t]}_clearTransform(){var e={x:this.x(),y:this.y(),rotation:this.rotation(),scaleX:this.scaleX(),scaleY:this.scaleY(),offsetX:this.offsetX(),offsetY:this.offsetY(),skewX:this.skewX(),skewY:this.skewY()};return this.attrs.x=0,this.attrs.y=0,this.attrs.rotation=0,this.attrs.scaleX=1,this.attrs.scaleY=1,this.attrs.offsetX=0,this.attrs.offsetY=0,this.attrs.skewX=0,this.attrs.skewY=0,e}move(e){var t=e.x,n=e.y,r=this.x(),i=this.y();return t!==void 0&&(r+=t),n!==void 0&&(i+=n),this.setPosition({x:r,y:i}),this}_eachAncestorReverse(e,t){var n=[],r=this.getParent(),i,a;if(!(t&&t._id===this._id)){for(n.unshift(this);r&&(!t||r._id!==t._id);)n.unshift(r),r=r.parent;for(i=n.length,a=0;a<i;a++)e(n[a])}}rotate(e){return this.rotation(this.rotation()+e),this}moveToTop(){if(!this.parent)return Y.warn(`Node has no parent. moveToTop function is ignored.`),!1;var e=this.index;return this.parent.children.splice(e,1),this.parent.children.push(this),this.parent._setChildrenIndices(),!0}moveUp(){if(!this.parent)return Y.warn(`Node has no parent. moveUp function is ignored.`),!1;var e=this.index;return e<this.parent.getChildren().length-1?(this.parent.children.splice(e,1),this.parent.children.splice(e+1,0,this),this.parent._setChildrenIndices(),!0):!1}moveDown(){if(!this.parent)return Y.warn(`Node has no parent. moveDown function is ignored.`),!1;var e=this.index;return e>0?(this.parent.children.splice(e,1),this.parent.children.splice(e-1,0,this),this.parent._setChildrenIndices(),!0):!1}moveToBottom(){if(!this.parent)return Y.warn(`Node has no parent. moveToBottom function is ignored.`),!1;var e=this.index;return e>0?(this.parent.children.splice(e,1),this.parent.children.unshift(this),this.parent._setChildrenIndices(),!0):!1}setZIndex(e){if(!this.parent)return Y.warn(`Node has no parent. zIndex parameter is ignored.`),this;(e<0||e>=this.parent.children.length)&&Y.warn(`Unexpected value `+e+` for zIndex property. zIndex is just index of a node in children of its parent. Expected value is from 0 to `+(this.parent.children.length-1)+`.`);var t=this.index;return this.parent.children.splice(t,1),this.parent.children.splice(e,0,this),this.parent._setChildrenIndices(),this}getAbsoluteOpacity(){return this._getCache(Y_,this._getAbsoluteOpacity)}_getAbsoluteOpacity(){var e=this.opacity(),t=this.getParent();return t&&!t._isUnderCache&&(e*=t.getAbsoluteOpacity()),e}moveTo(e){return this.getParent()!==e&&(this._remove(),e.add(this)),this}toObject(){var e={},t=this.getAttrs(),n,r,i,a,o;for(n in e.attrs={},t)r=t[n],o=Y.isObject(r)&&!Y._isPlainObject(r)&&!Y._isArray(r),!o&&(i=typeof this[n]==`function`&&this[n],delete t[n],a=i?i.call(this):null,t[n]=r,a!==r&&(e.attrs[n]=r));return e.className=this.getClassName(),Y._prepareToStringify(e)}toJSON(){return JSON.stringify(this.toObject())}getParent(){return this.parent}findAncestors(e,t,n){var r=[];t&&this._isMatch(e)&&r.push(this);for(var i=this.parent;i;){if(i===n)return r;i._isMatch(e)&&r.push(i),i=i.parent}return r}isAncestorOf(e){return!1}findAncestor(e,t,n){return this.findAncestors(e,t,n)[0]}_isMatch(e){if(!e)return!1;if(typeof e==`function`)return e(this);var t=e.replace(/ /g,``).split(`,`),n=t.length,r,i;for(r=0;r<n;r++)if(i=t[r],Y.isValidSelector(i)||(Y.warn(`Selector "`+i+`" is invalid. Allowed selectors examples are "#foo", ".bar" or "Group".`),Y.warn(`If you have a custom shape with such className, please change it to start with upper letter like "Triangle".`),Y.warn(`Konva is awesome, right?`)),i.charAt(0)===`#`){if(this.id()===i.slice(1))return!0}else if(i.charAt(0)===`.`){if(this.hasName(i.slice(1)))return!0}else if(this.className===i||this.nodeType===i)return!0;return!1}getLayer(){var e=this.getParent();return e?e.getLayer():null}getStage(){return this._getCache(lv,this._getStage)}_getStage(){var e=this.getParent();if(e)return e.getStage()}fire(e,t={},n){return t.target=t.target||this,n?this._fireAndBubble(e,t):this._fire(e,t),this}getAbsoluteTransform(e){return e?this._getAbsoluteTransform(e):this._getCache(Z_,this._getAbsoluteTransform)}_getAbsoluteTransform(e){var t;if(e)return t=new e_,this._eachAncestorReverse(function(e){var n=e.transformsEnabled();n===`all`?t.multiply(e.getTransform()):n===`position`&&t.translate(e.x()-e.offsetX(),e.y()-e.offsetY())},e),t;t=this._cache.get(Z_)||new e_,this.parent?this.parent.getAbsoluteTransform().copyInto(t):t.reset();var n=this.transformsEnabled();if(n===`all`)t.multiply(this.getTransform());else if(n===`position`){let e=this.attrs.x||0,n=this.attrs.y||0,r=this.attrs.offsetX||0,i=this.attrs.offsetY||0;t.translate(e-r,n-i)}return t.dirty=!1,t}getAbsoluteScale(e){for(var t=this;t;)t._isUnderCache&&(e=t),t=t.getParent();let n=this.getAbsoluteTransform(e).decompose();return{x:n.scaleX,y:n.scaleY}}getAbsoluteRotation(){return this.getAbsoluteTransform().decompose().rotation}getTransform(){return this._getCache(uv,this._getTransform)}_getTransform(){var e=this._cache.get(uv)||new e_;e.reset();var t=this.x(),n=this.y(),r=J.getAngle(this.rotation()),i=this.attrs.scaleX??1,a=this.attrs.scaleY??1,o=this.attrs.skewX||0,s=this.attrs.skewY||0,c=this.attrs.offsetX||0,l=this.attrs.offsetY||0;return(t!==0||n!==0)&&e.translate(t,n),r!==0&&e.rotate(r),(o!==0||s!==0)&&e.skew(o,s),(i!==1||a!==1)&&e.scale(i,a),(c!==0||l!==0)&&e.translate(-1*c,-1*l),e.dirty=!1,e}clone(e){var t=Y.cloneObject(this.attrs),n,r,i,a,o;for(n in e)t[n]=e[n];var s=new this.constructor(t);for(n in this.eventListeners)for(r=this.eventListeners[n],i=r.length,a=0;a<i;a++)o=r[a],o.name.indexOf(nv)<0&&(s.eventListeners[n]||(s.eventListeners[n]=[]),s.eventListeners[n].push(o));return s}_toKonvaCanvas(e){e||={};var t=this.getClientRect(),n=this.getStage(),r=e.x===void 0?t.x:e.x,i=e.y===void 0?t.y:e.y,a=e.pixelRatio||1,o=new K_({width:e.width||t.width||(n?n.width():0),height:e.height||t.height||(n?n.height():0),pixelRatio:a}),s=o.getContext();return s.save(),(r||i)&&s.translate(-1*r,-1*i),this.drawScene(o),s.restore(),o}toCanvas(e){return this._toKonvaCanvas(e)._canvas}toDataURL(e){e||={};var t=e.mimeType||null,n=e.quality||null,r=this._toKonvaCanvas(e).toDataURL(t,n);return e.callback&&e.callback(r),r}toImage(e){if(!e||!e.callback)throw`callback required for toImage method config argument`;var t=e.callback;delete e.callback,Y._urlToImage(this.toDataURL(e),function(e){t(e)})}setSize(e){return this.width(e.width),this.height(e.height),this}getSize(){return{width:this.width(),height:this.height()}}getClassName(){return this.className||this.nodeType}getType(){return this.nodeType}getDragDistance(){return this.attrs.dragDistance===void 0?this.parent?this.parent.getDragDistance():J.dragDistance:this.attrs.dragDistance}_off(e,t,n){var r=this.eventListeners[e],i,a,o;for(i=0;i<r.length;i++)if(a=r[i].name,o=r[i].handler,(a!==`konva`||t===`konva`)&&(!t||a===t)&&(!n||n===o)){if(r.splice(i,1),r.length===0){delete this.eventListeners[e];break}i--}}_fireChangeEvent(e,t,n){this._fire(e+ev,{oldVal:t,newVal:n})}addName(e){if(!this.hasName(e)){var t=this.name(),n=t?t+` `+e:e;this.name(n)}return this}hasName(e){if(!e)return!1;let t=this.name();return t?(t||``).split(/\s/g).indexOf(e)!==-1:!1}removeName(e){var t=(this.name()||``).split(/\s/g),n=t.indexOf(e);return n!==-1&&(t.splice(n,1),this.name(t.join(` `))),this}setAttr(e,t){var n=this[ov+Y._capitalize(e)];return Y._isFunction(n)?n.call(this,t):this._setAttr(e,t),this}_requestDraw(){J.autoDrawEnabled&&(this.getLayer()||this.getStage())?.batchDraw()}_setAttr(e,t){var n=this.attrs[e];n===t&&!Y.isObject(t)||(t==null?delete this.attrs[e]:this.attrs[e]=t,this._shouldFireChangeEvents&&this._fireChangeEvent(e,n,t),this._requestDraw())}_setComponentAttr(e,t,n){var r;n!==void 0&&(r=this.attrs[e],r||(this.attrs[e]=this.getAttr(e)),this.attrs[e][t]=n,this._fireChangeEvent(e,r,n))}_fireAndBubble(e,t,n){if(t&&this.nodeType===sv&&(t.target=this),!((e===iv||e===av)&&(n&&(this===n||this.isAncestorOf&&this.isAncestorOf(n))||this.nodeType===`Stage`&&!n))){this._fire(e,t);var r=(e===iv||e===av)&&n&&n.isAncestorOf&&n.isAncestorOf(this)&&!n.isAncestorOf(this.parent);(t&&!t.cancelBubble||!t)&&this.parent&&this.parent.isListening()&&!r&&(n&&n.parent?this._fireAndBubble.call(this.parent,e,t,n):this._fireAndBubble.call(this.parent,e,t))}}_getProtoListeners(e){let t=this._cache.get(X_);if(!t){t={};let e=Object.getPrototypeOf(this);for(;e;){if(!e.eventListeners){e=Object.getPrototypeOf(e);continue}for(var n in e.eventListeners){let r=e.eventListeners[n],i=t[n]||[];t[n]=r.concat(i)}e=Object.getPrototypeOf(e)}this._cache.set(X_,t)}return t[e]}_fire(e,t){t||={},t.currentTarget=this,t.type=e;let n=this._getProtoListeners(e);if(n)for(var r=0;r<n.length;r++)n[r].handler.call(this,t);let i=this.eventListeners[e];if(i)for(var r=0;r<i.length;r++)i[r].handler.call(this,t)}draw(){return this.drawScene(),this.drawHit(),this}_createDragElement(e){var t=e?e.pointerId:void 0,n=this.getStage(),r=this.getAbsolutePosition(),i=n._getPointerById(t)||n._changedPointerPositions[0]||r;J_._dragElements.set(this._id,{node:this,startPointerPos:i,offset:{x:i.x-r.x,y:i.y-r.y},dragStatus:`ready`,pointerId:t})}startDrag(e,t=!0){J_._dragElements.has(this._id)||this._createDragElement(e);let n=J_._dragElements.get(this._id);n.dragStatus=`dragging`,this.fire(`dragstart`,{type:`dragstart`,target:this,evt:e&&e.evt},t)}_setDragPosition(e,t){let n=this.getStage()._getPointerById(t.pointerId);if(n){var r={x:n.x-t.offset.x,y:n.y-t.offset.y},i=this.dragBoundFunc();if(i!==void 0){let t=i.call(this,r,e);t?r=t:Y.warn(`dragBoundFunc did not return any value. That is unexpected behavior. You must return new absolute position from dragBoundFunc.`)}(!this._lastPos||this._lastPos.x!==r.x||this._lastPos.y!==r.y)&&(this.setAbsolutePosition(r),this._requestDraw()),this._lastPos=r}}stopDrag(e){let t=J_._dragElements.get(this._id);t&&(t.dragStatus=`stopped`),J_._endDragBefore(e),J_._endDragAfter(e)}setDraggable(e){this._setAttr(`draggable`,e),this._dragChange()}isDragging(){let e=J_._dragElements.get(this._id);return e?e.dragStatus===`dragging`:!1}_listenDrag(){this._dragCleanup(),this.on(`mousedown.konva touchstart.konva`,function(e){if((e.evt.button===void 0||J.dragButtons.indexOf(e.evt.button)>=0)&&!this.isDragging()){var t=!1;J_._dragElements.forEach(e=>{this.isAncestorOf(e.node)&&(t=!0)}),t||this._createDragElement(e)}})}_dragChange(){if(this.attrs.draggable)this._listenDrag();else{if(this._dragCleanup(),!this.getStage())return;let e=J_._dragElements.get(this._id),t=e&&e.dragStatus===`dragging`,n=e&&e.dragStatus===`ready`;t?this.stopDrag():n&&J_._dragElements.delete(this._id)}}_dragCleanup(){this.off(`mousedown.konva`),this.off(`touchstart.konva`)}isClientRectOnScreen(e={x:0,y:0}){let t=this.getStage();if(!t)return!1;let n={x:-e.x,y:-e.y,width:t.width()+e.x,height:t.height()+e.y};return Y.haveIntersection(n,this.getClientRect())}static create(e,t){return Y._isString(e)&&(e=JSON.parse(e)),this._createNode(e,t)}static _createNode(t,n){var r=e.prototype.getClassName.call(t),i=t.children,a,o,s;n&&(t.attrs.container=n),J[r]||(Y.warn(`Can not find a node with class name "`+r+`". Fallback to "Shape".`),r=`Shape`);let c=J[r];if(a=new c(t.attrs),i)for(o=i.length,s=0;s<o;s++)a.add(e._createNode(i[s]));return a}};Q.prototype.nodeType=`Node`,Q.prototype._attrsAffectingSize=[],Q.prototype.eventListeners={},Q.prototype.on.call(Q.prototype,pv,function(){if(this._batchingTransformChange){this._needClearTransformCache=!0;return}this._clearCache(uv),this._clearSelfAndDescendantCache(Z_)}),Q.prototype.on.call(Q.prototype,`visibleChange.konva`,function(){this._clearSelfAndDescendantCache(fv)}),Q.prototype.on.call(Q.prototype,`listeningChange.konva`,function(){this._clearSelfAndDescendantCache(rv)}),Q.prototype.on.call(Q.prototype,`opacityChange.konva`,function(){this._clearSelfAndDescendantCache(Y_)});var hv=Z.addGetterSetter;hv(Q,`zIndex`),hv(Q,`absolutePosition`),hv(Q,`position`),hv(Q,`x`,0,X()),hv(Q,`y`,0,X()),hv(Q,`globalCompositeOperation`,`source-over`,x_()),hv(Q,`opacity`,1,X()),hv(Q,`name`,``,x_()),hv(Q,`id`,``,x_()),hv(Q,`rotation`,0,X()),Z.addComponentsGetterSetter(Q,`scale`,[`x`,`y`]),hv(Q,`scaleX`,1,X()),hv(Q,`scaleY`,1,X()),Z.addComponentsGetterSetter(Q,`skew`,[`x`,`y`]),hv(Q,`skewX`,0,X()),hv(Q,`skewY`,0,X()),Z.addComponentsGetterSetter(Q,`offset`,[`x`,`y`]),hv(Q,`offsetX`,0,X()),hv(Q,`offsetY`,0,X()),hv(Q,`dragDistance`,null,X()),hv(Q,`width`,0,X()),hv(Q,`height`,0,X()),hv(Q,`listening`,!0,w_()),hv(Q,`preventDefault`,!0,w_()),hv(Q,`filters`,null,function(e){return this._filterUpToDate=!1,e}),hv(Q,`visible`,!0,w_()),hv(Q,`transformsEnabled`,`all`,x_()),hv(Q,`size`),hv(Q,`dragBoundFunc`),hv(Q,`draggable`,!1,w_()),Z.backCompat(Q,{rotateDeg:`rotate`,setRotationDeg:`setRotation`,getRotationDeg:`getRotation`});var gv=class extends Q{constructor(){super(...arguments),this.children=[]}getChildren(e){if(!e)return this.children||[];let t=this.children||[];var n=[];return t.forEach(function(t){e(t)&&n.push(t)}),n}hasChildren(){return this.getChildren().length>0}removeChildren(){return this.getChildren().forEach(e=>{e.parent=null,e.index=0,e.remove()}),this.children=[],this._requestDraw(),this}destroyChildren(){return this.getChildren().forEach(e=>{e.parent=null,e.index=0,e.destroy()}),this.children=[],this._requestDraw(),this}add(...e){if(arguments.length>1){for(var t=0;t<arguments.length;t++)this.add(arguments[t]);return this}var n=e[0];return n.getParent()?(n.moveTo(this),this):(this._validateAdd(n),n.index=this.getChildren().length,n.parent=this,n._clearCaches(),this.getChildren().push(n),this._fire(`add`,{child:n}),this._requestDraw(),this)}destroy(){return this.hasChildren()&&this.destroyChildren(),super.destroy(),this}find(e){return this._generalFind(e,!1)}findOne(e){var t=this._generalFind(e,!0);return t.length>0?t[0]:void 0}_generalFind(e,t){var n=[];return this._descendants(r=>{let i=r._isMatch(e);return i&&n.push(r),!!(i&&t)}),n}_descendants(e){let t=!1,n=this.getChildren();for(let r of n)if(t=e(r),t||r.hasChildren()&&(t=r._descendants(e),t))return!0;return!1}toObject(){var e=Q.prototype.toObject.call(this);return e.children=[],this.getChildren().forEach(t=>{e.children.push(t.toObject())}),e}isAncestorOf(e){for(var t=e.getParent();t;){if(t._id===this._id)return!0;t=t.getParent()}return!1}clone(e){var t=Q.prototype.clone.call(this,e);return this.getChildren().forEach(function(e){t.add(e.clone())}),t}getAllIntersections(e){var t=[];return this.find(`Shape`).forEach(function(n){n.isVisible()&&n.intersects(e)&&t.push(n)}),t}_clearSelfAndDescendantCache(e){var t;super._clearSelfAndDescendantCache(e),!this.isCached()&&((t=this.children)==null||t.forEach(function(t){t._clearSelfAndDescendantCache(e)}))}_setChildrenIndices(){var e;(e=this.children)==null||e.forEach(function(e,t){e.index=t}),this._requestDraw()}drawScene(e,t){var n=this.getLayer(),r=e||n&&n.getCanvas(),i=r&&r.getContext(),a=this._getCanvasCache(),o=a&&a.scene,s=r&&r.isCache;if(!this.isVisible()&&!s)return this;if(o){i.save();var c=this.getAbsoluteTransform(t).getMatrix();i.transform(c[0],c[1],c[2],c[3],c[4],c[5]),this._drawCachedSceneCanvas(i),i.restore()}else this._drawChildren(`drawScene`,r,t);return this}drawHit(e,t){if(!this.shouldDrawHit(t))return this;var n=this.getLayer(),r=e||n&&n.hitCanvas,i=r&&r.getContext(),a=this._getCanvasCache();if(a&&a.hit){i.save();var o=this.getAbsoluteTransform(t).getMatrix();i.transform(o[0],o[1],o[2],o[3],o[4],o[5]),this._drawCachedHitCanvas(i),i.restore()}else this._drawChildren(`drawHit`,r,t);return this}_drawChildren(e,t,n){var r,i=t&&t.getContext(),a=this.clipWidth(),o=this.clipHeight(),s=this.clipFunc(),c=a&&o||s;let l=n===this;if(c){i.save();var u=this.getAbsoluteTransform(n),d=u.getMatrix();if(i.transform(d[0],d[1],d[2],d[3],d[4],d[5]),i.beginPath(),s)s.call(this,i,this);else{var f=this.clipX(),p=this.clipY();i.rect(f,p,a,o)}i.clip(),d=u.copy().invert().getMatrix(),i.transform(d[0],d[1],d[2],d[3],d[4],d[5])}var m=!l&&this.globalCompositeOperation()!==`source-over`&&e===`drawScene`;m&&(i.save(),i._applyGlobalCompositeOperation(this)),(r=this.children)==null||r.forEach(function(r){r[e](t,n)}),m&&i.restore(),c&&i.restore()}getClientRect(e){var t;e||={};var n=e.skipTransform,r=e.relativeTo,i,a,o,s,c={x:1/0,y:1/0,width:0,height:0},l=this;(t=this.children)==null||t.forEach(function(t){if(t.visible()){var n=t.getClientRect({relativeTo:l,skipShadow:e.skipShadow,skipStroke:e.skipStroke});n.width===0&&n.height===0||(i===void 0?(i=n.x,a=n.y,o=n.x+n.width,s=n.y+n.height):(i=Math.min(i,n.x),a=Math.min(a,n.y),o=Math.max(o,n.x+n.width),s=Math.max(s,n.y+n.height)))}});for(var u=this.find(`Shape`),d=!1,f=0;f<u.length;f++)if(u[f]._isVisible(this)){d=!0;break}return c=d&&i!==void 0?{x:i,y:a,width:o-i,height:s-a}:{x:0,y:0,width:0,height:0},n?c:this._transformedRect(c,r)}};Z.addComponentsGetterSetter(gv,`clip`,[`x`,`y`,`width`,`height`]),Z.addGetterSetter(gv,`clipX`,void 0,X()),Z.addGetterSetter(gv,`clipY`,void 0,X()),Z.addGetterSetter(gv,`clipWidth`,void 0,X()),Z.addGetterSetter(gv,`clipHeight`,void 0,X()),Z.addGetterSetter(gv,`clipFunc`);var _v=new Map,vv=J._global.PointerEvent!==void 0;function yv(e){return _v.get(e)}function bv(e){return{evt:e,pointerId:e.pointerId}}function xv(e,t){return _v.get(e)===t}function Sv(e,t){Cv(e),t.getStage()&&(_v.set(e,t),vv&&t._fire(`gotpointercapture`,bv(new PointerEvent(`gotpointercapture`))))}function Cv(e,t){let n=_v.get(e);if(!n)return;let r=n.getStage();r&&r.content,_v.delete(e),vv&&n._fire(`lostpointercapture`,bv(new PointerEvent(`lostpointercapture`)))}var wv=`Stage`,Tv=`string`,Ev=`px`,Dv=`mouseout`,Ov=`mouseleave`,kv=`mouseover`,Av=`mouseenter`,jv=`mousemove`,Mv=`mousedown`,Nv=`mouseup`,Pv=`pointermove`,Fv=`pointerdown`,Iv=`pointerup`,Lv=`pointercancel`,Rv=`lostpointercapture`,zv=`pointerout`,Bv=`pointerleave`,Vv=`pointerover`,Hv=`pointerenter`,Uv=`contextmenu`,Wv=`touchstart`,Gv=`touchend`,Kv=`touchmove`,qv=`touchcancel`,Jv=`wheel`,Yv=5,Xv=[[Av,`_pointerenter`],[Mv,`_pointerdown`],[jv,`_pointermove`],[Nv,`_pointerup`],[Ov,`_pointerleave`],[Wv,`_pointerdown`],[Kv,`_pointermove`],[Gv,`_pointerup`],[qv,`_pointercancel`],[kv,`_pointerover`],[Jv,`_wheel`],[Uv,`_contextmenu`],[Fv,`_pointerdown`],[Pv,`_pointermove`],[Iv,`_pointerup`],[Lv,`_pointercancel`],[Rv,`_lostpointercapture`]],Zv={mouse:{[zv]:Dv,[Bv]:Ov,[Vv]:kv,[Hv]:Av,[Pv]:jv,[Fv]:Mv,[Iv]:Nv,[Lv]:`mousecancel`,pointerclick:`click`,pointerdblclick:`dblclick`},touch:{[zv]:`touchout`,[Bv]:`touchleave`,[Vv]:`touchover`,[Hv]:`touchenter`,[Pv]:Kv,[Fv]:Wv,[Iv]:Gv,[Lv]:qv,pointerclick:`tap`,pointerdblclick:`dbltap`},pointer:{[zv]:zv,[Bv]:Bv,[Vv]:Vv,[Hv]:Hv,[Pv]:Pv,[Fv]:Fv,[Iv]:Iv,[Lv]:Lv,pointerclick:`pointerclick`,pointerdblclick:`pointerdblclick`}},Qv=e=>e.indexOf(`pointer`)>=0?`pointer`:e.indexOf(`touch`)>=0?`touch`:`mouse`,$v=e=>{let t=Qv(e);if(t===`pointer`)return J.pointerEventsEnabled&&Zv.pointer;if(t===`touch`)return Zv.touch;if(t===`mouse`)return Zv.mouse};function ey(e={}){return(e.clipFunc||e.clipWidth||e.clipHeight)&&Y.warn(`Stage does not support clipping. Please use clip for Layers or Groups.`),e}var ty=`Pointer position is missing and not registered by the stage. Looks like it is outside of the stage container. You can set it manually from event: stage.setPointersPositions(event);`,ny=[],ry=class extends gv{constructor(e){super(ey(e)),this._pointerPositions=[],this._changedPointerPositions=[],this._buildDOM(),this._bindContentEvents(),ny.push(this),this.on(`widthChange.konva heightChange.konva`,this._resizeDOM),this.on(`visibleChange.konva`,this._checkVisibility),this.on(`clipWidthChange.konva clipHeightChange.konva clipFuncChange.konva`,()=>{ey(this.attrs)}),this._checkVisibility()}_validateAdd(e){let t=e.getType()===`Layer`,n=e.getType()===`FastLayer`;t||n||Y.throw(`You may only add layers to the stage.`)}_checkVisibility(){if(!this.content)return;let e=this.visible()?``:`none`;this.content.style.display=e}setContainer(e){if(typeof e===Tv){if(e.charAt(0)===`.`){var t=e.slice(1);e=document.getElementsByClassName(t)[0]}else{var n=e.charAt(0)===`#`?e.slice(1):e;e=document.getElementById(n)}if(!e)throw`Can not find container in document with id `+n}return this._setAttr(`container`,e),this.content&&(this.content.parentElement&&this.content.parentElement.removeChild(this.content),e.appendChild(this.content)),this}shouldDrawHit(){return!0}clear(){var e=this.children,t=e.length,n;for(n=0;n<t;n++)e[n].clear();return this}clone(e){return e||={},e.container=typeof document<`u`&&document.createElement(`div`),gv.prototype.clone.call(this,e)}destroy(){super.destroy();var e=this.content;e&&Y._isInDocument(e)&&this.container().removeChild(e);var t=ny.indexOf(this);return t>-1&&ny.splice(t,1),this}getPointerPosition(){let e=this._pointerPositions[0]||this._changedPointerPositions[0];return e?{x:e.x,y:e.y}:(Y.warn(ty),null)}_getPointerById(e){return this._pointerPositions.find(t=>t.id===e)}getPointersPositions(){return this._pointerPositions}getStage(){return this}getContent(){return this.content}_toKonvaCanvas(e){e||={},e.x=e.x||0,e.y=e.y||0,e.width=e.width||this.width(),e.height=e.height||this.height();var t=new K_({width:e.width,height:e.height,pixelRatio:e.pixelRatio||1}),n=t.getContext()._context,r=this.children;return(e.x||e.y)&&n.translate(-1*e.x,-1*e.y),r.forEach(function(t){if(t.isVisible()){var r=t._toKonvaCanvas(e);n.drawImage(r._canvas,e.x,e.y,r.getWidth()/r.getPixelRatio(),r.getHeight()/r.getPixelRatio())}}),t}getIntersection(e){if(!e)return null;var t=this.children,n=t.length-1,r;for(r=n;r>=0;r--){let n=t[r].getIntersection(e);if(n)return n}return null}_resizeDOM(){var e=this.width(),t=this.height();this.content&&(this.content.style.width=e+Ev,this.content.style.height=t+Ev),this.bufferCanvas.setSize(e,t),this.bufferHitCanvas.setSize(e,t),this.children.forEach(n=>{n.setSize({width:e,height:t}),n.draw()})}add(e,...t){if(arguments.length>1){for(var n=0;n<arguments.length;n++)this.add(arguments[n]);return this}super.add(e);var r=this.children.length;return r>Yv&&Y.warn(`The stage has `+r+` layers. Recommended maximum number of layers is 3-5. Adding more layers into the stage may drop the performance. Rethink your tree structure, you can use Konva.Group.`),e.setSize({width:this.width(),height:this.height()}),e.draw(),J.isBrowser&&this.content.appendChild(e.canvas._canvas),this}getParent(){return null}getLayer(){return null}hasPointerCapture(e){return xv(e,this)}setPointerCapture(e){Sv(e,this)}releaseCapture(e){Cv(e,this)}getLayers(){return this.children}_bindContentEvents(){J.isBrowser&&Xv.forEach(([e,t])=>{this.content.addEventListener(e,e=>{this[t](e)})})}_pointerenter(e){this.setPointersPositions(e);let t=$v(e.type);this._fire(t.pointerenter,{evt:e,target:this,currentTarget:this})}_pointerover(e){this.setPointersPositions(e);let t=$v(e.type);this._fire(t.pointerover,{evt:e,target:this,currentTarget:this})}_getTargetShape(e){let t=this[e+`targetShape`];return t&&!t.getStage()&&(t=null),t}_pointerleave(e){let t=$v(e.type),n=Qv(e.type);if(t){this.setPointersPositions(e);var r=this._getTargetShape(n),i=!J_.isDragging||J.hitOnDragEnabled;r&&i?(r._fireAndBubble(t.pointerout,{evt:e}),r._fireAndBubble(t.pointerleave,{evt:e}),this._fire(t.pointerleave,{evt:e,target:this,currentTarget:this}),this[n+`targetShape`]=null):i&&(this._fire(t.pointerleave,{evt:e,target:this,currentTarget:this}),this._fire(t.pointerout,{evt:e,target:this,currentTarget:this})),this.pointerPos=void 0,this._pointerPositions=[]}}_pointerdown(e){let t=$v(e.type),n=Qv(e.type);if(t){this.setPointersPositions(e);var r=!1;this._changedPointerPositions.forEach(i=>{var a=this.getIntersection(i);if(J_.justDragged=!1,J[`_`+n+`ListenClick`]=!0,!(a&&a.isListening()))return;J.capturePointerEventsEnabled&&a.setPointerCapture(i.id),this[n+`ClickStartShape`]=a,a._fireAndBubble(t.pointerdown,{evt:e,pointerId:i.id}),r=!0;let o=e.type.indexOf(`touch`)>=0;a.preventDefault()&&e.cancelable&&o&&e.preventDefault()}),r||this._fire(t.pointerdown,{evt:e,target:this,currentTarget:this,pointerId:this._pointerPositions[0].id})}}_pointermove(e){let t=$v(e.type),n=Qv(e.type);if(!t||(J_.isDragging&&J_.node.preventDefault()&&e.cancelable&&e.preventDefault(),this.setPointersPositions(e),!(!J_.isDragging||J.hitOnDragEnabled)))return;var r={};let i=!1;var a=this._getTargetShape(n);this._changedPointerPositions.forEach(o=>{let s=yv(o.id)||this.getIntersection(o),c=o.id,l={evt:e,pointerId:c};var u=a!==s;if(u&&a&&(a._fireAndBubble(t.pointerout,Object.assign({},l),s),a._fireAndBubble(t.pointerleave,Object.assign({},l),s)),s){if(r[s._id])return;r[s._id]=!0}s&&s.isListening()?(i=!0,u&&(s._fireAndBubble(t.pointerover,Object.assign({},l),a),s._fireAndBubble(t.pointerenter,Object.assign({},l),a),this[n+`targetShape`]=s),s._fireAndBubble(t.pointermove,Object.assign({},l))):a&&(this._fire(t.pointerover,{evt:e,target:this,currentTarget:this,pointerId:c}),this[n+`targetShape`]=null)}),i||this._fire(t.pointermove,{evt:e,target:this,currentTarget:this,pointerId:this._changedPointerPositions[0].id})}_pointerup(e){let t=$v(e.type),n=Qv(e.type);if(!t)return;this.setPointersPositions(e);let r=this[n+`ClickStartShape`],i=this[n+`ClickEndShape`];var a={};let o=!1;this._changedPointerPositions.forEach(s=>{let c=yv(s.id)||this.getIntersection(s);if(c){if(c.releaseCapture(s.id),a[c._id])return;a[c._id]=!0}let l=s.id,u={evt:e,pointerId:l},d=!1;J[`_`+n+`InDblClickWindow`]&&J[`_`+n+`InDblClickWindowId`]===l?(d=!0,clearTimeout(this[n+`DblTimeout`])):J_.justDragged||(J[`_`+n+`InDblClickWindow`]=!0,J[`_`+n+`InDblClickWindowId`]=l,clearTimeout(this[n+`DblTimeout`])),this[n+`DblTimeout`]=setTimeout(function(){J[`_`+n+`InDblClickWindow`]=!1},J.dblClickWindow),c&&c.isListening()?(o=!0,this[n+`ClickEndShape`]=c,c._fireAndBubble(t.pointerup,Object.assign({},u)),J[`_`+n+`ListenClick`]&&r&&r===c&&(c._fireAndBubble(t.pointerclick,Object.assign({},u)),d&&i&&i===c&&c._fireAndBubble(t.pointerdblclick,Object.assign({},u)))):(this[n+`ClickEndShape`]=null,J[`_`+n+`ListenClick`]&&this._fire(t.pointerclick,{evt:e,target:this,currentTarget:this,pointerId:l}),d&&this._fire(t.pointerdblclick,{evt:e,target:this,currentTarget:this,pointerId:l}))}),o||this._fire(t.pointerup,{evt:e,target:this,currentTarget:this,pointerId:this._changedPointerPositions[0].id}),J[`_`+n+`ListenClick`]=!1,e.cancelable&&e.preventDefault()}_contextmenu(e){this.setPointersPositions(e);var t=this.getIntersection(this.getPointerPosition());t&&t.isListening()?t._fireAndBubble(Uv,{evt:e}):this._fire(Uv,{evt:e,target:this,currentTarget:this})}_wheel(e){this.setPointersPositions(e);var t=this.getIntersection(this.getPointerPosition());t&&t.isListening()?t._fireAndBubble(Jv,{evt:e}):this._fire(Jv,{evt:e,target:this,currentTarget:this})}_pointercancel(e){this.setPointersPositions(e);let t=yv(e.pointerId)||this.getIntersection(this.getPointerPosition());t&&t._fireAndBubble(Iv,bv(e)),Cv(e.pointerId)}_lostpointercapture(e){Cv(e.pointerId)}setPointersPositions(e){var t=this._getContentPosition(),n=null,r=null;e||=window.event,e.touches===void 0?(n=(e.clientX-t.left)/t.scaleX,r=(e.clientY-t.top)/t.scaleY,this.pointerPos={x:n,y:r},this._pointerPositions=[{x:n,y:r,id:Y._getFirstPointerId(e)}],this._changedPointerPositions=[{x:n,y:r,id:Y._getFirstPointerId(e)}]):(this._pointerPositions=[],this._changedPointerPositions=[],Array.prototype.forEach.call(e.touches,e=>{this._pointerPositions.push({id:e.identifier,x:(e.clientX-t.left)/t.scaleX,y:(e.clientY-t.top)/t.scaleY})}),Array.prototype.forEach.call(e.changedTouches||e.touches,e=>{this._changedPointerPositions.push({id:e.identifier,x:(e.clientX-t.left)/t.scaleX,y:(e.clientY-t.top)/t.scaleY})}))}_setPointerPosition(e){Y.warn(`Method _setPointerPosition is deprecated. Use "stage.setPointersPositions(event)" instead.`),this.setPointersPositions(e)}_getContentPosition(){if(!this.content||!this.content.getBoundingClientRect)return{top:0,left:0,scaleX:1,scaleY:1};var e=this.content.getBoundingClientRect();return{top:e.top,left:e.left,scaleX:e.width/this.content.clientWidth||1,scaleY:e.height/this.content.clientHeight||1}}_buildDOM(){if(this.bufferCanvas=new K_({width:this.width(),height:this.height()}),this.bufferHitCanvas=new q_({pixelRatio:1,width:this.width(),height:this.height()}),J.isBrowser){var e=this.container();if(!e)throw`Stage has no container. A container is required.`;e.innerHTML=``,this.content=document.createElement(`div`),this.content.style.position=`relative`,this.content.style.userSelect=`none`,this.content.className=`konvajs-content`,this.content.setAttribute(`role`,`presentation`),e.appendChild(this.content),this._resizeDOM()}}cache(){return Y.warn(`Cache function is not allowed for stage. You may use cache only for layers, groups and shapes.`),this}clearCache(){return this}batchDraw(){return this.getChildren().forEach(function(e){e.batchDraw()}),this}};ry.prototype.nodeType=wv,$g(ry),Z.addGetterSetter(ry,`container`);var iy=`hasShadow`,ay=`shadowRGBA`,oy=`patternImage`,sy=`linearGradient`,cy=`radialGradient`,ly;function uy(){return ly||(ly=Y.createCanvasElement().getContext(`2d`),ly)}var dy={};function fy(e){e.fill()}function py(e){e.stroke()}function my(e){e.fill()}function hy(e){e.stroke()}function gy(){this._clearCache(iy)}function _y(){this._clearCache(ay)}function vy(){this._clearCache(oy)}function yy(){this._clearCache(sy)}function by(){this._clearCache(cy)}var $=class extends Q{constructor(e){super(e);let t;for(;t=Y.getRandomColor(),!(t&&!(t in dy)););this.colorKey=t,dy[t]=this}getContext(){return Y.warn(`shape.getContext() method is deprecated. Please do not use it.`),this.getLayer().getContext()}getCanvas(){return Y.warn(`shape.getCanvas() method is deprecated. Please do not use it.`),this.getLayer().getCanvas()}getSceneFunc(){return this.attrs.sceneFunc||this._sceneFunc}getHitFunc(){return this.attrs.hitFunc||this._hitFunc}hasShadow(){return this._getCache(iy,this._hasShadow)}_hasShadow(){return this.shadowEnabled()&&this.shadowOpacity()!==0&&!!(this.shadowColor()||this.shadowBlur()||this.shadowOffsetX()||this.shadowOffsetY())}_getFillPattern(){return this._getCache(oy,this.__getFillPattern)}__getFillPattern(){if(this.fillPatternImage()){let e=uy().createPattern(this.fillPatternImage(),this.fillPatternRepeat()||`repeat`);if(e&&e.setTransform){let t=new e_;t.translate(this.fillPatternX(),this.fillPatternY()),t.rotate(J.getAngle(this.fillPatternRotation())),t.scale(this.fillPatternScaleX(),this.fillPatternScaleY()),t.translate(-1*this.fillPatternOffsetX(),-1*this.fillPatternOffsetY());let n=t.getMatrix();e.setTransform({a:n[0],b:n[1],c:n[2],d:n[3],e:n[4],f:n[5]})}return e}}_getLinearGradient(){return this._getCache(sy,this.__getLinearGradient)}__getLinearGradient(){var e=this.fillLinearGradientColorStops();if(e){for(var t=uy(),n=this.fillLinearGradientStartPoint(),r=this.fillLinearGradientEndPoint(),i=t.createLinearGradient(n.x,n.y,r.x,r.y),a=0;a<e.length;a+=2)i.addColorStop(e[a],e[a+1]);return i}}_getRadialGradient(){return this._getCache(cy,this.__getRadialGradient)}__getRadialGradient(){var e=this.fillRadialGradientColorStops();if(e){for(var t=uy(),n=this.fillRadialGradientStartPoint(),r=this.fillRadialGradientEndPoint(),i=t.createRadialGradient(n.x,n.y,this.fillRadialGradientStartRadius(),r.x,r.y,this.fillRadialGradientEndRadius()),a=0;a<e.length;a+=2)i.addColorStop(e[a],e[a+1]);return i}}getShadowRGBA(){return this._getCache(ay,this._getShadowRGBA)}_getShadowRGBA(){if(this.hasShadow()){var e=Y.colorToRGBA(this.shadowColor());return`rgba(`+e.r+`,`+e.g+`,`+e.b+`,`+e.a*(this.shadowOpacity()||1)+`)`}}hasFill(){return this._calculate(`hasFill`,[`fillEnabled`,`fill`,`fillPatternImage`,`fillLinearGradientColorStops`,`fillRadialGradientColorStops`],()=>this.fillEnabled()&&!!(this.fill()||this.fillPatternImage()||this.fillLinearGradientColorStops()||this.fillRadialGradientColorStops()))}hasStroke(){return this._calculate(`hasStroke`,[`strokeEnabled`,`strokeWidth`,`stroke`,`strokeLinearGradientColorStops`],()=>this.strokeEnabled()&&this.strokeWidth()&&!!(this.stroke()||this.strokeLinearGradientColorStops()))}hasHitStroke(){let e=this.hitStrokeWidth();return e===`auto`?this.hasStroke():this.strokeEnabled()&&!!e}intersects(e){var t=this.getStage().bufferHitCanvas,n;return t.getContext().clear(),this.drawHit(t,null,!0),n=t.context.getImageData(Math.round(e.x),Math.round(e.y),1,1).data,n[3]>0}destroy(){return Q.prototype.destroy.call(this),delete dy[this.colorKey],delete this.colorKey,this}_useBufferCanvas(e){if(!this.getStage()||!(this.attrs.perfectDrawEnabled??!0))return!1;let t=e||this.hasFill(),n=this.hasStroke(),r=this.getAbsoluteOpacity()!==1;if(t&&n&&r)return!0;let i=this.hasShadow(),a=this.shadowForStrokeEnabled();return!!(t&&n&&i&&a)}setStrokeHitEnabled(e){Y.warn(`strokeHitEnabled property is deprecated. Please use hitStrokeWidth instead.`),e?this.hitStrokeWidth(`auto`):this.hitStrokeWidth(0)}getStrokeHitEnabled(){return this.hitStrokeWidth()!==0}getSelfRect(){var e=this.size();return{x:this._centroid?-e.width/2:0,y:this._centroid?-e.height/2:0,width:e.width,height:e.height}}getClientRect(e={}){let t=e.skipTransform,n=e.relativeTo,r=this.getSelfRect(),i=!e.skipStroke&&this.hasStroke()&&this.strokeWidth()||0,a=r.width+i,o=r.height+i,s=!e.skipShadow&&this.hasShadow(),c=s?this.shadowOffsetX():0,l=s?this.shadowOffsetY():0,u=a+Math.abs(c),d=o+Math.abs(l),f=s&&this.shadowBlur()||0,p=u+f*2,m=d+f*2,h=0;Math.round(i/2)!==i/2&&(h=1);let g={width:p+h,height:m+h,x:-Math.round(i/2+f)+Math.min(c,0)+r.x,y:-Math.round(i/2+f)+Math.min(l,0)+r.y};return t?g:this._transformedRect(g,n)}drawScene(e,t){var n=this.getLayer(),r=e||n.getCanvas(),i=r.getContext(),a=this._getCanvasCache(),o=this.getSceneFunc(),s=this.hasShadow(),c,l,u,d=r.isCache,f=t===this;if(!this.isVisible()&&!f)return this;if(a){i.save();var p=this.getAbsoluteTransform(t).getMatrix();return i.transform(p[0],p[1],p[2],p[3],p[4],p[5]),this._drawCachedSceneCanvas(i),i.restore(),this}if(!o)return this;if(i.save(),this._useBufferCanvas()&&!d){c=this.getStage(),l=c.bufferCanvas,u=l.getContext(),u.clear(),u.save(),u._applyLineJoin(this);var m=this.getAbsoluteTransform(t).getMatrix();u.transform(m[0],m[1],m[2],m[3],m[4],m[5]),o.call(this,u,this),u.restore();var h=l.pixelRatio;s&&i._applyShadow(this),i._applyOpacity(this),i._applyGlobalCompositeOperation(this),i.drawImage(l._canvas,0,0,l.width/h,l.height/h)}else{if(i._applyLineJoin(this),!f){var m=this.getAbsoluteTransform(t).getMatrix();i.transform(m[0],m[1],m[2],m[3],m[4],m[5]),i._applyOpacity(this),i._applyGlobalCompositeOperation(this)}s&&i._applyShadow(this),o.call(this,i,this)}return i.restore(),this}drawHit(e,t,n=!1){if(!this.shouldDrawHit(t,n))return this;var r=this.getLayer(),i=e||r.hitCanvas,a=i&&i.getContext(),o=this.hitFunc()||this.sceneFunc(),s=this._getCanvasCache(),c=s&&s.hit;if(this.colorKey||Y.warn(`Looks like your canvas has a destroyed shape in it. Do not reuse shape after you destroyed it. If you want to reuse shape you should call remove() instead of destroy()`),c){a.save();var l=this.getAbsoluteTransform(t).getMatrix();return a.transform(l[0],l[1],l[2],l[3],l[4],l[5]),this._drawCachedHitCanvas(a),a.restore(),this}if(!o)return this;if(a.save(),a._applyLineJoin(this),this!==t){var u=this.getAbsoluteTransform(t).getMatrix();a.transform(u[0],u[1],u[2],u[3],u[4],u[5])}return o.call(this,a,this),a.restore(),this}drawHitFromCache(e=0){var t=this._getCanvasCache(),n=this._getCachedSceneCanvas(),r=t.hit,i=r.getContext(),a=r.getWidth(),o=r.getHeight(),s,c,l,u,d,f;i.clear(),i.drawImage(n._canvas,0,0,a,o);try{for(s=i.getImageData(0,0,a,o),c=s.data,l=c.length,u=Y._hexToRgb(this.colorKey),d=0;d<l;d+=4)f=c[d+3],f>e?(c[d]=u.r,c[d+1]=u.g,c[d+2]=u.b,c[d+3]=255):c[d+3]=0;i.putImageData(s,0,0)}catch(e){Y.error(`Unable to draw hit graph from cached scene canvas. `+e.message)}return this}hasPointerCapture(e){return xv(e,this)}setPointerCapture(e){Sv(e,this)}releaseCapture(e){Cv(e,this)}};$.prototype._fillFunc=fy,$.prototype._strokeFunc=py,$.prototype._fillFuncHit=my,$.prototype._strokeFuncHit=hy,$.prototype._centroid=!1,$.prototype.nodeType=`Shape`,$g($),$.prototype.eventListeners={},$.prototype.on.call($.prototype,`shadowColorChange.konva shadowBlurChange.konva shadowOffsetChange.konva shadowOpacityChange.konva shadowEnabledChange.konva`,gy),$.prototype.on.call($.prototype,`shadowColorChange.konva shadowOpacityChange.konva shadowEnabledChange.konva`,_y),$.prototype.on.call($.prototype,`fillPriorityChange.konva fillPatternImageChange.konva fillPatternRepeatChange.konva fillPatternScaleXChange.konva fillPatternScaleYChange.konva fillPatternOffsetXChange.konva fillPatternOffsetYChange.konva fillPatternXChange.konva fillPatternYChange.konva fillPatternRotationChange.konva`,vy),$.prototype.on.call($.prototype,`fillPriorityChange.konva fillLinearGradientColorStopsChange.konva fillLinearGradientStartPointXChange.konva fillLinearGradientStartPointYChange.konva fillLinearGradientEndPointXChange.konva fillLinearGradientEndPointYChange.konva`,yy),$.prototype.on.call($.prototype,`fillPriorityChange.konva fillRadialGradientColorStopsChange.konva fillRadialGradientStartPointXChange.konva fillRadialGradientStartPointYChange.konva fillRadialGradientEndPointXChange.konva fillRadialGradientEndPointYChange.konva fillRadialGradientStartRadiusChange.konva fillRadialGradientEndRadiusChange.konva`,by),Z.addGetterSetter($,`stroke`,void 0,S_()),Z.addGetterSetter($,`strokeWidth`,2,X()),Z.addGetterSetter($,`fillAfterStrokeEnabled`,!1),Z.addGetterSetter($,`hitStrokeWidth`,`auto`,b_()),Z.addGetterSetter($,`strokeHitEnabled`,!0,w_()),Z.addGetterSetter($,`perfectDrawEnabled`,!0,w_()),Z.addGetterSetter($,`shadowForStrokeEnabled`,!0,w_()),Z.addGetterSetter($,`lineJoin`),Z.addGetterSetter($,`lineCap`),Z.addGetterSetter($,`sceneFunc`),Z.addGetterSetter($,`hitFunc`),Z.addGetterSetter($,`dash`),Z.addGetterSetter($,`dashOffset`,0,X()),Z.addGetterSetter($,`shadowColor`,void 0,x_()),Z.addGetterSetter($,`shadowBlur`,0,X()),Z.addGetterSetter($,`shadowOpacity`,1,X()),Z.addComponentsGetterSetter($,`shadowOffset`,[`x`,`y`]),Z.addGetterSetter($,`shadowOffsetX`,0,X()),Z.addGetterSetter($,`shadowOffsetY`,0,X()),Z.addGetterSetter($,`fillPatternImage`),Z.addGetterSetter($,`fill`,void 0,S_()),Z.addGetterSetter($,`fillPatternX`,0,X()),Z.addGetterSetter($,`fillPatternY`,0,X()),Z.addGetterSetter($,`fillLinearGradientColorStops`),Z.addGetterSetter($,`strokeLinearGradientColorStops`),Z.addGetterSetter($,`fillRadialGradientStartRadius`,0),Z.addGetterSetter($,`fillRadialGradientEndRadius`,0),Z.addGetterSetter($,`fillRadialGradientColorStops`),Z.addGetterSetter($,`fillPatternRepeat`,`repeat`),Z.addGetterSetter($,`fillEnabled`,!0),Z.addGetterSetter($,`strokeEnabled`,!0),Z.addGetterSetter($,`shadowEnabled`,!0),Z.addGetterSetter($,`dashEnabled`,!0),Z.addGetterSetter($,`strokeScaleEnabled`,!0),Z.addGetterSetter($,`fillPriority`,`color`),Z.addComponentsGetterSetter($,`fillPatternOffset`,[`x`,`y`]),Z.addGetterSetter($,`fillPatternOffsetX`,0,X()),Z.addGetterSetter($,`fillPatternOffsetY`,0,X()),Z.addComponentsGetterSetter($,`fillPatternScale`,[`x`,`y`]),Z.addGetterSetter($,`fillPatternScaleX`,1,X()),Z.addGetterSetter($,`fillPatternScaleY`,1,X()),Z.addComponentsGetterSetter($,`fillLinearGradientStartPoint`,[`x`,`y`]),Z.addComponentsGetterSetter($,`strokeLinearGradientStartPoint`,[`x`,`y`]),Z.addGetterSetter($,`fillLinearGradientStartPointX`,0),Z.addGetterSetter($,`strokeLinearGradientStartPointX`,0),Z.addGetterSetter($,`fillLinearGradientStartPointY`,0),Z.addGetterSetter($,`strokeLinearGradientStartPointY`,0),Z.addComponentsGetterSetter($,`fillLinearGradientEndPoint`,[`x`,`y`]),Z.addComponentsGetterSetter($,`strokeLinearGradientEndPoint`,[`x`,`y`]),Z.addGetterSetter($,`fillLinearGradientEndPointX`,0),Z.addGetterSetter($,`strokeLinearGradientEndPointX`,0),Z.addGetterSetter($,`fillLinearGradientEndPointY`,0),Z.addGetterSetter($,`strokeLinearGradientEndPointY`,0),Z.addComponentsGetterSetter($,`fillRadialGradientStartPoint`,[`x`,`y`]),Z.addGetterSetter($,`fillRadialGradientStartPointX`,0),Z.addGetterSetter($,`fillRadialGradientStartPointY`,0),Z.addComponentsGetterSetter($,`fillRadialGradientEndPoint`,[`x`,`y`]),Z.addGetterSetter($,`fillRadialGradientEndPointX`,0),Z.addGetterSetter($,`fillRadialGradientEndPointY`,0),Z.addGetterSetter($,`fillPatternRotation`,0),Z.backCompat($,{dashArray:`dash`,getDashArray:`getDash`,setDashArray:`getDash`,drawFunc:`sceneFunc`,getDrawFunc:`getSceneFunc`,setDrawFunc:`setSceneFunc`,drawHitFunc:`hitFunc`,getDrawHitFunc:`getHitFunc`,setDrawHitFunc:`setHitFunc`});var xy=`#`,Sy=`beforeDraw`,Cy=`draw`,wy=[{x:0,y:0},{x:-1,y:-1},{x:1,y:-1},{x:1,y:1},{x:-1,y:1}],Ty=wy.length,Ey=class extends gv{constructor(e){super(e),this.canvas=new K_,this.hitCanvas=new q_({pixelRatio:1}),this._waitingForDraw=!1,this.on(`visibleChange.konva`,this._checkVisibility),this._checkVisibility(),this.on(`imageSmoothingEnabledChange.konva`,this._setSmoothEnabled),this._setSmoothEnabled()}createPNGStream(){return this.canvas._canvas.createPNGStream()}getCanvas(){return this.canvas}getNativeCanvasElement(){return this.canvas._canvas}getHitCanvas(){return this.hitCanvas}getContext(){return this.getCanvas().getContext()}clear(e){return this.getContext().clear(e),this.getHitCanvas().getContext().clear(e),this}setZIndex(e){super.setZIndex(e);var t=this.getStage();return t&&t.content&&(t.content.removeChild(this.getNativeCanvasElement()),e<t.children.length-1?t.content.insertBefore(this.getNativeCanvasElement(),t.children[e+1].getCanvas()._canvas):t.content.appendChild(this.getNativeCanvasElement())),this}moveToTop(){Q.prototype.moveToTop.call(this);var e=this.getStage();return e&&e.content&&(e.content.removeChild(this.getNativeCanvasElement()),e.content.appendChild(this.getNativeCanvasElement())),!0}moveUp(){if(!Q.prototype.moveUp.call(this))return!1;var e=this.getStage();return!e||!e.content?!1:(e.content.removeChild(this.getNativeCanvasElement()),this.index<e.children.length-1?e.content.insertBefore(this.getNativeCanvasElement(),e.children[this.index+1].getCanvas()._canvas):e.content.appendChild(this.getNativeCanvasElement()),!0)}moveDown(){if(Q.prototype.moveDown.call(this)){var e=this.getStage();if(e){var t=e.children;e.content&&(e.content.removeChild(this.getNativeCanvasElement()),e.content.insertBefore(this.getNativeCanvasElement(),t[this.index+1].getCanvas()._canvas))}return!0}return!1}moveToBottom(){if(Q.prototype.moveToBottom.call(this)){var e=this.getStage();if(e){var t=e.children;e.content&&(e.content.removeChild(this.getNativeCanvasElement()),e.content.insertBefore(this.getNativeCanvasElement(),t[1].getCanvas()._canvas))}return!0}return!1}getLayer(){return this}remove(){var e=this.getNativeCanvasElement();return Q.prototype.remove.call(this),e&&e.parentNode&&Y._isInDocument(e)&&e.parentNode.removeChild(e),this}getStage(){return this.parent}setSize({width:e,height:t}){return this.canvas.setSize(e,t),this.hitCanvas.setSize(e,t),this._setSmoothEnabled(),this}_validateAdd(e){var t=e.getType();t!==`Group`&&t!==`Shape`&&Y.throw(`You may only add groups and shapes to a layer.`)}_toKonvaCanvas(e){return e||={},e.width=e.width||this.getWidth(),e.height=e.height||this.getHeight(),e.x=e.x===void 0?this.x():e.x,e.y=e.y===void 0?this.y():e.y,Q.prototype._toKonvaCanvas.call(this,e)}_checkVisibility(){this.visible()?this.canvas._canvas.style.display=`block`:this.canvas._canvas.style.display=`none`}_setSmoothEnabled(){this.getContext()._context.imageSmoothingEnabled=this.imageSmoothingEnabled()}getWidth(){if(this.parent)return this.parent.width()}setWidth(){Y.warn(`Can not change width of layer. Use "stage.width(value)" function instead.`)}getHeight(){if(this.parent)return this.parent.height()}setHeight(){Y.warn(`Can not change height of layer. Use "stage.height(value)" function instead.`)}batchDraw(){return this._waitingForDraw||(this._waitingForDraw=!0,Y.requestAnimFrame(()=>{this.draw(),this._waitingForDraw=!1})),this}getIntersection(e){if(!this.isListening()||!this.isVisible())return null;for(var t=1,n=!1;;){for(let r=0;r<Ty;r++){let i=wy[r],a=this._getIntersection({x:e.x+i.x*t,y:e.y+i.y*t}),o=a.shape;if(o)return o;if(n=!!a.antialiased,!a.antialiased)break}if(n)t+=1;else return null}}_getIntersection(e){let t=this.hitCanvas.pixelRatio,n=this.hitCanvas.context.getImageData(Math.round(e.x*t),Math.round(e.y*t),1,1).data,r=n[3];if(r===255){let e=dy[xy+Y._rgbToHex(n[0],n[1],n[2])];return e?{shape:e}:{antialiased:!0}}else if(r>0)return{antialiased:!0};return{}}drawScene(e,t){var n=this.getLayer(),r=e||n&&n.getCanvas();return this._fire(Sy,{node:this}),this.clearBeforeDraw()&&r.getContext().clear(),gv.prototype.drawScene.call(this,r,t),this._fire(Cy,{node:this}),this}drawHit(e,t){var n=this.getLayer(),r=e||n&&n.hitCanvas;return n&&n.clearBeforeDraw()&&n.getHitCanvas().getContext().clear(),gv.prototype.drawHit.call(this,r,t),this}enableHitGraph(){return this.hitGraphEnabled(!0),this}disableHitGraph(){return this.hitGraphEnabled(!1),this}setHitGraphEnabled(e){Y.warn(`hitGraphEnabled method is deprecated. Please use layer.listening() instead.`),this.listening(e)}getHitGraphEnabled(e){return Y.warn(`hitGraphEnabled method is deprecated. Please use layer.listening() instead.`),this.listening()}toggleHitCanvas(){if(!(!this.parent||!this.parent.content)){var e=this.parent;this.hitCanvas._canvas.parentNode?e.content.removeChild(this.hitCanvas._canvas):e.content.appendChild(this.hitCanvas._canvas)}}};Ey.prototype.nodeType=`Layer`,$g(Ey),Z.addGetterSetter(Ey,`imageSmoothingEnabled`,!0),Z.addGetterSetter(Ey,`clearBeforeDraw`,!0),Z.addGetterSetter(Ey,`hitGraphEnabled`,!0,w_());var Dy=class extends Ey{constructor(e){super(e),this.listening(!1),Y.warn(`Konva.Fast layer is deprecated. Please use "new Konva.Layer({ listening: false })" instead.`)}};Dy.prototype.nodeType=`FastLayer`,$g(Dy);var Oy=class extends gv{_validateAdd(e){var t=e.getType();t!==`Group`&&t!==`Shape`&&Y.throw(`You may only add groups and shapes to groups.`)}};Oy.prototype.nodeType=`Group`,$g(Oy);var ky=(function(){return Qg.performance&&Qg.performance.now?function(){return Qg.performance.now()}:function(){return new Date().getTime()}})(),Ay=class e{constructor(t,n){this.id=e.animIdCounter++,this.frame={time:0,timeDiff:0,lastTime:ky(),frameRate:0},this.func=t,this.setLayers(n)}setLayers(e){var t=[];return t=e?e.length>0?e:[e]:[],this.layers=t,this}getLayers(){return this.layers}addLayer(e){var t=this.layers,n=t.length,r;for(r=0;r<n;r++)if(t[r]._id===e._id)return!1;return this.layers.push(e),!0}isRunning(){var t=e.animations,n=t.length,r;for(r=0;r<n;r++)if(t[r].id===this.id)return!0;return!1}start(){return this.stop(),this.frame.timeDiff=0,this.frame.lastTime=ky(),e._addAnimation(this),this}stop(){return e._removeAnimation(this),this}_updateFrameObject(e){this.frame.timeDiff=e-this.frame.lastTime,this.frame.lastTime=e,this.frame.time+=this.frame.timeDiff,this.frame.frameRate=1e3/this.frame.timeDiff}static _addAnimation(e){this.animations.push(e),this._handleAnimation()}static _removeAnimation(e){var t=e.id,n=this.animations,r=n.length,i;for(i=0;i<r;i++)if(n[i].id===t){this.animations.splice(i,1);break}}static _runFrames(){var e={},t=this.animations,n,r,i,a,o,s,c,l,u;for(a=0;a<t.length;a++)if(n=t[a],r=n.layers,i=n.func,n._updateFrameObject(ky()),s=r.length,u=!i||i.call(n,n.frame)!==!1,u)for(o=0;o<s;o++)c=r[o],c._id!==void 0&&(e[c._id]=c);for(l in e)e.hasOwnProperty(l)&&e[l].batchDraw()}static _animationLoop(){var t=e;t.animations.length?(t._runFrames(),Y.requestAnimFrame(t._animationLoop)):t.animRunning=!1}static _handleAnimation(){this.animRunning||(this.animRunning=!0,Y.requestAnimFrame(this._animationLoop))}};Ay.animations=[],Ay.animIdCounter=0,Ay.animRunning=!1;var jy={node:1,duration:1,easing:1,onFinish:1,yoyo:1},My=1,Ny=2,Py=3,Fy=0,Iy=[`fill`,`stroke`,`shadowColor`],Ly=class{constructor(e,t,n,r,i,a,o){this.prop=e,this.propFunc=t,this.begin=r,this._pos=r,this.duration=a,this._change=0,this.prevPos=0,this.yoyo=o,this._time=0,this._position=0,this._startTime=0,this._finish=0,this.func=n,this._change=i-this.begin,this.pause()}fire(e){var t=this[e];t&&t()}setTime(e){e>this.duration?this.yoyo?(this._time=this.duration,this.reverse()):this.finish():e<0?this.yoyo?(this._time=0,this.play()):this.reset():(this._time=e,this.update())}getTime(){return this._time}setPosition(e){this.prevPos=this._pos,this.propFunc(e),this._pos=e}getPosition(e){return e===void 0&&(e=this._time),this.func(e,this.begin,this._change,this.duration)}play(){this.state=Ny,this._startTime=this.getTimer()-this._time,this.onEnterFrame(),this.fire(`onPlay`)}reverse(){this.state=Py,this._time=this.duration-this._time,this._startTime=this.getTimer()-this._time,this.onEnterFrame(),this.fire(`onReverse`)}seek(e){this.pause(),this._time=e,this.update(),this.fire(`onSeek`)}reset(){this.pause(),this._time=0,this.update(),this.fire(`onReset`)}finish(){this.pause(),this._time=this.duration,this.update(),this.fire(`onFinish`)}update(){this.setPosition(this.getPosition(this._time)),this.fire(`onUpdate`)}onEnterFrame(){var e=this.getTimer()-this._startTime;this.state===Ny?this.setTime(e):this.state===Py&&this.setTime(this.duration-e)}pause(){this.state=My,this.fire(`onPause`)}getTimer(){return new Date().getTime()}},Ry=class e{constructor(t){var n=this,r=t.node,i=r._id,a,o=t.easing||zy.Linear,s=!!t.yoyo,c;a=t.duration===void 0?.3:t.duration===0?.001:t.duration,this.node=r,this._id=Fy++;var l=r.getLayer()||(r instanceof J.Stage?r.getLayers():null);for(c in l||Y.error("Tween constructor have `node` that is not in a layer. Please add node into layer first."),this.anim=new Ay(function(){n.tween.onEnterFrame()},l),this.tween=new Ly(c,function(e){n._tweenFunc(e)},o,0,1,a*1e3,s),this._addListeners(),e.attrs[i]||(e.attrs[i]={}),e.attrs[i][this._id]||(e.attrs[i][this._id]={}),e.tweens[i]||(e.tweens[i]={}),t)jy[c]===void 0&&this._addAttr(c,t[c]);this.reset(),this.onFinish=t.onFinish,this.onReset=t.onReset,this.onUpdate=t.onUpdate}_addAttr(t,n){var r=this.node,i=r._id,a,o,s=e.tweens[i][t],c,l,u,d,f;if(s&&delete e.attrs[i][s][t],a=r.getAttr(t),Y._isArray(n))if(o=[],l=Math.max(n.length,a.length),t===`points`&&n.length!==a.length&&(n.length>a.length?(d=a,a=Y._prepareArrayForTween(a,n,r.closed())):(u=n,n=Y._prepareArrayForTween(n,a,r.closed()))),t.indexOf(`fill`)===0)for(c=0;c<l;c++)if(c%2==0)o.push(n[c]-a[c]);else{var p=Y.colorToRGBA(a[c]);f=Y.colorToRGBA(n[c]),a[c]=p,o.push({r:f.r-p.r,g:f.g-p.g,b:f.b-p.b,a:f.a-p.a})}else for(c=0;c<l;c++)o.push(n[c]-a[c]);else Iy.indexOf(t)===-1?o=n-a:(a=Y.colorToRGBA(a),f=Y.colorToRGBA(n),o={r:f.r-a.r,g:f.g-a.g,b:f.b-a.b,a:f.a-a.a});e.attrs[i][this._id][t]={start:a,diff:o,end:n,trueEnd:u,trueStart:d},e.tweens[i][t]=this._id}_tweenFunc(t){var n=this.node,r=e.attrs[n._id][this._id],i,a,o,s,c,l,u,d;for(i in r){if(a=r[i],o=a.start,s=a.diff,d=a.end,Y._isArray(o))if(c=[],u=Math.max(o.length,d.length),i.indexOf(`fill`)===0)for(l=0;l<u;l++)l%2==0?c.push((o[l]||0)+s[l]*t):c.push(`rgba(`+Math.round(o[l].r+s[l].r*t)+`,`+Math.round(o[l].g+s[l].g*t)+`,`+Math.round(o[l].b+s[l].b*t)+`,`+(o[l].a+s[l].a*t)+`)`);else for(l=0;l<u;l++)c.push((o[l]||0)+s[l]*t);else c=Iy.indexOf(i)===-1?o+s*t:`rgba(`+Math.round(o.r+s.r*t)+`,`+Math.round(o.g+s.g*t)+`,`+Math.round(o.b+s.b*t)+`,`+(o.a+s.a*t)+`)`;n.setAttr(i,c)}}_addListeners(){this.tween.onPlay=()=>{this.anim.start()},this.tween.onReverse=()=>{this.anim.start()},this.tween.onPause=()=>{this.anim.stop()},this.tween.onFinish=()=>{var t=this.node,n=e.attrs[t._id][this._id];n.points&&n.points.trueEnd&&t.setAttr(`points`,n.points.trueEnd),this.onFinish&&this.onFinish.call(this)},this.tween.onReset=()=>{var t=this.node,n=e.attrs[t._id][this._id];n.points&&n.points.trueStart&&t.points(n.points.trueStart),this.onReset&&this.onReset()},this.tween.onUpdate=()=>{this.onUpdate&&this.onUpdate.call(this)}}play(){return this.tween.play(),this}reverse(){return this.tween.reverse(),this}reset(){return this.tween.reset(),this}seek(e){return this.tween.seek(e*1e3),this}pause(){return this.tween.pause(),this}finish(){return this.tween.finish(),this}destroy(){var t=this.node._id,n=this._id,r=e.tweens[t],i;for(i in this.pause(),r)delete e.tweens[t][i];delete e.attrs[t][n]}};Ry.attrs={},Ry.tweens={},Q.prototype.to=function(e){var t=e.onFinish;e.node=this,e.onFinish=function(){this.destroy(),t&&t()},new Ry(e).play()};var zy={BackEaseIn(e,t,n,r){var i=1.70158;return n*(e/=r)*e*((i+1)*e-i)+t},BackEaseOut(e,t,n,r){var i=1.70158;return n*((e=e/r-1)*e*((i+1)*e+i)+1)+t},BackEaseInOut(e,t,n,r){var i=1.70158;return(e/=r/2)<1?n/2*(e*e*(((i*=1.525)+1)*e-i))+t:n/2*((e-=2)*e*(((i*=1.525)+1)*e+i)+2)+t},ElasticEaseIn(e,t,n,r,i,a){var o=0;return e===0?t:(e/=r)===1?t+n:(a||=r*.3,!i||i<Math.abs(n)?(i=n,o=a/4):o=a/(2*Math.PI)*Math.asin(n/i),-(i*2**(10*--e)*Math.sin((e*r-o)*(2*Math.PI)/a))+t)},ElasticEaseOut(e,t,n,r,i,a){var o=0;return e===0?t:(e/=r)===1?t+n:(a||=r*.3,!i||i<Math.abs(n)?(i=n,o=a/4):o=a/(2*Math.PI)*Math.asin(n/i),i*2**(-10*e)*Math.sin((e*r-o)*(2*Math.PI)/a)+n+t)},ElasticEaseInOut(e,t,n,r,i,a){var o=0;return e===0?t:(e/=r/2)==2?t+n:(a||=.3*1.5*r,!i||i<Math.abs(n)?(i=n,o=a/4):o=a/(2*Math.PI)*Math.asin(n/i),e<1?-.5*(i*2**(10*--e)*Math.sin((e*r-o)*(2*Math.PI)/a))+t:i*2**(-10*--e)*Math.sin((e*r-o)*(2*Math.PI)/a)*.5+n+t)},BounceEaseOut(e,t,n,r){return(e/=r)<1/2.75?n*(7.5625*e*e)+t:e<2/2.75?n*(7.5625*(e-=1.5/2.75)*e+.75)+t:e<2.5/2.75?n*(7.5625*(e-=2.25/2.75)*e+.9375)+t:n*(7.5625*(e-=2.625/2.75)*e+.984375)+t},BounceEaseIn(e,t,n,r){return n-zy.BounceEaseOut(r-e,0,n,r)+t},BounceEaseInOut(e,t,n,r){return e<r/2?zy.BounceEaseIn(e*2,0,n,r)*.5+t:zy.BounceEaseOut(e*2-r,0,n,r)*.5+n*.5+t},EaseIn(e,t,n,r){return n*(e/=r)*e+t},EaseOut(e,t,n,r){return-n*(e/=r)*(e-2)+t},EaseInOut(e,t,n,r){return(e/=r/2)<1?n/2*e*e+t:-n/2*(--e*(e-2)-1)+t},StrongEaseIn(e,t,n,r){return n*(e/=r)*e*e*e*e+t},StrongEaseOut(e,t,n,r){return n*((e=e/r-1)*e*e*e*e+1)+t},StrongEaseInOut(e,t,n,r){return(e/=r/2)<1?n/2*e*e*e*e*e+t:n/2*((e-=2)*e*e*e*e+2)+t},Linear(e,t,n,r){return n*e/r+t}},By=Y._assign(J,{Util:Y,Transform:e_,Node:Q,Container:gv,Stage:ry,stages:ny,Layer:Ey,FastLayer:Dy,Group:Oy,DD:J_,Shape:$,shapes:dy,Animation:Ay,Tween:Ry,Easings:zy,Context:B_,Canvas:G_}),Vy=class extends ${_sceneFunc(e){var t=J.getAngle(this.angle()),n=this.clockwise();e.beginPath(),e.arc(0,0,this.outerRadius(),0,t,n),e.arc(0,0,this.innerRadius(),t,0,!n),e.closePath(),e.fillStrokeShape(this)}getWidth(){return this.outerRadius()*2}getHeight(){return this.outerRadius()*2}setWidth(e){this.outerRadius(e/2)}setHeight(e){this.outerRadius(e/2)}};Vy.prototype._centroid=!0,Vy.prototype.className=`Arc`,Vy.prototype._attrsAffectingSize=[`innerRadius`,`outerRadius`],$g(Vy),Z.addGetterSetter(Vy,`innerRadius`,0,X()),Z.addGetterSetter(Vy,`outerRadius`,0,X()),Z.addGetterSetter(Vy,`angle`,0,X()),Z.addGetterSetter(Vy,`clockwise`,!1,w_());function Hy(e,t,n,r,i,a,o){var s=Math.sqrt((n-e)**2+(r-t)**2),c=Math.sqrt((i-n)**2+(a-r)**2),l=o*s/(s+c),u=o*c/(s+c);return[n-l*(i-e),r-l*(a-t),n+u*(i-e),r+u*(a-t)]}function Uy(e,t){var n=e.length,r=[],i,a;for(i=2;i<n-2;i+=2)a=Hy(e[i-2],e[i-1],e[i],e[i+1],e[i+2],e[i+3],t),!isNaN(a[0])&&(r.push(a[0]),r.push(a[1]),r.push(e[i]),r.push(e[i+1]),r.push(a[2]),r.push(a[3]));return r}var Wy=class extends ${constructor(e){super(e),this.on(`pointsChange.konva tensionChange.konva closedChange.konva bezierChange.konva`,function(){this._clearCache(`tensionPoints`)})}_sceneFunc(e){var t=this.points(),n=t.length,r=this.tension(),i=this.closed(),a=this.bezier(),o,s,c;if(n){if(e.beginPath(),e.moveTo(t[0],t[1]),r!==0&&n>4){for(o=this.getTensionPoints(),s=o.length,c=i?0:4,i||e.quadraticCurveTo(o[0],o[1],o[2],o[3]);c<s-2;)e.bezierCurveTo(o[c++],o[c++],o[c++],o[c++],o[c++],o[c++]);i||e.quadraticCurveTo(o[s-2],o[s-1],t[n-2],t[n-1])}else if(a)for(c=2;c<n;)e.bezierCurveTo(t[c++],t[c++],t[c++],t[c++],t[c++],t[c++]);else for(c=2;c<n;c+=2)e.lineTo(t[c],t[c+1]);i?(e.closePath(),e.fillStrokeShape(this)):e.strokeShape(this)}}getTensionPoints(){return this._getCache(`tensionPoints`,this._getTensionPoints)}_getTensionPoints(){return this.closed()?this._getTensionPointsClosed():Uy(this.points(),this.tension())}_getTensionPointsClosed(){var e=this.points(),t=e.length,n=this.tension(),r=Hy(e[t-2],e[t-1],e[0],e[1],e[2],e[3],n),i=Hy(e[t-4],e[t-3],e[t-2],e[t-1],e[0],e[1],n),a=Uy(e,n);return[r[2],r[3]].concat(a,[i[0],i[1],e[t-2],e[t-1],i[2],i[3],r[0],r[1],e[0],e[1]])}getWidth(){return this.getSelfRect().width}getHeight(){return this.getSelfRect().height}getSelfRect(){var e=this.points();if(e.length<4)return{x:e[0]||0,y:e[1]||0,width:0,height:0};e=this.tension()===0?this.points():[e[0],e[1],...this._getTensionPoints(),e[e.length-2],e[e.length-1]];for(var t=e[0],n=e[0],r=e[1],i=e[1],a,o,s=0;s<e.length/2;s++)a=e[s*2],o=e[s*2+1],t=Math.min(t,a),n=Math.max(n,a),r=Math.min(r,o),i=Math.max(i,o);return{x:t,y:r,width:n-t,height:i-r}}};Wy.prototype.className=`Line`,Wy.prototype._attrsAffectingSize=[`points`,`bezier`,`tension`],$g(Wy),Z.addGetterSetter(Wy,`closed`,!1),Z.addGetterSetter(Wy,`bezier`,!1),Z.addGetterSetter(Wy,`tension`,0,X()),Z.addGetterSetter(Wy,`points`,[],C_());var Gy=class e extends ${constructor(t){super(t),this.dataArray=[],this.pathLength=0,this.dataArray=e.parsePathData(this.data()),this.pathLength=0;for(var n=0;n<this.dataArray.length;++n)this.pathLength+=this.dataArray[n].pathLength;this.on(`dataChange.konva`,function(){this.dataArray=e.parsePathData(this.data()),this.pathLength=0;for(var t=0;t<this.dataArray.length;++t)this.pathLength+=this.dataArray[t].pathLength})}_sceneFunc(e){var t=this.dataArray;e.beginPath();for(var n=!1,r=0;r<t.length;r++){var i=t[r].command,a=t[r].points;switch(i){case`L`:e.lineTo(a[0],a[1]);break;case`M`:e.moveTo(a[0],a[1]);break;case`C`:e.bezierCurveTo(a[0],a[1],a[2],a[3],a[4],a[5]);break;case`Q`:e.quadraticCurveTo(a[0],a[1],a[2],a[3]);break;case`A`:var o=a[0],s=a[1],c=a[2],l=a[3],u=a[4],d=a[5],f=a[6],p=a[7],m=c>l?c:l,h=c>l?1:c/l,g=c>l?l/c:1;e.translate(o,s),e.rotate(f),e.scale(h,g),e.arc(0,0,m,u,u+d,1-p),e.scale(1/h,1/g),e.rotate(-f),e.translate(-o,-s);break;case`z`:n=!0,e.closePath();break}}!n&&!this.hasFill()?e.strokeShape(this):e.fillStrokeShape(this)}getSelfRect(){var t=[];this.dataArray.forEach(function(n){if(n.command===`A`){var r=n.points[4],i=n.points[5],a=n.points[4]+i,o=Math.PI/180;if(Math.abs(r-a)<o&&(o=Math.abs(r-a)),i<0)for(let i=r-o;i>a;i-=o){let r=e.getPointOnEllipticalArc(n.points[0],n.points[1],n.points[2],n.points[3],i,0);t.push(r.x,r.y)}else for(let i=r+o;i<a;i+=o){let r=e.getPointOnEllipticalArc(n.points[0],n.points[1],n.points[2],n.points[3],i,0);t.push(r.x,r.y)}}else if(n.command===`C`)for(let r=0;r<=1;r+=.01){let i=e.getPointOnCubicBezier(r,n.start.x,n.start.y,n.points[0],n.points[1],n.points[2],n.points[3],n.points[4],n.points[5]);t.push(i.x,i.y)}else t=t.concat(n.points)});for(var n=t[0],r=t[0],i=t[1],a=t[1],o,s,c=0;c<t.length/2;c++)o=t[c*2],s=t[c*2+1],isNaN(o)||(n=Math.min(n,o),r=Math.max(r,o)),isNaN(s)||(i=Math.min(i,s),a=Math.max(a,s));return{x:Math.round(n),y:Math.round(i),width:Math.round(r-n),height:Math.round(a-i)}}getLength(){return this.pathLength}getPointAtLength(t){var n,r=0,i=this.dataArray.length;if(!i)return null;for(;r<i&&t>this.dataArray[r].pathLength;)t-=this.dataArray[r].pathLength,++r;if(r===i)return n=this.dataArray[r-1].points.slice(-2),{x:n[0],y:n[1]};if(t<.01)return n=this.dataArray[r].points.slice(0,2),{x:n[0],y:n[1]};var a=this.dataArray[r],o=a.points;switch(a.command){case`L`:return e.getPointOnLine(t,a.start.x,a.start.y,o[0],o[1]);case`C`:return e.getPointOnCubicBezier(t/a.pathLength,a.start.x,a.start.y,o[0],o[1],o[2],o[3],o[4],o[5]);case`Q`:return e.getPointOnQuadraticBezier(t/a.pathLength,a.start.x,a.start.y,o[0],o[1],o[2],o[3]);case`A`:var s=o[0],c=o[1],l=o[2],u=o[3],d=o[4],f=o[5],p=o[6];return d+=f*t/a.pathLength,e.getPointOnEllipticalArc(s,c,l,u,d,p)}return null}static getLineLength(e,t,n,r){return Math.sqrt((n-e)*(n-e)+(r-t)*(r-t))}static getPointOnLine(e,t,n,r,i,a,o){a===void 0&&(a=t),o===void 0&&(o=n);var s=(i-n)/(r-t+1e-8),c=Math.sqrt(e*e/(1+s*s));r<t&&(c*=-1);var l=s*c,u;if(r===t)u={x:a,y:o+l};else if((o-n)/(a-t+1e-8)===s)u={x:a+c,y:o+l};else{var d,f,p=this.getLineLength(t,n,r,i),m=(a-t)*(r-t)+(o-n)*(i-n);m/=p*p,d=t+m*(r-t),f=n+m*(i-n);var h=this.getLineLength(a,o,d,f),g=Math.sqrt(e*e-h*h);c=Math.sqrt(g*g/(1+s*s)),r<t&&(c*=-1),l=s*c,u={x:d+c,y:f+l}}return u}static getPointOnCubicBezier(e,t,n,r,i,a,o,s,c){function l(e){return e*e*e}function u(e){return 3*e*e*(1-e)}function d(e){return 3*e*(1-e)*(1-e)}function f(e){return(1-e)*(1-e)*(1-e)}return{x:s*l(e)+a*u(e)+r*d(e)+t*f(e),y:c*l(e)+o*u(e)+i*d(e)+n*f(e)}}static getPointOnQuadraticBezier(e,t,n,r,i,a,o){function s(e){return e*e}function c(e){return 2*e*(1-e)}function l(e){return(1-e)*(1-e)}return{x:a*s(e)+r*c(e)+t*l(e),y:o*s(e)+i*c(e)+n*l(e)}}static getPointOnEllipticalArc(e,t,n,r,i,a){var o=Math.cos(a),s=Math.sin(a),c={x:n*Math.cos(i),y:r*Math.sin(i)};return{x:e+(c.x*o-c.y*s),y:t+(c.x*s+c.y*o)}}static parsePathData(e){if(!e)return[];var t=e,n=[`m`,`M`,`l`,`L`,`v`,`V`,`h`,`H`,`z`,`Z`,`c`,`C`,`q`,`Q`,`t`,`T`,`s`,`S`,`a`,`A`];t=t.replace(RegExp(` `,`g`),`,`);for(var r=0;r<n.length;r++)t=t.replace(new RegExp(n[r],`g`),`|`+n[r]);var i=t.split(`|`),a=[],o=[],s=0,c=0,l=/([-+]?((\d+\.\d+)|((\d+)|(\.\d+)))(?:e[-+]?\d+)?)/gi,u;for(r=1;r<i.length;r++){var d=i[r],f=d.charAt(0);for(d=d.slice(1),o.length=0;u=l.exec(d);)o.push(u[0]);for(var p=[],m=0,h=o.length;m<h;m++){if(o[m]===`00`){p.push(0,0);continue}var g=parseFloat(o[m]);isNaN(g)?p.push(0):p.push(g)}for(;p.length>0&&!isNaN(p[0]);){var _=null,v=[],y=s,b=c,x,S,C,w,T,E,D,O,ee,te;switch(f){case`l`:s+=p.shift(),c+=p.shift(),_=`L`,v.push(s,c);break;case`L`:s=p.shift(),c=p.shift(),v.push(s,c);break;case`m`:var k=p.shift(),A=p.shift();if(s+=k,c+=A,_=`M`,a.length>2&&a[a.length-1].command===`z`){for(var ne=a.length-2;ne>=0;ne--)if(a[ne].command===`M`){s=a[ne].points[0]+k,c=a[ne].points[1]+A;break}}v.push(s,c),f=`l`;break;case`M`:s=p.shift(),c=p.shift(),_=`M`,v.push(s,c),f=`L`;break;case`h`:s+=p.shift(),_=`L`,v.push(s,c);break;case`H`:s=p.shift(),_=`L`,v.push(s,c);break;case`v`:c+=p.shift(),_=`L`,v.push(s,c);break;case`V`:c=p.shift(),_=`L`,v.push(s,c);break;case`C`:v.push(p.shift(),p.shift(),p.shift(),p.shift()),s=p.shift(),c=p.shift(),v.push(s,c);break;case`c`:v.push(s+p.shift(),c+p.shift(),s+p.shift(),c+p.shift()),s+=p.shift(),c+=p.shift(),_=`C`,v.push(s,c);break;case`S`:S=s,C=c,x=a[a.length-1],x.command===`C`&&(S=s+(s-x.points[2]),C=c+(c-x.points[3])),v.push(S,C,p.shift(),p.shift()),s=p.shift(),c=p.shift(),_=`C`,v.push(s,c);break;case`s`:S=s,C=c,x=a[a.length-1],x.command===`C`&&(S=s+(s-x.points[2]),C=c+(c-x.points[3])),v.push(S,C,s+p.shift(),c+p.shift()),s+=p.shift(),c+=p.shift(),_=`C`,v.push(s,c);break;case`Q`:v.push(p.shift(),p.shift()),s=p.shift(),c=p.shift(),v.push(s,c);break;case`q`:v.push(s+p.shift(),c+p.shift()),s+=p.shift(),c+=p.shift(),_=`Q`,v.push(s,c);break;case`T`:S=s,C=c,x=a[a.length-1],x.command===`Q`&&(S=s+(s-x.points[0]),C=c+(c-x.points[1])),s=p.shift(),c=p.shift(),_=`Q`,v.push(S,C,s,c);break;case`t`:S=s,C=c,x=a[a.length-1],x.command===`Q`&&(S=s+(s-x.points[0]),C=c+(c-x.points[1])),s+=p.shift(),c+=p.shift(),_=`Q`,v.push(S,C,s,c);break;case`A`:w=p.shift(),T=p.shift(),E=p.shift(),D=p.shift(),O=p.shift(),ee=s,te=c,s=p.shift(),c=p.shift(),_=`A`,v=this.convertEndpointToCenterParameterization(ee,te,s,c,D,O,w,T,E);break;case`a`:w=p.shift(),T=p.shift(),E=p.shift(),D=p.shift(),O=p.shift(),ee=s,te=c,s+=p.shift(),c+=p.shift(),_=`A`,v=this.convertEndpointToCenterParameterization(ee,te,s,c,D,O,w,T,E);break}a.push({command:_||f,points:v,start:{x:y,y:b},pathLength:this.calcLength(y,b,_||f,v)})}(f===`z`||f===`Z`)&&a.push({command:`z`,points:[],start:void 0,pathLength:0})}return a}static calcLength(t,n,r,i){var a,o,s,c,l=e;switch(r){case`L`:return l.getLineLength(t,n,i[0],i[1]);case`C`:for(a=0,o=l.getPointOnCubicBezier(0,t,n,i[0],i[1],i[2],i[3],i[4],i[5]),c=.01;c<=1;c+=.01)s=l.getPointOnCubicBezier(c,t,n,i[0],i[1],i[2],i[3],i[4],i[5]),a+=l.getLineLength(o.x,o.y,s.x,s.y),o=s;return a;case`Q`:for(a=0,o=l.getPointOnQuadraticBezier(0,t,n,i[0],i[1],i[2],i[3]),c=.01;c<=1;c+=.01)s=l.getPointOnQuadraticBezier(c,t,n,i[0],i[1],i[2],i[3]),a+=l.getLineLength(o.x,o.y,s.x,s.y),o=s;return a;case`A`:a=0;var u=i[4],d=i[5],f=i[4]+d,p=Math.PI/180;if(Math.abs(u-f)<p&&(p=Math.abs(u-f)),o=l.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],u,0),d<0)for(c=u-p;c>f;c-=p)s=l.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],c,0),a+=l.getLineLength(o.x,o.y,s.x,s.y),o=s;else for(c=u+p;c<f;c+=p)s=l.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],c,0),a+=l.getLineLength(o.x,o.y,s.x,s.y),o=s;return s=l.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],f,0),a+=l.getLineLength(o.x,o.y,s.x,s.y),a}return 0}static convertEndpointToCenterParameterization(e,t,n,r,i,a,o,s,c){var l=Math.PI/180*c,u=Math.cos(l)*(e-n)/2+Math.sin(l)*(t-r)/2,d=-1*Math.sin(l)*(e-n)/2+Math.cos(l)*(t-r)/2,f=u*u/(o*o)+d*d/(s*s);f>1&&(o*=Math.sqrt(f),s*=Math.sqrt(f));var p=Math.sqrt((o*o*(s*s)-o*o*(d*d)-s*s*(u*u))/(o*o*(d*d)+s*s*(u*u)));i===a&&(p*=-1),isNaN(p)&&(p=0);var m=p*o*d/s,h=p*-s*u/o,g=(e+n)/2+Math.cos(l)*m-Math.sin(l)*h,_=(t+r)/2+Math.sin(l)*m+Math.cos(l)*h,v=function(e){return Math.sqrt(e[0]*e[0]+e[1]*e[1])},y=function(e,t){return(e[0]*t[0]+e[1]*t[1])/(v(e)*v(t))},b=function(e,t){return(e[0]*t[1]<e[1]*t[0]?-1:1)*Math.acos(y(e,t))},x=b([1,0],[(u-m)/o,(d-h)/s]),S=[(u-m)/o,(d-h)/s],C=[(-1*u-m)/o,(-1*d-h)/s],w=b(S,C);return y(S,C)<=-1&&(w=Math.PI),y(S,C)>=1&&(w=0),a===0&&w>0&&(w-=2*Math.PI),a===1&&w<0&&(w+=2*Math.PI),[g,_,o,s,x,w,l,a]}};Gy.prototype.className=`Path`,Gy.prototype._attrsAffectingSize=[`data`],$g(Gy),Z.addGetterSetter(Gy,`data`);var Ky=class extends Wy{_sceneFunc(e){super._sceneFunc(e);var t=Math.PI*2,n=this.points(),r=n,i=this.tension()!==0&&n.length>4;i&&(r=this.getTensionPoints());var a=this.pointerLength(),o=n.length,s,c;if(i){let e=[r[r.length-4],r[r.length-3],r[r.length-2],r[r.length-1],n[o-2],n[o-1]],t=Gy.calcLength(r[r.length-4],r[r.length-3],`C`,e),i=Gy.getPointOnQuadraticBezier(Math.min(1,1-a/t),e[0],e[1],e[2],e[3],e[4],e[5]);s=n[o-2]-i.x,c=n[o-1]-i.y}else s=n[o-2]-n[o-4],c=n[o-1]-n[o-3];var l=(Math.atan2(c,s)+t)%t,u=this.pointerWidth();this.pointerAtEnding()&&(e.save(),e.beginPath(),e.translate(n[o-2],n[o-1]),e.rotate(l),e.moveTo(0,0),e.lineTo(-a,u/2),e.lineTo(-a,-u/2),e.closePath(),e.restore(),this.__fillStroke(e)),this.pointerAtBeginning()&&(e.save(),e.beginPath(),e.translate(n[0],n[1]),i?(s=(r[0]+r[2])/2-n[0],c=(r[1]+r[3])/2-n[1]):(s=n[2]-n[0],c=n[3]-n[1]),e.rotate((Math.atan2(-c,-s)+t)%t),e.moveTo(0,0),e.lineTo(-a,u/2),e.lineTo(-a,-u/2),e.closePath(),e.restore(),this.__fillStroke(e))}__fillStroke(e){var t=this.dashEnabled();t&&(this.attrs.dashEnabled=!1,e.setLineDash([])),e.fillStrokeShape(this),t&&(this.attrs.dashEnabled=!0)}getSelfRect(){let e=super.getSelfRect(),t=this.pointerWidth()/2;return{x:e.x-t,y:e.y-t,width:e.width+t*2,height:e.height+t*2}}};Ky.prototype.className=`Arrow`,$g(Ky),Z.addGetterSetter(Ky,`pointerLength`,10,X()),Z.addGetterSetter(Ky,`pointerWidth`,10,X()),Z.addGetterSetter(Ky,`pointerAtBeginning`,!1),Z.addGetterSetter(Ky,`pointerAtEnding`,!0);var qy=class extends ${_sceneFunc(e){e.beginPath(),e.arc(0,0,this.attrs.radius||0,0,Math.PI*2,!1),e.closePath(),e.fillStrokeShape(this)}getWidth(){return this.radius()*2}getHeight(){return this.radius()*2}setWidth(e){this.radius()!==e/2&&this.radius(e/2)}setHeight(e){this.radius()!==e/2&&this.radius(e/2)}};qy.prototype._centroid=!0,qy.prototype.className=`Circle`,qy.prototype._attrsAffectingSize=[`radius`],$g(qy),Z.addGetterSetter(qy,`radius`,0,X());var Jy=class extends ${_sceneFunc(e){var t=this.radiusX(),n=this.radiusY();e.beginPath(),e.save(),t!==n&&e.scale(1,n/t),e.arc(0,0,t,0,Math.PI*2,!1),e.restore(),e.closePath(),e.fillStrokeShape(this)}getWidth(){return this.radiusX()*2}getHeight(){return this.radiusY()*2}setWidth(e){this.radiusX(e/2)}setHeight(e){this.radiusY(e/2)}};Jy.prototype.className=`Ellipse`,Jy.prototype._centroid=!0,Jy.prototype._attrsAffectingSize=[`radiusX`,`radiusY`],$g(Jy),Z.addComponentsGetterSetter(Jy,`radius`,[`x`,`y`]),Z.addGetterSetter(Jy,`radiusX`,0,X()),Z.addGetterSetter(Jy,`radiusY`,0,X());var Yy=class e extends ${constructor(e){super(e),this.on(`imageChange.konva`,()=>{this._setImageLoad()}),this._setImageLoad()}_setImageLoad(){let e=this.image();e&&e.complete||e&&e.readyState===4||e&&e.addEventListener&&e.addEventListener(`load`,()=>{this._requestDraw()})}_useBufferCanvas(){return super._useBufferCanvas(!0)}_sceneFunc(e){let t=this.getWidth(),n=this.getHeight(),r=this.attrs.image,i;if(r){let e=this.attrs.cropWidth,a=this.attrs.cropHeight;i=e&&a?[r,this.cropX(),this.cropY(),e,a,0,0,t,n]:[r,0,0,t,n]}(this.hasFill()||this.hasStroke())&&(e.beginPath(),e.rect(0,0,t,n),e.closePath(),e.fillStrokeShape(this)),r&&e.drawImage.apply(e,i)}_hitFunc(e){var t=this.width(),n=this.height();e.beginPath(),e.rect(0,0,t,n),e.closePath(),e.fillStrokeShape(this)}getWidth(){return this.attrs.width??this.image()?.width}getHeight(){return this.attrs.height??this.image()?.height}static fromURL(t,n){var r=Y.createImageElement();r.onload=function(){n(new e({image:r}))},r.crossOrigin=`Anonymous`,r.src=t}};Yy.prototype.className=`Image`,$g(Yy),Z.addGetterSetter(Yy,`image`),Z.addComponentsGetterSetter(Yy,`crop`,[`x`,`y`,`width`,`height`]),Z.addGetterSetter(Yy,`cropX`,0,X()),Z.addGetterSetter(Yy,`cropY`,0,X()),Z.addGetterSetter(Yy,`cropWidth`,0,X()),Z.addGetterSetter(Yy,`cropHeight`,0,X());var Xy=[`fontFamily`,`fontSize`,`fontStyle`,`padding`,`lineHeight`,`text`,`width`,`height`],Zy=`Change.konva`,Qy=`none`,$y=`up`,eb=`right`,tb=`down`,nb=`left`,rb=Xy.length,ib=class extends Oy{constructor(e){super(e),this.on(`add.konva`,function(e){this._addListeners(e.child),this._sync()})}getText(){return this.find(`Text`)[0]}getTag(){return this.find(`Tag`)[0]}_addListeners(e){var t=this,n,r=function(){t._sync()};for(n=0;n<rb;n++)e.on(Xy[n]+Zy,r)}getWidth(){return this.getText().width()}getHeight(){return this.getText().height()}_sync(){var e=this.getText(),t=this.getTag(),n,r,i,a,o,s,c;if(e&&t){switch(n=e.width(),r=e.height(),i=t.pointerDirection(),a=t.pointerWidth(),c=t.pointerHeight(),o=0,s=0,i){case $y:o=n/2,s=-1*c;break;case eb:o=n+a,s=r/2;break;case tb:o=n/2,s=r+c;break;case nb:o=-1*a,s=r/2;break}t.setAttrs({x:-1*o,y:-1*s,width:n,height:r}),e.setAttrs({x:-1*o,y:-1*s})}}};ib.prototype.className=`Label`,$g(ib);var ab=class extends ${_sceneFunc(e){var t=this.width(),n=this.height(),r=this.pointerDirection(),i=this.pointerWidth(),a=this.pointerHeight(),o=this.cornerRadius();let s=0,c=0,l=0,u=0;typeof o==`number`?s=c=l=u=Math.min(o,t/2,n/2):(s=Math.min(o[0]||0,t/2,n/2),c=Math.min(o[1]||0,t/2,n/2),u=Math.min(o[2]||0,t/2,n/2),l=Math.min(o[3]||0,t/2,n/2)),e.beginPath(),e.moveTo(s,0),r===$y&&(e.lineTo((t-i)/2,0),e.lineTo(t/2,-1*a),e.lineTo((t+i)/2,0)),e.lineTo(t-c,0),e.arc(t-c,c,c,Math.PI*3/2,0,!1),r===eb&&(e.lineTo(t,(n-a)/2),e.lineTo(t+i,n/2),e.lineTo(t,(n+a)/2)),e.lineTo(t,n-u),e.arc(t-u,n-u,u,0,Math.PI/2,!1),r===tb&&(e.lineTo((t+i)/2,n),e.lineTo(t/2,n+a),e.lineTo((t-i)/2,n)),e.lineTo(l,n),e.arc(l,n-l,l,Math.PI/2,Math.PI,!1),r===nb&&(e.lineTo(0,(n+a)/2),e.lineTo(-1*i,n/2),e.lineTo(0,(n-a)/2)),e.lineTo(0,s),e.arc(s,s,s,Math.PI,Math.PI*3/2,!1),e.closePath(),e.fillStrokeShape(this)}getSelfRect(){var e=0,t=0,n=this.pointerWidth(),r=this.pointerHeight(),i=this.pointerDirection(),a=this.width(),o=this.height();return i===$y?(t-=r,o+=r):i===tb?o+=r:i===nb?(e-=n*1.5,a+=n):i===eb&&(a+=n*1.5),{x:e,y:t,width:a,height:o}}};ab.prototype.className=`Tag`,$g(ab),Z.addGetterSetter(ab,`pointerDirection`,Qy),Z.addGetterSetter(ab,`pointerWidth`,0,X()),Z.addGetterSetter(ab,`pointerHeight`,0,X()),Z.addGetterSetter(ab,`cornerRadius`,0,y_(4));var ob=class extends ${_sceneFunc(e){var t=this.cornerRadius(),n=this.width(),r=this.height();if(e.beginPath(),!t)e.rect(0,0,n,r);else{let i=0,a=0,o=0,s=0;typeof t==`number`?i=a=o=s=Math.min(t,n/2,r/2):(i=Math.min(t[0]||0,n/2,r/2),a=Math.min(t[1]||0,n/2,r/2),s=Math.min(t[2]||0,n/2,r/2),o=Math.min(t[3]||0,n/2,r/2)),e.moveTo(i,0),e.lineTo(n-a,0),e.arc(n-a,a,a,Math.PI*3/2,0,!1),e.lineTo(n,r-s),e.arc(n-s,r-s,s,0,Math.PI/2,!1),e.lineTo(o,r),e.arc(o,r-o,o,Math.PI/2,Math.PI,!1),e.lineTo(0,i),e.arc(i,i,i,Math.PI,Math.PI*3/2,!1)}e.closePath(),e.fillStrokeShape(this)}};ob.prototype.className=`Rect`,$g(ob),Z.addGetterSetter(ob,`cornerRadius`,0,y_(4));var sb=class extends ${_sceneFunc(e){let t=this._getPoints();e.beginPath(),e.moveTo(t[0].x,t[0].y);for(var n=1;n<t.length;n++)e.lineTo(t[n].x,t[n].y);e.closePath(),e.fillStrokeShape(this)}_getPoints(){let e=this.attrs.sides,t=this.attrs.radius||0,n=[];for(var r=0;r<e;r++)n.push({x:t*Math.sin(r*2*Math.PI/e),y:-1*t*Math.cos(r*2*Math.PI/e)});return n}getSelfRect(){let e=this._getPoints();var t=e[0].x,n=e[0].y,r=e[0].x,i=e[0].y;return e.forEach(e=>{t=Math.min(t,e.x),n=Math.max(n,e.x),r=Math.min(r,e.y),i=Math.max(i,e.y)}),{x:t,y:r,width:n-t,height:i-r}}getWidth(){return this.radius()*2}getHeight(){return this.radius()*2}setWidth(e){this.radius(e/2)}setHeight(e){this.radius(e/2)}};sb.prototype.className=`RegularPolygon`,sb.prototype._centroid=!0,sb.prototype._attrsAffectingSize=[`radius`],$g(sb),Z.addGetterSetter(sb,`radius`,0,X()),Z.addGetterSetter(sb,`sides`,0,X());var cb=Math.PI*2,lb=class extends ${_sceneFunc(e){e.beginPath(),e.arc(0,0,this.innerRadius(),0,cb,!1),e.moveTo(this.outerRadius(),0),e.arc(0,0,this.outerRadius(),cb,0,!0),e.closePath(),e.fillStrokeShape(this)}getWidth(){return this.outerRadius()*2}getHeight(){return this.outerRadius()*2}setWidth(e){this.outerRadius(e/2)}setHeight(e){this.outerRadius(e/2)}};lb.prototype.className=`Ring`,lb.prototype._centroid=!0,lb.prototype._attrsAffectingSize=[`innerRadius`,`outerRadius`],$g(lb),Z.addGetterSetter(lb,`innerRadius`,0,X()),Z.addGetterSetter(lb,`outerRadius`,0,X());var ub=class extends ${constructor(e){super(e),this._updated=!0,this.anim=new Ay(()=>{var e=this._updated;return this._updated=!1,e}),this.on(`animationChange.konva`,function(){this.frameIndex(0)}),this.on(`frameIndexChange.konva`,function(){this._updated=!0}),this.on(`frameRateChange.konva`,function(){this.anim.isRunning()&&(clearInterval(this.interval),this._setInterval())})}_sceneFunc(e){var t=this.animation(),n=this.frameIndex(),r=n*4,i=this.animations()[t],a=this.frameOffsets(),o=i[r+0],s=i[r+1],c=i[r+2],l=i[r+3],u=this.image();if((this.hasFill()||this.hasStroke())&&(e.beginPath(),e.rect(0,0,c,l),e.closePath(),e.fillStrokeShape(this)),u)if(a){var d=a[t],f=n*2;e.drawImage(u,o,s,c,l,d[f+0],d[f+1],c,l)}else e.drawImage(u,o,s,c,l,0,0,c,l)}_hitFunc(e){var t=this.animation(),n=this.frameIndex(),r=n*4,i=this.animations()[t],a=this.frameOffsets(),o=i[r+2],s=i[r+3];if(e.beginPath(),a){var c=a[t],l=n*2;e.rect(c[l+0],c[l+1],o,s)}else e.rect(0,0,o,s);e.closePath(),e.fillShape(this)}_useBufferCanvas(){return super._useBufferCanvas(!0)}_setInterval(){var e=this;this.interval=setInterval(function(){e._updateIndex()},1e3/this.frameRate())}start(){if(!this.isRunning()){var e=this.getLayer();this.anim.setLayers(e),this._setInterval(),this.anim.start()}}stop(){this.anim.stop(),clearInterval(this.interval)}isRunning(){return this.anim.isRunning()}_updateIndex(){var e=this.frameIndex(),t=this.animation();e<this.animations()[t].length/4-1?this.frameIndex(e+1):this.frameIndex(0)}};ub.prototype.className=`Sprite`,$g(ub),Z.addGetterSetter(ub,`animation`),Z.addGetterSetter(ub,`animations`),Z.addGetterSetter(ub,`frameOffsets`),Z.addGetterSetter(ub,`image`),Z.addGetterSetter(ub,`frameIndex`,0,X()),Z.addGetterSetter(ub,`frameRate`,17,X()),Z.backCompat(ub,{index:`frameIndex`,getIndex:`getFrameIndex`,setIndex:`setFrameIndex`});var db=class extends ${_sceneFunc(e){var t=this.innerRadius(),n=this.outerRadius(),r=this.numPoints();e.beginPath(),e.moveTo(0,0-n);for(var i=1;i<r*2;i++){var a=i%2==0?n:t,o=a*Math.sin(i*Math.PI/r),s=-1*a*Math.cos(i*Math.PI/r);e.lineTo(o,s)}e.closePath(),e.fillStrokeShape(this)}getWidth(){return this.outerRadius()*2}getHeight(){return this.outerRadius()*2}setWidth(e){this.outerRadius(e/2)}setHeight(e){this.outerRadius(e/2)}};db.prototype.className=`Star`,db.prototype._centroid=!0,db.prototype._attrsAffectingSize=[`innerRadius`,`outerRadius`],$g(db),Z.addGetterSetter(db,`numPoints`,5,X()),Z.addGetterSetter(db,`innerRadius`,0,X()),Z.addGetterSetter(db,`outerRadius`,0,X());function fb(e){return Array.from(e)}var pb=`auto`,mb=`center`,hb=`justify`,gb=`Change.konva`,_b=`2d`,vb=`-`,yb=`left`,bb=`text`,xb=`Text`,Sb=`top`,Cb=`bottom`,wb=`middle`,Tb=`normal`,Eb=`px `,Db=` `,Ob=`right`,kb=`word`,Ab=`char`,jb=`none`,Mb=`…`,Nb=[`fontFamily`,`fontSize`,`fontStyle`,`fontVariant`,`padding`,`align`,`verticalAlign`,`lineHeight`,`text`,`width`,`height`,`wrap`,`ellipsis`,`letterSpacing`],Pb=Nb.length;function Fb(e){return e.split(`,`).map(e=>{e=e.trim();let t=e.indexOf(` `)>=0,n=e.indexOf(`"`)>=0||e.indexOf(`'`)>=0;return t&&!n&&(e=`"${e}"`),e}).join(`, `)}var Ib;function Lb(){return Ib||(Ib=Y.createCanvasElement().getContext(_b),Ib)}function Rb(e){e.fillText(this._partialText,this._partialTextX,this._partialTextY)}function zb(e){e.strokeText(this._partialText,this._partialTextX,this._partialTextY)}function Bb(e){return e||={},!e.fillLinearGradientColorStops&&!e.fillRadialGradientColorStops&&!e.fillPatternImage&&(e.fill=e.fill||`black`),e}var Vb=class extends ${constructor(e){super(Bb(e)),this._partialTextX=0,this._partialTextY=0;for(var t=0;t<Pb;t++)this.on(Nb[t]+gb,this._setTextData);this._setTextData()}_sceneFunc(e){var t=this.textArr,n=t.length;if(this.text()){var r=this.padding(),i=this.fontSize(),a=this.lineHeight()*i,o=this.verticalAlign(),s=0,c=this.align(),l=this.getWidth(),u=this.letterSpacing(),d=this.fill(),f=this.textDecoration(),p=f.indexOf(`underline`)!==-1,m=f.indexOf(`line-through`)!==-1,h,g=0,g=a/2,_=0,v=0;for(e.setAttr(`font`,this._getContextFont()),e.setAttr(`textBaseline`,wb),e.setAttr(`textAlign`,yb),o===wb?s=(this.getHeight()-n*a-r*2)/2:o===Cb&&(s=this.getHeight()-n*a-r*2),e.translate(r,s+r),h=0;h<n;h++){var _=0,v=0,y=t[h],b=y.text,x=y.width,S=h!==n-1,C,w,T;if(e.save(),c===Ob?_+=l-x-r*2:c===mb&&(_+=(l-x-r*2)/2),p&&(e.save(),e.beginPath(),e.moveTo(_,g+v+Math.round(i/2)),C=b.split(` `).length-1,w=C===0,T=c===hb&&S&&!w?l-r*2:x,e.lineTo(_+Math.round(T),g+v+Math.round(i/2)),e.lineWidth=i/15,e.strokeStyle=d,e.stroke(),e.restore()),m&&(e.save(),e.beginPath(),e.moveTo(_,g+v),C=b.split(` `).length-1,w=C===0,T=c===hb&&S&&!w?l-r*2:x,e.lineTo(_+Math.round(T),g+v),e.lineWidth=i/15,e.strokeStyle=d,e.stroke(),e.restore()),u!==0||c===hb){C=b.split(` `).length-1;for(var E=fb(b),D=0;D<E.length;D++){var O=E[D];O===` `&&h!==n-1&&c===hb&&(_+=(l-r*2-x)/C),this._partialTextX=_,this._partialTextY=g+v,this._partialText=O,e.fillStrokeShape(this),_+=this.measureSize(O).width+u}}else this._partialTextX=_,this._partialTextY=g+v,this._partialText=b,e.fillStrokeShape(this);e.restore(),n>1&&(g+=a)}}}_hitFunc(e){var t=this.getWidth(),n=this.getHeight();e.beginPath(),e.rect(0,0,t,n),e.closePath(),e.fillStrokeShape(this)}setText(e){var t=Y._isString(e)?e:e==null?``:e+``;return this._setAttr(bb,t),this}getWidth(){return this.attrs.width===pb||this.attrs.width===void 0?this.getTextWidth()+this.padding()*2:this.attrs.width}getHeight(){return this.attrs.height===pb||this.attrs.height===void 0?this.fontSize()*this.textArr.length*this.lineHeight()+this.padding()*2:this.attrs.height}getTextWidth(){return this.textWidth}getTextHeight(){return Y.warn(`text.getTextHeight() method is deprecated. Use text.height() - for full height and text.fontSize() - for one line height.`),this.textHeight}measureSize(e){var t=Lb(),n=this.fontSize(),r;return t.save(),t.font=this._getContextFont(),r=t.measureText(e),t.restore(),{width:r.width,height:n}}_getContextFont(){return this.fontStyle()+Db+this.fontVariant()+Db+(this.fontSize()+Eb)+Fb(this.fontFamily())}_addTextLine(e){this.align()===hb&&(e=e.trim());var t=this._getTextWidth(e);return this.textArr.push({text:e,width:t})}_getTextWidth(e){var t=this.letterSpacing(),n=e.length;return Lb().measureText(e).width+(n?t*(n-1):0)}_setTextData(){var e=this.text().split(`
|
|
184
|
+
`),t=+this.fontSize(),n=0,r=this.lineHeight()*t,i=this.attrs.width,a=this.attrs.height,o=i!==pb&&i!==void 0,s=a!==pb&&a!==void 0,c=this.padding(),l=i-c*2,u=a-c*2,d=0,f=this.wrap(),p=f!==jb,m=f!==Ab&&p,h=this.ellipsis();this.textArr=[],Lb().font=this._getContextFont();for(var g=h?this._getTextWidth(Mb):0,_=0,v=e.length;_<v;++_){var y=e[_],b=this._getTextWidth(y);if(o&&b>l)for(;y.length>0;){for(var x=0,S=y.length,C=``,w=0;x<S;){var T=x+S>>>1,E=y.slice(0,T+1),D=this._getTextWidth(E)+g;D<=l?(x=T+1,C=E,w=D):S=T}if(C){if(m){var O,ee=y[C.length];O=(ee===Db||ee===vb)&&w<=l?C.length:Math.max(C.lastIndexOf(Db),C.lastIndexOf(vb))+1,O>0&&(x=O,C=C.slice(0,x),w=this._getTextWidth(C))}if(C=C.trimRight(),this._addTextLine(C),n=Math.max(n,w),d+=r,!p||s&&d+r>u){var te=this.textArr[this.textArr.length-1];te&&h&&(this._getTextWidth(te.text+Mb)<l||(te.text=te.text.slice(0,te.text.length-3)),this.textArr.splice(this.textArr.length-1,1),this._addTextLine(te.text+Mb));break}if(y=y.slice(x),y=y.trimLeft(),y.length>0&&(b=this._getTextWidth(y),b<=l)){this._addTextLine(y),d+=r,n=Math.max(n,b);break}}else break}else this._addTextLine(y),d+=r,n=Math.max(n,b);if(s&&d+r>u)break}this.textHeight=t,this.textWidth=n}getStrokeScaleEnabled(){return!0}};Vb.prototype._fillFunc=Rb,Vb.prototype._strokeFunc=zb,Vb.prototype.className=xb,Vb.prototype._attrsAffectingSize=[`text`,`fontSize`,`padding`,`wrap`,`lineHeight`,`letterSpacing`],$g(Vb),Z.overWriteSetter(Vb,`width`,b_()),Z.overWriteSetter(Vb,`height`,b_()),Z.addGetterSetter(Vb,`fontFamily`,`Arial`),Z.addGetterSetter(Vb,`fontSize`,12,X()),Z.addGetterSetter(Vb,`fontStyle`,Tb),Z.addGetterSetter(Vb,`fontVariant`,Tb),Z.addGetterSetter(Vb,`padding`,0,X()),Z.addGetterSetter(Vb,`align`,yb),Z.addGetterSetter(Vb,`verticalAlign`,Sb),Z.addGetterSetter(Vb,`lineHeight`,1,X()),Z.addGetterSetter(Vb,`wrap`,kb),Z.addGetterSetter(Vb,`ellipsis`,!1,w_()),Z.addGetterSetter(Vb,`letterSpacing`,0,X()),Z.addGetterSetter(Vb,`text`,``,x_()),Z.addGetterSetter(Vb,`textDecoration`,``);var Hb=``,Ub=`normal`;function Wb(e){e.fillText(this.partialText,0,0)}function Gb(e){e.strokeText(this.partialText,0,0)}var Kb=class extends ${constructor(e){super(e),this.dummyCanvas=Y.createCanvasElement(),this.dataArray=[],this.dataArray=Gy.parsePathData(this.attrs.data),this.on(`dataChange.konva`,function(){this.dataArray=Gy.parsePathData(this.attrs.data),this._setTextData()}),this.on(`textChange.konva alignChange.konva letterSpacingChange.konva kerningFuncChange.konva fontSizeChange.konva`,this._setTextData),this._setTextData()}_sceneFunc(e){e.setAttr(`font`,this._getContextFont()),e.setAttr(`textBaseline`,this.textBaseline()),e.setAttr(`textAlign`,`left`),e.save();var t=this.textDecoration(),n=this.fill(),r=this.fontSize(),i=this.glyphInfo;t===`underline`&&e.beginPath();for(var a=0;a<i.length;a++){e.save();var o=i[a].p0;e.translate(o.x,o.y),e.rotate(i[a].rotation),this.partialText=i[a].text,e.fillStrokeShape(this),t===`underline`&&(a===0&&e.moveTo(0,r/2+1),e.lineTo(r,r/2+1)),e.restore()}t===`underline`&&(e.strokeStyle=n,e.lineWidth=r/20,e.stroke()),e.restore()}_hitFunc(e){e.beginPath();var t=this.glyphInfo;if(t.length>=1){var n=t[0].p0;e.moveTo(n.x,n.y)}for(var r=0;r<t.length;r++){var i=t[r].p1;e.lineTo(i.x,i.y)}e.setAttr(`lineWidth`,this.fontSize()),e.setAttr(`strokeStyle`,this.colorKey),e.stroke()}getTextWidth(){return this.textWidth}getTextHeight(){return Y.warn(`text.getTextHeight() method is deprecated. Use text.height() - for full height and text.fontSize() - for one line height.`),this.textHeight}setText(e){return Vb.prototype.setText.call(this,e)}_getContextFont(){return Vb.prototype._getContextFont.call(this)}_getTextSize(e){var t=this.dummyCanvas.getContext(`2d`);t.save(),t.font=this._getContextFont();var n=t.measureText(e);return t.restore(),{width:n.width,height:parseInt(this.attrs.fontSize,10)}}_setTextData(){var e=this,t=this._getTextSize(this.attrs.text),n=this.letterSpacing(),r=this.align(),i=this.kerningFunc();this.textWidth=t.width,this.textHeight=t.height;var a=Math.max(this.textWidth+((this.attrs.text||``).length-1)*n,0);this.glyphInfo=[];for(var o=0,s=0;s<e.dataArray.length;s++)e.dataArray[s].pathLength>0&&(o+=e.dataArray[s].pathLength);var c=0;r===`center`&&(c=Math.max(0,o/2-a/2)),r===`right`&&(c=Math.max(0,o-a));for(var l=fb(this.text()),u=this.text().split(` `).length-1,d,f,p,m=-1,h=0,g=function(){h=0;for(var t=e.dataArray,n=m+1;n<t.length;n++)if(t[n].pathLength>0)return m=n,t[n];else t[n].command===`M`&&(d={x:t[n].points[0],y:t[n].points[1]});return{}},_=function(t){var i=e._getTextSize(t).width+n;t===` `&&r===`justify`&&(i+=(o-a)/u);var s=0,c=0;for(f=void 0;Math.abs(i-s)/i>.01&&c<20;){c++;for(var l=s;p===void 0;)p=g(),p&&l+p.pathLength<i&&(l+=p.pathLength,p=void 0);if(p==={}||d===void 0)return;var m=!1;switch(p.command){case`L`:Gy.getLineLength(d.x,d.y,p.points[0],p.points[1])>i?f=Gy.getPointOnLine(i,d.x,d.y,p.points[0],p.points[1],d.x,d.y):p=void 0;break;case`A`:var _=p.points[4],v=p.points[5],y=p.points[4]+v;h===0?h=_+1e-8:i>s?h+=Math.PI/180*v/Math.abs(v):h-=Math.PI/360*v/Math.abs(v),(v<0&&h<y||v>=0&&h>y)&&(h=y,m=!0),f=Gy.getPointOnEllipticalArc(p.points[0],p.points[1],p.points[2],p.points[3],h,p.points[6]);break;case`C`:h===0?h=i>p.pathLength?1e-8:i/p.pathLength:i>s?h+=(i-s)/p.pathLength/2:h=Math.max(h-(s-i)/p.pathLength/2,0),h>1&&(h=1,m=!0),f=Gy.getPointOnCubicBezier(h,p.start.x,p.start.y,p.points[0],p.points[1],p.points[2],p.points[3],p.points[4],p.points[5]);break;case`Q`:h===0?h=i/p.pathLength:i>s?h+=(i-s)/p.pathLength:h-=(s-i)/p.pathLength,h>1&&(h=1,m=!0),f=Gy.getPointOnQuadraticBezier(h,p.start.x,p.start.y,p.points[0],p.points[1],p.points[2],p.points[3]);break}f!==void 0&&(s=Gy.getLineLength(d.x,d.y,f.x,f.y)),m&&(m=!1,p=void 0)}},v=`C`,y=e._getTextSize(v).width+n,b=c/y-1,x=0;x<b&&(_(v),!(d===void 0||f===void 0));x++)d=f;for(var S=0;S<l.length&&(_(l[S]),!(d===void 0||f===void 0));S++){var C=Gy.getLineLength(d.x,d.y,f.x,f.y),w=0;if(i)try{w=i(l[S-1],l[S])*this.fontSize()}catch{w=0}d.x+=w,f.x+=w,this.textWidth+=w;var T=Gy.getPointOnLine(w+C/2,d.x,d.y,f.x,f.y),E=Math.atan2(f.y-d.y,f.x-d.x);this.glyphInfo.push({transposeX:T.x,transposeY:T.y,text:l[S],rotation:E,p0:d,p1:f}),d=f}}getSelfRect(){if(!this.glyphInfo.length)return{x:0,y:0,width:0,height:0};var e=[];this.glyphInfo.forEach(function(t){e.push(t.p0.x),e.push(t.p0.y),e.push(t.p1.x),e.push(t.p1.y)});for(var t=e[0]||0,n=e[0]||0,r=e[1]||0,i=e[1]||0,a,o,s=0;s<e.length/2;s++)a=e[s*2],o=e[s*2+1],t=Math.min(t,a),n=Math.max(n,a),r=Math.min(r,o),i=Math.max(i,o);var c=this.fontSize();return{x:t-c/2,y:r-c/2,width:n-t+c,height:i-r+c}}};Kb.prototype._fillFunc=Wb,Kb.prototype._strokeFunc=Gb,Kb.prototype._fillFuncHit=Wb,Kb.prototype._strokeFuncHit=Gb,Kb.prototype.className=`TextPath`,Kb.prototype._attrsAffectingSize=[`text`,`fontSize`,`data`],$g(Kb),Z.addGetterSetter(Kb,`data`),Z.addGetterSetter(Kb,`fontFamily`,`Arial`),Z.addGetterSetter(Kb,`fontSize`,12,X()),Z.addGetterSetter(Kb,`fontStyle`,Ub),Z.addGetterSetter(Kb,`align`,`left`),Z.addGetterSetter(Kb,`letterSpacing`,0,X()),Z.addGetterSetter(Kb,`textBaseline`,`middle`),Z.addGetterSetter(Kb,`fontVariant`,Ub),Z.addGetterSetter(Kb,`text`,Hb),Z.addGetterSetter(Kb,`textDecoration`,null),Z.addGetterSetter(Kb,`kerningFunc`,null);var qb=`tr-konva`,Jb=[`resizeEnabledChange`,`rotateAnchorOffsetChange`,`rotateEnabledChange`,`enabledAnchorsChange`,`anchorSizeChange`,`borderEnabledChange`,`borderStrokeChange`,`borderStrokeWidthChange`,`borderDashChange`,`anchorStrokeChange`,`anchorStrokeWidthChange`,`anchorFillChange`,`anchorCornerRadiusChange`,`ignoreStrokeChange`].map(e=>e+`.${qb}`).join(` `),Yb=`nodesRect`,Xb=[`widthChange`,`heightChange`,`scaleXChange`,`scaleYChange`,`skewXChange`,`skewYChange`,`rotationChange`,`offsetXChange`,`offsetYChange`,`transformsEnabledChange`,`strokeWidthChange`],Zb={"top-left":-45,"top-center":0,"top-right":45,"middle-right":-90,"middle-left":90,"bottom-left":-135,"bottom-center":180,"bottom-right":135},Qb=`ontouchstart`in J._global;function $b(e,t){if(e===`rotater`)return`crosshair`;t+=Y.degToRad(Zb[e]||0);var n=(Y.radToDeg(t)%360+360)%360;return Y._inRange(n,337.5,360)||Y._inRange(n,0,22.5)?`ns-resize`:Y._inRange(n,22.5,67.5)?`nesw-resize`:Y._inRange(n,67.5,112.5)?`ew-resize`:Y._inRange(n,112.5,157.5)?`nwse-resize`:Y._inRange(n,157.5,202.5)?`ns-resize`:Y._inRange(n,202.5,247.5)?`nesw-resize`:Y._inRange(n,247.5,292.5)?`ew-resize`:Y._inRange(n,292.5,337.5)?`nwse-resize`:(Y.error(`Transformer has unknown angle for cursor detection: `+n),`pointer`)}var ex=[`top-left`,`top-center`,`top-right`,`middle-right`,`middle-left`,`bottom-left`,`bottom-center`,`bottom-right`],tx=1e8;function nx(e){return{x:e.x+e.width/2*Math.cos(e.rotation)+e.height/2*Math.sin(-e.rotation),y:e.y+e.height/2*Math.cos(e.rotation)+e.width/2*Math.sin(e.rotation)}}function rx(e,t,n){let r=n.x+(e.x-n.x)*Math.cos(t)-(e.y-n.y)*Math.sin(t),i=n.y+(e.x-n.x)*Math.sin(t)+(e.y-n.y)*Math.cos(t);return Object.assign(Object.assign({},e),{rotation:e.rotation+t,x:r,y:i})}function ix(e,t){return rx(e,t,nx(e))}function ax(e,t,n){let r=t;for(let i=0;i<e.length;i++){let a=J.getAngle(e[i]),o=Math.abs(a-t)%(Math.PI*2);Math.min(o,Math.PI*2-o)<n&&(r=a)}return r}var ox=class extends Oy{constructor(e){super(e),this._transforming=!1,this._createElements(),this._handleMouseMove=this._handleMouseMove.bind(this),this._handleMouseUp=this._handleMouseUp.bind(this),this.update=this.update.bind(this),this.on(Jb,this.update),this.getNode()&&this.update()}attachTo(e){return this.setNode(e),this}setNode(e){return Y.warn(`tr.setNode(shape), tr.node(shape) and tr.attachTo(shape) methods are deprecated. Please use tr.nodes(nodesArray) instead.`),this.setNodes([e])}getNode(){return this._nodes&&this._nodes[0]}_getEventNamespace(){return qb+this._id}setNodes(e=[]){return this._nodes&&this._nodes.length&&this.detach(),this._nodes=e,e.length===1&&this.useSingleNodeRotation()?this.rotation(e[0].getAbsoluteRotation()):this.rotation(0),this._nodes.forEach(e=>{let t=()=>{this.nodes().length===1&&this.useSingleNodeRotation()&&this.rotation(this.nodes()[0].getAbsoluteRotation()),this._resetTransformCache(),!this._transforming&&!this.isDragging()&&this.update()},n=e._attrsAffectingSize.map(e=>e+`Change.`+this._getEventNamespace()).join(` `);e.on(n,t),e.on(Xb.map(e=>e+`.${this._getEventNamespace()}`).join(` `),t),e.on(`absoluteTransformChange.${this._getEventNamespace()}`,t),this._proxyDrag(e)}),this._resetTransformCache(),this.findOne(`.top-left`)&&this.update(),this}_proxyDrag(e){let t;e.on(`dragstart.${this._getEventNamespace()}`,n=>{t=e.getAbsolutePosition(),!this.isDragging()&&e!==this.findOne(`.back`)&&this.startDrag(n,!1)}),e.on(`dragmove.${this._getEventNamespace()}`,n=>{if(!t)return;let r=e.getAbsolutePosition(),i=r.x-t.x,a=r.y-t.y;this.nodes().forEach(t=>{if(t===e||t.isDragging())return;let r=t.getAbsolutePosition();t.setAbsolutePosition({x:r.x+i,y:r.y+a}),t.startDrag(n)}),t=null})}getNodes(){return this._nodes||[]}getActiveAnchor(){return this._movingAnchorName}detach(){this._nodes&&this._nodes.forEach(e=>{e.off(`.`+this._getEventNamespace())}),this._nodes=[],this._resetTransformCache()}_resetTransformCache(){this._clearCache(Yb),this._clearCache(`transform`),this._clearSelfAndDescendantCache(`absoluteTransform`)}_getNodeRect(){return this._getCache(Yb,this.__getNodeRect)}__getNodeShape(e,t=this.rotation(),n){var r=e.getClientRect({skipTransform:!0,skipShadow:!0,skipStroke:this.ignoreStroke()}),i=e.getAbsoluteScale(n),a=e.getAbsolutePosition(n),o=r.x*i.x-e.offsetX()*i.x,s=r.y*i.y-e.offsetY()*i.y;let c=(J.getAngle(e.getAbsoluteRotation())+Math.PI*2)%(Math.PI*2);return rx({x:a.x+o*Math.cos(c)+s*Math.sin(-c),y:a.y+s*Math.cos(c)+o*Math.sin(c),width:r.width*i.x,height:r.height*i.y,rotation:c},-J.getAngle(t),{x:0,y:0})}__getNodeRect(){if(!this.getNode())return{x:-tx,y:-tx,width:0,height:0,rotation:0};let e=[];this.nodes().map(t=>{let n=t.getClientRect({skipTransform:!0,skipShadow:!0,skipStroke:this.ignoreStroke()});var r=[{x:n.x,y:n.y},{x:n.x+n.width,y:n.y},{x:n.x+n.width,y:n.y+n.height},{x:n.x,y:n.y+n.height}],i=t.getAbsoluteTransform();r.forEach(function(t){var n=i.point(t);e.push(n)})});let t=new e_;t.rotate(-J.getAngle(this.rotation()));var n,r,i,a;e.forEach(function(e){var o=t.point(e);n===void 0&&(n=i=o.x,r=a=o.y),n=Math.min(n,o.x),r=Math.min(r,o.y),i=Math.max(i,o.x),a=Math.max(a,o.y)}),t.invert();let o=t.point({x:n,y:r});return{x:o.x,y:o.y,width:i-n,height:a-r,rotation:J.getAngle(this.rotation())}}getX(){return this._getNodeRect().x}getY(){return this._getNodeRect().y}getWidth(){return this._getNodeRect().width}getHeight(){return this._getNodeRect().height}_createElements(){this._createBack(),ex.forEach(function(e){this._createAnchor(e)}.bind(this)),this._createAnchor(`rotater`)}_createAnchor(e){var t=new ob({stroke:`rgb(0, 161, 255)`,fill:`white`,strokeWidth:1,name:e+` _anchor`,dragDistance:0,draggable:!0,hitStrokeWidth:Qb?10:`auto`}),n=this;t.on(`mousedown touchstart`,function(e){n._handleMouseDown(e)}),t.on(`dragstart`,e=>{t.stopDrag(),e.cancelBubble=!0}),t.on(`dragend`,e=>{e.cancelBubble=!0}),t.on(`mouseenter`,()=>{var n=$b(e,J.getAngle(this.rotation()));t.getStage().content&&(t.getStage().content.style.cursor=n),this._cursorChange=!0}),t.on(`mouseout`,()=>{t.getStage().content&&(t.getStage().content.style.cursor=``),this._cursorChange=!1}),this.add(t)}_createBack(){var e=new $({name:`back`,width:0,height:0,draggable:!0,sceneFunc(e){var t=this.getParent(),n=t.padding();e.beginPath(),e.rect(-n,-n,this.width()+n*2,this.height()+n*2),e.moveTo(this.width()/2,-n),t.rotateEnabled()&&e.lineTo(this.width()/2,-t.rotateAnchorOffset()*Y._sign(this.height())-n),e.fillStrokeShape(this)},hitFunc:(e,t)=>{if(this.shouldOverdrawWholeArea()){var n=this.padding();e.beginPath(),e.rect(-n,-n,t.width()+n*2,t.height()+n*2),e.fillStrokeShape(t)}}});this.add(e),this._proxyDrag(e),e.on(`dragstart`,e=>{e.cancelBubble=!0}),e.on(`dragmove`,e=>{e.cancelBubble=!0}),e.on(`dragend`,e=>{e.cancelBubble=!0}),this.on(`dragmove`,e=>{this.update()})}_handleMouseDown(e){this._movingAnchorName=e.target.name().split(` `)[0];var t=this._getNodeRect(),n=t.width,r=t.height,i=Math.sqrt(n**2+r**2);this.sin=Math.abs(r/i),this.cos=Math.abs(n/i),typeof window<`u`&&(window.addEventListener(`mousemove`,this._handleMouseMove),window.addEventListener(`touchmove`,this._handleMouseMove),window.addEventListener(`mouseup`,this._handleMouseUp,!0),window.addEventListener(`touchend`,this._handleMouseUp,!0)),this._transforming=!0;var a=e.target.getAbsolutePosition(),o=e.target.getStage().getPointerPosition();this._anchorDragOffset={x:o.x-a.x,y:o.y-a.y},this._fire(`transformstart`,{evt:e,target:this.getNode()}),this._nodes.forEach(t=>{t._fire(`transformstart`,{evt:e,target:t})})}_handleMouseMove(e){var t,n,r,i=this.findOne(`.`+this._movingAnchorName),a=i.getStage();a.setPointersPositions(e);let o=a.getPointerPosition(),s={x:o.x-this._anchorDragOffset.x,y:o.y-this._anchorDragOffset.y},c=i.getAbsolutePosition();this.anchorDragBoundFunc()&&(s=this.anchorDragBoundFunc()(c,s,e)),i.setAbsolutePosition(s);let l=i.getAbsolutePosition();if(!(c.x===l.x&&c.y===l.y)){if(this._movingAnchorName===`rotater`){var u=this._getNodeRect();t=i.x()-u.width/2,n=-i.y()+u.height/2;let r=Math.atan2(-n,t)+Math.PI/2;u.height<0&&(r-=Math.PI);let a=J.getAngle(this.rotation())+r,o=J.getAngle(this.rotationSnapTolerance()),s=ix(u,ax(this.rotationSnaps(),a,o)-u.rotation);this._fitNodesInto(s,e);return}var d=this.keepRatio()||e.shiftKey,f=this.centeredScaling()||e.altKey;if(this._movingAnchorName===`top-left`){if(d){var p=f?{x:this.width()/2,y:this.height()/2}:{x:this.findOne(`.bottom-right`).x(),y:this.findOne(`.bottom-right`).y()};r=Math.sqrt((p.x-i.x())**2+(p.y-i.y())**2);var m=this.findOne(`.top-left`).x()>p.x?-1:1,h=this.findOne(`.top-left`).y()>p.y?-1:1;t=r*this.cos*m,n=r*this.sin*h,this.findOne(`.top-left`).x(p.x-t),this.findOne(`.top-left`).y(p.y-n)}}else if(this._movingAnchorName===`top-center`)this.findOne(`.top-left`).y(i.y());else if(this._movingAnchorName===`top-right`){if(d){var p=f?{x:this.width()/2,y:this.height()/2}:{x:this.findOne(`.bottom-left`).x(),y:this.findOne(`.bottom-left`).y()};r=Math.sqrt((i.x()-p.x)**2+(p.y-i.y())**2);var m=this.findOne(`.top-right`).x()<p.x?-1:1,h=this.findOne(`.top-right`).y()>p.y?-1:1;t=r*this.cos*m,n=r*this.sin*h,this.findOne(`.top-right`).x(p.x+t),this.findOne(`.top-right`).y(p.y-n)}var g=i.position();this.findOne(`.top-left`).y(g.y),this.findOne(`.bottom-right`).x(g.x)}else if(this._movingAnchorName===`middle-left`)this.findOne(`.top-left`).x(i.x());else if(this._movingAnchorName===`middle-right`)this.findOne(`.bottom-right`).x(i.x());else if(this._movingAnchorName===`bottom-left`){if(d){var p=f?{x:this.width()/2,y:this.height()/2}:{x:this.findOne(`.top-right`).x(),y:this.findOne(`.top-right`).y()};r=Math.sqrt((p.x-i.x())**2+(i.y()-p.y)**2);var m=p.x<i.x()?-1:1,h=i.y()<p.y?-1:1;t=r*this.cos*m,n=r*this.sin*h,i.x(p.x-t),i.y(p.y+n)}g=i.position(),this.findOne(`.top-left`).x(g.x),this.findOne(`.bottom-right`).y(g.y)}else if(this._movingAnchorName===`bottom-center`)this.findOne(`.bottom-right`).y(i.y());else if(this._movingAnchorName===`bottom-right`){if(d){var p=f?{x:this.width()/2,y:this.height()/2}:{x:this.findOne(`.top-left`).x(),y:this.findOne(`.top-left`).y()};r=Math.sqrt((i.x()-p.x)**2+(i.y()-p.y)**2);var m=this.findOne(`.bottom-right`).x()<p.x?-1:1,h=this.findOne(`.bottom-right`).y()<p.y?-1:1;t=r*this.cos*m,n=r*this.sin*h,this.findOne(`.bottom-right`).x(p.x+t),this.findOne(`.bottom-right`).y(p.y+n)}}else console.error(Error(`Wrong position argument of selection resizer: `+this._movingAnchorName));var f=this.centeredScaling()||e.altKey;if(f){var _=this.findOne(`.top-left`),v=this.findOne(`.bottom-right`),y=_.x(),b=_.y(),x=this.getWidth()-v.x(),S=this.getHeight()-v.y();v.move({x:-y,y:-b}),_.move({x,y:S})}var C=this.findOne(`.top-left`).getAbsolutePosition();t=C.x,n=C.y;var w=this.findOne(`.bottom-right`).x()-this.findOne(`.top-left`).x(),T=this.findOne(`.bottom-right`).y()-this.findOne(`.top-left`).y();this._fitNodesInto({x:t,y:n,width:w,height:T,rotation:J.getAngle(this.rotation())},e)}}_handleMouseUp(e){this._removeEvents(e)}getAbsoluteTransform(){return this.getTransform()}_removeEvents(e){if(this._transforming){this._transforming=!1,typeof window<`u`&&(window.removeEventListener(`mousemove`,this._handleMouseMove),window.removeEventListener(`touchmove`,this._handleMouseMove),window.removeEventListener(`mouseup`,this._handleMouseUp,!0),window.removeEventListener(`touchend`,this._handleMouseUp,!0));var t=this.getNode();this._fire(`transformend`,{evt:e,target:t}),t&&this._nodes.forEach(t=>{t._fire(`transformend`,{evt:e,target:t})}),this._movingAnchorName=null}}_fitNodesInto(e,t){var n=this._getNodeRect();if(Y._inRange(e.width,-this.padding()*2-1,1)){this.update();return}if(Y._inRange(e.height,-this.padding()*2-1,1)){this.update();return}let r=this.flipEnabled();var i=new e_;if(i.rotate(J.getAngle(this.rotation())),this._movingAnchorName&&e.width<0&&this._movingAnchorName.indexOf(`left`)>=0){let t=i.point({x:-this.padding()*2,y:0});if(e.x+=t.x,e.y+=t.y,e.width+=this.padding()*2,this._movingAnchorName=this._movingAnchorName.replace(`left`,`right`),this._anchorDragOffset.x-=t.x,this._anchorDragOffset.y-=t.y,!r){this.update();return}}else if(this._movingAnchorName&&e.width<0&&this._movingAnchorName.indexOf(`right`)>=0){let t=i.point({x:this.padding()*2,y:0});if(this._movingAnchorName=this._movingAnchorName.replace(`right`,`left`),this._anchorDragOffset.x-=t.x,this._anchorDragOffset.y-=t.y,e.width+=this.padding()*2,!r){this.update();return}}if(this._movingAnchorName&&e.height<0&&this._movingAnchorName.indexOf(`top`)>=0){let t=i.point({x:0,y:-this.padding()*2});if(e.x+=t.x,e.y+=t.y,this._movingAnchorName=this._movingAnchorName.replace(`top`,`bottom`),this._anchorDragOffset.x-=t.x,this._anchorDragOffset.y-=t.y,e.height+=this.padding()*2,!r){this.update();return}}else if(this._movingAnchorName&&e.height<0&&this._movingAnchorName.indexOf(`bottom`)>=0){let t=i.point({x:0,y:this.padding()*2});if(this._movingAnchorName=this._movingAnchorName.replace(`bottom`,`top`),this._anchorDragOffset.x-=t.x,this._anchorDragOffset.y-=t.y,e.height+=this.padding()*2,!r){this.update();return}}if(this.boundBoxFunc()){let t=this.boundBoxFunc()(n,e);t?e=t:Y.warn(`boundBoxFunc returned falsy. You should return new bound rect from it!`)}let a=1e7,o=new e_;o.translate(n.x,n.y),o.rotate(n.rotation),o.scale(n.width/a,n.height/a);let s=new e_;s.translate(e.x,e.y),s.rotate(e.rotation),s.scale(e.width/a,e.height/a);let c=s.multiply(o.invert());this._nodes.forEach(e=>{var n;let r=e.getParent().getAbsoluteTransform(),i=e.getTransform().copy();i.translate(e.offsetX(),e.offsetY());let a=new e_;a.multiply(r.copy().invert()).multiply(c).multiply(r).multiply(i);let o=a.decompose();e.setAttrs(o),this._fire(`transform`,{evt:t,target:e}),e._fire(`transform`,{evt:t,target:e}),(n=e.getLayer())==null||n.batchDraw()}),this.rotation(Y._getRotation(e.rotation)),this._resetTransformCache(),this.update(),this.getLayer().batchDraw()}forceUpdate(){this._resetTransformCache(),this.update()}_batchChangeChild(e,t){this.findOne(e).setAttrs(t)}update(){var e,t=this._getNodeRect();this.rotation(Y._getRotation(t.rotation));var n=t.width,r=t.height,i=this.enabledAnchors(),a=this.resizeEnabled(),o=this.padding(),s=this.anchorSize();this.find(`._anchor`).forEach(e=>{e.setAttrs({width:s,height:s,offsetX:s/2,offsetY:s/2,stroke:this.anchorStroke(),strokeWidth:this.anchorStrokeWidth(),fill:this.anchorFill(),cornerRadius:this.anchorCornerRadius()})}),this._batchChangeChild(`.top-left`,{x:0,y:0,offsetX:s/2+o,offsetY:s/2+o,visible:a&&i.indexOf(`top-left`)>=0}),this._batchChangeChild(`.top-center`,{x:n/2,y:0,offsetY:s/2+o,visible:a&&i.indexOf(`top-center`)>=0}),this._batchChangeChild(`.top-right`,{x:n,y:0,offsetX:s/2-o,offsetY:s/2+o,visible:a&&i.indexOf(`top-right`)>=0}),this._batchChangeChild(`.middle-left`,{x:0,y:r/2,offsetX:s/2+o,visible:a&&i.indexOf(`middle-left`)>=0}),this._batchChangeChild(`.middle-right`,{x:n,y:r/2,offsetX:s/2-o,visible:a&&i.indexOf(`middle-right`)>=0}),this._batchChangeChild(`.bottom-left`,{x:0,y:r,offsetX:s/2+o,offsetY:s/2-o,visible:a&&i.indexOf(`bottom-left`)>=0}),this._batchChangeChild(`.bottom-center`,{x:n/2,y:r,offsetY:s/2-o,visible:a&&i.indexOf(`bottom-center`)>=0}),this._batchChangeChild(`.bottom-right`,{x:n,y:r,offsetX:s/2-o,offsetY:s/2-o,visible:a&&i.indexOf(`bottom-right`)>=0}),this._batchChangeChild(`.rotater`,{x:n/2,y:-this.rotateAnchorOffset()*Y._sign(r)-o,visible:this.rotateEnabled()}),this._batchChangeChild(`.back`,{width:n,height:r,visible:this.borderEnabled(),stroke:this.borderStroke(),strokeWidth:this.borderStrokeWidth(),dash:this.borderDash(),x:0,y:0}),(e=this.getLayer())==null||e.batchDraw()}isTransforming(){return this._transforming}stopTransform(){if(this._transforming){this._removeEvents();var e=this.findOne(`.`+this._movingAnchorName);e&&e.stopDrag()}}destroy(){return this.getStage()&&this._cursorChange&&this.getStage().content&&(this.getStage().content.style.cursor=``),Oy.prototype.destroy.call(this),this.detach(),this._removeEvents(),this}toObject(){return Q.prototype.toObject.call(this)}};function sx(e){return e instanceof Array||Y.warn(`enabledAnchors value should be an array`),e instanceof Array&&e.forEach(function(e){ex.indexOf(e)===-1&&Y.warn(`Unknown anchor name: `+e+`. Available names are: `+ex.join(`, `))}),e||[]}ox.prototype.className=`Transformer`,$g(ox),Z.addGetterSetter(ox,`enabledAnchors`,ex,sx),Z.addGetterSetter(ox,`flipEnabled`,!0,w_()),Z.addGetterSetter(ox,`resizeEnabled`,!0),Z.addGetterSetter(ox,`anchorSize`,10,X()),Z.addGetterSetter(ox,`rotateEnabled`,!0),Z.addGetterSetter(ox,`rotationSnaps`,[]),Z.addGetterSetter(ox,`rotateAnchorOffset`,50,X()),Z.addGetterSetter(ox,`rotationSnapTolerance`,5,X()),Z.addGetterSetter(ox,`borderEnabled`,!0),Z.addGetterSetter(ox,`anchorStroke`,`rgb(0, 161, 255)`),Z.addGetterSetter(ox,`anchorStrokeWidth`,1,X()),Z.addGetterSetter(ox,`anchorFill`,`white`),Z.addGetterSetter(ox,`anchorCornerRadius`,0,X()),Z.addGetterSetter(ox,`borderStroke`,`rgb(0, 161, 255)`),Z.addGetterSetter(ox,`borderStrokeWidth`,1,X()),Z.addGetterSetter(ox,`borderDash`),Z.addGetterSetter(ox,`keepRatio`,!0),Z.addGetterSetter(ox,`centeredScaling`,!1),Z.addGetterSetter(ox,`ignoreStroke`,!1),Z.addGetterSetter(ox,`padding`,0,X()),Z.addGetterSetter(ox,`node`),Z.addGetterSetter(ox,`nodes`),Z.addGetterSetter(ox,`boundBoxFunc`),Z.addGetterSetter(ox,`anchorDragBoundFunc`),Z.addGetterSetter(ox,`shouldOverdrawWholeArea`,!1),Z.addGetterSetter(ox,`useSingleNodeRotation`,!0),Z.backCompat(ox,{lineEnabled:`borderEnabled`,rotateHandlerOffset:`rotateAnchorOffset`,enabledHandlers:`enabledAnchors`});var cx=class extends ${_sceneFunc(e){e.beginPath(),e.arc(0,0,this.radius(),0,J.getAngle(this.angle()),this.clockwise()),e.lineTo(0,0),e.closePath(),e.fillStrokeShape(this)}getWidth(){return this.radius()*2}getHeight(){return this.radius()*2}setWidth(e){this.radius(e/2)}setHeight(e){this.radius(e/2)}};cx.prototype.className=`Wedge`,cx.prototype._centroid=!0,cx.prototype._attrsAffectingSize=[`radius`],$g(cx),Z.addGetterSetter(cx,`radius`,0,X()),Z.addGetterSetter(cx,`angle`,0,X()),Z.addGetterSetter(cx,`clockwise`,!1),Z.backCompat(cx,{angleDeg:`angle`,getAngleDeg:`getAngle`,setAngleDeg:`setAngle`});function lx(){this.r=0,this.g=0,this.b=0,this.a=0,this.next=null}var ux=[512,512,456,512,328,456,335,512,405,328,271,456,388,335,292,512,454,405,364,328,298,271,496,456,420,388,360,335,312,292,273,512,482,454,428,405,383,364,345,328,312,298,284,271,259,496,475,456,437,420,404,388,374,360,347,335,323,312,302,292,282,273,265,512,497,482,468,454,441,428,417,405,394,383,373,364,354,345,337,328,320,312,305,298,291,284,278,271,265,259,507,496,485,475,465,456,446,437,428,420,412,404,396,388,381,374,367,360,354,347,341,335,329,323,318,312,307,302,297,292,287,282,278,273,269,265,261,512,505,497,489,482,475,468,461,454,447,441,435,428,422,417,411,405,399,394,389,383,378,373,368,364,359,354,350,345,341,337,332,328,324,320,316,312,309,305,301,298,294,291,287,284,281,278,274,271,268,265,262,259,257,507,501,496,491,485,480,475,470,465,460,456,451,446,442,437,433,428,424,420,416,412,408,404,400,396,392,388,385,381,377,374,370,367,363,360,357,354,350,347,344,341,338,335,332,329,326,323,320,318,315,312,310,307,304,302,299,297,294,292,289,287,285,282,280,278,275,273,271,269,267,265,263,261,259],dx=[9,11,12,13,13,14,14,15,15,15,15,16,16,16,16,17,17,17,17,17,17,17,18,18,18,18,18,18,18,18,18,19,19,19,19,19,19,19,19,19,19,19,19,19,19,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24];function fx(e,t){var n=e.data,r=e.width,i=e.height,a,o,s,c,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T,E,D,O,ee=t+t+1,te=r-1,k=i-1,A=t+1,ne=A*(A+1)/2,j=new lx,re=null,M=j,ie=null,ae=null,N=ux[t],oe=dx[t];for(s=1;s<ee;s++)M=M.next=new lx,s===A&&(re=M);for(M.next=j,d=u=0,o=0;o<i;o++){for(b=x=S=C=f=p=m=h=0,g=A*(w=n[u]),_=A*(T=n[u+1]),v=A*(E=n[u+2]),y=A*(D=n[u+3]),f+=ne*w,p+=ne*T,m+=ne*E,h+=ne*D,M=j,s=0;s<A;s++)M.r=w,M.g=T,M.b=E,M.a=D,M=M.next;for(s=1;s<A;s++)c=u+((te<s?te:s)<<2),f+=(M.r=w=n[c])*(O=A-s),p+=(M.g=T=n[c+1])*O,m+=(M.b=E=n[c+2])*O,h+=(M.a=D=n[c+3])*O,b+=w,x+=T,S+=E,C+=D,M=M.next;for(ie=j,ae=re,a=0;a<r;a++)n[u+3]=D=h*N>>oe,D===0?n[u]=n[u+1]=n[u+2]=0:(D=255/D,n[u]=(f*N>>oe)*D,n[u+1]=(p*N>>oe)*D,n[u+2]=(m*N>>oe)*D),f-=g,p-=_,m-=v,h-=y,g-=ie.r,_-=ie.g,v-=ie.b,y-=ie.a,c=d+((c=a+t+1)<te?c:te)<<2,b+=ie.r=n[c],x+=ie.g=n[c+1],S+=ie.b=n[c+2],C+=ie.a=n[c+3],f+=b,p+=x,m+=S,h+=C,ie=ie.next,g+=w=ae.r,_+=T=ae.g,v+=E=ae.b,y+=D=ae.a,b-=w,x-=T,S-=E,C-=D,ae=ae.next,u+=4;d+=r}for(a=0;a<r;a++){for(x=S=C=b=p=m=h=f=0,u=a<<2,g=A*(w=n[u]),_=A*(T=n[u+1]),v=A*(E=n[u+2]),y=A*(D=n[u+3]),f+=ne*w,p+=ne*T,m+=ne*E,h+=ne*D,M=j,s=0;s<A;s++)M.r=w,M.g=T,M.b=E,M.a=D,M=M.next;for(l=r,s=1;s<=t;s++)u=l+a<<2,f+=(M.r=w=n[u])*(O=A-s),p+=(M.g=T=n[u+1])*O,m+=(M.b=E=n[u+2])*O,h+=(M.a=D=n[u+3])*O,b+=w,x+=T,S+=E,C+=D,M=M.next,s<k&&(l+=r);for(u=a,ie=j,ae=re,o=0;o<i;o++)c=u<<2,n[c+3]=D=h*N>>oe,D>0?(D=255/D,n[c]=(f*N>>oe)*D,n[c+1]=(p*N>>oe)*D,n[c+2]=(m*N>>oe)*D):n[c]=n[c+1]=n[c+2]=0,f-=g,p-=_,m-=v,h-=y,g-=ie.r,_-=ie.g,v-=ie.b,y-=ie.a,c=a+((c=o+A)<k?c:k)*r<<2,f+=b+=ie.r=n[c],p+=x+=ie.g=n[c+1],m+=S+=ie.b=n[c+2],h+=C+=ie.a=n[c+3],ie=ie.next,g+=w=ae.r,_+=T=ae.g,v+=E=ae.b,y+=D=ae.a,b-=w,x-=T,S-=E,C-=D,ae=ae.next,u+=r}}var px=function(e){var t=Math.round(this.blurRadius());t>0&&fx(e,t)};Z.addGetterSetter(Q,`blurRadius`,0,X(),Z.afterSetFilter);var mx=function(e){var t=this.brightness()*255,n=e.data,r=n.length,i;for(i=0;i<r;i+=4)n[i]+=t,n[i+1]+=t,n[i+2]+=t};Z.addGetterSetter(Q,`brightness`,0,X(),Z.afterSetFilter);var hx=function(e){var t=((this.contrast()+100)/100)**2,n=e.data,r=n.length,i=150,a=150,o=150,s;for(s=0;s<r;s+=4)i=n[s],a=n[s+1],o=n[s+2],i/=255,i-=.5,i*=t,i+=.5,i*=255,a/=255,a-=.5,a*=t,a+=.5,a*=255,o/=255,o-=.5,o*=t,o+=.5,o*=255,i=i<0?0:i>255?255:i,a=a<0?0:a>255?255:a,o=o<0?0:o>255?255:o,n[s]=i,n[s+1]=a,n[s+2]=o};Z.addGetterSetter(Q,`contrast`,0,X(),Z.afterSetFilter);var gx=function(e){var t=this.embossStrength()*10,n=this.embossWhiteLevel()*255,r=this.embossDirection(),i=this.embossBlend(),a=0,o=0,s=e.data,c=e.width,l=e.height,u=c*4,d=l;switch(r){case`top-left`:a=-1,o=-1;break;case`top`:a=-1,o=0;break;case`top-right`:a=-1,o=1;break;case`right`:a=0,o=1;break;case`bottom-right`:a=1,o=1;break;case`bottom`:a=1,o=0;break;case`bottom-left`:a=1,o=-1;break;case`left`:a=0,o=-1;break;default:Y.error(`Unknown emboss direction: `+r)}do{var f=(d-1)*u,p=a;d+p<1&&(p=0),d+p>l&&(p=0);var m=(d-1+p)*c*4,h=c;do{var g=f+(h-1)*4,_=o;h+_<1&&(_=0),h+_>c&&(_=0);var v=m+(h-1+_)*4,y=s[g]-s[v],b=s[g+1]-s[v+1],x=s[g+2]-s[v+2],S=y,C=S>0?S:-S,w=b>0?b:-b,T=x>0?x:-x;if(w>C&&(S=b),T>C&&(S=x),S*=t,i){var E=s[g]+S,D=s[g+1]+S,O=s[g+2]+S;s[g]=E>255?255:E<0?0:E,s[g+1]=D>255?255:D<0?0:D,s[g+2]=O>255?255:O<0?0:O}else{var ee=n-S;ee<0?ee=0:ee>255&&(ee=255),s[g]=s[g+1]=s[g+2]=ee}}while(--h)}while(--d)};Z.addGetterSetter(Q,`embossStrength`,.5,X(),Z.afterSetFilter),Z.addGetterSetter(Q,`embossWhiteLevel`,.5,X(),Z.afterSetFilter),Z.addGetterSetter(Q,`embossDirection`,`top-left`,null,Z.afterSetFilter),Z.addGetterSetter(Q,`embossBlend`,!1,null,Z.afterSetFilter);function _x(e,t,n,r,i){var a=n-t,o=i-r,s;return a===0?r+o/2:o===0?r:(s=(e-t)/a,s=o*s+r,s)}var vx=function(e){var t=e.data,n=t.length,r=t[0],i=r,a,o=t[1],s=o,c,l=t[2],u=l,d,f,p=this.enhance();if(p!==0){for(f=0;f<n;f+=4)a=t[f+0],a<r?r=a:a>i&&(i=a),c=t[f+1],c<o?o=c:c>s&&(s=c),d=t[f+2],d<l?l=d:d>u&&(u=d);i===r&&(i=255,r=0),s===o&&(s=255,o=0),u===l&&(u=255,l=0);var m,h,g,_,v,y,b,x,S;for(p>0?(h=i+p*(255-i),g=r-p*(r-0),v=s+p*(255-s),y=o-p*(o-0),x=u+p*(255-u),S=l-p*(l-0)):(m=(i+r)*.5,h=i+p*(i-m),g=r+p*(r-m),_=(s+o)*.5,v=s+p*(s-_),y=o+p*(o-_),b=(u+l)*.5,x=u+p*(u-b),S=l+p*(l-b)),f=0;f<n;f+=4)t[f+0]=_x(t[f+0],r,i,g,h),t[f+1]=_x(t[f+1],o,s,y,v),t[f+2]=_x(t[f+2],l,u,S,x)}};Z.addGetterSetter(Q,`enhance`,0,X(),Z.afterSetFilter);var yx=function(e){var t=e.data,n=t.length,r,i;for(r=0;r<n;r+=4)i=.34*t[r]+.5*t[r+1]+.16*t[r+2],t[r]=i,t[r+1]=i,t[r+2]=i};Z.addGetterSetter(Q,`hue`,0,X(),Z.afterSetFilter),Z.addGetterSetter(Q,`saturation`,0,X(),Z.afterSetFilter),Z.addGetterSetter(Q,`luminance`,0,X(),Z.afterSetFilter);var bx=function(e){var t=e.data,n=t.length,r=1,i=2**this.saturation(),a=Math.abs(this.hue()+360)%360,o=this.luminance()*127,s,c=r*i*Math.cos(a*Math.PI/180),l=r*i*Math.sin(a*Math.PI/180),u=.299*r+.701*c+.167*l,d=.587*r-.587*c+.33*l,f=.114*r-.114*c-.497*l,p=.299*r-.299*c-.328*l,m=.587*r+.413*c+.035*l,h=.114*r-.114*c+.293*l,g=.299*r-.3*c+1.25*l,_=.587*r-.586*c-1.05*l,v=.114*r+.886*c-.2*l,y,b,x,S;for(s=0;s<n;s+=4)y=t[s+0],b=t[s+1],x=t[s+2],S=t[s+3],t[s+0]=u*y+d*b+f*x+o,t[s+1]=p*y+m*b+h*x+o,t[s+2]=g*y+_*b+v*x+o,t[s+3]=S},xx=function(e){var t=e.data,n=t.length,r=2**this.value(),i=2**this.saturation(),a=Math.abs(this.hue()+360)%360,o,s=r*i*Math.cos(a*Math.PI/180),c=r*i*Math.sin(a*Math.PI/180),l=.299*r+.701*s+.167*c,u=.587*r-.587*s+.33*c,d=.114*r-.114*s-.497*c,f=.299*r-.299*s-.328*c,p=.587*r+.413*s+.035*c,m=.114*r-.114*s+.293*c,h=.299*r-.3*s+1.25*c,g=.587*r-.586*s-1.05*c,_=.114*r+.886*s-.2*c,v,y,b,x;for(o=0;o<n;o+=4)v=t[o+0],y=t[o+1],b=t[o+2],x=t[o+3],t[o+0]=l*v+u*y+d*b,t[o+1]=f*v+p*y+m*b,t[o+2]=h*v+g*y+_*b,t[o+3]=x};Z.addGetterSetter(Q,`hue`,0,X(),Z.afterSetFilter),Z.addGetterSetter(Q,`saturation`,0,X(),Z.afterSetFilter),Z.addGetterSetter(Q,`value`,0,X(),Z.afterSetFilter);var Sx=function(e){var t=e.data,n=t.length,r;for(r=0;r<n;r+=4)t[r]=255-t[r],t[r+1]=255-t[r+1],t[r+2]=255-t[r+2]},Cx=function(e,t,n){var r=e.data,i=t.data,a=e.width,o=e.height,s=n.polarCenterX||a/2,c=n.polarCenterY||o/2,l,u,d,f=0,p=0,m=0,h=0,g,_=Math.sqrt(s*s+c*c);u=a-s,d=o-c,g=Math.sqrt(u*u+d*d),_=g>_?g:_;var v=o,y=a,b,x,S=360/y*Math.PI/180,C,w;for(x=0;x<y;x+=1)for(C=Math.sin(x*S),w=Math.cos(x*S),b=0;b<v;b+=1)u=Math.floor(s+_*b/v*w),d=Math.floor(c+_*b/v*C),l=(d*a+u)*4,f=r[l+0],p=r[l+1],m=r[l+2],h=r[l+3],l=(x+b*a)*4,i[l+0]=f,i[l+1]=p,i[l+2]=m,i[l+3]=h},wx=function(e,t,n){var r=e.data,i=t.data,a=e.width,o=e.height,s=n.polarCenterX||a/2,c=n.polarCenterY||o/2,l,u,d,f,p,m=0,h=0,g=0,_=0,v,y=Math.sqrt(s*s+c*c);u=a-s,d=o-c,v=Math.sqrt(u*u+d*d),y=v>y?v:y;var b=o,x=a,S,C,w=n.polarRotation||0,T,E;for(u=0;u<a;u+=1)for(d=0;d<o;d+=1)f=u-s,p=d-c,S=Math.sqrt(f*f+p*p)*b/y,C=(Math.atan2(p,f)*180/Math.PI+360+w)%360,C=C*x/360,T=Math.floor(C),E=Math.floor(S),l=(E*a+T)*4,m=r[l+0],h=r[l+1],g=r[l+2],_=r[l+3],l=(d*a+u)*4,i[l+0]=m,i[l+1]=h,i[l+2]=g,i[l+3]=_},Tx=function(e){var t=e.width,n=e.height,r,i,a,o,s,c,l,u,d,f,p=Math.round(this.kaleidoscopePower()),m=Math.round(this.kaleidoscopeAngle()),h=Math.floor(m%360*t/360);if(!(p<1)){var g=Y.createCanvasElement();g.width=t,g.height=n;var _=g.getContext(`2d`).getImageData(0,0,t,n);Cx(e,_,{polarCenterX:t/2,polarCenterY:n/2});for(var v=t/2**p;v<=8;)v*=2,--p;v=Math.ceil(v);var y=v,b=0,x=y,S=1;for(h+v>t&&(b=y,x=0,S=-1),i=0;i<n;i+=1)for(r=b;r!==x;r+=S)a=Math.round(r+h)%t,d=(t*i+a)*4,s=_.data[d+0],c=_.data[d+1],l=_.data[d+2],u=_.data[d+3],f=(t*i+r)*4,_.data[f+0]=s,_.data[f+1]=c,_.data[f+2]=l,_.data[f+3]=u;for(i=0;i<n;i+=1)for(y=Math.floor(v),o=0;o<p;o+=1){for(r=0;r<y+1;r+=1)d=(t*i+r)*4,s=_.data[d+0],c=_.data[d+1],l=_.data[d+2],u=_.data[d+3],f=(t*i+y*2-r-1)*4,_.data[f+0]=s,_.data[f+1]=c,_.data[f+2]=l,_.data[f+3]=u;y*=2}wx(_,e,{polarRotation:0})}};Z.addGetterSetter(Q,`kaleidoscopePower`,2,X(),Z.afterSetFilter),Z.addGetterSetter(Q,`kaleidoscopeAngle`,0,X(),Z.afterSetFilter);function Ex(e,t,n){var r=(n*e.width+t)*4,i=[];return i.push(e.data[r++],e.data[r++],e.data[r++],e.data[r++]),i}function Dx(e,t){return Math.sqrt((e[0]-t[0])**2+(e[1]-t[1])**2+(e[2]-t[2])**2)}function Ox(e){for(var t=[0,0,0],n=0;n<e.length;n++)t[0]+=e[n][0],t[1]+=e[n][1],t[2]+=e[n][2];return t[0]/=e.length,t[1]/=e.length,t[2]/=e.length,t}function kx(e,t){var n=Ex(e,0,0),r=Ex(e,e.width-1,0),i=Ex(e,0,e.height-1),a=Ex(e,e.width-1,e.height-1),o=t||10;if(Dx(n,r)<o&&Dx(r,a)<o&&Dx(a,i)<o&&Dx(i,n)<o){for(var s=Ox([r,n,a,i]),c=[],l=0;l<e.width*e.height;l++)c[l]=Dx(s,[e.data[l*4],e.data[l*4+1],e.data[l*4+2]])<o?0:255;return c}}function Ax(e,t){for(var n=0;n<e.width*e.height;n++)e.data[4*n+3]=t[n]}function jx(e,t,n){for(var r=[1,1,1,1,0,1,1,1,1],i=Math.round(Math.sqrt(r.length)),a=Math.floor(i/2),o=[],s=0;s<n;s++)for(var c=0;c<t;c++){for(var l=s*t+c,u=0,d=0;d<i;d++)for(var f=0;f<i;f++){var p=s+d-a,m=c+f-a;if(p>=0&&p<n&&m>=0&&m<t){var h=p*t+m,g=r[d*i+f];u+=e[h]*g}}o[l]=u===2040?255:0}return o}function Mx(e,t,n){for(var r=[1,1,1,1,1,1,1,1,1],i=Math.round(Math.sqrt(r.length)),a=Math.floor(i/2),o=[],s=0;s<n;s++)for(var c=0;c<t;c++){for(var l=s*t+c,u=0,d=0;d<i;d++)for(var f=0;f<i;f++){var p=s+d-a,m=c+f-a;if(p>=0&&p<n&&m>=0&&m<t){var h=p*t+m,g=r[d*i+f];u+=e[h]*g}}o[l]=u>=1020?255:0}return o}function Nx(e,t,n){for(var r=[1/9,1/9,1/9,1/9,1/9,1/9,1/9,1/9,1/9],i=Math.round(Math.sqrt(r.length)),a=Math.floor(i/2),o=[],s=0;s<n;s++)for(var c=0;c<t;c++){for(var l=s*t+c,u=0,d=0;d<i;d++)for(var f=0;f<i;f++){var p=s+d-a,m=c+f-a;if(p>=0&&p<n&&m>=0&&m<t){var h=p*t+m,g=r[d*i+f];u+=e[h]*g}}o[l]=u}return o}Z.addGetterSetter(Q,`threshold`,0,X(),Z.afterSetFilter),Z.addGetterSetter(Q,`noise`,.2,X(),Z.afterSetFilter),Z.addGetterSetter(Q,`pixelSize`,8,X(),Z.afterSetFilter),Z.addGetterSetter(Q,`levels`,.5,X(),Z.afterSetFilter),Z.addGetterSetter(Q,`red`,0,function(e){return this._filterUpToDate=!1,e>255?255:e<0?0:Math.round(e)}),Z.addGetterSetter(Q,`green`,0,function(e){return this._filterUpToDate=!1,e>255?255:e<0?0:Math.round(e)}),Z.addGetterSetter(Q,`blue`,0,v_,Z.afterSetFilter),Z.addGetterSetter(Q,`red`,0,function(e){return this._filterUpToDate=!1,e>255?255:e<0?0:Math.round(e)}),Z.addGetterSetter(Q,`green`,0,function(e){return this._filterUpToDate=!1,e>255?255:e<0?0:Math.round(e)}),Z.addGetterSetter(Q,`blue`,0,v_,Z.afterSetFilter),Z.addGetterSetter(Q,`alpha`,1,function(e){return this._filterUpToDate=!1,e>1?1:e<0?0:e}),Z.addGetterSetter(Q,`threshold`,.5,X(),Z.afterSetFilter),By.Util._assign(By,{Arc:Vy,Arrow:Ky,Circle:qy,Ellipse:Jy,Image:Yy,Label:ib,Tag:ab,Line:Wy,Path:Gy,Rect:ob,RegularPolygon:sb,Ring:lb,Sprite:ub,Star:db,Text:Vb,TextPath:Kb,Transformer:ox,Wedge:cx,Filters:{Blur:px,Brighten:mx,Contrast:hx,Emboss:gx,Enhance:vx,Grayscale:yx,HSL:bx,HSV:xx,Invert:Sx,Kaleidoscope:Tx,Mask:function(e){var t=kx(e,this.threshold());return t&&(t=jx(t,e.width,e.height),t=Mx(t,e.width,e.height),t=Nx(t,e.width,e.height),Ax(e,t)),e},Noise:function(e){var t=this.noise()*255,n=e.data,r=n.length,i=t/2,a;for(a=0;a<r;a+=4)n[a+0]+=i-2*i*Math.random(),n[a+1]+=i-2*i*Math.random(),n[a+2]+=i-2*i*Math.random()},Pixelate:function(e){var t=Math.ceil(this.pixelSize()),n=e.width,r=e.height,i,a,o,s,c,l,u,d=Math.ceil(n/t),f=Math.ceil(r/t),p,m,h,g,_,v,y,b=e.data;if(t<=0){Y.error(`pixelSize value can not be <= 0`);return}for(_=0;_<d;_+=1)for(v=0;v<f;v+=1){for(s=0,c=0,l=0,u=0,p=_*t,m=p+t,h=v*t,g=h+t,y=0,i=p;i<m;i+=1)if(!(i>=n))for(a=h;a<g;a+=1)a>=r||(o=(n*a+i)*4,s+=b[o+0],c+=b[o+1],l+=b[o+2],u+=b[o+3],y+=1);for(s/=y,c/=y,l/=y,u/=y,i=p;i<m;i+=1)if(!(i>=n))for(a=h;a<g;a+=1)a>=r||(o=(n*a+i)*4,b[o+0]=s,b[o+1]=c,b[o+2]=l,b[o+3]=u)}},Posterize:function(e){var t=Math.round(this.levels()*254)+1,n=e.data,r=n.length,i=255/t,a;for(a=0;a<r;a+=1)n[a]=Math.floor(n[a]/i)*i},RGB:function(e){var t=e.data,n=t.length,r=this.red(),i=this.green(),a=this.blue(),o,s;for(o=0;o<n;o+=4)s=(.34*t[o]+.5*t[o+1]+.16*t[o+2])/255,t[o]=s*r,t[o+1]=s*i,t[o+2]=s*a,t[o+3]=t[o+3]},RGBA:function(e){var t=e.data,n=t.length,r=this.red(),i=this.green(),a=this.blue(),o=this.alpha(),s,c;for(s=0;s<n;s+=4)c=1-o,t[s]=r*o+t[s]*c,t[s+1]=i*o+t[s+1]*c,t[s+2]=a*o+t[s+2]*c},Sepia:function(e){var t=e.data,n=t.length,r,i,a,o;for(r=0;r<n;r+=4)i=t[r+0],a=t[r+1],o=t[r+2],t[r+0]=Math.min(255,i*.393+a*.769+o*.189),t[r+1]=Math.min(255,i*.349+a*.686+o*.168),t[r+2]=Math.min(255,i*.272+a*.534+o*.131)},Solarize:function(e){var t=e.data,n=e.width,r=e.height,i=n*4,a=r;do{var o=(a-1)*i,s=n;do{var c=o+(s-1)*4,l=t[c],u=t[c+1],d=t[c+2];l>127&&(l=255-l),u>127&&(u=255-u),d>127&&(d=255-d),t[c]=l,t[c+1]=u,t[c+2]=d}while(--s)}while(--a)},Threshold:function(e){var t=this.threshold()*255,n=e.data,r=n.length,i;for(i=0;i<r;i+=1)n[i]=n[i]<t?0:255}}});var Px=By,Fx=o(((e,t)=>{t.exports=function(e){var t={},n=d(),r=p(),i=Object.assign;function a(e){for(var t=`https://reactjs.org/docs/error-decoder.html?invariant=`+e,n=1;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n]);return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}var o=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,s=Symbol.for(`react.element`),c=Symbol.for(`react.portal`),l=Symbol.for(`react.fragment`),u=Symbol.for(`react.strict_mode`),f=Symbol.for(`react.profiler`),m=Symbol.for(`react.provider`),h=Symbol.for(`react.context`),g=Symbol.for(`react.forward_ref`),_=Symbol.for(`react.suspense`),v=Symbol.for(`react.suspense_list`),y=Symbol.for(`react.memo`),b=Symbol.for(`react.lazy`),x=Symbol.for(`react.offscreen`),S=Symbol.iterator;function C(e){return typeof e!=`object`||!e?null:(e=S&&e[S]||e[`@@iterator`],typeof e==`function`?e:null)}function w(e){if(e==null)return null;if(typeof e==`function`)return e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case l:return`Fragment`;case c:return`Portal`;case f:return`Profiler`;case u:return`StrictMode`;case _:return`Suspense`;case v:return`SuspenseList`}if(typeof e==`object`)switch(e.$$typeof){case h:return(e.displayName||`Context`)+`.Consumer`;case m:return(e._context.displayName||`Context`)+`.Provider`;case g:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case y:return t=e.displayName||null,t===null?w(e.type)||`Memo`:t;case b:t=e._payload,e=e._init;try{return w(e(t))}catch{}}return null}function T(e){var t=e.type;switch(e.tag){case 24:return`Cache`;case 9:return(t.displayName||`Context`)+`.Consumer`;case 10:return(t._context.displayName||`Context`)+`.Provider`;case 18:return`DehydratedFragment`;case 11:return e=t.render,e=e.displayName||e.name||``,t.displayName||(e===``?`ForwardRef`:`ForwardRef(`+e+`)`);case 7:return`Fragment`;case 5:return t;case 4:return`Portal`;case 3:return`Root`;case 6:return`Text`;case 16:return w(t);case 8:return t===u?`StrictMode`:`Mode`;case 22:return`Offscreen`;case 12:return`Profiler`;case 21:return`Scope`;case 13:return`Suspense`;case 19:return`SuspenseList`;case 25:return`TracingMarker`;case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t==`function`)return t.displayName||t.name||null;if(typeof t==`string`)return t}return null}function E(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function D(e){if(E(e)!==e)throw Error(a(188))}function O(e){var t=e.alternate;if(!t){if(t=E(e),t===null)throw Error(a(188));return t===e?e:null}for(var n=e,r=t;;){var i=n.return;if(i===null)break;var o=i.alternate;if(o===null){if(r=i.return,r!==null){n=r;continue}break}if(i.child===o.child){for(o=i.child;o;){if(o===n)return D(i),e;if(o===r)return D(i),t;o=o.sibling}throw Error(a(188))}if(n.return!==r.return)n=i,r=o;else{for(var s=!1,c=i.child;c;){if(c===n){s=!0,n=i,r=o;break}if(c===r){s=!0,r=i,n=o;break}c=c.sibling}if(!s){for(c=o.child;c;){if(c===n){s=!0,n=o,r=i;break}if(c===r){s=!0,r=o,n=i;break}c=c.sibling}if(!s)throw Error(a(189))}}if(n.alternate!==r)throw Error(a(190))}if(n.tag!==3)throw Error(a(188));return n.stateNode.current===n?e:t}function ee(e){return e=O(e),e===null?null:te(e)}function te(e){if(e.tag===5||e.tag===6)return e;for(e=e.child;e!==null;){var t=te(e);if(t!==null)return t;e=e.sibling}return null}function k(e){if(e.tag===5||e.tag===6)return e;for(e=e.child;e!==null;){if(e.tag!==4){var t=k(e);if(t!==null)return t}e=e.sibling}return null}var A=Array.isArray,ne=e.getPublicInstance,j=e.getRootHostContext,re=e.getChildHostContext,M=e.prepareForCommit,ie=e.resetAfterCommit,ae=e.createInstance,N=e.appendInitialChild,oe=e.finalizeInitialChildren,se=e.prepareUpdate,ce=e.shouldSetTextContent,le=e.createTextInstance,ue=e.scheduleTimeout,de=e.cancelTimeout,fe=e.noTimeout,pe=e.isPrimaryRenderer,me=e.supportsMutation,he=e.supportsPersistence,ge=e.supportsHydration,_e=e.getInstanceFromNode,ve=e.preparePortalMount,ye=e.getCurrentEventPriority,be=e.detachDeletedInstance,xe=e.supportsMicrotasks,Se=e.scheduleMicrotask,Ce=e.supportsTestSelectors,we=e.findFiberRoot,Te=e.getBoundingRect,Ee=e.getTextContent,De=e.isHiddenSubtree,Oe=e.matchAccessibilityRole,ke=e.setFocusIfFocusable,Ae=e.setupIntersectionObserver,je=e.appendChild,Me=e.appendChildToContainer,Ne=e.commitTextUpdate,Pe=e.commitMount,Fe=e.commitUpdate,Ie=e.insertBefore,Le=e.insertInContainerBefore,Re=e.removeChild,ze=e.removeChildFromContainer,Be=e.resetTextContent,Ve=e.hideInstance,He=e.hideTextInstance,Ue=e.unhideInstance,We=e.unhideTextInstance,Ge=e.clearContainer,Ke=e.cloneInstance,qe=e.createContainerChildSet,Je=e.appendChildToContainerChildSet,Ye=e.finalizeContainerChildren,Xe=e.replaceContainerChildren,Ze=e.cloneHiddenInstance,Qe=e.cloneHiddenTextInstance,$e=e.canHydrateInstance,et=e.canHydrateTextInstance,tt=e.canHydrateSuspenseInstance,nt=e.isSuspenseInstancePending,rt=e.isSuspenseInstanceFallback,it=e.getSuspenseInstanceFallbackErrorDetails,at=e.registerSuspenseInstanceRetry,ot=e.getNextHydratableSibling,st=e.getFirstHydratableChild,ct=e.getFirstHydratableChildWithinContainer,lt=e.getFirstHydratableChildWithinSuspenseInstance,ut=e.hydrateInstance,dt=e.hydrateTextInstance,ft=e.hydrateSuspenseInstance,pt=e.getNextHydratableInstanceAfterSuspenseInstance,mt=e.commitHydratedContainer,ht=e.commitHydratedSuspenseInstance,gt=e.clearSuspenseBoundary,_t=e.clearSuspenseBoundaryFromContainer,vt=e.shouldDeleteUnhydratedTailInstances,yt=e.didNotMatchHydratedContainerTextInstance,bt=e.didNotMatchHydratedTextInstance,xt;function St(e){if(xt===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);xt=t&&t[1]||``}return`
|
|
185
185
|
`+xt+e}var Ct=!1;function wt(e,t){if(!e||Ct)return``;Ct=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),typeof Reflect==`object`&&Reflect.construct){try{Reflect.construct(t,[])}catch(e){var r=e}Reflect.construct(e,[],t)}else{try{t.call()}catch(e){r=e}e.call(t.prototype)}else{try{throw Error()}catch(e){r=e}e()}}catch(t){if(t&&r&&typeof t.stack==`string`){for(var i=t.stack.split(`
|
|
186
186
|
`),a=r.stack.split(`
|
|
187
187
|
`),o=i.length-1,s=a.length-1;1<=o&&0<=s&&i[o]!==a[s];)s--;for(;1<=o&&0<=s;o--,s--)if(i[o]!==a[s]){if(o!==1||s!==1)do if(o--,s--,0>s||i[o]!==a[s]){var c=`
|
|
@@ -191,11 +191,11 @@ Error generating stack: `+e.message+`
|
|
|
191
191
|
`+(r.join(` > `)+`
|
|
192
192
|
|
|
193
193
|
No matching component was found for:
|
|
194
|
-
`)+e.join(` > `)}return null},t.getPublicRootInstance=function(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return ne(e.child.stateNode);default:return e.child.stateNode}},t.injectIntoDevTools=function(e){if(e={bundleType:e.bundleType,version:e.version,rendererPackageName:e.rendererPackageName,rendererConfig:e.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:o.ReactCurrentDispatcher,findHostInstanceByFiber:Gs,findFiberByHostInstance:e.findFiberByHostInstance||Ks,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:`18.3.1`},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`)e=!1;else{var t=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(t.isDisabled||!t.supportsFiber)e=!0;else{try{pn=t.inject(e),mn=t}catch{}e=!!t.checkDCE}}return e},t.isAlreadyRendering=function(){return!1},t.observeVisibleRects=function(e,t,n,r){if(!Ce)throw Error(a(363));e=So(e,t);var i=Ae(e,n,r).disconnect;return{disconnect:function(){i()}}},t.registerMutableSourceForHydration=function(e,t){var n=t._getVersion;n=n(t._source),e.mutableSourceEagerHydrationData==null?e.mutableSourceEagerHydrationData=[t,n]:e.mutableSourceEagerHydrationData.push(t,n)},t.runWithPriority=function(e,t){var n=tn;try{return tn=e,t()}finally{tn=n}},t.shouldError=function(){return null},t.shouldSuspend=function(){return!1},t.updateContainer=function(e,t,n,r){var i=t.current,a=Zo(),o=Qo(i);return n=Vs(n),t.context===null?t.context=n:t.pendingContext=n,t=Cr(a,o),t.payload={element:e},r=r===void 0?null:r,r!==null&&(t.callback=r),e=wr(i,t,o),e!==null&&($o(e,i,o,a),Tr(e,i,o)),o},t}})),
|
|
194
|
+
`)+e.join(` > `)}return null},t.getPublicRootInstance=function(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return ne(e.child.stateNode);default:return e.child.stateNode}},t.injectIntoDevTools=function(e){if(e={bundleType:e.bundleType,version:e.version,rendererPackageName:e.rendererPackageName,rendererConfig:e.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:o.ReactCurrentDispatcher,findHostInstanceByFiber:Gs,findFiberByHostInstance:e.findFiberByHostInstance||Ks,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:`18.3.1`},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`)e=!1;else{var t=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(t.isDisabled||!t.supportsFiber)e=!0;else{try{pn=t.inject(e),mn=t}catch{}e=!!t.checkDCE}}return e},t.isAlreadyRendering=function(){return!1},t.observeVisibleRects=function(e,t,n,r){if(!Ce)throw Error(a(363));e=So(e,t);var i=Ae(e,n,r).disconnect;return{disconnect:function(){i()}}},t.registerMutableSourceForHydration=function(e,t){var n=t._getVersion;n=n(t._source),e.mutableSourceEagerHydrationData==null?e.mutableSourceEagerHydrationData=[t,n]:e.mutableSourceEagerHydrationData.push(t,n)},t.runWithPriority=function(e,t){var n=tn;try{return tn=e,t()}finally{tn=n}},t.shouldError=function(){return null},t.shouldSuspend=function(){return!1},t.updateContainer=function(e,t,n,r){var i=t.current,a=Zo(),o=Qo(i);return n=Vs(n),t.context===null?t.context=n:t.pendingContext=n,t=Cr(a,o),t.payload={element:e},r=r===void 0?null:r,r!==null&&(t.callback=r),e=wr(i,t,o),e!==null&&($o(e,i,o,a),Tr(e,i,o)),o},t}})),Ix=o(((e,t)=>{t.exports=Fx()})),Lx=o((e=>{e.DefaultEventPriority=16,e.LegacyRoot=0})),Rx=o(((e,t)=>{t.exports=Lx()})),zx={children:!0,ref:!0,key:!0,style:!0,forwardedRef:!0,unstable_applyCache:!0,unstable_applyDrawHitFromCache:!0},Bx=!1,Vx=!1,Hx=`.react-konva-event`,Ux=!1,Wx=`ReactKonva: You have a Konva node with draggable = true and position defined but no onDragMove or onDragEnd events are handled.
|
|
195
195
|
Position of a node will be changed during drag&drop, so you should update state of the react app as well.
|
|
196
196
|
Consider to add onDragMove or onDragEnd events.
|
|
197
197
|
For more info see: https://github.com/konvajs/react-konva/issues/256
|
|
198
|
-
`,
|
|
198
|
+
`,Gx=`ReactKonva: You are using "zIndex" attribute for a Konva node.
|
|
199
199
|
react-konva may get confused with ordering. Just define correct order of elements in your render function of a component.
|
|
200
200
|
For more info see: https://github.com/konvajs/react-konva/issues/194
|
|
201
|
-
`,Gx={};function Kx(e,t,n=Gx){if(!zx&&`zIndex`in t&&(console.warn(Wx),zx=!0),!Bx&&t.draggable){var r=t.x!==void 0||t.y!==void 0,i=t.onDragEnd||t.onDragMove;r&&!i&&(console.warn(Ux),Bx=!0)}for(var a in n)if(!Rx[a]){var o=a.slice(0,2)===`on`,s=n[a]!==t[a];if(o&&s){var c=a.substr(2).toLowerCase();c.substr(0,7)===`content`&&(c=`content`+c.substr(7,1).toUpperCase()+c.substr(8)),e.off(c,n[a])}t.hasOwnProperty(a)||e.setAttr(a,void 0)}var l=Hx||t._useStrictMode,u={},d=!1;let f={};for(var a in t)if(!Rx[a]){var o=a.slice(0,2)===`on`,p=n[a]!==t[a];if(o&&p){var c=a.substr(2).toLowerCase();c.substr(0,7)===`content`&&(c=`content`+c.substr(7,1).toUpperCase()+c.substr(8)),t[a]&&(f[c]=t[a])}!o&&(t[a]!==n[a]||l&&t[a]!==e.getAttr(a))&&(d=!0,u[a]=t[a])}for(var c in d&&(e.setAttrs(u),qx(e)),f)e.on(c+Vx,f[c])}function qx(e){if(!J.autoDrawEnabled){var t=e.getLayer()||e.getStage();t&&t.batchDraw()}}var Jx=s({appendChild:()=>hS,appendChildToContainer:()=>gS,appendInitialChild:()=>$x,cancelTimeout:()=>pS,clearContainer:()=>OS,commitMount:()=>SS,commitTextUpdate:()=>xS,commitUpdate:()=>CS,createInstance:()=>eS,createTextInstance:()=>tS,detachDeletedInstance:()=>kS,finalizeInitialChildren:()=>nS,getChildHostContext:()=>dS,getCurrentEventPriority:()=>AS,getPublicInstance:()=>rS,getRootHostContext:()=>uS,hideInstance:()=>wS,hideTextInstance:()=>TS,idlePriority:()=>Yx.unstable_IdlePriority,insertBefore:()=>_S,insertInContainerBefore:()=>vS,isPrimaryRenderer:()=>!1,noTimeout:()=>-1,now:()=>Yx.unstable_now,prepareForCommit:()=>iS,preparePortalMount:()=>aS,prepareUpdate:()=>oS,removeChild:()=>yS,removeChildFromContainer:()=>bS,resetAfterCommit:()=>sS,resetTextContent:()=>cS,run:()=>Yx.unstable_runWithPriority,scheduleTimeout:()=>fS,shouldDeprioritizeSubtree:()=>lS,shouldSetTextContent:()=>mS,supportsMutation:()=>!0,unhideInstance:()=>ES,unhideTextInstance:()=>DS,warnsIfNotActing:()=>!0}),Yx=p(),Xx=Lx(),Zx={},Qx={};Nx.Node.prototype._applyProps=Kx;function $x(e,t){if(typeof t==`string`){console.error(`Do not use plain text as child of Konva.Node. You are using text: ${t}`);return}e.add(t),qx(e)}function eS(e,t,n){let r=Nx[e];r||=(console.error(`Konva has no node with the type ${e}. Group will be used instead. If you use minimal version of react-konva, just import required nodes into Konva: "import "konva/lib/shapes/${e}" If you want to render DOM elements as part of canvas tree take a look into this demo: https://konvajs.github.io/docs/react/DOM_Portal.html`),Nx.Group);let i={},a={};for(var o in t)o.slice(0,2)===`on`?a[o]=t[o]:i[o]=t[o];let s=new r(i);return Kx(s,a),s}function tS(e,t,n){console.error(`Text components are not supported for now in ReactKonva. Your text is: "${e}"`)}function nS(e,t,n){return!1}function rS(e){return e}function iS(){return null}function aS(){return null}function oS(e,t,n,r){return Qx}function sS(){}function cS(e){}function lS(e,t){return!1}function uS(){return Zx}function dS(){return Zx}var fS=setTimeout,pS=clearTimeout;function mS(e,t){return!1}function hS(e,t){t.parent===e?t.moveToTop():e.add(t),qx(e)}function gS(e,t){t.parent===e?t.moveToTop():e.add(t),qx(e)}function _S(e,t,n){t._remove(),e.add(t),t.setZIndex(n.getZIndex()),qx(e)}function vS(e,t,n){_S(e,t,n)}function yS(e,t){t.destroy(),t.off(Vx),qx(e)}function bS(e,t){t.destroy(),t.off(Vx),qx(e)}function xS(e,t,n){console.error(`Text components are not yet supported in ReactKonva. You text is: "${n}"`)}function SS(e,t,n){}function CS(e,t,n,r,i){Kx(e,i,r)}function wS(e){e.hide(),qx(e)}function TS(e){}function ES(e,t){(t.visible==null||t.visible)&&e.show()}function DS(e,t){}function OS(e){}function kS(){}var AS=()=>Xx.DefaultEventPriority,jS=Object.defineProperty,MS=Object.defineProperties,NS=Object.getOwnPropertyDescriptors,PS=Object.getOwnPropertySymbols,FS=Object.prototype.hasOwnProperty,IS=Object.prototype.propertyIsEnumerable,LS=(e,t,n)=>t in e?jS(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,RS=(e,t)=>{for(var n in t||={})FS.call(t,n)&&LS(e,n,t[n]);if(PS)for(var n of PS(t))IS.call(t,n)&&LS(e,n,t[n]);return e},zS=(e,t)=>MS(e,NS(t));typeof window<`u`&&(window.document?.createElement||window.navigator?.product===`ReactNative`)?F.useLayoutEffect:F.useEffect;function BS(e,t,n){if(!e)return;if(n(e)===!0)return e;let r=t?e.return:e.child;for(;r;){let e=BS(r,t,n);if(e)return e;r=t?null:r.sibling}}function VS(e){try{return Object.defineProperties(e,{_currentRenderer:{get(){return null},set(){}},_currentRenderer2:{get(){return null},set(){}}})}catch{return e}}var HS=console.error;console.error=function(){let e=[...arguments].join(``);if(e?.startsWith(`Warning:`)&&e.includes(`useContext`)){console.error=HS;return}return HS.apply(this,arguments)};var US=VS(F.createContext(null)),WS=class extends F.Component{render(){return F.createElement(US.Provider,{value:this._reactInternals},this.props.children)}};function GS(){let e=F.useContext(US);if(e===null)throw Error(`its-fine: useFiber must be called within a <FiberProvider />!`);let t=F.useId();return F.useMemo(()=>{for(let n of[e,e?.alternate]){if(!n)continue;let e=BS(n,!1,e=>{let n=e.memoizedState;for(;n;){if(n.memoizedState===t)return!0;n=n.next}});if(e)return e}},[e,t])}function KS(){let e=GS(),[t]=F.useState(()=>new Map);t.clear();let n=e;for(;n;){if(n.type&&typeof n.type==`object`){let e=n.type._context===void 0&&n.type.Provider===n.type?n.type:n.type._context;e&&e!==US&&!t.has(e)&&t.set(e,F.useContext(VS(e)))}n=n.return}return t}function qS(){let e=KS();return F.useMemo(()=>Array.from(e.keys()).reduce((t,n)=>r=>F.createElement(t,null,F.createElement(n.Provider,zS(RS({},r),{value:e.get(n)}))),e=>F.createElement(WS,RS({},e))),[e])}var JS=l(Fx());function YS(e){let t=F.useRef({});return F.useLayoutEffect(()=>{t.current=e}),F.useLayoutEffect(()=>()=>{t.current={}},[]),t.current}var XS=e=>{let t=F.useRef(null),n=F.useRef(null),r=F.useRef(null),i=YS(e),a=qS(),o=t=>{let{forwardedRef:n}=e;n&&(typeof n==`function`?n(t):n.current=t)};return F.useLayoutEffect(()=>(n.current=new Nx.Stage({width:e.width,height:e.height,container:t.current}),o(n.current),r.current=aC.createContainer(n.current,Xx.LegacyRoot,!1,null),aC.updateContainer(F.createElement(a,{},e.children),r.current),()=>{Nx.isBrowser&&(o(null),aC.updateContainer(null,r.current,null),n.current.destroy())}),[]),F.useLayoutEffect(()=>{o(n.current),Kx(n.current,e,i),aC.updateContainer(F.createElement(a,{},e.children),r.current,null)}),F.createElement(`div`,{ref:t,id:e.id,accessKey:e.accessKey,className:e.className,role:e.role,style:e.style,tabIndex:e.tabIndex,title:e.title})},ZS=`Layer`,QS=`Group`,$S=`Label`,eC=`Rect`,tC=`Circle`,nC=`Line`,rC=`Image`,iC=`Text`,aC=(0,JS.default)(Jx);aC.injectIntoDevTools({findHostInstanceByFiber:()=>null,bundleType:0,version:`18.3.1`,rendererPackageName:`react-konva`});var oC=F.forwardRef((e,t)=>F.createElement(WS,{},F.createElement(XS,{...e,forwardedRef:t})));function sC(e){return typeof e==`function`||typeof e==`object`&&!!e&&typeof e.$$typeof==`symbol`}function cC(e,t){return!e||sC(e)?e:sC(e.default)?e.default:t&&sC(e[t])?e[t]:t&&sC(e[t]?.default)?e[t].default:e}var lC=cC($S,`Label`),uC=cC(`Tag`,`Tag`),dC=cC(iC,`Text`),fC=cC(rC,`Image`),pC=cC(QS,`Group`),mC=20,hC=100,gC=class extends F.Component{constructor(e){super(e),this.state={image:null,showTooltip:!1}}componentDidMount(){this.loadImage()}componentDidUpdate(e){e.src!==this.props.src&&this.loadImage()}componentWillUnmount(){this.image.removeEventListener(`load`,this.handleLoad)}loadImage(){let{src:e}=this.props;this.image=new window.Image,this.image.src=e,this.image.addEventListener(`load`,this.handleLoad)}handleLoad=()=>{this.setState({image:this.image})};render(){let{x:e,y:t,tooltip:n}=this.props,{image:r,showTooltip:i}=this.state;return(0,I.jsxs)(pC,{children:[(0,I.jsx)(fC,{width:mC,height:mC,x:e,y:t,image:r,onMouseEnter:()=>this.setState({showTooltip:!0}),onMouseLeave:()=>this.setState({showTooltip:!1})}),i&&n&&(0,I.jsxs)(lC,{x:e+mC/2-hC/2,y:t+25,children:[(0,I.jsx)(uC,{fill:`white`,cornerRadius:5,opacity:.9}),(0,I.jsx)(dC,{text:n,padding:5,width:hC,align:`center`})]})]})}};gC.propTypes={src:P.string.isRequired,x:P.number.isRequired,y:P.number.isRequired,tooltip:P.string.isRequired};var _C=`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAgAAAAIACAYAAAD0eNT6AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAhGVYSWZNTQAqAAAACAAFARIAAwAAAAEAAQAAARoABQAAAAEAAABKARsABQAAAAEAAABSASgAAwAAAAEAAgAAh2kABAAAAAEAAABaAAAAAAAAAEgAAAABAAAASAAAAAEAA6ABAAMAAAABAAEAAKACAAQAAAABAAACAKADAAQAAAABAAACAAAAAAD4wtiGAAAACXBIWXMAAAsTAAALEwEAmpwYAAABWWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNS40LjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyI+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgpMwidZAABAAElEQVR4Ae2dCZwcZZn/n7e6e45kZjJJCIFwDSThTCAQrnAOIORAIICEI+RiEXCVU0QOkQRFRV1h19UVrwABdEH/QZEcyDHguuq60SiKq4AGRZArmStzdXe9/+etnurpnumjuuvoOn7Fh3R1Vb3X96np5/feRDhAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAAR8SkD4NF/IFgiAQGECgiTfeOwCjaa8I+hPPYIGd9WmtqbjqYa61sEBOTEe1ydLKXclKVqFEHtIIZuETnWSJP+vNRPJiXzeIEiLqySEkLpOQhdS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`,vC=`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAgAAAAIACAYAAAD0eNT6AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAhGVYSWZNTQAqAAAACAAFARIAAwAAAAEAAQAAARoABQAAAAEAAABKARsABQAAAAEAAABSASgAAwAAAAEAAgAAh2kABAAAAAEAAABaAAAAAAAAAEgAAAABAAAASAAAAAEAA6ABAAMAAAABAAEAAKACAAQAAAABAAACAKADAAQAAAABAAACAAAAAAD4wtiGAAAACXBIWXMAAAsTAAALEwEAmpwYAAABWWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNS40LjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyI+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgpMwidZAABAAElEQVR4AeydB5wV1fXHf++9bcAuLFWQtlZAFLAkJtZdUeyKvcQC9o5RozGJLbYUjUSj/mMSFbuowd7jgiUaK11UVEQRkLa9v/f+5w476+6y++qUOzO/+Xx2570p9577PffNOffcMgA3EiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABXQiEdBGEcpAACXRPoLwYxWiQvxyUICR7oDgcQx/1OR6SYxs347jx8cdjxtd4fOM9rdcl21WEQqhod1EF4m3f1fGK0MbvxvFYGJVyfplxfQuWlTW0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`;function yC(e){return typeof e==`function`||typeof e==`object`&&!!e&&typeof e.$$typeof==`symbol`}function bC(e,t){return!e||yC(e)?e:yC(e.default)?e.default:t&&yC(e[t])?e[t]:t&&yC(e[t]?.default)?e[t].default:e}var xC=bC(QS,`Group`),SC=bC(eC,`Rect`),CC=class extends F.Component{constructor(e){super(e),this.state={hovered:!1},this.groupRef=F.createRef()}componentDidMount(){this.props.focused&&this.moveGroupToTop()}componentDidUpdate(e){!e.focused&&this.props.focused&&this.moveGroupToTop()}moveGroupToTop=()=>{this.groupRef.current&&this.groupRef.current.moveToTop()};handleClick=e=>{let{onClick:t,id:n,selected:r,disabled:i}=this.props;i||(e.cancelBubble=!0,t({id:n,selected:!r,selector:`Mouse`}))};handleMouseEnter=()=>{let{disabled:e}=this.props;e||(document.body.style.cursor=`pointer`),this.setState({hovered:!0}),this.moveGroupToTop()};handleMouseLeave=()=>{document.body.style.cursor=`default`,this.setState({hovered:!1})};getEvaluateOutlineColor=(e,t,n)=>t?`green`:e?n:`red`;getOutlineWidth=(e,t,n,r)=>n||!n&&!e&&t?r:0;render(){let{height:e,hotspotColor:t,hoverOutlineColor:n,selectedHotspotColor:r,isCorrect:i,isEvaluateMode:a,outlineColor:o,selected:s,focused:c,width:l,x:u,y:d,evaluateText:f,strokeWidth:p,scale:m,markAsCorrect:h,showCorrectEnabled:g}=this.props,{hovered:_}=this.state,v=a?this.getEvaluateOutlineColor(i,h,o):o,y=this.getOutlineWidth(g,s,h,p),b=u+l/2-10,x=d+e/2-10,S;g?(s&&i||!s&&!i)&&(S=_C):s?S=i?_C:vC:i||(S=vC);let C=(_||c)&&n;return(0,I.jsxs)(xC,{ref:this.groupRef,scaleX:m,scaleY:m,onMouseLeave:this.handleMouseLeave,onMouseEnter:this.handleMouseEnter,children:[(0,I.jsx)(SC,{x:u,y:d,width:l,height:e,fill:s&&r?r:t,onClick:this.handleClick,onTap:this.handleClick,draggable:!1,stroke:C&&!s?`transparent`:v,strokeWidth:C&&!s?0:y,cursor:`pointer`}),C&&(0,I.jsx)(SC,{x:u,y:d,width:l,height:e,stroke:n,strokeWidth:p,listening:!1}),a&&S?(0,I.jsx)(gC,{src:S,x:b,y:x,tooltip:f}):null]})}};CC.propTypes={height:P.number.isRequired,hotspotColor:P.string.isRequired,id:P.string.isRequired,isCorrect:P.oneOfType([P.bool,P.string]),isEvaluateMode:P.bool.isRequired,hoverOutlineColor:P.string,disabled:P.bool.isRequired,focused:P.bool,onClick:P.func.isRequired,outlineColor:P.string.isRequired,selected:P.bool.isRequired,width:P.number.isRequired,x:P.number.isRequired,y:P.number.isRequired,evaluateText:P.string,strokeWidth:P.number,scale:P.number,selectedHotspotColor:P.string,markAsCorrect:P.bool.isRequired,showCorrectEnabled:P.bool.isRequired},CC.defaultProps={isCorrect:!1,evaluateText:null,focused:!1,strokeWidth:5,scale:1};function wC(e){return typeof e==`function`||typeof e==`object`&&!!e&&typeof e.$$typeof==`symbol`}function TC(e,t){return!e||wC(e)?e:wC(e.default)?e.default:t&&wC(e[t])?e[t]:t&&wC(e[t]?.default)?e[t].default:e}var EC=TC(eC,`Rect`),DC=TC(QS,`Group`),OC=TC(nC,`Line`),kC=class extends F.Component{constructor(e){super(e),this.state={hovered:!1},this.groupRef=F.createRef()}componentDidMount(){this.props.focused&&this.moveGroupToTop()}componentDidUpdate(e){!e.focused&&this.props.focused&&this.moveGroupToTop()}moveGroupToTop=()=>{this.groupRef.current&&this.groupRef.current.moveToTop()};getPolygonCenter=e=>{let t=e.map(({x:e})=>e),n=e.map(({y:e})=>e),r=Math.min.apply(null,t),i=Math.max.apply(null,t),a=Math.min.apply(null,n),o=Math.max.apply(null,n);return[(r+i)/2,(a+o)/2]};parsePointsForKonva=e=>{let t=[];return e.forEach(({x:e,y:n})=>{t.push(e),t.push(n)}),t};handleClick=e=>{let{onClick:t,id:n,selected:r,disabled:i}=this.props;i||(e.cancelBubble=!0,t({id:n,selected:!r,selector:`Mouse`}))};handleMouseEnter=()=>{let{disabled:e}=this.props;e||(document.body.style.cursor=`pointer`),this.setState({hovered:!0}),this.moveGroupToTop()};handleMouseLeave=()=>{document.body.style.cursor=`default`,this.setState({hovered:!1})};getEvaluateOutlineColor=(e,t,n)=>t?`green`:e?n:`red`;getOutlineWidth=(e,t,n,r)=>n||!n&&!e&&t?r:0;render(){let{hotspotColor:e,isCorrect:t,isEvaluateMode:n,hoverOutlineColor:r,outlineColor:i,selected:a,focused:o,points:s,evaluateText:c,strokeWidth:l,scale:u,markAsCorrect:d,selectedHotspotColor:f,showCorrectEnabled:p}=this.props,{hovered:m}=this.state,h=n?this.getEvaluateOutlineColor(t,d,i):i,g=this.getOutlineWidth(p,a,d,l),_=this.parsePointsForKonva(s),v=this.getPolygonCenter(s),y=v[0],b=v[1],x;p?(a&&t||!a&&!t)&&(x=_C):a?x=t?_C:vC:t||(x=vC);let S=(m||o)&&r,C=_.filter((e,t)=>t%2==0),w=_.filter((e,t)=>t%2!=0),T=Math.min(...C),E=Math.max(...C),D=Math.min(...w),O=Math.max(...w),ee=T,te=D,k=E-T,A=O-D;return(0,I.jsxs)(DC,{ref:this.groupRef,scaleX:u,scaleY:u,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,children:[(0,I.jsx)(OC,{points:_,closed:!0,fill:a&&f?f:e,onClick:this.handleClick,onTap:this.handleClick,draggable:!1,stroke:S&&!a?`transparent`:h,strokeWidth:S&&!a?0:g,cursor:`pointer`,position:`relative`}),S&&(0,I.jsx)(EC,{x:ee,y:te,width:k,height:A,stroke:r,strokeWidth:l,listening:!1}),n&&x?(0,I.jsx)(gC,{src:x,x:y,y:b,tooltip:c}):null]})}};kC.propTypes={hotspotColor:P.string.isRequired,id:P.string.isRequired,isCorrect:P.bool.isRequired,isEvaluateMode:P.bool.isRequired,hoverOutlineColor:P.string,disabled:P.bool.isRequired,focused:P.bool,onClick:P.func.isRequired,outlineColor:P.string.isRequired,points:P.array.isRequired,selected:P.bool.isRequired,evaluateText:P.string,selectedHotspotColor:P.string,strokeWidth:P.number,scale:P.number,markAsCorrect:P.bool.isRequired,showCorrectEnabled:P.bool.isRequired},kC.defaultProps={evaluateText:null,focused:!1,strokeWidth:5,scale:1};function AC(e){return typeof e==`function`||typeof e==`object`&&!!e&&typeof e.$$typeof==`symbol`}function jC(e,t){return!e||AC(e)?e:AC(e.default)?e.default:t&&AC(e[t])?e[t]:t&&AC(e[t]?.default)?e[t].default:e}var MC=jC(eC,`Rect`),NC=jC(QS,`Group`),PC=jC(tC,`Circle`),FC=class extends F.Component{constructor(e){super(e),this.state={hovered:!1},this.groupRef=F.createRef()}componentDidMount(){this.props.focused&&this.moveGroupToTop()}componentDidUpdate(e){!e.focused&&this.props.focused&&this.moveGroupToTop()}moveGroupToTop=()=>{this.groupRef.current&&this.groupRef.current.moveToTop()};handleClick=e=>{let{onClick:t,id:n,selected:r,disabled:i}=this.props;i||(e.cancelBubble=!0,t({id:n,selected:!r,selector:`Mouse`}))};handleMouseEnter=()=>{let{disabled:e}=this.props;e||(document.body.style.cursor=`pointer`),this.setState({hovered:!0}),this.moveGroupToTop()};handleMouseLeave=()=>{document.body.style.cursor=`default`,this.setState({hovered:!1})};getEvaluateOutlineColor=(e,t,n)=>t?`green`:e?n:`red`;getOutlineWidth=(e,t,n,r)=>n||!n&&!e&&t?r:0;render(){let{radius:e,hotspotColor:t,isCorrect:n,isEvaluateMode:r,hoverOutlineColor:i,outlineColor:a,selected:o,focused:s,x:c,y:l,evaluateText:u,strokeWidth:d,scale:f,markAsCorrect:p,selectedHotspotColor:m,showCorrectEnabled:h}=this.props,{hovered:g}=this.state,_=r?this.getEvaluateOutlineColor(n,p,a):a,v=this.getOutlineWidth(h,o,p,d),y=c-10,b=l-10,x;h?(o&&n||!o&&!n)&&(x=_C):o?x=n?_C:vC:n||(x=vC);let S=(g||s)&&i;return(0,I.jsxs)(NC,{ref:this.groupRef,scaleX:f,scaleY:f,onMouseLeave:this.handleMouseLeave,onMouseEnter:this.handleMouseEnter,children:[(0,I.jsx)(PC,{radius:e,fill:o&&m?m:t,onClick:this.handleClick,onTap:this.handleClick,draggable:!1,stroke:S&&!o?`transparent`:_,strokeWidth:S&&!o?0:v,x:c,y:l}),S&&(0,I.jsx)(MC,{x:c-e,y:l-e,width:e*2,height:e*2,stroke:i,strokeWidth:d,listening:!1}),r&&x?(0,I.jsx)(gC,{src:x,x:y,y:b,tooltip:u}):null]})}};FC.propTypes={radius:P.number.isRequired,hotspotColor:P.string.isRequired,id:P.string.isRequired,isCorrect:P.oneOfType([P.bool,P.string]),isEvaluateMode:P.bool.isRequired,disabled:P.bool.isRequired,focused:P.bool,hoverOutlineColor:P.string,onClick:P.func.isRequired,outlineColor:P.string.isRequired,selected:P.bool.isRequired,x:P.number.isRequired,y:P.number.isRequired,evaluateText:P.string,strokeWidth:P.number,scale:P.number,selectedHotspotColor:P.string,markAsCorrect:P.bool.isRequired,showCorrectEnabled:P.bool.isRequired},FC.defaultProps={isCorrect:!1,evaluateText:null,focused:!1,strokeWidth:5,scale:1};function IC(e){return typeof e==`function`||typeof e==`object`&&!!e&&typeof e.$$typeof==`symbol`}function LC(e,t){return!e||IC(e)?e:IC(e.default)?e.default:t&&IC(e[t])?e[t]:t&&IC(e[t]?.default)?e[t].default:e}var RC=LC(oC,`Stage`),zC=LC(ZS,`Layer`),{translator:BC}=um,VC=W(`div`)(({theme:e})=>({marginTop:e.spacing(2),marginBottom:e.spacing(2),position:`relative`,background:e.palette.common.white,border:`${e.spacing(1)} solid ${e.palette.common.white}`,width:`fit-content`,maxWidth:`100%`,overflowX:`auto`})),HC=W(`span`)({position:`absolute`,width:1,height:1,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`}),UC=W(`div`)({position:`relative`,width:`fit-content`}),WC=W(`img`)({alignItems:`center`,display:`flex`,justifyContent:`center`}),GC=W(RC)({left:0,top:0,position:`absolute`}),KC=class extends F.Component{constructor(e){super(e),this.state={focusedShapeId:null}}isSelected(e){return!!this.props.session.answers.filter(t=>t.id===e.id)[0]}correctness=(e,t)=>e?t:!t;descriptionId=dm(`hotspot-evaluation`);getEvaluateText=(e,t)=>{let{language:n}=this.props;return t&&e?BC.t(`hotspot.correctlySelected`,{lng:n}):t&&!e?BC.t(`hotspot.shouldNotHaveBeenSelected`,{lng:n}):!t&&e?BC.t(`hotspot.shouldHaveBeenSelected`,{lng:n}):null};getAllShapesSorted=()=>{let{shapes:{rectangles:e=[],polygons:t=[],circles:n=[]}}=this.props,r=[...e.map(e=>({...e,type:`rectangle`})),...t.map(e=>({...e,type:`polygon`})),...n.map(e=>({...e,type:`circle`}))];return r.sort((e,t)=>String(e.id).localeCompare(String(t.id),void 0,{numeric:!0})),r};hideCanvas=e=>{e?.getNativeCanvasElement().setAttribute(`aria-hidden`,`true`)};handleShapeFocus=e=>{this.setState({focusedShapeId:e})};handleShapeBlur=()=>{this.setState({focusedShapeId:null})};handleShapeKeyDown=(e,t)=>{if(e.key===`Enter`||e.key===` `){e.preventDefault();let{onSelectChoice:n,disabled:r}=this.props;if(!r){let e=this.getAllShapesSorted().find(e=>e.id===t);e&&n({id:t,selected:!this.isSelected(e),selector:`Keyboard`})}}};render(){let{dimensions:{width:e,height:t},disabled:n,hotspotColor:r,hoverOutlineColor:i,selectedHotspotColor:a,imageUrl:o,isEvaluateMode:s,language:c,outlineColor:l,onSelectChoice:u,shapes:{rectangles:d=[],polygons:f=[],circles:p=[]},scale:m,strokeWidth:h,showCorrect:g}=this.props,{focusedShapeId:_}=this.state,v=e*m,y=t*m,b=this.getAllShapesSorted();return(0,I.jsxs)(VC,{style:{padding:h/2},children:[o?(0,I.jsx)(UC,{children:(0,I.jsx)(WC,{alt:BC.t(`hotspot.image`,{lng:c,count:b.length}),height:`auto`,src:o,style:{width:v,height:y,maxWidth:v,maxHeight:y}})}):null,(0,I.jsx)(GC,{height:y+h,width:v+h,x:h/2,y:h/2,children:(0,I.jsxs)(zC,{ref:this.hideCanvas,children:[d.map(e=>{let t=this.isSelected(e),o=s?this.correctness(e.correct,t):void 0,c=s?this.getEvaluateText(e.correct,t):null,d=!!(s&&g&&e.correct);return(0,I.jsx)(CC,{scale:m,isEvaluateMode:s,isCorrect:o,evaluateText:c,disabled:n,selected:t,height:e.height,hotspotColor:r,hoverOutlineColor:i,selectedHotspotColor:a,id:e.id,onClick:u,outlineColor:l,width:e.width,x:e.x,y:e.y,strokeWidth:h,markAsCorrect:d,showCorrectEnabled:g,focused:_===e.id},e.id)}),f.map(e=>{let t=this.isSelected(e),o=s?this.correctness(e.correct,t):void 0,c=s?this.getEvaluateText(e.correct,t):null,d=!!(s&&g&&e.correct);return(0,I.jsx)(kC,{scale:m,isEvaluateMode:s,isCorrect:!!o,evaluateText:c,disabled:n,selected:t,hotspotColor:r,id:e.id,onClick:u,outlineColor:l,points:e.points,strokeWidth:h,markAsCorrect:d,selectedHotspotColor:a,hoverOutlineColor:i,showCorrectEnabled:g,focused:_===e.id},e.id)}),p.map(e=>{let t=this.isSelected(e),o=s?this.correctness(e.correct,t):void 0,c=s?this.getEvaluateText(e.correct,t):null,d=!!(s&&g&&e.correct);return(0,I.jsx)(FC,{scale:m,isEvaluateMode:s,isCorrect:o,evaluateText:c,disabled:n,selected:t,radius:e.radius,hotspotColor:r,id:e.id,onClick:u,outlineColor:l,x:e.x,y:e.y,strokeWidth:h,markAsCorrect:d,selectedHotspotColor:a,hoverOutlineColor:i,showCorrectEnabled:g,focused:_===e.id},e.id)})]})}),b.map((e,t)=>{let r=this.isSelected(e),i=e.ariaLabel?.trim()||BC.t(`hotspot.shape`,{lng:c,index:t+1,total:b.length}),a=s?this.getEvaluateText(e.correct,r):null,o=`${this.descriptionId}-${t}`;return(0,I.jsxs)(F.Fragment,{children:[(0,I.jsx)(HC,{tabIndex:n?-1:0,role:`button`,"aria-label":i,"aria-pressed":r,"aria-describedby":a?o:void 0,onFocus:()=>this.handleShapeFocus(e.id),onBlur:this.handleShapeBlur,onKeyDown:t=>this.handleShapeKeyDown(t,e.id)}),a&&(0,I.jsx)(`span`,{id:o,hidden:!0,children:a})]},`focus-${e.id}`)})]})}};KC.propTypes={dimensions:P.object.isRequired,disabled:P.bool.isRequired,hotspotColor:P.string.isRequired,hoverOutlineColor:P.string,imageUrl:P.string.isRequired,isEvaluateMode:P.bool.isRequired,language:P.string,onSelectChoice:P.func.isRequired,outlineColor:P.string.isRequired,selectedHotspotColor:P.string,session:P.object.isRequired,shapes:P.object.isRequired,strokeWidth:P.number,scale:P.number,showCorrect:P.bool},KC.defaultProps={scale:1};function qC(e){return typeof e==`function`||typeof e==`object`&&!!e&&typeof e.$$typeof==`symbol`}function JC(e,t){return!e||qC(e)?e:qC(e.default)?e.default:t&&qC(e[t])?e[t]:t&&qC(e[t]?.default)?e[t].default:e}var YC=JC(yh,`UiLayout`)||JC(ew.UiLayout,`UiLayout`),XC=JC(Qh,`PreviewPrompt`)||JC(ew.PreviewPrompt,`PreviewPrompt`),ZC=JC(_m,`Collapsible`)||JC(ew.Collapsible,`Collapsible`),QC=kg,$C=QC.default,ew=$C&&typeof $C==`object`?$C:QC,{translator:tw}=um,nw=W(YC)({color:Ad(),backgroundColor:Qd(),position:`relative`}),rw=W(ZC)(({theme:e})=>({marginBottom:e.spacing(2)})),iw=class extends F.Component{mainContainerId=dm(`main-container`);constructor(e){super(e),this.state={showCorrect:!1,observer:null,scale:1}}componentDidMount(){this.observer=new MutationObserver(e=>{e.forEach(()=>{let e=document.getElementById(`question-container`)?.style?.cssText,t=(e?.substring(e.indexOf(`--pie-zoom`)+11,e.lastIndexOf(`%`)))?.replace(/\s/g,``);t?parseFloat(t)/100!==this.state.scale&&this.setState({scale:parseFloat(t)/100}):!t&&this.state.scale!==1&&this.setState({scale:1})})});let e=document.getElementById(`question-container`);e&&this.observer.observe(e,{attributes:!0,attributeFilter:[`style`]}),Vt(Dl.findDOMNode(this))}componentDidUpdate(){Vt(Dl.findDOMNode(this))}componentWillUnmount(){this.observer?.disconnect()}onToggle=()=>{let{showCorrect:e}=this.state;this.setState({showCorrect:!e})};render(){let{session:e,model:{disabled:t,extraCSSRules:n,imageUrl:r,prompt:i,mode:a,multipleCorrect:o,shapes:s,outlineColor:c,hotspotColor:l,hoverOutlineColor:u,selectedHotspotColor:d,dimensions:f,rationale:p,teacherInstructions:m,strokeWidth:h,responseCorrect:g,language:_,fontSizeFactor:v,autoplayAudioEnabled:y,customAudioButton:b},onSelectChoice:x}=this.props,{showCorrect:S}=this.state,C=a===`evaluate`,w=a===`gather`,T=C&&!g,E=p&&(rg(p)||ag(p)),D=m&&(rg(m)||ag(m));return(0,I.jsxs)(nw,{extraCSSRules:n,id:this.mainContainerId,className:`main-container`,fontSizeFactor:v,children:[D&&(0,I.jsx)(rw,{labels:{hidden:tw.t(`common:showTeacherInstructions`,{lng:_}),visible:tw.t(`common:hideTeacherInstructions`,{lng:_})},children:(0,I.jsx)(XC,{className:`prompt`,prompt:m})}),i&&(0,I.jsx)(XC,{className:`prompt`,prompt:i,autoplayAudioEnabled:y,customAudioButton:b,language:_}),T&&(0,I.jsx)(Jg,{show:T,toggled:S,onToggle:this.onToggle.bind(this),language:_}),r?(0,I.jsx)(KC,{isEvaluateMode:C,session:e,dimensions:f,imageUrl:r,language:_,hotspotColor:l,hoverOutlineColor:w?u:void 0,selectedHotspotColor:d,multipleCorrect:o,outlineColor:c,onSelectChoice:x,shapes:s,disabled:t,strokeWidth:h,scale:this.state.scale,showCorrect:S}):null,E&&(0,I.jsx)(ZC,{labels:{hidden:tw.t(`common:showRationale`,{lng:_}),visible:tw.t(`common:hideRationale`,{lng:_})},children:(0,I.jsx)(XC,{className:`prompt`,prompt:p})})]})}};iw.propTypes={model:P.object.isRequired,onSelectChoice:P.func.isRequired,session:P.object.isRequired};function aw(e,t,n){let{id:r,selected:i}=n,{multipleCorrect:a}=t||{};if(e.answers=e.answers||[],!i)e.answers=e.answers.filter(e=>e.id!==r);else{let t={id:r};a?e.answers.push(t):e.answers=[t],e.selector=n.selector}}function ow(e,t){e.audioStartTime=e.audioStartTime||t.audioStartTime,e.audioEndTime=e.audioEndTime||t.audioEndTime,!e.waitTime&&e.audioStartTime&&e.audioEndTime&&(e.waitTime=e.audioEndTime-e.audioStartTime)}var sw=g();function cw(e){return typeof e==`function`||typeof e==`object`&&!!e&&typeof e.$$typeof==`symbol`}function lw(e,t){return!e||cw(e)?e:cw(e.default)?e.default:t&&cw(e[t])?e[t]:t&&cw(e[t]?.default)?e[t].default:e}var uw=lw(`data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAMCAgICAgMCAgIDAwMDBAYEBAQEBAgGBgUGCQgKCgkICQkKDA8MCgsOCwkJDRENDg8QEBEQCgwSExIQEw8QEBD/2wBDAQMDAwQDBAgEBAgQCwkLEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBD/wAARCAJYAyADAREAAhEBAxEB/8QAHgABAQABBQEBAQAAAAAAAAAAAAEIAgMGBwkEBQr/xABiEAACAQIDBAMKCAYMCgYLAQAAAQIDEQQFIQYSMUEHCFETFRYiUmFxkdHhCRRjgaGisfAXMjRTcsEjJDY4QmJ1dpKztMQYMzdEVIKyw9PxQ1hmc3SWJzVFRlZXhJOUldJk/8QAGwEBAQADAQEBAAAAAAAAAAAAAAcEBQYCAQP/xABBEQEAAQIDAgkJBgUFAQEBAAAAAQIDBAYRBSESMUFEYXGCscITNDVRcoGRocEUIjJS0eEVI2KSsjNCU6LwFtLx/9oADAMBAAIRAxEAPwD1TAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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`,`EnableAudioAutoplayImage`)||lw(pw.EnableAudioAutoplayImage,`EnableAudioAutoplayImage`),dw=kg,fw=dw.default,pw=fw&&typeof fw==`object`?fw:dw,mw=class extends HTMLElement{constructor(){super(),this._model=null,this._session=null,this._audioInitialized=!1,this.audioComplete=!1,this._root=null}set model(e){this._model=e,this.dispatchEvent(new Ag(this.tagName.toLowerCase(),this.isComplete(),!!this._model)),this._audioInitialized=!1,this._render()}isComplete(){if(!this._session||!this._session.answers)return!1;let{completeAudioEnabled:e}=this._model||{},t=this;if(e&&!this.audioComplete&&t){let e=t.querySelector(`audio`),n=e&&e.closest(`.preview-prompt`);if(e&&n)return!1}return Array.isArray(this._session.answers)?this._session.answers.length>0:!1}set session(e){e&&!e.answers&&(e.answers=[]),this._session=e,this._render()}get session(){return this._session}onSelectChoice(e){aw(this._session,this._model,e),this.dispatchEvent(new jg(this.tagName.toLowerCase(),this.isComplete())),this._render()}_createAudioInfoToast(){let e=document.createElement(`div`);e.id=dm(`play-audio-info`),e.className=`play-audio-info`,Object.assign(e.style,{position:`absolute`,top:0,width:`100%`,height:`100%`,display:`flex`,justifyContent:`center`,alignItems:`center`,background:`white`,zIndex:`1000`,cursor:`pointer`});let t=document.createElement(`img`);return t.src=uw,t.alt=`Click anywhere to enable audio autoplay`,t.width=500,t.height=300,e.appendChild(t),e}connectedCallback(){this._render(),new MutationObserver((e,t)=>{e.forEach(e=>{if(e.type===`childList`){if(this._audioInitialized)return;let e=this.querySelector(`audio`),n=e&&e.closest(`.preview-prompt`);if(!this._model)return;let{autoplayAudioEnabled:r,completeAudioEnabled:i}=this._model;if(!r&&!i||e&&!n||!e)return;let a=this._createAudioInfoToast(),o=this.querySelector(`.main-container`),s=()=>{this.querySelector(`.play-audio-info`)&&(e.play(),o.removeChild(a)),document.removeEventListener(`click`,s)};r&&setTimeout(()=>{e.paused&&!this.querySelector(`.play-audio-info`)?(o.appendChild(a),document.addEventListener(`click`,s)):document.removeEventListener(`click`,s)},500);let c=()=>{ow(this._session,{audioStartTime:new Date().getTime()});let t=this.querySelector(`.play-audio-info`);t&&o.removeChild(t),e.removeEventListener(`playing`,c)};e.addEventListener(`playing`,c);let l=()=>{ow(this._session,{audioEndTime:new Date().getTime()});let{audioStartTime:t,audioEndTime:n,waitTime:r}=this._session;!r&&t&&n&&(this._session.waitTime=n-t),this.audioComplete=!0,this.dispatchEvent(new jg(this.tagName.toLowerCase(),this.isComplete())),e.removeEventListener(`ended`,l)};e.addEventListener(`ended`,l),this._audio=e,this._handlePlaying=c,this._handleEnded=l,this._enableAudio=s,this._audioInitialized=!0,t.disconnect()}})}).observe(this,{childList:!0,subtree:!0})}_render(){if(this._model&&this._session){let e=F.createElement(iw,{model:this._model,session:this._session,onSelectChoice:this.onSelectChoice.bind(this)});this._root||=(0,sw.createRoot)(this),this._root.render(e),queueMicrotask(()=>{Vt(this)})}}disconnectedCallback(){document.removeEventListener(`click`,this._enableAudio),this._audio&&=(this._audio.removeEventListener(`playing`,this._handlePlaying),this._audio.removeEventListener(`ended`,this._handleEnded),null),this._root&&=(this._root.unmount(),null)}};return typeof window<`u`&&!customElements.get(`hotspot-element`)&&customElements.define(`hotspot-element`,mw),mw})();
|
|
201
|
+
`,Kx={};function qx(e,t,n=Kx){if(!Bx&&`zIndex`in t&&(console.warn(Gx),Bx=!0),!Vx&&t.draggable){var r=t.x!==void 0||t.y!==void 0,i=t.onDragEnd||t.onDragMove;r&&!i&&(console.warn(Wx),Vx=!0)}for(var a in n)if(!zx[a]){var o=a.slice(0,2)===`on`,s=n[a]!==t[a];if(o&&s){var c=a.substr(2).toLowerCase();c.substr(0,7)===`content`&&(c=`content`+c.substr(7,1).toUpperCase()+c.substr(8)),e.off(c,n[a])}t.hasOwnProperty(a)||e.setAttr(a,void 0)}var l=Ux||t._useStrictMode,u={},d=!1;let f={};for(var a in t)if(!zx[a]){var o=a.slice(0,2)===`on`,p=n[a]!==t[a];if(o&&p){var c=a.substr(2).toLowerCase();c.substr(0,7)===`content`&&(c=`content`+c.substr(7,1).toUpperCase()+c.substr(8)),t[a]&&(f[c]=t[a])}!o&&(t[a]!==n[a]||l&&t[a]!==e.getAttr(a))&&(d=!0,u[a]=t[a])}for(var c in d&&(e.setAttrs(u),Jx(e)),f)e.on(c+Hx,f[c])}function Jx(e){if(!J.autoDrawEnabled){var t=e.getLayer()||e.getStage();t&&t.batchDraw()}}var Yx=s({appendChild:()=>gS,appendChildToContainer:()=>_S,appendInitialChild:()=>eS,cancelTimeout:()=>mS,clearContainer:()=>kS,commitMount:()=>CS,commitTextUpdate:()=>SS,commitUpdate:()=>wS,createInstance:()=>tS,createTextInstance:()=>nS,detachDeletedInstance:()=>AS,finalizeInitialChildren:()=>rS,getChildHostContext:()=>fS,getCurrentEventPriority:()=>jS,getPublicInstance:()=>iS,getRootHostContext:()=>dS,hideInstance:()=>TS,hideTextInstance:()=>ES,idlePriority:()=>Xx.unstable_IdlePriority,insertBefore:()=>vS,insertInContainerBefore:()=>yS,isPrimaryRenderer:()=>!1,noTimeout:()=>-1,now:()=>Xx.unstable_now,prepareForCommit:()=>aS,preparePortalMount:()=>oS,prepareUpdate:()=>sS,removeChild:()=>bS,removeChildFromContainer:()=>xS,resetAfterCommit:()=>cS,resetTextContent:()=>lS,run:()=>Xx.unstable_runWithPriority,scheduleTimeout:()=>pS,shouldDeprioritizeSubtree:()=>uS,shouldSetTextContent:()=>hS,supportsMutation:()=>!0,unhideInstance:()=>DS,unhideTextInstance:()=>OS,warnsIfNotActing:()=>!0}),Xx=p(),Zx=Rx(),Qx={},$x={};Px.Node.prototype._applyProps=qx;function eS(e,t){if(typeof t==`string`){console.error(`Do not use plain text as child of Konva.Node. You are using text: ${t}`);return}e.add(t),Jx(e)}function tS(e,t,n){let r=Px[e];r||=(console.error(`Konva has no node with the type ${e}. Group will be used instead. If you use minimal version of react-konva, just import required nodes into Konva: "import "konva/lib/shapes/${e}" If you want to render DOM elements as part of canvas tree take a look into this demo: https://konvajs.github.io/docs/react/DOM_Portal.html`),Px.Group);let i={},a={};for(var o in t)o.slice(0,2)===`on`?a[o]=t[o]:i[o]=t[o];let s=new r(i);return qx(s,a),s}function nS(e,t,n){console.error(`Text components are not supported for now in ReactKonva. Your text is: "${e}"`)}function rS(e,t,n){return!1}function iS(e){return e}function aS(){return null}function oS(){return null}function sS(e,t,n,r){return $x}function cS(){}function lS(e){}function uS(e,t){return!1}function dS(){return Qx}function fS(){return Qx}var pS=setTimeout,mS=clearTimeout;function hS(e,t){return!1}function gS(e,t){t.parent===e?t.moveToTop():e.add(t),Jx(e)}function _S(e,t){t.parent===e?t.moveToTop():e.add(t),Jx(e)}function vS(e,t,n){t._remove(),e.add(t),t.setZIndex(n.getZIndex()),Jx(e)}function yS(e,t,n){vS(e,t,n)}function bS(e,t){t.destroy(),t.off(Hx),Jx(e)}function xS(e,t){t.destroy(),t.off(Hx),Jx(e)}function SS(e,t,n){console.error(`Text components are not yet supported in ReactKonva. You text is: "${n}"`)}function CS(e,t,n){}function wS(e,t,n,r,i){qx(e,i,r)}function TS(e){e.hide(),Jx(e)}function ES(e){}function DS(e,t){(t.visible==null||t.visible)&&e.show()}function OS(e,t){}function kS(e){}function AS(){}var jS=()=>Zx.DefaultEventPriority,MS=Object.defineProperty,NS=Object.defineProperties,PS=Object.getOwnPropertyDescriptors,FS=Object.getOwnPropertySymbols,IS=Object.prototype.hasOwnProperty,LS=Object.prototype.propertyIsEnumerable,RS=(e,t,n)=>t in e?MS(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,zS=(e,t)=>{for(var n in t||={})IS.call(t,n)&&RS(e,n,t[n]);if(FS)for(var n of FS(t))LS.call(t,n)&&RS(e,n,t[n]);return e},BS=(e,t)=>NS(e,PS(t));typeof window<`u`&&(window.document?.createElement||window.navigator?.product===`ReactNative`)?F.useLayoutEffect:F.useEffect;function VS(e,t,n){if(!e)return;if(n(e)===!0)return e;let r=t?e.return:e.child;for(;r;){let e=VS(r,t,n);if(e)return e;r=t?null:r.sibling}}function HS(e){try{return Object.defineProperties(e,{_currentRenderer:{get(){return null},set(){}},_currentRenderer2:{get(){return null},set(){}}})}catch{return e}}var US=console.error;console.error=function(){let e=[...arguments].join(``);if(e?.startsWith(`Warning:`)&&e.includes(`useContext`)){console.error=US;return}return US.apply(this,arguments)};var WS=HS(F.createContext(null)),GS=class extends F.Component{render(){return F.createElement(WS.Provider,{value:this._reactInternals},this.props.children)}};function KS(){let e=F.useContext(WS);if(e===null)throw Error(`its-fine: useFiber must be called within a <FiberProvider />!`);let t=F.useId();return F.useMemo(()=>{for(let n of[e,e?.alternate]){if(!n)continue;let e=VS(n,!1,e=>{let n=e.memoizedState;for(;n;){if(n.memoizedState===t)return!0;n=n.next}});if(e)return e}},[e,t])}function qS(){let e=KS(),[t]=F.useState(()=>new Map);t.clear();let n=e;for(;n;){if(n.type&&typeof n.type==`object`){let e=n.type._context===void 0&&n.type.Provider===n.type?n.type:n.type._context;e&&e!==WS&&!t.has(e)&&t.set(e,F.useContext(HS(e)))}n=n.return}return t}function JS(){let e=qS();return F.useMemo(()=>Array.from(e.keys()).reduce((t,n)=>r=>F.createElement(t,null,F.createElement(n.Provider,BS(zS({},r),{value:e.get(n)}))),e=>F.createElement(GS,zS({},e))),[e])}var YS=l(Ix());function XS(e){let t=F.useRef({});return F.useLayoutEffect(()=>{t.current=e}),F.useLayoutEffect(()=>()=>{t.current={}},[]),t.current}var ZS=e=>{let t=F.useRef(null),n=F.useRef(null),r=F.useRef(null),i=XS(e),a=JS(),o=t=>{let{forwardedRef:n}=e;n&&(typeof n==`function`?n(t):n.current=t)};return F.useLayoutEffect(()=>(n.current=new Px.Stage({width:e.width,height:e.height,container:t.current}),o(n.current),r.current=oC.createContainer(n.current,Zx.LegacyRoot,!1,null),oC.updateContainer(F.createElement(a,{},e.children),r.current),()=>{Px.isBrowser&&(o(null),oC.updateContainer(null,r.current,null),n.current.destroy())}),[]),F.useLayoutEffect(()=>{o(n.current),qx(n.current,e,i),oC.updateContainer(F.createElement(a,{},e.children),r.current,null)}),F.createElement(`div`,{ref:t,id:e.id,accessKey:e.accessKey,className:e.className,role:e.role,style:e.style,tabIndex:e.tabIndex,title:e.title})},QS=`Layer`,$S=`Group`,eC=`Label`,tC=`Rect`,nC=`Circle`,rC=`Line`,iC=`Image`,aC=`Text`,oC=(0,YS.default)(Yx);oC.injectIntoDevTools({findHostInstanceByFiber:()=>null,bundleType:0,version:`18.3.1`,rendererPackageName:`react-konva`});var sC=F.forwardRef((e,t)=>F.createElement(GS,{},F.createElement(ZS,{...e,forwardedRef:t})));function cC(e){return typeof e==`function`||typeof e==`object`&&!!e&&typeof e.$$typeof==`symbol`}function lC(e,t){return!e||cC(e)?e:cC(e.default)?e.default:t&&cC(e[t])?e[t]:t&&cC(e[t]?.default)?e[t].default:e}var uC=lC(eC,`Label`),dC=lC(`Tag`,`Tag`),fC=lC(aC,`Text`),pC=lC(iC,`Image`),mC=lC($S,`Group`),hC=20,gC=100,_C=class extends F.Component{constructor(e){super(e),this.state={image:null,showTooltip:!1}}componentDidMount(){this.loadImage()}componentDidUpdate(e){e.src!==this.props.src&&this.loadImage()}componentWillUnmount(){this.image.removeEventListener(`load`,this.handleLoad)}loadImage(){let{src:e}=this.props;this.image=new window.Image,this.image.src=e,this.image.addEventListener(`load`,this.handleLoad)}handleLoad=()=>{this.setState({image:this.image})};render(){let{x:e,y:t,tooltip:n}=this.props,{image:r,showTooltip:i}=this.state;return(0,I.jsxs)(mC,{children:[(0,I.jsx)(pC,{width:hC,height:hC,x:e,y:t,image:r,onMouseEnter:()=>this.setState({showTooltip:!0}),onMouseLeave:()=>this.setState({showTooltip:!1})}),i&&n&&(0,I.jsxs)(uC,{x:e+hC/2-gC/2,y:t+25,children:[(0,I.jsx)(dC,{fill:`white`,cornerRadius:5,opacity:.9}),(0,I.jsx)(fC,{text:n,padding:5,width:gC,align:`center`})]})]})}};_C.propTypes={src:P.string.isRequired,x:P.number.isRequired,y:P.number.isRequired,tooltip:P.string.isRequired};var vC=`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAgAAAAIACAYAAAD0eNT6AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAhGVYSWZNTQAqAAAACAAFARIAAwAAAAEAAQAAARoABQAAAAEAAABKARsABQAAAAEAAABSASgAAwAAAAEAAgAAh2kABAAAAAEAAABaAAAAAAAAAEgAAAABAAAASAAAAAEAA6ABAAMAAAABAAEAAKACAAQAAAABAAACAKADAAQAAAABAAACAAAAAAD4wtiGAAAACXBIWXMAAAsTAAALEwEAmpwYAAABWWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNS40LjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyI+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgpMwidZAABAAElEQVR4Ae2dCZwcZZn/n7e6e45kZjJJCIFwDSThTCAQrnAOIORAIICEI+RiEXCVU0QOkQRFRV1h19UVrwABdEH/QZEcyDHguuq60SiKq4AGRZArmStzdXe9/+etnurpnumjuuvoOn7Fh3R1Vb3X96np5/feRDhAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAAR8SkD4NF/IFgiAQGECgiTfeOwCjaa8I+hPPYIGd9WmtqbjqYa61sEBOTEe1ydLKXclKVqFEHtIIZuETnWSJP+vNRPJiXzeIEiLqySEkLpOQhdS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`,yC=`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAgAAAAIACAYAAAD0eNT6AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAhGVYSWZNTQAqAAAACAAFARIAAwAAAAEAAQAAARoABQAAAAEAAABKARsABQAAAAEAAABSASgAAwAAAAEAAgAAh2kABAAAAAEAAABaAAAAAAAAAEgAAAABAAAASAAAAAEAA6ABAAMAAAABAAEAAKACAAQAAAABAAACAKADAAQAAAABAAACAAAAAAD4wtiGAAAACXBIWXMAAAsTAAALEwEAmpwYAAABWWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNS40LjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyI+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgpMwidZAABAAElEQVR4AeydB5wV1fXHf++9bcAuLFWQtlZAFLAkJtZdUeyKvcQC9o5RozGJLbYUjUSj/mMSFbuowd7jgiUaK11UVEQRkLa9v/f+5w476+6y++qUOzO/+Xx2570p9577PffNOffcMgA3EiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABXQiEdBGEcpAACXRPoLwYxWiQvxyUICR7oDgcQx/1OR6SYxs347jx8cdjxtd4fOM9rdcl21WEQqhod1EF4m3f1fGK0MbvxvFYGJVyfplxfQuWlTW0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`;function bC(e){return typeof e==`function`||typeof e==`object`&&!!e&&typeof e.$$typeof==`symbol`}function xC(e,t){return!e||bC(e)?e:bC(e.default)?e.default:t&&bC(e[t])?e[t]:t&&bC(e[t]?.default)?e[t].default:e}var SC=xC($S,`Group`),CC=xC(tC,`Rect`),wC=class extends F.Component{constructor(e){super(e),this.state={hovered:!1},this.groupRef=F.createRef()}componentDidMount(){this.props.focused&&this.moveGroupToTop()}componentDidUpdate(e){!e.focused&&this.props.focused&&this.moveGroupToTop()}moveGroupToTop=()=>{this.groupRef.current&&this.groupRef.current.moveToTop()};handleClick=e=>{let{onClick:t,id:n,selected:r,disabled:i}=this.props;i||(e.cancelBubble=!0,t({id:n,selected:!r,selector:`Mouse`}))};handleMouseEnter=()=>{let{disabled:e}=this.props;e||(document.body.style.cursor=`pointer`),this.setState({hovered:!0}),this.moveGroupToTop()};handleMouseLeave=()=>{document.body.style.cursor=`default`,this.setState({hovered:!1})};getEvaluateOutlineColor=(e,t,n)=>t?`green`:e?n:`red`;getOutlineWidth=(e,t,n,r)=>n||!n&&!e&&t?r:0;render(){let{height:e,hotspotColor:t,hoverOutlineColor:n,selectedHotspotColor:r,isCorrect:i,isEvaluateMode:a,outlineColor:o,selected:s,focused:c,width:l,x:u,y:d,evaluateText:f,strokeWidth:p,scale:m,markAsCorrect:h,showCorrectEnabled:g}=this.props,{hovered:_}=this.state,v=a?this.getEvaluateOutlineColor(i,h,o):o,y=this.getOutlineWidth(g,s,h,p),b=u+l/2-10,x=d+e/2-10,S;g?(s&&i||!s&&!i)&&(S=vC):s?S=i?vC:yC:i||(S=yC);let C=(_||c)&&n;return(0,I.jsxs)(SC,{ref:this.groupRef,scaleX:m,scaleY:m,onMouseLeave:this.handleMouseLeave,onMouseEnter:this.handleMouseEnter,children:[(0,I.jsx)(CC,{x:u,y:d,width:l,height:e,fill:s&&r?r:t,onClick:this.handleClick,onTap:this.handleClick,draggable:!1,stroke:C&&!s?`transparent`:v,strokeWidth:C&&!s?0:y,cursor:`pointer`}),C&&(0,I.jsx)(CC,{x:u,y:d,width:l,height:e,stroke:n,strokeWidth:p,listening:!1}),a&&S?(0,I.jsx)(_C,{src:S,x:b,y:x,tooltip:f}):null]})}};wC.propTypes={height:P.number.isRequired,hotspotColor:P.string.isRequired,id:P.string.isRequired,isCorrect:P.oneOfType([P.bool,P.string]),isEvaluateMode:P.bool.isRequired,hoverOutlineColor:P.string,disabled:P.bool.isRequired,focused:P.bool,onClick:P.func.isRequired,outlineColor:P.string.isRequired,selected:P.bool.isRequired,width:P.number.isRequired,x:P.number.isRequired,y:P.number.isRequired,evaluateText:P.string,strokeWidth:P.number,scale:P.number,selectedHotspotColor:P.string,markAsCorrect:P.bool.isRequired,showCorrectEnabled:P.bool.isRequired},wC.defaultProps={isCorrect:!1,evaluateText:null,focused:!1,strokeWidth:5,scale:1};function TC(e){return typeof e==`function`||typeof e==`object`&&!!e&&typeof e.$$typeof==`symbol`}function EC(e,t){return!e||TC(e)?e:TC(e.default)?e.default:t&&TC(e[t])?e[t]:t&&TC(e[t]?.default)?e[t].default:e}var DC=EC(tC,`Rect`),OC=EC($S,`Group`),kC=EC(rC,`Line`),AC=class extends F.Component{constructor(e){super(e),this.state={hovered:!1},this.groupRef=F.createRef()}componentDidMount(){this.props.focused&&this.moveGroupToTop()}componentDidUpdate(e){!e.focused&&this.props.focused&&this.moveGroupToTop()}moveGroupToTop=()=>{this.groupRef.current&&this.groupRef.current.moveToTop()};getPolygonCenter=e=>{let t=e.map(({x:e})=>e),n=e.map(({y:e})=>e),r=Math.min.apply(null,t),i=Math.max.apply(null,t),a=Math.min.apply(null,n),o=Math.max.apply(null,n);return[(r+i)/2,(a+o)/2]};parsePointsForKonva=e=>{let t=[];return e.forEach(({x:e,y:n})=>{t.push(e),t.push(n)}),t};handleClick=e=>{let{onClick:t,id:n,selected:r,disabled:i}=this.props;i||(e.cancelBubble=!0,t({id:n,selected:!r,selector:`Mouse`}))};handleMouseEnter=()=>{let{disabled:e}=this.props;e||(document.body.style.cursor=`pointer`),this.setState({hovered:!0}),this.moveGroupToTop()};handleMouseLeave=()=>{document.body.style.cursor=`default`,this.setState({hovered:!1})};getEvaluateOutlineColor=(e,t,n)=>t?`green`:e?n:`red`;getOutlineWidth=(e,t,n,r)=>n||!n&&!e&&t?r:0;render(){let{hotspotColor:e,isCorrect:t,isEvaluateMode:n,hoverOutlineColor:r,outlineColor:i,selected:a,focused:o,points:s,evaluateText:c,strokeWidth:l,scale:u,markAsCorrect:d,selectedHotspotColor:f,showCorrectEnabled:p}=this.props,{hovered:m}=this.state,h=n?this.getEvaluateOutlineColor(t,d,i):i,g=this.getOutlineWidth(p,a,d,l),_=this.parsePointsForKonva(s),v=this.getPolygonCenter(s),y=v[0],b=v[1],x;p?(a&&t||!a&&!t)&&(x=vC):a?x=t?vC:yC:t||(x=yC);let S=(m||o)&&r,C=_.filter((e,t)=>t%2==0),w=_.filter((e,t)=>t%2!=0),T=Math.min(...C),E=Math.max(...C),D=Math.min(...w),O=Math.max(...w),ee=T,te=D,k=E-T,A=O-D;return(0,I.jsxs)(OC,{ref:this.groupRef,scaleX:u,scaleY:u,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave,children:[(0,I.jsx)(kC,{points:_,closed:!0,fill:a&&f?f:e,onClick:this.handleClick,onTap:this.handleClick,draggable:!1,stroke:S&&!a?`transparent`:h,strokeWidth:S&&!a?0:g,cursor:`pointer`,position:`relative`}),S&&(0,I.jsx)(DC,{x:ee,y:te,width:k,height:A,stroke:r,strokeWidth:l,listening:!1}),n&&x?(0,I.jsx)(_C,{src:x,x:y,y:b,tooltip:c}):null]})}};AC.propTypes={hotspotColor:P.string.isRequired,id:P.string.isRequired,isCorrect:P.bool.isRequired,isEvaluateMode:P.bool.isRequired,hoverOutlineColor:P.string,disabled:P.bool.isRequired,focused:P.bool,onClick:P.func.isRequired,outlineColor:P.string.isRequired,points:P.array.isRequired,selected:P.bool.isRequired,evaluateText:P.string,selectedHotspotColor:P.string,strokeWidth:P.number,scale:P.number,markAsCorrect:P.bool.isRequired,showCorrectEnabled:P.bool.isRequired},AC.defaultProps={evaluateText:null,focused:!1,strokeWidth:5,scale:1};function jC(e){return typeof e==`function`||typeof e==`object`&&!!e&&typeof e.$$typeof==`symbol`}function MC(e,t){return!e||jC(e)?e:jC(e.default)?e.default:t&&jC(e[t])?e[t]:t&&jC(e[t]?.default)?e[t].default:e}var NC=MC(tC,`Rect`),PC=MC($S,`Group`),FC=MC(nC,`Circle`),IC=class extends F.Component{constructor(e){super(e),this.state={hovered:!1},this.groupRef=F.createRef()}componentDidMount(){this.props.focused&&this.moveGroupToTop()}componentDidUpdate(e){!e.focused&&this.props.focused&&this.moveGroupToTop()}moveGroupToTop=()=>{this.groupRef.current&&this.groupRef.current.moveToTop()};handleClick=e=>{let{onClick:t,id:n,selected:r,disabled:i}=this.props;i||(e.cancelBubble=!0,t({id:n,selected:!r,selector:`Mouse`}))};handleMouseEnter=()=>{let{disabled:e}=this.props;e||(document.body.style.cursor=`pointer`),this.setState({hovered:!0}),this.moveGroupToTop()};handleMouseLeave=()=>{document.body.style.cursor=`default`,this.setState({hovered:!1})};getEvaluateOutlineColor=(e,t,n)=>t?`green`:e?n:`red`;getOutlineWidth=(e,t,n,r)=>n||!n&&!e&&t?r:0;render(){let{radius:e,hotspotColor:t,isCorrect:n,isEvaluateMode:r,hoverOutlineColor:i,outlineColor:a,selected:o,focused:s,x:c,y:l,evaluateText:u,strokeWidth:d,scale:f,markAsCorrect:p,selectedHotspotColor:m,showCorrectEnabled:h}=this.props,{hovered:g}=this.state,_=r?this.getEvaluateOutlineColor(n,p,a):a,v=this.getOutlineWidth(h,o,p,d),y=c-10,b=l-10,x;h?(o&&n||!o&&!n)&&(x=vC):o?x=n?vC:yC:n||(x=yC);let S=(g||s)&&i;return(0,I.jsxs)(PC,{ref:this.groupRef,scaleX:f,scaleY:f,onMouseLeave:this.handleMouseLeave,onMouseEnter:this.handleMouseEnter,children:[(0,I.jsx)(FC,{radius:e,fill:o&&m?m:t,onClick:this.handleClick,onTap:this.handleClick,draggable:!1,stroke:S&&!o?`transparent`:_,strokeWidth:S&&!o?0:v,x:c,y:l}),S&&(0,I.jsx)(NC,{x:c-e,y:l-e,width:e*2,height:e*2,stroke:i,strokeWidth:d,listening:!1}),r&&x?(0,I.jsx)(_C,{src:x,x:y,y:b,tooltip:u}):null]})}};IC.propTypes={radius:P.number.isRequired,hotspotColor:P.string.isRequired,id:P.string.isRequired,isCorrect:P.oneOfType([P.bool,P.string]),isEvaluateMode:P.bool.isRequired,disabled:P.bool.isRequired,focused:P.bool,hoverOutlineColor:P.string,onClick:P.func.isRequired,outlineColor:P.string.isRequired,selected:P.bool.isRequired,x:P.number.isRequired,y:P.number.isRequired,evaluateText:P.string,strokeWidth:P.number,scale:P.number,selectedHotspotColor:P.string,markAsCorrect:P.bool.isRequired,showCorrectEnabled:P.bool.isRequired},IC.defaultProps={isCorrect:!1,evaluateText:null,focused:!1,strokeWidth:5,scale:1};function LC(e){return typeof e==`function`||typeof e==`object`&&!!e&&typeof e.$$typeof==`symbol`}function RC(e,t){return!e||LC(e)?e:LC(e.default)?e.default:t&&LC(e[t])?e[t]:t&&LC(e[t]?.default)?e[t].default:e}var zC=RC(sC,`Stage`),BC=RC(QS,`Layer`),{translator:VC}=um,HC=W(`div`)(({theme:e})=>({marginTop:e.spacing(2),marginBottom:e.spacing(2),position:`relative`,background:e.palette.common.white,border:`${e.spacing(1)} solid ${e.palette.common.white}`,width:`fit-content`,maxWidth:`100%`,overflowX:`auto`})),UC=W(`span`)({position:`absolute`,width:1,height:1,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`}),WC=W(`div`)({position:`relative`,width:`fit-content`}),GC=W(`img`)({alignItems:`center`,display:`flex`,justifyContent:`center`}),KC=W(zC)({left:0,top:0,position:`absolute`}),qC=class extends F.Component{constructor(e){super(e),this.state={focusedShapeId:null}}isSelected(e){return!!this.props.session.answers.filter(t=>t.id===e.id)[0]}correctness=(e,t)=>e?t:!t;descriptionId=dm(`hotspot-evaluation`);getEvaluateText=(e,t)=>{let{language:n}=this.props;return t&&e?VC.t(`hotspot.correctlySelected`,{lng:n}):t&&!e?VC.t(`hotspot.shouldNotHaveBeenSelected`,{lng:n}):!t&&e?VC.t(`hotspot.shouldHaveBeenSelected`,{lng:n}):null};getAllShapesSorted=()=>{let{shapes:{rectangles:e=[],polygons:t=[],circles:n=[]}}=this.props,r=[...e.map(e=>({...e,type:`rectangle`})),...t.map(e=>({...e,type:`polygon`})),...n.map(e=>({...e,type:`circle`}))];return r.sort((e,t)=>String(e.id).localeCompare(String(t.id),void 0,{numeric:!0})),r};hideCanvas=e=>{e?.getNativeCanvasElement().setAttribute(`aria-hidden`,`true`)};handleShapeFocus=e=>{this.setState({focusedShapeId:e})};handleShapeBlur=()=>{this.setState({focusedShapeId:null})};handleShapeKeyDown=(e,t)=>{if(e.key===`Enter`||e.key===` `){e.preventDefault();let{onSelectChoice:n,disabled:r}=this.props;if(!r){let e=this.getAllShapesSorted().find(e=>e.id===t);e&&n({id:t,selected:!this.isSelected(e),selector:`Keyboard`})}}};render(){let{dimensions:{width:e,height:t},disabled:n,hotspotColor:r,hoverOutlineColor:i,selectedHotspotColor:a,imageUrl:o,isEvaluateMode:s,language:c,outlineColor:l,onSelectChoice:u,shapes:{rectangles:d=[],polygons:f=[],circles:p=[]},scale:m,strokeWidth:h,showCorrect:g}=this.props,{focusedShapeId:_}=this.state,v=e*m,y=t*m,b=this.getAllShapesSorted();return(0,I.jsxs)(HC,{style:{padding:h/2},children:[o?(0,I.jsx)(WC,{children:(0,I.jsx)(GC,{alt:VC.t(`hotspot.image`,{lng:c,count:b.length}),height:`auto`,src:o,style:{width:v,height:y,maxWidth:v,maxHeight:y}})}):null,(0,I.jsx)(KC,{height:y+h,width:v+h,x:h/2,y:h/2,children:(0,I.jsxs)(BC,{ref:this.hideCanvas,children:[d.map(e=>{let t=this.isSelected(e),o=s?this.correctness(e.correct,t):void 0,c=s?this.getEvaluateText(e.correct,t):null,d=!!(s&&g&&e.correct);return(0,I.jsx)(wC,{scale:m,isEvaluateMode:s,isCorrect:o,evaluateText:c,disabled:n,selected:t,height:e.height,hotspotColor:r,hoverOutlineColor:i,selectedHotspotColor:a,id:e.id,onClick:u,outlineColor:l,width:e.width,x:e.x,y:e.y,strokeWidth:h,markAsCorrect:d,showCorrectEnabled:g,focused:_===e.id},e.id)}),f.map(e=>{let t=this.isSelected(e),o=s?this.correctness(e.correct,t):void 0,c=s?this.getEvaluateText(e.correct,t):null,d=!!(s&&g&&e.correct);return(0,I.jsx)(AC,{scale:m,isEvaluateMode:s,isCorrect:!!o,evaluateText:c,disabled:n,selected:t,hotspotColor:r,id:e.id,onClick:u,outlineColor:l,points:e.points,strokeWidth:h,markAsCorrect:d,selectedHotspotColor:a,hoverOutlineColor:i,showCorrectEnabled:g,focused:_===e.id},e.id)}),p.map(e=>{let t=this.isSelected(e),o=s?this.correctness(e.correct,t):void 0,c=s?this.getEvaluateText(e.correct,t):null,d=!!(s&&g&&e.correct);return(0,I.jsx)(IC,{scale:m,isEvaluateMode:s,isCorrect:o,evaluateText:c,disabled:n,selected:t,radius:e.radius,hotspotColor:r,id:e.id,onClick:u,outlineColor:l,x:e.x,y:e.y,strokeWidth:h,markAsCorrect:d,selectedHotspotColor:a,hoverOutlineColor:i,showCorrectEnabled:g,focused:_===e.id},e.id)})]})}),b.map((e,t)=>{let r=this.isSelected(e),i=e.ariaLabel?.trim()||VC.t(`hotspot.shape`,{lng:c,index:t+1,total:b.length}),a=s?this.getEvaluateText(e.correct,r):null,o=`${this.descriptionId}-${t}`;return(0,I.jsxs)(F.Fragment,{children:[(0,I.jsx)(UC,{tabIndex:n?-1:0,role:`button`,"aria-label":i,"aria-pressed":r,"aria-describedby":a?o:void 0,onFocus:()=>this.handleShapeFocus(e.id),onBlur:this.handleShapeBlur,onKeyDown:t=>this.handleShapeKeyDown(t,e.id)}),a&&(0,I.jsx)(`span`,{id:o,hidden:!0,children:a})]},`focus-${e.id}`)})]})}};qC.propTypes={dimensions:P.object.isRequired,disabled:P.bool.isRequired,hotspotColor:P.string.isRequired,hoverOutlineColor:P.string,imageUrl:P.string.isRequired,isEvaluateMode:P.bool.isRequired,language:P.string,onSelectChoice:P.func.isRequired,outlineColor:P.string.isRequired,selectedHotspotColor:P.string,session:P.object.isRequired,shapes:P.object.isRequired,strokeWidth:P.number,scale:P.number,showCorrect:P.bool},qC.defaultProps={scale:1};function JC(e){return typeof e==`function`||typeof e==`object`&&!!e&&typeof e.$$typeof==`symbol`}function YC(e,t){return!e||JC(e)?e:JC(e.default)?e.default:t&&JC(e[t])?e[t]:t&&JC(e[t]?.default)?e[t].default:e}var XC=YC(yh,`UiLayout`)||YC(tw.UiLayout,`UiLayout`),ZC=YC($h,`PreviewPrompt`)||YC(tw.PreviewPrompt,`PreviewPrompt`),QC=YC(_m,`Collapsible`)||YC(tw.Collapsible,`Collapsible`),$C=Ag,ew=$C.default,tw=ew&&typeof ew==`object`?ew:$C,{translator:nw}=um,rw=W(XC)({color:Ad(),backgroundColor:Qd(),position:`relative`}),iw=W(QC)(({theme:e})=>({marginBottom:e.spacing(2)})),aw=class extends F.Component{mainContainerId=dm(`main-container`);constructor(e){super(e),this.state={showCorrect:!1,observer:null,scale:1}}componentDidMount(){this.observer=new MutationObserver(e=>{e.forEach(()=>{let e=document.getElementById(`question-container`)?.style?.cssText,t=(e?.substring(e.indexOf(`--pie-zoom`)+11,e.lastIndexOf(`%`)))?.replace(/\s/g,``);t?parseFloat(t)/100!==this.state.scale&&this.setState({scale:parseFloat(t)/100}):!t&&this.state.scale!==1&&this.setState({scale:1})})});let e=document.getElementById(`question-container`);e&&this.observer.observe(e,{attributes:!0,attributeFilter:[`style`]}),Vt(Dl.findDOMNode(this))}componentDidUpdate(){Vt(Dl.findDOMNode(this))}componentWillUnmount(){this.observer?.disconnect()}onToggle=()=>{let{showCorrect:e}=this.state;this.setState({showCorrect:!e})};render(){let{session:e,model:{disabled:t,extraCSSRules:n,imageUrl:r,prompt:i,mode:a,multipleCorrect:o,shapes:s,outlineColor:c,hotspotColor:l,hoverOutlineColor:u,selectedHotspotColor:d,dimensions:f,rationale:p,teacherInstructions:m,strokeWidth:h,responseCorrect:g,language:_,fontSizeFactor:v,autoplayAudioEnabled:y,customAudioButton:b},onSelectChoice:x}=this.props,{showCorrect:S}=this.state,C=a===`evaluate`,w=a===`gather`,T=C&&!g,E=p&&(ig(p)||og(p)),D=m&&(ig(m)||og(m));return(0,I.jsxs)(rw,{extraCSSRules:n,id:this.mainContainerId,className:`main-container`,fontSizeFactor:v,children:[D&&(0,I.jsx)(iw,{labels:{hidden:nw.t(`common:showTeacherInstructions`,{lng:_}),visible:nw.t(`common:hideTeacherInstructions`,{lng:_})},children:(0,I.jsx)(ZC,{className:`prompt`,prompt:m})}),i&&(0,I.jsx)(ZC,{className:`prompt`,prompt:i,autoplayAudioEnabled:y,customAudioButton:b,language:_}),T&&(0,I.jsx)(Yg,{show:T,toggled:S,onToggle:this.onToggle.bind(this),language:_}),r?(0,I.jsx)(qC,{isEvaluateMode:C,session:e,dimensions:f,imageUrl:r,language:_,hotspotColor:l,hoverOutlineColor:w?u:void 0,selectedHotspotColor:d,multipleCorrect:o,outlineColor:c,onSelectChoice:x,shapes:s,disabled:t,strokeWidth:h,scale:this.state.scale,showCorrect:S}):null,E&&(0,I.jsx)(QC,{labels:{hidden:nw.t(`common:showRationale`,{lng:_}),visible:nw.t(`common:hideRationale`,{lng:_})},children:(0,I.jsx)(ZC,{className:`prompt`,prompt:p})})]})}};aw.propTypes={model:P.object.isRequired,onSelectChoice:P.func.isRequired,session:P.object.isRequired};function ow(e,t,n){let{id:r,selected:i}=n,{multipleCorrect:a}=t||{};if(e.answers=e.answers||[],!i)e.answers=e.answers.filter(e=>e.id!==r);else{let t={id:r};a?e.answers.push(t):e.answers=[t],e.selector=n.selector}}function sw(e,t){e.audioStartTime=e.audioStartTime||t.audioStartTime,e.audioEndTime=e.audioEndTime||t.audioEndTime,!e.waitTime&&e.audioStartTime&&e.audioEndTime&&(e.waitTime=e.audioEndTime-e.audioStartTime)}var cw=g();function lw(e){return typeof e==`function`||typeof e==`object`&&!!e&&typeof e.$$typeof==`symbol`}function uw(e,t){return!e||lw(e)?e:lw(e.default)?e.default:t&&lw(e[t])?e[t]:t&&lw(e[t]?.default)?e[t].default:e}var dw=uw(`data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAMCAgICAgMCAgIDAwMDBAYEBAQEBAgGBgUGCQgKCgkICQkKDA8MCgsOCwkJDRENDg8QEBEQCgwSExIQEw8QEBD/2wBDAQMDAwQDBAgEBAgQCwkLEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBD/wAARCAJYAyADAREAAhEBAxEB/8QAHgABAQABBQEBAQAAAAAAAAAAAAEIAgMGBwkEBQr/xABiEAACAQIDBAMKCAYMCgYLAQAAAQIDEQQFIQYSMUEHCFETFRYiUmFxkdHhCRRjgaGisfAXMjRTcsEjJDY4QmJ1dpKztMQYMzdEVIKyw9PxQ1hmc3SWJzVFRlZXhJOUldJk/8QAGwEBAQADAQEBAAAAAAAAAAAAAAcEBQYCAQP/xABBEQEAAQIDAgkJBgUFAQEBAAAAAQIDBAYRBSESMUFEYXGCscITNDVRcoGRocEUIjJS0eEVI2KSsjNCU6LwFtLx/9oADAMBAAIRAxEAPwD1TAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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`,`EnableAudioAutoplayImage`)||uw(mw.EnableAudioAutoplayImage,`EnableAudioAutoplayImage`),fw=Ag,pw=fw.default,mw=pw&&typeof pw==`object`?pw:fw,hw=class extends HTMLElement{constructor(){super(),this._model=null,this._session=null,this._audioInitialized=!1,this.audioComplete=!1,this._root=null}set model(e){this._model=e,this.dispatchEvent(new jg(this.tagName.toLowerCase(),this.isComplete(),!!this._model)),this._audioInitialized=!1,this._render()}isComplete(){if(!this._session||!this._session.answers)return!1;let{completeAudioEnabled:e}=this._model||{},t=this;if(e&&!this.audioComplete&&t){let e=t.querySelector(`audio`),n=e&&e.closest(`.preview-prompt`);if(e&&n)return!1}return Array.isArray(this._session.answers)?this._session.answers.length>0:!1}set session(e){e&&!e.answers&&(e.answers=[]),this._session=e,this._render()}get session(){return this._session}onSelectChoice(e){ow(this._session,this._model,e),this.dispatchEvent(new Mg(this.tagName.toLowerCase(),this.isComplete())),this._render()}_createAudioInfoToast(){let e=document.createElement(`div`);e.id=dm(`play-audio-info`),e.className=`play-audio-info`,Object.assign(e.style,{position:`absolute`,top:0,width:`100%`,height:`100%`,display:`flex`,justifyContent:`center`,alignItems:`center`,background:`white`,zIndex:`1000`,cursor:`pointer`});let t=document.createElement(`img`);return t.src=dw,t.alt=`Click anywhere to enable audio autoplay`,t.width=500,t.height=300,e.appendChild(t),e}connectedCallback(){this._render(),new MutationObserver((e,t)=>{e.forEach(e=>{if(e.type===`childList`){if(this._audioInitialized)return;let e=this.querySelector(`audio`),n=e&&e.closest(`.preview-prompt`);if(!this._model)return;let{autoplayAudioEnabled:r,completeAudioEnabled:i}=this._model;if(!r&&!i||e&&!n||!e)return;let a=this._createAudioInfoToast(),o=this.querySelector(`.main-container`),s=()=>{this.querySelector(`.play-audio-info`)&&(e.play(),o.removeChild(a)),document.removeEventListener(`click`,s)};r&&setTimeout(()=>{e.paused&&!this.querySelector(`.play-audio-info`)?(o.appendChild(a),document.addEventListener(`click`,s)):document.removeEventListener(`click`,s)},500);let c=()=>{sw(this._session,{audioStartTime:new Date().getTime()});let t=this.querySelector(`.play-audio-info`);t&&o.removeChild(t),e.removeEventListener(`playing`,c)};e.addEventListener(`playing`,c);let l=()=>{sw(this._session,{audioEndTime:new Date().getTime()});let{audioStartTime:t,audioEndTime:n,waitTime:r}=this._session;!r&&t&&n&&(this._session.waitTime=n-t),this.audioComplete=!0,this.dispatchEvent(new Mg(this.tagName.toLowerCase(),this.isComplete())),e.removeEventListener(`ended`,l)};e.addEventListener(`ended`,l),this._audio=e,this._handlePlaying=c,this._handleEnded=l,this._enableAudio=s,this._audioInitialized=!0,t.disconnect()}})}).observe(this,{childList:!0,subtree:!0})}_render(){if(this._model&&this._session){let e=F.createElement(aw,{model:this._model,session:this._session,onSelectChoice:this.onSelectChoice.bind(this)});this._root||=(0,cw.createRoot)(this),this._root.render(e),queueMicrotask(()=>{Vt(this)})}}disconnectedCallback(){document.removeEventListener(`click`,this._enableAudio),this._audio&&=(this._audio.removeEventListener(`playing`,this._handlePlaying),this._audio.removeEventListener(`ended`,this._handleEnded),null),this._root&&=(this._root.unmount(),null)}};return typeof window<`u`&&!customElements.get(`hotspot-element`)&&customElements.define(`hotspot-element`,hw),hw})();
|